This class can contain 16 bit addresses. More...
#include "mac16-address.h"
Public Member Functions | |
Mac16Address () | |
Mac16Address (const char *str) | |
void | CopyFrom (const uint8_t buffer[2]) |
void | CopyTo (uint8_t buffer[2]) const |
operator Address () const | |
Static Public Member Functions | |
static Mac16Address | Allocate (void) |
Allocate a new Mac16Address. More... | |
static Mac16Address | ConvertFrom (const Address &address) |
static bool | IsMatchingType (const Address &address) |
Private Member Functions | |
Address | ConvertTo (void) const |
Static Private Member Functions | |
static uint8_t | GetType (void) |
Return the Type of address. More... | |
Private Attributes | |
uint8_t | m_address [2] |
address value More... | |
Friends | |
bool | operator!= (const Mac16Address &a, const Mac16Address &b) |
Not equal to operator. More... | |
bool | operator< (const Mac16Address &a, const Mac16Address &b) |
Less than operator. More... | |
std::ostream & | operator<< (std::ostream &os, const Mac16Address &address) |
Stream insertion operator. More... | |
bool | operator== (const Mac16Address &a, const Mac16Address &b) |
Equal to operator. More... | |
std::istream & | operator>> (std::istream &is, Mac16Address &address) |
Stream extraction operator. More... | |
This class can contain 16 bit addresses.
Definition at line 41 of file mac16-address.h.
ns3::Mac16Address::Mac16Address | ( | ) |
Definition at line 60 of file mac16-address.cc.
References m_address, and NS_LOG_FUNCTION.
ns3::Mac16Address::Mac16Address | ( | const char * | str | ) |
str | a string representing the new Mac16Address |
Definition at line 66 of file mac16-address.cc.
References ASCII_a, ASCII_COLON, ASCII_ZERO, ns3::AsciiToLowCase(), m_address, NS_ASSERT, and NS_LOG_FUNCTION.
|
static |
Allocate a new Mac16Address.
Definition at line 140 of file mac16-address.cc.
References first::address, and NS_LOG_FUNCTION_NOARGS.
|
static |
address | a polymorphic address |
This function performs a type check and asserts if the type of the input address is not compatible with an Mac16Address.
Definition at line 124 of file mac16-address.cc.
References first::address, GetType(), NS_ASSERT, and NS_LOG_FUNCTION.
Referenced by ns3::Ipv6L3Protocol::AddAutoconfiguredAddress(), ns3::Ipv6Interface::DoSetup(), ns3::SixLowPanNetDevice::MakeGlobalAddressFromMac(), ns3::SixLowPanNetDevice::MakeLinkLocalAddressFromMac(), ns3::Ipv6AddressHelper::NewAddress(), ns3::Ipv6L3Protocol::RemoveAutoconfiguredAddress(), ns3::LrWpanNetDevice::Send(), and ns3::LrWpanNetDevice::SetAddress().
|
private |
Convert an instance of this class to a polymorphic Address instance.
Definition at line 133 of file mac16-address.cc.
References GetType(), m_address, and NS_LOG_FUNCTION.
void ns3::Mac16Address::CopyFrom | ( | const uint8_t | buffer[2] | ) |
buffer | address in network order |
Copy the input address to our internal buffer.
Definition at line 99 of file mac16-address.cc.
References m_address, and NS_LOG_FUNCTION.
Referenced by ns3::ReadFrom().
void ns3::Mac16Address::CopyTo | ( | uint8_t | buffer[2] | ) | const |
buffer | address in network order |
Copy the internal address to the input buffer.
Definition at line 105 of file mac16-address.cc.
References m_address, and NS_LOG_FUNCTION.
Referenced by ns3::Ipv6Address::MakeAutoconfiguredAddress(), ns3::Ipv6Address::MakeAutoconfiguredLinkLocalAddress(), and ns3::WriteTo().
|
staticprivate |
Return the Type of address.
Definition at line 152 of file mac16-address.cc.
References NS_LOG_FUNCTION_NOARGS, and ns3::Address::Register().
Referenced by ConvertFrom(), ConvertTo(), and IsMatchingType().
|
static |
address | address to test |
Definition at line 112 of file mac16-address.cc.
References first::address, GetType(), and NS_LOG_FUNCTION.
Referenced by ns3::Ipv6L3Protocol::AddAutoconfiguredAddress(), ns3::Ipv6Interface::DoSetup(), ns3::SixLowPanNetDevice::MakeGlobalAddressFromMac(), ns3::SixLowPanNetDevice::MakeLinkLocalAddressFromMac(), ns3::Ipv6AddressHelper::NewAddress(), and ns3::Ipv6L3Protocol::RemoveAutoconfiguredAddress().
ns3::Mac16Address::operator Address | ( | ) | const |
Convert an instance of this class to a polymorphic Address instance.
Definition at line 118 of file mac16-address.cc.
|
friend |
Not equal to operator.
a | the first operand |
b | the first operand |
Definition at line 157 of file mac16-address.h.
|
friend |
Less than operator.
a | the first operand |
b | the first operand |
Definition at line 161 of file mac16-address.h.
|
friend |
Stream insertion operator.
os | the stream |
address | the address |
Definition at line 159 of file mac16-address.cc.
|
friend |
Equal to operator.
a | the first operand |
b | the first operand |
Definition at line 153 of file mac16-address.h.
|
friend |
Stream extraction operator.
is | the stream |
address | the address |
Definition at line 177 of file mac16-address.cc.
|
private |
address value
Definition at line 148 of file mac16-address.h.
Referenced by ConvertTo(), CopyFrom(), CopyTo(), Mac16Address(), ns3::operator!=(), ns3::operator<(), and ns3::operator==().