[ndnSIM] cannot find Find (const Name &prefix) in ns3::ndn::Fib

yao hu huyao0107 at gmail.com
Wed Mar 20 03:43:36 PDT 2013


Hi Alex,

Thanks for reply to my previous question. Now I am continuing my work.

I want to look up FIB when Data packet comes (doing this in
ForwardingStrategy::DidReceiveSolicitedData()), however I cannot find the
call Find (const Name &prefix) in my local file model/fib/ndn-fib.h which
is shown on the online API documentation. So I added (1) into ndn-fib.h and
(2) into ndn-fib-impl.cc, but after compiling, it shows the error message
(3).

What else should I do? Or is there any other ways to look up FIB
(fib::Entry should be returned) in the call
ForwardingStrategy::DidReceiveSolicitedData()?
Thanks very much!

---
(1)
virtual Ptr<fib::Entry>
Find (const Name &prefix) = 0;

(2)
Ptr<fib::Entry>
FibImpl::Find (const Name &prefix)
{
   super::iterator item = super::find_exact (prefix);

   if (item == super::end ())
   return 0;
   else
   return item->payload ();
}

(3)
../src/ndnSIM/model/fib/ndn-fib-impl.cc:88:34: error: no
‘ns3::Ptr<ns3::ndn::fib::Entry> ns3::ndn::fib::FibImpl::Find(const
ns3::ndn::Name&)’ member function declared in class ‘ns3::ndn::fib::FibImpl’
In file included from ./ns3/object-base.h:23:0,
                 from ./ns3/object.h:29,
                 from ./ns3/node.h:26,
                 from ./ns3/ndn-fib.h:25,
                 from ../src/ndnSIM/model/fib/ndn-fib-impl.h:24,
                 from ../src/ndnSIM/model/fib/ndn-fib-impl.cc:21:
./ns3/type-id.h: In static member function ‘static ns3::ObjectBase*
ns3::TypeId::AddConstructor()::Maker::Create() [with T =
ns3::ndn::fib::FibImpl]’:
./ns3/type-id.h:396:59:   instantiated from ‘ns3::TypeId
ns3::TypeId::AddConstructor() [with T = ns3::ndn::fib::FibImpl]’
../src/ndnSIM/model/fib/ndn-fib-impl.cc:51:31:   instantiated from here
./ns3/type-id.h:392:34: error: cannot allocate an object of abstract type
‘ns3::ndn::fib::FibImpl’
../src/ndnSIM/model/fib/ndn-fib-impl.h:66:7: note:   because the following
virtual functions are pure within ‘ns3::ndn::fib::FibImpl’:
./ns3/ndn-fib.h:70:3: note: virtual ns3::Ptr<ns3::ndn::fib::Entry>
ns3::ndn::Fib::Find(const ns3::ndn::Name&)
Waf: Leaving directory `/root/ndnSIM/ns-3/build'
Build failed
 -> task in 'ns3-ndnSIM' failed (exit status 1):
{task 167312460: cxx ndn-fib-impl.cc -> ndn-fib-impl.cc.1.o}
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.lists.cs.ucla.edu/pipermail/ndnsim/attachments/20130320/041df291/attachment.html>


More information about the ndnSIM mailing list