ns3::Ipv4Mask Class Reference
[Address]

a class to represent an Ipv4 address mask More...

#include <ipv4-address.h>

List of all members.

Public Member Functions

 Ipv4Mask ()
 Ipv4Mask (uint32_t mask)
 Ipv4Mask (char const *mask)
bool IsMatch (Ipv4Address a, Ipv4Address b) const
bool IsEqual (Ipv4Mask other) const
uint32_t Get (void) const
void Set (uint32_t mask)
uint32_t GetInverse (void) const
 Return the inverse mask in host order.
void Print (std::ostream &os) const
 Print this mask to the given output stream.

Static Public Member Functions

static Ipv4Mask GetLoopback (void)
static Ipv4Mask GetZero (void)
static Ipv4Mask GetOnes (void)

Private Attributes

uint32_t m_mask

Detailed Description

a class to represent an Ipv4 address mask

Definition at line 202 of file ipv4-address.h.


Constructor & Destructor Documentation

ns3::Ipv4Mask::Ipv4Mask (  ) 

Definition at line 58 of file ipv4-address.cc.

Referenced by GetLoopback(), GetOnes(), and GetZero().

ns3::Ipv4Mask::Ipv4Mask ( uint32_t  mask  ) 

Definition at line 62 of file ipv4-address.cc.

ns3::Ipv4Mask::Ipv4Mask ( char const *  mask  ) 

Definition at line 65 of file ipv4-address.cc.

References ns3::AsciiToIpv4Host(), and m_mask.


Member Function Documentation

uint32_t ns3::Ipv4Mask::Get ( void   )  const
uint32_t ns3::Ipv4Mask::GetInverse ( void   )  const

Return the inverse mask in host order.

Definition at line 101 of file ipv4-address.cc.

References m_mask.

Referenced by ns3::Ipv4Address::GetSubnetDirectedBroadcast(), and ns3::Ipv4Address::IsSubnetDirectedBroadcast().

Ipv4Mask ns3::Ipv4Mask::GetLoopback ( void   )  [static]
Returns:
the 255.0.0.0 mask corresponding to a typical loopback address

Definition at line 117 of file ipv4-address.cc.

References Ipv4Mask().

Referenced by ns3::Ipv4L3Protocol::SetupLoopback().

Ipv4Mask ns3::Ipv4Mask::GetOnes ( void   )  [static]
Returns:
the 255.255.255.255 mask

Definition at line 129 of file ipv4-address.cc.

References Ipv4Mask().

Referenced by ns3::UdpSocketImpl::DoSendTo(), ns3::Ipv4Address::GetSubnetDirectedBroadcast(), and ns3::Ipv4Address::IsSubnetDirectedBroadcast().

Ipv4Mask ns3::Ipv4Mask::GetZero ( void   )  [static]
Returns:
the 0.0.0.0 mask

Definition at line 123 of file ipv4-address.cc.

References Ipv4Mask().

Referenced by ns3::Ipv4Route::IsHost().

bool ns3::Ipv4Mask::IsEqual ( Ipv4Mask  other  )  const
Parameters:
other a mask to compare
Returns:
true if the mask equals the mask passed as input parameter

Definition at line 71 of file ipv4-address.cc.

References m_mask.

Referenced by ns3::Ipv4Route::IsHost().

bool ns3::Ipv4Mask::IsMatch ( Ipv4Address  a,
Ipv4Address  b 
) const
Parameters:
a first address to compare
b second address to compare
Returns:
true if both addresses are equal in their masked bits, corresponding to this mask

Definition at line 81 of file ipv4-address.cc.

References ns3::Ipv4Address::Get(), and m_mask.

void ns3::Ipv4Mask::Print ( std::ostream &  os  )  const

Print this mask to the given output stream.

The print format is in the typical "255.255.255.0"

Parameters:
os The output stream to which this Ipv4Address is printed

Definition at line 107 of file ipv4-address.cc.

References m_mask.

Referenced by ns3::NscTcpL4Protocol::AddInterface().

void ns3::Ipv4Mask::Set ( uint32_t  mask  ) 

input mask is in host order.

Parameters:
mask The host order 32-bit mask

Definition at line 96 of file ipv4-address.cc.

References m_mask.


Member Data Documentation

uint32_t ns3::Ipv4Mask::m_mask [private]

Definition at line 254 of file ipv4-address.h.

Referenced by Get(), GetInverse(), Ipv4Mask(), IsEqual(), IsMatch(), Print(), and Set().


The documentation for this class was generated from the following files:
Generated on Thu Dec 3 14:12:01 2009 for NS-3 by  doxygen 1.6.3