InterferenceExperiment. More...
Classes | |
struct | Input |
Input structure. More... | |
Public Member Functions | |
InterferenceExperiment () | |
void | Run (InterferenceExperiment::Input input) |
Run function. | |
Private Member Functions | |
void | PacketDropped (Ptr< const Packet > packet, WifiPhyRxfailureReason reason) |
Function triggered when a packet is dropped. | |
void | SendA () const |
Send A function. | |
void | SendB () const |
Send B function. | |
Private Attributes | |
bool | m_droppedA |
flag to indicate whether packet A has been dropped | |
bool | m_droppedB |
flag to indicate whether packet B has been dropped | |
Input | m_input |
input | |
Ptr< SpectrumWifiPhy > | m_txA |
transmit A function | |
Ptr< SpectrumWifiPhy > | m_txB |
transmit B function | |
uint64_t | m_uidA |
UID to use for packet A. | |
uint64_t | m_uidB |
UID to use for packet B. | |
Definition at line 68 of file wifi-test-interference-helper.cc.
InterferenceExperiment::InterferenceExperiment | ( | ) |
Definition at line 174 of file wifi-test-interference-helper.cc.
|
private |
Function triggered when a packet is dropped.
packet | the packet that was dropped |
reason | the reason why it was dropped |
Definition at line 157 of file wifi-test-interference-helper.cc.
References m_droppedA, m_droppedB, m_uidA, m_uidB, and NS_LOG_ERROR.
Referenced by Run().
void InterferenceExperiment::Run | ( | InterferenceExperiment::Input | input | ) |
Run function.
input | the interference experiment data |
Definition at line 205 of file wifi-test-interference-helper.cc.
References InterferenceExperiment::Input::band, InterferenceExperiment::Input::captureEnabled, InterferenceExperiment::Input::captureMargin, InterferenceExperiment::Input::channelA, InterferenceExperiment::Input::channelB, checkResults, ns3::CreateObject(), ns3::Simulator::Destroy(), expectRxASuccessful, expectRxBSuccessful, InterferenceExperiment::Input::interval, m_droppedA, m_droppedB, m_input, m_txA, m_txB, ns3::MakeCallback(), NS_LOG_ERROR, PacketDropped(), ns3::Simulator::Run(), ns3::Simulator::Schedule(), ns3::Seconds(), SendA(), SendB(), ns3::Config::SetDefault(), InterferenceExperiment::Input::standard, InterferenceExperiment::Input::txPowerLevelA, InterferenceExperiment::Input::txPowerLevelB, InterferenceExperiment::Input::xA, and InterferenceExperiment::Input::xB.
|
private |
Send A function.
Definition at line 123 of file wifi-test-interference-helper.cc.
References ns3::Create(), ns3::WifiMacHeader::GetSerializedSize(), m_input, m_txA, m_uidA, InterferenceExperiment::Input::packetSizeA, InterferenceExperiment::Input::preamble, ns3::WifiTxVector::SetChannelWidth(), ns3::WifiTxVector::SetMode(), ns3::WifiTxVector::SetPreambleType(), ns3::WifiTxVector::SetTxPowerLevel(), ns3::WifiMacHeader::SetType(), InterferenceExperiment::Input::txModeA, InterferenceExperiment::Input::widthA, ns3::WIFI_MAC_CTL_ACK, and ns3::WIFI_MAC_FCS_LENGTH.
Referenced by Run().
|
private |
Send B function.
Definition at line 140 of file wifi-test-interference-helper.cc.
References ns3::Create(), ns3::WifiMacHeader::GetSerializedSize(), m_input, m_txB, m_uidB, InterferenceExperiment::Input::packetSizeB, InterferenceExperiment::Input::preamble, ns3::WifiTxVector::SetChannelWidth(), ns3::WifiTxVector::SetMode(), ns3::WifiTxVector::SetPreambleType(), ns3::WifiTxVector::SetTxPowerLevel(), ns3::WifiMacHeader::SetType(), InterferenceExperiment::Input::txModeB, InterferenceExperiment::Input::widthB, ns3::WIFI_MAC_CTL_ACK, and ns3::WIFI_MAC_FCS_LENGTH.
Referenced by Run().
|
private |
flag to indicate whether packet A has been dropped
Definition at line 116 of file wifi-test-interference-helper.cc.
Referenced by PacketDropped(), and Run().
|
private |
flag to indicate whether packet B has been dropped
Definition at line 117 of file wifi-test-interference-helper.cc.
Referenced by PacketDropped(), and Run().
|
private |
input
Definition at line 115 of file wifi-test-interference-helper.cc.
|
private |
transmit A function
Definition at line 113 of file wifi-test-interference-helper.cc.
|
private |
transmit B function
Definition at line 114 of file wifi-test-interference-helper.cc.
|
mutableprivate |
UID to use for packet A.
Definition at line 118 of file wifi-test-interference-helper.cc.
Referenced by PacketDropped(), and SendA().
|
mutableprivate |
UID to use for packet B.
Definition at line 119 of file wifi-test-interference-helper.cc.
Referenced by PacketDropped(), and SendB().