diff options
-rw-r--r-- | data_recorder.c | 8 | ||||
-rw-r--r-- | src/ootx_decoder.c | 7 | ||||
-rwxr-xr-x | src/survive.c | 2 | ||||
-rw-r--r-- | src/survive_config.c | 2 | ||||
-rwxr-xr-x | src/survive_vive.c | 16 | ||||
-rw-r--r-- | winbuild/libsurvive/libsurvive.vcxproj | 2 | ||||
-rw-r--r-- | winbuild/libsurvive/libsurvive.vcxproj.filters | 6 |
7 files changed, 39 insertions, 4 deletions
diff --git a/data_recorder.c b/data_recorder.c index 80e95be..8116946 100644 --- a/data_recorder.c +++ b/data_recorder.c @@ -12,9 +12,13 @@ #include <stdlib.h> #include <string.h> #include <survive.h> -#include <sys/time.h> + #include <time.h> +#ifndef _MSC_VER +#include <sys/time.h> +#endif + #include "redist/os_generic.h" struct SurviveContext *ctx; @@ -50,7 +54,7 @@ double timestamp_in_us() { return OGGetAbsoluteTime() - start_time_us; } -int write_to_output(const char *format, ...) { +void write_to_output(const char *format, ...) { va_list args; va_start(args, format); fprintf(output_file, "%0.6f ", timestamp_in_us()); diff --git a/src/ootx_decoder.c b/src/ootx_decoder.c index b7327d5..0620284 100644 --- a/src/ootx_decoder.c +++ b/src/ootx_decoder.c @@ -182,10 +182,15 @@ union iFloat { float f; }; - +#ifndef _MSC_VER struct __attribute__((__packed__)) unaligned_u16_t { uint16_t v; }; +#else +struct unaligned_u16_t { + uint16_t v; +}; +#endif float _half_to_float(uint8_t* data) { uint16_t x = ((struct unaligned_u16_t*)data)->v; diff --git a/src/survive.c b/src/survive.c index 21e1f0e..5d0d35f 100755 --- a/src/survive.c +++ b/src/survive.c @@ -96,7 +96,7 @@ static void *button_servicer(void * context) void survive_verify_FLT_size(uint32_t user_size) { if(sizeof(FLT) != user_size) { - fprintf(stderr, "FLT type incompatible; the shared library libsurvive has FLT size %lu vs user program %u\n", sizeof(FLT), user_size); + fprintf(stderr, "FLT type incompatible; the shared library libsurvive has FLT size %lu vs user program %u\n", (unsigned long)sizeof(FLT), user_size); fprintf(stderr, "Add '#define FLT %s' before including survive.h or recompile the shared library with the appropriate flag. \n", sizeof(FLT) == sizeof(double) ? "double" : "float"); exit(-1); diff --git a/src/survive_config.c b/src/survive_config.c index 46c6658..d923ba4 100644 --- a/src/survive_config.c +++ b/src/survive_config.c @@ -119,6 +119,7 @@ void config_read_lighthouse(config_group* lh_config, BaseStationData* bsd, uint8 config_read_float_array(cg, "fcalcurve", bsd->fcalcurve, defaults, 2); config_read_float_array(cg, "fcalgibpha", bsd->fcalgibpha, defaults, 2); config_read_float_array(cg, "fcalgibmag", bsd->fcalgibmag, defaults, 2); + bsd->PositionSet = config_read_uint32(cg, "PositionSet", 0); } @@ -132,6 +133,7 @@ void config_set_lighthouse(config_group* lh_config, BaseStationData* bsd, uint8_ config_set_float_a(cg,"fcalcurve", bsd->fcalcurve,2); config_set_float_a(cg,"fcalgibpha", bsd->fcalgibpha,2); config_set_float_a(cg,"fcalgibmag", bsd->fcalgibmag,2); + config_set_uint32(cg, "PositionSet", bsd->PositionSet); } void sstrcpy(char** dest, const char *src) { diff --git a/src/survive_vive.c b/src/survive_vive.c index 5001efd..f250c22 100755 --- a/src/survive_vive.c +++ b/src/survive_vive.c @@ -904,6 +904,7 @@ int survive_get_config( char ** config, SurviveViveData * sv, int devno, int ifa #define POP1 (*(readdata++)) +#ifndef _MSC_VER struct __attribute__((__packed__)) unaligned_16_t { int16_t v; }; @@ -916,6 +917,21 @@ struct __attribute__((__packed__)) unaligned_u16_t { struct __attribute__((__packed__)) unaligned_u32_t { uint32_t v; }; +#else +struct unaligned_16_t { + int16_t v; +}; +struct unaligned_32_t { + int32_t v; +}; +struct unaligned_u16_t { + uint16_t v; +}; +struct unaligned_u32_t { + uint32_t v; +}; +#endif + #define POP2 ((((( struct unaligned_u16_t*)((readdata+=2)-2))))->v) #define POP4 ((((( struct unaligned_u32_t*)((readdata+=4)-4))))->v) diff --git a/winbuild/libsurvive/libsurvive.vcxproj b/winbuild/libsurvive/libsurvive.vcxproj index c794382..725243a 100644 --- a/winbuild/libsurvive/libsurvive.vcxproj +++ b/winbuild/libsurvive/libsurvive.vcxproj @@ -159,6 +159,7 @@ <ClCompile Include="..\..\src\survive_cal.c" /> <ClCompile Include="..\..\src\survive_config.c" /> <ClCompile Include="..\..\src\survive_data.c" /> + <ClCompile Include="..\..\src\survive_default_devices.c" /> <ClCompile Include="..\..\src\survive_driverman.c" /> <ClCompile Include="..\..\src\survive_process.c" /> <ClCompile Include="..\..\src\survive_usb.c" /> @@ -178,6 +179,7 @@ <ClInclude Include="..\..\src\ootx_decoder.h" /> <ClInclude Include="..\..\src\survive_cal.h" /> <ClInclude Include="..\..\src\survive_config.h" /> + <ClInclude Include="..\..\src\survive_default_devices.h" /> <ClInclude Include="..\..\src\survive_internal.h" /> <ClInclude Include="..\hidapi.h" /> </ItemGroup> diff --git a/winbuild/libsurvive/libsurvive.vcxproj.filters b/winbuild/libsurvive/libsurvive.vcxproj.filters index e7d44e2..4c8c3c5 100644 --- a/winbuild/libsurvive/libsurvive.vcxproj.filters +++ b/winbuild/libsurvive/libsurvive.vcxproj.filters @@ -90,6 +90,9 @@ <ClCompile Include="..\..\src\poser_octavioradii.c"> <Filter>Source Files</Filter> </ClCompile> + <ClCompile Include="..\..\src\survive_default_devices.c"> + <Filter>Source Files</Filter> + </ClCompile> </ItemGroup> <ItemGroup> <ClInclude Include="..\..\src\ootx_decoder.h"> @@ -137,5 +140,8 @@ <ClInclude Include="..\..\redist\CNFGFunctions.h"> <Filter>Header Files</Filter> </ClInclude> + <ClInclude Include="..\..\src\survive_default_devices.h"> + <Filter>Source Files</Filter> + </ClInclude> </ItemGroup> </Project>
\ No newline at end of file |