a class to represent an Ipv4 address mask More...
#include "ipv4-address.h"
 Collaboration diagram for ns3::Ipv4Mask:
 Collaboration diagram for ns3::Ipv4Mask:| Public Member Functions | |
| Ipv4Mask () | |
| Will initialize to a garbage value (0x66666666) | |
| Ipv4Mask (const char *mask) | |
| Ipv4Mask (uint32_t mask) | |
| uint32_t | Get () const | 
| Get the host-order 32-bit IP mask. | |
| uint32_t | GetInverse () const | 
| Return the inverse mask in host order. | |
| uint16_t | GetPrefixLength () const | 
| bool | IsMatch (Ipv4Address a, Ipv4Address b) const | 
| void | Print (std::ostream &os) const | 
| Print this mask to the given output stream. | |
| void | Set (uint32_t mask) | 
| input mask is in host order. | |
| Static Public Member Functions | |
| static Ipv4Mask | GetLoopback () | 
| static Ipv4Mask | GetOnes () | 
| static Ipv4Mask | GetZero () | 
| Private Attributes | |
| uint32_t | m_mask | 
| IP mask. | |
| Friends | |
| bool | operator!= (const Ipv4Mask &a, const Ipv4Mask &b) | 
| Not equal to operator. | |
| bool | operator== (const Ipv4Mask &a, const Ipv4Mask &b) | 
| Equal to operator. | |
a class to represent an Ipv4 address mask
The constructor takes arguments according to a few formats. Ipv4Mask ("255.255.255.255"), Ipv4Mask ("/32"), and Ipv4Mask (0xffffffff) are all equivalent.
Definition at line 253 of file ipv4-address.h.
| ns3::Ipv4Mask::Ipv4Mask | ( | ) | 
Will initialize to a garbage value (0x66666666)
Definition at line 28 of file ipv4-address.cc.
References NS_LOG_FUNCTION.
| ns3::Ipv4Mask::Ipv4Mask | ( | uint32_t | mask | ) | 
| mask | bitwise integer representation of the mask | 
For example, the integer input 0xffffff00 yields a 24-bit mask
Definition at line 34 of file ipv4-address.cc.
References NS_LOG_FUNCTION.
| ns3::Ipv4Mask::Ipv4Mask | ( | const char * | mask | ) | 
| mask | String constant either in "255.255.255.0" or "/24" format | 
Definition at line 40 of file ipv4-address.cc.
References m_mask, NS_ABORT_MSG, NS_ASSERT, and NS_LOG_FUNCTION.
| uint32_t ns3::Ipv4Mask::Get | ( | ) | const | 
Get the host-order 32-bit IP mask.
Definition at line 74 of file ipv4-address.cc.
References m_mask, and NS_LOG_FUNCTION.
Referenced by ns3::Ipv4InterfaceAddress::Ipv4InterfaceAddress(), ns3::Ipv4Address::CombineMask(), ns3::Ipv4AddressGeneratorImpl::Init(), ns3::Ipv4Address::IsSubnetDirectedBroadcast(), ns3::Ipv4AddressGeneratorImpl::MaskToIndex(), ns3::GlobalRouter::ProcessBridgedBroadcastLink(), ns3::GlobalRouter::ProcessPointToPointLink(), ns3::GlobalRouter::ProcessSingleBroadcastLink(), ns3::DhcpServer::SendOffer(), ns3::RipRte::Serialize(), and ns3::Ipv4AddressHelper::SetBase().
 Here is the caller graph for this function:
 Here is the caller graph for this function:| uint32_t ns3::Ipv4Mask::GetInverse | ( | ) | const | 
Return the inverse mask in host order.
Definition at line 88 of file ipv4-address.cc.
References NS_LOG_FUNCTION.
Referenced by ns3::Ipv4Address::GetSubnetDirectedBroadcast().
 Here is the caller graph for this function:
 Here is the caller graph for this function:| 
 | static | 
Definition at line 103 of file ipv4-address.cc.
References NS_LOG_FUNCTION_NOARGS.
Referenced by ns3::Ipv4L3ClickProtocol::SetupLoopback(), and ns3::Ipv4L3Protocol::SetupLoopback().
 Here is the caller graph for this function:
 Here is the caller graph for this function:| 
 | static | 
Definition at line 119 of file ipv4-address.cc.
References NS_LOG_FUNCTION_NOARGS.
Referenced by ns3::Ipv4StaticRouting::AddHostRouteTo(), ns3::Ipv4StaticRouting::AddHostRouteTo(), ns3::TapBridge::CreateTap(), ns3::Ipv4Address::GetSubnetDirectedBroadcast(), ns3::Ipv4RoutingTableEntry::IsHost(), ns3::Ipv4Address::IsSubnetDirectedBroadcast(), ns3::Ipv4StaticRouting::NotifyInterfaceUp(), ns3::aodv::RoutingProtocol::RecvRequest(), ns3::aodv::RoutingProtocol::SendHello(), ns3::dsdv::RoutingProtocol::SendPeriodicUpdate(), ns3::aodv::RoutingProtocol::SendRequest(), ns3::aodv::RoutingProtocol::SendRerrMessage(), ns3::aodv::RoutingProtocol::SendRerrWhenNoRouteToForward(), and ns3::dsdv::RoutingProtocol::SendTriggeredUpdate().
 Here is the caller graph for this function:
 Here is the caller graph for this function:| uint16_t ns3::Ipv4Mask::GetPrefixLength | ( | ) | const | 
Definition at line 127 of file ipv4-address.cc.
References m_mask, and NS_LOG_FUNCTION.
Referenced by ns3::Ipv4StaticRouting::GetDefaultRoute(), ns3::Ipv4EndPointDemux::Lookup(), ns3::Rip::Lookup(), ns3::Ipv4StaticRouting::LookupStatic(), ns3::RipRte::Print(), ns3::GlobalRouter::ProcessBridgedBroadcastLink(), and ns3::GlobalRouter::ProcessSingleBroadcastLink().
 Here is the caller graph for this function:
 Here is the caller graph for this function:| 
 | static | 
Definition at line 111 of file ipv4-address.cc.
References NS_LOG_FUNCTION_NOARGS.
Referenced by ns3::TapFdNetDeviceHelper::TapFdNetDeviceHelper(), ns3::Rip::AddDefaultRouteTo(), ns3::Ipv4RoutingTableEntry::CreateDefaultRoute(), ns3::TapFdNetDeviceHelper::CreateFileDescriptor(), ns3::Rip::DoSendRouteUpdate(), ns3::Rip::HandleRequests(), ns3::Rip::SendRouteRequest(), and ns3::Ipv4StaticRouting::SetDefaultRoute().
 Here is the caller graph for this function:
 Here is the caller graph for this function:| bool ns3::Ipv4Mask::IsMatch | ( | Ipv4Address | a, | 
| Ipv4Address | b ) const | 
| a | first address to compare | 
| b | second address to compare | 
Definition at line 67 of file ipv4-address.cc.
References ns3::Ipv4Address::Get(), m_mask, and NS_LOG_FUNCTION.
Referenced by ns3::Rip::Lookup(), ns3::Ipv4GlobalRouting::LookupGlobal(), and ns3::Ipv4StaticRouting::LookupStatic().
 Here is the call graph for this function:
 Here is the call graph for this function: Here is the caller graph for this function:
 Here is the caller graph for this function:| 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"
| os | The output stream to which this Ipv4Address is printed | 
Definition at line 95 of file ipv4-address.cc.
References m_mask, and NS_LOG_FUNCTION.
Referenced by ns3::Ipv4ClickRouting::GetIpPrefixFromInterfaceId(), and ns3::operator<<().
 Here is the caller graph for this function:
 Here is the caller graph for this function:| void ns3::Ipv4Mask::Set | ( | uint32_t | mask | ) | 
input mask is in host order.
| mask | The host order 32-bit mask | 
Definition at line 81 of file ipv4-address.cc.
References m_mask, and NS_LOG_FUNCTION.
Referenced by EpcTftClassifierTestSuite::EpcTftClassifierTestSuite(), and ns3::RipRte::Deserialize().
 Here is the caller graph for this function:
 Here is the caller graph for this function:Not equal to operator.
| a | the first operand. | 
| b | the first operand. | 
Definition at line 418 of file ipv4-address.h.
Equal to operator.
| a | the first operand. | 
| b | the first operand. | 
Definition at line 412 of file ipv4-address.h.
| 
 | private | 
IP mask.
Definition at line 335 of file ipv4-address.h.
Referenced by Ipv4Mask(), Get(), GetPrefixLength(), IsMatch(), Print(), and Set().