18 MinuitParameter() =
default;
19 MinuitParameter(
const std::string& name,
const Flag& flag,
const double& mean,
const double& step,
20 const double& min = 0,
const double& max = 0 );
21 MinuitParameter(
const std::string& name,
const double& mean,
const double& step,
22 const double& min = 0,
const double& max = 0 );
28 const std::string& name()
const;
30 double meanInit()
const;
31 double stepInit()
const;
32 double minInit()
const;
33 double maxInit()
const;
35 double errPos()
const;
36 double errNeg()
const;
37 double* vp() {
return &m_meanResult ; }
39 void setInit(
const double& init,
const double& step=-1 );
40 void setStepInit(
const double& si );
42 void scaleStep(
const double& sf );
44 void setCurrentFitVal(
double cfv );
45 void setLimits(
const double& min,
const double& max );
46 void setVal(
const double& val ) { m_meanResult = val; }
47 void setResult(
double fitMean,
double fitErr,
double fitErrNeg,
double fitErrPos );
49 void setName(
const std::string& name );
50 virtual double mean()
const;
51 virtual operator double()
const {
return m_meanResult; }
52 virtual ~MinuitParameter() =
default;
53 void setFromMinuitState(
const double* x ){
if( m_minuitIndex != -1 ) m_meanResult = x[m_minuitIndex] ; }
54 void setMinuitIndex(
const int& index ){ m_minuitIndex = index; }
55 int index()
const {
return m_minuitIndex; }
60 std::string m_name = {
""};
61 double m_meanInit = {0};
62 double m_stepInit = {0};
63 double m_minInit = {0};
64 double m_maxInit = {0};
65 double m_meanResult = {0};
66 double m_errPosResult = {0};
67 double m_errNegResult = {0};
68 double m_errResult = {0};
69 int m_minuitIndex = {-1};