BltEventListener.h

Go to the documentation of this file.
00001 /*****************************************************************
00002 |
00003 |   BlueTune - Event Listener Interface
00004 |
00005 |   (c) 2002-2006 Gilles Boccon-Gibod
00006 |   Author: Gilles Boccon-Gibod (bok@bok.net)
00007 |
00008  ****************************************************************/
00013 #ifndef _BLT_EVENT_LISTENER_H_
00014 #define _BLT_EVENT_LISTENER_H_
00015 
00016 /*----------------------------------------------------------------------
00017 |   includes
00018 +---------------------------------------------------------------------*/
00019 #include "Atomix.h"
00020 #include "BltDefs.h"
00021 #include "BltTypes.h"
00022 #include "BltErrors.h"
00023 #include "BltEvent.h"
00024 
00025 /*----------------------------------------------------------------------
00026 |   types
00027 +---------------------------------------------------------------------*/
00028 ATX_DECLARE_INTERFACE(BLT_EventListener)
00029 ATX_BEGIN_INTERFACE_DEFINITION(BLT_EventListener)
00030     void (*OnEvent)(BLT_EventListener* self,
00031                     ATX_Object*        source,
00032                     BLT_EventType      type,
00033                     const BLT_Event*   event);
00034 ATX_END_INTERFACE_DEFINITION
00035 
00036 /*----------------------------------------------------------------------
00037 |   convenience macros
00038 +---------------------------------------------------------------------*/
00043 #define BLT_EventListener_OnEvent(object, source, type, event) \
00044 ATX_INTERFACE(object)->OnEvent(object, source, type, event)
00045 
00046 
00047 #endif /* _BLT_EVENT_LISTENER_H_ */