NLSR-to-sync interaction point. More...
#include <sync-logic-handler.hpp>
Classes | |
class | Error |
Public Types | |
using | IsLsaNew = std::function< bool(const ndn::Name &routerName, Lsa::Type lsaType, uint64_t seqNo, uint64_t inFace) > |
Public Member Functions | |
SyncLogicHandler (ndn::Face &face, ndn::KeyChain &keyChain, IsLsaNew isLsaNew, const SyncLogicOptions &opts) | |
void | publishRoutingUpdate (Lsa::Type type, uint64_t seqNo) |
Instruct ChronoSync to publish an update. More... | |
Public Attributes | |
OnNewLsa | onNewLsa |
NLSR-to-sync interaction point.
This class serves as the abstraction for the syncing portion of NLSR and its components.
Definition at line 56 of file sync-logic-handler.hpp.
using nlsr::SyncLogicHandler::IsLsaNew = std::function< bool (const ndn::Name& routerName, Lsa::Type lsaType, uint64_t seqNo, uint64_t inFace) > |
Definition at line 65 of file sync-logic-handler.hpp.
nlsr::SyncLogicHandler::SyncLogicHandler | ( | ndn::Face & | face, |
ndn::KeyChain & | keyChain, | ||
IsLsaNew | isLsaNew, | ||
const SyncLogicOptions & | opts | ||
) |
Definition at line 33 of file sync-logic-handler.cpp.
void nlsr::SyncLogicHandler::publishRoutingUpdate | ( | Lsa::Type | type, |
uint64_t | seqNo | ||
) |
Instruct ChronoSync to publish an update.
This function instructs sync to push an update into the network, based on whatever the state of the sequencing manager is when this is called. Since each ChronoSync instance maintains its own PIT, doing this satisfies those interests so that other routers know a sync update is available.
Definition at line 111 of file sync-logic-handler.cpp.
OnNewLsa nlsr::SyncLogicHandler::onNewLsa |
Definition at line 107 of file sync-logic-handler.hpp.