#ifndef APP_FUNCS_H #define APP_FUNCS_H #ifndef APP_S16 #define APP_S16 short #endif #ifndef APP_U32 #define APP_U32 unsigned int #endif #ifndef APP_U64 #define APP_U64 unsigned long long #endif #include "app_types.h" int app_run( int (*app_proc)( app_t*, void* ), void* user_data, void* memctx, void* logctx, void* fatalctx ); typedef enum app_state_t { APP_STATE_EXIT_REQUESTED, APP_STATE_NORMAL, } app_state_t; app_state_t app_yield( app_t* app ); void app_cancel_exit( app_t* app ); void app_title( app_t* app, char const* title ); char const* app_cmdline( app_t* app ); char const* app_filename( app_t* app ); char const* app_userdata( app_t* app ); char const* app_appdata( app_t* app ); APP_U64 app_time_count( app_t* app ); APP_U64 app_time_freq( app_t* app ); void app_log( app_t* app, app_log_level_t level, char const* message ); void app_fatal_error( app_t* app, char const* message ); void app_pointer( app_t* app, int width, int height, APP_U32* pixels_abgr, int hotspot_x, int hotspot_y ); void app_pointer_default( app_t* app, int* width, int* height, APP_U32* pixels_abgr, int* hotspot_x, int* hotspot_y ); void app_pointer_pos( app_t* app, int x, int y ); int app_pointer_x( app_t* app ); int app_pointer_y( app_t* app ); void app_pointer_limit( app_t* app, int x, int y, int width, int height ); void app_pointer_limit_off( app_t* app ); void app_interpolation( app_t* app, app_interpolation_t interpolation ); void app_screenmode( app_t* app, app_screenmode_t screenmode ); void app_window_size( app_t* app, int width, int height ); int app_window_width( app_t* app ); int app_window_height( app_t* app ); void app_window_pos( app_t* app, int x, int y ); int app_window_x( app_t* app ); int app_window_y( app_t* app ); app_displays_t app_displays( app_t* app ); void app_present( app_t* app, APP_U32 const* pixels_xbgr, int width, int height, APP_U32 mod_xbgr, APP_U32 border_xbgr ); void app_sound( app_t* app, int sample_pairs_count, void (*sound_callback)( APP_S16* sample_pairs, int sample_pairs_count, void* user_data ), void* user_data ); void app_sound_volume( app_t* app, float volume ); app_input_t app_input( app_t* app ); void app_coordinates_window_to_bitmap( app_t* app, int width, int height, int* x, int* y ); void app_coordinates_bitmap_to_window( app_t* app, int width, int height, int* x, int* y ); #endif