vt::pipe::PipeManagerBase struct

Derived classes

struct PipeManagerTL virtual
struct PipeManagerTyped virtual

Public types

using PipeStateType = PipeState
template<typename MsgT>
using FuncMsgType = std::function<void(MsgT*)>
template<typename MsgT, typename ContextT>
using FuncMsgCtxType = std::function<void(MsgT*, ContextT*)>
template<typename ContextT>
using FuncCtxType = std::function<void(ContextT*)>
using FuncType = std::function<void(void)>
using FuncVoidType = std::function<void(void)>
using DispatchFuncType = PipeState::DispatchFuncType

Public static functions

static void triggerCallbackHan(CallbackMsg* msg)
template<typename MsgT>
static void triggerCallbackMsgHan(MsgT* msg)

Constructors, destructors, conversion operators

PipeManagerBase() defaulted
~PipeManagerBase() virtual

Public functions

auto makeCallbackFuncVoid(bool const& persist, FuncType fn, bool const& dispatch = false, PipeRefType num_signals = -1, PipeRefType num_listeners = 1) -> PipeType
template<typename MsgT>
auto makeCallbackFunc(bool const& persist, FuncMsgType<MsgT> fn, bool const& dispatch = false, PipeRefType num_signals = -1, PipeRefType num_listeners = 1) -> PipeType
template<typename MsgT>
void addListener(PipeType const& pipe, FuncMsgType<MsgT> fn)
void addListenerVoid(PipeType const& pipe, FuncType fn)

Protected functions

template<typename MsgT, typename ListenerT>
auto makeCallbackAny(bool const& persist, ListenerT&& fn, bool const& dispatch = false, PipeRefType num_signals = -1, PipeRefType num_listeners = 1) -> PipeType
template<typename MsgT, typename ListenerT>
void addListenerAny(PipeType const& pipe, ListenerT&& fn)
template<typename MsgT>
void triggerPipeTyped(PipeType const& pipe, MsgT* msg)
template<typename MsgT>
void triggerPipeUnknown(PipeType const& pipe, MsgT* msg)
template<typename SignalT, typename ListenerT>
void registerCallback(PipeType const& pipe, ListenerT&& listener, bool update_state = true)
void triggerPipe(PipeType const& pipe)
void generalSignalTrigger(PipeType const& pipe)
void newPipeState(PipeType const& pipe, bool persist, bool typeless, PipeRefType num_sig, PipeRefType num_listeners, PipeRefType num_reg_listeners, DispatchFuncType fn = nullptr)
auto makePipeID(bool const persist, bool const send_back) -> PipeType

Friends

void triggerPipe(PipeType const& pipe)
template<typename MsgT>
void triggerPipeTyped(PipeType const& pipe, MsgT* msg)
template<typename MsgT>
void triggerPipeUnknown(PipeType const& pipe, MsgT* msg)