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

implementation detail of Face More...

#include <face-impl.hpp>

Inheritance diagram for ndn::Face::Impl:
Collaboration diagram for ndn::Face::Impl:

Public Types

using PendingInterestTable = RecordContainer< PendingInterest >
 
using InterestFilterTable = RecordContainer< InterestFilterRecord >
 
using RegisteredPrefixTable = RecordContainer< RegisteredPrefix >
 

Public Member Functions

 Impl (Face &face, KeyChain &keyChain)
 
void asyncExpressInterest (RecordId id, shared_ptr< const Interest > interest, const DataCallback &afterSatisfied, const NackCallback &afterNacked, const TimeoutCallback &afterTimeout)
 
void asyncRemovePendingInterest (RecordId id)
 
void asyncRemoveAllPendingInterests ()
 
bool satisfyPendingInterests (const Data &data)
 
optional< lp::NacknackPendingInterests (const lp::Nack &nack)
 
void asyncSetInterestFilter (RecordId id, const InterestFilter &filter, const InterestCallback &onInterest)
 
void asyncUnsetInterestFilter (RecordId id)
 
void processIncomingInterest (shared_ptr< const Interest > interest)
 
void dispatchInterest (PendingInterest &entry, const Interest &interest)
 
void asyncPutData (const Data &data)
 
void asyncPutNack (const lp::Nack &nack)
 
RecordId registerPrefix (const Name &prefix, const RegisterPrefixSuccessCallback &onSuccess, const RegisterPrefixFailureCallback &onFailure, uint64_t flags, const nfd::CommandOptions &options, const optional< InterestFilter > &filter, const InterestCallback &onInterest)
 
void asyncUnregisterPrefix (RecordId id, const UnregisterPrefixSuccessCallback &onSuccess, const UnregisterPrefixFailureCallback &onFailure)
 
void ensureConnected (bool wantResume)
 
void onEmptyPitOrNoRegisteredPrefixes ()
 
void shutdown ()
 

Friends

class Face
 

Detailed Description

implementation detail of Face

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

Member Typedef Documentation

◆ PendingInterestTable

◆ InterestFilterTable

◆ RegisteredPrefixTable

Constructor & Destructor Documentation

◆ Impl()

ndn::Face::Impl::Impl ( Face face,
KeyChain keyChain 
)
inline

Member Function Documentation

◆ asyncExpressInterest()

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

◆ asyncRemovePendingInterest()

void ndn::Face::Impl::asyncRemovePendingInterest ( RecordId  id)
inline

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

References ndn::RecordContainer< T >::erase().

◆ asyncRemoveAllPendingInterests()

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

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

References ndn::RecordContainer< T >::clear().

◆ satisfyPendingInterests()

bool ndn::Face::Impl::satisfyPendingInterests ( const Data data)
inline
Returns
whether the Data should be sent to the forwarder, if it does not come from the forwarder

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

References ndn::APP, ndn::PendingInterest::getInterest(), ndn::PendingInterest::getOrigin(), NDN_LOG_DEBUG, and ndn::RecordContainer< T >::removeIf().

Referenced by asyncPutData().

◆ nackPendingInterests()

optional<lp::Nack> ndn::Face::Impl::nackPendingInterests ( const lp::Nack nack)
inline

◆ asyncSetInterestFilter()

void ndn::Face::Impl::asyncSetInterestFilter ( RecordId  id,
const InterestFilter filter,
const InterestCallback onInterest 
)
inline

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

References NDN_LOG_INFO, and ndn::RecordContainer< T >::put().

◆ asyncUnsetInterestFilter()

void ndn::Face::Impl::asyncUnsetInterestFilter ( RecordId  id)
inline

◆ processIncomingInterest()

void ndn::Face::Impl::processIncomingInterest ( shared_ptr< const Interest interest)
inline

◆ dispatchInterest()

◆ asyncPutData()

void ndn::Face::Impl::asyncPutData ( const Data data)
inline

◆ asyncPutNack()

◆ registerPrefix()

RecordId ndn::Face::Impl::registerPrefix ( const Name prefix,
const RegisterPrefixSuccessCallback onSuccess,
const RegisterPrefixFailureCallback onFailure,
uint64_t  flags,
const nfd::CommandOptions options,
const optional< InterestFilter > &  filter,
const InterestCallback onInterest 
)
inline

◆ asyncUnregisterPrefix()

◆ ensureConnected()

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

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

Referenced by asyncExpressInterest(), asyncPutData(), and asyncPutNack().

◆ onEmptyPitOrNoRegisteredPrefixes()

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

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

References ndn::RecordContainer< T >::empty().

Referenced by Impl().

◆ shutdown()

void ndn::Face::Impl::shutdown ( )
inline

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

References ndn::RecordContainer< T >::clear().

Friends And Related Function Documentation

◆ Face

friend class Face
friend

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


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