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

computes FibUpdates based on updates to the RIB and sends them to NFD More...

#include <fib-updater.hpp>

Inheritance diagram for nfd::rib::FibUpdater:
Collaboration diagram for nfd::rib::FibUpdater:

Classes

class  Error
 

Public Types

typedef std::list< FibUpdateFibUpdateList
 
typedef function< void(RibUpdateList inheritedRoutes)> FibUpdateSuccessCallback
 
typedef function< void(uint32_t code, const std::string &error)> FibUpdateFailureCallback
 

Public Member Functions

 FibUpdater (Rib &rib, ndn::nfd::Controller &controller)
 
void computeAndSendFibUpdates (const RibUpdateBatch &batch, const FibUpdateSuccessCallback &onSuccess, const FibUpdateFailureCallback &onFailure)
 computes FibUpdates using the provided RibUpdateBatch and then sends the updates to NFD's FIB More...
 

Detailed Description

computes FibUpdates based on updates to the RIB and sends them to NFD

Definition at line 41 of file fib-updater.hpp.

Member Typedef Documentation

Definition at line 55 of file fib-updater.hpp.

typedef function<void(RibUpdateList inheritedRoutes)> nfd::rib::FibUpdater::FibUpdateSuccessCallback

Definition at line 57 of file fib-updater.hpp.

typedef function<void(uint32_t code, const std::string& error)> nfd::rib::FibUpdater::FibUpdateFailureCallback

Definition at line 58 of file fib-updater.hpp.

Constructor & Destructor Documentation

nfd::rib::FibUpdater::FibUpdater ( Rib rib,
ndn::nfd::Controller controller 
)

Definition at line 42 of file fib-updater.cpp.

References nfd::rib::Rib::setFibUpdater().

Member Function Documentation

void nfd::rib::FibUpdater::computeAndSendFibUpdates ( const RibUpdateBatch batch,
const FibUpdateSuccessCallback onSuccess,
const FibUpdateFailureCallback onFailure 
)

computes FibUpdates using the provided RibUpdateBatch and then sends the updates to NFD's FIB

Note
Caller must guarantee that the previous batch has either succeeded or failed before calling this method

Definition at line 50 of file fib-updater.cpp.

References nfd::rib::FibUpdate::action, nfd::rib::FibUpdate::ADD_NEXTHOP, ndn::tlv::nfd::ControlParameters, nfd::rib::FibUpdate::cost, nfd::rib::Route::cost, nfd::rib::FibUpdate::createAddUpdate(), nfd::rib::FibUpdate::createRemoveUpdate(), nfd::rib::Rib::end(), nfd::rib::RibEntry::eraseRoute(), ndn::nfd::Controller::ERROR_TIMEOUT, nfd::rib::Route::expires, nfd::rib::FibUpdate::faceId, nfd::rib::Route::faceId, nfd::rib::Rib::find(), nfd::rib::Rib::findDescendantsForNonInsertedName(), nfd::rib::Rib::findParent(), nfd::rib::RibEntry::findRoute(), nfd::rib::Route::flags, nfd::rib::RibEntry::getChildren(), nfd::rib::RibUpdateBatch::getFaceId(), nfd::rib::RibEntry::getInheritedRoutes(), nfd::rib::RibEntry::getName(), nfd::rib::RibUpdate::getName(), nfd::rib::RibEntry::getNRoutes(), nfd::rib::RibUpdate::getRoute(), nfd::rib::RibEntry::getRouteWithLowestCostAndChildInheritByFaceId(), nfd::rib::RibEntry::getRouteWithLowestCostByFaceId(), nfd::rib::RibEntry::hasCapture(), nfd::rib::RibEntry::hasChildInheritOnFaceId(), nfd::rib::RibEntry::hasFaceId(), nfd::rib::RibEntry::hasInheritedRoute(), nfd::rib::Route::isCapture(), nfd::rib::Route::isChildInherit(), nfd::rib::FibUpdate::name, NFD_LOG_DEBUG, nfd::rib::RibUpdate::REGISTER, nfd::rib::RibUpdate::REMOVE_FACE, nfd::rib::FibUpdate::REMOVE_NEXTHOP, nfd::rib::RibUpdate::setAction(), nfd::rib::RibUpdate::setName(), nfd::rib::RibUpdate::setRoute(), ndn::nfd::Controller::start(), and nfd::rib::RibUpdate::UNREGISTER.

Referenced by nfd::rib::Rib::beginRemoveFace().


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