11#include " pch.h"
22#include " AirAPI_Windows.h"
3- #include < stdio.h>
4- #include < stdlib.h>
5- #include < stdint.h>
6- #include < string.h>
73#include " deps/hidapi-win/include/hidapi.h"
8- #include " deps/cglm/include/cglm/cglm.h"
94#include " deps/Fusion/Fusion/Fusion.h"
10- #include < Windows.h>
115#include < iostream>
126#include < mutex>
137
@@ -28,7 +22,6 @@ bool g_isTracking = false;
2822#define ACCEL_SCALAR (1 .0f / 8388608 .0f * 16 .0f )
2923
3024static int rows, cols;
31- static versor rotation = GLM_QUAT_IDENTITY_INIT;
3225static FusionEuler euler;
3326static FusionVector earth;
3427static FusionQuaternion qt;
@@ -193,21 +186,23 @@ parse_report(const unsigned char* buffer_in, int size, air_sample* out_sample)
193186
194187
195188static void
196- process_ang_vel (const int32_t in_ang_vel[3 ], vec3 out_vec)
189+ process_ang_vel (const int32_t in_ang_vel[3 ], float out_vec[] )
197190{
191+
198192 // these scale and bias corrections are all rough guesses
199193 out_vec[0 ] = (float )(in_ang_vel[0 ]) * -1 .0f * GYRO_SCALAR;
200194 out_vec[1 ] = (float )(in_ang_vel[2 ]) * GYRO_SCALAR;
201195 out_vec[2 ] = (float )(in_ang_vel[1 ]) * GYRO_SCALAR;
202196}
203197
204198static void
205- process_accel (const int32_t in_accel[3 ], vec3 out_vec)
199+ process_accel (const int32_t in_accel[3 ], float out_vec[] )
206200{
207201 // these scale and bias corrections are all rough guesses
208202 out_vec[0 ] = (float )(in_accel[0 ]) * ACCEL_SCALAR;
209203 out_vec[1 ] = (float )(in_accel[2 ]) * ACCEL_SCALAR;
210204 out_vec[2 ] = (float )(in_accel[1 ]) * ACCEL_SCALAR;
205+
211206}
212207
213208
@@ -242,7 +237,9 @@ DWORD WINAPI track(LPVOID lpParam) {
242237 uint64_t last_sample_tick = 0 ;
243238 air_sample sample = {};
244239 ThreadParams* params = static_cast <ThreadParams*>(lpParam);
245- static vec3 ang_vel = {}, accel_vec = {};
240+ // static FusionVector ang_vel = {}, accel_vec = {};
241+ static float ang_vel[3 ] = {};
242+ static float accel_vec[3 ] = {};
246243
247244
248245 // Define calibration (replace with actual calibration data if available)
0 commit comments