Public Types | Public Member Functions

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

Ipv6EndPoint* ns3::Ipv6EndPointDemux::Allocate ( void   ) 

Allocate a Ipv6EndPoint.

Returns:
an empty Ipv6EndPoint instance
Ipv6EndPoint* ns3::Ipv6EndPointDemux::Allocate ( Ipv6Address  address,
uint16_t  port 
)

Allocate a Ipv6EndPoint.

Parameters:
address local address
port local port
Returns:
an Ipv6EndPoint instance
Ipv6EndPoint* ns3::Ipv6EndPointDemux::Allocate ( Ipv6Address  localAddress,
uint16_t  localPort,
Ipv6Address  peerAddress,
uint16_t  peerPort 
)

Allocate a Ipv6EndPoint.

Parameters:
localAddress local address
localPort local port
peerAddress peer address
peerPort peer port
Returns:
an Ipv6EndPoint instance
Ipv6EndPoint* ns3::Ipv6EndPointDemux::Allocate ( Ipv6Address  address  ) 

Allocate a Ipv6EndPoint.

Parameters:
address IPv6 address
Returns:
an Ipv6EndPoint instance
Ipv6EndPoint* ns3::Ipv6EndPointDemux::Allocate ( uint16_t  port  ) 

Allocate a Ipv6EndPoint.

Parameters:
port local port
Returns:
an Ipv6EndPoint instance
void ns3::Ipv6EndPointDemux::DeAllocate ( Ipv6EndPoint endPoint  ) 

Remove a end point.

Parameters:
endPoint the end point to remove
EndPoints ns3::Ipv6EndPointDemux::GetEndPoints (  )  const

Get the entire list of end points registered.

Returns:
list of Ipv6EndPoint
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:
dst destination address to test
dport destination port to test
src source address to test
sport source port to test
incomingInterface the incoming interface
Returns:
list en IPv6EndPoints (could be 0 element)
bool ns3::Ipv6EndPointDemux::LookupLocal ( Ipv6Address  addr,
uint16_t  port 
)

Lookup for address and port.

Parameters:
addr address to test
port port to test
Returns:
true if there is a match in EndPoints, false otherwise
bool ns3::Ipv6EndPointDemux::LookupPortLocal ( uint16_t  port  ) 

Lookup for port local.

Parameters:
port port to test
Returns:
true if a port local is in EndPoints, false otherwise
Ipv6EndPoint* ns3::Ipv6EndPointDemux::SimpleLookup ( Ipv6Address  dst,
uint16_t  dport,
Ipv6Address  src,
uint16_t  sport 
)

Simple lookup for a four-tuple match.

Parameters:
dst destination address to test
dport destination port to test
src source address to test
sport source port to test
Returns:
match or 0 if not found

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