jubilant-funicular
Public Types | Public Member Functions | Private Member Functions | Private Attributes | List of all members
nta::EventTemplate< RecipientEnum, FuncTypes > Class Template Reference

#include <Event.h>

Collaboration diagram for nta::EventTemplate< RecipientEnum, FuncTypes >:
Collaboration graph
[legend]

Public Types

using enum_type = RecipientEnum
 

Public Member Functions

template<RecipientEnum e, typename Func >
void define_for (Func &&func)
 
template<RecipientEnum e>
void undefine_for ()
 
template<RecipientEnum e, typename... Args>
void enact (Args &&... args) const
 
template<typename... Args>
void operator() (RecipientEnum e, Args &&... args) const
 
template<typename... Args>
void operator() (Args &&... args) const
 

Private Member Functions

template<std::size_t idx, typename... Args>
void enact_helper (Args &&... args) const
 
template<std::size_t i, typename... Args>
void operator_helper (std::size_t e, Args &&... args) const
 
template<std::size_t i, typename... Args>
void operator2_helper (Args &&... args) const
 

Private Attributes

std::tuple< utils::Option< std::function< FuncTypes > >... > m_actions
 

Detailed Description

template<typename RecipientEnum, typename... FuncTypes>
class nta::EventTemplate< RecipientEnum, FuncTypes >

A template class for sending arbitrary type-safe Events

See Event_tests.cpp for example usage

Definition at line 13 of file Event.h.


The documentation for this class was generated from the following file: