src/wifi/model/regular-wifi-mac.cc
changeset 10139 17a71cd49da3
parent 9802 5dea58a3b261
child 10203 362fbb8ac702
equal deleted inserted replaced
10138:2f8e35b43d11 10139:17a71cd49da3
   118 void
   118 void
   119 RegularWifiMac::SetWifiRemoteStationManager (Ptr<WifiRemoteStationManager> stationManager)
   119 RegularWifiMac::SetWifiRemoteStationManager (Ptr<WifiRemoteStationManager> stationManager)
   120 {
   120 {
   121   NS_LOG_FUNCTION (this << stationManager);
   121   NS_LOG_FUNCTION (this << stationManager);
   122   m_stationManager = stationManager;
   122   m_stationManager = stationManager;
       
   123   m_stationManager->SetHtSupported (GetHtSupported());
   123   m_low->SetWifiRemoteStationManager (stationManager);
   124   m_low->SetWifiRemoteStationManager (stationManager);
   124 
   125 
   125   m_dca->SetWifiRemoteStationManager (stationManager);
   126   m_dca->SetWifiRemoteStationManager (stationManager);
   126 
   127 
   127   for (EdcaQueues::iterator i = m_edca.begin (); i != m_edca.end (); ++i)
   128   for (EdcaQueues::iterator i = m_edca.begin (); i != m_edca.end (); ++i)
   242 bool
   243 bool
   243 RegularWifiMac::GetQosSupported () const
   244 RegularWifiMac::GetQosSupported () const
   244 {
   245 {
   245   return m_qosSupported;
   246   return m_qosSupported;
   246 }
   247 }
       
   248 void
       
   249 RegularWifiMac::SetHtSupported (bool enable)
       
   250 {
       
   251   NS_LOG_FUNCTION (this);
       
   252   m_htSupported = enable;
       
   253 }
       
   254 
       
   255 bool
       
   256 RegularWifiMac::GetHtSupported () const
       
   257 {
       
   258   return m_htSupported;
       
   259 }
       
   260 void
       
   261 RegularWifiMac::SetCtsToSelfSupported(bool enable)
       
   262 {
       
   263   NS_LOG_FUNCTION (this);
       
   264   m_low->SetCtsToSelfSupported (enable);
       
   265 }
       
   266 
       
   267 bool
       
   268 RegularWifiMac::GetCtsToSelfSupported () const
       
   269 {
       
   270    return  m_low->GetCtsToSelfSupported ();
       
   271 }
   247 
   272 
   248 void
   273 void
   249 RegularWifiMac::SetSlot (Time slotTime)
   274 RegularWifiMac::SetSlot (Time slotTime)
   250 {
   275 {
   251   NS_LOG_FUNCTION (this << slotTime);
   276   NS_LOG_FUNCTION (this << slotTime);
   282 
   307 
   283 Time
   308 Time
   284 RegularWifiMac::GetEifsNoDifs (void) const
   309 RegularWifiMac::GetEifsNoDifs (void) const
   285 {
   310 {
   286   return m_dcfManager->GetEifsNoDifs ();
   311   return m_dcfManager->GetEifsNoDifs ();
       
   312 }
       
   313 void
       
   314 RegularWifiMac::SetRifs (Time rifs)
       
   315 {
       
   316   NS_LOG_FUNCTION (this << rifs);
       
   317   m_low->SetRifs (rifs);
       
   318 }
       
   319 
       
   320 Time
       
   321 RegularWifiMac::GetRifs (void) const
       
   322 {
       
   323   return m_low->GetRifs();
   287 }
   324 }
   288 
   325 
   289 void
   326 void
   290 RegularWifiMac::SetPifs (Time pifs)
   327 RegularWifiMac::SetPifs (Time pifs)
   291 {
   328 {
   607                    "This Boolean attribute is set to enable 802.11e/WMM-style QoS support at this STA",
   644                    "This Boolean attribute is set to enable 802.11e/WMM-style QoS support at this STA",
   608                    BooleanValue (false),
   645                    BooleanValue (false),
   609                    MakeBooleanAccessor (&RegularWifiMac::SetQosSupported,
   646                    MakeBooleanAccessor (&RegularWifiMac::SetQosSupported,
   610                                         &RegularWifiMac::GetQosSupported),
   647                                         &RegularWifiMac::GetQosSupported),
   611                    MakeBooleanChecker ())
   648                    MakeBooleanChecker ())
       
   649     .AddAttribute ("HtSupported",
       
   650                    "This Boolean attribute is set to enable 802.11n support at this STA",
       
   651                    BooleanValue (false),
       
   652                    MakeBooleanAccessor (&RegularWifiMac::SetHtSupported,
       
   653                                         &RegularWifiMac::GetHtSupported),
       
   654                    MakeBooleanChecker ())
       
   655    .AddAttribute ("CtsToSelfSupported",
       
   656                    "Use CTS to Self when using a rate that is not in the basic set rate",
       
   657                    BooleanValue (false),
       
   658                    MakeBooleanAccessor (&RegularWifiMac::SetCtsToSelfSupported,
       
   659                                         &RegularWifiMac::GetCtsToSelfSupported),
       
   660                     MakeBooleanChecker ())
   612     .AddAttribute ("DcaTxop", "The DcaTxop object",
   661     .AddAttribute ("DcaTxop", "The DcaTxop object",
   613                    PointerValue (),
   662                    PointerValue (),
   614                    MakePointerAccessor (&RegularWifiMac::GetDcaTxop),
   663                    MakePointerAccessor (&RegularWifiMac::GetDcaTxop),
   615                    MakePointerChecker<DcaTxop> ())
   664                    MakePointerChecker<DcaTxop> ())
   616     .AddAttribute ("VO_EdcaTxopN",
   665     .AddAttribute ("VO_EdcaTxopN",
   661     case WIFI_PHY_STANDARD_holland:
   710     case WIFI_PHY_STANDARD_holland:
   662     case WIFI_PHY_STANDARD_80211a:
   711     case WIFI_PHY_STANDARD_80211a:
   663     case WIFI_PHY_STANDARD_80211g:
   712     case WIFI_PHY_STANDARD_80211g:
   664     case WIFI_PHY_STANDARD_80211_10MHZ:
   713     case WIFI_PHY_STANDARD_80211_10MHZ:
   665     case WIFI_PHY_STANDARD_80211_5MHZ:
   714     case WIFI_PHY_STANDARD_80211_5MHZ:
       
   715     case WIFI_PHY_STANDARD_80211n_5GHZ:
       
   716     case WIFI_PHY_STANDARD_80211n_2_4GHZ:
   666       cwmin = 15;
   717       cwmin = 15;
   667       cwmax = 1023;
   718       cwmax = 1023;
   668       break;
   719       break;
   669 
   720 
   670     case WIFI_PHY_STANDARD_80211b:
   721     case WIFI_PHY_STANDARD_80211b: