ns-3
ns3::Ipv6EndPointDemux Class Reference

Demultiplexor for end points. More...

#include <ipv6-end-point-demux.h>

List of all members.

Public Types

typedef std::list< Ipv6EndPoint * > EndPoints
typedef std::list
< Ipv6EndPoint * >::iterator 
EndPointsI

Public Member Functions

 Ipv6EndPointDemux ()
 Constructor.
 ~Ipv6EndPointDemux ()
 Destructor.
bool LookupPortLocal (uint16_t port)
 Lookup for port local.
bool LookupLocal (Ipv6Address addr, uint16_t port)
 Lookup for address and port.
EndPoints Lookup (Ipv6Address dst, uint16_t dport, Ipv6Address src, uint16_t sport, Ptr< Ipv6Interface > incomingInterface)
 lookup for a match with all the parameters.
Ipv6EndPointSimpleLookup (Ipv6Address dst, uint16_t dport, Ipv6Address src, uint16_t sport)
 Simple lookup for a four-tuple match.
Ipv6EndPointAllocate (void)
 Allocate a Ipv6EndPoint.
Ipv6EndPointAllocate (Ipv6Address address)
 Allocate a Ipv6EndPoint.
Ipv6EndPointAllocate (uint16_t port)
 Allocate a Ipv6EndPoint.
Ipv6EndPointAllocate (Ipv6Address address, uint16_t port)
 Allocate a Ipv6EndPoint.
Ipv6EndPointAllocate (Ipv6Address localAddress, uint16_t localPort, Ipv6Address peerAddress, uint16_t peerPort)
 Allocate a Ipv6EndPoint.
void DeAllocate (Ipv6EndPoint *endPoint)
 Remove a end point.
EndPoints GetEndPoints () const
 Get the entire list of end points registered.

Detailed Description

Demultiplexor for end points.


Member Function Documentation

Allocate a Ipv6EndPoint.

Parameters:
addressIPv6 address
Returns:
an Ipv6EndPoint instance

References NS_LOG_DEBUG, NS_LOG_FUNCTION, and NS_LOG_WARN.

Allocate a Ipv6EndPoint.

Parameters:
portlocal port
Returns:
an Ipv6EndPoint instance

References Allocate(), ns3::Ipv6Address::GetAny(), and NS_LOG_FUNCTION.

Referenced by Allocate().

Ipv6EndPoint * ns3::Ipv6EndPointDemux::Allocate ( Ipv6Address  address,
uint16_t  port 
)

Allocate a Ipv6EndPoint.

Parameters:
addresslocal address
portlocal port
Returns:
an Ipv6EndPoint instance

References LookupLocal(), NS_LOG_DEBUG, NS_LOG_FUNCTION, and NS_LOG_WARN.

Ipv6EndPoint * ns3::Ipv6EndPointDemux::Allocate ( Ipv6Address  localAddress,
uint16_t  localPort,
Ipv6Address  peerAddress,
uint16_t  peerPort 
)

Allocate a Ipv6EndPoint.

Parameters:
localAddresslocal address
localPortlocal port
peerAddresspeer address
peerPortpeer port
Returns:
an Ipv6EndPoint instance

References NS_LOG_DEBUG, NS_LOG_FUNCTION, NS_LOG_WARN, and ns3::Ipv6EndPoint::SetPeer().

Remove a end point.

Parameters:
endPointthe end point to remove

References NS_LOG_FUNCTION_NOARGS.

Ipv6EndPointDemux::EndPoints ns3::Ipv6EndPointDemux::GetEndPoints ( ) const

Get the entire list of end points registered.

Returns:
list of Ipv6EndPoint
Ipv6EndPointDemux::EndPoints ns3::Ipv6EndPointDemux::Lookup ( Ipv6Address  dst,
uint16_t  dport,
Ipv6Address  src,
uint16_t  sport,
Ptr< Ipv6Interface incomingInterface 
)

lookup for a match with all the parameters.

Parameters:
dstdestination address to test
dportdestination port to test
srcsource address to test
sportsource port to test
incomingInterfacethe incoming interface
Returns:
list en IPv6EndPoints (could be 0 element)

References ns3::Ipv6Address::GetAllRoutersMulticast(), ns3::Ipv6Address::GetAny(), ns3::Ipv6EndPoint::GetLocalAddress(), ns3::Ipv6EndPoint::GetLocalPort(), ns3::Ipv6EndPoint::GetPeerAddress(), ns3::Ipv6EndPoint::GetPeerPort(), NS_LOG_DEBUG, NS_LOG_FUNCTION, and NS_LOG_LOGIC.

bool ns3::Ipv6EndPointDemux::LookupLocal ( Ipv6Address  addr,
uint16_t  port 
)

Lookup for address and port.

Parameters:
addraddress to test
portport to test
Returns:
true if there is a match in EndPoints, false otherwise

References NS_LOG_FUNCTION.

Referenced by Allocate().

bool ns3::Ipv6EndPointDemux::LookupPortLocal ( uint16_t  port)

Lookup for port local.

Parameters:
portport to test
Returns:
true if a port local is in EndPoints, false otherwise

References NS_LOG_FUNCTION.

Ipv6EndPoint * ns3::Ipv6EndPointDemux::SimpleLookup ( Ipv6Address  dst,
uint16_t  dport,
Ipv6Address  src,
uint16_t  sport 
)

Simple lookup for a four-tuple match.

Parameters:
dstdestination address to test
dportdestination port to test
srcsource address to test
sportsource port to test
Returns:
match or 0 if not found

References ns3::Ipv6Address::GetAny().


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