dtn::TableBasedRouter::TableBasedRouter::DeferredList Class Reference

Per-link class used to store deferred transmission bundles that helps cache route computations. More...

#include <TableBasedRouter.h>

Inheritance diagram for dtn::TableBasedRouter::TableBasedRouter::DeferredList:

dtn::RouterInfo

List of all members.

Public Member Functions

 DeferredList (const char *logpath, const LinkRef &link)
BundleListlist ()
 Accessor for the bundle list.
const ForwardingInfoinfo (const BundleRef &bundle)
 Accessor for the forwarding info associated with the bundle, which must be on the list.
bool find (const BundleRef &bundle, ForwardingInfo *info)
 Check if the bundle is on the list.
bool add (const BundleRef &bundle, const ForwardingInfo &info)
 Add a new bundle/info pair to the deferred list.
bool del (const BundleRef &bundle)
 Remove the bundle and its associated forwarding info from the list.
void dump_stats (oasys::StringBuffer *buf)
 Print out the stats, called from Link::dump_stats.

Protected Types

typedef std::map< u_int32_t,
ForwardingInfo
InfoMap

Protected Attributes

BundleList list_
InfoMap info_
size_t count_


Detailed Description

Per-link class used to store deferred transmission bundles that helps cache route computations.

Definition at line 228 of file TableBasedRouter.h.


Member Typedef Documentation

typedef std::map<u_int32_t, ForwardingInfo> dtn::TableBasedRouter::TableBasedRouter::DeferredList::InfoMap [protected]

Definition at line 254 of file TableBasedRouter.h.


Constructor & Destructor Documentation

dtn::TableBasedRouter::TableBasedRouter::DeferredList::DeferredList ( const char *  logpath,
const LinkRef link 
)

Definition at line 908 of file TableBasedRouter.cc.


Member Function Documentation

bool dtn::TableBasedRouter::TableBasedRouter::DeferredList::add ( const BundleRef bundle,
const ForwardingInfo info 
)

bool dtn::TableBasedRouter::TableBasedRouter::DeferredList::del ( const BundleRef bundle  ) 

void dtn::TableBasedRouter::TableBasedRouter::DeferredList::dump_stats ( oasys::StringBuffer *  buf  )  [virtual]

Print out the stats, called from Link::dump_stats.

Reimplemented from dtn::RouterInfo.

Definition at line 919 of file TableBasedRouter.cc.

References dtn::TableBasedRouter::TableBasedRouter::DeferredList::count_.

bool dtn::TableBasedRouter::TableBasedRouter::DeferredList::find ( const BundleRef bundle,
ForwardingInfo info 
)

Check if the bundle is on the list.

If so, return its forwarding info.

Definition at line 926 of file TableBasedRouter.cc.

References dtn::TableBasedRouter::TableBasedRouter::DeferredList::info_.

Referenced by dtn::TableBasedRouter::remove_from_deferred().

Accessor for the forwarding info associated with the bundle, which must be on the list.

Definition at line 939 of file TableBasedRouter.cc.

References ASSERT, and dtn::TableBasedRouter::TableBasedRouter::DeferredList::info_.

BundleList* dtn::TableBasedRouter::TableBasedRouter::DeferredList::list (  )  [inline]

Accessor for the bundle list.

Definition at line 233 of file TableBasedRouter.h.

References dtn::TableBasedRouter::TableBasedRouter::DeferredList::list_.

Referenced by dtn::TableBasedRouter::fwd_to_nexthop().


Member Data Documentation

size_t dtn::TableBasedRouter::TableBasedRouter::DeferredList::count_ [protected]

InfoMap dtn::TableBasedRouter::TableBasedRouter::DeferredList::info_ [protected]

BundleList dtn::TableBasedRouter::TableBasedRouter::DeferredList::list_ [protected]


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

Generated on Fri Jan 30 09:43:15 2009 for DTN Reference Implementation by  doxygen 1.5.8