Maintains information for a block ack agreement. More...
#include <block-ack-agreement.h>
Public Member Functions | |
BlockAckAgreement () | |
BlockAckAgreement (Mac48Address peer, uint8_t tid) | |
Constructor for BlockAckAgreement with given peer and TID. More... | |
~BlockAckAgreement () | |
uint16_t | GetBufferSize (void) const |
Return the buffer size. More... | |
Mac48Address | GetPeer (void) const |
Return the peer address. More... | |
uint16_t | GetStartingSequence (void) const |
Return the starting squence number. More... | |
uint16_t | GetStartingSequenceControl (void) const |
Return the starting squence control. More... | |
uint8_t | GetTid (void) const |
Return the Traffic ID (TID). More... | |
uint16_t | GetTimeout (void) const |
Return the timeout. More... | |
bool | IsAmsduSupported (void) const |
Check whether A-MSDU is supported. More... | |
bool | IsImmediateBlockAck (void) const |
Check whether the current ACK policy is immediate block ACK. More... | |
void | SetAmsduSupport (bool supported) |
Enable or disable A-MSDU support. More... | |
void | SetBufferSize (uint16_t bufferSize) |
Set buffer size. More... | |
void | SetDelayedBlockAck (void) |
Set Block ACK policy to delayed ACK. More... | |
void | SetImmediateBlockAck (void) |
Set Block ACK policy to immediate ACK. More... | |
void | SetStartingSequence (uint16_t seq) |
Set starting sequence number. More... | |
void | SetTimeout (uint16_t timeout) |
Set timeout. More... | |
Protected Attributes | |
uint8_t | m_amsduSupported |
uint8_t | m_blockAckPolicy |
uint16_t | m_bufferSize |
EventId | m_inactivityEvent |
Mac48Address | m_peer |
uint16_t | m_startingSeq |
uint8_t | m_tid |
uint16_t | m_timeout |
Friends | |
class | MacLow |
Maintains information for a block ack agreement.
Definition at line 31 of file block-ack-agreement.h.
ns3::BlockAckAgreement::BlockAckAgreement | ( | ) |
Definition at line 27 of file block-ack-agreement.cc.
References NS_LOG_FUNCTION.
ns3::BlockAckAgreement::BlockAckAgreement | ( | Mac48Address | peer, |
uint8_t | tid | ||
) |
Constructor for BlockAckAgreement with given peer and TID.
peer | |
tid |
Definition at line 35 of file block-ack-agreement.cc.
References m_peer, m_tid, and NS_LOG_FUNCTION.
ns3::BlockAckAgreement::~BlockAckAgreement | ( | ) |
Definition at line 45 of file block-ack-agreement.cc.
References ns3::EventId::Cancel(), m_inactivityEvent, and NS_LOG_FUNCTION.
uint16_t ns3::BlockAckAgreement::GetBufferSize | ( | void | ) | const |
Return the buffer size.
Definition at line 104 of file block-ack-agreement.cc.
References m_bufferSize, and NS_LOG_FUNCTION.
Mac48Address ns3::BlockAckAgreement::GetPeer | ( | void | ) | const |
Return the peer address.
Definition at line 98 of file block-ack-agreement.cc.
References m_peer, and NS_LOG_FUNCTION.
Referenced by ns3::MacLow::ResetBlockAckInactivityTimerIfNeeded().
uint16_t ns3::BlockAckAgreement::GetStartingSequence | ( | void | ) | const |
Return the starting squence number.
Definition at line 116 of file block-ack-agreement.cc.
References m_startingSeq, and NS_LOG_FUNCTION.
Referenced by ns3::BlockAckManager::ScheduleBlockAckReqIfNeeded().
uint16_t ns3::BlockAckAgreement::GetStartingSequenceControl | ( | void | ) | const |
Return the starting squence control.
Definition at line 122 of file block-ack-agreement.cc.
References m_startingSeq, and NS_LOG_FUNCTION.
uint8_t ns3::BlockAckAgreement::GetTid | ( | void | ) | const |
Return the Traffic ID (TID).
Definition at line 92 of file block-ack-agreement.cc.
References m_tid, and NS_LOG_FUNCTION.
Referenced by ns3::MacLow::CreateBlockAckAgreement(), ns3::MacLow::ResetBlockAckInactivityTimerIfNeeded(), and ns3::BlockAckManager::ScheduleBlockAckReqIfNeeded().
uint16_t ns3::BlockAckAgreement::GetTimeout | ( | void | ) | const |
Return the timeout.
Definition at line 110 of file block-ack-agreement.cc.
References m_timeout, and NS_LOG_FUNCTION.
Referenced by ns3::MacLow::CreateBlockAckAgreement(), ns3::MacLow::ResetBlockAckInactivityTimerIfNeeded(), and ns3::BlockAckManager::UpdateAgreement().
bool ns3::BlockAckAgreement::IsAmsduSupported | ( | void | ) | const |
Check whether A-MSDU is supported.
Definition at line 135 of file block-ack-agreement.cc.
References m_amsduSupported, and NS_LOG_FUNCTION.
bool ns3::BlockAckAgreement::IsImmediateBlockAck | ( | void | ) | const |
Check whether the current ACK policy is immediate block ACK.
Definition at line 129 of file block-ack-agreement.cc.
References m_blockAckPolicy, and NS_LOG_FUNCTION.
void ns3::BlockAckAgreement::SetAmsduSupport | ( | bool | supported | ) |
Enable or disable A-MSDU support.
supported | enable or disable A-MSDU support |
Definition at line 85 of file block-ack-agreement.cc.
References m_amsduSupported, and NS_LOG_FUNCTION.
Referenced by ns3::MacLow::CreateBlockAckAgreement(), and ns3::BlockAckManager::UpdateAgreement().
void ns3::BlockAckAgreement::SetBufferSize | ( | uint16_t | bufferSize | ) |
Set buffer size.
bufferSize |
Definition at line 52 of file block-ack-agreement.cc.
References m_bufferSize, NS_ASSERT, and NS_LOG_FUNCTION.
Referenced by ns3::MacLow::CreateBlockAckAgreement(), and ns3::BlockAckManager::UpdateAgreement().
void ns3::BlockAckAgreement::SetDelayedBlockAck | ( | void | ) |
Set Block ACK policy to delayed ACK.
Definition at line 79 of file block-ack-agreement.cc.
References m_blockAckPolicy, and NS_LOG_FUNCTION.
Referenced by ns3::MacLow::CreateBlockAckAgreement(), and ns3::BlockAckManager::UpdateAgreement().
void ns3::BlockAckAgreement::SetImmediateBlockAck | ( | void | ) |
Set Block ACK policy to immediate ACK.
Definition at line 73 of file block-ack-agreement.cc.
References m_blockAckPolicy, and NS_LOG_FUNCTION.
Referenced by ns3::MacLow::CreateBlockAckAgreement(), and ns3::BlockAckManager::UpdateAgreement().
void ns3::BlockAckAgreement::SetStartingSequence | ( | uint16_t | seq | ) |
Set starting sequence number.
seq | the starting sequence number |
Definition at line 66 of file block-ack-agreement.cc.
References m_startingSeq, NS_ASSERT, and NS_LOG_FUNCTION.
Referenced by ns3::BlockAckManager::CreateAgreement(), and ns3::MacLow::CreateBlockAckAgreement().
void ns3::BlockAckAgreement::SetTimeout | ( | uint16_t | timeout | ) |
Set timeout.
timeout |
Definition at line 60 of file block-ack-agreement.cc.
References m_timeout, NS_LOG_FUNCTION, and timeout.
Referenced by ns3::MacLow::CreateBlockAckAgreement(), and ns3::BlockAckManager::UpdateAgreement().
|
friend |
Definition at line 33 of file block-ack-agreement.h.
|
protected |
Definition at line 130 of file block-ack-agreement.h.
Referenced by IsAmsduSupported(), and SetAmsduSupport().
|
protected |
Definition at line 131 of file block-ack-agreement.h.
Referenced by IsImmediateBlockAck(), SetDelayedBlockAck(), and SetImmediateBlockAck().
|
protected |
Definition at line 133 of file block-ack-agreement.h.
Referenced by GetBufferSize(), ns3::OriginatorBlockAckAgreement::NotifyMpduTransmission(), and SetBufferSize().
|
protected |
Definition at line 137 of file block-ack-agreement.h.
Referenced by ns3::MacLow::ResetBlockAckInactivityTimerIfNeeded(), ns3::BlockAckManager::UpdateAgreement(), and ~BlockAckAgreement().
|
protected |
Definition at line 129 of file block-ack-agreement.h.
Referenced by BlockAckAgreement(), and GetPeer().
|
protected |
Definition at line 135 of file block-ack-agreement.h.
Referenced by GetStartingSequence(), GetStartingSequenceControl(), ns3::OriginatorBlockAckAgreement::NotifyMpduTransmission(), and SetStartingSequence().
|
protected |
Definition at line 132 of file block-ack-agreement.h.
Referenced by BlockAckAgreement(), and GetTid().
|
protected |
Definition at line 134 of file block-ack-agreement.h.
Referenced by GetTimeout(), and SetTimeout().