src/wifi/model/regular-wifi-mac.h
changeset 10139 17a71cd49da3
parent 9703 681f35b212ff
child 10424 9d29c9a5ddcb
equal deleted inserted replaced
10138:2f8e35b43d11 10139:17a71cd49da3
    72   void SetEifsNoDifs (Time eifsNoDifs);
    72   void SetEifsNoDifs (Time eifsNoDifs);
    73   /**
    73   /**
    74    * \param pifs the pifs duration.
    74    * \param pifs the pifs duration.
    75    */
    75    */
    76   void SetPifs (Time pifs);
    76   void SetPifs (Time pifs);
       
    77 
       
    78   void SetRifs (Time rifs);
    77   /**
    79   /**
    78    * \param ctsTimeout the duration of a CTS timeout.
    80    * \param ctsTimeout the duration of a CTS timeout.
    79    */
    81    */
    80   void SetCtsTimeout (Time ctsTimeout);
    82   void SetCtsTimeout (Time ctsTimeout);
    81   /**
    83   /**
    82    * \param ackTimeout the duration of an ACK timeout.
    84    * \param ackTimeout the duration of an ACK timeout.
    83    */
    85    */
    84   void SetAckTimeout (Time ackTimeout);
    86   void SetAckTimeout (Time ackTimeout);
       
    87 
       
    88   Time GetRifs (void) const;
    85   /**
    89   /**
    86    * \returns the current PIFS duration.
    90    * \returns the current PIFS duration.
    87    */
    91    */
    88   Time GetPifs (void) const;
    92   Time GetPifs (void) const;
    89   /**
    93   /**
   104   Time GetCtsTimeout (void) const;
   108   Time GetCtsTimeout (void) const;
   105   /**
   109   /**
   106    * \returns the current ACK timeout duration.
   110    * \returns the current ACK timeout duration.
   107    */
   111    */
   108   Time GetAckTimeout (void) const;
   112   Time GetAckTimeout (void) const;
       
   113 
       
   114   void SetCtsToSelfSupported (bool enable);
       
   115  
       
   116   bool GetCtsToSelfSupported () const;
   109   /**
   117   /**
   110    * \returns the MAC address associated to this MAC layer.
   118    * \returns the MAC address associated to this MAC layer.
   111    */
   119    */
   112   virtual Mac48Address GetAddress (void) const;
   120   virtual Mac48Address GetAddress (void) const;
   113   /**
   121   /**
   319   bool m_qosSupported;
   327   bool m_qosSupported;
   320   /** Set accessor for the \c m_qosSupported member */
   328   /** Set accessor for the \c m_qosSupported member */
   321   void SetQosSupported (bool enable);
   329   void SetQosSupported (bool enable);
   322   /** Get accessor for the \c m_qosSupported member */
   330   /** Get accessor for the \c m_qosSupported member */
   323   bool GetQosSupported () const;
   331   bool GetQosSupported () const;
       
   332 
       
   333  /**
       
   334    * This Boolean is set \c true iff this WifiMac is to model
       
   335    * 802.11n. It is exposed through the
       
   336    * attribute system.
       
   337    *
       
   338    * At the moment, this flag is the sole selection between HT and
       
   339    * non-HT operation for the STA (whether IBSS, AP, or
       
   340    * non-AP). Ultimately, we will want a HT-enabled STA to be able to
       
   341    * fall back to non-HT operation with a non-HT peer. This'll
       
   342    * require further intelligence - i.e., per-association HT
       
   343    * state. Having a big switch seems like a good intermediate stage,
       
   344    * however.
       
   345    */
       
   346   bool m_htSupported;
       
   347   /** Set accessor for the \c m_htSupported member */
       
   348   void SetHtSupported (bool enable);
       
   349   /** Get accessor for the \c m_htSupported member */
       
   350   bool GetHtSupported () const;
       
   351 
   324 private:
   352 private:
   325   RegularWifiMac (const RegularWifiMac &);
   353   RegularWifiMac (const RegularWifiMac &);
   326   RegularWifiMac & operator= (const RegularWifiMac &);
   354   RegularWifiMac & operator= (const RegularWifiMac &);
   327 
   355 
   328   /**
   356   /**