From 54caf5f5764b3a36d31b2e5e1d63d2df79779228 Mon Sep 17 00:00:00 2001 From: gingerBill Date: Thu, 30 Jan 2025 14:36:50 +0000 Subject: [PATCH] Add sdl3_sensor.odin --- vendor/sdl3/sdl3_sensor.odin | 38 ++++++++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 vendor/sdl3/sdl3_sensor.odin diff --git a/vendor/sdl3/sdl3_sensor.odin b/vendor/sdl3/sdl3_sensor.odin new file mode 100644 index 000000000..bd14fd3ba --- /dev/null +++ b/vendor/sdl3/sdl3_sensor.odin @@ -0,0 +1,38 @@ +package sdl3 + +import "core:c" + +Sensor :: struct {} + +SensorID :: distinct Uint32 + +STANDARD_GRAVITY :: 9.80665 + +SensorType :: enum c.int { + INVALID = -1, /**< Returned for an invalid sensor */ + UNKNOWN, /**< Unknown sensor type */ + ACCEL, /**< Accelerometer */ + GYRO, /**< Gyroscope */ + ACCEL_L, /**< Accelerometer for left Joy-Con controller and Wii nunchuk */ + GYRO_L, /**< Gyroscope for left Joy-Con controller */ + ACCEL_R, /**< Accelerometer for right Joy-Con controller */ + GYRO_R, /**< Gyroscope for right Joy-Con controller */ +} + +@(default_calling_convention="c", link_prefix="SDL_") +foreign lib { + GetSensors :: proc(count: ^c.int) -> [^]SensorID --- + GetSensorNameForID :: proc(instance_id: SensorID) -> cstring --- + GetSensorTypeForID :: proc(instance_id: SensorID) -> SensorType --- + GetSensorNonPortableTypeForID :: proc(instance_id: SensorID) -> c.int --- + OpenSensor :: proc(instance_id: SensorID) -> ^Sensor --- + GetSensorFromID :: proc(instance_id: SensorID) -> ^Sensor --- + GetSensorProperties :: proc(sensor: ^Sensor) -> PropertiesID --- + GetSensorName :: proc(sensor: ^Sensor) -> cstring --- + GetSensorType :: proc(sensor: ^Sensor) -> SensorType --- + GetSensorNonPortableType :: proc(sensor: ^Sensor) -> c.int --- + GetSensorID :: proc(sensor: ^Sensor) -> SensorID --- + GetSensorData :: proc(sensor: ^Sensor, data: [^]f32, num_values: c.int) -> bool --- + CloseSensor :: proc(sensor: ^Sensor) --- + UpdateSensors :: proc() --- +} \ No newline at end of file