Add "data" argument to event handlers.

This commit is contained in:
Martin Preuss
2023-10-18 15:28:32 +02:00
parent f0cfbfccc4
commit c9b88f2cea
4 changed files with 8 additions and 8 deletions

View File

@@ -95,7 +95,7 @@ void AQH_EventHandler_HandleTimeTick(AQH_EVENT_HANDLER *evh, uint64_t t)
evtNext=AQH_EventTimer_List_Next(evt);
if (AQH_EventTimer_CheckWhetherTickTriggers(evt, t)) {
AQH_EventHandler_HandleEvent(evh, AQH_EventTimer_GetEventType(evt), AQH_EventTimer_GetId(evt));
AQH_EventHandler_HandleEvent(evh, AQH_EventTimer_GetEventType(evt), AQH_EventTimer_GetId(evt), 0.0);
if (AQH_EventTimer_GetFlags(evt) & AQH_EVENT_TIMER_FLAGS_DELETE_IF_TRIGGERED) {
DBG_INFO(AQH_LOGDOMAIN, "Deleting timer after trigger");
AQH_EventTimer_List_Del(evt);
@@ -109,7 +109,7 @@ void AQH_EventHandler_HandleTimeTick(AQH_EVENT_HANDLER *evh, uint64_t t)
void AQH_EventHandler_HandleEvent(AQH_EVENT_HANDLER *evh, int eventType, uint64_t objectId)
void AQH_EventHandler_HandleEvent(AQH_EVENT_HANDLER *evh, int eventType, uint64_t objectId, double data)
{
if (evh) {
AQH_EVENT_SUBSCRIPTION *evs;
@@ -121,7 +121,7 @@ void AQH_EventHandler_HandleEvent(AQH_EVENT_HANDLER *evh, int eventType, uint64_
objectIdFromSubscription=AQH_EventSubscription_GetObjectId(evs);
if (objectIdFromSubscription==0 || objectIdFromSubscription==objectId)
AQH_EventSubscription_CallHandler(evs, eventType, objectId);
AQH_EventSubscription_CallHandler(evs, eventType, objectId, data);
}
evs=AQH_EventSubscription_List_Next(evs);

View File

@@ -37,7 +37,7 @@ AQHOME_API void AQH_EventHandler_AddSubscription(AQH_EVENT_HANDLER *evh, AQH_EVE
AQHOME_API void AQH_EventHandler_HandleTimeTick(AQH_EVENT_HANDLER *evh, uint64_t t);
AQHOME_API void AQH_EventHandler_HandleEvent(AQH_EVENT_HANDLER *evh, int eventType, uint64_t objectId);
AQHOME_API void AQH_EventHandler_HandleEvent(AQH_EVENT_HANDLER *evh, int eventType, uint64_t objectId, double data);

View File

@@ -77,10 +77,10 @@ void AQH_EventSubscription_SetObjectId(AQH_EVENT_SUBSCRIPTION *evs, uint64_t i)
int AQH_EventSubscription_CallHandler(AQH_EVENT_SUBSCRIPTION *evs, int eventType, uint64_t objectId)
int AQH_EventSubscription_CallHandler(AQH_EVENT_SUBSCRIPTION *evs, int eventType, uint64_t objectId, double data)
{
if (evs && evs->handlerFn)
return evs->handlerFn(evs, eventType, objectId);
return evs->handlerFn(evs, eventType, objectId, data);
return 0;
}

View File

@@ -21,7 +21,7 @@ typedef struct AQH_EVENT_SUBSCRIPTION AQH_EVENT_SUBSCRIPTION;
GWEN_INHERIT_FUNCTION_LIB_DEFS(AQH_EVENT_SUBSCRIPTION, AQHOME_API)
GWEN_LIST_FUNCTION_LIB_DEFS(AQH_EVENT_SUBSCRIPTION, AQH_EventSubscription, AQHOME_API)
typedef int (*AQH_EVENT_SUBSCRIPTION_HANDLER_FN)(AQH_EVENT_SUBSCRIPTION *evs, int eventType, uint64_t objectId);
typedef int (*AQH_EVENT_SUBSCRIPTION_HANDLER_FN)(AQH_EVENT_SUBSCRIPTION *evs, int eventType, uint64_t objectId, double data);
AQHOME_API AQH_EVENT_SUBSCRIPTION *AQH_EventSubscription_new();
@@ -33,7 +33,7 @@ AQHOME_API void AQH_EventSubscription_SetEventType(AQH_EVENT_SUBSCRIPTION *evs,
AQHOME_API uint64_t AQH_EventSubscription_GetObjectId(const AQH_EVENT_SUBSCRIPTION *evs);
AQHOME_API void AQH_EventSubscription_SetObjectId(AQH_EVENT_SUBSCRIPTION *evs, uint64_t i);
AQHOME_API int AQH_EventSubscription_CallHandler(AQH_EVENT_SUBSCRIPTION *evs, int eventType, uint64_t objectId);
AQHOME_API int AQH_EventSubscription_CallHandler(AQH_EVENT_SUBSCRIPTION *evs, int eventType, uint64_t objectId, double data);
#endif