From e111f78d519363a3d76237ff0a62dcbd5e53e3d6 Mon Sep 17 00:00:00 2001 From: Jonathan Bradley Date: Wed, 29 Nov 2023 21:03:15 -0500 Subject: major events refactor to add second event callback type --- src/event.hpp | 19 ++++++++++++++++--- 1 file changed, 16 insertions(+), 3 deletions(-) (limited to 'src/event.hpp') diff --git a/src/event.hpp b/src/event.hpp index defa588..7eb48c2 100644 --- a/src/event.hpp +++ b/src/event.hpp @@ -9,10 +9,23 @@ #include typedef void (*EventHandler)(); +typedef void (*TickEvent)(double); + +template +void Event_RegisterCallback(const char *name, Fn handler); +template +void Event_UnregisterCallback(const char *name, Fn handler); +template +void Event_Dispatch(const char *name, Arguments... args); + +template<> void Event_RegisterCallback(const char *name, EventHandler handler); +template<> void Event_UnregisterCallback(const char *name, EventHandler handler); +template<> void Event_Dispatch(const char *name); + +template<> void Event_RegisterCallback(const char *name, TickEvent handler); +template<> void Event_UnregisterCallback(const char *name, TickEvent handler); +template<> void Event_Dispatch(const char *name, double d); -void Event_RegisterCallback(const char *name, EventHandler handler); -void Event_UnregisterCallback(const char *name, EventHandler handler); -void Event_Dispatch(const char *name); void Event_Teardown(); #endif /* PKE_EVENT_HPP */ -- cgit v1.2.3