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 contention 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.
NS_ASSERT_MSG(false,"Ipv4AddressGenerator::MaskToIndex(): Impossible")
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 contention window size.
void NotifyOn(void)
Notify that the device has started to switch on.
void SetCwMin(uint32_t minCw)
Set the minimum contention 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.
void SetCwMax(uint32_t maxCw)
Set the maximum contention 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.
void NotifyOff(void)
Notify that the device has started to switch off.
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.