NS-3 based Named Data Networking (NDN) simulator
ndnSIM 2.5: NDN, CCN, CCNx, content centric networks
API Documentation
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
 
typedef void(* CsEntryCallback) (Ptr< const Entry >)
 
- Public Types inherited from ns3::ndn::ContentStore
typedef void(* CacheHitsCallback) (shared_ptr< const Interest >, shared_ptr< const Data >)
 
typedef void(* CacheMissesCallback) (shared_ptr< const Interest >)
 

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< Data > Lookup (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

◆ super

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.

◆ freshness_policy_container

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.

Member Function Documentation

◆ GetTypeId()

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

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

◆ Print()

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

◆ Add()

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

Add a new content to the content store.

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.


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