IBR-DTNSuite  0.8
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 ()
void __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 47 of file UDPConvergenceLayer.cpp.

Desktruktor

Definition at line 53 of file UDPConvergenceLayer.cpp.

References componentDown().

Here is the call graph for this function:


Member Function Documentation

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

Implements dtn::daemon::IndependentComponent.

Definition at line 275 of file UDPConvergenceLayer.cpp.

References ibrcommon::udpsocket::shutdown().

Here is the call graph for this function:

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

Implements dtn::daemon::IndependentComponent.

Definition at line 238 of file UDPConvergenceLayer.cpp.

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

Referenced by ~UDPConvergenceLayer().

Here is the call graph for this function:

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

Implements dtn::daemon::Component.

Definition at line 281 of file UDPConvergenceLayer.cpp.

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

Definition at line 201 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 64 of file UDPConvergenceLayer.cpp.

References ibrcommon::vaddress::VADDRESS_INET.


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