llarp::LinkFactory

LinkFactory is responsible for returning std::functions that create the link layer types.

#include <factory.hpp>

Public Types

Name
enum class LinkType { eLinkUTP, eLinkIWP, eLinkMempipe, eLinkUnknown}
using std::function< LinkLayer_ptr(std::shared_ptr< KeyManager >, GetRCFunc, LinkMessageHandler, SignBufferFunc, SessionEstablishedHandler, SessionRenegotiateHandler, TimeoutHandler, SessionClosedHandler, PumpDoneHandler)> Factory

Public Functions

Name
LinkType TypeFromName(std::string_view name)
get link type by name string if invalid returns eLinkUnspec
std::string NameFromType(LinkType t)
turns a link type into a string representation
Factory Obtain(LinkType t, bool permitInbound)
obtain a link factory of a certain type

Public Types Documentation

enum LinkType

Enumerator Value Description
eLinkUTP
eLinkIWP
eLinkMempipe
eLinkUnknown

using Factory

using llarp::LinkFactory::Factory =  std::function<LinkLayer_ptr( std::shared_ptr<KeyManager>, GetRCFunc, LinkMessageHandler, SignBufferFunc, SessionEstablishedHandler, SessionRenegotiateHandler, TimeoutHandler, SessionClosedHandler, PumpDoneHandler)>;

Public Functions Documentation

function TypeFromName

static LinkType TypeFromName(
    std::string_view name
)

get link type by name string if invalid returns eLinkUnspec

function NameFromType

static std::string NameFromType(
    LinkType t
)

turns a link type into a string representation

function Obtain

static Factory Obtain(
    LinkType t,
    bool permitInbound
)

obtain a link factory of a certain type


Updated on 2026-01-10 at 22:49:45 +0000