neoGFX
Cross-platform C++ app/game engine
neolib::plugin_events::i_event< Arguments > Class Template Referenceabstract

#include <i_plugin_event.hpp>

Public Types

typedef i_event_callback< Arguments... > abstract_callback
 
typedef event_callback< Arguments... > callback
 

Public Member Functions

virtual ~i_event ()=default
 
virtual const neolib::i_eventraw_event () const =0
 
virtual neolib::i_eventraw_event ()=0
 
virtual void pre_trigger () const =0
 
virtual bool trigger (Arguments... aArguments) const =0
 
virtual bool sync_trigger (Arguments... aArguments) const =0
 
virtual void async_trigger (Arguments... aArguments) const =0
 
virtual bool accepted () const =0
 
virtual void accept () const =0
 
virtual void ignore () const =0
 
event_handle subscribe (const callback &aCallback, const void *aUniqueId=nullptr) const
 
event_handle operator() (const callback &aCallback, const void *aUniqueId=nullptr) const
 
template<typename T >
event_handle subscribe (const callback &aCallback, const T *aUniqueIdObject) const
 
template<typename T >
event_handle operator() (const callback &aCallback, const T *aUniqueIdObject) const
 
template<typename T >
event_handle subscribe (const callback &aCallback, const T &aUniqueIdObject) const
 
template<typename T >
event_handle operator() (const callback &aCallback, const T &aUniqueIdObject) const
 
void unsubscribe (event_handle aHandle) const
 
void unsubscribe (const void *aUniqueId) const
 
template<typename T >
void unsubscribe (const T *aUniqueIdObject) const
 
template<typename T >
void unsubscribe (const T &aUniqueIdObject) const
 

Detailed Description

template<typename... Arguments>
class neolib::plugin_events::i_event< Arguments >

Definition at line 87 of file i_plugin_event.hpp.

Member Typedef Documentation

◆ abstract_callback

template<typename... Arguments>
typedef i_event_callback<Arguments...> neolib::plugin_events::i_event< Arguments >::abstract_callback

Definition at line 90 of file i_plugin_event.hpp.

◆ callback

template<typename... Arguments>
typedef event_callback<Arguments...> neolib::plugin_events::i_event< Arguments >::callback

Definition at line 91 of file i_plugin_event.hpp.

Constructor & Destructor Documentation

◆ ~i_event()

template<typename... Arguments>
virtual neolib::plugin_events::i_event< Arguments >::~i_event ( )
virtualdefault

Member Function Documentation

◆ accept()

template<typename... Arguments>
virtual void neolib::plugin_events::i_event< Arguments >::accept ( ) const
pure virtual

◆ accepted()

template<typename... Arguments>
virtual bool neolib::plugin_events::i_event< Arguments >::accepted ( ) const
pure virtual

◆ async_trigger()

template<typename... Arguments>
virtual void neolib::plugin_events::i_event< Arguments >::async_trigger ( Arguments...  aArguments) const
pure virtual

◆ ignore()

template<typename... Arguments>
virtual void neolib::plugin_events::i_event< Arguments >::ignore ( ) const
pure virtual

◆ operator()() [1/3]

template<typename... Arguments>
template<typename T >
event_handle neolib::plugin_events::i_event< Arguments >::operator() ( const callback aCallback,
const T &  aUniqueIdObject 
) const
inline

Definition at line 131 of file i_plugin_event.hpp.

◆ operator()() [2/3]

template<typename... Arguments>
template<typename T >
event_handle neolib::plugin_events::i_event< Arguments >::operator() ( const callback aCallback,
const T *  aUniqueIdObject 
) const
inline

Definition at line 121 of file i_plugin_event.hpp.

◆ operator()() [3/3]

template<typename... Arguments>
event_handle neolib::plugin_events::i_event< Arguments >::operator() ( const callback aCallback,
const void *  aUniqueId = nullptr 
) const
inline

Definition at line 111 of file i_plugin_event.hpp.

◆ pre_trigger()

template<typename... Arguments>
virtual void neolib::plugin_events::i_event< Arguments >::pre_trigger ( ) const
pure virtual

◆ raw_event() [1/2]

template<typename... Arguments>
virtual const neolib::i_event& neolib::plugin_events::i_event< Arguments >::raw_event ( ) const
pure virtual

◆ raw_event() [2/2]

template<typename... Arguments>
virtual neolib::i_event& neolib::plugin_events::i_event< Arguments >::raw_event ( )
pure virtual

◆ subscribe() [1/3]

template<typename... Arguments>
template<typename T >
event_handle neolib::plugin_events::i_event< Arguments >::subscribe ( const callback aCallback,
const T &  aUniqueIdObject 
) const
inline

Definition at line 126 of file i_plugin_event.hpp.

◆ subscribe() [2/3]

template<typename... Arguments>
template<typename T >
event_handle neolib::plugin_events::i_event< Arguments >::subscribe ( const callback aCallback,
const T *  aUniqueIdObject 
) const
inline

Definition at line 116 of file i_plugin_event.hpp.

◆ subscribe() [3/3]

template<typename... Arguments>
event_handle neolib::plugin_events::i_event< Arguments >::subscribe ( const callback aCallback,
const void *  aUniqueId = nullptr 
) const
inline

Definition at line 107 of file i_plugin_event.hpp.

◆ sync_trigger()

template<typename... Arguments>
virtual bool neolib::plugin_events::i_event< Arguments >::sync_trigger ( Arguments...  aArguments) const
pure virtual

◆ trigger()

template<typename... Arguments>
virtual bool neolib::plugin_events::i_event< Arguments >::trigger ( Arguments...  aArguments) const
pure virtual

◆ unsubscribe() [1/4]

template<typename... Arguments>
template<typename T >
void neolib::plugin_events::i_event< Arguments >::unsubscribe ( const T &  aUniqueIdObject) const
inline

Definition at line 149 of file i_plugin_event.hpp.

◆ unsubscribe() [2/4]

template<typename... Arguments>
template<typename T >
void neolib::plugin_events::i_event< Arguments >::unsubscribe ( const T *  aUniqueIdObject) const
inline

Definition at line 144 of file i_plugin_event.hpp.

◆ unsubscribe() [3/4]

template<typename... Arguments>
void neolib::plugin_events::i_event< Arguments >::unsubscribe ( const void *  aUniqueId) const
inline

Definition at line 139 of file i_plugin_event.hpp.

◆ unsubscribe() [4/4]

template<typename... Arguments>
void neolib::plugin_events::i_event< Arguments >::unsubscribe ( event_handle  aHandle) const
inline

Definition at line 135 of file i_plugin_event.hpp.


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