ODeV framework  v2
IEventListenerVtbl.h
Go to the documentation of this file.
1 
31 #ifndef INCLUDE_EVENTS_IEVENTLISTENERVTBL_H_
32 #define INCLUDE_EVENTS_IEVENTLISTENERVTBL_H_
33 
34 #ifdef __cplusplus
35 extern "C" {
36 #endif
37 
38 #include "IListenerVtbl.h"
39 #include "systp.h"
40 
42 
48  sys_error_code_t (*OnStatusChange)(IListener *this);
49  void (*SetOwner)(IEventListener *this, void *pxOwner);
50  void *(*GetOwner)(IEventListener *this);
51 };
52 
61 };
62 
63 
64 // Public API declaration
65 //***********************
66 
67 
68 // Inline functions definition
69 // ***************************
70 
71 SYS_DEFINE_INLINE
72 void IEventListenerSetOwner(IEventListener *this, void *pxOwner) {
73  this->vptr->SetOwner(this, pxOwner);
74 }
75 
76 SYS_DEFINE_INLINE
78  return this->vptr->GetOwner(this);
79 }
80 
81 #ifdef __cplusplus
82 }
83 #endif
84 
85 #endif /* INCLUDE_EVENTS_IEVENTLISTENERVTBL_H_ */
IListener virtual table definition.
Definition: IEventListenerVtbl.h:56
sys_error_code_t(* OnStatusChange)(IListener *this)
Definition: IEventListenerVtbl.h:48
SYS_DEFINE_INLINE void * IEventListenerGetOwner(IEventListener *this)
Definition: IEventListenerVtbl.h:77
SYS_DEFINE_INLINE void IEventListenerSetOwner(IEventListener *this, void *pxOwner)
Definition: IEventListenerVtbl.h:72
void(* SetOwner)(IEventListener *this, void *pxOwner)
Definition: IEventListenerVtbl.h:49
unsigned short sys_error_code_t
Definition: syserror.h:45
Definition: IEventListenerVtbl.h:47
Target platform definition.
const IEventListener_vtbl * vptr
Definition: IEventListenerVtbl.h:60