Listener for PHY events. More...
Public Member Functions | |
PhyListener (ns3::DcfManager *dcf) | |
Create a PhyListener for the given DcfManager. More... | |
virtual | ~PhyListener () |
virtual void | NotifyMaybeCcaBusyStart (Time duration) |
virtual void | NotifyRxEndError (void) |
We have received the last bit of a packet for which NotifyRxStart was invoked first and, the packet has not been successfully received. More... | |
virtual void | NotifyRxEndOk (void) |
We have received the last bit of a packet for which NotifyRxStart was invoked first and, the packet has been successfully received. More... | |
virtual void | NotifyRxStart (Time duration) |
virtual void | NotifySwitchingStart (Time duration) |
virtual void | NotifyTxStart (Time duration) |
Public Member Functions inherited from ns3::WifiPhyListener | |
virtual | ~WifiPhyListener () |
Private Attributes | |
ns3::DcfManager * | m_dcf |
DcfManager to forward events to. More... | |
|
inline |
Create a PhyListener for the given DcfManager.
dcf |
Definition at line 223 of file dcf-manager.cc.
|
inlinevirtual |
Definition at line 227 of file dcf-manager.cc.
|
inlinevirtual |
duration | the expected busy duration. |
This method does not really report a real state change as opposed to the other methods in this class. It merely reports that, unless the medium is reported busy through NotifyTxStart or NotifyRxStart/End, it will be busy as defined by the currently selected CCA mode.
Typical client code which wants to have a clear picture of the CCA state will need to keep track of the time at which the last NotifyCcaBusyStart method is called and what duration it reported.
Implements ns3::WifiPhyListener.
Definition at line 246 of file dcf-manager.cc.
References m_dcf, and ns3::DcfManager::NotifyMaybeCcaBusyStartNow().
|
inlinevirtual |
We have received the last bit of a packet for which NotifyRxStart was invoked first and, the packet has not been successfully received.
Implements ns3::WifiPhyListener.
Definition at line 238 of file dcf-manager.cc.
References m_dcf, and ns3::DcfManager::NotifyRxEndErrorNow().
|
inlinevirtual |
We have received the last bit of a packet for which NotifyRxStart was invoked first and, the packet has been successfully received.
Implements ns3::WifiPhyListener.
Definition at line 234 of file dcf-manager.cc.
References m_dcf, and ns3::DcfManager::NotifyRxEndOkNow().
|
inlinevirtual |
duration | the expected duration of the packet reception. |
We have received the first bit of a packet. We decided that we could synchronize on this packet. It does not mean we will be able to successfully receive completely the whole packet. It means that we will report a BUSY status until one of the following happens:
Implements ns3::WifiPhyListener.
Definition at line 230 of file dcf-manager.cc.
References m_dcf, and ns3::DcfManager::NotifyRxStartNow().
|
inlinevirtual |
duration | the expected channel switching duration. |
We do not send any event to notify the end of channel switching. Listeners should assume that the channel implicitely reverts to the idle or busy states.
Implements ns3::WifiPhyListener.
Definition at line 250 of file dcf-manager.cc.
References m_dcf, and ns3::DcfManager::NotifySwitchingStartNow().
|
inlinevirtual |
duration | the expected transmission duration. |
We are about to send the first bit of the packet. We do not send any event to notify the end of transmission. Listeners should assume that the channel implicitely reverts to the idle state unless they have received a cca busy report.
Implements ns3::WifiPhyListener.
Definition at line 242 of file dcf-manager.cc.
References m_dcf, and ns3::DcfManager::NotifyTxStartNow().
|
private |
DcfManager to forward events to.
Definition at line 255 of file dcf-manager.cc.
Referenced by NotifyMaybeCcaBusyStart(), NotifyRxEndError(), NotifyRxEndOk(), NotifyRxStart(), NotifySwitchingStart(), and NotifyTxStart().