25 #ifndef INCLUDED_ConfigurationParser_h_GUID_933C79EE_3392_4C8D_74D5_D9A72580DA6A
26 #define INCLUDED_ConfigurationParser_h_GUID_933C79EE_3392_4C8D_74D5_D9A72580DA6A
34 #include <json/value.h>
42 inline ConfigParams parseConfigParams(Json::Value
const &root) {
44 config.
debug = root.get(
"showDebug",
false).asBool();
46 getOptionalParameter(config.includeRearPanel, root,
"includeRearPanel");
47 getOptionalParameter(config.headCircumference, root,
49 getOptionalParameter(config.headToFrontBeaconOriginDistance, root,
50 "headToFrontBeaconOriginDistance");
51 getOptionalParameter(config.backPanelMeasurementError, root,
52 "backPanelMeasurementError");
56 if (config.includeRearPanel) {
57 config.offsetToCentroid =
false;
61 getOptionalParameter(config.extraVerbose, root,
"extraVerbose");
62 getOptionalParameter(config.calibrationFile, root,
"calibrationFile");
63 getOptionalParameter(config.additionalPrediction, root,
64 "additionalPrediction");
65 getOptionalParameter(config.maxResidual, root,
"maxResidual");
66 getOptionalParameter(config.initialBeaconError, root,
67 "initialBeaconError");
68 getOptionalParameter(config.blobMoveThreshold, root,
70 getOptionalParameter(config.blobsKeepIdentity, root,
72 getOptionalParameter(config.numThreads, root,
"numThreads");
73 getOptionalParameter(config.streamBeaconDebugInfo, root,
74 "streamBeaconDebugInfo");
75 getOptionalParameter(config.offsetToCentroid, root,
"offsetToCentroid");
76 if (!config.offsetToCentroid) {
77 getOptionalParameter(config.manualBeaconOffset, root,
78 "manualBeaconOffset");
82 getOptionalParameter(config.beaconProcessNoise, root,
83 "beaconProcessNoise");
84 getOptionalParameter(config.processNoiseAutocorrelation, root,
85 "processNoiseAutocorrelation");
86 getOptionalParameter(config.linearVelocityDecayCoefficient, root,
87 "linearVelocityDecayCoefficient");
88 getOptionalParameter(config.angularVelocityDecayCoefficient, root,
89 "angularVelocityDecayCoefficient");
90 getOptionalParameter(config.measurementVarianceScaleFactor, root,
91 "measurementVarianceScaleFactor");
92 getOptionalParameter(config.highResidualVariancePenalty, root,
93 "highResidualVariancePenalty");
94 getOptionalParameter(config.boundingBoxFilterRatio, root,
95 "boundingBoxFilterRatio");
96 getOptionalParameter(config.maxZComponent, root,
"maxZComponent");
97 getOptionalParameter(config.shouldSkipBrightLeds, root,
98 "shouldSkipBrightLeds");
101 if (root.isMember(
"blobParams")) {
102 parseBlobParams(root[
"blobParams"], config.blobParams);
110 #endif // INCLUDED_ConfigurationParser_h_GUID_933C79EE_3392_4C8D_74D5_D9A72580DA6A
bool debug
Whether to show the debug windows and debug messages.