00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022 #ifndef WIFI_FRAME_STATS_DELIMITER_FRAMES_HH_
00023 # define WIFI_FRAME_STATS_DELIMITER_FRAMES_HH_
00024
00025 # include <wipal/wifi/frame/stats/abstract_stats.hh>
00026
00027 namespace wifi
00028 {
00029
00030 namespace frame
00031 {
00032
00033 namespace stats
00034 {
00035
00036 struct delimiter_frames: public abstract_stats
00037 {
00038 void restart();
00039 void account_frame(const tool::microseconds& phy_stamp,
00040 const struct timeval& pcap_stamp);
00041 std::ostream& print(std::ostream& o) const;
00042
00043 private:
00044 typedef std::pair<tool::microseconds,
00045 struct timeval> stamp_pair;
00046 typedef boost::optional<stamp_pair> optional_stamp_pair;
00047
00048 static
00049 std::ostream&
00050 print(std::ostream& o,
00051 const std::string& type,
00052 const optional_stamp_pair& value);
00053
00054
00055 optional_stamp_pair earliest_;
00056 optional_stamp_pair latest_;
00057 };
00058
00059 }
00060
00061 }
00062
00063 }
00064
00065 # include "delimiter_frames.hxx"
00066
00067 #endif // ! WIFI_FRAME_STATS_DELIMITER_FRAMES_HH_