#include <NeighborDatabase.h>
Classes | |
| class | BloomfilterNotAvailableException |
| class | NeighborEntry |
Public Member Functions | |
| NeighborDatabase () | |
| virtual | ~NeighborDatabase () |
| void | updateLastSeen (const dtn::data::EID &eid) |
| void | updateBundles (const dtn::data::EID &eid, const ibrcommon::BloomFilter &bf) |
| bool | knowBundle (const dtn::data::EID &eid, const dtn::data::BundleID &bundle) throw (BloomfilterNotAvailableException) |
| void | setAvailable (const dtn::data::EID &eid) |
| void | setUnavailable (const dtn::data::EID &eid) |
| std::set< dtn::data::EID > | getAvailable () const |
| NeighborDatabase::NeighborEntry & | get (const dtn::data::EID &eid) |
The neighbor database contains collected information about neighbors. This includes the last timestamp on which a neighbor was seen, the bundles this neighbors has received (bloomfilter with age).
Definition at line 26 of file NeighborDatabase.h.
| dtn::routing::NeighborDatabase::NeighborDatabase | ( | ) |
Definition at line 34 of file NeighborDatabase.cpp.
| dtn::routing::NeighborDatabase::~NeighborDatabase | ( | ) | [virtual] |
Definition at line 38 of file NeighborDatabase.cpp.
| NeighborDatabase::NeighborEntry & dtn::routing::NeighborDatabase::get | ( | const dtn::data::EID & | eid | ) |
Definition at line 42 of file NeighborDatabase.cpp.
Referenced by dtn::routing::EpidemicRoutingExtension::notify(), and dtn::routing::EpidemicRoutingExtension::run().
| std::set< dtn::data::EID > dtn::routing::NeighborDatabase::getAvailable | ( | ) | const |
Definition at line 84 of file NeighborDatabase.cpp.
Referenced by dtn::routing::EpidemicRoutingExtension::run().
| bool dtn::routing::NeighborDatabase::knowBundle | ( | const dtn::data::EID & | eid, | |
| const dtn::data::BundleID & | bundle | |||
| ) | throw (BloomfilterNotAvailableException) |
Use the bloom filter of a known neighbor to determine if a specific bundle is known by the neighbor and should not transferred to it.
| eid | ||
| bundle |
Definition at line 64 of file NeighborDatabase.cpp.
References dtn::routing::NeighborDatabase::NeighborEntry::_filter, and ibrcommon::BloomFilter::contains().
| void dtn::routing::NeighborDatabase::setAvailable | ( | const dtn::data::EID & | eid | ) |
Definition at line 70 of file NeighborDatabase.cpp.
References dtn::routing::NeighborDatabase::NeighborEntry::_available, and dtn::routing::NeighborDatabase::NeighborEntry::updateLastSeen().
Referenced by dtn::routing::EpidemicRoutingExtension::notify().
| void dtn::routing::NeighborDatabase::setUnavailable | ( | const dtn::data::EID & | eid | ) |
Definition at line 77 of file NeighborDatabase.cpp.
References dtn::routing::NeighborDatabase::NeighborEntry::_available, and dtn::routing::NeighborDatabase::NeighborEntry::updateLastSeen().
Referenced by dtn::routing::EpidemicRoutingExtension::notify().
| void dtn::routing::NeighborDatabase::updateBundles | ( | const dtn::data::EID & | eid, | |
| const ibrcommon::BloomFilter & | bf | |||
| ) |
Definition at line 58 of file NeighborDatabase.cpp.
References dtn::routing::NeighborDatabase::NeighborEntry::updateBundles().
Referenced by dtn::routing::EpidemicRoutingExtension::run().
| void dtn::routing::NeighborDatabase::updateLastSeen | ( | const dtn::data::EID & | eid | ) |
Definition at line 53 of file NeighborDatabase.cpp.
References dtn::routing::NeighborDatabase::NeighborEntry::updateLastSeen().
1.6.3