GSI Object Oriented Online Offline (Go4)  GO4-6.1.4
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
TGo4FitParameter.h
Go to the documentation of this file.
1 // $Id: TGo4FitParameter.h 2629 2019-10-01 08:20:21Z linev $
2 //-----------------------------------------------------------------------
3 // The GSI Online Offline Object Oriented (Go4) Project
4 // Experiment Data Processing at EE department, GSI
5 //-----------------------------------------------------------------------
6 // Copyright (C) 2000- GSI Helmholtzzentrum fuer Schwerionenforschung GmbH
7 // Planckstr. 1, 64291 Darmstadt, Germany
8 // Contact: http://go4.gsi.de
9 //-----------------------------------------------------------------------
10 // This software can be used under the license agreements as stated
11 // in Go4License.txt file which is part of the distribution.
12 //-----------------------------------------------------------------------
13 
14 #ifndef TGO4FITPARAMETER_H
15 #define TGO4FITPARAMETER_H
16 
17 #include "TGo4FitNamed.h"
18 
25  public:
26 
31 
35  TGo4FitParameter(const char* name, const char* title, Double_t iValue);
36 
40  TGo4FitParameter(const char* name, const char* title, Double_t iValue, Double_t iRangeMin, Double_t iRangeMax);
41 
45  TGo4FitParameter(const char* name, const char* title, Double_t iValue, Double_t iEpsilon);
46 
50  TGo4FitParameter(const char* name, const char* title, Double_t iValue, Double_t iRangeMin, Double_t iRangeMax, Double_t iEpsilon);
51 
55  virtual ~TGo4FitParameter();
56 
60  Double_t GetValue() const { return fdValue; }
61 
65  void SetValue(Double_t iValue) { fdValue = iValue; }
66 
70  Double_t GetError() const { return fdError; }
71 
75  void SetError(Double_t iError) { fdError = iError; }
76 
80  Bool_t GetFixed() const { return fbFixed || fbBlocked; }
81 
85  void SetFixed(Bool_t iFixed) { fbFixed = iFixed; }
86 
92  void SetBlocked() { fbBlocked = kTRUE; }
93 
97  void ClearBlocked() { fbBlocked = kFALSE; }
98 
104  Bool_t GetEpsilon(Double_t& eps) const { eps=fdEpsilon; return fbEpsilon; }
105 
109  void SetEpsilon(Double_t iEpsilon) { fbEpsilon = kTRUE; fdEpsilon = iEpsilon; };
110 
115  void SetEpsilonUse(Bool_t use) { fbEpsilon = use; }
116 
121  void ChangeEpsilon(Double_t iEpsilon) { fdEpsilon = iEpsilon; }
122 
127  void ClearEpsilon() { fbEpsilon = kFALSE; }
128 
133  Bool_t GetRange(Double_t& min, Double_t& max) const { min = fdRangeMin; max = fdRangeMax; return fbRange; }
134 
138  void SetRange(Double_t iRangeMin, Double_t iRangeMax);
139 
144  void SetRangeUse(Bool_t use) { fbRange = use; }
145 
149  void ChangeRangeMin(Double_t iRangeMin) { if (fbRange) fdRangeMin = iRangeMin; }
150 
154  void ChangeRangeMax(Double_t iRangeMax) { if (fbRange) fdRangeMax = iRangeMax; }
155 
159  Double_t GetRangeMin() { return fdRangeMin; }
160 
164  Double_t GetRangeMax() { return fdRangeMax; }
165 
170  void ClearRange() { fbRange = kFALSE; fdRangeMin = 0.; fdRangeMax = 0.; }
171 
176 
181 
185  virtual void Print(Option_t* option) const;
186 
187  protected:
188  void Reset();
189 
190  Double_t fdValue;
191  Double_t fdError;
192  Bool_t fbFixed;
193 
194  Bool_t fbEpsilon;
195  Double_t fdEpsilon;
196 
197  Bool_t fbRange;
198  Double_t fdRangeMin;
199  Double_t fdRangeMax;
200 
201  private:
202  Bool_t fbBlocked;
203  Double_t fdRememberedValue;
204 
205  ClassDef(TGo4FitParameter,1)
206 };
207 
208 #endif // TGO4FITPARAMETER_H
void SetRangeUse(Bool_t use)
Bool_t GetFixed() const
void ChangeRangeMin(Double_t iRangeMin)
void SetEpsilonUse(Bool_t use)
void ChangeRangeMax(Double_t iRangeMax)
Bool_t GetRange(Double_t &min, Double_t &max) const
Double_t GetRangeMax()
virtual ~TGo4FitParameter()
Double_t fdRememberedValue
Double_t GetError() const
Bool_t GetEpsilon(Double_t &eps) const
virtual void Print(Option_t *option) const
Double_t GetRangeMin()
void SetValue(Double_t iValue)
Double_t GetValue() const
void SetEpsilon(Double_t iEpsilon)
void SetFixed(Bool_t iFixed)
void SetRange(Double_t iRangeMin, Double_t iRangeMax)
void SetError(Double_t iError)
void ChangeEpsilon(Double_t iEpsilon)