pub use crate::{c_char, c_float, c_void, stdinc::*};
#[repr(transparent)]
pub struct SDL_Sensor(c_void);
#[derive(Debug, Clone, Copy, Default, PartialEq, Eq, PartialOrd, Ord, Hash)]
#[repr(transparent)]
pub struct SDL_SensorID(pub Sint32);
#[derive(Debug, Clone, Copy, Default, PartialEq, Eq, PartialOrd, Ord, Hash)]
#[repr(transparent)]
pub struct SDL_SensorType(pub i32);
pub const SDL_SENSOR_INVALID: SDL_SensorType = SDL_SensorType(-1);
pub const SDL_SENSOR_UNKNOWN: SDL_SensorType = SDL_SensorType(0);
pub const SDL_SENSOR_ACCEL: SDL_SensorType = SDL_SensorType(1);
pub const SDL_SENSOR_GYRO: SDL_SensorType = SDL_SensorType(2);
pub const SDL_STANDARD_GRAVITY: c_float = 9.80665;
extern "C" {
pub fn SDL_NumSensors() -> c_int;
pub fn SDL_SensorGetDeviceName(device_index: c_int) -> *const c_char;
pub fn SDL_SensorGetDeviceType(device_index: c_int) -> SDL_SensorType;
pub fn SDL_SensorGetDeviceNonPortableType(device_index: c_int) -> c_int;
pub fn SDL_SensorGetDeviceInstanceID(device_index: c_int) -> SDL_SensorID;
pub fn SDL_SensorOpen(device_index: c_int) -> *mut SDL_Sensor;
pub fn SDL_SensorFromInstanceID(instance_id: SDL_SensorID)
-> *mut SDL_Sensor;
pub fn SDL_SensorGetName(sensor: *mut SDL_Sensor) -> *const c_char;
pub fn SDL_SensorGetType(sensor: *mut SDL_Sensor) -> SDL_SensorType;
pub fn SDL_SensorGetNonPortableType(sensor: *mut SDL_Sensor) -> c_int;
pub fn SDL_SensorGetInstanceID(sensor: *mut SDL_Sensor) -> SDL_SensorID;
pub fn SDL_SensorGetData(
sensor: *mut SDL_Sensor, data: *mut c_float, num_values: c_int,
) -> c_int;
pub fn SDL_SensorClose(sensor: *mut SDL_Sensor);
pub fn SDL_SensorUpdate();
}