SourceXtractorPlusPlus
1.0.3
SourceXtractor++, the next generation SExtractor
Loading...
Searching...
No Matches
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
LeastSquareEngineManager.h
LegacyModelFittingConfig.h
std::map::at
T at(T... args)
std::string
Elements::Exception
Euclid::Configuration::Configuration::Configuration
Configuration(long manager_id)
Euclid::Configuration::Configuration::UserValues
std::map< std::string, boost::program_options::variable_value > UserValues
ModelFitting::LeastSquareEngineManager::getDefault
static std::string getDefault()
Definition
LeastSquareEngineManager.cpp:52
SourceXtractor::LegacyModelFittingConfig::initialize
void initialize(const UserValues &args) override
Definition
LegacyModelFittingConfig.cpp:51
SourceXtractor::LegacyModelFittingConfig::m_least_squares_engine
std::string m_least_squares_engine
Definition
LegacyModelFittingConfig.h:52
SourceXtractor::LegacyModelFittingConfig::LegacyModelFittingConfig
LegacyModelFittingConfig(long manager_id)
Definition
LegacyModelFittingConfig.cpp:35
SourceXtractor::LegacyModelFittingConfig::getProgramOptions
std::map< std::string, OptionDescriptionList > getProgramOptions() override
Definition
LegacyModelFittingConfig.cpp:38
SourceXtractor::LegacyModelFittingConfig::m_max_iterations
int m_max_iterations
Definition
LegacyModelFittingConfig.h:53
std::map
Euclid::Configuration
SourceXtractor
Definition
Aperture.h:30
SourceXtractor::MFIT_MAX_ITERATIONS
static const std::string MFIT_MAX_ITERATIONS
Definition
LegacyModelFittingConfig.cpp:32
SourceXtractor::MFIT_ENGINE
static const std::string MFIT_ENGINE
Definition
LegacyModelFittingConfig.cpp:33
boost::program_options
Generated by
1.15.0