an EUI-64 address More...
#include "mac64-address.h"
Public Member Functions | |
Mac64Address () | |
Mac64Address (const char *str) | |
void | CopyFrom (const uint8_t buffer[8]) |
void | CopyTo (uint8_t buffer[8]) const |
operator Address () const | |
Static Public Member Functions | |
static Mac64Address | Allocate (void) |
Allocate a new Mac64Address. More... | |
static Mac64Address | 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 [8] |
address value More... | |
Friends | |
bool | operator!= (const Mac64Address &a, const Mac64Address &b) |
Not equal to operator. More... | |
bool | operator< (const Mac64Address &a, const Mac64Address &b) |
Less than operator. More... | |
std::ostream & | operator<< (std::ostream &os, const Mac64Address &address) |
Stream insertion operator. More... | |
bool | operator== (const Mac64Address &a, const Mac64Address &b) |
Equal to operator. More... | |
std::istream & | operator>> (std::istream &is, Mac64Address &address) |
Stream extraction operator. More... | |
an EUI-64 address
This class can contain 64 bit IEEE addresses.
Definition at line 43 of file mac64-address.h.
ns3::Mac64Address::Mac64Address | ( | ) |
Definition at line 60 of file mac64-address.cc.
References m_address, and NS_LOG_FUNCTION.
ns3::Mac64Address::Mac64Address | ( | const char * | str | ) |
str | a string representing the new Mac64Address |
The format of the string is "xx:xx:xx:xx:xx:xx"
Definition at line 65 of file mac64-address.cc.
References ASCII_a, ASCII_COLON, ASCII_ZERO, ns3::AsciiToLowCase(), m_address, NS_ASSERT, and NS_LOG_FUNCTION.
|
static |
Allocate a new Mac64Address.
Definition at line 137 of file mac64-address.cc.
References first::address, and NS_LOG_FUNCTION_NOARGS.
Referenced by ns3::LteHelper::InstallSingleUeDevice(), and ns3::LrWpanMac::LrWpanMac().
|
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 Mac64Address.
Definition at line 120 of file mac64-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(), and ns3::LteNetDevice::SetAddress().
|
private |
Convert an instance of this class to a polymorphic Address instance.
Definition at line 130 of file mac64-address.cc.
References GetType(), m_address, and NS_LOG_FUNCTION.
void ns3::Mac64Address::CopyFrom | ( | const uint8_t | buffer[8] | ) |
buffer | address in network order |
Copy the input address to our internal buffer.
Definition at line 97 of file mac64-address.cc.
References m_address, and NS_LOG_FUNCTION.
Referenced by ns3::ReadFrom().
void ns3::Mac64Address::CopyTo | ( | uint8_t | buffer[8] | ) | const |
buffer | address in network order |
Copy the internal address to the input buffer.
Definition at line 103 of file mac64-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 154 of file mac64-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 110 of file mac64-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::Mac64Address::operator Address | ( | ) | const |
Convert an instance of this class to a polymorphic Address instance.
Definition at line 115 of file mac64-address.cc.
|
friend |
Not equal to operator.
a | the first operand |
b | the first operand |
Definition at line 164 of file mac64-address.h.
|
friend |
Less than operator.
a | the first operand |
b | the first operand |
Definition at line 168 of file mac64-address.h.
|
friend |
Stream insertion operator.
os | the stream |
address | the address |
Definition at line 161 of file mac64-address.cc.
|
friend |
Equal to operator.
a | the first operand |
b | the first operand |
Definition at line 160 of file mac64-address.h.
|
friend |
Stream extraction operator.
is | the stream |
address | the address |
Definition at line 179 of file mac64-address.cc.
|
private |
address value
Definition at line 150 of file mac64-address.h.
Referenced by ConvertTo(), CopyFrom(), CopyTo(), Mac64Address(), ns3::operator!=(), ns3::operator<(), and ns3::operator==().