Public Types | Public Member Functions | Protected Member Functions | Friends

dtn::routing::BaseRouter::Extension Class Reference

#include <BaseRouter.h>

Inherited by dtn::routing::BaseRouter::ThreadedExtension, and dtn::routing::RetransmissionExtension.

Collaboration diagram for dtn::routing::BaseRouter::Extension:
Collaboration graph
[legend]

List of all members.

Public Types

enum  CALLBACK_ACTION { ROUTE_CALLBACK_FORWARDED = 0, ROUTE_CALLBACK_ABORTED = 1, ROUTE_CALLBACK_REJECTED = 2, ROUTE_CALLBACK_DELETED = 3 }

Public Member Functions

 Extension ()
virtual ~Extension ()=0
virtual void notify (const dtn::core::Event *evt)=0
void transferTo (const dtn::data::EID &destination, const dtn::data::BundleID &id)
void transferTo (NeighborDatabase::NeighborEntry &entry, const dtn::data::BundleID &id)

Protected Member Functions

BaseRouteroperator* ()

Friends

class BaseRouter

Detailed Description

Definition at line 62 of file BaseRouter.h.


Member Enumeration Documentation

Enumerator:
ROUTE_CALLBACK_FORWARDED 
ROUTE_CALLBACK_ABORTED 
ROUTE_CALLBACK_REJECTED 
ROUTE_CALLBACK_DELETED 

Definition at line 70 of file BaseRouter.h.


Constructor & Destructor Documentation

dtn::routing::BaseRouter::Extension::Extension (  ) 

base implementation of the Extension class

Definition at line 51 of file BaseRouter.cpp.

dtn::routing::BaseRouter::Extension::~Extension (  )  [pure virtual]

Definition at line 54 of file BaseRouter.cpp.


Member Function Documentation

virtual void dtn::routing::BaseRouter::Extension::notify ( const dtn::core::Event evt  )  [pure virtual]
BaseRouter & dtn::routing::BaseRouter::Extension::operator* (  )  [protected]

Definition at line 57 of file BaseRouter.cpp.

void dtn::routing::BaseRouter::Extension::transferTo ( NeighborDatabase::NeighborEntry entry,
const dtn::data::BundleID id 
)
void dtn::routing::BaseRouter::Extension::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 68 of file BaseRouter.cpp.

References dtn::routing::NeighborDatabase::get(), and dtn::routing::BaseRouter::getNeighborDB().

Referenced by dtn::routing::StaticRoutingExtension::run(), dtn::routing::NeighborRoutingExtension::run(), dtn::routing::FloodRoutingExtension::run(), and dtn::routing::EpidemicRoutingExtension::run().

Here is the call graph for this function:


Friends And Related Function Documentation

friend class BaseRouter [friend]

Definition at line 91 of file BaseRouter.h.


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