Per-link class used to store deferred transmission bundles that helps cache route computations. More...
#include <TableBasedRouter.h>
Public Member Functions | |
| DeferredList (const char *logpath, const LinkRef &link) | |
| BundleList * | list () |
| Accessor for the bundle list. | |
| const ForwardingInfo & | info (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_ |
Per-link class used to store deferred transmission bundles that helps cache route computations.
Definition at line 228 of file TableBasedRouter.h.
typedef std::map<u_int32_t, ForwardingInfo> dtn::TableBasedRouter::DeferredList::InfoMap [protected] |
Definition at line 254 of file TableBasedRouter.h.
| dtn::TableBasedRouter::DeferredList::DeferredList | ( | const char * | logpath, | |
| const LinkRef & | link | |||
| ) |
Definition at line 908 of file TableBasedRouter.cc.
| bool dtn::TableBasedRouter::DeferredList::add | ( | const BundleRef & | bundle, | |
| const ForwardingInfo & | info | |||
| ) |
Add a new bundle/info pair to the deferred list.
Definition at line 948 of file TableBasedRouter.cc.
References dtn::BundleList::contains(), count_, info_, list_, and dtn::BundleList::push_back().
Referenced by dtn::TableBasedRouter::fwd_to_nexthop().
Remove the bundle and its associated forwarding info from the list.
Definition at line 970 of file TableBasedRouter.cc.
References ASSERT, count_, dtn::BundleList::erase(), info_, and list_.
Referenced by dtn::TableBasedRouter::remove_from_deferred().
| void dtn::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 count_.
| bool dtn::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 info_.
Referenced by dtn::TableBasedRouter::remove_from_deferred().
| const ForwardingInfo & dtn::TableBasedRouter::DeferredList::info | ( | const BundleRef & | bundle | ) |
Accessor for the forwarding info associated with the bundle, which must be on the list.
Definition at line 939 of file TableBasedRouter.cc.
| BundleList* dtn::TableBasedRouter::DeferredList::list | ( | ) | [inline] |
Accessor for the bundle list.
Definition at line 233 of file TableBasedRouter.h.
References list_.
Referenced by dtn::TableBasedRouter::fwd_to_nexthop().
size_t dtn::TableBasedRouter::DeferredList::count_ [protected] |
Definition at line 257 of file TableBasedRouter.h.
Referenced by add(), del(), and dump_stats().
InfoMap dtn::TableBasedRouter::DeferredList::info_ [protected] |
BundleList dtn::TableBasedRouter::DeferredList::list_ [protected] |
Definition at line 255 of file TableBasedRouter.h.
1.6.3