OpenBarnyard
 
Loading...
Searching...
No Matches
TGenericListener Class Reference

#include <TEvent.h>

Inheritance diagram for TGenericListener:
TListener< TUtil, TUtil::LogEvent, TDebugConsole > TListener< Owner, Data, Caller >

Public Types

using t_Callback = TBOOL( __stdcall* )( void* a_pCaller, void* a_pOwner, void* a_pData )
 

Public Member Functions

 TGenericListener ()=default
 
 ~TGenericListener ()
 
void Connect (TGenericEmitter &a_rEmitter, void *a_pCaller, t_Callback a_pCallback, TINT a_iPriority)
 
void Disconnect ()
 

Friends

class TGenericEmitter
 

Detailed Description

Definition at line 8 of file TEvent.h.

Member Typedef Documentation

◆ t_Callback

using TGenericListener::t_Callback = TBOOL( __stdcall* )( void* a_pCaller, void* a_pOwner, void* a_pData )

Definition at line 11 of file TEvent.h.

Constructor & Destructor Documentation

◆ TGenericListener()

TGenericListener::TGenericListener ( )
default

◆ ~TGenericListener()

TGenericListener::~TGenericListener ( )

Definition at line 27 of file TEvent.cpp.

28{
29 Disconnect();
30}
void Disconnect()
Definition TEvent.cpp:20

Member Function Documentation

◆ Connect()

void TGenericListener::Connect ( TGenericEmitter & a_rEmitter,
void * a_pCaller,
t_Callback a_pCallback,
TINT a_iPriority )

Definition at line 11 of file TEvent.cpp.

12{
13 TASSERT( IsLinked() == TFALSE );
14 m_pCaller = a_pCaller;
15 m_pCallback = a_pCallback;
16 SetPriority( a_iPriority );
17 a_rEmitter.GetListeners().Insert( this );
18}
#define TASSERT(X,...)
Definition Defines.h:138
#define TFALSE
Definition Typedefs.h:24
void Insert(TNode *a_pNode, TINT iPriority)
Definition TPriList.cpp:66
TPriList< TGenericListener > & GetListeners()
Definition TEvent.h:41

◆ Disconnect()

void TGenericListener::Disconnect ( )

Definition at line 20 of file TEvent.cpp.

21{
22 Remove();
23 m_pCaller = TNULL;
24 m_pCallback = TNULL;
25}
#define TNULL
Definition Typedefs.h:23

Friends And Related Symbol Documentation

◆ TGenericEmitter

friend class TGenericEmitter
friend

Definition at line 12 of file TEvent.h.


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