24 #include "ns3/object.h" 
   29 class UanTxModeFactory;
 
   97   std::string 
GetName (
void) 
const;
 
  103   uint32_t 
GetUid (
void) 
const;
 
  157                                uint32_t dataRateBps,
 
Global database of UanTxMode objects, retrievable by id or name. 
 
std::istream & operator>>(std::istream &is, Angles &a)
initialize a struct Angles from input 
 
uint32_t m_cfHz
Center frequency in Hz. 
 
uint32_t GetNModes(void) const 
Get the number of modes in this list. 
 
std::string GetName(void) const 
Get the mode name. 
 
friend std::istream & operator>>(std::istream &is, UanTxMode &mode)
Reads tx mode entry from stream is. 
 
UanTxModeFactory()
Constructor. 
 
static UanTxMode GetMode(std::string name)
Get a mode by name. 
 
Container for UanTxModes. 
 
std::map< uint32_t, UanTxModeItem > m_modes
Container for modes. 
 
static UanTxModeFactory & GetFactory(void)
Construct and get the static global factory instance. 
 
virtual ~UanModesList()
Destructor. 
 
ModulationType GetModType(void) const 
Get the modulation type of the mode. 
 
uint32_t m_constSize
Modulation constellation size (2 for BPSK, 4 for QPSK). 
 
static UanTxMode CreateMode(UanTxMode::ModulationType type, uint32_t dataRateBps, uint32_t phyRateSps, uint32_t cfHz, uint32_t bwHz, uint32_t constSize, std::string name)
 
friend std::ostream & operator<<(std::ostream &os, const UanModesList &ml)
Write UanModesList to stream os. 
 
uint32_t m_dataRateBps
Data rate in BPS. 
 
uint32_t GetDataRateBps(void) const 
Get the data rate of the transmit mode. 
 
UanTxModeItem & GetModeItem(uint32_t uid)
Get a mode by id. 
 
UanTxMode::ModulationType m_type
Modulation type. 
 
Abstraction of packet modulation information. 
 
ModulationType
Modulation type. 
 
std::ostream & operator<<(std::ostream &os, const Angles &a)
print a struct Angles to output 
 
UanTxMode operator[](uint32_t index) const 
Retrieve a mode by index. 
 
Every class exported by the ns3 library is enclosed in the ns3 namespace. 
 
std::string m_name
Unique string name for this transmission mode. 
 
~UanTxModeFactory()
Destructor. 
 
uint32_t m_phyRateSps
Symbol rate in symbols per second. 
 
uint32_t GetCenterFreqHz(void) const 
Get the transmission center frequency. 
 
UanModesList()
Constructor. 
 
uint32_t m_nextUid
next id number 
 
uint32_t GetPhyRateSps(void) const 
Get the physical signaling rate. 
 
Container for the UanTxMode properties. 
 
friend std::istream & operator>>(std::istream &is, UanModesList &ml)
Read UanModesList from stream is. 
 
uint32_t m_bwHz
Bandwidth in Hz. 
 
void AppendMode(UanTxMode mode)
Add mode to this list. 
 
UanTxMode MakeModeFromItem(const UanTxModeItem &item)
Create a public UanTxMode from an internal UanTxModeItem. 
 
uint32_t GetConstellationSize(void) const 
Get the number of constellation points in the modulation scheme. 
 
uint32_t GetBandwidthHz(void) const 
Get the transmission signal bandwidth. 
 
bool NameUsed(std::string name)
Check if the mode name already exists. 
 
friend std::ostream & operator<<(std::ostream &os, const UanTxMode &mode)
Writes tx mode entry to stream os. 
 
uint32_t GetUid(void) const 
Get a unique id for the mode. 
 
#define ATTRIBUTE_HELPER_HEADER(type)
Declare the attribute value, accessor and checkers for class type. 
 
std::vector< UanTxMode > m_modes
The vector of modes in this list. 
 
void DeleteMode(uint32_t num)
Delete the mode at given index. 
 
Quadrature amplitude modulation.