pub const EM_TRUE: u32 = 1;
pub const EM_FALSE: u32 = 0;
pub const __EMSCRIPTEN_major__: u32 = 3;
pub const __EMSCRIPTEN_minor__: u32 = 1;
pub const __EMSCRIPTEN_tiny__: u32 = 44;
pub const EM_TIMING_SETTIMEOUT: u32 = 0;
pub const EM_TIMING_RAF: u32 = 1;
pub const EM_TIMING_SETIMMEDIATE: u32 = 2;
pub const EM_LOG_CONSOLE: u32 = 1;
pub const EM_LOG_WARN: u32 = 2;
pub const EM_LOG_ERROR: u32 = 4;
pub const EM_LOG_C_STACK: u32 = 8;
pub const EM_LOG_JS_STACK: u32 = 16;
pub const EM_LOG_DEMANGLE: u32 = 32;
pub const EM_LOG_NO_PATHS: u32 = 64;
pub const EM_LOG_FUNC_PARAMS: u32 = 128;
pub const EM_LOG_DEBUG: u32 = 256;
pub const EM_LOG_INFO: u32 = 512;
pub const EMSCRIPTEN_EVENT_KEYPRESS: u32 = 1;
pub const EMSCRIPTEN_EVENT_KEYDOWN: u32 = 2;
pub const EMSCRIPTEN_EVENT_KEYUP: u32 = 3;
pub const EMSCRIPTEN_EVENT_CLICK: u32 = 4;
pub const EMSCRIPTEN_EVENT_MOUSEDOWN: u32 = 5;
pub const EMSCRIPTEN_EVENT_MOUSEUP: u32 = 6;
pub const EMSCRIPTEN_EVENT_DBLCLICK: u32 = 7;
pub const EMSCRIPTEN_EVENT_MOUSEMOVE: u32 = 8;
pub const EMSCRIPTEN_EVENT_WHEEL: u32 = 9;
pub const EMSCRIPTEN_EVENT_RESIZE: u32 = 10;
pub const EMSCRIPTEN_EVENT_SCROLL: u32 = 11;
pub const EMSCRIPTEN_EVENT_BLUR: u32 = 12;
pub const EMSCRIPTEN_EVENT_FOCUS: u32 = 13;
pub const EMSCRIPTEN_EVENT_FOCUSIN: u32 = 14;
pub const EMSCRIPTEN_EVENT_FOCUSOUT: u32 = 15;
pub const EMSCRIPTEN_EVENT_DEVICEORIENTATION: u32 = 16;
pub const EMSCRIPTEN_EVENT_DEVICEMOTION: u32 = 17;
pub const EMSCRIPTEN_EVENT_ORIENTATIONCHANGE: u32 = 18;
pub const EMSCRIPTEN_EVENT_FULLSCREENCHANGE: u32 = 19;
pub const EMSCRIPTEN_EVENT_POINTERLOCKCHANGE: u32 = 20;
pub const EMSCRIPTEN_EVENT_VISIBILITYCHANGE: u32 = 21;
pub const EMSCRIPTEN_EVENT_TOUCHSTART: u32 = 22;
pub const EMSCRIPTEN_EVENT_TOUCHEND: u32 = 23;
pub const EMSCRIPTEN_EVENT_TOUCHMOVE: u32 = 24;
pub const EMSCRIPTEN_EVENT_TOUCHCANCEL: u32 = 25;
pub const EMSCRIPTEN_EVENT_GAMEPADCONNECTED: u32 = 26;
pub const EMSCRIPTEN_EVENT_GAMEPADDISCONNECTED: u32 = 27;
pub const EMSCRIPTEN_EVENT_BEFOREUNLOAD: u32 = 28;
pub const EMSCRIPTEN_EVENT_BATTERYCHARGINGCHANGE: u32 = 29;
pub const EMSCRIPTEN_EVENT_BATTERYLEVELCHANGE: u32 = 30;
pub const EMSCRIPTEN_EVENT_WEBGLCONTEXTLOST: u32 = 31;
pub const EMSCRIPTEN_EVENT_WEBGLCONTEXTRESTORED: u32 = 32;
pub const EMSCRIPTEN_EVENT_MOUSEENTER: u32 = 33;
pub const EMSCRIPTEN_EVENT_MOUSELEAVE: u32 = 34;
pub const EMSCRIPTEN_EVENT_MOUSEOVER: u32 = 35;
pub const EMSCRIPTEN_EVENT_MOUSEOUT: u32 = 36;
pub const EMSCRIPTEN_EVENT_CANVASRESIZED: u32 = 37;
pub const EMSCRIPTEN_EVENT_POINTERLOCKERROR: u32 = 38;
pub const EMSCRIPTEN_RESULT_SUCCESS: u32 = 0;
pub const EMSCRIPTEN_RESULT_DEFERRED: u32 = 1;
pub const EMSCRIPTEN_RESULT_NOT_SUPPORTED: i32 = -1;
pub const EMSCRIPTEN_RESULT_FAILED_NOT_DEFERRED: i32 = -2;
pub const EMSCRIPTEN_RESULT_INVALID_TARGET: i32 = -3;
pub const EMSCRIPTEN_RESULT_UNKNOWN_TARGET: i32 = -4;
pub const EMSCRIPTEN_RESULT_INVALID_PARAM: i32 = -5;
pub const EMSCRIPTEN_RESULT_FAILED: i32 = -6;
pub const EMSCRIPTEN_RESULT_NO_DATA: i32 = -7;
pub const EMSCRIPTEN_RESULT_TIMED_OUT: i32 = -8;
pub const EMSCRIPTEN_EVENT_TARGET_INVALID: u32 = 0;
pub const DOM_KEY_LOCATION_STANDARD: u32 = 0;
pub const DOM_KEY_LOCATION_LEFT: u32 = 1;
pub const DOM_KEY_LOCATION_RIGHT: u32 = 2;
pub const DOM_KEY_LOCATION_NUMPAD: u32 = 3;
pub const EM_HTML5_SHORT_STRING_LEN_BYTES: u32 = 32;
pub const EM_HTML5_MEDIUM_STRING_LEN_BYTES: u32 = 64;
pub const EM_HTML5_LONG_STRING_LEN_BYTES: u32 = 128;
pub const DOM_DELTA_PIXEL: u32 = 0;
pub const DOM_DELTA_LINE: u32 = 1;
pub const DOM_DELTA_PAGE: u32 = 2;
pub const EMSCRIPTEN_DEVICE_MOTION_EVENT_SUPPORTS_ACCELERATION: u32 = 1;
pub const EMSCRIPTEN_DEVICE_MOTION_EVENT_SUPPORTS_ACCELERATION_INCLUDING_GRAVITY: u32 = 2;
pub const EMSCRIPTEN_DEVICE_MOTION_EVENT_SUPPORTS_ROTATION_RATE: u32 = 4;
pub const EMSCRIPTEN_ORIENTATION_PORTRAIT_PRIMARY: u32 = 1;
pub const EMSCRIPTEN_ORIENTATION_PORTRAIT_SECONDARY: u32 = 2;
pub const EMSCRIPTEN_ORIENTATION_LANDSCAPE_PRIMARY: u32 = 4;
pub const EMSCRIPTEN_ORIENTATION_LANDSCAPE_SECONDARY: u32 = 8;
pub const EMSCRIPTEN_FULLSCREEN_SCALE_DEFAULT: u32 = 0;
pub const EMSCRIPTEN_FULLSCREEN_SCALE_STRETCH: u32 = 1;
pub const EMSCRIPTEN_FULLSCREEN_SCALE_ASPECT: u32 = 2;
pub const EMSCRIPTEN_FULLSCREEN_SCALE_CENTER: u32 = 3;
pub const EMSCRIPTEN_FULLSCREEN_CANVAS_SCALE_NONE: u32 = 0;
pub const EMSCRIPTEN_FULLSCREEN_CANVAS_SCALE_STDDEF: u32 = 1;
pub const EMSCRIPTEN_FULLSCREEN_CANVAS_SCALE_HIDEF: u32 = 2;
pub const EMSCRIPTEN_FULLSCREEN_FILTERING_DEFAULT: u32 = 0;
pub const EMSCRIPTEN_FULLSCREEN_FILTERING_NEAREST: u32 = 1;
pub const EMSCRIPTEN_FULLSCREEN_FILTERING_BILINEAR: u32 = 2;
pub const EMSCRIPTEN_VISIBILITY_HIDDEN: u32 = 0;
pub const EMSCRIPTEN_VISIBILITY_VISIBLE: u32 = 1;
pub const EMSCRIPTEN_VISIBILITY_PRERENDER: u32 = 2;
pub const EMSCRIPTEN_VISIBILITY_UNLOADED: u32 = 3;
pub const EMSCRIPTEN_WEBGL_CONTEXT_PROXY_DISALLOW: u32 = 0;
pub const EMSCRIPTEN_WEBGL_CONTEXT_PROXY_FALLBACK: u32 = 1;
pub const EMSCRIPTEN_WEBGL_CONTEXT_PROXY_ALWAYS: u32 = 2;
pub const EM_WEBGL_POWER_PREFERENCE_DEFAULT: u32 = 0;
pub const EM_WEBGL_POWER_PREFERENCE_LOW_POWER: u32 = 1;
pub const EM_WEBGL_POWER_PREFERENCE_HIGH_PERFORMANCE: u32 = 2;
pub const EMSCRIPTEN_WEBGL_PARAM_TYPE_INT: u32 = 0;
pub const EMSCRIPTEN_WEBGL_PARAM_TYPE_FLOAT: u32 = 1;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct __pthread {
_unused: [u8; 0],
}
pub type pthread_t = *mut __pthread;
pub type emscripten_align1_short = ::std::os::raw::c_short;
pub type emscripten_align4_int64 = ::std::os::raw::c_longlong;
pub type emscripten_align2_int64 = ::std::os::raw::c_longlong;
pub type emscripten_align1_int64 = ::std::os::raw::c_longlong;
pub type emscripten_align2_int = ::std::os::raw::c_int;
pub type emscripten_align1_int = ::std::os::raw::c_int;
pub type emscripten_align2_float = f32;
pub type emscripten_align1_float = f32;
pub type emscripten_align4_double = f64;
pub type emscripten_align2_double = f64;
pub type emscripten_align1_double = f64;
pub type em_callback_func = ::std::option::Option<unsafe extern "C" fn()>;
pub type em_arg_callback_func =
::std::option::Option<unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void)>;
pub type em_str_callback_func =
::std::option::Option<unsafe extern "C" fn(arg1: *const ::std::os::raw::c_char)>;
extern "C" {
pub fn emscripten_asm_const_int(
code: *const ::std::os::raw::c_char,
arg_sigs: *const ::std::os::raw::c_char,
...
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn emscripten_asm_const_ptr(
code: *const ::std::os::raw::c_char,
arg_sigs: *const ::std::os::raw::c_char,
...
) -> *mut ::std::os::raw::c_void;
}
extern "C" {
pub fn emscripten_asm_const_double(
code: *const ::std::os::raw::c_char,
arg_sigs: *const ::std::os::raw::c_char,
...
) -> f64;
}
extern "C" {
pub fn emscripten_asm_const_int_sync_on_main_thread(
code: *const ::std::os::raw::c_char,
arg_sigs: *const ::std::os::raw::c_char,
...
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn emscripten_asm_const_double_sync_on_main_thread(
code: *const ::std::os::raw::c_char,
arg_sigs: *const ::std::os::raw::c_char,
...
) -> f64;
}
extern "C" {
pub fn emscripten_asm_const_async_on_main_thread(
code: *const ::std::os::raw::c_char,
arg_sigs: *const ::std::os::raw::c_char,
...
);
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _em_promise {
_unused: [u8; 0],
}
pub type em_promise_t = *mut _em_promise;
pub const em_promise_result_t_EM_PROMISE_FULFILL: em_promise_result_t = 0;
pub const em_promise_result_t_EM_PROMISE_MATCH: em_promise_result_t = 1;
pub const em_promise_result_t_EM_PROMISE_MATCH_RELEASE: em_promise_result_t = 2;
pub const em_promise_result_t_EM_PROMISE_REJECT: em_promise_result_t = 3;
pub type em_promise_result_t = ::std::os::raw::c_int;
pub type em_promise_callback_t = ::std::option::Option<
unsafe extern "C" fn(
result: *mut *mut ::std::os::raw::c_void,
data: *mut ::std::os::raw::c_void,
value: *mut ::std::os::raw::c_void,
) -> em_promise_result_t,
>;
extern "C" {
pub fn emscripten_promise_create() -> em_promise_t;
}
extern "C" {
pub fn emscripten_promise_destroy(promise: em_promise_t);
}
extern "C" {
pub fn emscripten_promise_resolve(
promise: em_promise_t,
result: em_promise_result_t,
value: *mut ::std::os::raw::c_void,
);
}
extern "C" {
pub fn emscripten_promise_then(
promise: em_promise_t,
on_fulfilled: em_promise_callback_t,
on_rejected: em_promise_callback_t,
data: *mut ::std::os::raw::c_void,
) -> em_promise_t;
}
extern "C" {
pub fn emscripten_promise_all(
promises: *mut em_promise_t,
results: *mut *mut ::std::os::raw::c_void,
num_promises: usize,
) -> em_promise_t;
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct em_settled_result_t {
pub result: em_promise_result_t,
pub value: *mut ::std::os::raw::c_void,
}
#[test]
fn bindgen_test_layout_em_settled_result_t() {
const UNINIT: ::std::mem::MaybeUninit<em_settled_result_t> = ::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<em_settled_result_t>(),
16usize,
concat!("Size of: ", stringify!(em_settled_result_t))
);
assert_eq!(
::std::mem::align_of::<em_settled_result_t>(),
8usize,
concat!("Alignment of ", stringify!(em_settled_result_t))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).result) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(em_settled_result_t),
"::",
stringify!(result)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).value) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(em_settled_result_t),
"::",
stringify!(value)
)
);
}
extern "C" {
pub fn emscripten_promise_all_settled(
promises: *mut em_promise_t,
results: *mut em_settled_result_t,
num_promises: usize,
) -> em_promise_t;
}
extern "C" {
pub fn emscripten_promise_any(
promises: *mut em_promise_t,
errors: *mut *mut ::std::os::raw::c_void,
num_promises: usize,
) -> em_promise_t;
}
extern "C" {
pub fn emscripten_promise_race(
promises: *mut em_promise_t,
num_promises: usize,
) -> em_promise_t;
}
extern "C" {
pub fn emscripten_promise_await(promise: em_promise_t) -> em_settled_result_t;
}
extern "C" {
pub fn emscripten_async_wget(
url: *const ::std::os::raw::c_char,
file: *const ::std::os::raw::c_char,
onload: em_str_callback_func,
onerror: em_str_callback_func,
);
}
pub type em_async_wget_onload_func = ::std::option::Option<
unsafe extern "C" fn(
arg1: *mut ::std::os::raw::c_void,
arg2: *mut ::std::os::raw::c_void,
arg3: ::std::os::raw::c_int,
),
>;
extern "C" {
pub fn emscripten_async_wget_data(
url: *const ::std::os::raw::c_char,
arg: *mut ::std::os::raw::c_void,
onload: em_async_wget_onload_func,
onerror: em_arg_callback_func,
);
}
pub type em_async_wget2_onload_func = ::std::option::Option<
unsafe extern "C" fn(
arg1: ::std::os::raw::c_uint,
arg2: *mut ::std::os::raw::c_void,
arg3: *const ::std::os::raw::c_char,
),
>;
pub type em_async_wget2_onstatus_func = ::std::option::Option<
unsafe extern "C" fn(
arg1: ::std::os::raw::c_uint,
arg2: *mut ::std::os::raw::c_void,
arg3: ::std::os::raw::c_int,
),
>;
extern "C" {
pub fn emscripten_async_wget2(
url: *const ::std::os::raw::c_char,
file: *const ::std::os::raw::c_char,
requesttype: *const ::std::os::raw::c_char,
param: *const ::std::os::raw::c_char,
arg: *mut ::std::os::raw::c_void,
onload: em_async_wget2_onload_func,
onerror: em_async_wget2_onstatus_func,
onprogress: em_async_wget2_onstatus_func,
) -> ::std::os::raw::c_int;
}
pub type em_async_wget2_data_onload_func = ::std::option::Option<
unsafe extern "C" fn(
arg1: ::std::os::raw::c_uint,
arg2: *mut ::std::os::raw::c_void,
arg3: *mut ::std::os::raw::c_void,
arg4: ::std::os::raw::c_uint,
),
>;
pub type em_async_wget2_data_onerror_func = ::std::option::Option<
unsafe extern "C" fn(
arg1: ::std::os::raw::c_uint,
arg2: *mut ::std::os::raw::c_void,
arg3: ::std::os::raw::c_int,
arg4: *const ::std::os::raw::c_char,
),
>;
pub type em_async_wget2_data_onprogress_func = ::std::option::Option<
unsafe extern "C" fn(
arg1: ::std::os::raw::c_uint,
arg2: *mut ::std::os::raw::c_void,
arg3: ::std::os::raw::c_int,
arg4: ::std::os::raw::c_int,
),
>;
extern "C" {
pub fn emscripten_async_wget2_data(
url: *const ::std::os::raw::c_char,
requesttype: *const ::std::os::raw::c_char,
param: *const ::std::os::raw::c_char,
arg: *mut ::std::os::raw::c_void,
free: ::std::os::raw::c_int,
onload: em_async_wget2_data_onload_func,
onerror: em_async_wget2_data_onerror_func,
onprogress: em_async_wget2_data_onprogress_func,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn emscripten_async_wget2_abort(handle: ::std::os::raw::c_int);
}
extern "C" {
pub fn emscripten_wget(
url: *const ::std::os::raw::c_char,
file: *const ::std::os::raw::c_char,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn emscripten_wget_data(
url: *const ::std::os::raw::c_char,
pbuffer: *mut *mut ::std::os::raw::c_void,
pnum: *mut ::std::os::raw::c_int,
perror: *mut ::std::os::raw::c_int,
);
}
extern "C" {
pub fn emscripten_run_script(script: *const ::std::os::raw::c_char);
}
extern "C" {
pub fn emscripten_run_script_int(
script: *const ::std::os::raw::c_char,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn emscripten_run_script_string(
script: *const ::std::os::raw::c_char,
) -> *mut ::std::os::raw::c_char;
}
extern "C" {
pub fn emscripten_async_run_script(
script: *const ::std::os::raw::c_char,
millis: ::std::os::raw::c_int,
);
}
extern "C" {
pub fn emscripten_async_load_script(
script: *const ::std::os::raw::c_char,
onload: em_callback_func,
onerror: em_callback_func,
);
}
extern "C" {
pub fn emscripten_set_main_loop(
func: em_callback_func,
fps: ::std::os::raw::c_int,
simulate_infinite_loop: ::std::os::raw::c_int,
);
}
extern "C" {
pub fn emscripten_set_main_loop_timing(
mode: ::std::os::raw::c_int,
value: ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn emscripten_get_main_loop_timing(
mode: *mut ::std::os::raw::c_int,
value: *mut ::std::os::raw::c_int,
);
}
extern "C" {
pub fn emscripten_set_main_loop_arg(
func: em_arg_callback_func,
arg: *mut ::std::os::raw::c_void,
fps: ::std::os::raw::c_int,
simulate_infinite_loop: ::std::os::raw::c_int,
);
}
extern "C" {
pub fn emscripten_pause_main_loop();
}
extern "C" {
pub fn emscripten_resume_main_loop();
}
extern "C" {
pub fn emscripten_cancel_main_loop();
}
pub type em_socket_callback = ::std::option::Option<
unsafe extern "C" fn(fd: ::std::os::raw::c_int, userData: *mut ::std::os::raw::c_void),
>;
pub type em_socket_error_callback = ::std::option::Option<
unsafe extern "C" fn(
fd: ::std::os::raw::c_int,
err: ::std::os::raw::c_int,
msg: *const ::std::os::raw::c_char,
userData: *mut ::std::os::raw::c_void,
),
>;
extern "C" {
pub fn emscripten_set_socket_error_callback(
userData: *mut ::std::os::raw::c_void,
callback: em_socket_error_callback,
);
}
extern "C" {
pub fn emscripten_set_socket_open_callback(
userData: *mut ::std::os::raw::c_void,
callback: em_socket_callback,
);
}
extern "C" {
pub fn emscripten_set_socket_listen_callback(
userData: *mut ::std::os::raw::c_void,
callback: em_socket_callback,
);
}
extern "C" {
pub fn emscripten_set_socket_connection_callback(
userData: *mut ::std::os::raw::c_void,
callback: em_socket_callback,
);
}
extern "C" {
pub fn emscripten_set_socket_message_callback(
userData: *mut ::std::os::raw::c_void,
callback: em_socket_callback,
);
}
extern "C" {
pub fn emscripten_set_socket_close_callback(
userData: *mut ::std::os::raw::c_void,
callback: em_socket_callback,
);
}
extern "C" {
pub fn _emscripten_push_main_loop_blocker(
func: em_arg_callback_func,
arg: *mut ::std::os::raw::c_void,
name: *const ::std::os::raw::c_char,
);
}
extern "C" {
pub fn _emscripten_push_uncounted_main_loop_blocker(
func: em_arg_callback_func,
arg: *mut ::std::os::raw::c_void,
name: *const ::std::os::raw::c_char,
);
}
extern "C" {
pub fn emscripten_set_main_loop_expected_blockers(num: ::std::os::raw::c_int);
}
extern "C" {
pub fn emscripten_async_call(
func: em_arg_callback_func,
arg: *mut ::std::os::raw::c_void,
millis: ::std::os::raw::c_int,
);
}
extern "C" {
pub fn emscripten_exit_with_live_runtime() -> !;
}
extern "C" {
pub fn emscripten_force_exit(status: ::std::os::raw::c_int) -> !;
}
extern "C" {
pub fn emscripten_get_device_pixel_ratio() -> f64;
}
extern "C" {
pub fn emscripten_get_window_title() -> *mut ::std::os::raw::c_char;
}
extern "C" {
pub fn emscripten_set_window_title(arg1: *const ::std::os::raw::c_char);
}
extern "C" {
pub fn emscripten_get_screen_size(
width: *mut ::std::os::raw::c_int,
height: *mut ::std::os::raw::c_int,
);
}
extern "C" {
pub fn emscripten_hide_mouse();
}
extern "C" {
pub fn emscripten_set_canvas_size(width: ::std::os::raw::c_int, height: ::std::os::raw::c_int);
}
extern "C" {
pub fn emscripten_get_canvas_size(
width: *mut ::std::os::raw::c_int,
height: *mut ::std::os::raw::c_int,
isFullscreen: *mut ::std::os::raw::c_int,
);
}
extern "C" {
pub fn emscripten_get_now() -> f64;
}
extern "C" {
pub fn emscripten_random() -> f32;
}
pub type em_idb_onload_func = ::std::option::Option<
unsafe extern "C" fn(
arg1: *mut ::std::os::raw::c_void,
arg2: *mut ::std::os::raw::c_void,
arg3: ::std::os::raw::c_int,
),
>;
extern "C" {
pub fn emscripten_idb_async_load(
db_name: *const ::std::os::raw::c_char,
file_id: *const ::std::os::raw::c_char,
arg: *mut ::std::os::raw::c_void,
onload: em_idb_onload_func,
onerror: em_arg_callback_func,
);
}
extern "C" {
pub fn emscripten_idb_async_store(
db_name: *const ::std::os::raw::c_char,
file_id: *const ::std::os::raw::c_char,
ptr: *mut ::std::os::raw::c_void,
num: ::std::os::raw::c_int,
arg: *mut ::std::os::raw::c_void,
onstore: em_arg_callback_func,
onerror: em_arg_callback_func,
);
}
extern "C" {
pub fn emscripten_idb_async_delete(
db_name: *const ::std::os::raw::c_char,
file_id: *const ::std::os::raw::c_char,
arg: *mut ::std::os::raw::c_void,
ondelete: em_arg_callback_func,
onerror: em_arg_callback_func,
);
}
pub type em_idb_exists_func = ::std::option::Option<
unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void, arg2: ::std::os::raw::c_int),
>;
extern "C" {
pub fn emscripten_idb_async_exists(
db_name: *const ::std::os::raw::c_char,
file_id: *const ::std::os::raw::c_char,
arg: *mut ::std::os::raw::c_void,
oncheck: em_idb_exists_func,
onerror: em_arg_callback_func,
);
}
extern "C" {
pub fn emscripten_idb_load(
db_name: *const ::std::os::raw::c_char,
file_id: *const ::std::os::raw::c_char,
pbuffer: *mut *mut ::std::os::raw::c_void,
pnum: *mut ::std::os::raw::c_int,
perror: *mut ::std::os::raw::c_int,
);
}
extern "C" {
pub fn emscripten_idb_store(
db_name: *const ::std::os::raw::c_char,
file_id: *const ::std::os::raw::c_char,
buffer: *mut ::std::os::raw::c_void,
num: ::std::os::raw::c_int,
perror: *mut ::std::os::raw::c_int,
);
}
extern "C" {
pub fn emscripten_idb_delete(
db_name: *const ::std::os::raw::c_char,
file_id: *const ::std::os::raw::c_char,
perror: *mut ::std::os::raw::c_int,
);
}
extern "C" {
pub fn emscripten_idb_exists(
db_name: *const ::std::os::raw::c_char,
file_id: *const ::std::os::raw::c_char,
pexists: *mut ::std::os::raw::c_int,
perror: *mut ::std::os::raw::c_int,
);
}
extern "C" {
pub fn emscripten_idb_load_blob(
db_name: *const ::std::os::raw::c_char,
file_id: *const ::std::os::raw::c_char,
pblob: *mut ::std::os::raw::c_int,
perror: *mut ::std::os::raw::c_int,
);
}
extern "C" {
pub fn emscripten_idb_store_blob(
db_name: *const ::std::os::raw::c_char,
file_id: *const ::std::os::raw::c_char,
buffer: *mut ::std::os::raw::c_void,
num: ::std::os::raw::c_int,
perror: *mut ::std::os::raw::c_int,
);
}
extern "C" {
pub fn emscripten_idb_read_from_blob(
blob: ::std::os::raw::c_int,
start: ::std::os::raw::c_int,
num: ::std::os::raw::c_int,
buffer: *mut ::std::os::raw::c_void,
);
}
extern "C" {
pub fn emscripten_idb_free_blob(blob: ::std::os::raw::c_int);
}
extern "C" {
pub fn emscripten_run_preload_plugins(
file: *const ::std::os::raw::c_char,
onload: em_str_callback_func,
onerror: em_str_callback_func,
) -> ::std::os::raw::c_int;
}
pub type em_run_preload_plugins_data_onload_func = ::std::option::Option<
unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void, arg2: *const ::std::os::raw::c_char),
>;
extern "C" {
pub fn emscripten_run_preload_plugins_data(
data: *mut ::std::os::raw::c_char,
size: ::std::os::raw::c_int,
suffix: *const ::std::os::raw::c_char,
arg: *mut ::std::os::raw::c_void,
onload: em_run_preload_plugins_data_onload_func,
onerror: em_arg_callback_func,
);
}
extern "C" {
pub fn emscripten_lazy_load_code();
}
pub type worker_handle = ::std::os::raw::c_int;
extern "C" {
pub fn emscripten_create_worker(url: *const ::std::os::raw::c_char) -> worker_handle;
}
extern "C" {
pub fn emscripten_destroy_worker(worker: worker_handle);
}
pub type em_worker_callback_func = ::std::option::Option<
unsafe extern "C" fn(
arg1: *mut ::std::os::raw::c_char,
arg2: ::std::os::raw::c_int,
arg3: *mut ::std::os::raw::c_void,
),
>;
extern "C" {
pub fn emscripten_call_worker(
worker: worker_handle,
funcname: *const ::std::os::raw::c_char,
data: *mut ::std::os::raw::c_char,
size: ::std::os::raw::c_int,
callback: em_worker_callback_func,
arg: *mut ::std::os::raw::c_void,
);
}
extern "C" {
pub fn emscripten_worker_respond(
data: *mut ::std::os::raw::c_char,
size: ::std::os::raw::c_int,
);
}
extern "C" {
pub fn emscripten_worker_respond_provisionally(
data: *mut ::std::os::raw::c_char,
size: ::std::os::raw::c_int,
);
}
extern "C" {
pub fn emscripten_get_worker_queue_size(worker: worker_handle) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn emscripten_get_compiler_setting(
name: *const ::std::os::raw::c_char,
) -> ::std::os::raw::c_long;
}
extern "C" {
pub fn emscripten_has_asyncify() -> ::std::os::raw::c_int;
}
extern "C" {
pub fn emscripten_debugger();
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _IO_FILE {
_unused: [u8; 0],
}
pub type FILE = _IO_FILE;
extern "C" {
pub fn emscripten_get_preloaded_image_data(
path: *const ::std::os::raw::c_char,
w: *mut ::std::os::raw::c_int,
h: *mut ::std::os::raw::c_int,
) -> *mut ::std::os::raw::c_char;
}
extern "C" {
pub fn emscripten_get_preloaded_image_data_from_FILE(
file: *mut FILE,
w: *mut ::std::os::raw::c_int,
h: *mut ::std::os::raw::c_int,
) -> *mut ::std::os::raw::c_char;
}
extern "C" {
pub fn emscripten_log(flags: ::std::os::raw::c_int, format: *const ::std::os::raw::c_char, ...);
}
extern "C" {
pub fn emscripten_get_callstack(
flags: ::std::os::raw::c_int,
out: *mut ::std::os::raw::c_char,
maxbytes: ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn emscripten_print_double(
x: f64,
to: *mut ::std::os::raw::c_char,
max: ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
pub type em_scan_func = ::std::option::Option<
unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void, arg2: *mut ::std::os::raw::c_void),
>;
extern "C" {
pub fn emscripten_scan_registers(func: em_scan_func);
}
extern "C" {
pub fn emscripten_scan_stack(func: em_scan_func);
}
pub type em_dlopen_callback = ::std::option::Option<
unsafe extern "C" fn(
handle: *mut ::std::os::raw::c_void,
user_data: *mut ::std::os::raw::c_void,
),
>;
extern "C" {
pub fn emscripten_dlopen(
filename: *const ::std::os::raw::c_char,
flags: ::std::os::raw::c_int,
user_data: *mut ::std::os::raw::c_void,
onsuccess: em_dlopen_callback,
onerror: em_arg_callback_func,
);
}
extern "C" {
pub fn emscripten_dlopen_promise(
filename: *const ::std::os::raw::c_char,
flags: ::std::os::raw::c_int,
) -> em_promise_t;
}
extern "C" {
pub fn emscripten_throw_number(number: f64);
}
extern "C" {
pub fn emscripten_throw_string(utf8String: *const ::std::os::raw::c_char);
}
extern "C" {
pub fn emscripten_sleep(ms: ::std::os::raw::c_uint);
}
extern "C" {
pub fn emscripten_unwind_to_js_event_loop() -> !;
}
extern "C" {
pub fn emscripten_set_timeout(
cb: ::std::option::Option<unsafe extern "C" fn(user_data: *mut ::std::os::raw::c_void)>,
msecs: f64,
user_data: *mut ::std::os::raw::c_void,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn emscripten_clear_timeout(id: ::std::os::raw::c_int);
}
extern "C" {
pub fn emscripten_set_timeout_loop(
cb: ::std::option::Option<
unsafe extern "C" fn(
time: f64,
user_data: *mut ::std::os::raw::c_void,
) -> ::std::os::raw::c_int,
>,
interval_ms: f64,
user_data: *mut ::std::os::raw::c_void,
);
}
extern "C" {
pub fn emscripten_set_immediate(
cb: ::std::option::Option<unsafe extern "C" fn(user_data: *mut ::std::os::raw::c_void)>,
user_data: *mut ::std::os::raw::c_void,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn emscripten_clear_immediate(id: ::std::os::raw::c_int);
}
extern "C" {
pub fn emscripten_set_immediate_loop(
cb: ::std::option::Option<
unsafe extern "C" fn(user_data: *mut ::std::os::raw::c_void) -> ::std::os::raw::c_int,
>,
user_data: *mut ::std::os::raw::c_void,
);
}
extern "C" {
pub fn emscripten_set_interval(
cb: ::std::option::Option<unsafe extern "C" fn(user_data: *mut ::std::os::raw::c_void)>,
interval_ms: f64,
user_data: *mut ::std::os::raw::c_void,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn emscripten_clear_interval(id: ::std::os::raw::c_int);
}
extern "C" {
pub fn emscripten_runtime_keepalive_push();
}
extern "C" {
pub fn emscripten_runtime_keepalive_pop();
}
extern "C" {
pub fn emscripten_runtime_keepalive_check() -> ::std::os::raw::c_int;
}
extern "C" {
pub fn emscripten_console_log(utf8String: *const ::std::os::raw::c_char);
}
extern "C" {
pub fn emscripten_console_warn(utf8String: *const ::std::os::raw::c_char);
}
extern "C" {
pub fn emscripten_console_error(utf8String: *const ::std::os::raw::c_char);
}
extern "C" {
pub fn emscripten_out(utf8String: *const ::std::os::raw::c_char);
}
extern "C" {
pub fn emscripten_err(utf8String: *const ::std::os::raw::c_char);
}
extern "C" {
pub fn emscripten_dbg(utf8String: *const ::std::os::raw::c_char);
}
extern "C" {
pub fn emscripten_outn(utf8String: *const ::std::os::raw::c_char, len: usize);
}
extern "C" {
pub fn emscripten_errn(utf8String: *const ::std::os::raw::c_char, len: usize);
}
extern "C" {
pub fn emscripten_dbgn(utf8String: *const ::std::os::raw::c_char, len: usize);
}
extern "C" {
pub fn emscripten_console_logf(format: *const ::std::os::raw::c_char, ...);
}
extern "C" {
pub fn emscripten_console_warnf(format: *const ::std::os::raw::c_char, ...);
}
extern "C" {
pub fn emscripten_console_errorf(format: *const ::std::os::raw::c_char, ...);
}
extern "C" {
pub fn emscripten_outf(format: *const ::std::os::raw::c_char, ...);
}
extern "C" {
pub fn emscripten_errf(format: *const ::std::os::raw::c_char, ...);
}
extern "C" {
pub fn emscripten_dbgf(format: *const ::std::os::raw::c_char, ...);
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct EmscriptenKeyboardEvent {
pub timestamp: f64,
pub location: ::std::os::raw::c_ulong,
pub ctrlKey: ::std::os::raw::c_int,
pub shiftKey: ::std::os::raw::c_int,
pub altKey: ::std::os::raw::c_int,
pub metaKey: ::std::os::raw::c_int,
pub repeat: ::std::os::raw::c_int,
pub charCode: ::std::os::raw::c_ulong,
pub keyCode: ::std::os::raw::c_ulong,
pub which: ::std::os::raw::c_ulong,
pub key: [::std::os::raw::c_char; 32usize],
pub code: [::std::os::raw::c_char; 32usize],
pub charValue: [::std::os::raw::c_char; 32usize],
pub locale: [::std::os::raw::c_char; 32usize],
}
#[test]
fn bindgen_test_layout_EmscriptenKeyboardEvent() {
const UNINIT: ::std::mem::MaybeUninit<EmscriptenKeyboardEvent> =
::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<EmscriptenKeyboardEvent>(),
176usize,
concat!("Size of: ", stringify!(EmscriptenKeyboardEvent))
);
assert_eq!(
::std::mem::align_of::<EmscriptenKeyboardEvent>(),
8usize,
concat!("Alignment of ", stringify!(EmscriptenKeyboardEvent))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).timestamp) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(EmscriptenKeyboardEvent),
"::",
stringify!(timestamp)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).location) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(EmscriptenKeyboardEvent),
"::",
stringify!(location)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).ctrlKey) as usize - ptr as usize },
12usize,
concat!(
"Offset of field: ",
stringify!(EmscriptenKeyboardEvent),
"::",
stringify!(ctrlKey)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).shiftKey) as usize - ptr as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(EmscriptenKeyboardEvent),
"::",
stringify!(shiftKey)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).altKey) as usize - ptr as usize },
20usize,
concat!(
"Offset of field: ",
stringify!(EmscriptenKeyboardEvent),
"::",
stringify!(altKey)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).metaKey) as usize - ptr as usize },
24usize,
concat!(
"Offset of field: ",
stringify!(EmscriptenKeyboardEvent),
"::",
stringify!(metaKey)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).repeat) as usize - ptr as usize },
28usize,
concat!(
"Offset of field: ",
stringify!(EmscriptenKeyboardEvent),
"::",
stringify!(repeat)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).charCode) as usize - ptr as usize },
32usize,
concat!(
"Offset of field: ",
stringify!(EmscriptenKeyboardEvent),
"::",
stringify!(charCode)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).keyCode) as usize - ptr as usize },
36usize,
concat!(
"Offset of field: ",
stringify!(EmscriptenKeyboardEvent),
"::",
stringify!(keyCode)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).which) as usize - ptr as usize },
40usize,
concat!(
"Offset of field: ",
stringify!(EmscriptenKeyboardEvent),
"::",
stringify!(which)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).key) as usize - ptr as usize },
44usize,
concat!(
"Offset of field: ",
stringify!(EmscriptenKeyboardEvent),
"::",
stringify!(key)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).code) as usize - ptr as usize },
76usize,
concat!(
"Offset of field: ",
stringify!(EmscriptenKeyboardEvent),
"::",
stringify!(code)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).charValue) as usize - ptr as usize },
108usize,
concat!(
"Offset of field: ",
stringify!(EmscriptenKeyboardEvent),
"::",
stringify!(charValue)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).locale) as usize - ptr as usize },
140usize,
concat!(
"Offset of field: ",
stringify!(EmscriptenKeyboardEvent),
"::",
stringify!(locale)
)
);
}
pub type em_key_callback_func = ::std::option::Option<
unsafe extern "C" fn(
eventType: ::std::os::raw::c_int,
keyEvent: *const EmscriptenKeyboardEvent,
userData: *mut ::std::os::raw::c_void,
) -> ::std::os::raw::c_int,
>;
extern "C" {
pub fn emscripten_set_keypress_callback_on_thread(
target: *const ::std::os::raw::c_char,
userData: *mut ::std::os::raw::c_void,
useCapture: ::std::os::raw::c_int,
callback: em_key_callback_func,
targetThread: pthread_t,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn emscripten_set_keydown_callback_on_thread(
target: *const ::std::os::raw::c_char,
userData: *mut ::std::os::raw::c_void,
useCapture: ::std::os::raw::c_int,
callback: em_key_callback_func,
targetThread: pthread_t,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn emscripten_set_keyup_callback_on_thread(
target: *const ::std::os::raw::c_char,
userData: *mut ::std::os::raw::c_void,
useCapture: ::std::os::raw::c_int,
callback: em_key_callback_func,
targetThread: pthread_t,
) -> ::std::os::raw::c_int;
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct EmscriptenMouseEvent {
pub timestamp: f64,
pub screenX: ::std::os::raw::c_long,
pub screenY: ::std::os::raw::c_long,
pub clientX: ::std::os::raw::c_long,
pub clientY: ::std::os::raw::c_long,
pub ctrlKey: ::std::os::raw::c_int,
pub shiftKey: ::std::os::raw::c_int,
pub altKey: ::std::os::raw::c_int,
pub metaKey: ::std::os::raw::c_int,
pub button: ::std::os::raw::c_ushort,
pub buttons: ::std::os::raw::c_ushort,
pub movementX: ::std::os::raw::c_long,
pub movementY: ::std::os::raw::c_long,
pub targetX: ::std::os::raw::c_long,
pub targetY: ::std::os::raw::c_long,
pub canvasX: ::std::os::raw::c_long,
pub canvasY: ::std::os::raw::c_long,
pub padding: ::std::os::raw::c_long,
}
#[test]
fn bindgen_test_layout_EmscriptenMouseEvent() {
const UNINIT: ::std::mem::MaybeUninit<EmscriptenMouseEvent> = ::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<EmscriptenMouseEvent>(),
72usize,
concat!("Size of: ", stringify!(EmscriptenMouseEvent))
);
assert_eq!(
::std::mem::align_of::<EmscriptenMouseEvent>(),
8usize,
concat!("Alignment of ", stringify!(EmscriptenMouseEvent))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).timestamp) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(EmscriptenMouseEvent),
"::",
stringify!(timestamp)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).screenX) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(EmscriptenMouseEvent),
"::",
stringify!(screenX)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).screenY) as usize - ptr as usize },
12usize,
concat!(
"Offset of field: ",
stringify!(EmscriptenMouseEvent),
"::",
stringify!(screenY)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).clientX) as usize - ptr as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(EmscriptenMouseEvent),
"::",
stringify!(clientX)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).clientY) as usize - ptr as usize },
20usize,
concat!(
"Offset of field: ",
stringify!(EmscriptenMouseEvent),
"::",
stringify!(clientY)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).ctrlKey) as usize - ptr as usize },
24usize,
concat!(
"Offset of field: ",
stringify!(EmscriptenMouseEvent),
"::",
stringify!(ctrlKey)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).shiftKey) as usize - ptr as usize },
28usize,
concat!(
"Offset of field: ",
stringify!(EmscriptenMouseEvent),
"::",
stringify!(shiftKey)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).altKey) as usize - ptr as usize },
32usize,
concat!(
"Offset of field: ",
stringify!(EmscriptenMouseEvent),
"::",
stringify!(altKey)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).metaKey) as usize - ptr as usize },
36usize,
concat!(
"Offset of field: ",
stringify!(EmscriptenMouseEvent),
"::",
stringify!(metaKey)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).button) as usize - ptr as usize },
40usize,
concat!(
"Offset of field: ",
stringify!(EmscriptenMouseEvent),
"::",
stringify!(button)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).buttons) as usize - ptr as usize },
42usize,
concat!(
"Offset of field: ",
stringify!(EmscriptenMouseEvent),
"::",
stringify!(buttons)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).movementX) as usize - ptr as usize },
44usize,
concat!(
"Offset of field: ",
stringify!(EmscriptenMouseEvent),
"::",
stringify!(movementX)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).movementY) as usize - ptr as usize },
48usize,
concat!(
"Offset of field: ",
stringify!(EmscriptenMouseEvent),
"::",
stringify!(movementY)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).targetX) as usize - ptr as usize },
52usize,
concat!(
"Offset of field: ",
stringify!(EmscriptenMouseEvent),
"::",
stringify!(targetX)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).targetY) as usize - ptr as usize },
56usize,
concat!(
"Offset of field: ",
stringify!(EmscriptenMouseEvent),
"::",
stringify!(targetY)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).canvasX) as usize - ptr as usize },
60usize,
concat!(
"Offset of field: ",
stringify!(EmscriptenMouseEvent),
"::",
stringify!(canvasX)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).canvasY) as usize - ptr as usize },
64usize,
concat!(
"Offset of field: ",
stringify!(EmscriptenMouseEvent),
"::",
stringify!(canvasY)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).padding) as usize - ptr as usize },
68usize,
concat!(
"Offset of field: ",
stringify!(EmscriptenMouseEvent),
"::",
stringify!(padding)
)
);
}
pub type em_mouse_callback_func = ::std::option::Option<
unsafe extern "C" fn(
eventType: ::std::os::raw::c_int,
mouseEvent: *const EmscriptenMouseEvent,
userData: *mut ::std::os::raw::c_void,
) -> ::std::os::raw::c_int,
>;
extern "C" {
pub fn emscripten_set_click_callback_on_thread(
target: *const ::std::os::raw::c_char,
userData: *mut ::std::os::raw::c_void,
useCapture: ::std::os::raw::c_int,
callback: em_mouse_callback_func,
targetThread: pthread_t,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn emscripten_set_mousedown_callback_on_thread(
target: *const ::std::os::raw::c_char,
userData: *mut ::std::os::raw::c_void,
useCapture: ::std::os::raw::c_int,
callback: em_mouse_callback_func,
targetThread: pthread_t,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn emscripten_set_mouseup_callback_on_thread(
target: *const ::std::os::raw::c_char,
userData: *mut ::std::os::raw::c_void,
useCapture: ::std::os::raw::c_int,
callback: em_mouse_callback_func,
targetThread: pthread_t,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn emscripten_set_dblclick_callback_on_thread(
target: *const ::std::os::raw::c_char,
userData: *mut ::std::os::raw::c_void,
useCapture: ::std::os::raw::c_int,
callback: em_mouse_callback_func,
targetThread: pthread_t,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn emscripten_set_mousemove_callback_on_thread(
target: *const ::std::os::raw::c_char,
userData: *mut ::std::os::raw::c_void,
useCapture: ::std::os::raw::c_int,
callback: em_mouse_callback_func,
targetThread: pthread_t,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn emscripten_set_mouseenter_callback_on_thread(
target: *const ::std::os::raw::c_char,
userData: *mut ::std::os::raw::c_void,
useCapture: ::std::os::raw::c_int,
callback: em_mouse_callback_func,
targetThread: pthread_t,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn emscripten_set_mouseleave_callback_on_thread(
target: *const ::std::os::raw::c_char,
userData: *mut ::std::os::raw::c_void,
useCapture: ::std::os::raw::c_int,
callback: em_mouse_callback_func,
targetThread: pthread_t,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn emscripten_set_mouseover_callback_on_thread(
target: *const ::std::os::raw::c_char,
userData: *mut ::std::os::raw::c_void,
useCapture: ::std::os::raw::c_int,
callback: em_mouse_callback_func,
targetThread: pthread_t,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn emscripten_set_mouseout_callback_on_thread(
target: *const ::std::os::raw::c_char,
userData: *mut ::std::os::raw::c_void,
useCapture: ::std::os::raw::c_int,
callback: em_mouse_callback_func,
targetThread: pthread_t,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn emscripten_get_mouse_status(
mouseState: *mut EmscriptenMouseEvent,
) -> ::std::os::raw::c_int;
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct EmscriptenWheelEvent {
pub mouse: EmscriptenMouseEvent,
pub deltaX: f64,
pub deltaY: f64,
pub deltaZ: f64,
pub deltaMode: ::std::os::raw::c_ulong,
}
#[test]
fn bindgen_test_layout_EmscriptenWheelEvent() {
const UNINIT: ::std::mem::MaybeUninit<EmscriptenWheelEvent> = ::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<EmscriptenWheelEvent>(),
104usize,
concat!("Size of: ", stringify!(EmscriptenWheelEvent))
);
assert_eq!(
::std::mem::align_of::<EmscriptenWheelEvent>(),
8usize,
concat!("Alignment of ", stringify!(EmscriptenWheelEvent))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).mouse) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(EmscriptenWheelEvent),
"::",
stringify!(mouse)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).deltaX) as usize - ptr as usize },
72usize,
concat!(
"Offset of field: ",
stringify!(EmscriptenWheelEvent),
"::",
stringify!(deltaX)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).deltaY) as usize - ptr as usize },
80usize,
concat!(
"Offset of field: ",
stringify!(EmscriptenWheelEvent),
"::",
stringify!(deltaY)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).deltaZ) as usize - ptr as usize },
88usize,
concat!(
"Offset of field: ",
stringify!(EmscriptenWheelEvent),
"::",
stringify!(deltaZ)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).deltaMode) as usize - ptr as usize },
96usize,
concat!(
"Offset of field: ",
stringify!(EmscriptenWheelEvent),
"::",
stringify!(deltaMode)
)
);
}
pub type em_wheel_callback_func = ::std::option::Option<
unsafe extern "C" fn(
eventType: ::std::os::raw::c_int,
wheelEvent: *const EmscriptenWheelEvent,
userData: *mut ::std::os::raw::c_void,
) -> ::std::os::raw::c_int,
>;
extern "C" {
pub fn emscripten_set_wheel_callback_on_thread(
target: *const ::std::os::raw::c_char,
userData: *mut ::std::os::raw::c_void,
useCapture: ::std::os::raw::c_int,
callback: em_wheel_callback_func,
targetThread: pthread_t,
) -> ::std::os::raw::c_int;
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct EmscriptenUiEvent {
pub detail: ::std::os::raw::c_long,
pub documentBodyClientWidth: ::std::os::raw::c_int,
pub documentBodyClientHeight: ::std::os::raw::c_int,
pub windowInnerWidth: ::std::os::raw::c_int,
pub windowInnerHeight: ::std::os::raw::c_int,
pub windowOuterWidth: ::std::os::raw::c_int,
pub windowOuterHeight: ::std::os::raw::c_int,
pub scrollTop: ::std::os::raw::c_int,
pub scrollLeft: ::std::os::raw::c_int,
}
#[test]
fn bindgen_test_layout_EmscriptenUiEvent() {
const UNINIT: ::std::mem::MaybeUninit<EmscriptenUiEvent> = ::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<EmscriptenUiEvent>(),
36usize,
concat!("Size of: ", stringify!(EmscriptenUiEvent))
);
assert_eq!(
::std::mem::align_of::<EmscriptenUiEvent>(),
4usize,
concat!("Alignment of ", stringify!(EmscriptenUiEvent))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).detail) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(EmscriptenUiEvent),
"::",
stringify!(detail)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).documentBodyClientWidth) as usize - ptr as usize },
4usize,
concat!(
"Offset of field: ",
stringify!(EmscriptenUiEvent),
"::",
stringify!(documentBodyClientWidth)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).documentBodyClientHeight) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(EmscriptenUiEvent),
"::",
stringify!(documentBodyClientHeight)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).windowInnerWidth) as usize - ptr as usize },
12usize,
concat!(
"Offset of field: ",
stringify!(EmscriptenUiEvent),
"::",
stringify!(windowInnerWidth)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).windowInnerHeight) as usize - ptr as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(EmscriptenUiEvent),
"::",
stringify!(windowInnerHeight)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).windowOuterWidth) as usize - ptr as usize },
20usize,
concat!(
"Offset of field: ",
stringify!(EmscriptenUiEvent),
"::",
stringify!(windowOuterWidth)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).windowOuterHeight) as usize - ptr as usize },
24usize,
concat!(
"Offset of field: ",
stringify!(EmscriptenUiEvent),
"::",
stringify!(windowOuterHeight)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).scrollTop) as usize - ptr as usize },
28usize,
concat!(
"Offset of field: ",
stringify!(EmscriptenUiEvent),
"::",
stringify!(scrollTop)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).scrollLeft) as usize - ptr as usize },
32usize,
concat!(
"Offset of field: ",
stringify!(EmscriptenUiEvent),
"::",
stringify!(scrollLeft)
)
);
}
pub type em_ui_callback_func = ::std::option::Option<
unsafe extern "C" fn(
eventType: ::std::os::raw::c_int,
uiEvent: *const EmscriptenUiEvent,
userData: *mut ::std::os::raw::c_void,
) -> ::std::os::raw::c_int,
>;
extern "C" {
pub fn emscripten_set_resize_callback_on_thread(
target: *const ::std::os::raw::c_char,
userData: *mut ::std::os::raw::c_void,
useCapture: ::std::os::raw::c_int,
callback: em_ui_callback_func,
targetThread: pthread_t,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn emscripten_set_scroll_callback_on_thread(
target: *const ::std::os::raw::c_char,
userData: *mut ::std::os::raw::c_void,
useCapture: ::std::os::raw::c_int,
callback: em_ui_callback_func,
targetThread: pthread_t,
) -> ::std::os::raw::c_int;
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct EmscriptenFocusEvent {
pub nodeName: [::std::os::raw::c_char; 128usize],
pub id: [::std::os::raw::c_char; 128usize],
}
#[test]
fn bindgen_test_layout_EmscriptenFocusEvent() {
const UNINIT: ::std::mem::MaybeUninit<EmscriptenFocusEvent> = ::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<EmscriptenFocusEvent>(),
256usize,
concat!("Size of: ", stringify!(EmscriptenFocusEvent))
);
assert_eq!(
::std::mem::align_of::<EmscriptenFocusEvent>(),
1usize,
concat!("Alignment of ", stringify!(EmscriptenFocusEvent))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).nodeName) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(EmscriptenFocusEvent),
"::",
stringify!(nodeName)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).id) as usize - ptr as usize },
128usize,
concat!(
"Offset of field: ",
stringify!(EmscriptenFocusEvent),
"::",
stringify!(id)
)
);
}
pub type em_focus_callback_func = ::std::option::Option<
unsafe extern "C" fn(
eventType: ::std::os::raw::c_int,
focusEvent: *const EmscriptenFocusEvent,
userData: *mut ::std::os::raw::c_void,
) -> ::std::os::raw::c_int,
>;
extern "C" {
pub fn emscripten_set_blur_callback_on_thread(
target: *const ::std::os::raw::c_char,
userData: *mut ::std::os::raw::c_void,
useCapture: ::std::os::raw::c_int,
callback: em_focus_callback_func,
targetThread: pthread_t,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn emscripten_set_focus_callback_on_thread(
target: *const ::std::os::raw::c_char,
userData: *mut ::std::os::raw::c_void,
useCapture: ::std::os::raw::c_int,
callback: em_focus_callback_func,
targetThread: pthread_t,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn emscripten_set_focusin_callback_on_thread(
target: *const ::std::os::raw::c_char,
userData: *mut ::std::os::raw::c_void,
useCapture: ::std::os::raw::c_int,
callback: em_focus_callback_func,
targetThread: pthread_t,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn emscripten_set_focusout_callback_on_thread(
target: *const ::std::os::raw::c_char,
userData: *mut ::std::os::raw::c_void,
useCapture: ::std::os::raw::c_int,
callback: em_focus_callback_func,
targetThread: pthread_t,
) -> ::std::os::raw::c_int;
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct EmscriptenDeviceOrientationEvent {
pub alpha: f64,
pub beta: f64,
pub gamma: f64,
pub absolute: ::std::os::raw::c_int,
}
#[test]
fn bindgen_test_layout_EmscriptenDeviceOrientationEvent() {
const UNINIT: ::std::mem::MaybeUninit<EmscriptenDeviceOrientationEvent> =
::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<EmscriptenDeviceOrientationEvent>(),
32usize,
concat!("Size of: ", stringify!(EmscriptenDeviceOrientationEvent))
);
assert_eq!(
::std::mem::align_of::<EmscriptenDeviceOrientationEvent>(),
8usize,
concat!(
"Alignment of ",
stringify!(EmscriptenDeviceOrientationEvent)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).alpha) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(EmscriptenDeviceOrientationEvent),
"::",
stringify!(alpha)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).beta) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(EmscriptenDeviceOrientationEvent),
"::",
stringify!(beta)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).gamma) as usize - ptr as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(EmscriptenDeviceOrientationEvent),
"::",
stringify!(gamma)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).absolute) as usize - ptr as usize },
24usize,
concat!(
"Offset of field: ",
stringify!(EmscriptenDeviceOrientationEvent),
"::",
stringify!(absolute)
)
);
}
pub type em_deviceorientation_callback_func = ::std::option::Option<
unsafe extern "C" fn(
eventType: ::std::os::raw::c_int,
deviceOrientationEvent: *const EmscriptenDeviceOrientationEvent,
userData: *mut ::std::os::raw::c_void,
) -> ::std::os::raw::c_int,
>;
extern "C" {
pub fn emscripten_set_deviceorientation_callback_on_thread(
userData: *mut ::std::os::raw::c_void,
useCapture: ::std::os::raw::c_int,
callback: em_deviceorientation_callback_func,
targetThread: pthread_t,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn emscripten_get_deviceorientation_status(
orientationState: *mut EmscriptenDeviceOrientationEvent,
) -> ::std::os::raw::c_int;
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct EmscriptenDeviceMotionEvent {
pub accelerationX: f64,
pub accelerationY: f64,
pub accelerationZ: f64,
pub accelerationIncludingGravityX: f64,
pub accelerationIncludingGravityY: f64,
pub accelerationIncludingGravityZ: f64,
pub rotationRateAlpha: f64,
pub rotationRateBeta: f64,
pub rotationRateGamma: f64,
pub supportedFields: ::std::os::raw::c_int,
}
#[test]
fn bindgen_test_layout_EmscriptenDeviceMotionEvent() {
const UNINIT: ::std::mem::MaybeUninit<EmscriptenDeviceMotionEvent> =
::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<EmscriptenDeviceMotionEvent>(),
80usize,
concat!("Size of: ", stringify!(EmscriptenDeviceMotionEvent))
);
assert_eq!(
::std::mem::align_of::<EmscriptenDeviceMotionEvent>(),
8usize,
concat!("Alignment of ", stringify!(EmscriptenDeviceMotionEvent))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).accelerationX) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(EmscriptenDeviceMotionEvent),
"::",
stringify!(accelerationX)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).accelerationY) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(EmscriptenDeviceMotionEvent),
"::",
stringify!(accelerationY)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).accelerationZ) as usize - ptr as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(EmscriptenDeviceMotionEvent),
"::",
stringify!(accelerationZ)
)
);
assert_eq!(
unsafe {
::std::ptr::addr_of!((*ptr).accelerationIncludingGravityX) as usize - ptr as usize
},
24usize,
concat!(
"Offset of field: ",
stringify!(EmscriptenDeviceMotionEvent),
"::",
stringify!(accelerationIncludingGravityX)
)
);
assert_eq!(
unsafe {
::std::ptr::addr_of!((*ptr).accelerationIncludingGravityY) as usize - ptr as usize
},
32usize,
concat!(
"Offset of field: ",
stringify!(EmscriptenDeviceMotionEvent),
"::",
stringify!(accelerationIncludingGravityY)
)
);
assert_eq!(
unsafe {
::std::ptr::addr_of!((*ptr).accelerationIncludingGravityZ) as usize - ptr as usize
},
40usize,
concat!(
"Offset of field: ",
stringify!(EmscriptenDeviceMotionEvent),
"::",
stringify!(accelerationIncludingGravityZ)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).rotationRateAlpha) as usize - ptr as usize },
48usize,
concat!(
"Offset of field: ",
stringify!(EmscriptenDeviceMotionEvent),
"::",
stringify!(rotationRateAlpha)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).rotationRateBeta) as usize - ptr as usize },
56usize,
concat!(
"Offset of field: ",
stringify!(EmscriptenDeviceMotionEvent),
"::",
stringify!(rotationRateBeta)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).rotationRateGamma) as usize - ptr as usize },
64usize,
concat!(
"Offset of field: ",
stringify!(EmscriptenDeviceMotionEvent),
"::",
stringify!(rotationRateGamma)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).supportedFields) as usize - ptr as usize },
72usize,
concat!(
"Offset of field: ",
stringify!(EmscriptenDeviceMotionEvent),
"::",
stringify!(supportedFields)
)
);
}
pub type em_devicemotion_callback_func = ::std::option::Option<
unsafe extern "C" fn(
eventType: ::std::os::raw::c_int,
deviceMotionEvent: *const EmscriptenDeviceMotionEvent,
userData: *mut ::std::os::raw::c_void,
) -> ::std::os::raw::c_int,
>;
extern "C" {
pub fn emscripten_set_devicemotion_callback_on_thread(
userData: *mut ::std::os::raw::c_void,
useCapture: ::std::os::raw::c_int,
callback: em_devicemotion_callback_func,
targetThread: pthread_t,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn emscripten_get_devicemotion_status(
motionState: *mut EmscriptenDeviceMotionEvent,
) -> ::std::os::raw::c_int;
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct EmscriptenOrientationChangeEvent {
pub orientationIndex: ::std::os::raw::c_int,
pub orientationAngle: ::std::os::raw::c_int,
}
#[test]
fn bindgen_test_layout_EmscriptenOrientationChangeEvent() {
const UNINIT: ::std::mem::MaybeUninit<EmscriptenOrientationChangeEvent> =
::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<EmscriptenOrientationChangeEvent>(),
8usize,
concat!("Size of: ", stringify!(EmscriptenOrientationChangeEvent))
);
assert_eq!(
::std::mem::align_of::<EmscriptenOrientationChangeEvent>(),
4usize,
concat!(
"Alignment of ",
stringify!(EmscriptenOrientationChangeEvent)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).orientationIndex) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(EmscriptenOrientationChangeEvent),
"::",
stringify!(orientationIndex)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).orientationAngle) as usize - ptr as usize },
4usize,
concat!(
"Offset of field: ",
stringify!(EmscriptenOrientationChangeEvent),
"::",
stringify!(orientationAngle)
)
);
}
pub type em_orientationchange_callback_func = ::std::option::Option<
unsafe extern "C" fn(
eventType: ::std::os::raw::c_int,
orientationChangeEvent: *const EmscriptenOrientationChangeEvent,
userData: *mut ::std::os::raw::c_void,
) -> ::std::os::raw::c_int,
>;
extern "C" {
pub fn emscripten_set_orientationchange_callback_on_thread(
userData: *mut ::std::os::raw::c_void,
useCapture: ::std::os::raw::c_int,
callback: em_orientationchange_callback_func,
targetThread: pthread_t,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn emscripten_get_orientation_status(
orientationStatus: *mut EmscriptenOrientationChangeEvent,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn emscripten_lock_orientation(
allowedOrientations: ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn emscripten_unlock_orientation() -> ::std::os::raw::c_int;
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct EmscriptenFullscreenChangeEvent {
pub isFullscreen: ::std::os::raw::c_int,
pub fullscreenEnabled: ::std::os::raw::c_int,
pub nodeName: [::std::os::raw::c_char; 128usize],
pub id: [::std::os::raw::c_char; 128usize],
pub elementWidth: ::std::os::raw::c_int,
pub elementHeight: ::std::os::raw::c_int,
pub screenWidth: ::std::os::raw::c_int,
pub screenHeight: ::std::os::raw::c_int,
}
#[test]
fn bindgen_test_layout_EmscriptenFullscreenChangeEvent() {
const UNINIT: ::std::mem::MaybeUninit<EmscriptenFullscreenChangeEvent> =
::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<EmscriptenFullscreenChangeEvent>(),
280usize,
concat!("Size of: ", stringify!(EmscriptenFullscreenChangeEvent))
);
assert_eq!(
::std::mem::align_of::<EmscriptenFullscreenChangeEvent>(),
4usize,
concat!("Alignment of ", stringify!(EmscriptenFullscreenChangeEvent))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).isFullscreen) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(EmscriptenFullscreenChangeEvent),
"::",
stringify!(isFullscreen)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).fullscreenEnabled) as usize - ptr as usize },
4usize,
concat!(
"Offset of field: ",
stringify!(EmscriptenFullscreenChangeEvent),
"::",
stringify!(fullscreenEnabled)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).nodeName) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(EmscriptenFullscreenChangeEvent),
"::",
stringify!(nodeName)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).id) as usize - ptr as usize },
136usize,
concat!(
"Offset of field: ",
stringify!(EmscriptenFullscreenChangeEvent),
"::",
stringify!(id)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).elementWidth) as usize - ptr as usize },
264usize,
concat!(
"Offset of field: ",
stringify!(EmscriptenFullscreenChangeEvent),
"::",
stringify!(elementWidth)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).elementHeight) as usize - ptr as usize },
268usize,
concat!(
"Offset of field: ",
stringify!(EmscriptenFullscreenChangeEvent),
"::",
stringify!(elementHeight)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).screenWidth) as usize - ptr as usize },
272usize,
concat!(
"Offset of field: ",
stringify!(EmscriptenFullscreenChangeEvent),
"::",
stringify!(screenWidth)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).screenHeight) as usize - ptr as usize },
276usize,
concat!(
"Offset of field: ",
stringify!(EmscriptenFullscreenChangeEvent),
"::",
stringify!(screenHeight)
)
);
}
pub type em_fullscreenchange_callback_func = ::std::option::Option<
unsafe extern "C" fn(
eventType: ::std::os::raw::c_int,
fullscreenChangeEvent: *const EmscriptenFullscreenChangeEvent,
userData: *mut ::std::os::raw::c_void,
) -> ::std::os::raw::c_int,
>;
extern "C" {
pub fn emscripten_set_fullscreenchange_callback_on_thread(
target: *const ::std::os::raw::c_char,
userData: *mut ::std::os::raw::c_void,
useCapture: ::std::os::raw::c_int,
callback: em_fullscreenchange_callback_func,
targetThread: pthread_t,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn emscripten_get_fullscreen_status(
fullscreenStatus: *mut EmscriptenFullscreenChangeEvent,
) -> ::std::os::raw::c_int;
}
pub type em_canvasresized_callback_func = ::std::option::Option<
unsafe extern "C" fn(
eventType: ::std::os::raw::c_int,
reserved: *const ::std::os::raw::c_void,
userData: *mut ::std::os::raw::c_void,
) -> ::std::os::raw::c_int,
>;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct EmscriptenFullscreenStrategy {
pub scaleMode: ::std::os::raw::c_int,
pub canvasResolutionScaleMode: ::std::os::raw::c_int,
pub filteringMode: ::std::os::raw::c_int,
pub canvasResizedCallback: em_canvasresized_callback_func,
pub canvasResizedCallbackUserData: *mut ::std::os::raw::c_void,
pub canvasResizedCallbackTargetThread: pthread_t,
}
#[test]
fn bindgen_test_layout_EmscriptenFullscreenStrategy() {
const UNINIT: ::std::mem::MaybeUninit<EmscriptenFullscreenStrategy> =
::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<EmscriptenFullscreenStrategy>(),
40usize,
concat!("Size of: ", stringify!(EmscriptenFullscreenStrategy))
);
assert_eq!(
::std::mem::align_of::<EmscriptenFullscreenStrategy>(),
8usize,
concat!("Alignment of ", stringify!(EmscriptenFullscreenStrategy))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).scaleMode) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(EmscriptenFullscreenStrategy),
"::",
stringify!(scaleMode)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).canvasResolutionScaleMode) as usize - ptr as usize },
4usize,
concat!(
"Offset of field: ",
stringify!(EmscriptenFullscreenStrategy),
"::",
stringify!(canvasResolutionScaleMode)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).filteringMode) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(EmscriptenFullscreenStrategy),
"::",
stringify!(filteringMode)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).canvasResizedCallback) as usize - ptr as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(EmscriptenFullscreenStrategy),
"::",
stringify!(canvasResizedCallback)
)
);
assert_eq!(
unsafe {
::std::ptr::addr_of!((*ptr).canvasResizedCallbackUserData) as usize - ptr as usize
},
24usize,
concat!(
"Offset of field: ",
stringify!(EmscriptenFullscreenStrategy),
"::",
stringify!(canvasResizedCallbackUserData)
)
);
assert_eq!(
unsafe {
::std::ptr::addr_of!((*ptr).canvasResizedCallbackTargetThread) as usize - ptr as usize
},
32usize,
concat!(
"Offset of field: ",
stringify!(EmscriptenFullscreenStrategy),
"::",
stringify!(canvasResizedCallbackTargetThread)
)
);
}
extern "C" {
pub fn emscripten_request_fullscreen(
target: *const ::std::os::raw::c_char,
deferUntilInEventHandler: ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn emscripten_request_fullscreen_strategy(
target: *const ::std::os::raw::c_char,
deferUntilInEventHandler: ::std::os::raw::c_int,
fullscreenStrategy: *const EmscriptenFullscreenStrategy,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn emscripten_exit_fullscreen() -> ::std::os::raw::c_int;
}
extern "C" {
pub fn emscripten_enter_soft_fullscreen(
target: *const ::std::os::raw::c_char,
fullscreenStrategy: *const EmscriptenFullscreenStrategy,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn emscripten_exit_soft_fullscreen() -> ::std::os::raw::c_int;
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct EmscriptenPointerlockChangeEvent {
pub isActive: ::std::os::raw::c_int,
pub nodeName: [::std::os::raw::c_char; 128usize],
pub id: [::std::os::raw::c_char; 128usize],
}
#[test]
fn bindgen_test_layout_EmscriptenPointerlockChangeEvent() {
const UNINIT: ::std::mem::MaybeUninit<EmscriptenPointerlockChangeEvent> =
::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<EmscriptenPointerlockChangeEvent>(),
260usize,
concat!("Size of: ", stringify!(EmscriptenPointerlockChangeEvent))
);
assert_eq!(
::std::mem::align_of::<EmscriptenPointerlockChangeEvent>(),
4usize,
concat!(
"Alignment of ",
stringify!(EmscriptenPointerlockChangeEvent)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).isActive) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(EmscriptenPointerlockChangeEvent),
"::",
stringify!(isActive)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).nodeName) as usize - ptr as usize },
4usize,
concat!(
"Offset of field: ",
stringify!(EmscriptenPointerlockChangeEvent),
"::",
stringify!(nodeName)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).id) as usize - ptr as usize },
132usize,
concat!(
"Offset of field: ",
stringify!(EmscriptenPointerlockChangeEvent),
"::",
stringify!(id)
)
);
}
pub type em_pointerlockchange_callback_func = ::std::option::Option<
unsafe extern "C" fn(
eventType: ::std::os::raw::c_int,
pointerlockChangeEvent: *const EmscriptenPointerlockChangeEvent,
userData: *mut ::std::os::raw::c_void,
) -> ::std::os::raw::c_int,
>;
extern "C" {
pub fn emscripten_set_pointerlockchange_callback_on_thread(
target: *const ::std::os::raw::c_char,
userData: *mut ::std::os::raw::c_void,
useCapture: ::std::os::raw::c_int,
callback: em_pointerlockchange_callback_func,
targetThread: pthread_t,
) -> ::std::os::raw::c_int;
}
pub type em_pointerlockerror_callback_func = ::std::option::Option<
unsafe extern "C" fn(
eventType: ::std::os::raw::c_int,
reserved: *const ::std::os::raw::c_void,
userData: *mut ::std::os::raw::c_void,
) -> ::std::os::raw::c_int,
>;
extern "C" {
pub fn emscripten_set_pointerlockerror_callback_on_thread(
target: *const ::std::os::raw::c_char,
userData: *mut ::std::os::raw::c_void,
useCapture: ::std::os::raw::c_int,
callback: em_pointerlockerror_callback_func,
targetThread: pthread_t,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn emscripten_get_pointerlock_status(
pointerlockStatus: *mut EmscriptenPointerlockChangeEvent,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn emscripten_request_pointerlock(
target: *const ::std::os::raw::c_char,
deferUntilInEventHandler: ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn emscripten_exit_pointerlock() -> ::std::os::raw::c_int;
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct EmscriptenVisibilityChangeEvent {
pub hidden: ::std::os::raw::c_int,
pub visibilityState: ::std::os::raw::c_int,
}
#[test]
fn bindgen_test_layout_EmscriptenVisibilityChangeEvent() {
const UNINIT: ::std::mem::MaybeUninit<EmscriptenVisibilityChangeEvent> =
::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<EmscriptenVisibilityChangeEvent>(),
8usize,
concat!("Size of: ", stringify!(EmscriptenVisibilityChangeEvent))
);
assert_eq!(
::std::mem::align_of::<EmscriptenVisibilityChangeEvent>(),
4usize,
concat!("Alignment of ", stringify!(EmscriptenVisibilityChangeEvent))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).hidden) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(EmscriptenVisibilityChangeEvent),
"::",
stringify!(hidden)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).visibilityState) as usize - ptr as usize },
4usize,
concat!(
"Offset of field: ",
stringify!(EmscriptenVisibilityChangeEvent),
"::",
stringify!(visibilityState)
)
);
}
pub type em_visibilitychange_callback_func = ::std::option::Option<
unsafe extern "C" fn(
eventType: ::std::os::raw::c_int,
visibilityChangeEvent: *const EmscriptenVisibilityChangeEvent,
userData: *mut ::std::os::raw::c_void,
) -> ::std::os::raw::c_int,
>;
extern "C" {
pub fn emscripten_set_visibilitychange_callback_on_thread(
userData: *mut ::std::os::raw::c_void,
useCapture: ::std::os::raw::c_int,
callback: em_visibilitychange_callback_func,
targetThread: pthread_t,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn emscripten_get_visibility_status(
visibilityStatus: *mut EmscriptenVisibilityChangeEvent,
) -> ::std::os::raw::c_int;
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct EmscriptenTouchPoint {
pub identifier: ::std::os::raw::c_long,
pub screenX: ::std::os::raw::c_long,
pub screenY: ::std::os::raw::c_long,
pub clientX: ::std::os::raw::c_long,
pub clientY: ::std::os::raw::c_long,
pub pageX: ::std::os::raw::c_long,
pub pageY: ::std::os::raw::c_long,
pub isChanged: ::std::os::raw::c_int,
pub onTarget: ::std::os::raw::c_int,
pub targetX: ::std::os::raw::c_long,
pub targetY: ::std::os::raw::c_long,
pub canvasX: ::std::os::raw::c_long,
pub canvasY: ::std::os::raw::c_long,
}
#[test]
fn bindgen_test_layout_EmscriptenTouchPoint() {
const UNINIT: ::std::mem::MaybeUninit<EmscriptenTouchPoint> = ::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<EmscriptenTouchPoint>(),
52usize,
concat!("Size of: ", stringify!(EmscriptenTouchPoint))
);
assert_eq!(
::std::mem::align_of::<EmscriptenTouchPoint>(),
4usize,
concat!("Alignment of ", stringify!(EmscriptenTouchPoint))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).identifier) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(EmscriptenTouchPoint),
"::",
stringify!(identifier)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).screenX) as usize - ptr as usize },
4usize,
concat!(
"Offset of field: ",
stringify!(EmscriptenTouchPoint),
"::",
stringify!(screenX)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).screenY) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(EmscriptenTouchPoint),
"::",
stringify!(screenY)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).clientX) as usize - ptr as usize },
12usize,
concat!(
"Offset of field: ",
stringify!(EmscriptenTouchPoint),
"::",
stringify!(clientX)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).clientY) as usize - ptr as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(EmscriptenTouchPoint),
"::",
stringify!(clientY)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).pageX) as usize - ptr as usize },
20usize,
concat!(
"Offset of field: ",
stringify!(EmscriptenTouchPoint),
"::",
stringify!(pageX)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).pageY) as usize - ptr as usize },
24usize,
concat!(
"Offset of field: ",
stringify!(EmscriptenTouchPoint),
"::",
stringify!(pageY)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).isChanged) as usize - ptr as usize },
28usize,
concat!(
"Offset of field: ",
stringify!(EmscriptenTouchPoint),
"::",
stringify!(isChanged)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).onTarget) as usize - ptr as usize },
32usize,
concat!(
"Offset of field: ",
stringify!(EmscriptenTouchPoint),
"::",
stringify!(onTarget)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).targetX) as usize - ptr as usize },
36usize,
concat!(
"Offset of field: ",
stringify!(EmscriptenTouchPoint),
"::",
stringify!(targetX)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).targetY) as usize - ptr as usize },
40usize,
concat!(
"Offset of field: ",
stringify!(EmscriptenTouchPoint),
"::",
stringify!(targetY)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).canvasX) as usize - ptr as usize },
44usize,
concat!(
"Offset of field: ",
stringify!(EmscriptenTouchPoint),
"::",
stringify!(canvasX)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).canvasY) as usize - ptr as usize },
48usize,
concat!(
"Offset of field: ",
stringify!(EmscriptenTouchPoint),
"::",
stringify!(canvasY)
)
);
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct EmscriptenTouchEvent {
pub timestamp: f64,
pub numTouches: ::std::os::raw::c_int,
pub ctrlKey: ::std::os::raw::c_int,
pub shiftKey: ::std::os::raw::c_int,
pub altKey: ::std::os::raw::c_int,
pub metaKey: ::std::os::raw::c_int,
pub touches: [EmscriptenTouchPoint; 32usize],
}
#[test]
fn bindgen_test_layout_EmscriptenTouchEvent() {
const UNINIT: ::std::mem::MaybeUninit<EmscriptenTouchEvent> = ::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<EmscriptenTouchEvent>(),
1696usize,
concat!("Size of: ", stringify!(EmscriptenTouchEvent))
);
assert_eq!(
::std::mem::align_of::<EmscriptenTouchEvent>(),
8usize,
concat!("Alignment of ", stringify!(EmscriptenTouchEvent))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).timestamp) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(EmscriptenTouchEvent),
"::",
stringify!(timestamp)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).numTouches) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(EmscriptenTouchEvent),
"::",
stringify!(numTouches)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).ctrlKey) as usize - ptr as usize },
12usize,
concat!(
"Offset of field: ",
stringify!(EmscriptenTouchEvent),
"::",
stringify!(ctrlKey)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).shiftKey) as usize - ptr as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(EmscriptenTouchEvent),
"::",
stringify!(shiftKey)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).altKey) as usize - ptr as usize },
20usize,
concat!(
"Offset of field: ",
stringify!(EmscriptenTouchEvent),
"::",
stringify!(altKey)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).metaKey) as usize - ptr as usize },
24usize,
concat!(
"Offset of field: ",
stringify!(EmscriptenTouchEvent),
"::",
stringify!(metaKey)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).touches) as usize - ptr as usize },
28usize,
concat!(
"Offset of field: ",
stringify!(EmscriptenTouchEvent),
"::",
stringify!(touches)
)
);
}
pub type em_touch_callback_func = ::std::option::Option<
unsafe extern "C" fn(
eventType: ::std::os::raw::c_int,
touchEvent: *const EmscriptenTouchEvent,
userData: *mut ::std::os::raw::c_void,
) -> ::std::os::raw::c_int,
>;
extern "C" {
pub fn emscripten_set_touchstart_callback_on_thread(
target: *const ::std::os::raw::c_char,
userData: *mut ::std::os::raw::c_void,
useCapture: ::std::os::raw::c_int,
callback: em_touch_callback_func,
targetThread: pthread_t,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn emscripten_set_touchend_callback_on_thread(
target: *const ::std::os::raw::c_char,
userData: *mut ::std::os::raw::c_void,
useCapture: ::std::os::raw::c_int,
callback: em_touch_callback_func,
targetThread: pthread_t,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn emscripten_set_touchmove_callback_on_thread(
target: *const ::std::os::raw::c_char,
userData: *mut ::std::os::raw::c_void,
useCapture: ::std::os::raw::c_int,
callback: em_touch_callback_func,
targetThread: pthread_t,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn emscripten_set_touchcancel_callback_on_thread(
target: *const ::std::os::raw::c_char,
userData: *mut ::std::os::raw::c_void,
useCapture: ::std::os::raw::c_int,
callback: em_touch_callback_func,
targetThread: pthread_t,
) -> ::std::os::raw::c_int;
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct EmscriptenGamepadEvent {
pub timestamp: f64,
pub numAxes: ::std::os::raw::c_int,
pub numButtons: ::std::os::raw::c_int,
pub axis: [f64; 64usize],
pub analogButton: [f64; 64usize],
pub digitalButton: [::std::os::raw::c_int; 64usize],
pub connected: ::std::os::raw::c_int,
pub index: ::std::os::raw::c_long,
pub id: [::std::os::raw::c_char; 64usize],
pub mapping: [::std::os::raw::c_char; 64usize],
}
#[test]
fn bindgen_test_layout_EmscriptenGamepadEvent() {
const UNINIT: ::std::mem::MaybeUninit<EmscriptenGamepadEvent> =
::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<EmscriptenGamepadEvent>(),
1432usize,
concat!("Size of: ", stringify!(EmscriptenGamepadEvent))
);
assert_eq!(
::std::mem::align_of::<EmscriptenGamepadEvent>(),
8usize,
concat!("Alignment of ", stringify!(EmscriptenGamepadEvent))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).timestamp) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(EmscriptenGamepadEvent),
"::",
stringify!(timestamp)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).numAxes) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(EmscriptenGamepadEvent),
"::",
stringify!(numAxes)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).numButtons) as usize - ptr as usize },
12usize,
concat!(
"Offset of field: ",
stringify!(EmscriptenGamepadEvent),
"::",
stringify!(numButtons)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).axis) as usize - ptr as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(EmscriptenGamepadEvent),
"::",
stringify!(axis)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).analogButton) as usize - ptr as usize },
528usize,
concat!(
"Offset of field: ",
stringify!(EmscriptenGamepadEvent),
"::",
stringify!(analogButton)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).digitalButton) as usize - ptr as usize },
1040usize,
concat!(
"Offset of field: ",
stringify!(EmscriptenGamepadEvent),
"::",
stringify!(digitalButton)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).connected) as usize - ptr as usize },
1296usize,
concat!(
"Offset of field: ",
stringify!(EmscriptenGamepadEvent),
"::",
stringify!(connected)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).index) as usize - ptr as usize },
1300usize,
concat!(
"Offset of field: ",
stringify!(EmscriptenGamepadEvent),
"::",
stringify!(index)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).id) as usize - ptr as usize },
1304usize,
concat!(
"Offset of field: ",
stringify!(EmscriptenGamepadEvent),
"::",
stringify!(id)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).mapping) as usize - ptr as usize },
1368usize,
concat!(
"Offset of field: ",
stringify!(EmscriptenGamepadEvent),
"::",
stringify!(mapping)
)
);
}
pub type em_gamepad_callback_func = ::std::option::Option<
unsafe extern "C" fn(
eventType: ::std::os::raw::c_int,
gamepadEvent: *const EmscriptenGamepadEvent,
userData: *mut ::std::os::raw::c_void,
) -> ::std::os::raw::c_int,
>;
extern "C" {
pub fn emscripten_set_gamepadconnected_callback_on_thread(
userData: *mut ::std::os::raw::c_void,
useCapture: ::std::os::raw::c_int,
callback: em_gamepad_callback_func,
targetThread: pthread_t,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn emscripten_set_gamepaddisconnected_callback_on_thread(
userData: *mut ::std::os::raw::c_void,
useCapture: ::std::os::raw::c_int,
callback: em_gamepad_callback_func,
targetThread: pthread_t,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn emscripten_sample_gamepad_data() -> ::std::os::raw::c_int;
}
extern "C" {
pub fn emscripten_get_num_gamepads() -> ::std::os::raw::c_int;
}
extern "C" {
pub fn emscripten_get_gamepad_status(
index: ::std::os::raw::c_int,
gamepadState: *mut EmscriptenGamepadEvent,
) -> ::std::os::raw::c_int;
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct EmscriptenBatteryEvent {
pub chargingTime: f64,
pub dischargingTime: f64,
pub level: f64,
pub charging: ::std::os::raw::c_int,
}
#[test]
fn bindgen_test_layout_EmscriptenBatteryEvent() {
const UNINIT: ::std::mem::MaybeUninit<EmscriptenBatteryEvent> =
::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<EmscriptenBatteryEvent>(),
32usize,
concat!("Size of: ", stringify!(EmscriptenBatteryEvent))
);
assert_eq!(
::std::mem::align_of::<EmscriptenBatteryEvent>(),
8usize,
concat!("Alignment of ", stringify!(EmscriptenBatteryEvent))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).chargingTime) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(EmscriptenBatteryEvent),
"::",
stringify!(chargingTime)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).dischargingTime) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(EmscriptenBatteryEvent),
"::",
stringify!(dischargingTime)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).level) as usize - ptr as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(EmscriptenBatteryEvent),
"::",
stringify!(level)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).charging) as usize - ptr as usize },
24usize,
concat!(
"Offset of field: ",
stringify!(EmscriptenBatteryEvent),
"::",
stringify!(charging)
)
);
}
pub type em_battery_callback_func = ::std::option::Option<
unsafe extern "C" fn(
eventType: ::std::os::raw::c_int,
batteryEvent: *const EmscriptenBatteryEvent,
userData: *mut ::std::os::raw::c_void,
) -> ::std::os::raw::c_int,
>;
extern "C" {
pub fn emscripten_set_batterychargingchange_callback_on_thread(
userData: *mut ::std::os::raw::c_void,
callback: em_battery_callback_func,
targetThread: pthread_t,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn emscripten_set_batterylevelchange_callback_on_thread(
userData: *mut ::std::os::raw::c_void,
callback: em_battery_callback_func,
targetThread: pthread_t,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn emscripten_get_battery_status(
batteryState: *mut EmscriptenBatteryEvent,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn emscripten_vibrate(msecs: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn emscripten_vibrate_pattern(
msecsArray: *mut ::std::os::raw::c_int,
numEntries: ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
pub type em_beforeunload_callback = ::std::option::Option<
unsafe extern "C" fn(
eventType: ::std::os::raw::c_int,
reserved: *const ::std::os::raw::c_void,
userData: *mut ::std::os::raw::c_void,
) -> *const ::std::os::raw::c_char,
>;
extern "C" {
pub fn emscripten_set_beforeunload_callback_on_thread(
userData: *mut ::std::os::raw::c_void,
callback: em_beforeunload_callback,
targetThread: pthread_t,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn emscripten_set_canvas_element_size(
target: *const ::std::os::raw::c_char,
width: ::std::os::raw::c_int,
height: ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn emscripten_get_canvas_element_size(
target: *const ::std::os::raw::c_char,
width: *mut ::std::os::raw::c_int,
height: *mut ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn emscripten_set_element_css_size(
target: *const ::std::os::raw::c_char,
width: f64,
height: f64,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn emscripten_get_element_css_size(
target: *const ::std::os::raw::c_char,
width: *mut f64,
height: *mut f64,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn emscripten_html5_remove_all_event_listeners();
}
extern "C" {
pub fn emscripten_request_animation_frame(
cb: ::std::option::Option<
unsafe extern "C" fn(
time: f64,
userData: *mut ::std::os::raw::c_void,
) -> ::std::os::raw::c_int,
>,
userData: *mut ::std::os::raw::c_void,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn emscripten_cancel_animation_frame(requestAnimationFrameId: ::std::os::raw::c_int);
}
extern "C" {
pub fn emscripten_request_animation_frame_loop(
cb: ::std::option::Option<
unsafe extern "C" fn(
time: f64,
userData: *mut ::std::os::raw::c_void,
) -> ::std::os::raw::c_int,
>,
userData: *mut ::std::os::raw::c_void,
);
}
extern "C" {
pub fn emscripten_date_now() -> f64;
}
extern "C" {
pub fn emscripten_performance_now() -> f64;
}
pub type EMSCRIPTEN_WEBGL_CONTEXT_HANDLE = ::std::os::raw::c_int;
pub type EMSCRIPTEN_WEBGL_CONTEXT_PROXY_MODE = ::std::os::raw::c_int;
pub type EM_WEBGL_POWER_PREFERENCE = ::std::os::raw::c_int;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct EmscriptenWebGLContextAttributes {
pub alpha: ::std::os::raw::c_int,
pub depth: ::std::os::raw::c_int,
pub stencil: ::std::os::raw::c_int,
pub antialias: ::std::os::raw::c_int,
pub premultipliedAlpha: ::std::os::raw::c_int,
pub preserveDrawingBuffer: ::std::os::raw::c_int,
pub powerPreference: EM_WEBGL_POWER_PREFERENCE,
pub failIfMajorPerformanceCaveat: ::std::os::raw::c_int,
pub majorVersion: ::std::os::raw::c_int,
pub minorVersion: ::std::os::raw::c_int,
pub enableExtensionsByDefault: ::std::os::raw::c_int,
pub explicitSwapControl: ::std::os::raw::c_int,
pub proxyContextToMainThread: EMSCRIPTEN_WEBGL_CONTEXT_PROXY_MODE,
pub renderViaOffscreenBackBuffer: ::std::os::raw::c_int,
}
#[test]
fn bindgen_test_layout_EmscriptenWebGLContextAttributes() {
const UNINIT: ::std::mem::MaybeUninit<EmscriptenWebGLContextAttributes> =
::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<EmscriptenWebGLContextAttributes>(),
56usize,
concat!("Size of: ", stringify!(EmscriptenWebGLContextAttributes))
);
assert_eq!(
::std::mem::align_of::<EmscriptenWebGLContextAttributes>(),
4usize,
concat!(
"Alignment of ",
stringify!(EmscriptenWebGLContextAttributes)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).alpha) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(EmscriptenWebGLContextAttributes),
"::",
stringify!(alpha)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).depth) as usize - ptr as usize },
4usize,
concat!(
"Offset of field: ",
stringify!(EmscriptenWebGLContextAttributes),
"::",
stringify!(depth)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).stencil) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(EmscriptenWebGLContextAttributes),
"::",
stringify!(stencil)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).antialias) as usize - ptr as usize },
12usize,
concat!(
"Offset of field: ",
stringify!(EmscriptenWebGLContextAttributes),
"::",
stringify!(antialias)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).premultipliedAlpha) as usize - ptr as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(EmscriptenWebGLContextAttributes),
"::",
stringify!(premultipliedAlpha)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).preserveDrawingBuffer) as usize - ptr as usize },
20usize,
concat!(
"Offset of field: ",
stringify!(EmscriptenWebGLContextAttributes),
"::",
stringify!(preserveDrawingBuffer)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).powerPreference) as usize - ptr as usize },
24usize,
concat!(
"Offset of field: ",
stringify!(EmscriptenWebGLContextAttributes),
"::",
stringify!(powerPreference)
)
);
assert_eq!(
unsafe {
::std::ptr::addr_of!((*ptr).failIfMajorPerformanceCaveat) as usize - ptr as usize
},
28usize,
concat!(
"Offset of field: ",
stringify!(EmscriptenWebGLContextAttributes),
"::",
stringify!(failIfMajorPerformanceCaveat)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).majorVersion) as usize - ptr as usize },
32usize,
concat!(
"Offset of field: ",
stringify!(EmscriptenWebGLContextAttributes),
"::",
stringify!(majorVersion)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).minorVersion) as usize - ptr as usize },
36usize,
concat!(
"Offset of field: ",
stringify!(EmscriptenWebGLContextAttributes),
"::",
stringify!(minorVersion)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).enableExtensionsByDefault) as usize - ptr as usize },
40usize,
concat!(
"Offset of field: ",
stringify!(EmscriptenWebGLContextAttributes),
"::",
stringify!(enableExtensionsByDefault)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).explicitSwapControl) as usize - ptr as usize },
44usize,
concat!(
"Offset of field: ",
stringify!(EmscriptenWebGLContextAttributes),
"::",
stringify!(explicitSwapControl)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).proxyContextToMainThread) as usize - ptr as usize },
48usize,
concat!(
"Offset of field: ",
stringify!(EmscriptenWebGLContextAttributes),
"::",
stringify!(proxyContextToMainThread)
)
);
assert_eq!(
unsafe {
::std::ptr::addr_of!((*ptr).renderViaOffscreenBackBuffer) as usize - ptr as usize
},
52usize,
concat!(
"Offset of field: ",
stringify!(EmscriptenWebGLContextAttributes),
"::",
stringify!(renderViaOffscreenBackBuffer)
)
);
}
extern "C" {
pub fn emscripten_webgl_init_context_attributes(
attributes: *mut EmscriptenWebGLContextAttributes,
);
}
extern "C" {
pub fn emscripten_webgl_create_context(
target: *const ::std::os::raw::c_char,
attributes: *const EmscriptenWebGLContextAttributes,
) -> EMSCRIPTEN_WEBGL_CONTEXT_HANDLE;
}
extern "C" {
pub fn emscripten_webgl_make_context_current(
context: EMSCRIPTEN_WEBGL_CONTEXT_HANDLE,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn emscripten_webgl_get_current_context() -> EMSCRIPTEN_WEBGL_CONTEXT_HANDLE;
}
extern "C" {
pub fn emscripten_webgl_get_drawing_buffer_size(
context: EMSCRIPTEN_WEBGL_CONTEXT_HANDLE,
width: *mut ::std::os::raw::c_int,
height: *mut ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn emscripten_webgl_get_context_attributes(
context: EMSCRIPTEN_WEBGL_CONTEXT_HANDLE,
outAttributes: *mut EmscriptenWebGLContextAttributes,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn emscripten_webgl_destroy_context(
context: EMSCRIPTEN_WEBGL_CONTEXT_HANDLE,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn emscripten_webgl_enable_extension(
context: EMSCRIPTEN_WEBGL_CONTEXT_HANDLE,
extension: *const ::std::os::raw::c_char,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn emscripten_webgl_enable_ANGLE_instanced_arrays(
context: EMSCRIPTEN_WEBGL_CONTEXT_HANDLE,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn emscripten_webgl_enable_OES_vertex_array_object(
context: EMSCRIPTEN_WEBGL_CONTEXT_HANDLE,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn emscripten_webgl_enable_WEBGL_draw_buffers(
context: EMSCRIPTEN_WEBGL_CONTEXT_HANDLE,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn emscripten_webgl_enable_WEBGL_draw_instanced_base_vertex_base_instance(
context: EMSCRIPTEN_WEBGL_CONTEXT_HANDLE,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn emscripten_webgl_enable_WEBGL_multi_draw(
context: EMSCRIPTEN_WEBGL_CONTEXT_HANDLE,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn emscripten_webgl_enable_WEBGL_multi_draw_instanced_base_vertex_base_instance(
context: EMSCRIPTEN_WEBGL_CONTEXT_HANDLE,
) -> ::std::os::raw::c_int;
}
pub type em_webgl_context_callback = ::std::option::Option<
unsafe extern "C" fn(
eventType: ::std::os::raw::c_int,
reserved: *const ::std::os::raw::c_void,
userData: *mut ::std::os::raw::c_void,
) -> ::std::os::raw::c_int,
>;
extern "C" {
pub fn emscripten_set_webglcontextlost_callback_on_thread(
target: *const ::std::os::raw::c_char,
userData: *mut ::std::os::raw::c_void,
useCapture: ::std::os::raw::c_int,
callback: em_webgl_context_callback,
targetThread: pthread_t,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn emscripten_set_webglcontextrestored_callback_on_thread(
target: *const ::std::os::raw::c_char,
userData: *mut ::std::os::raw::c_void,
useCapture: ::std::os::raw::c_int,
callback: em_webgl_context_callback,
targetThread: pthread_t,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn emscripten_is_webgl_context_lost(
context: EMSCRIPTEN_WEBGL_CONTEXT_HANDLE,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn emscripten_webgl_commit_frame() -> ::std::os::raw::c_int;
}
extern "C" {
pub fn emscripten_supports_offscreencanvas() -> ::std::os::raw::c_int;
}
extern "C" {
pub fn emscripten_webgl1_get_proc_address(
name: *const ::std::os::raw::c_char,
) -> *mut ::std::os::raw::c_void;
}
extern "C" {
pub fn emscripten_webgl2_get_proc_address(
name: *const ::std::os::raw::c_char,
) -> *mut ::std::os::raw::c_void;
}
extern "C" {
pub fn emscripten_webgl_get_proc_address(
name: *const ::std::os::raw::c_char,
) -> *mut ::std::os::raw::c_void;
}
extern "C" {
pub fn emscripten_webgl_get_supported_extensions() -> *mut ::std::os::raw::c_char;
}
extern "C" {
pub fn emscripten_webgl_get_shader_parameter_d(
shader: ::std::os::raw::c_int,
param: ::std::os::raw::c_int,
) -> f64;
}
extern "C" {
pub fn emscripten_webgl_get_shader_info_log_utf8(
shader: ::std::os::raw::c_int,
) -> *mut ::std::os::raw::c_char;
}
extern "C" {
pub fn emscripten_webgl_get_shader_source_utf8(
shader: ::std::os::raw::c_int,
) -> *mut ::std::os::raw::c_char;
}
extern "C" {
pub fn emscripten_webgl_get_program_parameter_d(
program: ::std::os::raw::c_int,
param: ::std::os::raw::c_int,
) -> f64;
}
extern "C" {
pub fn emscripten_webgl_get_program_info_log_utf8(
program: ::std::os::raw::c_int,
) -> *mut ::std::os::raw::c_char;
}
extern "C" {
pub fn emscripten_webgl_get_vertex_attrib_d(
index: ::std::os::raw::c_int,
param: ::std::os::raw::c_int,
) -> f64;
}
extern "C" {
pub fn emscripten_webgl_get_vertex_attrib_o(
index: ::std::os::raw::c_int,
param: ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn emscripten_webgl_get_vertex_attrib_v(
index: ::std::os::raw::c_int,
param: ::std::os::raw::c_int,
dst: *mut ::std::os::raw::c_void,
dstLength: ::std::os::raw::c_int,
dstType: ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn emscripten_webgl_get_uniform_d(
program: ::std::os::raw::c_int,
location: ::std::os::raw::c_int,
) -> f64;
}
extern "C" {
pub fn emscripten_webgl_get_uniform_v(
program: ::std::os::raw::c_int,
location: ::std::os::raw::c_int,
dst: *mut ::std::os::raw::c_void,
dstLength: ::std::os::raw::c_int,
dstType: ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn emscripten_webgl_get_parameter_v(
param: ::std::os::raw::c_int,
dst: *mut ::std::os::raw::c_void,
dstLength: ::std::os::raw::c_int,
dstType: ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn emscripten_webgl_get_parameter_d(param: ::std::os::raw::c_int) -> f64;
}
extern "C" {
pub fn emscripten_webgl_get_parameter_o(param: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn emscripten_webgl_get_parameter_utf8(
param: ::std::os::raw::c_int,
) -> *mut ::std::os::raw::c_char;
}
extern "C" {
pub fn emscripten_webgl_get_parameter_i64v(
param: ::std::os::raw::c_int,
dst: *mut ::std::os::raw::c_longlong,
);
}