NS-3 based Named Data Networking (NDN) simulator
ndnSIM 2.0: NDN, CCN, CCNx, content centric networks
API Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
ns3::ndn::cs::ContentStoreWithFreshness< Policy > Class Template Reference

Special content store realization that honors Freshness parameter in Data packets. More...

#include <content-store-with-freshness.hpp>

Inheritance diagram for ns3::ndn::cs::ContentStoreWithFreshness< Policy >:
Collaboration diagram for ns3::ndn::cs::ContentStoreWithFreshness< Policy >:

Public Types

typedef ContentStoreImpl
< ndnSIM::multi_policy_traits
< boost::mpl::vector2< Policy,
ndnSIM::freshness_policy_traits > > > 
super
 
typedef
super::policy_container::template
index< 1 >::type 
freshness_policy_container
 
- Public Types inherited from ns3::ndn::cs::ContentStoreImpl< ndnSIM::multi_policy_traits< boost::mpl::vector2< Policy, ndnSIM::freshness_policy_traits > > >
typedef
ndnSIM::trie_with_policy< Name,
ndnSIM::smart_pointer_payload_traits
< EntryImpl< ContentStoreImpl
< ndnSIM::multi_policy_traits
< boost::mpl::vector2< Policy,
ndnSIM::freshness_policy_traits >
> > >, Entry >
, ndnSIM::multi_policy_traits
< boost::mpl::vector2< Policy,
ndnSIM::freshness_policy_traits > > > 
super
 
typedef EntryImpl
< ContentStoreImpl
< ndnSIM::multi_policy_traits
< boost::mpl::vector2< Policy,
ndnSIM::freshness_policy_traits > > > > 
entry
 

Public Member Functions

virtual void Print (std::ostream &os) const
 Print out content store entries. More...
 
virtual bool Add (shared_ptr< const Data > data)
 Add a new content to the content store. More...
 
- Public Member Functions inherited from ns3::ndn::cs::ContentStoreImpl< ndnSIM::multi_policy_traits< boost::mpl::vector2< Policy, ndnSIM::freshness_policy_traits > > >
 ContentStoreImpl ()
 
virtual ~ContentStoreImpl ()
 
virtual shared_ptr< DataLookup (shared_ptr< const Interest > interest)
 Find corresponding CS entry for the given interest. More...
 
virtual uint32_t GetSize () const
 Get number of entries in content store. More...
 
virtual Ptr< EntryBegin ()
 Return first element of content store (no order guaranteed) More...
 
virtual Ptr< EntryEnd ()
 Return item next after last (no order guaranteed) More...
 
virtual Ptr< EntryNext (Ptr< Entry >)
 
const super::policy_container & GetPolicy () const
 
super::policy_container & GetPolicy ()
 
- Public Member Functions inherited from ns3::ndn::ContentStore
virtual ~ContentStore ()
 Virtual destructor. More...
 
virtual Ptr< cs::EntryNext (Ptr< cs::Entry >)=0
 Advance the iterator. More...
 

Static Public Member Functions

static TypeId GetTypeId ()
 
- Static Public Member Functions inherited from ns3::ndn::cs::ContentStoreImpl< ndnSIM::multi_policy_traits< boost::mpl::vector2< Policy, ndnSIM::freshness_policy_traits > > >
static TypeId GetTypeId ()
 
- Static Public Member Functions inherited from ns3::ndn::ContentStore
static TypeId GetTypeId ()
 Interface ID. More...
 
static Ptr< ContentStoreGetContentStore (Ptr< Object > node)
 Static call to cheat python bindings. More...
 

Additional Inherited Members

- Protected Attributes inherited from ns3::ndn::ContentStore
TracedCallback< shared_ptr
< const Interest >, shared_ptr
< const Data > > 
m_cacheHitsTrace
 trace of cache hits More...
 
TracedCallback< shared_ptr
< const Interest > > 
m_cacheMissesTrace
 trace of cache misses More...
 

Detailed Description

template<class Policy>
class ns3::ndn::cs::ContentStoreWithFreshness< Policy >

Special content store realization that honors Freshness parameter in Data packets.

Definition at line 39 of file content-store-with-freshness.hpp.

Member Typedef Documentation

template<class Policy>
typedef super::policy_container::template index<1>::type ns3::ndn::cs::ContentStoreWithFreshness< Policy >::freshness_policy_container

Definition at line 50 of file content-store-with-freshness.hpp.

template<class Policy>
typedef ContentStoreImpl<ndnSIM::multi_policy_traits<boost::mpl:: vector2<Policy, ndnSIM::freshness_policy_traits> > > ns3::ndn::cs::ContentStoreWithFreshness< Policy >::super

Definition at line 48 of file content-store-with-freshness.hpp.

Member Function Documentation

template<class Policy >
bool ns3::ndn::cs::ContentStoreWithFreshness< Policy >::Add ( shared_ptr< const Data data)
inlinevirtual

Add a new content to the content store.

Parameters
headerFully parsed Data
packetFully formed Ndn packet to add to content store (will be copied and stripped down of headers)
Returns
true if an existing entry was updated, false otherwise

Reimplemented from ns3::ndn::cs::ContentStoreImpl< ndnSIM::multi_policy_traits< boost::mpl::vector2< Policy, ndnSIM::freshness_policy_traits > > >.

Definition at line 100 of file content-store-with-freshness.hpp.

template<class Policy >
TypeId ns3::ndn::cs::ContentStoreWithFreshness< Policy >::GetTypeId ( void  )
static

Definition at line 85 of file content-store-with-freshness.hpp.

template<class Policy >
void ns3::ndn::cs::ContentStoreWithFreshness< Policy >::Print ( std::ostream &  os) const
inlinevirtual

The documentation for this class was generated from the following file: