A Discrete-Event Network Simulator
API
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
ns3::DcaTxop::Dcf Class Reference
+ Inheritance diagram for ns3::DcaTxop::Dcf:
+ Collaboration diagram for ns3::DcaTxop::Dcf:

Public Member Functions

 Dcf (DcaTxop *txop)
 
- Public Member Functions inherited from ns3::DcfState
 DcfState ()
 
virtual ~DcfState ()
 
uint32_t GetAifsn (void) const
 Return the number of slots that make up an AIFS. More...
 
uint32_t GetCw (void) const
 
uint32_t GetCwMax (void) const
 Return the maximum congestion window size. More...
 
uint32_t GetCwMin (void) const
 Return the minimum congestion window size. More...
 
bool IsAccessRequested (void) const
 
void ResetCw (void)
 Update the value of the CW variable to take into account a transmission success or a transmission abort (stop transmission of a packet after the maximum number of retransmissions has been reached). More...
 
void SetAifsn (uint32_t aifsn)
 
void SetCwMax (uint32_t maxCw)
 Set the maximum congestion window size. More...
 
void SetCwMin (uint32_t minCw)
 Set the minimum congestion window size. More...
 
void StartBackoffNow (uint32_t nSlots)
 
void UpdateFailedCw (void)
 Update the value of the CW variable to take into account a transmission failure. More...
 

Private Member Functions

virtual void DoNotifyAccessGranted (void)
 Called by DcfManager to notify a DcfState subclass that access to the medium is granted and can start immediately. More...
 
virtual void DoNotifyChannelSwitching (void)
 Called by DcfManager to notify a DcfState subclass that a channel switching occured. More...
 
virtual void DoNotifyCollision (void)
 Called by DcfManager to notify a DcfState subclass that a normal collision occured, that is, that the medium was busy when access was requested. More...
 
virtual void DoNotifyInternalCollision (void)
 Called by DcfManager to notify a DcfState subclass that an 'internal' collision occured, that is, that the backoff timer of a higher priority DcfState expired at the same time and that access was granted to this higher priority DcfState. More...
 

Private Attributes

DcaTxopm_txop
 

Detailed Description

Definition at line 45 of file dca-txop.cc.

Constructor & Destructor Documentation

ns3::DcaTxop::Dcf::Dcf ( DcaTxop txop)
inline

Definition at line 48 of file dca-txop.cc.

Member Function Documentation

virtual void ns3::DcaTxop::Dcf::DoNotifyAccessGranted ( void  )
inlineprivatevirtual

Called by DcfManager to notify a DcfState subclass that access to the medium is granted and can start immediately.

Implements ns3::DcfState.

Definition at line 53 of file dca-txop.cc.

References m_txop, and ns3::DcaTxop::NotifyAccessGranted().

+ Here is the call graph for this function:

virtual void ns3::DcaTxop::Dcf::DoNotifyChannelSwitching ( void  )
inlineprivatevirtual

Called by DcfManager to notify a DcfState subclass that a channel switching occured.

The subclass is expected to flush the queue of packets.

Implements ns3::DcfState.

Definition at line 65 of file dca-txop.cc.

References m_txop, and ns3::DcaTxop::NotifyChannelSwitching().

+ Here is the call graph for this function:

virtual void ns3::DcaTxop::Dcf::DoNotifyCollision ( void  )
inlineprivatevirtual

Called by DcfManager to notify a DcfState subclass that a normal collision occured, that is, that the medium was busy when access was requested.

The subclass is expected to start a new backoff by calling DcfState::StartBackoffNow and DcfManager::RequestAccess is access is still needed.

Implements ns3::DcfState.

Definition at line 61 of file dca-txop.cc.

References m_txop, and ns3::DcaTxop::NotifyCollision().

+ Here is the call graph for this function:

virtual void ns3::DcaTxop::Dcf::DoNotifyInternalCollision ( void  )
inlineprivatevirtual

Called by DcfManager to notify a DcfState subclass that an 'internal' collision occured, that is, that the backoff timer of a higher priority DcfState expired at the same time and that access was granted to this higher priority DcfState.

The subclass is expected to start a new backoff by calling DcfState::StartBackoffNow and DcfManager::RequestAccess is access is still needed.

Implements ns3::DcfState.

Definition at line 57 of file dca-txop.cc.

References m_txop, and ns3::DcaTxop::NotifyInternalCollision().

+ Here is the call graph for this function:

Member Data Documentation

DcaTxop* ns3::DcaTxop::Dcf::m_txop
private

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