SourceXtractorPlusPlus
0.13
Please provide a description of the project.
Main Page
Related Pages
Namespaces
Classes
Files
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Groups
Pages
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
Euclid::Configuration::Configuration
SourceXtractor::LegacyModelFittingConfig::m_max_iterations
int m_max_iterations
Definition:
LegacyModelFittingConfig.h:53
std::map
STL class.
ModelFitting::LeastSquareEngineManager::getDefault
static std::string getDefault()
Definition:
LeastSquareEngineManager.cpp:52
std::string
STL class.
std::string::at
T at(T...args)
LeastSquareEngineManager.h
SourceXtractor::MFIT_ENGINE
static const std::string MFIT_ENGINE
Definition:
LegacyModelFittingConfig.cpp:33
SourceXtractor::MFIT_MAX_ITERATIONS
static const std::string MFIT_MAX_ITERATIONS
Definition:
LegacyModelFittingConfig.cpp:32
LegacyModelFittingConfig.h
SourceXtractor::LegacyModelFittingConfig::getProgramOptions
std::map< std::string, OptionDescriptionList > getProgramOptions() override
Definition:
LegacyModelFittingConfig.cpp:38
Elements::Exception
SourceXtractor::LegacyModelFittingConfig::m_least_squares_engine
std::string m_least_squares_engine
Definition:
LegacyModelFittingConfig.h:52
std::string::c_str
T c_str(T...args)
SourceXtractor::LegacyModelFittingConfig::initialize
void initialize(const UserValues &args) override
Definition:
LegacyModelFittingConfig.cpp:51
Generated by
1.8.5