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

#include <face-impl.hpp>

Inheritance diagram for face::Face::Impl:
Collaboration diagram for face::Face::Impl:

Public Types

typedef ContainerWithOnEmptySignal< shared_ptr< PendingInterest > > PendingInterestTable
 
typedef std::list< shared_ptr< InterestFilterRecord > > InterestFilterTable
 
typedef ContainerWithOnEmptySignal< shared_ptr< RegisteredPrefix > > RegisteredPrefixTable
 

Public Member Functions

 Impl (Face &face)
 
void satisfyPendingInterests (Data &data)
 
void nackPendingInterests (const lp::Nack &nack)
 
void processInterestFilters (Interest &interest)
 
void ensureConnected (bool wantResume)
 
void asyncExpressInterest (shared_ptr< const Interest > interest, const DataCallback &afterSatisfied, const NackCallback &afterNacked, const TimeoutCallback &afterTimeout)
 
void asyncRemovePendingInterest (const PendingInterestId *pendingInterestId)
 
void asyncRemoveAllPendingInterests ()
 
void asyncPutData (const shared_ptr< const Data > &data)
 
void asyncPutNack (shared_ptr< const lp::Nack > nack)
 
void asyncSetInterestFilter (const shared_ptr< InterestFilterRecord > &interestFilterRecord)
 
void asyncUnsetInterestFilter (const InterestFilterId *interestFilterId)
 
const RegisteredPrefixId * registerPrefix (const Name &prefix, const shared_ptr< InterestFilterRecord > &filter, const RegisterPrefixSuccessCallback &onSuccess, const RegisterPrefixFailureCallback &onFailure, uint64_t flags, const nfd::CommandOptions &options)
 
void afterPrefixRegistered (const shared_ptr< RegisteredPrefix > &registeredPrefix, const RegisterPrefixSuccessCallback &onSuccess)
 
void asyncUnregisterPrefix (const RegisteredPrefixId *registeredPrefixId, const UnregisterPrefixSuccessCallback &onSuccess, const UnregisterPrefixFailureCallback &onFailure)
 
void finalizeUnregisterPrefix (RegisteredPrefixTable::iterator item, const UnregisterPrefixSuccessCallback &onSuccess)
 
void onEmptyPitOrNoRegisteredPrefixes ()
 

Friends

class Face
 

Detailed Description

Definition at line 48 of file face-impl.hpp.

Member Typedef Documentation

§ PendingInterestTable

typedef ContainerWithOnEmptySignal<shared_ptr<PendingInterest> > face::Face::Impl::PendingInterestTable

Definition at line 51 of file face-impl.hpp.

§ InterestFilterTable

typedef std::list<shared_ptr<InterestFilterRecord> > face::Face::Impl::InterestFilterTable

Definition at line 52 of file face-impl.hpp.

§ RegisteredPrefixTable

typedef ContainerWithOnEmptySignal<shared_ptr<RegisteredPrefix> > face::Face::Impl::RegisteredPrefixTable

Definition at line 53 of file face-impl.hpp.

Constructor & Destructor Documentation

§ Impl()

face::Face::Impl::Impl ( Face face)
inlineexplicit

Member Function Documentation

§ satisfyPendingInterests()

void face::Face::Impl::satisfyPendingInterests ( Data &  data)
inline

Definition at line 76 of file face-impl.hpp.

§ nackPendingInterests()

void face::Face::Impl::nackPendingInterests ( const lp::Nack nack)
inline

Definition at line 92 of file face-impl.hpp.

References ndn::lp::Nack::getInterest(), and ndn::tlv::Interest.

§ processInterestFilters()

void face::Face::Impl::processInterestFilters ( Interest &  interest)
inline

Definition at line 110 of file face-impl.hpp.

§ ensureConnected()

void face::Face::Impl::ensureConnected ( bool  wantResume)
inline

§ asyncExpressInterest()

void face::Face::Impl::asyncExpressInterest ( shared_ptr< const Interest >  interest,
const DataCallback afterSatisfied,
const NackCallback afterNacked,
const TimeoutCallback afterTimeout 
)
inline

§ asyncRemovePendingInterest()

void face::Face::Impl::asyncRemovePendingInterest ( const PendingInterestId *  pendingInterestId)
inline

Definition at line 163 of file face-impl.hpp.

§ asyncRemoveAllPendingInterests()

void face::Face::Impl::asyncRemoveAllPendingInterests ( )
inline

Definition at line 169 of file face-impl.hpp.

§ asyncPutData()

void face::Face::Impl::asyncPutData ( const shared_ptr< const Data > &  data)
inline

§ asyncPutNack()

void face::Face::Impl::asyncPutNack ( shared_ptr< const lp::Nack nack)
inline

§ asyncSetInterestFilter()

void face::Face::Impl::asyncSetInterestFilter ( const shared_ptr< InterestFilterRecord > &  interestFilterRecord)
inline

Definition at line 210 of file face-impl.hpp.

§ asyncUnsetInterestFilter()

void face::Face::Impl::asyncUnsetInterestFilter ( const InterestFilterId *  interestFilterId)
inline

Definition at line 216 of file face-impl.hpp.

§ registerPrefix()

const RegisteredPrefixId* face::Face::Impl::registerPrefix ( const Name &  prefix,
const shared_ptr< InterestFilterRecord > &  filter,
const RegisterPrefixSuccessCallback onSuccess,
const RegisterPrefixFailureCallback onFailure,
uint64_t  flags,
const nfd::CommandOptions &  options 
)
inline

§ afterPrefixRegistered()

void face::Face::Impl::afterPrefixRegistered ( const shared_ptr< RegisteredPrefix > &  registeredPrefix,
const RegisterPrefixSuccessCallback onSuccess 
)
inline

Definition at line 256 of file face-impl.hpp.

Referenced by face::Face::Impl::registerPrefix().

§ asyncUnregisterPrefix()

void face::Face::Impl::asyncUnregisterPrefix ( const RegisteredPrefixId *  registeredPrefixId,
const UnregisterPrefixSuccessCallback onSuccess,
const UnregisterPrefixFailureCallback onFailure 
)
inline

§ finalizeUnregisterPrefix()

void face::Face::Impl::finalizeUnregisterPrefix ( RegisteredPrefixTable::iterator  item,
const UnregisterPrefixSuccessCallback onSuccess 
)
inline

Definition at line 307 of file face-impl.hpp.

Referenced by face::Face::Impl::asyncUnregisterPrefix().

§ onEmptyPitOrNoRegisteredPrefixes()

void face::Face::Impl::onEmptyPitOrNoRegisteredPrefixes ( )
inline

Definition at line 318 of file face-impl.hpp.

References face::Face::Impl::Face.

Referenced by face::Face::Impl::Impl().

Friends And Related Function Documentation

§ Face

friend class Face
friend

Definition at line 333 of file face-impl.hpp.

Referenced by face::Face::Impl::onEmptyPitOrNoRegisteredPrefixes().


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