A Discrete-Event Network Simulator
API
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
ns3::WifiModeFactory Class Reference

create WifiMode class instances and keep track of them. More...

#include <wifi-mode.h>

Classes

struct  WifiModeItem
 

Static Public Member Functions

static WifiMode CreateWifiMode (std::string uniqueName, enum WifiModulationClass modClass, bool isMandatory, uint32_t bandwidth, uint32_t dataRate, enum WifiCodeRate codingRate, uint8_t constellationSize)
 

Private Types

typedef std::vector< struct
WifiModeItem
WifiModeItemList
 

Private Member Functions

uint32_t AllocateUid (std::string uniqueName)
 
WifiModeItemGet (uint32_t uid)
 
WifiMode Search (std::string name)
 

Static Private Member Functions

static WifiModeFactoryGetFactory ()
 

Private Attributes

WifiModeItemList m_itemList
 

Friends

std::istream & operator>> (std::istream &is, WifiMode &mode)
 
class WifiMode
 

Detailed Description

create WifiMode class instances and keep track of them.

This factory ensures that each WifiMode created has a unique name and assigns to each of them a unique integer.

Definition at line 183 of file wifi-mode.h.

Member Function Documentation

WifiMode ns3::WifiModeFactory::CreateWifiMode ( std::string  uniqueName,
enum WifiModulationClass  modClass,
bool  isMandatory,
uint32_t  bandwidth,
uint32_t  dataRate,
enum WifiCodeRate  codingRate,
uint8_t  constellationSize 
)
static
Parameters
uniqueNamethe name of the associated WifiMode. This name must be unique accross all instances.
modClassthe class of modulation
isMandatorytrue if this WifiMode is mandatory, false otherwise.
bandwidththe bandwidth (Hz) of the signal generated when the associated WifiMode is used.
dataRatethe rate (bits/second) at which the user data is transmitted
codingRateif convolutional coding is used for this rate then this parameter specifies the convolutional coding rate used. If there is no explicit convolutional coding step (e.g., for DSSS rates) then the caller should set this parameter to WIFI_CODE_RATE_UNCODED.
constellationSizethe order of the constellation used.

Create a WifiMode.

Definition at line 119 of file wifi-mode.cc.

References NS_ASSERT, NS_FATAL_ERROR, ns3::WIFI_CODE_RATE_1_2, ns3::WIFI_CODE_RATE_2_3, ns3::WIFI_CODE_RATE_3_4, ns3::WIFI_CODE_RATE_UNDEFINED, ns3::WIFI_MOD_CLASS_DSSS, and ns3::WIFI_MOD_CLASS_UNKNOWN.

Referenced by ns3::WifiPhy::GetDsssRate1Mbps(), ns3::WifiPhy::GetDsssRate5_5Mbps(), ns3::WifiPhy::GetErpOfdmRate6Mbps(), and ns3::WifiPhy::GetOfdmRate6Mbps().


The documentation for this class was generated from the following files: