Implementing new cache replacement strategies: Random and FIFO
diff --git a/examples/trie.cc b/examples/trie.cc
index 4d82ba6..3e77a4f 100644
--- a/examples/trie.cc
+++ b/examples/trie.cc
@@ -20,7 +20,7 @@
#include "ns3/core-module.h"
#include "ns3/ndnSIM-module.h"
-#include "../utils/trie.h"
+#include "../utils/trie-with-policy.h"
using namespace ns3;
@@ -46,9 +46,15 @@
int
main (int argc, char *argv[])
{
- typedef indexed_trie<ns3::CcnxNameComponents, Integer, smart_pointer_payload_traits<Integer> > trie;
+ typedef trie_with_policy<ns3::CcnxNameComponents,
+ Integer,
+ smart_pointer_payload_traits<Integer>,
+ lru_policy_traits<CcnxNameComponents,
+ Integer,
+ smart_pointer_payload_traits<Integer> >
+ > trie;
trie x;
- x.getPolicy ().set_max_size (2);
+ x.getPolicy ().set_max_size (100);
// x.getTrie ().PrintStat (std::cout);
@@ -61,22 +67,23 @@
ns3::Ptr<Integer> i = ns3::Create<Integer> (1);
x.insert (n4, ns3::Create<Integer> (4));
-
-
x.insert (n3, ns3::Create<Integer> (3));
std::pair< trie::iterator, bool > item =
x.insert (n2, ns3::Create<Integer> (2));
- x.erase (item.first);
+ // x.erase (item.first);
x.insert (n1, ns3::Create<Integer> (1));
x.insert (n4, ns3::Create<Integer> (4));
- // std::cout << x.getTrie ();
- BOOST_FOREACH (const trie::parent_trie &item, x.getPolicy ())
- {
- std::cout << *item.payload () << " " << std::endl;
- }
+ std::cout << "digraph trie {\n";
+ std::cout << x.getTrie ();
+ std::cout << "}\n";
+
+ // BOOST_FOREACH (const trie::parent_trie &item, x.getPolicy ())
+ // {
+ // std::cout << *item.payload () << " " << std::endl;
+ // }
// ns3::CcnxNameComponents n4;
// n4("a")("c");