Aleph-w 3.0
A C++ Library for Data Structures and Algorithms
Loading...
Searching...
No Matches
Event_Table< void *(void *)> Class Referenceabstract

Specialization of Event_Table for legacy void*(void*) signature. More...

#include <driven_table.H>

Public Types

using Event_Handler = std::function< void *(void *)>
 

Public Member Functions

virtual size_t size () const =0
 
virtual ~Event_Table ()=default
 
template<typename Callable >
void register_event (const size_t index, Callable &&fct)
 
template<typename Callable >
size_t register_event (Callable &&fct)
 
void unregister_event (const size_t index)
 
bool is_registered (const size_t index) const
 
bool check (const size_t index, void *(*fct)(void *)) const
 
voidexecute_event (const size_t index, void *input=nullptr) const
 

Protected Member Functions

virtual const Event_Handlerread_table (size_t i) const =0
 
virtual void write_table (size_t i, Event_Handler &&event_fct)=0
 
virtual void clear_slot (size_t i)=0
 

Private Member Functions

void append_event_to_table (Event_Handler &&fct)
 

Detailed Description

Specialization of Event_Table for legacy void*(void*) signature.

Provides backward compatibility with the old Event_Table interface.

Definition at line 268 of file driven_table.H.

Member Typedef Documentation

◆ Event_Handler

using Event_Table< void *(void *)>::Event_Handler = std::function<void*(void*)>

Definition at line 271 of file driven_table.H.

Constructor & Destructor Documentation

◆ ~Event_Table()

virtual Event_Table< void *(void *)>::~Event_Table ( )
virtualdefault

Member Function Documentation

◆ append_event_to_table()

void Event_Table< void *(void *)>::append_event_to_table ( Event_Handler &&  fct)
inlineprivate

◆ check()

bool Event_Table< void *(void *)>::check ( const size_t  index,
void *(*)(void *)  fct 
) const
inline

◆ clear_slot()

virtual void Event_Table< void *(void *)>::clear_slot ( size_t  i)
protectedpure virtual

◆ execute_event()

void * Event_Table< void *(void *)>::execute_event ( const size_t  index,
void input = nullptr 
) const
inline

◆ is_registered()

bool Event_Table< void *(void *)>::is_registered ( const size_t  index) const
inline

◆ read_table()

virtual const Event_Handler * Event_Table< void *(void *)>::read_table ( size_t  i) const
protectedpure virtual

◆ register_event() [1/2]

template<typename Callable >
size_t Event_Table< void *(void *)>::register_event ( Callable &&  fct)
inline

◆ register_event() [2/2]

template<typename Callable >
void Event_Table< void *(void *)>::register_event ( const size_t  index,
Callable &&  fct 
)
inline

◆ size()

virtual size_t Event_Table< void *(void *)>::size ( ) const
pure virtual

◆ unregister_event()

◆ write_table()

virtual void Event_Table< void *(void *)>::write_table ( size_t  i,
Event_Handler &&  event_fct 
)
protectedpure virtual

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