ns3::WifiRemoteStationManager Class Reference

hold a list of per-remote-station state. More...

#include <wifi-remote-station-manager.h>

Inheritance diagram for ns3::WifiRemoteStationManager:
Inheritance graph
[legend]
Collaboration diagram for ns3::WifiRemoteStationManager:
Collaboration graph
[legend]

List of all members.

Public Types

typedef BasicModes::const_iterator BasicModesIterator

Public Member Functions

 WifiRemoteStationManager ()
virtual ~WifiRemoteStationManager ()
virtual void SetupPhy (Ptr< WifiPhy > phy)
uint32_t GetMaxSsrc (void) const
uint32_t GetMaxSlrc (void) const
uint32_t GetRtsCtsThreshold (void) const
uint32_t GetFragmentationThreshold (void) const
void SetMaxSsrc (uint32_t maxSsrc)
void SetMaxSlrc (uint32_t maxSlrc)
void SetRtsCtsThreshold (uint32_t threshold)
void SetFragmentationThreshold (uint32_t threshold)
void Reset (void)
void AddBasicMode (WifiMode mode)
WifiMode GetDefaultMode (void) const
uint32_t GetNBasicModes (void) const
WifiMode GetBasicMode (uint32_t i) const
BasicModesIterator BeginBasicModes (void) const
BasicModesIterator EndBasicModes (void) const
bool IsLowLatency (void) const
WifiRemoteStationLookup (Mac48Address address)
WifiRemoteStationLookupNonUnicast (void)

Static Public Member Functions

static TypeId GetTypeId (void)
 This method returns the TypeId associated to ns3::WifiRemoteStationManager.

Protected Member Functions

virtual void DoDispose (void)

Private Types

typedef std::vector< WifiModeBasicModes
typedef std::vector< std::pair
< Mac48Address,
WifiRemoteStation * > > 
Stations

Private Member Functions

virtual class WifiRemoteStationCreateStation (void)=0

Private Attributes

Stations m_stations
WifiMode m_defaultTxMode
NonUnicastWifiRemoteStationm_nonUnicast
BasicModes m_basicModes
bool m_isLowLatency
uint32_t m_maxSsrc
uint32_t m_maxSlrc
uint32_t m_rtsCtsThreshold
uint32_t m_fragmentationThreshold

Friends

class WifiRemoteStation

Detailed Description

hold a list of per-remote-station state.

See also:
ns3::WifiRemoteStation.

Definition at line 42 of file wifi-remote-station-manager.h.


Member Typedef Documentation

typedef std::vector<WifiMode> ns3::WifiRemoteStationManager::BasicModes [private]

Definition at line 45 of file wifi-remote-station-manager.h.

typedef BasicModes::const_iterator ns3::WifiRemoteStationManager::BasicModesIterator

Definition at line 47 of file wifi-remote-station-manager.h.

typedef std::vector<std::pair<Mac48Address, WifiRemoteStation *> > ns3::WifiRemoteStationManager::Stations [private]

Definition at line 89 of file wifi-remote-station-manager.h.


Constructor & Destructor Documentation

ns3::WifiRemoteStationManager::WifiRemoteStationManager (  ) 

Definition at line 162 of file wifi-remote-station-manager.cc.

ns3::WifiRemoteStationManager::~WifiRemoteStationManager (  )  [virtual]

Definition at line 166 of file wifi-remote-station-manager.cc.


Member Function Documentation

void ns3::WifiRemoteStationManager::AddBasicMode ( WifiMode  mode  ) 

Definition at line 272 of file wifi-remote-station-manager.cc.

References GetBasicMode(), GetNBasicModes(), and m_basicModes.

WifiRemoteStationManager::BasicModesIterator ns3::WifiRemoteStationManager::BeginBasicModes ( void   )  const

Definition at line 295 of file wifi-remote-station-manager.cc.

References m_basicModes.

virtual class WifiRemoteStation* ns3::WifiRemoteStationManager::CreateStation ( void   )  [private, pure virtual]
void ns3::WifiRemoteStationManager::DoDispose ( void   )  [protected, virtual]

This method is called by Object::Dispose or by the object's destructor, whichever comes first.

Subclasses are expected to implement their real destruction code in an overriden version of this method and chain up to their parent's implementation once they are done. i.e., for simplicity, the destructor of every subclass should be empty and its content should be moved to the associated DoDispose method.

Reimplemented from ns3::Object.

Definition at line 170 of file wifi-remote-station-manager.cc.

References m_nonUnicast, and m_stations.

WifiRemoteStationManager::BasicModesIterator ns3::WifiRemoteStationManager::EndBasicModes ( void   )  const

Definition at line 300 of file wifi-remote-station-manager.cc.

References m_basicModes.

WifiMode ns3::WifiRemoteStationManager::GetBasicMode ( uint32_t  i  )  const

Definition at line 289 of file wifi-remote-station-manager.cc.

References m_basicModes, and NS_ASSERT.

Referenced by AddBasicMode().

WifiMode ns3::WifiRemoteStationManager::GetDefaultMode ( void   )  const

Definition at line 255 of file wifi-remote-station-manager.cc.

References m_defaultTxMode.

uint32_t ns3::WifiRemoteStationManager::GetFragmentationThreshold ( void   )  const

Definition at line 202 of file wifi-remote-station-manager.cc.

References m_fragmentationThreshold.

uint32_t ns3::WifiRemoteStationManager::GetMaxSlrc ( void   )  const

Definition at line 192 of file wifi-remote-station-manager.cc.

References m_maxSlrc.

uint32_t ns3::WifiRemoteStationManager::GetMaxSsrc ( void   )  const

Definition at line 187 of file wifi-remote-station-manager.cc.

References m_maxSsrc.

uint32_t ns3::WifiRemoteStationManager::GetNBasicModes ( void   )  const

Definition at line 284 of file wifi-remote-station-manager.cc.

References m_basicModes.

Referenced by AddBasicMode().

uint32_t ns3::WifiRemoteStationManager::GetRtsCtsThreshold ( void   )  const

Definition at line 197 of file wifi-remote-station-manager.cc.

References m_rtsCtsThreshold.

TypeId ns3::WifiRemoteStationManager::GetTypeId ( void   )  [static]

This method returns the TypeId associated to ns3::WifiRemoteStationManager.

This object is accessible through the following paths with Config::Set and Config::Connect:

  • /NodeList/[i]/DeviceList/[i]/$ns3WifiNetDevice/RemoteStationManager

Attributes defined for this type:

  • IsLowLatency: If true, we attempt to modelize a so-called low-latency device: a device where decisions about tx parameters can be made on a per-packet basis and feedback about the transmission of each packet is obtained before sending the next. Otherwise, we modelize a high-latency device, that is a device where we cannot update our decision about tx parameters after every packet transmission.
    • Set with class: BooleanValue
    • Underlying type: bool
    • Initial value: true
    • Flags: construct write read
  • MaxSsrc: The maximum number of retransmission attempts for an RTS. This value will not have any effect on some rate control algorithms.
  • MaxSlrc: The maximum number of retransmission attempts for a DATA packet. This value will not have any effect on some rate control algorithms.
  • RtsCtsThreshold: If a data packet is bigger than this value, we use an RTS/CTS handshake before sending the data. This value will not have any effect on some rate control algorithms.
  • FragmentationThreshold: If a data packet is bigger than this value, we fragment it such that the size of the fragments are equal or smaller than this value. This value will not have any effect on some rate control algorithms.

No TraceSources defined for this type.

Reimplemented from ns3::Object.

Reimplemented in ns3::AarfWifiManager, ns3::AmrrWifiManager, ns3::ArfWifiManager, ns3::ConstantRateWifiManager, ns3::IdealWifiManager, ns3::OnoeWifiManager, and ns3::RraaWifiManager.

Definition at line 125 of file wifi-remote-station-manager.cc.

References ns3::TypeId::AddAttribute(), m_fragmentationThreshold, m_isLowLatency, m_maxSlrc, m_maxSsrc, m_rtsCtsThreshold, and ns3::TypeId::SetParent().

bool ns3::WifiRemoteStationManager::IsLowLatency ( void   )  const

Definition at line 305 of file wifi-remote-station-manager.cc.

References m_isLowLatency.

WifiRemoteStation * ns3::WifiRemoteStationManager::Lookup ( Mac48Address  address  ) 
WifiRemoteStation * ns3::WifiRemoteStationManager::LookupNonUnicast ( void   ) 

Definition at line 249 of file wifi-remote-station-manager.cc.

References m_nonUnicast.

void ns3::WifiRemoteStationManager::Reset ( void   ) 
void ns3::WifiRemoteStationManager::SetFragmentationThreshold ( uint32_t  threshold  ) 

Definition at line 222 of file wifi-remote-station-manager.cc.

References m_fragmentationThreshold.

void ns3::WifiRemoteStationManager::SetMaxSlrc ( uint32_t  maxSlrc  ) 

Definition at line 212 of file wifi-remote-station-manager.cc.

References m_maxSlrc.

void ns3::WifiRemoteStationManager::SetMaxSsrc ( uint32_t  maxSsrc  ) 

Definition at line 207 of file wifi-remote-station-manager.cc.

References m_maxSsrc.

void ns3::WifiRemoteStationManager::SetRtsCtsThreshold ( uint32_t  threshold  ) 

Definition at line 217 of file wifi-remote-station-manager.cc.

References m_rtsCtsThreshold.

void ns3::WifiRemoteStationManager::SetupPhy ( Ptr< WifiPhy phy  )  [virtual]

Reimplemented in ns3::IdealWifiManager.

Definition at line 180 of file wifi-remote-station-manager.cc.

References m_defaultTxMode, and Reset().


Friends And Related Function Documentation

friend class WifiRemoteStation [friend]

Definition at line 86 of file wifi-remote-station-manager.h.


Member Data Documentation

Definition at line 92 of file wifi-remote-station-manager.h.

Referenced by GetDefaultMode(), Reset(), and SetupPhy().

Definition at line 95 of file wifi-remote-station-manager.h.

Referenced by GetTypeId(), and IsLowLatency().

Definition at line 97 of file wifi-remote-station-manager.h.

Referenced by GetMaxSlrc(), GetTypeId(), and SetMaxSlrc().

Definition at line 96 of file wifi-remote-station-manager.h.

Referenced by GetMaxSsrc(), GetTypeId(), and SetMaxSsrc().

Definition at line 93 of file wifi-remote-station-manager.h.

Referenced by DoDispose(), Lookup(), and LookupNonUnicast().

Definition at line 98 of file wifi-remote-station-manager.h.

Referenced by GetRtsCtsThreshold(), GetTypeId(), and SetRtsCtsThreshold().

Definition at line 91 of file wifi-remote-station-manager.h.

Referenced by DoDispose(), Lookup(), and Reset().


The documentation for this class was generated from the following files:
Generated on Thu Dec 3 14:11:28 2009 for NS-3 by  doxygen 1.6.3