26 #ifndef NFD_DAEMON_TABLE_FIB_HPP 27 #define NFD_DAEMON_TABLE_FIB_HPP 34 #include <boost/range/adaptor/transformed.hpp> 38 namespace measurements {
49 class Fib : noncopyable
53 Fib(NameTree& nameTree);
65 findLongestPrefixMatch(
const Name& prefix)
const;
72 findLongestPrefixMatch(
const pit::Entry& pitEntry)
const;
84 findExactMatch(
const Name& prefix);
91 static constexpr
size_t 103 std::pair<Entry*, bool>
104 insert(
const Name& prefix);
107 erase(
const Name& prefix);
110 erase(
const Entry& entry);
115 removeNextHop(
Entry& entry,
const Face& face);
129 return this->getRange().begin();
138 return this->getRange().end();
146 findLongestPrefixMatchImpl(
const K& key)
const;
155 NameTree& m_nameTree;
163 static const unique_ptr<Entry> s_emptyEntry;
172 #endif // NFD_DAEMON_TABLE_FIB_HPP
represents a Measurements entry
represents the Forwarding Information Base (FIB)
boost::transformed_range< name_tree::GetTableEntry< Entry >, const name_tree::Range > Range
Copyright (c) 2014-2015, Regents of the University of California, Arizona Board of Regents...
const_iterator begin() const
static constexpr size_t getMaxDepth()
Maximum number of components in a FIB entry prefix.
const_iterator end() const
an entry in the name tree
boost::range_iterator< Range >::type const_iterator
static const int FIB_MAX_DEPTH
Maximum number of components in a FIB entry prefix.
boost::iterator_range< Iterator > Range
a Forward Range of name tree entries