36 .SetGroupName (
"Wifi")
47 m_accessRequested (false),
85 bool changed = (
m_cwMin != minCw);
97 bool changed = (
m_cwMax != maxCw);
206 m_txop->NotifyAccessGranted ();
213 m_txop->NotifyCollision ();
220 m_txop->NotifyInternalCollision ();
227 m_txop->NotifyChannelSwitching ();
uint32_t m_cwMin
the CW minimum
void SetTxopLimit(Time txopLimit)
Set the TXOP limit.
Simulation virtual time values and global simulation resolution.
void NotifySleep(void)
Notify that the device has started to sleep.
DcfState(Ptr< DcaTxop > txop)
Constructor.
Smart pointer class similar to boost::intrusive_ptr.
#define NS_LOG_FUNCTION(parameters)
If log level LOG_FUNCTION is enabled, this macro will output all input parameters separated by "...
void NotifyInternalCollision(void)
Notify that internal collision has occurred.
uint32_t GetCwMin(void) const
Return the minimum congestion window size.
#define NS_OBJECT_ENSURE_REGISTERED(type)
Register an Object subclass with the TypeId system.
void NotifyAccessGranted(void)
Notify that access has been granted.
Time GetBackoffStart(void) const
Return the time when the backoff procedure started.
#define NS_ASSERT(condition)
At runtime, in debugging builds, if this condition is not true, the program prints the source file...
#define NS_LOG_COMPONENT_DEFINE(name)
Define a Log component with a specific name.
void NotifyWakeUp(void)
Notify that the device has started to wake up.
Ptr< DcaTxop > m_txop
the DCA TXOP
bool m_accessRequested
flag whether channel access is already requested
void SetAifsn(uint32_t aifsn)
void ResetCw(void)
Update the value of the CW variable to take into account a transmission success or a transmission abo...
Time GetTxopLimit(void) const
Return the TXOP limit.
uint32_t m_backoffSlots
the backoff slots
Time m_txopLimit
the txop limit time
int64_t GetMicroSeconds(void) const
Get an approximation of the time stored in this instance in the indicated unit.
bool IsAccessRequested(void) const
void DoDispose(void)
Destructor implementation.
uint32_t GetBackoffSlots(void) const
Return the current number of backoff slots.
uint32_t GetCwMax(void) const
Return the maximum congestion window size.
void SetCwMin(uint32_t minCw)
Set the minimum congestion window size.
void StartBackoffNow(uint32_t nSlots)
Every class exported by the ns3 library is enclosed in the ns3 namespace.
uint32_t m_cwMax
the CW maximum
void NotifyAccessRequested(void)
Notify that access request has been received.
uint32_t m_cw
the current CW
static Time Now(void)
Return the current simulation virtual time.
#define NS_ASSERT_MSG(condition, message)
At runtime, in debugging builds, if this condition is not true, the program prints the message to out...
void SetCwMax(uint32_t maxCw)
Set the maximum congestion window size.
void NotifyChannelSwitching(void)
Notify that the device is switching channel.
uint32_t GetCw(void) const
uint32_t GetAifsn(void) const
Return the number of slots that make up an AIFS.
uint32_t m_aifsn
the AIFSN
void UpdateBackoffSlotsNow(uint32_t nSlots, Time backoffUpdateBound)
Update backoff slots that nSlots has passed.
#define NS_LOG_DEBUG(msg)
Use NS_LOG to output a message of level LOG_DEBUG.
Time Seconds(double value)
Construct a Time in the indicated unit.
static TypeId GetTypeId(void)
Get the type ID.
void NotifyCollision(void)
Notify that collision has occurred.
Time m_backoffStart
the backoffStart variable is used to keep track of the time at which a backoff was started or the tim...
A base class which provides memory management and object aggregation.
void UpdateFailedCw(void)
Update the value of the CW variable to take into account a transmission failure.
a unique identifier for an interface.
TypeId SetParent(TypeId tid)
Set the parent TypeId.