IBR-DTNSuite 0.6

dtn::net::UDPConvergenceLayer Class Reference

#include <UDPConvergenceLayer.h>

Inheritance diagram for dtn::net::UDPConvergenceLayer:
Collaboration diagram for dtn::net::UDPConvergenceLayer:

List of all members.

Public Member Functions

 UDPConvergenceLayer (ibrcommon::vinterface net, int port, unsigned int mtu=1280)
virtual ~UDPConvergenceLayer ()
void update (const ibrcommon::vinterface &iface, std::string &name, std::string &data) throw (dtn::net::DiscoveryServiceProvider::NoServiceHereException)
dtn::core::Node::Protocol getDiscoveryProtocol () const
void queue (const dtn::core::Node &n, const ConvergenceLayer::Job &job)
UDPConvergenceLayeroperator>> (dtn::data::Bundle &)
virtual const std::string getName () const

Protected Member Functions

virtual void componentUp ()
virtual void componentRun ()
virtual void componentDown ()
bool __cancellation ()

Detailed Description

This class implement a ConvergenceLayer for UDP/IP. Each bundle is sent in exact one UDP datagram.

Definition at line 22 of file UDPConvergenceLayer.h.


Constructor & Destructor Documentation

dtn::net::UDPConvergenceLayer::UDPConvergenceLayer ( ibrcommon::vinterface  net,
int  port,
unsigned int  mtu = 1280 
)

Constructor

Parameters:
[in]bind_addrThe address to bind.
[in]portThe udp port to use.
[in]broadcastIf true, the broadcast feature for this socket is enabled.
[in]mtuThe maximum bundle size.

Definition at line 45 of file UDPConvergenceLayer.cpp.

dtn::net::UDPConvergenceLayer::~UDPConvergenceLayer ( ) [virtual]

Desktruktor

Definition at line 51 of file UDPConvergenceLayer.cpp.

References componentDown().

Here is the call graph for this function:


Member Function Documentation

bool dtn::net::UDPConvergenceLayer::__cancellation ( ) [protected, virtual]

Implements dtn::daemon::IndependentComponent.

Definition at line 225 of file UDPConvergenceLayer.cpp.

void dtn::net::UDPConvergenceLayer::componentDown ( ) [protected, virtual]

Implements dtn::daemon::IndependentComponent.

Definition at line 192 of file UDPConvergenceLayer.cpp.

References ibrcommon::JoinableThread::join(), ibrcommon::udpsocket::shutdown(), and ibrcommon::JoinableThread::stop().

Referenced by ~UDPConvergenceLayer().

Here is the call graph for this function:

void dtn::net::UDPConvergenceLayer::componentRun ( ) [protected, virtual]
void dtn::net::UDPConvergenceLayer::componentUp ( ) [protected, virtual]
dtn::core::Node::Protocol dtn::net::UDPConvergenceLayer::getDiscoveryProtocol ( ) const [virtual]

Implements dtn::net::ConvergenceLayer.

Definition at line 57 of file UDPConvergenceLayer.cpp.

References dtn::core::Node::CONN_UDPIP.

const std::string dtn::net::UDPConvergenceLayer::getName ( ) const [virtual]
See also:
Component::getName()

Implements dtn::daemon::Component.

Definition at line 231 of file UDPConvergenceLayer.cpp.

UDPConvergenceLayer & dtn::net::UDPConvergenceLayer::operator>> ( dtn::data::Bundle bundle)

Definition at line 155 of file UDPConvergenceLayer.cpp.

References dtn::core::BundleCore::getInstance(), and ibrcommon::udpsocket::receive().

Here is the call graph for this function:

void dtn::net::UDPConvergenceLayer::update ( const ibrcommon::vinterface iface,
std::string &  name,
std::string &  data 
) throw (dtn::net::DiscoveryServiceProvider::NoServiceHereException) [virtual]

this method updates the given values

Implements dtn::net::DiscoveryServiceProvider.

Definition at line 62 of file UDPConvergenceLayer.cpp.

References ibrcommon::vaddress::VADDRESS_INET.


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