NS-3 based Named Data Networking (NDN) simulator
ndnSIM 2.0: NDN, CCN, CCNx, content centric networks
API Documentation
nfd::Measurements Class Reference

represents the Measurements table More...

#include <measurements.hpp>

Inheritance diagram for nfd::Measurements:
Collaboration diagram for nfd::Measurements:

Public Member Functions

 Measurements (NameTree &nametree)
 
shared_ptr< measurements::Entryget (const Name &name)
 find or insert a Measurements entry for name More...
 
shared_ptr< measurements::Entryget (const fib::Entry &fibEntry)
 find or insert a Measurements entry for fibEntry.getPrefix() More...
 
shared_ptr< measurements::Entryget (const pit::Entry &pitEntry)
 find or insert a Measurements entry for pitEntry.getName() More...
 
shared_ptr< measurements::EntrygetParent (const measurements::Entry &child)
 find or insert a Measurements entry for child's parent More...
 
shared_ptr< measurements::EntryfindLongestPrefixMatch (const Name &name, const measurements::EntryPredicate &pred=measurements::AnyEntry()) const
 perform a longest prefix match for name More...
 
shared_ptr< measurements::EntryfindLongestPrefixMatch (const pit::Entry &pitEntry, const measurements::EntryPredicate &pred=measurements::AnyEntry()) const
 perform a longest prefix match for pitEntry.getName() More...
 
shared_ptr< measurements::EntryfindExactMatch (const Name &name) const
 perform an exact match More...
 
void extendLifetime (measurements::Entry &entry, const time::nanoseconds &lifetime)
 extend lifetime of an entry More...
 
size_t size () const
 
template<typename K >
shared_ptr< Entry > findLongestPrefixMatchImpl (const K &key, const measurements::EntryPredicate &pred) const
 

Static Public Member Functions

static time::nanoseconds getInitialLifetime ()
 

Detailed Description

represents the Measurements table

Definition at line 75 of file measurements.hpp.

Constructor & Destructor Documentation

Member Function Documentation

shared_ptr< Entry > nfd::Measurements::get ( const Name name)

find or insert a Measurements entry for name

Definition at line 60 of file measurements.cpp.

References nfd::NameTree::lookup().

Referenced by Measurements().

shared_ptr< Entry > nfd::Measurements::get ( const fib::Entry fibEntry)

find or insert a Measurements entry for fibEntry.getPrefix()

Definition at line 67 of file measurements.cpp.

References nfd::NameTree::get().

shared_ptr< Entry > nfd::Measurements::get ( const pit::Entry pitEntry)

find or insert a Measurements entry for pitEntry.getName()

Definition at line 74 of file measurements.cpp.

References nfd::NameTree::get().

shared_ptr< Entry > nfd::Measurements::getParent ( const measurements::Entry child)

find or insert a Measurements entry for child's parent

Return values
nullptrif child is the root entry

Definition at line 81 of file measurements.cpp.

References nfd::NameTree::get(), and nfd::name_tree::Entry::getParent().

shared_ptr< Entry > nfd::Measurements::findLongestPrefixMatch ( const Name name,
const measurements::EntryPredicate pred = measurements::AnyEntry() 
) const

perform a longest prefix match for name

Definition at line 110 of file measurements.cpp.

shared_ptr< Entry > nfd::Measurements::findLongestPrefixMatch ( const pit::Entry pitEntry,
const measurements::EntryPredicate pred = measurements::AnyEntry() 
) const

perform a longest prefix match for pitEntry.getName()

Definition at line 117 of file measurements.cpp.

References nfd::NameTree::get().

shared_ptr< Entry > nfd::Measurements::findExactMatch ( const Name name) const

perform an exact match

Definition at line 125 of file measurements.cpp.

References nfd::NameTree::lookup().

time::nanoseconds nfd::Measurements::getInitialLifetime ( )
inlinestatic

Definition at line 153 of file measurements.hpp.

Referenced by Measurements().

void nfd::Measurements::extendLifetime ( measurements::Entry entry,
const time::nanoseconds &  lifetime 
)

extend lifetime of an entry

The entry will be kept until at least now()+lifetime.

Definition at line 134 of file measurements.cpp.

References nfd::scheduler::cancel(), nfd::NameTree::eraseEntryIfEmpty(), nfd::NameTree::get(), ndn::time::steady_clock::now(), and nfd::scheduler::schedule().

size_t nfd::Measurements::size ( ) const
inline

Definition at line 159 of file measurements.hpp.

Referenced by nfd::StatusServer::StatusServer().

template<typename K >
shared_ptr<Entry> nfd::Measurements::findLongestPrefixMatchImpl ( const K &  key,
const measurements::EntryPredicate pred 
) const

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