KaliVeda
Toolkit for HIC analysis
KVAutoFit.h
1 
4 #ifndef __KVAUTOFIT_H
5 #define __KVAUTOFIT_H
6 
7 #include "KVBase.h"
8 
9 #include "TObject.h"
10 #include "TH1F.h"
11 #include "TF1.h"
12 #include "TF2.h"
13 #include "KVHashList.h"
14 #include "TCanvas.h"
15 #include "TString.h"
16 #include "KVList.h"
17 #include "TPaveLabel.h"
18 
26 class KVAutoFit : public KVBase {
27 
28 protected:
29  KVHashList* lfunc;
30 
31  TF1* f1Dfit;
32  TF2* f2Dfit;
33 
34  TH1* hfit;
35  TH1* hclone;
36  TCanvas* c1;
37  Bool_t fBatch;
38 
39  Bool_t XminSet, XmaxSet;
40  Double_t Xmin, Xmax;
41  Double_t Ymin, Ymax;
42 
43  KVHashList* lplabel;
44 
45  KVHashList* lhisto;
46  Int_t nhisto;
47  /*
48  TString spath,sdir,sfile;
49  TString output_file;
50  */
51  Bool_t userdefined;
52  TString koption;
53 
54  virtual void init();
55  void ClearRange(void);
56 
57  Bool_t NewFunction();
58  virtual Bool_t NewFunction_1D();
59  virtual Bool_t NewFunction_2D();
60 
61  TF1* ReloadFunction(const Char_t*, Int_t);
62  virtual TF1* ReloadFunction_1D(const Char_t*, Int_t);
63  virtual TF1* ReloadFunction_2D(const Char_t*, Int_t);
64 
65 
66  virtual Double_t f2D(Double_t* xx, Double_t* para);
67  virtual Double_t f1D(Double_t* xx, Double_t* para);
68 
69  void NextHisto();
70  Bool_t IsKnown(const Char_t*);
71 
72 
73 public:
75 
76  KVAutoFit();
77  KVAutoFit(Bool_t batch);
78  KVAutoFit(const KVAutoFit&) ;
79  ROOT_COPY_ASSIGN_OP(KVAutoFit)
80  virtual ~KVAutoFit();
81  void Copy(TObject&) const override;
82 
83  void Clear(Option_t* opt = "") override;
84  void Print(Option_t* opt = "") const override;
85  KVHashList* GetFunctions() const;
86 
87  virtual void SetHistos(KVHashList* lh, TString option = "");
88  virtual void SetHisto(TH1* hh);
89  void GetInterval();
90  void Recommence();
91  virtual void Gather();
92 
93  virtual void Save();
94  virtual void Relecture(const Char_t* name);
95  virtual void ExtraDrawing() {}
96  virtual void HandleKey(Int_t) {}
97 
98  ClassDefOverride(KVAutoFit, 1) //Manage SemiAutomatic Fits
99 };
100 
101 #endif
int Int_t
bool Bool_t
char Char_t
double Double_t
const char Option_t
#define ClassDefOverride(name, id)
Manage SemiAutomatic Fits.
Definition: KVAutoFit.h:26
Bool_t is2D
histogramme analyse herite de TH1 ou TH2
Definition: KVAutoFit.h:74
virtual void SetHisto(TH1 *hh)
Definition: KVAutoFit.cpp:399
virtual void Gather()
Definition: KVAutoFit.cpp:564
virtual void SetHistos(KVHashList *lh, TString option="")
Definition: KVAutoFit.cpp:204
virtual void ExtraDrawing()
Definition: KVAutoFit.h:95
virtual void Save()
Definition: KVAutoFit.cpp:585
virtual ~KVAutoFit()
Destructor.
Definition: KVAutoFit.cpp:181
void Clear(Option_t *opt="") override
Definition: KVAutoFit.cpp:151
void Print(Option_t *opt="") const override
Definition: KVAutoFit.cpp:273
KVHashList * GetFunctions() const
Definition: KVAutoFit.cpp:287
virtual void Relecture(const Char_t *name)
Definition: KVAutoFit.cpp:630
virtual void HandleKey(Int_t)
Definition: KVAutoFit.h:96
void Recommence()
Definition: KVAutoFit.cpp:528
void GetInterval()
Definition: KVAutoFit.cpp:446
void Copy(TObject &) const override
Definition: KVAutoFit.cpp:132
Base class for KaliVeda framework.
Definition: KVBase.h:140
Extended version of ROOT THashList.
Definition: KVHashList.h:29