Abstraction of packet modulation information. More...
#include <uan-tx-mode.h>
Public Types | |
enum | ModulationType { PSK, QAM, FSK, OTHER } |
Public Member Functions | |
UanTxMode () | |
~UanTxMode () | |
uint32_t | GetBandwidthHz (void) const |
uint32_t | GetCenterFreqHz (void) const |
uint32_t | GetConstellationSize (void) const |
uint32_t | GetDataRateBps (void) const |
ModulationType | GetModType (void) const |
std::string | GetName (void) const |
uint32_t | GetPhyRateSps (void) const |
uint32_t | GetUid (void) const |
Private Attributes | |
uint32_t | m_uid |
Friends | |
std::ostream & | operator<< (std::ostream &os, const UanTxMode &mode) |
Writes tx mode entry to stream os. | |
std::istream & | operator>> (std::istream &is, UanTxMode &mode) |
class | UanTxModeFactory |
Abstraction of packet modulation information.
Definition at line 36 of file uan-tx-mode.h.
ns3::UanTxMode::UanTxMode | ( | ) |
Definition at line 29 of file uan-tx-mode.cc.
ns3::UanTxMode::~UanTxMode | ( | ) |
Definition at line 33 of file uan-tx-mode.cc.
uint32_t ns3::UanTxMode::GetBandwidthHz | ( | void | ) | const |
Definition at line 63 of file uan-tx-mode.cc.
References ns3::UanTxModeFactory::GetFactory(), ns3::UanTxModeFactory::GetModeItem(), ns3::UanTxModeFactory::UanTxModeItem::m_bwHz, and m_uid.
Referenced by ns3::UanPhyCalcSinrDual::CalcSinrDb(), and ns3::UanPhyGen::CalculateSinrDb().
uint32_t ns3::UanTxMode::GetCenterFreqHz | ( | void | ) | const |
Definition at line 57 of file uan-tx-mode.cc.
References ns3::UanTxModeFactory::GetFactory(), ns3::UanTxModeFactory::GetModeItem(), ns3::UanTxModeFactory::UanTxModeItem::m_cfHz, and m_uid.
Referenced by ns3::UanPhyCalcSinrDual::CalcSinrDb(), ns3::UanPhyGen::CalculateSinrDb(), and ns3::UanPropModelThorp::GetPathLossDb().
uint32_t ns3::UanTxMode::GetConstellationSize | ( | void | ) | const |
Definition at line 69 of file uan-tx-mode.cc.
References ns3::UanTxModeFactory::GetFactory(), ns3::UanTxModeFactory::GetModeItem(), ns3::UanTxModeFactory::UanTxModeItem::m_constSize, and m_uid.
uint32_t ns3::UanTxMode::GetDataRateBps | ( | void | ) | const |
Definition at line 45 of file uan-tx-mode.cc.
References ns3::UanTxModeFactory::GetFactory(), ns3::UanTxModeFactory::GetModeItem(), ns3::UanTxModeFactory::UanTxModeItem::m_dataRateBps, and m_uid.
Referenced by ns3::AcousticModemEnergyTestCase::DoRun(), ns3::UanMacRcGw::EndCycle(), ns3::UanTransducerHd::Receive(), ns3::UanMacRc::ScheduleData(), ns3::UanPhyGen::SendPacket(), ns3::UanMacRc::SendPacket(), ns3::UanMacRcGw::StartCycle(), ns3::UanPhyGen::StartRxPacket(), and ns3::UanTransducerHd::Transmit().
UanTxMode::ModulationType ns3::UanTxMode::GetModType | ( | void | ) | const |
Definition at line 39 of file uan-tx-mode.cc.
References ns3::UanTxModeFactory::GetFactory(), ns3::UanTxModeFactory::GetModeItem(), ns3::UanTxModeFactory::UanTxModeItem::m_type, and m_uid.
Referenced by ns3::UanPhyCalcSinrDual::CalcSinrDb(), ns3::UanPhyCalcSinrDefault::CalcSinrDb(), and ns3::UanPhyCalcSinrFhFsk::CalcSinrDb().
std::string ns3::UanTxMode::GetName | ( | void | ) | const |
Definition at line 75 of file uan-tx-mode.cc.
References ns3::UanTxModeFactory::GetFactory(), ns3::UanTxModeFactory::GetModeItem(), ns3::UanTxModeFactory::UanTxModeItem::m_name, and m_uid.
Referenced by ns3::UanPhyCalcSinrDual::CalcSinrDb().
uint32_t ns3::UanTxMode::GetPhyRateSps | ( | void | ) | const |
Definition at line 51 of file uan-tx-mode.cc.
References ns3::UanTxModeFactory::GetFactory(), ns3::UanTxModeFactory::GetModeItem(), ns3::UanTxModeFactory::UanTxModeItem::m_phyRateSps, and m_uid.
Referenced by ns3::UanPhyCalcSinrFhFsk::CalcSinrDb().
uint32_t ns3::UanTxMode::GetUid | ( | void | ) | const |
Definition at line 81 of file uan-tx-mode.cc.
References m_uid.
Referenced by ns3::UanPhyGen::StartRxPacket().
|
friend |
Writes tx mode entry to stream os.
Definition at line 87 of file uan-tx-mode.cc.
|
friend |
Definition at line 94 of file uan-tx-mode.cc.
|
friend |
Definition at line 82 of file uan-tx-mode.h.
|
private |
Definition at line 87 of file uan-tx-mode.h.
Referenced by GetBandwidthHz(), GetCenterFreqHz(), GetConstellationSize(), GetDataRateBps(), GetModType(), GetName(), GetPhyRateSps(), GetUid(), ns3::UanTxModeFactory::MakeModeFromItem(), ns3::operator<<(), and ns3::operator>>().