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

#include <face-impl.hpp>

Inheritance diagram for nfd::Face::Impl:
Collaboration diagram for nfd::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 (const Data &data)
 
void processInterestFilters (const Interest &interest)
 
void asyncExpressInterest (const shared_ptr< const Interest > &interest, const OnData &onData, const OnTimeout &onTimeout)
 
void asyncRemovePendingInterest (const PendingInterestId *pendingInterestId)
 
void asyncPutData (const shared_ptr< const Data > &data)
 
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)
 

Friends

class Face
 Copyright (c) 2013-2015 Regents of the University of California. More...
 

Detailed Description

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

Member Typedef Documentation

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

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

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

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

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

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

Constructor & Destructor Documentation

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

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

Member Function Documentation

void nfd::Face::Impl::satisfyPendingInterests ( const Data data)
inline

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

Referenced by nfd::Face::Impl::NfdFace::sendData().

void nfd::Face::Impl::processInterestFilters ( const Interest interest)
inline

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

References ndn::Interest::getName().

Referenced by nfd::Face::Impl::NfdFace::sendInterest().

void nfd::Face::Impl::asyncExpressInterest ( const shared_ptr< const Interest > &  interest,
const OnData onData,
const OnTimeout onTimeout 
)
inline

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

References nfd::Face::onReceiveInterest.

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

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

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

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

References nfd::Face::onReceiveData.

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

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

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

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

const RegisteredPrefixId* nfd::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
void nfd::Face::Impl::afterPrefixRegistered ( const shared_ptr< RegisteredPrefix > &  registeredPrefix,
const RegisterPrefixSuccessCallback onSuccess 
)
inline

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

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

void nfd::Face::Impl::asyncUnregisterPrefix ( const RegisteredPrefixId *  registeredPrefixId,
const UnregisterPrefixSuccessCallback onSuccess,
const UnregisterPrefixFailureCallback onFailure 
)
inline
void nfd::Face::Impl::finalizeUnregisterPrefix ( RegisteredPrefixTable::iterator  item,
const UnregisterPrefixSuccessCallback onSuccess 
)
inline

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

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

Friends And Related Function Documentation

friend class Face
friend

Copyright (c) 2013-2015 Regents of the University of California.

This file is part of ndn-cxx library (NDN C++ library with eXperimental eXtensions).

ndn-cxx library is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

ndn-cxx library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.

You should have received copies of the GNU General Public License and GNU Lesser General Public License along with ndn-cxx, e.g., in COPYING.md file. If not, see http://www.gnu.org/licenses/.

See AUTHORS.md for complete list of ndn-cxx authors and contributors.

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


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