Warning removal +
[u/mrichter/AliRoot.git] / TPC / AliTPCcalibPID.h
CommitLineData
401ad2f1 1#ifndef ALITPCCALIBCPID_H
2#define ALITPCCALIBCPID_H
3
4/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
5 * See cxx source for full Copyright notice */
6
7#include "AliTPCcalibBase.h"
8#include "AliTPCCalPad.h"
9#include "TH2F.h"
10#include "TF1.h"
11#include "THnSparse.h"
12class TH1F;
13class TList;
14class AliESDEvent;
15class AliESDtrack;
16class AliTPCseed;
17
18#include "TTreeStream.h"
19
20
21class AliTPCcalibPID:public AliTPCcalibBase {
22public:
23 AliTPCcalibPID();
24 AliTPCcalibPID(const Text_t *name, const Text_t *title);
25 virtual ~AliTPCcalibPID();
26
27 virtual void Process(AliESDEvent *event);
28 virtual Long64_t Merge(TCollection *li);
29 virtual void Analyze();
37fb53c1 30 void MakeReport(const char * outputpath);
31 void DrawRatioTot(Int_t ipad, const char* outputpath);
32 void DrawRatioMax(Int_t ipad, const char* outputpath);
33 void DrawRatiodEdx(Float_t demin, Float_t demax, const char* outputpath);
34 void DrawResolBGQtot(Int_t minClusters, Int_t maxClusters, const char *outputpath); //
35 void DrawResolBGQmax(Int_t minClusters, Int_t maxClusters, const char *outputpath);
401ad2f1 36 //
37 TH1F * GetHistNTracks(){return fHistNTracks;};
38 TH1F * GetHistClusters(){return fClusters;};
39 TH2F * GetHistPileUp(){return fPileUp;};
40 TH2F * GetHistLandau(){return fLandau;};
41 //
42 THnSparseS * GetHistQmax(){return fDeDxQmax;};
43 THnSparseS * GetHistQtot(){return fDeDxQtot;};
37fb53c1 44 THnSparseS * GetHistRatioMaxTot(){return fDeDxRatioMaxTot;};
45 THnSparseS * GetHistRatioQmax(){return fDeDxRatioQmax;};
46 THnSparseS * GetHistRatioQtot(){return fDeDxRatioQtot;};
47 THnSparseS * GetHistRatioTruncQmax(){return fDeDxRatioTruncQmax;};
48 THnSparseS * GetHistRatioTruncQtot(){return fDeDxRatioTruncQtot;};
401ad2f1 49 //
50 void SetMIPvalue(Float_t mip){fMIP = mip;};
51 void SetLowerTrunc(Float_t lowerTrunc){fLowerTrunc = lowerTrunc;};
52 void SetUpperTrunc(Float_t upperTrunc){fUpperTrunc = upperTrunc;};
53 void SetUseShapeNorm(Bool_t useShapeNorm){fUseShapeNorm = useShapeNorm;};
37fb53c1 54 void SetUsePosNorm(Int_t usePosNorm){fUsePosNorm = usePosNorm;};
401ad2f1 55 void SetPadNorm(Int_t padNorm){fUsePadNorm = padNorm;};
56 void SetIsCosmic(Bool_t isCosmic){fIsCosmic = isCosmic;};
57 //
58 //
59 static void BinLogX(THnSparse * h, Int_t axisDim); // method for correct histogram binning
37fb53c1 60 void DumpTree(THnSparse * hndim, const char * outname);
61 void DumpTrees();
62 void Process(AliESDtrack *track, Int_t runNo=-1){AliTPCcalibBase::Process(track,runNo);};
63 void Process(AliTPCseed *track){return AliTPCcalibBase::Process(track);}
401ad2f1 64private:
65 //
66 // parameter specifications
67 //
68 Float_t fMIP;
69 Float_t fLowerTrunc;
70 Float_t fUpperTrunc;
71 Bool_t fUseShapeNorm;
37fb53c1 72 Int_t fUsePosNorm;
401ad2f1 73 Int_t fUsePadNorm;
74 //
75 Bool_t fIsCosmic;
76 //
77 // histograms
78 //
79 TH1F *fHistNTracks; // histogram showing number of ESD tracks per event
80 TH1F *fClusters; // histogram showing the number of clusters per track
81 TH2F *fPileUp; // histogram which shows correlation between time mismatch and dEdx signal
82 TH2F *fLandau; // histogran which shows Landau distribution for the three pad geometries
83 //
84 THnSparseS * fDeDxQmax; // histogram which shows dEdx (Qmax) as a function of z,sin(phi),tan(theta),p,betaGamma
85 THnSparseS * fDeDxQtot; // histogram which shows dEdx (Qtot) as a function of z,sin(phi),tan(theta),p,betaGamma
37fb53c1 86 //
87 // ratio histograms
88 //
89 THnSparseS * fDeDxRatioMaxTot; // histogram which shows dEdx ratio (Qmax/Qtot) as a function of z,sin(phi),tan(theta),dEdx,dEdx*dl
90 THnSparseS * fDeDxRatioQmax; // dEdx ratio (tracklet/track) as a function of z,sin(phi),tan(theta),dEdx,dEdx*dl
91 THnSparseS * fDeDxRatioQtot; // dEdx ratio (tracklet/track) as a function of z,sin(phi),tan(theta),dEdx,dEdx*dl
92 THnSparseS * fDeDxRatioTruncQtot; // dEdx ratio (tracklet/track) as a function of z,sin(phi),tan(theta),dEdx,dEdx*dl
93 THnSparseS * fDeDxRatioTruncQmax; // dEdx ratio (tracklet/track) as a function of z,sin(phi),tan(theta),dEdx,dEdx*dl
94
401ad2f1 95 //
96 AliTPCcalibPID(const AliTPCcalibPID&);
97 AliTPCcalibPID& operator=(const AliTPCcalibPID&);
98
99 ClassDef(AliTPCcalibPID, 1);
100};
101
102#endif
103
104