10 #ifndef ROOT_Minuit2_BasicMinimumSeed
11 #define ROOT_Minuit2_BasicMinimumSeed
28 class BasicMinimumSeed {
32 BasicMinimumSeed(
const MinimumState& state,
const MnUserTransformation& trafo) : fState(state), fTrafo(trafo), fValid(true) {}
34 ~BasicMinimumSeed() {}
36 BasicMinimumSeed(
const BasicMinimumSeed& seed) : fState(seed.fState), fTrafo(seed.fTrafo), fValid(seed.fValid) {}
38 BasicMinimumSeed& operator=(
const BasicMinimumSeed& seed) {
45 void*
operator new(
size_t nbytes) {
46 return StackAllocatorHolder::Get().Allocate(nbytes);
49 void operator delete(
void* p,
size_t ) {
50 StackAllocatorHolder::Get().Deallocate(p);
53 const MinimumState& State()
const {
return fState;}
54 const MinimumParameters& Parameters()
const {
return State().Parameters();}
55 const MinimumError& Error()
const {
return State().Error();};
56 const FunctionGradient& Gradient()
const {
return State().Gradient();}
57 const MnUserTransformation& Trafo()
const {
return fTrafo;}
58 const MnMachinePrecision& Precision()
const {
return fTrafo.Precision();}
59 double Fval()
const {
return State().Fval();}
60 double Edm()
const {
return State().Edm();}
61 unsigned int NFcn()
const {
return State().NFcn();}
62 bool IsValid()
const {
return fValid;}
67 MnUserTransformation fTrafo;
75 #endif // ROOT_Minuit2_BasicMinimumSeed