]>
Commit | Line | Data |
---|---|---|
f7f33dec | 1 | #ifndef ALITPCCALIBCOSMIC_H |
2 | #define ALITPCCALIBCOSMIC_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" | |
d6920632 | 8 | #include "AliTPCCalPad.h" |
54b76c13 | 9 | #include "TH2F.h" |
f7f33dec | 10 | class TH1F; |
f7f33dec | 11 | class TList; |
12 | class AliESDEvent; | |
54b76c13 | 13 | class AliESDtrack; |
860b3d93 | 14 | class AliExternalComparison; |
f7f33dec | 15 | |
16 | #include "TTreeStream.h" | |
17 | ||
18 | ||
19 | class AliTPCcalibCosmic:public AliTPCcalibBase { | |
20 | public: | |
21 | AliTPCcalibCosmic(); | |
22 | AliTPCcalibCosmic(const Text_t *name, const Text_t *title); | |
23 | virtual ~AliTPCcalibCosmic(); | |
24 | ||
54b76c13 | 25 | virtual void Process(AliESDEvent *event); |
26 | virtual Long64_t Merge(TCollection *li); | |
27 | virtual void Analyze(); | |
28 | // | |
860b3d93 | 29 | void ProcessTree(TTree * tree, AliExternalComparison *comp=0); |
30 | // | |
54b76c13 | 31 | void FindPairs(AliESDEvent *event); |
32 | Bool_t IsPair(AliExternalTrackParam *tr0, AliExternalTrackParam *tr1); | |
54b76c13 | 33 | static void CalculateBetheParams(TH2F *hist, Double_t * initialParam); |
34 | static Double_t CalculateMIPvalue(TH1F * hist); | |
860b3d93 | 35 | AliExternalTrackParam *MakeTrack(const AliExternalTrackParam *track0, const AliExternalTrackParam *track1); |
15e48021 | 36 | AliExternalTrackParam *MakeCombinedTrack(const AliExternalTrackParam *track0, const AliExternalTrackParam *track1); |
37 | ||
860b3d93 | 38 | void UpdateTrack(AliExternalTrackParam &track0, const AliExternalTrackParam &track1); |
15e48021 | 39 | void SetComparison(AliExternalComparison * comp) { fComp=comp;} |
40 | AliExternalComparison *GetComparison() { return fComp;} | |
41 | ||
54b76c13 | 42 | // |
43 | TH1F * GetHistNTracks(){return fHistNTracks;}; | |
44 | TH1F * GetHistClusters(){return fClusters;}; | |
45 | TH2F * GetHistAcorde(){return fModules;}; | |
46 | TH1F * GetHistPt(){return fHistPt;}; | |
47 | TH2F * GetHistDeDx(){return fDeDx;}; | |
48 | TH1F * GetHistMIP(){return fDeDxMIP;}; | |
49 | // | |
50 | Double_t GetMIPvalue(){return fMIPvalue;}; | |
51 | // | |
52 | static void BinLogX(TH1 * h); // method for correct histogram binning | |
53 | ||
1aa15e8d | 54 | void Process(AliESDtrack *track, Int_t runNo=-1){AliTPCcalibBase::Process(track,runNo);}; |
55 | void Process(AliTPCseed *track){return AliTPCcalibBase::Process(track);} | |
54b76c13 | 56 | |
57 | private: | |
58 | ||
59 | void FillAcordeHist(AliESDtrack *upperTrack); | |
60 | ||
15e48021 | 61 | AliExternalComparison * fComp; // comparison histogram |
54b76c13 | 62 | TH1F *fHistNTracks; // histogram showing number of ESD tracks per event |
63 | TH1F *fClusters; // histogram showing the number of clusters per track | |
64 | TH2F *fModules; // 2d histogram of tracks which are propagated to the ACORDE scintillator array | |
65 | TH1F *fHistPt; // Pt histogram of reconstructed tracks | |
66 | TH2F *fDeDx; // dEdx spectrum showing the different particle types | |
67 | TH1F *fDeDxMIP; // TPC signal close to the MIP region of muons 0.4 < p < 0.45 GeV | |
68 | ||
69 | Double_t fMIPvalue; // MIP value calculated via a fit to fDeDxMIP | |
108953e9 | 70 | // |
9b27d39b | 71 | // cuts |
72 | // | |
73 | Float_t fCutMaxD; // maximal distance in rfi ditection | |
a6dc0cf6 | 74 | Float_t fCutMaxDz; // maximal distance in z ditection |
9b27d39b | 75 | Float_t fCutTheta; // maximal distance in theta ditection |
76 | Float_t fCutMinDir; // direction vector products | |
54b76c13 | 77 | |
f7f33dec | 78 | AliTPCcalibCosmic(const AliTPCcalibCosmic&); |
79 | AliTPCcalibCosmic& operator=(const AliTPCcalibCosmic&); | |
80 | ||
81 | ClassDef(AliTPCcalibCosmic, 1); | |
82 | }; | |
83 | ||
84 | #endif | |
85 |