llarp::ILinkManager
Inherited by llarp::LinkManager
Public Functions
| Name | |
|---|---|
| virtual | ~ILinkManager() =default |
| virtual LinkLayer_ptr | GetCompatibleLink(const RouterContact & rc) const =0 |
| virtual IOutboundSessionMaker * | GetSessionMaker() const =0 |
| virtual bool | SendTo(const RouterID & remote, const llarp_buffer_t & buf, ILinkSession::CompletionHandler completed, uint16_t priority =0) =0 |
| virtual bool | HasSessionTo(const RouterID & remote) const =0 |
| virtual bool | HasOutboundSessionTo(const RouterID & remote) const =0 |
| virtual std::optional< bool > | SessionIsClient(RouterID remote) const =0 return true if the session with this pubkey is a client return false if the session with this pubkey is a router return std::nullopt we have no session with this pubkey |
| virtual void | PumpLinks() =0 |
| virtual void | AddLink(LinkLayer_ptr link, bool inbound =false) =0 |
| virtual bool | StartLinks() =0 |
| virtual void | Stop() =0 |
| virtual void | PersistSessionUntil(const RouterID & remote, llarp_time_t until) =0 |
| virtual void | ForEachPeer(std::function< void(const ILinkSession *, bool)> visit, bool randomize =false) const =0 |
| virtual void | ForEachPeer(std::function< void(ILinkSession *)> visit) =0 |
| virtual void | ForEachInboundLink(std::function< void(LinkLayer_ptr)> visit) const =0 |
| virtual void | ForEachOutboundLink(std::function< void(LinkLayer_ptr)> visit) const =0 |
| virtual void | DeregisterPeer(RouterID remote) =0 close all connections to this peer remove all link layer commits |
| virtual size_t | NumberOfConnectedRouters() const =0 |
| virtual size_t | NumberOfConnectedClients() const =0 |
| virtual size_t | NumberOfPendingConnections() const =0 |
| virtual bool | GetRandomConnectedRouter(RouterContact & router) const =0 |
| virtual void | CheckPersistingSessions(llarp_time_t now) =0 |
Public Functions Documentation
function ~ILinkManager
virtual ~ILinkManager() =default
function GetCompatibleLink
virtual LinkLayer_ptr GetCompatibleLink(
const RouterContact & rc
) const =0
Reimplemented by: llarp::LinkManager::GetCompatibleLink
function GetSessionMaker
virtual IOutboundSessionMaker * GetSessionMaker() const =0
Reimplemented by: llarp::LinkManager::GetSessionMaker
function SendTo
virtual bool SendTo(
const RouterID & remote,
const llarp_buffer_t & buf,
ILinkSession::CompletionHandler completed,
uint16_t priority =0
) =0
Reimplemented by: llarp::LinkManager::SendTo
function HasSessionTo
virtual bool HasSessionTo(
const RouterID & remote
) const =0
Reimplemented by: llarp::LinkManager::HasSessionTo
function HasOutboundSessionTo
virtual bool HasOutboundSessionTo(
const RouterID & remote
) const =0
Reimplemented by: llarp::LinkManager::HasOutboundSessionTo
function SessionIsClient
virtual std::optional< bool > SessionIsClient(
RouterID remote
) const =0
return true if the session with this pubkey is a client return false if the session with this pubkey is a router return std::nullopt we have no session with this pubkey
Reimplemented by: llarp::LinkManager::SessionIsClient
function PumpLinks
virtual void PumpLinks() =0
Reimplemented by: llarp::LinkManager::PumpLinks
function AddLink
virtual void AddLink(
LinkLayer_ptr link,
bool inbound =false
) =0
Reimplemented by: llarp::LinkManager::AddLink
function StartLinks
virtual bool StartLinks() =0
Reimplemented by: llarp::LinkManager::StartLinks
function Stop
virtual void Stop() =0
Reimplemented by: llarp::LinkManager::Stop
function PersistSessionUntil
virtual void PersistSessionUntil(
const RouterID & remote,
llarp_time_t until
) =0
Reimplemented by: llarp::LinkManager::PersistSessionUntil
function ForEachPeer
virtual void ForEachPeer(
std::function< void(const ILinkSession *, bool)> visit,
bool randomize =false
) const =0
Reimplemented by: llarp::LinkManager::ForEachPeer
function ForEachPeer
virtual void ForEachPeer(
std::function< void(ILinkSession *)> visit
) =0
Reimplemented by: llarp::LinkManager::ForEachPeer
function ForEachInboundLink
virtual void ForEachInboundLink(
std::function< void(LinkLayer_ptr)> visit
) const =0
Reimplemented by: llarp::LinkManager::ForEachInboundLink
function ForEachOutboundLink
virtual void ForEachOutboundLink(
std::function< void(LinkLayer_ptr)> visit
) const =0
Reimplemented by: llarp::LinkManager::ForEachOutboundLink
function DeregisterPeer
virtual void DeregisterPeer(
RouterID remote
) =0
close all connections to this peer remove all link layer commits
Reimplemented by: llarp::LinkManager::DeregisterPeer
function NumberOfConnectedRouters
virtual size_t NumberOfConnectedRouters() const =0
Reimplemented by: llarp::LinkManager::NumberOfConnectedRouters
function NumberOfConnectedClients
virtual size_t NumberOfConnectedClients() const =0
Reimplemented by: llarp::LinkManager::NumberOfConnectedClients
function NumberOfPendingConnections
virtual size_t NumberOfPendingConnections() const =0
Reimplemented by: llarp::LinkManager::NumberOfPendingConnections
function GetRandomConnectedRouter
virtual bool GetRandomConnectedRouter(
RouterContact & router
) const =0
Reimplemented by: llarp::LinkManager::GetRandomConnectedRouter
function CheckPersistingSessions
virtual void CheckPersistingSessions(
llarp_time_t now
) =0
Reimplemented by: llarp::LinkManager::CheckPersistingSessions
Updated on 2026-01-10 at 22:49:45 +0000