diff options
author | CNLohr <charles@cnlohr.com> | 2018-04-15 20:41:22 -0400 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-04-15 20:41:22 -0400 |
commit | 69b31d3c3b1957e59d7962722a4145bfb0db16f9 (patch) | |
tree | 927d843a553ef53217c283f19f16728b0ca51c50 /src/poser_general_optimizer.h | |
parent | c73823e20c9ed2f2f8f6a13c2031971d8b7d7be2 (diff) | |
parent | 39a63badbb5864314a9d9e18c0871718ac5d2912 (diff) | |
download | libsurvive-69b31d3c3b1957e59d7962722a4145bfb0db16f9.tar.gz libsurvive-69b31d3c3b1957e59d7962722a4145bfb0db16f9.tar.bz2 |
Merge branch 'master' into tcc_build
Diffstat (limited to 'src/poser_general_optimizer.h')
-rw-r--r-- | src/poser_general_optimizer.h | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/src/poser_general_optimizer.h b/src/poser_general_optimizer.h new file mode 100644 index 0000000..6d4d906 --- /dev/null +++ b/src/poser_general_optimizer.h @@ -0,0 +1,29 @@ +#include <stdlib.h> +#include <survive.h> + +typedef struct GeneralOptimizerData { + int failures_to_reset; + int failures_to_reset_cntr; + int successes_to_reset; + int successes_to_reset_cntr; + + FLT max_error; + + struct { + int runs; + int poser_seed_runs; + int error_failures; + } stats; + + PoserCB seed_poser; + SurviveObject *so; +} GeneralOptimizerData; + +void general_optimizer_data_init(GeneralOptimizerData *d, SurviveObject *so); +void general_optimizer_data_dtor(GeneralOptimizerData *d); + +void general_optimizer_data_record_failure(GeneralOptimizerData *d); +bool general_optimizer_data_record_success(GeneralOptimizerData *d, FLT error); +void general_optimizer_data_record_imu(GeneralOptimizerData *d, PoserDataIMU *imu); +bool general_optimizer_data_record_current_pose(GeneralOptimizerData *d, PoserData *hdr, size_t len_hdr, + SurvivePose *p); |