A Discrete-Event Network Simulator
API
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
ns3::UanHeaderRcCts Class Reference

CTS header. More...

#include <uan-header-rc.h>

+ Inheritance diagram for ns3::UanHeaderRcCts:
+ Collaboration diagram for ns3::UanHeaderRcCts:

Public Member Functions

 UanHeaderRcCts ()
 Default constructor. More...
 
 UanHeaderRcCts (uint8_t frameNo, uint8_t retryNo, Time rtsTs, Time delay, UanAddress addr)
 Constructor. More...
 
virtual ~UanHeaderRcCts ()
 Destructor. More...
 
virtual uint32_t Deserialize (Buffer::Iterator start)
 
UanAddress GetAddress (void) const
 Get the destination address, for scheduling info. More...
 
Time GetDelayToTx (void) const
 Get the time delay from TX time of CTS packet until arrival of first data frame. More...
 
uint8_t GetFrameNo (void) const
 Get the frame number of the RTS being cleared. More...
 
virtual TypeId GetInstanceTypeId (void) const
 
uint8_t GetRetryNo (void) const
 Get the retry number of the RTS packet being cleared. More...
 
Time GetRtsTimeStamp (void) const
 Get the receive time of the RTS being cleared. More...
 
virtual uint32_t GetSerializedSize (void) const
 
virtual void Print (std::ostream &os) const
 
virtual void Serialize (Buffer::Iterator start) const
 
void SetAddress (UanAddress addr)
 Set the destination address, for scheduling info. More...
 
void SetDelayToTx (Time delay)
 Set the time delay from CTS transmission to first data frame arrival. More...
 
void SetFrameNo (uint8_t frameNo)
 Set the RTS frame number being cleared. More...
 
void SetRetryNo (uint8_t no)
 Set the retry number of the RTS frame being cleared. More...
 
void SetRtsTimeStamp (Time timeStamp)
 Set the timestamp for RTS reception. More...
 
- Public Member Functions inherited from ns3::Header
virtual ~Header ()
 
- Public Member Functions inherited from ns3::ObjectBase
virtual ~ObjectBase ()
 Virtual destructor. More...
 
void GetAttribute (std::string name, AttributeValue &value) const
 
bool GetAttributeFailSafe (std::string name, AttributeValue &attribute) const
 
void SetAttribute (std::string name, const AttributeValue &value)
 
bool SetAttributeFailSafe (std::string name, const AttributeValue &value)
 
bool TraceConnect (std::string name, std::string context, const CallbackBase &cb)
 
bool TraceConnectWithoutContext (std::string name, const CallbackBase &cb)
 
bool TraceDisconnect (std::string name, std::string context, const CallbackBase &cb)
 
bool TraceDisconnectWithoutContext (std::string name, const CallbackBase &cb)
 

Static Public Member Functions

static TypeId GetTypeId (void)
 Register this type. More...
 
- Static Public Member Functions inherited from ns3::Header
static TypeId GetTypeId (void)
 
- Static Public Member Functions inherited from ns3::Chunk
static TypeId GetTypeId (void)
 
- Static Public Member Functions inherited from ns3::ObjectBase
static TypeId GetTypeId (void)
 Get the type ID. More...
 

Private Attributes

UanAddress m_address
 Destination of CTS packet. More...
 
Time m_delay
 Delay until transmission. More...
 
uint8_t m_frameNo
 Reservation frame number being cleared. More...
 
uint8_t m_retryNo
 Retry number of received RTS packet. More...
 
Time m_timeStampRts
 RX time of RTS packet at gateway. More...
 

Additional Inherited Members

- Protected Member Functions inherited from ns3::ObjectBase
void ConstructSelf (const AttributeConstructionList &attributes)
 
virtual void NotifyConstructionCompleted (void)
 This method is invoked once all member attributes have been initialized. More...
 

Detailed Description

CTS header.

Doxygen introspection did not find any typical Config paths.

Includes RTS RX time, CTS TX time, delay until TX, RTS blocking period, RTS tx period, rate #, and retry rate #


No Attributes are defined for this type.
No TraceSources are defined for this type.

Definition at line 321 of file uan-header-rc.h.

Constructor & Destructor Documentation

ns3::UanHeaderRcCts::UanHeaderRcCts ( )

Default constructor.

Definition at line 390 of file uan-header-rc.cc.

ns3::UanHeaderRcCts::UanHeaderRcCts ( uint8_t  frameNo,
uint8_t  retryNo,
Time  rtsTs,
Time  delay,
UanAddress  addr 
)

Constructor.

Parameters
frameNoReservation frame # being cleared.
retryNoRetry # of received RTS packet.
rtsTsRX time of RTS packet at gateway.
delayDelay until transmission.
addrDestination of CTS packet.
Note
Times are serialized, with ms precission, into 32 bit fields.

Definition at line 401 of file uan-header-rc.cc.

ns3::UanHeaderRcCts::~UanHeaderRcCts ( )
virtual

Destructor.

Definition at line 412 of file uan-header-rc.cc.

Member Function Documentation

uint32_t ns3::UanHeaderRcCts::Deserialize ( Buffer::Iterator  start)
virtual
Parameters
startan iterator which points to where the header should written.
Returns
the number of bytes read.

This method is used by Packet::RemoveHeader to re-create a header from the byte buffer of a packet. The data read is expected to match bit-for-bit the representation of this header in real networks.

Implements ns3::Header.

Definition at line 506 of file uan-header-rc.cc.

References ns3::Buffer::Iterator::GetDistanceFrom(), m_address, m_delay, m_frameNo, m_retryNo, m_timeStampRts, ns3::Buffer::Iterator::ReadU32(), ns3::Buffer::Iterator::ReadU8(), and visualizer.core::start().

+ Here is the call graph for this function:

UanAddress ns3::UanHeaderRcCts::GetAddress ( void  ) const

Get the destination address, for scheduling info.

Returns
The destination address.

Definition at line 483 of file uan-header-rc.cc.

References m_address.

Referenced by ns3::UanMacRc::ReceiveOkFromPhy().

+ Here is the caller graph for this function:

Time ns3::UanHeaderRcCts::GetDelayToTx ( void  ) const

Get the time delay from TX time of CTS packet until arrival of first data frame.

Returns
The delay time.

Definition at line 471 of file uan-header-rc.cc.

References m_delay.

Referenced by ns3::UanMacRc::ScheduleData().

+ Here is the caller graph for this function:

uint8_t ns3::UanHeaderRcCts::GetFrameNo ( void  ) const

Get the frame number of the RTS being cleared.

Returns
The frame number.

Definition at line 459 of file uan-header-rc.cc.

References m_frameNo.

Referenced by ns3::UanMacRc::ScheduleData().

+ Here is the caller graph for this function:

TypeId ns3::UanHeaderRcCts::GetInstanceTypeId ( void  ) const
virtual
Returns
the TypeId associated to the most-derived type of this instance.

This method is typically implemented by ns3::Object::GetInstanceTypeId but some classes which derive from ns3::ObjectBase directly have to implement it themselves.

Implements ns3::ObjectBase.

Definition at line 525 of file uan-header-rc.cc.

References GetTypeId().

+ Here is the call graph for this function:

uint8_t ns3::UanHeaderRcCts::GetRetryNo ( void  ) const

Get the retry number of the RTS packet being cleared.

Returns
The retry number

Definition at line 477 of file uan-header-rc.cc.

References m_retryNo.

Time ns3::UanHeaderRcCts::GetRtsTimeStamp ( void  ) const

Get the receive time of the RTS being cleared.

Returns
The RX time.

Definition at line 465 of file uan-header-rc.cc.

References m_timeStampRts.

uint32_t ns3::UanHeaderRcCts::GetSerializedSize ( void  ) const
virtual
Returns
the expected size of the header.

This method is used by Packet::AddHeader to store a header into the byte buffer of a packet. This method should return the number of bytes which are needed to store the full header data by Serialize.

Implements ns3::Header.

Definition at line 489 of file uan-header-rc.cc.

Referenced by ns3::UanMacRc::UanMacRc(), and ns3::UanMacRcGw::UanMacRcGw().

+ Here is the caller graph for this function:

TypeId ns3::UanHeaderRcCts::GetTypeId ( void  )
static

Register this type.

Returns
The TypeId.

Definition at line 418 of file uan-header-rc.cc.

References ns3::TypeId::SetParent().

Referenced by GetInstanceTypeId().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void ns3::UanHeaderRcCts::Print ( std::ostream &  os) const
virtual
Parameters
osoutput stream This method is used by Packet::Print to print the content of a trailer as ascii data to a c++ output stream. Although the trailer is free to format its output as it wishes, it is recommended to follow a few rules to integrate with the packet pretty printer: start with flags, small field values located between a pair of parens. Values should be separated by whitespace. Follow the parens with the important fields, separated by whitespace. i.e.: (field1 val1 field2 val2 field3 val3) field4 val4 field5 val5

Implements ns3::Header.

Definition at line 519 of file uan-header-rc.cc.

References ns3::Time::GetSeconds(), m_address, m_delay, m_frameNo, m_retryNo, and m_timeStampRts.

+ Here is the call graph for this function:

void ns3::UanHeaderRcCts::Serialize ( Buffer::Iterator  start) const
virtual
Parameters
startan iterator which points to where the header should be written.

This method is used by Packet::AddHeader to store a header into the byte buffer of a packet. The data written is expected to match bit-for-bit the representation of this header in a real network.

Implements ns3::Header.

Definition at line 496 of file uan-header-rc.cc.

References ns3::UanAddress::GetAsInt(), ns3::Time::GetSeconds(), m_address, m_delay, m_frameNo, m_retryNo, m_timeStampRts, ns3::Buffer::Iterator::WriteU32(), and ns3::Buffer::Iterator::WriteU8().

+ Here is the call graph for this function:

void ns3::UanHeaderRcCts::SetAddress ( UanAddress  addr)

Set the destination address, for scheduling info.

Parameters
addrThe destination address.

Definition at line 454 of file uan-header-rc.cc.

References m_address.

Referenced by ns3::UanMacRc::ReceiveOkFromPhy(), and ns3::UanMacRcGw::StartCycle().

+ Here is the caller graph for this function:

void ns3::UanHeaderRcCts::SetDelayToTx ( Time  delay)

Set the time delay from CTS transmission to first data frame arrival.

Parameters
delayThe delay time.

Definition at line 442 of file uan-header-rc.cc.

References m_delay.

void ns3::UanHeaderRcCts::SetFrameNo ( uint8_t  frameNo)

Set the RTS frame number being cleared.

Parameters
frameNoThe frame number.

Definition at line 429 of file uan-header-rc.cc.

References m_frameNo.

void ns3::UanHeaderRcCts::SetRetryNo ( uint8_t  no)

Set the retry number of the RTS frame being cleared.

Parameters
noThe retry number.

Definition at line 448 of file uan-header-rc.cc.

References m_retryNo.

void ns3::UanHeaderRcCts::SetRtsTimeStamp ( Time  timeStamp)

Set the timestamp for RTS reception.

Parameters
timeStampThe timestamp.

Definition at line 435 of file uan-header-rc.cc.

References m_timeStampRts.

Member Data Documentation

UanAddress ns3::UanHeaderRcCts::m_address
private

Destination of CTS packet.

Definition at line 421 of file uan-header-rc.h.

Referenced by Deserialize(), GetAddress(), Print(), Serialize(), and SetAddress().

Time ns3::UanHeaderRcCts::m_delay
private

Delay until transmission.

Definition at line 420 of file uan-header-rc.h.

Referenced by Deserialize(), GetDelayToTx(), Print(), Serialize(), and SetDelayToTx().

uint8_t ns3::UanHeaderRcCts::m_frameNo
private

Reservation frame number being cleared.

Definition at line 417 of file uan-header-rc.h.

Referenced by Deserialize(), GetFrameNo(), Print(), Serialize(), and SetFrameNo().

uint8_t ns3::UanHeaderRcCts::m_retryNo
private

Retry number of received RTS packet.

Definition at line 419 of file uan-header-rc.h.

Referenced by Deserialize(), GetRetryNo(), Print(), Serialize(), and SetRetryNo().

Time ns3::UanHeaderRcCts::m_timeStampRts
private

RX time of RTS packet at gateway.

Definition at line 418 of file uan-header-rc.h.

Referenced by Deserialize(), GetRtsTimeStamp(), Print(), Serialize(), and SetRtsTimeStamp().


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