亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? smac.h

?? 在ns2中仿真無線傳感器網絡mac層協議的代碼smac
?? H
?? 第 1 頁 / 共 2 頁
字號:
 public:  SmacAdaptiveListenTimer(SMAC *a) : SmacTimer(a) {}  void expire(Event *e);};#endif// Generic timer used for sync, CTS and ACK timeoutsclass SmacGeneTimer : public SmacTimer { public:  SmacGeneTimer(SMAC *a) : SmacTimer(a) {}  void expire(Event *e);};// Receive timer for receiving pktsclass SmacRecvTimer : public SmacTimer { public:  SmacRecvTimer(SMAC *a) : SmacTimer(a) { stime_ = rtime_ = 0; }  void sched(double duration);  void resched(double time);  void expire(Event *e);  double timeToExpire(); protected:  double stime_;  double rtime_;};// Send timerclass SmacSendTimer : public SmacTimer { public:  SmacSendTimer(SMAC *a) : SmacTimer(a) {}  void expire(Event *e);};// Nav- indicating if medium is busy or notclass SmacNavTimer : public SmacTimer { public:  SmacNavTimer(SMAC *a) : SmacTimer(a) {}  void expire(Event *e);};// Neighbor nav - if neighbor is busy or not// used for data timeoutclass SmacNeighNavTimer : public SmacTimer { public:  SmacNeighNavTimer(SMAC *a) : SmacTimer(a) { stime_ = rtime_ = 0; }  void sched(double duration);  void expire(Event *e);  double timeToExpire(); protected:  double stime_;  double rtime_;};// carrier sense timerclass SmacCsTimer : public SmacTimer { public:  SmacCsTimer(SMAC *a) : SmacTimer(a) {}  void expire(Event *e);  void checkToCancel();};// synchronisation timer, regulates the sleep/wakeup cyclesclass SmacCounterTimer : public SmacTimer {  public:    friend class SMAC;  SmacCounterTimer(SMAC *a, int i) : SmacTimer(a) {index_ = i;}  void sched(double t);  void expire(Event *e);   double timeToSleep(); protected:  int index_;  double value_;  double syncTime_;  double dataTime_;  double listenTime_;  double sleepTime_;  double cycleTime_;  double tts_;  double stime_;}; // The smac classclass SMAC : public Mac {    friend class SmacGeneTimer;  friend class SmacRecvTimer;  friend class SmacSendTimer;  friend class SmacNavTimer;  friend class SmacNeighNavTimer;  friend class SmacCsTimer;   friend class SmacCounterTimer;#ifdef JOURNAL_PAPER  friend class SmacUpdateNeighbTimer;  friend class SmacAdaptiveListenTimer;#endif public:  SMAC(void);  ~SMAC() {     for (int i=0; i< SMAC_MAX_NUM_SCHEDULES; i++) {      delete mhCounter_[i];    }  }  void recv(Packet *p, Handler *h); protected:    // functions for handling timers#ifdef JOURNAL_PAPER  void handleUpdateNeighbTimer();  void handleAdaptiveListenTimer();#endif  void handleGeneTimer();  void handleRecvTimer();  void handleSendTimer();  void handleNavTimer();  void handleNeighNavTimer();  void handleCsTimer();  //void handleChkSendTimer();  void handleCounterTimer(int i);  // Internal MAC parameters  double slotTime_;  double slotTime_sec_;  double difs_;  double sifs_;  double eifs_;  double guardTime_;  double byte_tx_time_;  double dutyCycle_;  private:  // functions for node schedule folowing sleep-wakeup cycles  void setMySched(Packet *syncpkt);  void sleep();  void wakeup();#ifdef JOURNAL_PAPER  // funtions for update neighbors and schedules  void check_schedFlag();  void update_schedTab_neighbList();  void update_myNeighbList();  void update_neighbList();  void checkMySched();  void dump();#endif  // functions for handling incoming packets    void rxMsgDone(Packet* p);  //void rxFragDone(Packet *p);  no frag for now#ifdef JOURNAL_PAPER  void rxFragDone(Packet *p); #endif  void handleRTS(Packet *p);  void handleCTS(Packet *p);  void handleDATA(Packet *p);  void handleACK(Packet *p);  void handleSYNC(Packet *p);  // functions for handling outgoing packets    // check for pending data pkt to be tx'ed  // when smac is not following SYNC (sleep-wakeup) cycles.  int checkToSend();               // check if can send, start cs   bool chkRadio();         // checks radiostate  void transmit(Packet *p);         // actually transmits packet  bool sendMsg(Packet *p, Handler *h);  bool bcastMsg(Packet *p);  bool unicastMsg(int n, Packet *p);  //int sendMoreFrag(Packet *p);    void txMsgDone();  // void txFragDone();#ifdef JOURNAL_PAPER  // functions for handling fragmentation  bool txNextFrag(void* data);  void txFragDone();                                                                                                                                                              // functions for handling adaptive listen  void adaptiveListen();#endif  int startBcast();  int startUcast();    bool sendRTS();  bool sendCTS(double duration);  bool sendDATA();  bool sendACK(double duration);  bool sendSYNC();  void sentRTS(Packet *p);  void sentCTS(Packet *p);  void sentDATA(Packet *p);  void sentACK(Packet *p);  void sentSYNC(Packet *p);    // Misc functions  void collision(Packet *p);  void capture(Packet *p);  double txtime(Packet *p);    void updateNav(double duration);  void updateNeighNav(double duration);  void mac_log(Packet *p) {    logtarget_->recv(p, (Handler*) 0);  }    void discard(Packet *p, const char* why);  int drop_RTS(Packet *p, const char* why);  int drop_CTS(Packet *p, const char* why);  int drop_DATA(Packet *p, const char* why);  int drop_SYNC(Packet *p, const char* why);  // smac methods to set dst, src and hdr_type in pkt hdrs  inline int hdr_dst(char* hdr, int dst = -2) {    struct hdr_smac *sh = (struct hdr_smac *) hdr;    if (dst > -2)      sh->dstAddr = dst;    return sh->dstAddr;  }  inline int hdr_src(char* hdr, int src = -2) {    struct hdr_smac *sh = (struct hdr_smac *) hdr;    if (src > -2)      sh->srcAddr = src;    return sh->srcAddr;  }  inline int hdr_type(char *hdr, u_int16_t type = 0) {    struct hdr_smac *sh = (struct hdr_smac *) hdr;    if (type)      sh->type = type;    return sh->type;  }    // SMAC internal variables    NsObject*       logtarget_;    // Internal states  int  state_;                   // MAC state  int  radioState_;              // state of radio, rx, tx or sleep  int tx_active_;                  int mac_collision_;                int sendAddr_;		// node to send data to  int recvAddr_;		// node to receive data from    double  nav_;	        // network allocation vector. nav>0 -> medium busy  double  neighNav_;      // track neighbors' NAV while I'm sending/receiving    // SMAC Timers#ifdef JOURNAL_PAPER  SmacUpdateNeighbTimer mhUpdateNeighb_; // timer for updating neighbors periodically  SmacAdaptiveListenTimer mhAdap_; // timer for putting nodes back to sleep after adaptive listen#endif  SmacNavTimer	        mhNav_;		// NAV timer medium is free or not  SmacNeighNavTimer     mhNeighNav_;    // neighbor NAV timer for data timeout  SmacSendTimer		mhSend_;	// incoming packets  SmacRecvTimer         mhRecv_;        // outgoing packets  SmacGeneTimer         mhGene_;        // generic timer used sync/CTS/ACK timeout  SmacCsTimer           mhCS_;          // carrier sense timer    // array of countertimer, one for each schedule  // counter tracking node's sleep/awake cycle  SmacCounterTimer      *mhCounter_[SMAC_MAX_NUM_SCHEDULES];    int numRetry_;	// number of tries for a data pkt  int numExtend_;      // number of extensions on Tx time when frags are lost#ifdef JOURNAL_PAPER  int numFrags_;       // number of fragments in this transmission  int succFrags_;      // number of successfully transmitted fragments#endif  //int numFrags_;       // number of fragments in this transmission  //int succFrags_;      // number of successfully transmitted fragments  int lastRxFrag_;     // keep track of last data fragment recvd to prevent duplicate data  int howToSend_;		// broadcast or unicast    double durSyncPkt_;     // duration of sync packet  double durDataPkt_;     // duration of data packet XXX caveat fixed packet size  double durCtrlPkt_;     // duration of control packet  double timeWaitCtrl_;   // set timer to wait for a control packet    struct SchedTable schedTab_[SMAC_MAX_NUM_SCHEDULES];   // schedule table  struct NeighbList neighbList_[SMAC_MAX_NUM_NEIGHBORS]; // neighbor list  int mySyncNode_;                                 // nodeid of my synchronizer    int currSched_;      // current schedule I'm talking to  int numSched_;       // number of different schedules  int numNeighb_;      // number of known neighbors  int numBcast_;       // number of times needed to broadcast a packet    Packet *dataPkt_;		// outgoing data packet  Packet *pktRx_;               // buffer for incoming pkt  Packet *pktTx_;               // buffer for outgoing pkt  // flag to check pending data pkt for tx  // when smac is not following SYNC (sleep-wakeup) cycles.  int txData_ ;  int syncFlag_;  // is set to 1 when SMAC uses sleep-wakeup cycle  int selfConfigFlag_;  // is set to 0 when SMAC uses user configurable schedule start time  double startTime_;  // schedule start time (schedule starts from SYNC period)  // sleep-wakeup cycle times  double syncTime_;  double dataTime_;  double listenTime_;  double sleepTime_;  double cycleTime_;#ifdef JOURNAL_PAPER  int adapTime_;  // time before getting back to sleep when doing adaptive listen  int adaptiveListen_;  int adapSend_;  int txRequest_;  int dataSched_;  int syncSched_;  int sendAddr;                                                                                                                                                              int schedState_; // schedule state: first, second schedule...                                                                                                                                                              int globalSchedule_;  // flag indicating if node is in global schedule state                                                                                                                                                              int updateNeighbList_; // flag indicating if node needs to update neighbor list  char sendSYNCFlag_;    // flag indicating if node has broadcasted SYNC packet or not#endif  // neighbor discovery  int searchNeighb_;  // flag indicating if node is in neighbot discovery period  int schedListen_;  // flag indicating if node is in scheduled listen period  int numSync_;  // used to set/clear searchNeighb flag   protected:  int command(int argc, const char*const* argv);  virtual int initialized() {     return (netif_ && uptarget_ && downtarget_);   }};#endif //NS_SMAC

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
2020国产精品自拍| 美美哒免费高清在线观看视频一区二区 | 国产亚洲精品中文字幕| 一区二区三区**美女毛片| 韩国三级在线一区| 欧美日韩视频在线第一区| 中文av一区二区| 久久不见久久见免费视频7| 欧美午夜精品免费| 《视频一区视频二区| 国产一区二区三区四区五区美女 | 婷婷丁香久久五月婷婷| 懂色一区二区三区免费观看| 91精品婷婷国产综合久久竹菊| 国产精品国产三级国产普通话蜜臀 | 亚洲精品一区二区三区香蕉| 午夜视频一区在线观看| 欧美日韩一级二级| 亚洲免费高清视频在线| 成人夜色视频网站在线观看| 欧美精品一区二区三| 美女一区二区三区在线观看| 欧美精品tushy高清| 亚洲国产人成综合网站| 色香蕉久久蜜桃| 亚洲视频网在线直播| 丁香五精品蜜臀久久久久99网站| 亚洲精品一区二区三区在线观看| 蜜臀久久99精品久久久久宅男| 欧美日韩国产欧美日美国产精品| 亚洲永久精品大片| 91精品福利视频| 一区二区三区高清在线| 91福利视频久久久久| 亚洲国产精品麻豆| 欧美亚洲国产一区二区三区va | 亚洲狠狠丁香婷婷综合久久久| 91影视在线播放| 一区二区三区国产豹纹内裤在线| 日韩欧美国产三级电影视频| 老色鬼精品视频在线观看播放| 日韩欧美一级二级| 加勒比av一区二区| 国产精品视频第一区| 成人激情午夜影院| 亚洲免费观看高清| 欧美一区二区三区在| 黄色日韩网站视频| 国产精品色眯眯| 欧美日韩日日骚| 久久99精品国产91久久来源| 久久久久9999亚洲精品| 成人av动漫在线| 亚洲在线成人精品| 欧美精品一区男女天堂| 成人免费毛片a| 夜夜操天天操亚洲| 久久综合中文字幕| 99re热这里只有精品视频| 亚洲一级二级三级| 欧美mv和日韩mv国产网站| 成人高清免费观看| 天使萌一区二区三区免费观看| 精品少妇一区二区三区在线播放| 国产白丝精品91爽爽久久| 亚洲资源中文字幕| 久久婷婷成人综合色| 色偷偷88欧美精品久久久| 麻豆精品一二三| 亚洲精品老司机| 精品久久国产字幕高潮| 91丨九色porny丨蝌蚪| 蜜桃av一区二区在线观看| 国产欧美日韩另类视频免费观看| 色哟哟一区二区三区| 国产精品综合一区二区三区| 亚洲精品日韩一| 久久久久青草大香线综合精品| 色老汉av一区二区三区| 捆绑紧缚一区二区三区视频| 亚洲欧美日韩国产手机在线| 精品日韩一区二区三区| 色国产精品一区在线观看| 国产主播一区二区| 日韩国产成人精品| 一区二区三区在线视频观看58 | 国产成人免费视频| 日本麻豆一区二区三区视频| 亚洲欧美另类综合偷拍| 久久久三级国产网站| 欧美日韩二区三区| 91成人免费网站| av一区二区三区| 国产麻豆一精品一av一免费| 视频一区二区中文字幕| 一区二区不卡在线视频 午夜欧美不卡在| 久久久亚洲欧洲日产国码αv| 亚洲国产高清aⅴ视频| 日韩欧美精品三级| 51午夜精品国产| 欧美人成免费网站| 欧美手机在线视频| 欧美专区亚洲专区| 91黄色小视频| 91福利视频网站| 欧美探花视频资源| 欧美日本国产视频| 欧美偷拍一区二区| 欧美午夜一区二区| 在线精品亚洲一区二区不卡| 色视频成人在线观看免| 91久久人澡人人添人人爽欧美| 91麻豆国产香蕉久久精品| 91玉足脚交白嫩脚丫在线播放| 91在线视频免费91| 91视频精品在这里| 91行情网站电视在线观看高清版| 91麻豆国产在线观看| 在线视频欧美精品| 欧洲色大大久久| 在线成人免费观看| 日韩亚洲欧美在线| www一区二区| 日本一区二区三区电影| 中文字幕一区二区在线观看| 亚洲人成精品久久久久久| 亚洲色图第一区| 无码av免费一区二区三区试看| 日本va欧美va瓶| 国产黄色91视频| 日本久久电影网| 欧美精品久久一区二区三区| 精品久久久久99| 欧美aⅴ一区二区三区视频| 六月婷婷色综合| 不卡高清视频专区| 欧美在线看片a免费观看| 日韩一区二区三区精品视频| 久久亚洲春色中文字幕久久久| 中文字幕精品三区| 亚洲激情自拍偷拍| 日本亚洲一区二区| 国产高清在线观看免费不卡| 91视频一区二区三区| 日韩色视频在线观看| 国产精品免费免费| 亚洲午夜电影在线观看| 久久se这里有精品| av中文字幕亚洲| 67194成人在线观看| 国产欧美视频一区二区三区| 亚洲小说春色综合另类电影| 久久99精品久久久| 91蝌蚪国产九色| 亚洲精品一区二区在线观看| 亚洲乱码日产精品bd| 精品在线一区二区三区| 在线一区二区三区做爰视频网站| 精品国偷自产国产一区| 亚洲激情图片一区| 精品亚洲国产成人av制服丝袜| 色成年激情久久综合| 日韩欧美在线网站| 综合激情成人伊人| 国产一区二区三区在线观看免费视频| 91影视在线播放| 国产午夜久久久久| 成人av网站在线| 精品国产乱子伦一区| 亚洲最大色网站| 99久久国产综合精品色伊| 26uuu国产在线精品一区二区| 亚洲成av人片观看| 色综合久久综合网欧美综合网 | 精品国产一区二区精华| 亚洲精品v日韩精品| 成人不卡免费av| 精品久久久久久无| 日本一区中文字幕| 欧美精品在线视频| 亚洲激情av在线| 99re热这里只有精品免费视频| 久久久噜噜噜久久中文字幕色伊伊| 偷拍一区二区三区| 欧美日韩在线播放三区四区| 亚洲欧洲综合另类| 99久久免费国产| 中文字幕一区二区三区不卡 | 国产xxx精品视频大全| 精品国产亚洲在线| 欧美a级一区二区| 日韩欧美自拍偷拍| 日本亚洲电影天堂| 欧美一级理论片| 亚洲成人动漫一区| 欧美日韩卡一卡二| 日本成人在线一区| 日韩欧美一区在线| 精品影视av免费| 久久久久99精品一区|