represents the Forwarding Information Base (FIB) More...
#include <fib.hpp>
Public Types | |
typedef boost::transformed_range< name_tree::GetTableEntry< Entry >, const name_tree::Range > | Range |
typedef boost::range_iterator< Range >::type | const_iterator |
Public Member Functions | |
Fib (NameTree &nameTree) | |
size_t | size () const |
const Entry & | findLongestPrefixMatch (const Name &prefix) const |
performs a longest prefix match More... | |
const Entry & | findLongestPrefixMatch (const pit::Entry &pitEntry) const |
performs a longest prefix match More... | |
const Entry & | findLongestPrefixMatch (const measurements::Entry &measurementsEntry) const |
performs a longest prefix match More... | |
Entry * | findExactMatch (const Name &prefix) |
performs an exact match lookup More... | |
std::pair< Entry *, bool > | insert (const Name &prefix) |
inserts a FIB entry for prefix More... | |
void | erase (const Name &prefix) |
void | erase (const Entry &entry) |
void | removeNextHop (Entry &entry, const Face &face) |
removes the NextHop record for face More... | |
const_iterator | begin () const |
const_iterator | end () const |
typedef boost::transformed_range<name_tree::GetTableEntry<Entry>, const name_tree::Range> nfd::fib::Fib::Range |
typedef boost::range_iterator<Range>::type nfd::fib::Fib::const_iterator |
|
explicit |
Definition at line 56 of file fib.cpp.
References nfd::name_tree::NameTree::findLongestPrefixMatch(), nfd::name_tree::Entry::getFibEntry(), and nfd::fib::nteHasFibEntry().
|
inline |
Definition at line 54 of file fib.hpp.
Referenced by nfd::ForwarderStatusManager::ForwarderStatusManager().
performs a longest prefix match
Definition at line 74 of file fib.cpp.
Referenced by nfd::fw::Strategy::lookupFib().
const Entry & nfd::fib::Fib::findLongestPrefixMatch | ( | const pit::Entry & | pitEntry | ) | const |
const Entry & nfd::fib::Fib::findLongestPrefixMatch | ( | const measurements::Entry & | measurementsEntry | ) | const |
performs an exact match lookup
Definition at line 92 of file fib.cpp.
References nfd::name_tree::NameTree::findExactMatch(), and nfd::name_tree::Entry::getFibEntry().
Referenced by nfd::FibManager::FibManager().
inserts a FIB entry for prefix
If an entry for exact same prefix exists, that entry is returned.
Definition at line 102 of file fib.cpp.
References erase(), nfd::name_tree::NameTree::eraseIfEmpty(), nfd::name_tree::Entry::getFibEntry(), nfd::name_tree::NameTree::lookup(), and nfd::name_tree::Entry::setFibEntry().
Referenced by nfd::FibManager::FibManager().
void nfd::fib::Fib::erase | ( | const Name & | prefix | ) |
Definition at line 128 of file fib.cpp.
References nfd::name_tree::NameTree::findExactMatch().
Referenced by erase(), nfd::FibManager::FibManager(), insert(), and removeNextHop().
void nfd::fib::Fib::erase | ( | const Entry & | entry | ) |
Definition at line 137 of file fib.cpp.
References erase(), and nfd::name_tree::NameTree::getEntry().
removes the NextHop record for face
Definition at line 148 of file fib.cpp.
References erase(), nfd::name_tree::NameTree::fullEnumerate(), nfd::name_tree::NameTree::getEntry(), nfd::name_tree::Entry::getFibEntry(), nfd::fib::Entry::hasNextHops(), nfd::fib::nteHasFibEntry(), and nfd::fib::Entry::removeNextHop().
Referenced by nfd::cleanupOnFaceRemoval().
|
inline |
|
inline |