#ifndef SPRSTK_H #define SPRSTK_H #include #ifdef __cplusplus extern "C" { #endif typedef struct sprstk sprstk; typedef void (*sprstk_init_fn)(sprstk* instance, void* userdata); typedef void (*sprstk_update_fn)(sprstk* instance, float dt, void* userdata); typedef void (*sprstk_quit_fn)(sprstk* instance, void* userdata); typedef struct { sprstk_init_fn init; sprstk_update_fn update; sprstk_quit_fn quit; } sprstk_callbacks; typedef struct { uint32_t colors[32]; } sprstk_palette; sprstk* sprstk_new(sprstk_callbacks callbacks, void* userdata); void sprstk_del(sprstk* instance); void sprstk_run(sprstk* instance); void sprstk_stop(sprstk* instance); void sprstk_put(sprstk* instance, int x, int y, unsigned int layers, unsigned int palette_lookup); void sprstk_putz(sprstk* instance, int x, int y, unsigned int layers, unsigned int palette_lookup, unsigned int z_offset); void sprstk_set_palette(sprstk* instance, unsigned int index, const sprstk_palette* palette); void sprstk_set_angle(sprstk* instance, float angle); #ifdef __cplusplus } #endif #endif//SPRSTK_H