#include <mgt-headers.h>
Classes | |
union | ActionValue |
Public Types | |
enum | BlockAckActionValue { BLOCK_ACK_ADDBA_REQUEST = 0, BLOCK_ACK_ADDBA_RESPONSE = 1, BLOCK_ACK_DELBA = 2 } |
enum | CategoryValue { BLOCK_ACK = 3, MESH_PEERING_MGT = 30, MESH_LINK_METRIC = 31, MESH_PATH_SELECTION = 32, MESH_INTERWORKING = 33, MESH_RESOURCE_COORDINATION = 34, MESH_PROXY_FORWARDING = 35 } |
enum | InterworkActionValue { PORTAL_ANNOUNCEMENT = 0 } |
enum | LinkMetricActionValue { LINK_METRIC_REQUEST = 0, LINK_METRIC_REPORT } |
enum | PathSelectionActionValue { PATH_SELECTION = 0 } |
enum | PeerLinkMgtActionValue { PEER_LINK_OPEN = 0, PEER_LINK_CONFIRM = 1, PEER_LINK_CLOSE = 2 } |
enum | ResourceCoordinationActionValue { CONGESTION_CONTROL_NOTIFICATION = 0, MDA_SETUP_REQUEST, MDA_SETUP_REPLY, MDAOP_ADVERTISMENT_REQUEST, MDAOP_ADVERTISMENTS, MDAOP_SET_TEARDOWN, BEACON_TIMING_REQUEST, BEACON_TIMING_RESPONSE, TBTT_ADJUSTMENT_REQUEST, MESH_CHANNEL_SWITCH_ANNOUNCEMENT } |
Public Member Functions | |
WifiActionHeader () | |
~WifiActionHeader () | |
virtual uint32_t | Deserialize (Buffer::Iterator start) |
ActionValue | GetAction () |
CategoryValue | GetCategory () |
virtual TypeId | GetInstanceTypeId () const |
virtual uint32_t | GetSerializedSize () const |
virtual void | Print (std::ostream &os) const |
virtual void | Serialize (Buffer::Iterator start) const |
void | SetAction (enum CategoryValue type, ActionValue action) |
![]() | |
virtual | ~Header () |
Static Public Member Functions | |
static TypeId | GetTypeId (void) |
This method returns the TypeId associated to ns3::Header. |
Private Attributes | |
uint8_t | m_actionValue |
uint8_t | m_category |
Additional Inherited Members | |
![]() | |
void | ConstructSelf (const AttributeConstructionList &attributes) |
virtual void | NotifyConstructionCompleted (void) |
See IEEE 802.11 chapter 7.3.1.11 Header format: | category: 1 | action value: 1 |
Definition at line 178 of file mgt-headers.h.
Definition at line 229 of file mgt-headers.h.
BLOCK_ACK | |
MESH_PEERING_MGT | |
MESH_LINK_METRIC | |
MESH_PATH_SELECTION | |
MESH_INTERWORKING | |
MESH_RESOURCE_COORDINATION | |
MESH_PROXY_FORWARDING |
Definition at line 185 of file mgt-headers.h.
Definition at line 212 of file mgt-headers.h.
Definition at line 202 of file mgt-headers.h.
Definition at line 208 of file mgt-headers.h.
Definition at line 196 of file mgt-headers.h.
Definition at line 216 of file mgt-headers.h.
ns3::WifiActionHeader::WifiActionHeader | ( | ) |
Definition at line 415 of file mgt-headers.cc.
ns3::WifiActionHeader::~WifiActionHeader | ( | ) |
Definition at line 418 of file mgt-headers.cc.
|
virtual |
start | an iterator which points to where the header should written. |
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 564 of file mgt-headers.cc.
References ns3::Buffer::Iterator::GetDistanceFrom(), m_actionValue, m_category, ns3::Buffer::Iterator::ReadU8(), and visualizer.core::start().
WifiActionHeader::ActionValue ns3::WifiActionHeader::GetAction | ( | ) |
Definition at line 476 of file mgt-headers.cc.
References BLOCK_ACK, BLOCK_ACK_ADDBA_REQUEST, BLOCK_ACK_ADDBA_RESPONSE, BLOCK_ACK_DELBA, ns3::WifiActionHeader::ActionValue::blockAck, m_actionValue, m_category, MESH_INTERWORKING, MESH_LINK_METRIC, MESH_PATH_SELECTION, MESH_PEERING_MGT, MESH_RESOURCE_COORDINATION, NS_FATAL_ERROR, PATH_SELECTION, ns3::WifiActionHeader::ActionValue::pathSelection, PEER_LINK_CLOSE, PEER_LINK_CONFIRM, PEER_LINK_OPEN, and ns3::WifiActionHeader::ActionValue::peerLink.
Referenced by ns3::EdcaTxopN::GotAck(), ns3::dot11s::PeerManagementProtocolMac::Receive(), and ns3::RegularWifiMac::Receive().
WifiActionHeader::CategoryValue ns3::WifiActionHeader::GetCategory | ( | ) |
Definition at line 452 of file mgt-headers.cc.
References BLOCK_ACK, m_category, MESH_INTERWORKING, MESH_LINK_METRIC, MESH_PATH_SELECTION, MESH_PEERING_MGT, MESH_PROXY_FORWARDING, MESH_RESOURCE_COORDINATION, and NS_FATAL_ERROR.
Referenced by ns3::EdcaTxopN::GotAck(), ns3::dot11s::PeerManagementProtocolMac::Receive(), ns3::RegularWifiMac::Receive(), ns3::dot11s::HwmpProtocolMac::ReceiveAction(), and ns3::dot11s::PeerManagementProtocolMac::UpdateOutcomingFrame().
|
virtual |
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 544 of file mgt-headers.cc.
References GetTypeId().
|
virtual |
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 553 of file mgt-headers.cc.
|
static |
This method returns the TypeId associated to ns3::Header.
No Attributes defined for this type.
No TraceSources defined for this type.
Reimplemented from ns3::Header.
Definition at line 536 of file mgt-headers.cc.
References ns3::TypeId::SetParent().
Referenced by GetInstanceTypeId().
|
virtual |
os | output 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 549 of file mgt-headers.cc.
|
virtual |
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.
Implements ns3::Header.
Definition at line 558 of file mgt-headers.cc.
References m_actionValue, m_category, and ns3::Buffer::Iterator::WriteU8().
void ns3::WifiActionHeader::SetAction | ( | enum CategoryValue | type, |
WifiActionHeader::ActionValue | action | ||
) |
Definition at line 422 of file mgt-headers.cc.
References BLOCK_ACK, ns3::WifiActionHeader::ActionValue::blockAck, m_actionValue, m_category, MESH_INTERWORKING, MESH_LINK_METRIC, MESH_PATH_SELECTION, MESH_PEERING_MGT, MESH_PROXY_FORWARDING, MESH_RESOURCE_COORDINATION, ns3::WifiActionHeader::ActionValue::pathSelection, and ns3::WifiActionHeader::ActionValue::peerLink.
Referenced by ns3::dot11s::HwmpProtocolMac::GetWifiActionHeader(), ns3::EdcaTxopN::SendAddBaRequest(), ns3::RegularWifiMac::SendAddBaResponse(), ns3::EdcaTxopN::SendDelbaFrame(), and ns3::dot11s::PeerManagementProtocolMac::SendPeerLinkManagementFrame().
|
private |
Definition at line 256 of file mgt-headers.h.
Referenced by Deserialize(), GetAction(), Serialize(), and SetAction().
|
private |
Definition at line 255 of file mgt-headers.h.
Referenced by Deserialize(), GetAction(), GetCategory(), Serialize(), and SetAction().