1
0
mirror of https://github.com/alliedmodders/hl2sdk.git synced 2025-01-09 18:48:51 +08:00
hl2sdk/public/vstdlib/ieventsystem.h
2015-07-09 13:07:26 -04:00

16 lines
672 B
C++

#include <appframework/IAppSystem.h>
#include <tier1/functors.h>
class IEventQueue;
abstract_class IEventSystem : public IAppSystem
{
public:
virtual IEventQueue *CreateEventQueue() = 0;
virtual void DestroyEventQueue( IEventQueue *pQueue ) = 0;
virtual void RunEvents( IEventQueue *pQueue ) = 0;
virtual int RegisterEvent( const char *pszName ) = 0;
virtual void FireEvent( int eventId, IEventQueue *pQueue, const void *pListener, CFunctorData *pData ) = 0;
virtual void RegisterListener( int eventId, IEventQueue *pQueue, CFunctorCallback *pCallback ) = 0;
virtual void UnregisterListener( int eventId, IEventQueue *pQueue, CFunctorCallback *pCallback ) = 0;
};