the organization identifier is a public organizationally unique identifier assigned by the IEEE. More...
#include "vendor-specific-action.h"
Public Types | |
enum | OrganizationIdentifierType { OUI24 = 3 , OUI36 = 5 , Unknown = 0 } |
OrganizationIdentifierType enumeration. More... | |
Public Member Functions | |
OrganizationIdentifier () | |
OrganizationIdentifier (const uint8_t *str, uint32_t length) | |
Constructor. More... | |
virtual | ~OrganizationIdentifier () |
uint32_t | Deserialize (Buffer::Iterator start) |
Deserialize from buffer. More... | |
uint8_t | GetManagementId () const |
uint32_t | GetSerializedSize () const |
Get serialized size. More... | |
OrganizationIdentifierType | GetType () const |
bool | IsNull () const |
OrganizationIdentifier & | operator= (const OrganizationIdentifier &oi) |
Assignment operator. More... | |
void | Serialize (Buffer::Iterator start) const |
Serialize to buffer. More... | |
void | SetType (OrganizationIdentifierType type) |
Private Attributes | |
uint8_t | m_oi [5] |
organization identifier More... | |
OrganizationIdentifierType | m_type |
OI type. More... | |
Friends | |
bool | operator!= (const OrganizationIdentifier &a, const OrganizationIdentifier &b) |
inequality operator More... | |
bool | operator< (const OrganizationIdentifier &a, const OrganizationIdentifier &b) |
less than operator More... | |
std::ostream & | operator<< (std::ostream &os, const OrganizationIdentifier &oi) |
output operator More... | |
bool | operator== (const OrganizationIdentifier &a, const OrganizationIdentifier &b) |
equality operator More... | |
std::istream & | operator>> (std::istream &is, const OrganizationIdentifier &oi) |
input operator More... | |
the organization identifier is a public organizationally unique identifier assigned by the IEEE.
Similar to protocol field of data packets that indicates which entity of higher layer should handle received packets, Organization Identifier field is used in Vendor Specific Action frames to indicate which entity or higher layer should handle vendor specific content. Normally the value is assigned by IEEE and the length of field is either 24 bits or 36 bits. For more, see IEEE802.11p-2010 section 7.3.1.31 and 7.4.5
Definition at line 54 of file vendor-specific-action.h.
OrganizationIdentifierType enumeration.
Enumerator | |
---|---|
OUI24 | |
OUI36 | |
Unknown |
Definition at line 74 of file vendor-specific-action.h.
ns3::OrganizationIdentifier::OrganizationIdentifier | ( | ) |
Definition at line 36 of file vendor-specific-action.cc.
References m_oi, m_type, NS_LOG_FUNCTION, and Unknown.
ns3::OrganizationIdentifier::OrganizationIdentifier | ( | const uint8_t * | str, |
uint32_t | length | ||
) |
Constructor.
str | identifier name |
length | identifier length |
Definition at line 44 of file vendor-specific-action.cc.
References m_oi, m_type, NS_FATAL_ERROR, NS_LOG_FUNCTION, OUI24, OUI36, and Unknown.
|
virtual |
Definition at line 72 of file vendor-specific-action.cc.
References NS_LOG_FUNCTION.
uint32_t ns3::OrganizationIdentifier::Deserialize | ( | Buffer::Iterator | start | ) |
Deserialize from buffer.
start | the iterator |
Definition at line 135 of file vendor-specific-action.cc.
References m_oi, m_type, NS_FATAL_ERROR, NS_LOG_FUNCTION, ns3::OrganizationIdentifiers, OUI24, OUI36, and two-ray-to-three-gpp-ch-calibration::start.
Referenced by ns3::VendorSpecificActionHeader::Deserialize().
uint8_t ns3::OrganizationIdentifier::GetManagementId | ( | ) | const |
Definition at line 78 of file vendor-specific-action.cc.
References m_oi, m_type, NS_ASSERT, NS_LOG_FUNCTION, and OUI36.
Referenced by ns3::VsaManager::ReceiveVsc().
uint32_t ns3::OrganizationIdentifier::GetSerializedSize | ( | ) | const |
Get serialized size.
Definition at line 93 of file vendor-specific-action.cc.
References m_type, NS_FATAL_ERROR_NO_MSG, NS_LOG_FUNCTION, OUI24, OUI36, and Unknown.
Referenced by ns3::VendorSpecificActionHeader::GetSerializedSize(), and Serialize().
enum OrganizationIdentifier::OrganizationIdentifierType ns3::OrganizationIdentifier::GetType | ( | ) | const |
Definition at line 110 of file vendor-specific-action.cc.
References m_type, NS_LOG_FUNCTION, and check-style-clang-format::type.
bool ns3::OrganizationIdentifier::IsNull | ( | ) | const |
Definition at line 86 of file vendor-specific-action.cc.
References m_type, NS_LOG_FUNCTION, and Unknown.
Referenced by ns3::VsaManager::SendVsa(), and ns3::WaveNetDevice::StartVsa().
OrganizationIdentifier & ns3::OrganizationIdentifier::operator= | ( | const OrganizationIdentifier & | oi | ) |
Assignment operator.
oi | object to copy from |
Definition at line 65 of file vendor-specific-action.cc.
void ns3::OrganizationIdentifier::Serialize | ( | Buffer::Iterator | start | ) | const |
Serialize to buffer.
start | the iterator |
Definition at line 124 of file vendor-specific-action.cc.
References GetSerializedSize(), m_oi, NS_LOG_FUNCTION, and two-ray-to-three-gpp-ch-calibration::start.
Referenced by ns3::VendorSpecificActionHeader::Serialize().
void ns3::OrganizationIdentifier::SetType | ( | OrganizationIdentifierType | type | ) |
type | set the type of current OrganizationIdentifier |
Definition at line 110 of file vendor-specific-action.cc.
|
friend |
inequality operator
a | left side object |
b | right side object |
Definition at line 208 of file vendor-specific-action.cc.
|
friend |
less than operator
a | left side object |
b | right side object |
Definition at line 219 of file vendor-specific-action.cc.
|
friend |
output operator
os | output stream |
oi | organization identifier |
Definition at line 231 of file vendor-specific-action.cc.
|
friend |
equality operator
a | left side object |
b | right side object |
Definition at line 181 of file vendor-specific-action.cc.
|
friend |
input operator
is | input stream |
oi | organization identifier |
Definition at line 249 of file vendor-specific-action.cc.
|
private |
organization identifier
Definition at line 124 of file vendor-specific-action.h.
Referenced by OrganizationIdentifier(), Deserialize(), GetManagementId(), operator=(), and Serialize().
|
private |
OI type.
Definition at line 123 of file vendor-specific-action.h.
Referenced by OrganizationIdentifier(), Deserialize(), GetManagementId(), GetSerializedSize(), GetType(), IsNull(), and operator=().