]> git.uio.no Git - u/mrichter/AliRoot.git/blame - TRD/AliTRDPreprocessorOffline.h
speed up tailcancallation (Theo)
[u/mrichter/AliRoot.git] / TRD / AliTRDPreprocessorOffline.h
CommitLineData
b3fcfd96 1#ifndef ALITRDPREPROCESSOROFFLINE_H
2#define ALITRDPREPROCESSOROFFLINE_H
3
4/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
5 * See cxx source for full Copyright notice */
6
7//
8//
9// Class to create OCDB entries - processing the results of the OFFLINE calibration
10//
11
12
13#include "TNamed.h"
14class TObjArray;
01239968 15class AliTRDCalDet;
b3fcfd96 16class TH2I;
17class TProfile2D;
18class AliTRDCalibraVdriftLinearFit;
19class TH1I;
20class TH2F;
01239968 21class TString;
b3fcfd96 22
23
24class AliTRDPreprocessorOffline:public TNamed {
25public:
26 enum{
27 kGain = 0,
28 kVdriftPHDet = 1,
29 kVdriftPHPad = 2,
30 kT0PHDet = 3,
31 kT0PHPad = 4,
32 kVdriftLinear = 5,
33 kLorentzLinear = 6,
34 kPRF = 7
35 };
36
37 AliTRDPreprocessorOffline();
38 virtual ~AliTRDPreprocessorOffline();
39
40 void SetLinearFitForVdrift(Bool_t methodsecond) { fMethodSecond = methodsecond;};
41 Bool_t GetLinearFitForVdrift() const { return fMethodSecond;};
01239968 42 void SetNameList(TString nameList) { fNameList = nameList;};
43 TString GetNameList() const { return fNameList;};
44 void SetCalDetGain(AliTRDCalDet *calDetGainUsed) {fCalDetGainUsed = calDetGainUsed;};
4c865c34 45 void SetCalDetVdrift(AliTRDCalDet *calDetVdriftUsed) {fCalDetVdriftUsed = calDetVdriftUsed;};
01239968 46 AliTRDCalDet *GetCalDetGain() const { return fCalDetGainUsed;};
4c865c34 47 AliTRDCalDet *GetCalDetVdrift() const { return fCalDetVdriftUsed;};
b3fcfd96 48
4c865c34 49 Bool_t Init(const Char_t* fileName);
50
b3fcfd96 51 void CalibVdriftT0(const Char_t* file, Int_t startRunNumber, Int_t endRunNumber, TString ocdbStorage="");
52 void CalibGain(const Char_t* file, Int_t startRunNumber, Int_t endRunNumber, TString ocdbStorage="");
53 void CalibPRF(const Char_t* file, Int_t startRunNumber, Int_t endRunNumber, TString ocdbStorage="");
54
55 Bool_t ReadGainGlobal(const Char_t* fileName="CalibObjects.root");
56 Bool_t ReadVdriftT0Global(const Char_t* fileName="CalibObjects.root");
57 Bool_t ReadVdriftLinearFitGlobal(const Char_t* fileName="CalibObjects.root");
58 Bool_t ReadPRFGlobal(const Char_t* fileName="CalibObjects.root");
59
60 Bool_t AnalyzeGain();
61 Bool_t AnalyzeVdriftT0();
62 Bool_t AnalyzeVdriftLinearFit();
63 Bool_t AnalyzePRF();
64
01239968 65 void CorrectFromDetGainUsed();
4c865c34 66 void CorrectFromDetVdriftUsed();
01239968 67
b3fcfd96 68 void UpdateOCDBT0(Int_t startRunNumber, Int_t endRunNumber, const char* storagePath);
69 void UpdateOCDBVdrift(Int_t startRunNumber, Int_t endRunNumber, const char* storagePath);
70 void UpdateOCDBGain(Int_t startRunNumber, Int_t endRunNumber, const char* storagePath);
71 void UpdateOCDBPRF(Int_t startRunNumber, Int_t endRunNumber, const char* storagePath);
72
4c865c34 73 Int_t GetVersionGainUsed() const { return fVersionGainUsed; }
74 Int_t GetSubVersionGainUsed() const { return fSubVersionGainUsed; }
75 Int_t GetVersionVdriftUsed() const { return fVersionVdriftUsed; }
76 Int_t GetSubVersionVdriftUsed() const { return fSubVersionVdriftUsed; }
b3fcfd96 77
4c865c34 78
79 private:
b3fcfd96 80 Bool_t fMethodSecond; // Second Method for drift velocity
01239968 81 TString fNameList; // Name of the list
82 AliTRDCalDet *fCalDetGainUsed; // CalDet used and to be corrected for
4c865c34 83 AliTRDCalDet *fCalDetVdriftUsed; // CalDet used and to be corrected for
b3fcfd96 84 TH2I *fCH2d; // Gain
85 TProfile2D *fPH2d; // Drift velocity first method
86 TProfile2D *fPRF2d; // PRF
87 AliTRDCalibraVdriftLinearFit *fAliTRDCalibraVdriftLinearFit; // Drift velocity second method
88 TH1I *fNEvents; // Number of events
89 TH2F *fAbsoluteGain; // Absolute Gain calibration
90 TObjArray * fPlots; // array with some plots to check
91 TObjArray * fCalibObjects; // array with calibration objects
4c865c34 92 Int_t fVersionGainUsed; // VersionGainUsed
93 Int_t fSubVersionGainUsed; // SubVersionGainUsed
94 Int_t fVersionVdriftUsed; // VersionVdriftUsed
95 Int_t fSubVersionVdriftUsed; // SubVersionVdriftUsed
b3fcfd96 96
4c865c34 97 Int_t GetSubVersion(TString name) const;
98 Int_t GetVersion(TString name) const;
b3fcfd96 99
100
101
102private:
103 AliTRDPreprocessorOffline& operator=(const AliTRDPreprocessorOffline&); // not implemented
104 AliTRDPreprocessorOffline(const AliTRDPreprocessorOffline&); // not implemented
105 ClassDef(AliTRDPreprocessorOffline,1)
106};
107
108#endif
01239968 109