22 #ifndef NLSR_NAME_PREFIX_TABLE_ENTRY_HPP
23 #define NLSR_NAME_PREFIX_TABLE_ENTRY_HPP
41 : m_namePrefix(namePrefix)
52 const std::list<std::shared_ptr<RoutingTablePoolEntry>>&
64 if (m_rteList.size() > 0) {
65 for (
auto it = m_rteList.begin(); it != m_rteList.end(); ++it) {
66 (*it)->getNexthopList().clear();
74 return m_rteList.size();
109 ndn::Name m_namePrefix;
112 std::list<std::shared_ptr<RoutingTablePoolEntry>> m_rteList;
uint64_t removeRoutingTableEntry(std::shared_ptr< RoutingTablePoolEntry > rtpePtr)
Removes a routing entry from this NPT entry.
const std::list< std::shared_ptr< RoutingTablePoolEntry > > & getRteList() const
NamePrefixTableEntry(const ndn::Name &namePrefix)
void resetRteListNextHop()
Resets the next hop lists of all routing table entries that advertise this name prefix.
const NexthopList & getNexthopList() const
void generateNhlfromRteList()
Collect all next-hops that are advertised by this entry's routing entries.
void addRoutingTableEntry(std::shared_ptr< RoutingTablePoolEntry > rtpePtr)
Adds a routing entry to this NPT entry.
const ndn::Name & getNamePrefix() const
Copyright (c) 2014-2020, The University of Memphis, Regents of the University of California.
std::ostream & operator<<(std::ostream &os, const Adjacent &adjacent)
bool operator==(const NamePrefixTableEntry &lhs, const NamePrefixTableEntry &rhs)
#define PUBLIC_WITH_TESTS_ELSE_PRIVATE