/* * Copyright (c) Camden Dixie O'Brien * SPDX-License-Identifier: AGPL-3.0-only */ #ifndef ENGINE_HOOKS_H #define ENGINE_HOOKS_H #include typedef struct { struct { const char *title; unsigned w, h; } win; size_t memsize; } engineconf_t; typedef enum { GAMESTATUS_OK, GAMESTATUS_QUIT, } gamestatus_t; extern const engineconf_t game_conf; void game_init(int argc, char *argv[], void *mem, SDL_Renderer *renderer); void game_teardown(void *mem); gamestatus_t game_evthandle(void *mem, const SDL_Event *evt); gamestatus_t game_update(void *mem, double dt); void game_render(const void *mem, SDL_Renderer *renderer, long unsigned t); #endif