table: NameTree enumeration
refs #1318
Change-Id: I26f25cefe8f2939ca884103f1b081c0c02325207
diff --git a/daemon/table/name-tree-entry.hpp b/daemon/table/name-tree-entry.hpp
index 1708dbf..cca1908 100644
--- a/daemon/table/name-tree-entry.hpp
+++ b/daemon/table/name-tree-entry.hpp
@@ -21,12 +21,12 @@
namespace name_tree {
-// Forward declaration
+// Forward declarations
class Node;
class Entry;
/**
- * @brief Name Tree Node Class
+ * \brief Name Tree Node Class
*/
class Node
{
@@ -43,9 +43,9 @@
};
/**
- * @brief Name Tree Entry Class
+ * \brief Name Tree Entry Class
*/
-class Entry
+class Entry : noncopyable
{
// Make private members accessible by Name Tree
friend class nfd::NameTree;
@@ -72,7 +72,10 @@
std::vector<shared_ptr<Entry> >&
getChildren();
-
+
+ bool
+ hasChildren() const;
+
bool
isEmpty() const;
@@ -88,12 +91,15 @@
void
insertPitEntry(shared_ptr<pit::Entry> pit);
+ bool
+ hasPitEntries() const;
+
std::vector<shared_ptr<pit::Entry> >&
getPitEntries();
/**
- * @brief Erase a PIT Entry
- * @details The address of this PIT Entry is required
+ * \brief Erase a PIT Entry
+ * \details The address of this PIT Entry is required
*/
bool
erasePitEntry(shared_ptr<pit::Entry> pit);
@@ -152,6 +158,12 @@
}
inline bool
+Entry::hasChildren() const
+{
+ return !m_children.empty();
+}
+
+inline bool
Entry::isEmpty() const
{
return m_children.empty() &&
@@ -166,6 +178,12 @@
return m_fibEntry;
}
+inline bool
+Entry::hasPitEntries() const
+{
+ return !m_pitEntries.empty();
+}
+
inline std::vector<shared_ptr<pit::Entry> >&
Entry::getPitEntries()
{