SourceXtractorPlusPlus 1.0.3
SourceXtractor++, the next generation SExtractor
Loading...
Searching...
No Matches
SourceXtractor::FlexibleModelFittingFreeParameter Class Reference

#include <FlexibleModelFittingParameter.h>

Inheritance diagram for SourceXtractor::FlexibleModelFittingFreeParameter:
Collaboration diagram for SourceXtractor::FlexibleModelFittingFreeParameter:

Public Types

using InitialValueFunc = std::function<double(const SourceInterface&)>

Public Member Functions

 FlexibleModelFittingFreeParameter (int id, InitialValueFunc initial_value, std::shared_ptr< FlexibleModelFittingConverterFactory > converter_factory)
std::shared_ptr< ModelFitting::BasicParametercreate (FlexibleModelFittingParameterManager &parameter_manager, ModelFitting::EngineParameterManager &engine_manager, const SourceInterface &source) const override
std::shared_ptr< ModelFitting::BasicParametercreate (FlexibleModelFittingParameterManager &parameter_manager, ModelFitting::EngineParameterManager &engine_manager, const SourceInterface &source, double initial_value, double current_value) const
double getSigma (FlexibleModelFittingParameterManager &parameter_manager, const SourceInterface &source, const std::vector< double > &free_parameter_sigmas) const override
double getInitialValue (const SourceInterface &source) const
Public Member Functions inherited from SourceXtractor::FlexibleModelFittingParameter
 FlexibleModelFittingParameter (int id)
virtual ~FlexibleModelFittingParameter ()=default
virtual int getId () const final
Public Member Functions inherited from std::enable_shared_from_this< FlexibleModelFittingParameter >
enable_shared_from_this (T... args)
operator= (T... args)
shared_from_this (T... args)
~enable_shared_from_this (T... args)

Private Attributes

InitialValueFunc m_initial_value
std::shared_ptr< FlexibleModelFittingConverterFactorym_converter_factory

Detailed Description

Definition at line 94 of file FlexibleModelFittingParameter.h.

Member Typedef Documentation

◆ InitialValueFunc

The signature of a function providing the initial value. It gets as a parameter a source and returns the initial value.

Definition at line 99 of file FlexibleModelFittingParameter.h.

Constructor & Destructor Documentation

◆ FlexibleModelFittingFreeParameter()

SourceXtractor::FlexibleModelFittingFreeParameter::FlexibleModelFittingFreeParameter ( int id,
InitialValueFunc initial_value,
std::shared_ptr< FlexibleModelFittingConverterFactory > converter_factory )
inline

Member Function Documentation

◆ create() [1/2]

std::shared_ptr< ModelFitting::BasicParameter > SourceXtractor::FlexibleModelFittingFreeParameter::create ( FlexibleModelFittingParameterManager & parameter_manager,
ModelFitting::EngineParameterManager & engine_manager,
const SourceInterface & source ) const
overridevirtual

◆ create() [2/2]

std::shared_ptr< ModelFitting::BasicParameter > SourceXtractor::FlexibleModelFittingFreeParameter::create ( FlexibleModelFittingParameterManager & parameter_manager,
ModelFitting::EngineParameterManager & engine_manager,
const SourceInterface & source,
double initial_value,
double current_value ) const

Definition at line 90 of file FlexibleModelFittingParameter.cpp.

References m_converter_factory, std::make_shared(), std::move(), and ModelFitting::EngineParameterManager::registerParameter().

Here is the call graph for this function:

◆ getInitialValue()

double SourceXtractor::FlexibleModelFittingFreeParameter::getInitialValue ( const SourceInterface & source) const

Definition at line 108 of file FlexibleModelFittingParameter.cpp.

References m_initial_value.

◆ getSigma()

double SourceXtractor::FlexibleModelFittingFreeParameter::getSigma ( FlexibleModelFittingParameterManager & parameter_manager,
const SourceInterface & source,
const std::vector< double > & free_parameter_sigmas ) const
overridevirtual

Member Data Documentation

◆ m_converter_factory

std::shared_ptr<FlexibleModelFittingConverterFactory> SourceXtractor::FlexibleModelFittingFreeParameter::m_converter_factory
private

◆ m_initial_value

InitialValueFunc SourceXtractor::FlexibleModelFittingFreeParameter::m_initial_value
private

The documentation for this class was generated from the following files: