diff options
author | Justin Berger <j.david.berger@gmail.com> | 2018-04-10 23:47:11 -0600 |
---|---|---|
committer | Justin Berger <j.david.berger@gmail.com> | 2018-04-10 23:47:11 -0600 |
commit | e6b487cacfd57792b9cdcde30489faf19f2a4a77 (patch) | |
tree | 2435f0302849919aa5001961a95daff693a16a12 /include | |
parent | 30cfb87ec0d95e0cb8a671cf8f2327b4204927ed (diff) | |
parent | d7c88592a5450a65f5359e23d87122a04d019503 (diff) | |
download | libsurvive-e6b487cacfd57792b9cdcde30489faf19f2a4a77.tar.gz libsurvive-e6b487cacfd57792b9cdcde30489faf19f2a4a77.tar.bz2 |
Merge branch 'master' into simple_api
Diffstat (limited to 'include')
-rw-r--r-- | include/libsurvive/survive.h | 3 | ||||
-rw-r--r-- | include/libsurvive/survive_imu.h | 5 | ||||
-rw-r--r-- | include/libsurvive/survive_reproject.h | 8 |
3 files changed, 13 insertions, 3 deletions
diff --git a/include/libsurvive/survive.h b/include/libsurvive/survive.h index 52dcc0d..93af4c0 100644 --- a/include/libsurvive/survive.h +++ b/include/libsurvive/survive.h @@ -317,8 +317,7 @@ void RegisterDriver(const char *name, void *data); #ifdef _MSC_VER #define REGISTER_LINKTIME(func) \ - __pragma(comment(linker, "/export:REGISTER" #func)); \ - void REGISTER##func() { RegisterDriver(#func, &func); } + SURVIVE_EXPORT void REGISTER##func() { RegisterDriver(#func, &func); } #else #define REGISTER_LINKTIME(func) \ void __attribute__((constructor)) REGISTER##func() { RegisterDriver(#func, &func); } diff --git a/include/libsurvive/survive_imu.h b/include/libsurvive/survive_imu.h index 8a86425..4d03038 100644 --- a/include/libsurvive/survive_imu.h +++ b/include/libsurvive/survive_imu.h @@ -3,6 +3,7 @@ #include "poser.h" #include "survive_types.h" +#include <stdbool.h> #include <stdint.h> #ifdef __cplusplus @@ -12,6 +13,8 @@ extern "C" { struct SurviveIMUTracker_p; typedef struct { + bool is_initialized; + FLT updir[3]; FLT accel_scale_bias; @@ -24,7 +27,7 @@ typedef struct { FLT P[7]; // estimate variance - float integralFBx, integralFBy, integralFBz; // integral error terms scaled by Ki + LinmathVec3d integralFB; } SurviveIMUTracker; diff --git a/include/libsurvive/survive_reproject.h b/include/libsurvive/survive_reproject.h index e4f21d0..05aa7d9 100644 --- a/include/libsurvive/survive_reproject.h +++ b/include/libsurvive/survive_reproject.h @@ -16,6 +16,14 @@ void survive_reproject_from_pose(const SurviveContext *ctx, int lighthouse, cons void survive_reproject_from_pose_with_config(const SurviveContext *ctx, struct survive_calibration_config *config, int lighthouse, const SurvivePose *pose, FLT *point3d, FLT *out); +void survive_reproject_full_jac_obj_pose(FLT *out, const SurvivePose *obj_pose, const LinmathVec3d obj_pt, + const SurvivePose *lh2world, const BaseStationData *bsd, + const survive_calibration_config *config); + +void survive_reproject_full(FLT *out, const SurvivePose *obj_pose, const LinmathVec3d obj_pt, + const SurvivePose *lh2world, const BaseStationData *bsd, + const survive_calibration_config *config); + // This is given a lighthouse -- in the same system as stored in BaseStationData, and // a 3d point and finds what the effective 'angle' value for a given lighthouse system // would be. |