diff options
Diffstat (limited to 'src/state.c')
| -rw-r--r-- | src/state.c | 16 |
1 files changed, 8 insertions, 8 deletions
diff --git a/src/state.c b/src/state.c index b5fcdc3..bc7a89e 100644 --- a/src/state.c +++ b/src/state.c @@ -7,7 +7,7 @@ //typedef void state_init_t(void*,void*); //typedef void* (state_free_t(void*)); -typedef StateType state_update_t(f64, void*); +typedef StateType state_update_t(Window *restrict, void*, f64); const char* StateTypeStr[] = { "null", @@ -20,9 +20,9 @@ const char* StateTypeStr[] = { // Setup API for states #define State(name) \ typedef struct name##_state name##_state; \ - typedef void(state_##name##_init_t)(name##_state*,void*); \ + typedef void(state_##name##_init_t)(Window *restrict,name##_state*,void*); \ typedef void*(state_##name##_free_t)(name##_state*); \ - typedef StateType(state_##name##_update_t)(f64,name##_state*); + typedef StateType(state_##name##_update_t)(Window *restrict,name##_state*,f64); #include <states/list_of_states.h> #undef State @@ -51,11 +51,11 @@ const char* StateTypeStr[] = { #include <states/all_states.h> -void State_init(StateType type, memory* mem, void* arg) { +void State_init(StateType type, Window *restrict w, memory* mem, void* arg) { switch (type) { #define State(name) \ case (STATE_##name): { \ - name##_init(memory_allocate(mem, sizeof(name##_state)), arg); \ + name##_init(w, memory_allocate(mem, sizeof(name##_state)), arg); \ break; \ } #include <states/list_of_states.h> @@ -91,7 +91,7 @@ void* State_free(StateType type, memory* mem) { } /* Returns the update function of a given state type */ -StateType (*State_updateFunc(StateType type))(f64, void*) { +StateType (*State_updateFunc(StateType type))(Window *restrict, void*, f64) { switch (type) { #ifdef DAW_BUILD_HOTRELOAD #define State(name) \ @@ -118,12 +118,12 @@ StateType (*State_updateFunc(StateType type))(f64, void*) { return NULL; } -StateType State_update(StateType type, f64 dt, memory* mem) { +StateType State_update(StateType type, Window *restrict w, memory* mem, f64 dt) { StateType next_state = STATE_null; switch (type) { #define State(name) \ case (STATE_##name): { \ - next_state = name##_update(dt, mem->data); \ + next_state = name##_update(w, mem->data, dt); \ break; \ } #include <states/list_of_states.h> |
