Stores reservation info for use in scheduling data channel by reservation channel MAC. More...
#include "uan-mac-rc.h"
Public Member Functions | |
Reservation () | |
Default constructor. | |
Reservation (std::list< std::pair< Ptr< Packet >, Mac8Address > > &list, uint8_t frameNo, uint32_t maxPkts=0) | |
Create Reservation object with given packet list, frame number and max packets. | |
~Reservation () | |
Destructor. | |
void | AddTimestamp (Time t) |
Set the time of the latest RTS sent. | |
uint8_t | GetFrameNo () const |
Get the frame number. | |
uint32_t | GetLength () const |
Get the total length of the Reservation. | |
uint32_t | GetNoFrames () const |
Get the number of frames in this Reservation. | |
const std::list< std::pair< Ptr< Packet >, Mac8Address > > & | GetPktList () const |
Get the list of packets. | |
uint8_t | GetRetryNo () const |
Get the retry number. | |
Time | GetTimestamp (uint8_t n) const |
Get the timestamp for the n'th RTS. | |
void | IncrementRetry () |
Increment the retry count. | |
bool | IsTransmitted () const |
void | SetFrameNo (uint8_t fn) |
Set the frame number. | |
void | SetTransmitted (bool t=true) |
Set the reservation transmitted state. | |
Private Attributes | |
uint8_t | m_frameNo |
Frame number. | |
uint32_t | m_length |
Total length of queued packets. | |
std::list< std::pair< Ptr< Packet >, Mac8Address > > | m_pktList |
Queued packets for each address. | |
uint8_t | m_retryNo |
Number of retries. | |
std::vector< Time > | m_timestamp |
Timestamps for each retry. | |
bool | m_transmitted |
Has this reservation been transmitted. | |
Stores reservation info for use in scheduling data channel by reservation channel MAC.
Definition at line 39 of file uan-mac-rc.h.
ns3::Reservation::Reservation | ( | ) |
Default constructor.
Definition at line 34 of file uan-mac-rc.cc.
ns3::Reservation::Reservation | ( | std::list< std::pair< Ptr< Packet >, Mac8Address > > & | list, |
uint8_t | frameNo, | ||
uint32_t | maxPkts = 0 ) |
Create Reservation object with given packet list, frame number and max packets.
list | List of packets for assigned to reservation. |
frameNo | Frame number of reservation transmission. |
maxPkts | Maximum number of packets to assign to reservation from packet list (0 = no maximum). |
Definition at line 42 of file uan-mac-rc.cc.
References ns3::UanHeaderCommon::GetSerializedSize(), ns3::UanHeaderRcData::GetSerializedSize(), m_length, and m_pktList.
ns3::Reservation::~Reservation | ( | ) |
void ns3::Reservation::AddTimestamp | ( | Time | t | ) |
Set the time of the latest RTS sent.
t | RTS timestamp. |
Definition at line 122 of file uan-mac-rc.cc.
References m_timestamp.
uint8_t ns3::Reservation::GetFrameNo | ( | ) | const |
Get the frame number.
Definition at line 92 of file uan-mac-rc.cc.
References m_frameNo.
uint32_t ns3::Reservation::GetLength | ( | ) | const |
Get the total length of the Reservation.
This is the sum of packets with headers.
Definition at line 80 of file uan-mac-rc.cc.
References m_length.
uint32_t ns3::Reservation::GetNoFrames | ( | ) | const |
Get the number of frames in this Reservation.
Definition at line 74 of file uan-mac-rc.cc.
References m_pktList.
const std::list< std::pair< Ptr< Packet >, Mac8Address > > & ns3::Reservation::GetPktList | ( | ) | const |
Get the list of packets.
Definition at line 86 of file uan-mac-rc.cc.
References m_pktList.
uint8_t ns3::Reservation::GetRetryNo | ( | ) | const |
Get the retry number.
Definition at line 98 of file uan-mac-rc.cc.
References m_retryNo.
Time ns3::Reservation::GetTimestamp | ( | uint8_t | n | ) | const |
Get the timestamp for the n'th RTS.
n | Which retry number. |
Definition at line 104 of file uan-mac-rc.cc.
References m_timestamp.
void ns3::Reservation::IncrementRetry | ( | ) |
bool ns3::Reservation::IsTransmitted | ( | ) | const |
Definition at line 110 of file uan-mac-rc.cc.
References m_transmitted.
void ns3::Reservation::SetFrameNo | ( | uint8_t | fn | ) |
Set the frame number.
fn | The frame number. |
Definition at line 116 of file uan-mac-rc.cc.
References m_frameNo.
void ns3::Reservation::SetTransmitted | ( | bool | t = true | ) |
Set the reservation transmitted state.
t | True if reservation has been transmitted. |
Definition at line 134 of file uan-mac-rc.cc.
References m_transmitted.
|
private |
Frame number.
Definition at line 127 of file uan-mac-rc.h.
Referenced by GetFrameNo(), and SetFrameNo().
|
private |
Total length of queued packets.
Definition at line 125 of file uan-mac-rc.h.
Referenced by Reservation(), and GetLength().
|
private |
Queued packets for each address.
Definition at line 123 of file uan-mac-rc.h.
Referenced by Reservation(), ~Reservation(), GetNoFrames(), and GetPktList().
|
private |
Number of retries.
Definition at line 131 of file uan-mac-rc.h.
Referenced by GetRetryNo(), and IncrementRetry().
|
private |
Timestamps for each retry.
Definition at line 129 of file uan-mac-rc.h.
Referenced by ~Reservation(), AddTimestamp(), and GetTimestamp().
|
private |
Has this reservation been transmitted.
Definition at line 133 of file uan-mac-rc.h.
Referenced by IsTransmitted(), and SetTransmitted().