SourceXtractorPlusPlus  0.19
SourceXtractor++, the next generation SExtractor
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
FlexibleModelFittingConverterFactory.cpp
Go to the documentation of this file.
1 
17 /*
18  * FlexibleModelFittingConverterFactory.cpp
19  *
20  * Created on: May 10, 2019
21  * Author: mschefer
22  */
23 
25 
29 
31 
32 namespace SourceXtractor {
33 
34 using namespace ModelFitting;
36 
38  double initial_value, const SourceInterface& source) const {
39  double minimum_value, maximum_value;
40  std::tie(minimum_value, maximum_value) = m_range(initial_value, source);
41  return make_unique<ExpSigmoidConverter>(minimum_value, maximum_value);
42 }
43 
45  double initial_value, const SourceInterface& source) const {
46  double minimum_value, maximum_value;
47  std::tie(minimum_value, maximum_value) = m_range(initial_value, source);
48  return make_unique<SigmoidConverter>(minimum_value, maximum_value);
49 }
50 
52  double initial_value, const SourceInterface& source) const {
53  double factor = m_normalization_factor(initial_value, source);
54  return make_unique<NormalizedConverter>(factor);
55 }
56 
57 
58 }
59 
T tie(T...args)
std::unique_ptr< ModelFitting::CoordinateConverter > getConverter(double initial_value, const SourceInterface &source) const override
std::unique_ptr< ModelFitting::CoordinateConverter > getConverter(double initial_value, const SourceInterface &source) const override
STL class.
std::unique_ptr< T > make_unique(Args &&...args)
The SourceInterface is an abstract &quot;source&quot; that has properties attached to it.
std::unique_ptr< ModelFitting::CoordinateConverter > getConverter(double initial_value, const SourceInterface &source) const override