NLSR-to-ChronoSync interaction point. More...
#include <sync-logic-handler.hpp>
Classes | |
class | Error |
Public Types | |
using | IsLsaNew = std::function< bool(const ndn::Name &, const Lsa::Type &lsaType, const uint64_t &, uint64_t)> |
Public Member Functions | |
SyncLogicHandler (ndn::Face &face, ndn::KeyChain &keyChain, IsLsaNew isLsaNew, const ConfParameter &conf) | |
void | publishRoutingUpdate (const Lsa::Type &type, const uint64_t &seqNo) |
Instruct ChronoSync to publish an update. More... | |
Public Attributes | |
OnNewLsa | onNewLsa |
NLSR-to-ChronoSync interaction point.
This class serves as the abstraction for the syncing portion of NLSR and its components. NLSR has no particular reliance on ChronoSync, except that the NLSR source would need to be modified for use with other sync protocols.
Definition at line 40 of file sync-logic-handler.hpp.
using nlsr::SyncLogicHandler::IsLsaNew = std::function<bool(const ndn::Name&, const Lsa::Type& lsaType, const uint64_t&, uint64_t)> |
Definition at line 49 of file sync-logic-handler.hpp.
nlsr::SyncLogicHandler::SyncLogicHandler | ( | ndn::Face & | face, |
ndn::KeyChain & | keyChain, | ||
IsLsaNew | isLsaNew, | ||
const ConfParameter & | conf | ||
) |
Definition at line 35 of file sync-logic-handler.cpp.
void nlsr::SyncLogicHandler::publishRoutingUpdate | ( | const Lsa::Type & | type, |
const 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 116 of file sync-logic-handler.cpp.
OnNewLsa nlsr::SyncLogicHandler::onNewLsa |
Definition at line 90 of file sync-logic-handler.hpp.