SourceXtractorPlusPlus
0.13
Please provide a description of the project.
SEImplementation
src
lib
Configuration
LegacyModelFittingConfig.cpp
Go to the documentation of this file.
1
17
/*
18
* ModelFittingConfig.cpp
19
*
20
* Created on: May 17, 2017
21
* Author: mschefer
22
*/
23
24
#include "
SEImplementation/Configuration/LegacyModelFittingConfig.h
"
25
#include "
ModelFitting/Engine/LeastSquareEngineManager.h
"
26
27
using namespace
Euclid::Configuration
;
28
namespace
po = boost::program_options;
29
30
namespace
SourceXtractor
{
31
32
static
const
std::string
MFIT_MAX_ITERATIONS
{
"model-fitting-iterations"
};
33
static
const
std::string
MFIT_ENGINE
{
"model-fitting-engine"
};
34
35
LegacyModelFittingConfig::LegacyModelFittingConfig(
long
manager_id) :
Configuration
(manager_id), m_max_iterations(1000) {
36
}
37
38
auto
LegacyModelFittingConfig::getProgramOptions
() ->
std::map<std::string, OptionDescriptionList>
{
39
auto
default_engine =
ModelFitting::LeastSquareEngineManager::getDefault
();
40
41
return
{{
"Model Fitting"
,
42
{
43
{
MFIT_MAX_ITERATIONS
.
c_str
(), po::value<int>()->default_value(1000),
44
"Maximum number of iterations allowed for model fitting"
},
45
{
MFIT_ENGINE
.
c_str
(), po::value<std::string>()->default_value(default_engine),
46
"Least squares engine"
}
47
}
48
}};
49
}
50
51
void
LegacyModelFittingConfig::initialize
(
const
UserValues
& args) {
52
m_max_iterations
= args.
at
(
MFIT_MAX_ITERATIONS
).as<
int
>();
53
if
(
m_max_iterations
<= 0) {
54
throw
Elements::Exception
() <<
"Invalid "
<<
MFIT_MAX_ITERATIONS
<<
" value: "
<<
m_max_iterations
;
55
}
56
m_least_squares_engine
= args.
at
(
MFIT_ENGINE
).as<
std::string
>();
57
}
58
59
}
/* namespace SourceXtractor */
60
61
ModelFitting::LeastSquareEngineManager::getDefault
static std::string getDefault()
Definition:
LeastSquareEngineManager.cpp:52
std::string
STL class.
SourceXtractor::MFIT_ENGINE
static const std::string MFIT_ENGINE
Definition:
LegacyModelFittingConfig.cpp:33
SourceXtractor::LegacyModelFittingConfig::initialize
void initialize(const UserValues &args) override
Definition:
LegacyModelFittingConfig.cpp:51
LegacyModelFittingConfig.h
Euclid::Configuration
SourceXtractor::LegacyModelFittingConfig::getProgramOptions
std::map< std::string, OptionDescriptionList > getProgramOptions() override
Definition:
LegacyModelFittingConfig.cpp:38
SourceXtractor
Definition:
Aperture.h:30
SourceXtractor::LegacyModelFittingConfig::m_least_squares_engine
std::string m_least_squares_engine
Definition:
LegacyModelFittingConfig.h:52
std::map::at
T at(T... args)
SourceXtractor::MFIT_MAX_ITERATIONS
static const std::string MFIT_MAX_ITERATIONS
Definition:
LegacyModelFittingConfig.cpp:32
std::string::c_str
T c_str(T... args)
LeastSquareEngineManager.h
SourceXtractor::LegacyModelFittingConfig::m_max_iterations
int m_max_iterations
Definition:
LegacyModelFittingConfig.h:53
Elements::Exception
std::map
STL class.
Euclid::Configuration::Configuration
Generated by
1.8.20