NS-3
ns3::Ipv6Prefix Class Reference

Describes an IPv6 prefix. It is just a bitmask like Ipv4Mask. More...

#include <ipv6-address.h>

List of all members.

Public Member Functions

 Ipv6Prefix ()
 Default constructor.
 Ipv6Prefix (uint8_t prefix[16])
 Constructs an Ipv6Prefix by using the input 16 bytes.
 Ipv6Prefix (char const *prefix)
 Constructs an Ipv6Prefix by using the input string.
 Ipv6Prefix (uint8_t prefix)
 Constructs an Ipv6Prefix by using the input number of bits.
 Ipv6Prefix (Ipv6Prefix const &prefix)
 Copy constructor.
 Ipv6Prefix (Ipv6Prefix const *prefix)
 Copy constructor.
 ~Ipv6Prefix ()
 Destructor.
bool IsMatch (Ipv6Address a, Ipv6Address b) const
 If the Address match the type.
void GetBytes (uint8_t buf[16]) const
 Get the bytes corresponding to the prefix.
uint8_t GetPrefixLength () const
 Get prefix length.
bool IsEqual (const Ipv6Prefix &other) const
 Comparison operation between two Ipv6Prefix.
void Print (std::ostream &os) const
 Print this address to the given output stream.

Static Public Member Functions

static Ipv6Prefix GetLoopback ()
 Get the loopback prefix ( /128).
static Ipv6Prefix GetOnes ()
 Get the "all-1" IPv6 mask (ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff).
static Ipv6Prefix GetZero ()
 Get the zero prefix ( /0).

Detailed Description

Describes an IPv6 prefix. It is just a bitmask like Ipv4Mask.

See also:
Ipv6Address

Constructor & Destructor Documentation

ns3::Ipv6Prefix::Ipv6Prefix ( uint8_t  prefix[16])

Constructs an Ipv6Prefix by using the input 16 bytes.

Parameters:
prefixthe 128-bit prefix
ns3::Ipv6Prefix::Ipv6Prefix ( char const *  prefix)

Constructs an Ipv6Prefix by using the input string.

Parameters:
prefixthe 128-bit prefix
ns3::Ipv6Prefix::Ipv6Prefix ( uint8_t  prefix)

Constructs an Ipv6Prefix by using the input number of bits.

Parameters:
prefixnumber of bits of the prefix (0 - 128)
Note:
A valid number of bits is between 0 and 128).
ns3::Ipv6Prefix::Ipv6Prefix ( Ipv6Prefix const &  prefix)

Copy constructor.

Parameters:
prefixIpv6Prefix object
ns3::Ipv6Prefix::Ipv6Prefix ( Ipv6Prefix const *  prefix)

Copy constructor.

Parameters:
prefixIpv6Prefix pointer

Member Function Documentation

void ns3::Ipv6Prefix::GetBytes ( uint8_t  buf[16]) const

Get the bytes corresponding to the prefix.

Parameters:
bufbuffer to store the data
static Ipv6Prefix ns3::Ipv6Prefix::GetLoopback ( ) [static]

Get the loopback prefix ( /128).

Returns:
a Ipv6Prefix corresponding to loopback prefix
static Ipv6Prefix ns3::Ipv6Prefix::GetOnes ( ) [static]

Get the "all-1" IPv6 mask (ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff).

Returns:
/128 Ipv6Prefix representation
uint8_t ns3::Ipv6Prefix::GetPrefixLength ( ) const

Get prefix length.

Returns:
prefix length
static Ipv6Prefix ns3::Ipv6Prefix::GetZero ( ) [static]

Get the zero prefix ( /0).

Returns:
an Ipv6Prefix
bool ns3::Ipv6Prefix::IsEqual ( const Ipv6Prefix other) const

Comparison operation between two Ipv6Prefix.

Parameters:
otherthe IPv6 prefix to which to compare this prefix
Returns:
true if the prefixes are equal, false otherwise
bool ns3::Ipv6Prefix::IsMatch ( Ipv6Address  a,
Ipv6Address  b 
) const

If the Address match the type.

Parameters:
aa first address
ba second address
Returns:
true if the type match, false otherwise
void ns3::Ipv6Prefix::Print ( std::ostream &  os) const

Print this address to the given output stream.

The print format is in the typical "2001:660:4701::1".

Parameters:
osthe output stream to which this Ipv6Address is printed

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