📄 pkts_out.hh
字号:
#ifndef CLICK_TOACK_HH#define CLICK_TOACK_HH#include <click/element.hh>//#include <click/ipaddress.hh>#include <click/etheraddress.hh>#include <click/bighashmap.hh>#include <click/vector.hh>#include <click/glue.hh>#include <elements/wifi/sr/srpacket.hh>#include <elements/wifi/sr/path.hh>CLICK_DECLS// *** fix docs!!/*=cAckTable=s Wifi Maintains ack entries of encoded packets for each neighbour=d Tracks ack entries of encoded packets for each neighbour. This elementdoes not process packets.=h */class OutPktInfo { public: OutPktInfo(uint8_t seq_no); ~OutPktInfo(); uint8_t seq_no; struct timeval timestamp; uint8_t rtx_count;};typedef Vector<OutPktInfo*> OutPktVector;class OutPktMap : public Element { public: OutPktMap(); ~OutPktMap(); const char *class_name() const { return "ToAck"; } int configure(Vector<String> &, ErrorHandler *); void *cast(const char *n); void insert(Packet *p); Vector<AckInfo*> get_acks(); Vector<AckInfo*> get_acks_timeout(); void add_handlers(); bool fresh; // whether there are n/acks to send outprivate: IPAddress _ip; //typedef Vector<uint8_t> IdVector; typedef HashMap<uint16_t,SeqVector*> ToAckMap; ToAckMap _to_ack_table; HashMap<IPAddress, uint16_t> _alias_table; // what id this node assigns to neighbours uint16_t _random_nb; // the neighbour with the oldest ack entry};CLICK_ENDDECLS#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -