MCPcopy Create free account
hub / github.com/TUC-ProAut/libRSF / ParseErrorModel

Function ParseErrorModel

applications/IV19_GNSS.cpp:274–334  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

272}
273
274bool ParseErrorModel(const std::string &ErrorModel, libRSF::FactorGraphConfig &Config)
275{
276 if(ErrorModel.compare("gauss") == 0)
277 {
278 Config.GNSS.ErrorModel.Type = libRSF::ErrorModelType::Gaussian;
279 Config.GNSS.ErrorModel.TuningType = libRSF::ErrorModelTuningType::None;
280 }
281 else if(ErrorModel.compare("dcs") == 0)
282 {
283 Config.GNSS.ErrorModel.Type = libRSF::ErrorModelType::DCS;
284 Config.GNSS.ErrorModel.TuningType = libRSF::ErrorModelTuningType::None;
285 }
286 else if(ErrorModel.compare("cdce") == 0)
287 {
288 Config.GNSS.ErrorModel.Type = libRSF::ErrorModelType::cDCE;
289 Config.GNSS.ErrorModel.TuningType = libRSF::ErrorModelTuningType::None;
290 }
291 else if(ErrorModel.compare("sm") == 0)
292 {
293 Config.GNSS.ErrorModel.Type = libRSF::ErrorModelType::GMM;
294 Config.GNSS.ErrorModel.MixtureType = libRSF::ErrorModelMixtureType::SumMix;
295 Config.GNSS.ErrorModel.TuningType = libRSF::ErrorModelTuningType::None;
296 }
297 else if(ErrorModel.compare("mm") == 0)
298 {
299 Config.GNSS.ErrorModel.Type = libRSF::ErrorModelType::GMM;
300 Config.GNSS.ErrorModel.MixtureType = libRSF::ErrorModelMixtureType::MaxMix;
301 Config.GNSS.ErrorModel.TuningType = libRSF::ErrorModelTuningType::None;
302 }
303 else if(ErrorModel.compare("stsm") == 0)
304 {
305 Config.GNSS.ErrorModel.Type = libRSF::ErrorModelType::GMM;
306 Config.GNSS.ErrorModel.MixtureType = libRSF::ErrorModelMixtureType::SumMix;
307 Config.GNSS.ErrorModel.TuningType = libRSF::ErrorModelTuningType::EM;
308 }
309 else if(ErrorModel.compare("stmm") == 0)
310 {
311 Config.GNSS.ErrorModel.Type = libRSF::ErrorModelType::GMM;
312 Config.GNSS.ErrorModel.MixtureType = libRSF::ErrorModelMixtureType::MaxMix;
313 Config.GNSS.ErrorModel.TuningType = libRSF::ErrorModelTuningType::EM;
314 }
315 else if(ErrorModel.compare("stsm_vbi") == 0)
316 {
317 Config.GNSS.ErrorModel.Type = libRSF::ErrorModelType::GMM;
318 Config.GNSS.ErrorModel.MixtureType = libRSF::ErrorModelMixtureType::SumMix;
319 Config.GNSS.ErrorModel.TuningType = libRSF::ErrorModelTuningType::VBI;
320 }
321 else if(ErrorModel.compare("stmm_vbi") == 0)
322 {
323 Config.GNSS.ErrorModel.Type = libRSF::ErrorModelType::GMM;
324 Config.GNSS.ErrorModel.MixtureType = libRSF::ErrorModelMixtureType::MaxMix;
325 Config.GNSS.ErrorModel.TuningType = libRSF::ErrorModelTuningType::VBI;
326 }
327 else
328 {
329 PRINT_ERROR("Wrong Error Model: ", ErrorModel);
330 return false;
331 }

Callers 1

CreateGraphAndSolveFunction · 0.70

Calls

no outgoing calls

Tested by

no test coverage detected