10 #ifndef ROOT_Minuit2_MinimumState
11 #define ROOT_Minuit2_MinimumState
21 class MinimumParameters;
23 class FunctionGradient;
34 MinimumState(
unsigned int n) :
35 fData(MnRefCountedPointer<BasicMinimumState>(new BasicMinimumState(n,0.,0.,0.))) {}
37 MinimumState(
double fval,
double edm,
int nfcn) :
38 fData(MnRefCountedPointer<BasicMinimumState>(new BasicMinimumState(0, fval, edm, nfcn))) {}
40 MinimumState(
const MinimumParameters& states,
double edm,
int nfcn) :
41 fData(MnRefCountedPointer<BasicMinimumState>(new BasicMinimumState(states, edm, nfcn))) {}
45 MinimumState(
const MinimumParameters& states,
const MinimumError& err,
46 const FunctionGradient& grad,
double edm,
int nfcn) :
47 fData(MnRefCountedPointer<BasicMinimumState>(new BasicMinimumState(states, err, grad, edm, nfcn))) {}
51 MinimumState(
const MinimumState& state) : fData(state.fData) {}
53 MinimumState& operator=(
const MinimumState& state) {
58 const MinimumParameters& Parameters()
const {
return fData->Parameters();}
59 const MnAlgebraicVector& Vec()
const {
return fData->Vec();}
60 int size()
const {
return fData->size();}
62 const MinimumError& Error()
const {
return fData->Error();}
63 const FunctionGradient& Gradient()
const {
return fData->Gradient();}
64 double Fval()
const {
return fData->Fval();}
65 double Edm()
const {
return fData->Edm();}
66 int NFcn()
const {
return fData->NFcn();}
68 bool IsValid()
const {
return fData->IsValid();}
70 bool HasParameters()
const {
return fData->HasParameters();}
71 bool HasCovariance()
const {
return fData->HasCovariance();}
75 MnRefCountedPointer<BasicMinimumState> fData;
82 #endif // ROOT_Minuit2_MinimumState