GSI Object Oriented Online Offline (Go4)  GO4-5.3.2
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
TXXXCalibPar.h
Go to the documentation of this file.
1 // $Id: TXXXCalibPar.h 478 2009-10-29 12:26:09Z 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 für 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 TXXXCalibPar_H
15 #define TXXXCalibPar_H
16 
17 #include "TGo4Parameter.h"
18 
19 #define __LINESNUMBER__ 20
20 #define __TEXTMAX__ 256
21 #define __POLORDER__ 4
22 #define __DATANAME__ "data1"
23 #define __GRAPHNAME__ "graph1"
24 
25 class TGraph;
26 class TH1;
27 class TGo4Fitter;
28 
29 class TXXXCalibPar : public TGo4Parameter {
30  public:
31  TXXXCalibPar();
32  TXXXCalibPar(const char* name, TH1* spectrum, TGraph* curve);
33  virtual ~TXXXCalibPar();
34 
35  Int_t PrintParameter(Text_t * n, Int_t);
36  Bool_t UpdateFrom(TGo4Parameter *);
37 
39  void ReadDatabase();
40 
42  void SetCalibSpectrum(TH1* h1);
43 
45  Double_t Energy(Int_t channel);
46 
48  Double_t fdA[__POLORDER__]; // Calibration polynom coeff
50  Bool_t fbRecalibrate; // Set to kTRUE to make calibration fit in update from
52  Bool_t fbReadDatabase; // Set to kTRUE to re-read energies from external ascii file
54  TString fxDatabase; // Filename for ascii file with linesname - energy
56  Int_t fiLinesChannel[__LINESNUMBER__]; // Centroid channel numbers for fitted lines
58  Float_t ffLinesEnergy[__LINESNUMBER__]; // Database energies of calibration lines
60  TString fxLinesNames[__LINESNUMBER__]; // Database names of calibration lines.
61 
63  TGo4Fitter* fxLinesFinder; // Fitter to search lines
64 
66  TGo4Fitter* fxCalibrator; // Fitter for calibration of channel/energies with polynom
67 
69  TGraph* fxCalibCurve;
70 
71  TString fxGraphName; // Name of the graph to contain the calibration points
72 
75 
77  TString fxSpectrumName; //Name of the calibration spectrum histogram
78 
79  ClassDef(TXXXCalibPar,1)
80 };
81 
82 #endif
TString fxGraphName
Reference to graph containing the calibration points.
Definition: TXXXCalibPar.h:71
Bool_t UpdateFrom(TGo4Parameter *)
Double_t fdA[__POLORDER__]
Definition: TXXXCalibPar.h:48
#define __LINESNUMBER__
Definition: TXXXCalibPar.h:19
TString fxLinesNames[__LINESNUMBER__]
Definition: TXXXCalibPar.h:60
TH1 * fxCalibSpectrum
Definition: TXXXCalibPar.h:74
Bool_t fbReadDatabase
Definition: TXXXCalibPar.h:52
Double_t Energy(Int_t channel)
#define __POLORDER__
Definition: TXXXCalibPar.h:21
Int_t fiLinesChannel[__LINESNUMBER__]
Definition: TXXXCalibPar.h:56
void ReadDatabase()
void SetCalibSpectrum(TH1 *h1)
Bool_t fbRecalibrate
Definition: TXXXCalibPar.h:50
TGo4Fitter * fxLinesFinder
Definition: TXXXCalibPar.h:63
TGraph * fxCalibCurve
Definition: TXXXCalibPar.h:69
Int_t PrintParameter(Text_t *n, Int_t)
TGo4Fitter * fxCalibrator
Definition: TXXXCalibPar.h:66
virtual ~TXXXCalibPar()
TString fxDatabase
Definition: TXXXCalibPar.h:54
TString fxSpectrumName
Reference to histogram containing the calibration spectrum.
Definition: TXXXCalibPar.h:77
Float_t ffLinesEnergy[__LINESNUMBER__]
Definition: TXXXCalibPar.h:58