Container of PendingInterest, RegisteredPrefix, or InterestFilterRecord. More...
#include <record-container.hpp>
Public Types | |
using | Record = T |
using | Container = std::map< RecordId, Record > |
Public Member Functions | |
Record * | get (RecordId id) |
Retrieve record by ID. More... | |
template<typename ... TArgs> | |
Record & | put (RecordId id, TArgs &&... args) |
Insert a record with given ID. More... | |
RecordId | allocateId () |
template<typename ... TArgs> | |
Record & | insert (TArgs &&... args) |
Insert a record with newly assigned ID. More... | |
void | erase (RecordId id) |
void | clear () |
template<typename Visitor > | |
void | removeIf (const Visitor &f) |
Visit all records with the option to erase. More... | |
template<typename Visitor > | |
void | forEach (const Visitor &f) |
Visit all records. More... | |
NDN_CXX_NODISCARD bool | empty () const noexcept |
size_t | size () const noexcept |
Public Attributes | |
util::Signal< RecordContainer< T > > | onEmpty |
Signals when container becomes empty. More... | |
Container of PendingInterest, RegisteredPrefix, or InterestFilterRecord.
T | record type |
Definition at line 35 of file record-container.hpp.
using ndn::RecordContainer< T >::Record = T |
Definition at line 76 of file record-container.hpp.
using ndn::RecordContainer< T >::Container = std::map<RecordId, Record> |
Definition at line 77 of file record-container.hpp.
|
inline |
Retrieve record by ID.
Definition at line 82 of file record-container.hpp.
Referenced by ndn::Face::Impl::asyncUnregisterPrefix(), and ndn::Face::Impl::asyncUnsetInterestFilter().
|
inline |
Insert a record with given ID.
Definition at line 95 of file record-container.hpp.
Referenced by ndn::Face::Impl::asyncExpressInterest(), ndn::Face::Impl::asyncSetInterestFilter(), ndn::RecordContainer< PendingInterest >::insert(), and ndn::Face::Impl::registerPrefix().
|
inline |
Definition at line 109 of file record-container.hpp.
Referenced by ndn::RecordContainer< PendingInterest >::insert(), and ndn::Face::Impl::registerPrefix().
|
inline |
Insert a record with newly assigned ID.
Definition at line 118 of file record-container.hpp.
Referenced by ndn::Face::Impl::processIncomingInterest(), and ndn::Face::Impl::registerPrefix().
|
inline |
Definition at line 124 of file record-container.hpp.
Referenced by ndn::Face::Impl::asyncRemovePendingInterest(), ndn::Face::Impl::asyncUnregisterPrefix(), and ndn::Face::Impl::asyncUnsetInterestFilter().
|
inline |
Definition at line 133 of file record-container.hpp.
Referenced by ndn::Face::Impl::asyncRemoveAllPendingInterests(), and ndn::Face::Impl::shutdown().
|
inline |
Visit all records with the option to erase.
Visitor | function of type 'bool f(Record& record)' |
f | visitor function, return true to erase record |
Definition at line 145 of file record-container.hpp.
Referenced by ndn::RecordContainer< PendingInterest >::forEach(), ndn::Face::Impl::nackPendingInterests(), and ndn::Face::Impl::satisfyPendingInterests().
|
inline |
Visit all records.
Visitor | function of type 'void f(Record& record)' |
f | visitor function |
Definition at line 167 of file record-container.hpp.
Referenced by ndn::Face::Impl::dispatchInterest().
|
inlinenoexcept |
Definition at line 176 of file record-container.hpp.
Referenced by ndn::RecordContainer< PendingInterest >::erase(), ndn::Face::Impl::onEmptyPitOrNoRegisteredPrefixes(), and ndn::RecordContainer< PendingInterest >::removeIf().
|
inlinenoexcept |
Definition at line 182 of file record-container.hpp.
util::Signal<RecordContainer<T> > ndn::RecordContainer< T >::onEmpty |
Signals when container becomes empty.
Definition at line 190 of file record-container.hpp.
Referenced by ndn::RecordContainer< PendingInterest >::clear(), ndn::RecordContainer< PendingInterest >::erase(), ndn::Face::Impl::Impl(), and ndn::RecordContainer< PendingInterest >::removeIf().