]> git.uio.no Git - u/mrichter/AliRoot.git/blame_incremental - TPC/AliTPCcalibCosmic.h
adding getter for the streamer info list, do not add streamer infos which are already...
[u/mrichter/AliRoot.git] / TPC / AliTPCcalibCosmic.h
... / ...
CommitLineData
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"
8#include "AliTPCCalPad.h"
9#include "TH2F.h"
10class TH1F;
11class TList;
12class AliESDEvent;
13class AliESDtrack;
14class THnSparse;
15
16#include "TTreeStream.h"
17
18
19class AliTPCcalibCosmic:public AliTPCcalibBase {
20public:
21 AliTPCcalibCosmic();
22 AliTPCcalibCosmic(const Text_t *name, const Text_t *title);
23 virtual ~AliTPCcalibCosmic();
24
25 virtual void Process(AliESDEvent *event);
26 virtual Long64_t Merge(TCollection *li);
27 virtual void Analyze();
28 void Add(const AliTPCcalibCosmic* cosmic);
29 //
30 //
31 void Init();
32 void FindPairs(AliESDEvent *event);
33 Bool_t IsPair(AliExternalTrackParam *tr0, AliExternalTrackParam *tr1);
34 static void CalculateBetheParams(TH2F *hist, Double_t * initialParam);
35 static Double_t CalculateMIPvalue(TH1F * hist);
36 AliExternalTrackParam *MakeTrack(const AliExternalTrackParam *track0, const AliExternalTrackParam *track1);
37 AliExternalTrackParam *MakeCombinedTrack(const AliExternalTrackParam *track0, const AliExternalTrackParam *track1);
38
39 void UpdateTrack(AliExternalTrackParam &track0, const AliExternalTrackParam &track1);
40 //
41 void FillHistoPerformance(AliExternalTrackParam *par0, AliExternalTrackParam *par1, AliExternalTrackParam *inner0, AliExternalTrackParam *inner1, AliTPCseed *seed0, AliTPCseed *seed1);
42
43
44 //
45 TH1F * GetHistNTracks(){return fHistNTracks;};
46 TH1F * GetHistClusters(){return fClusters;};
47 TH2F * GetHistAcorde(){return fModules;};
48 TH1F * GetHistPt(){return fHistPt;};
49 TH2F * GetHistDeDx(){return fDeDx;};
50 TH1F * GetHistMIP(){return fDeDxMIP;};
51 //
52 Double_t GetMIPvalue(){return fMIPvalue;};
53 //
54 static void BinLogX(TH1 * h); // method for correct histogram binning
55 static void BinLogX(THnSparse * h, Int_t axisDim); // method for correct histogram binning
56
57 void Process(AliESDtrack *track, Int_t runNo=-1){AliTPCcalibBase::Process(track,runNo);};
58 void Process(AliTPCseed *track){return AliTPCcalibBase::Process(track);}
59
60 //
61 // Performance histograms
62 //
63 THnSparse *fHistoDelta[6]; // histograms of tracking performance delta
64 THnSparse *fHistoPull[6]; // histograms of tracking performance pull
65 THnSparse *fHistodEdxMax[4]; // histograms of dEdx perfomance - max charge
66 THnSparse *fHistodEdxTot[4]; // histograms of dEdx perfomance - tot charge
67
68private:
69
70 void FillAcordeHist(AliESDtrack *upperTrack);
71
72
73
74 TH1F *fHistNTracks; // histogram showing number of ESD tracks per event
75 TH1F *fClusters; // histogram showing the number of clusters per track
76 TH2F *fModules; // 2d histogram of tracks which are propagated to the ACORDE scintillator array
77 TH1F *fHistPt; // Pt histogram of reconstructed tracks
78 TH2F *fDeDx; // dEdx spectrum showing the different particle types
79 TH1F *fDeDxMIP; // TPC signal close to the MIP region of muons 0.4 < p < 0.45 GeV
80
81 Double_t fMIPvalue; // MIP value calculated via a fit to fDeDxMIP
82 //
83 // cuts
84 //
85 Float_t fCutMaxD; // maximal distance in rfi ditection
86 Float_t fCutMaxDz; // maximal distance in z ditection
87 Float_t fCutTheta; // maximal distance in theta ditection
88 Float_t fCutMinDir; // direction vector products
89
90 AliTPCcalibCosmic(const AliTPCcalibCosmic&);
91 AliTPCcalibCosmic& operator=(const AliTPCcalibCosmic&);
92
93 ClassDef(AliTPCcalibCosmic, 2);
94};
95
96#endif
97