From 86bbd12c3889db3290e22ff61934ca1a218ce114 Mon Sep 17 00:00:00 2001 From: cnlohr Date: Fri, 27 Apr 2018 21:42:05 -0400 Subject: New config system --- src/poser_general_optimizer.c | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) (limited to 'src/poser_general_optimizer.c') diff --git a/src/poser_general_optimizer.c b/src/poser_general_optimizer.c index 057ac3d..186b359 100644 --- a/src/poser_general_optimizer.c +++ b/src/poser_general_optimizer.c @@ -5,6 +5,11 @@ #include #include +STATIC_CONFIG_ITEM( CONFIG_MAX_ERROR, "max-error", 'f', "Maximum error permitted by poser_general_optimizer", .0001 ); +STATIC_CONFIG_ITEM( CONFIG_FAIL_TO_RESET, "failures-to-reset", 'i', "Failures needed before seed poser is re-run", 1 ); +STATIC_CONFIG_ITEM( CONFIG_SUC_TO_RESET, "successes-to-reset", 'i', "[TODO: I don't know what this does]", -1 ); +STATIC_CONFIG_ITEM( CONFIG_SEED_POSER, "seed-poser", 's', "Poser to be used to seed optimizer", "PoserEPNP" ); + void *GetDriver(const char *name); void general_optimizer_data_init(GeneralOptimizerData *d, SurviveObject *so) { memset(d, 0, sizeof(*d)); @@ -12,11 +17,11 @@ void general_optimizer_data_init(GeneralOptimizerData *d, SurviveObject *so) { SurviveContext *ctx = so->ctx; - d->failures_to_reset = survive_configi(ctx, "failures-to-reset", SC_GET, 1); - d->successes_to_reset = survive_configi(ctx, "successes-to-reset", SC_GET, -1); - d->max_error = survive_configf(ctx, "max-error", SC_GET, .0001); + survive_attach_config( ctx, "failures-to-reset", &d->failures_to_reset, 'i' ); + survive_attach_config( ctx, "successes-to-reset", &d->successes_to_reset, 'i' ); + survive_attach_config( ctx, "max-error", &d->max_error, 'f' ); - const char *subposer = survive_configs(ctx, "seed-poser", SC_GET, "PoserEPNP"); + const char *subposer = survive_configs(ctx, "seed-poser", SC_GET, 0 ); d->seed_poser = (PoserCB)GetDriver(subposer); SV_INFO("Initializing general optimizer:"); -- cgit v1.2.3