See IEEE 802.11 chapter 7.3.1.11 Header format: | category: 1 | action value: 1 |. More...
#include <mgt-headers.h>
Inheritance diagram for ns3::WifiActionHeader:
Collaboration diagram for ns3::WifiActionHeader:Classes | |
| union | ActionValue |
| typedef for union of different ActionValues More... | |
Public Member Functions | |
| WifiActionHeader () | |
| ~WifiActionHeader () | |
| virtual uint32_t | Deserialize (Buffer::Iterator start) |
| ActionValue | GetAction () |
| Return the action value. More... | |
| CategoryValue | GetCategory () |
| Return the category value. More... | |
| 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) |
| Set action for this Action header. 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) |
Static Public Member Functions inherited from ns3::Header | |
| static TypeId | GetTypeId (void) |
| Get the type ID. More... | |
Static Public Member Functions inherited from ns3::Chunk | |
| static TypeId | GetTypeId (void) |
| Get the type ID. More... | |
Static Public Member Functions inherited from ns3::ObjectBase | |
| static TypeId | GetTypeId (void) |
| Get the type ID. More... | |
Private Attributes | |
| uint8_t | m_actionValue |
| Action value. More... | |
| uint8_t | m_category |
| Category of the action. 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... | |
See IEEE 802.11 chapter 7.3.1.11 Header format: | category: 1 | action value: 1 |.
Definition at line 336 of file mgt-headers.h.
Block ACK action field values See 802.11 Table 8-202.
| Enumerator | |
|---|---|
| BLOCK_ACK_ADDBA_REQUEST | |
| BLOCK_ACK_ADDBA_RESPONSE | |
| BLOCK_ACK_DELBA | |
Definition at line 401 of file mgt-headers.h.
Compatible with open80211s implementation Category values - see 802.11-2012 Table 8-38.
| Enumerator | |
|---|---|
| BLOCK_ACK | |
| MESH_PEERING_MGT | |
| MESH_LINK_METRIC | |
| MESH_PATH_SELECTION | |
| MESH_INTERWORKING | |
| MESH_RESOURCE_COORDINATION | |
| MESH_PROXY_FORWARDING | |
| VENDOR_SPECIFIC_ACTION | |
Definition at line 346 of file mgt-headers.h.
| Enumerator | |
|---|---|
| PORTAL_ANNOUNCEMENT | |
Definition at line 380 of file mgt-headers.h.
| Enumerator | |
|---|---|
| LINK_METRIC_REQUEST | |
| LINK_METRIC_REPORT | |
Definition at line 368 of file mgt-headers.h.
Compatible with open80211s implementation.
| Enumerator | |
|---|---|
| PATH_SELECTION | |
Definition at line 376 of file mgt-headers.h.
Compatible with open80211s implementation.
| Enumerator | |
|---|---|
| PEER_LINK_OPEN | |
| PEER_LINK_CONFIRM | |
| PEER_LINK_CLOSE | |
Definition at line 362 of file mgt-headers.h.
Definition at line 384 of file mgt-headers.h.
| ns3::WifiActionHeader::WifiActionHeader | ( | ) |
Definition at line 471 of file mgt-headers.cc.
| ns3::WifiActionHeader::~WifiActionHeader | ( | ) |
Definition at line 474 of file mgt-headers.cc.
|
virtual |
| 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.
Implements ns3::Header.
Definition at line 628 of file mgt-headers.cc.
References ns3::Buffer::Iterator::GetDistanceFrom(), m_actionValue, m_category, ns3::Buffer::Iterator::ReadU8(), and visualizer.core::start().
Here is the call graph for this function:| WifiActionHeader::ActionValue ns3::WifiActionHeader::GetAction | ( | ) |
Return the action value.
Definition at line 535 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, ns3::WifiActionHeader::ActionValue::peerLink, and VENDOR_SPECIFIC_ACTION.
Referenced by ns3::EdcaTxopN::GotAck(), ns3::dot11s::PeerManagementProtocolMac::Receive(), and ns3::RegularWifiMac::Receive().
Here is the caller graph for this function:| WifiActionHeader::CategoryValue ns3::WifiActionHeader::GetCategory | ( | void | ) |
Return the category value.
Definition at line 509 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, NS_FATAL_ERROR, and VENDOR_SPECIFIC_ACTION.
Referenced by ns3::EdcaTxopN::GotAck(), ns3::dot11s::PeerManagementProtocolMac::Receive(), ns3::RegularWifiMac::Receive(), ns3::dot11s::HwmpProtocolMac::ReceiveAction(), and ns3::dot11s::PeerManagementProtocolMac::UpdateOutcomingFrame().
Here is the caller graph for this function:
|
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 608 of file mgt-headers.cc.
References GetTypeId().
Here is the call graph for this function:
|
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 617 of file mgt-headers.cc.
|
static |
Definition at line 600 of file mgt-headers.cc.
References ns3::TypeId::SetParent().
Referenced by GetInstanceTypeId().
Here is the call graph for this function:
Here is the caller graph for this function:
|
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 613 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 622 of file mgt-headers.cc.
References m_actionValue, m_category, and ns3::Buffer::Iterator::WriteU8().
Here is the call graph for this function:| void ns3::WifiActionHeader::SetAction | ( | enum CategoryValue | type, |
| WifiActionHeader::ActionValue | action | ||
| ) |
Set action for this Action header.
| type | category |
| action | action |
Definition at line 478 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, ns3::WifiActionHeader::ActionValue::peerLink, and VENDOR_SPECIFIC_ACTION.
Referenced by ns3::dot11s::HwmpProtocolMac::GetWifiActionHeader(), ns3::EdcaTxopN::SendAddBaRequest(), ns3::RegularWifiMac::SendAddBaResponse(), ns3::EdcaTxopN::SendDelbaFrame(), and ns3::dot11s::PeerManagementProtocolMac::SendPeerLinkManagementFrame().
Here is the caller graph for this function:
|
private |
Action value.
Definition at line 447 of file mgt-headers.h.
Referenced by Deserialize(), GetAction(), Serialize(), and SetAction().
|
private |
Category of the action.
Definition at line 446 of file mgt-headers.h.
Referenced by Deserialize(), GetAction(), GetCategory(), Serialize(), and SetAction().