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

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 }
 

Public Member Functions

 OrganizationIdentifier (void)
 
 OrganizationIdentifier (const uint8_t *str, uint32_t length)
 
virtual ~OrganizationIdentifier (void)
 
uint32_t Deserialize (Buffer::Iterator start)
 
uint8_t GetManagementId (void) const
 
uint32_t GetSerializedSize (void) const
 
enum OrganizationIdentifierType GetType () const
 
bool IsNull (void) const
 
OrganizationIdentifieroperator= (const OrganizationIdentifier &oi)
 
void Serialize (Buffer::Iterator start) const
 
void SetType (enum OrganizationIdentifierType type)
 

Private Attributes

uint8_t m_oi [5]
 
enum OrganizationIdentifierType m_type
 

Friends

bool operator!= (const OrganizationIdentifier &a, const OrganizationIdentifier &b)
 
bool operator< (const OrganizationIdentifier &a, const OrganizationIdentifier &b)
 
std::ostream & operator<< (std::ostream &os, const OrganizationIdentifier &oi)
 
bool operator== (const OrganizationIdentifier &a, const OrganizationIdentifier &b)
 
std::istream & operator>> (std::istream &is, const OrganizationIdentifier &oi)
 

Detailed Description

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 49 of file vendor-specific-action.h.

Member Enumeration Documentation

Enumerator
OUI24 
OUI36 
Unknown 

Definition at line 57 of file vendor-specific-action.h.

Constructor & Destructor Documentation

ns3::OrganizationIdentifier::OrganizationIdentifier ( void  )

Definition at line 34 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 
)

Definition at line 42 of file vendor-specific-action.cc.

References m_oi, m_type, NS_FATAL_ERROR, NS_LOG_FUNCTION, OUI24, OUI36, and Unknown.

ns3::OrganizationIdentifier::~OrganizationIdentifier ( void  )
virtual

Definition at line 70 of file vendor-specific-action.cc.

References NS_LOG_FUNCTION.

Member Function Documentation

uint32_t ns3::OrganizationIdentifier::Deserialize ( Buffer::Iterator  start)

Definition at line 133 of file vendor-specific-action.cc.

References m_oi, m_type, NS_FATAL_ERROR, NS_LOG_FUNCTION, ns3::OrganizationIdentifiers, OUI24, OUI36, and ns3::Buffer::Iterator::Read().

Referenced by ns3::VendorSpecificActionHeader::Deserialize().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

uint8_t ns3::OrganizationIdentifier::GetManagementId ( void  ) const
Returns
last 4 bits when OrganizationIdentifier is OUI36

Definition at line 76 of file vendor-specific-action.cc.

References m_oi, m_type, NS_ASSERT, NS_LOG_FUNCTION, and OUI36.

uint32_t ns3::OrganizationIdentifier::GetSerializedSize ( void  ) const

Definition at line 91 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().

+ Here is the caller graph for this function:

enum OrganizationIdentifier::OrganizationIdentifierType ns3::OrganizationIdentifier::GetType ( void  ) const

Definition at line 115 of file vendor-specific-action.cc.

References m_type, and NS_LOG_FUNCTION.

bool ns3::OrganizationIdentifier::IsNull ( void  ) const
Returns
whether current OrganizationIdentifier is initial state

Definition at line 84 of file vendor-specific-action.cc.

References m_type, NS_LOG_FUNCTION, and Unknown.

OrganizationIdentifier & ns3::OrganizationIdentifier::operator= ( const OrganizationIdentifier oi)

Definition at line 63 of file vendor-specific-action.cc.

References m_oi, and m_type.

void ns3::OrganizationIdentifier::Serialize ( Buffer::Iterator  start) const

Definition at line 122 of file vendor-specific-action.cc.

References GetSerializedSize(), m_oi, NS_LOG_FUNCTION, and ns3::Buffer::Iterator::Write().

Referenced by ns3::VendorSpecificActionHeader::Serialize().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void ns3::OrganizationIdentifier::SetType ( enum OrganizationIdentifierType  type)

Definition at line 108 of file vendor-specific-action.cc.

References m_type, and NS_LOG_FUNCTION.

Friends And Related Function Documentation

bool operator!= ( const OrganizationIdentifier a,
const OrganizationIdentifier b 
)
friend

Definition at line 191 of file vendor-specific-action.cc.

bool operator< ( const OrganizationIdentifier a,
const OrganizationIdentifier b 
)
friend

Definition at line 196 of file vendor-specific-action.cc.

std::ostream& operator<< ( std::ostream &  os,
const OrganizationIdentifier oi 
)
friend

Definition at line 201 of file vendor-specific-action.cc.

bool operator== ( const OrganizationIdentifier a,
const OrganizationIdentifier b 
)
friend

Definition at line 170 of file vendor-specific-action.cc.

std::istream& operator>> ( std::istream &  is,
const OrganizationIdentifier oi 
)
friend

Definition at line 211 of file vendor-specific-action.cc.

Member Data Documentation

uint8_t ns3::OrganizationIdentifier::m_oi[5]
private

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