1use crate::config::*;
6use crate::path::*;
7
8use allegro_util::c_bool;
9use libc::*;
10
11allegro_util::opaque!(ALLEGRO_SYSTEM);
12
13unsafe extern "C" {
14 pub fn al_install_system(
15 version: c_int, atexit_ptr: Option<extern "C" fn(atexit_ptr: extern "C" fn()) -> c_int>,
16 ) -> c_bool;
17 pub fn al_uninstall_system();
18 pub fn al_is_system_installed() -> c_bool;
19 pub fn al_get_system_driver() -> *mut ALLEGRO_SYSTEM;
20 pub fn al_get_system_config() -> *mut ALLEGRO_CONFIG;
21}
22
23pub const ALLEGRO_RESOURCES_PATH: u32 = 0;
24pub const ALLEGRO_TEMP_PATH: u32 = 1;
25pub const ALLEGRO_USER_DATA_PATH: u32 = 2;
26pub const ALLEGRO_USER_HOME_PATH: u32 = 3;
27pub const ALLEGRO_USER_SETTINGS_PATH: u32 = 4;
28pub const ALLEGRO_USER_DOCUMENTS_PATH: u32 = 5;
29pub const ALLEGRO_EXENAME_PATH: u32 = 6;
30pub const ALLEGRO_LAST_PATH: u32 = 7;
31
32unsafe extern "C" {
33 pub fn al_get_standard_path(id: c_int) -> *mut ALLEGRO_PATH;
34 pub fn al_set_exe_name(path: *const c_char);
35
36 pub fn al_set_org_name(org_name: *const c_char);
37 pub fn al_set_app_name(app_name: *const c_char);
38 pub fn al_get_org_name() -> *const c_char;
39 pub fn al_get_app_name() -> *const c_char;
40
41 pub fn al_inhibit_screensaver(inhibit: c_uchar) -> c_bool;
42}