dtn::routing::BaseRouter Class Reference

#include <BaseRouter.h>

Inheritance diagram for dtn::routing::BaseRouter:
dtn::core::EventReceiver dtn::daemon::IntegratedComponent dtn::daemon::Component

List of all members.

Classes

class  Endpoint
class  Extension
class  NoNeighbourFoundException
class  NoRouteFoundException
class  RoutingException
class  ThreadedExtension
class  VirtualEndpoint

Public Member Functions

 BaseRouter (dtn::core::BundleStorage &storage)
 ~BaseRouter ()
void addExtension (BaseRouter::Extension *extension)
void transferTo (const dtn::data::EID &destination, const dtn::data::BundleID &id)
void transferTo (const dtn::data::EID &destination, dtn::data::Bundle &bundle)
void raiseEvent (const dtn::core::Event *evt)
dtn::data::Bundle getBundle (const dtn::data::BundleID &id)
dtn::core::BundleStoragegetStorage ()
bool isKnown (const dtn::data::BundleID &id)
const SummaryVector getSummaryVector ()

Protected Member Functions

virtual void componentUp ()
virtual void componentDown ()

Detailed Description

Definition at line 25 of file BaseRouter.h.


Constructor & Destructor Documentation

dtn::routing::BaseRouter::BaseRouter ( dtn::core::BundleStorage storage  ) 

implementation of the BaseRouter class

Definition at line 79 of file BaseRouter.cpp.

dtn::routing::BaseRouter::~BaseRouter (  ) 

Definition at line 86 of file BaseRouter.cpp.


Member Function Documentation

void dtn::routing::BaseRouter::addExtension ( BaseRouter::Extension extension  ) 

Add a routing extension to the routing core.

Parameters:
extension 

Definition at line 94 of file BaseRouter.cpp.

Referenced by main().

void dtn::routing::BaseRouter::componentDown (  )  [protected, virtual]
void dtn::routing::BaseRouter::componentUp (  )  [protected, virtual]
dtn::data::Bundle dtn::routing::BaseRouter::getBundle ( const dtn::data::BundleID id  ) 

Get a bundle out of the storage.

Parameters:
id The ID of the bundle.
Returns:
The requested bundle.

Definition at line 259 of file BaseRouter.cpp.

References dtn::core::BundleStorage::get().

dtn::core::BundleStorage & dtn::routing::BaseRouter::getStorage (  ) 
const SummaryVector dtn::routing::BaseRouter::getSummaryVector (  ) 

Definition at line 276 of file BaseRouter.cpp.

References dtn::routing::BundleSummary::getSummaryVector().

bool dtn::routing::BaseRouter::isKnown ( const dtn::data::BundleID id  ) 

Definition at line 270 of file BaseRouter.cpp.

References dtn::routing::BundleSummary::contains().

Referenced by raiseEvent().

void dtn::routing::BaseRouter::raiseEvent ( const dtn::core::Event evt  )  [virtual]
void dtn::routing::BaseRouter::transferTo ( const dtn::data::EID destination,
dtn::data::Bundle bundle 
)
void dtn::routing::BaseRouter::transferTo ( const dtn::data::EID destination,
const dtn::data::BundleID id 
)

Transfer one bundle to another node.

Exceptions:
BundleNotFoundException if the bundle do not exist.
Parameters:
destination The EID of the other node.
id The ID of the bundle to transfer. This bundle must be stored in the storage.

Definition at line 148 of file BaseRouter.cpp.

References dtn::core::BundleStorage::get().

Referenced by dtn::routing::RetransmissionExtension::notify(), dtn::routing::NeighborRoutingExtension::run(), and dtn::routing::EpidemicRoutingExtension::run().


The documentation for this class was generated from the following files:
Generated on Mon Aug 23 08:13:00 2010 for IBR-DTNSuite by  doxygen 1.6.3