Implement the header for management frames of type beacon. More...
#include "mgt-headers.h"
Public Member Functions | |
| ~MgtBeaconHeader () override=default | |
| TypeId | GetInstanceTypeId () const override |
| Get the most derived TypeId for this Object. | |
| uint64_t | GetTimestamp () const |
Static Public Member Functions | |
| static TypeId | GetTypeId () |
| Register this type. | |
Public Attributes | |
| uint64_t | m_beaconInterval {0} |
| Beacon interval (microseconds). | |
| CapabilityInformation | m_capability |
| Capability information. | |
Protected Member Functions | |
| uint32_t | DeserializeImpl (Buffer::Iterator start) |
| uint32_t | GetSerializedSizeImpl () const |
| void | SerializeImpl (Buffer::Iterator start) const |
Private Attributes | |
| uint64_t | m_timestamp {0} |
| Timestamp (microseconds). | |
Friends | |
| class | WifiMgtHeader< MgtBeaconHeader, BeaconElems > |
Implement the header for management frames of type beacon.
Definition at line 464 of file mgt-headers.h.
|
overridedefault |
|
protected |
| start | an iterator which points to where the header should read from. |
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.
Note that data is not actually removed from the buffer to which the iterator points. Both Packet::RemoveHeader() and Packet::PeekHeader() call Deserialize(), but only the RemoveHeader() has additional statements to remove the header bytes from the underlying buffer and associated metadata.
Definition at line 166 of file mgt-headers.cc.
References ns3::Buffer::Iterator::GetDistanceFrom(), m_beaconInterval, m_capability, m_timestamp, ns3::Buffer::Iterator::ReadU16(), and ns3::Buffer::Iterator::ReadU64().
|
override |
Get the most derived TypeId for this Object.
This method is provided by ns3::Object::GetInstanceTypeId but classes which derive from ns3::ObjectBase directly have to implement it themselves. Typically, this method should simply return the output of GetTypeId().
Definition at line 135 of file mgt-headers.cc.
References GetTypeId().
|
protected |
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.
Definition at line 147 of file mgt-headers.cc.
References m_capability.
| uint64_t ns3::MgtBeaconHeader::GetTimestamp | ( | ) | const |
Definition at line 141 of file mgt-headers.cc.
References m_timestamp.
Referenced by ns3::PowerSaveManager::NotifyReceivedBeacon().
|
static |
Register this type.
Definition at line 125 of file mgt-headers.cc.
References ns3::TypeId::SetParent().
Referenced by GetInstanceTypeId().
|
protected |
| start | an 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.
Definition at line 156 of file mgt-headers.cc.
References m_beaconInterval, m_capability, ns3::Simulator::Now(), ns3::Buffer::Iterator::WriteU16(), and ns3::Buffer::Iterator::WriteU64().
|
friend |
Definition at line 457 of file mgt-headers.h.
| uint64_t ns3::MgtBeaconHeader::m_beaconInterval {0} |
Beacon interval (microseconds).
Definition at line 483 of file mgt-headers.h.
Referenced by DeserializeImpl(), ns3::PowerSaveManager::NotifyReceivedBeacon(), ns3::dot11s::PeerManagementProtocolMac::Receive(), ns3::ApWifiMac::SendOneBeacon(), and SerializeImpl().
| CapabilityInformation ns3::MgtBeaconHeader::m_capability |
Capability information.
Definition at line 484 of file mgt-headers.h.
Referenced by DeserializeImpl(), GetSerializedSizeImpl(), ns3::StaWifiMac::ReceiveBeacon(), ns3::ApWifiMac::SendOneBeacon(), and SerializeImpl().
|
private |
Timestamp (microseconds).
Definition at line 495 of file mgt-headers.h.
Referenced by DeserializeImpl(), and GetTimestamp().