module sdl3::sdl; typedef Sensor = void; typedef SensorID = uint; const float STANDARD_GRAVITY @builtin = 9.80665; typedef SensorType = CInt; const SensorType SENSOR_INVALID @builtin = -1; const SensorType SENSOR_UNKNOWN @builtin = 0; const SensorType SENSOR_ACCEL @builtin = 1; const SensorType SENSOR_GYRO @builtin = 2; const SensorType SENSOR_ACCEL_L @builtin = 3; const SensorType SENSOR_GYRO_L @builtin = 4; const SensorType SENSOR_ACCEL_R @builtin = 5; const SensorType SENSOR_GYRO_R @builtin = 6; extern fn SensorID* get_sensors(int *count) @extern("SDL_GetSensors"); extern fn ZString get_sensor_name_for_id(SensorID instance_id) @extern("SDL_GetSensorNameForID"); extern fn SensorType get_sensor_type_for_id(SensorID instance_id) @extern("SDL_GetSensorTypeForID"); extern fn int get_sensor_non_portable_type_for_id(SensorID instance_id) @extern("SDL_GetSensorNonPortableTypeForID"); extern fn Sensor* open_sensor(SensorID instance_id) @extern("SDL_OpenSensor"); extern fn Sensor* get_sensor_from_id(SensorID instance_id) @extern("SDL_GetSensorFromID"); extern fn PropertiesID get_sensor_properties(Sensor* sensor) @extern("SDL_GetSensorProperties"); extern fn ZString get_sensor_name(Sensor* sensor) @extern("SDL_GetSensorName"); extern fn SensorType get_sensor_type(Sensor* sensor) @extern("SDL_GetSensorType"); extern fn int get_sensor_non_portable_type(Sensor* sensor) @extern("SDL_GetSensorNonPortableType"); extern fn SensorID get_sensor_id(Sensor* sensor) @extern("SDL_GetSensorID"); extern fn bool get_sensor_data(Sensor* sensor, float *data, int num_values) @extern("SDL_GetSensorData"); extern fn void close_sensor(Sensor* sensor) @extern("SDL_CloseSensor"); extern fn void update_sensors() @extern("SDL_UpdateSensors");