]> git.uio.no Git - u/mrichter/AliRoot.git/blame_incremental - TPC/AliTPCcalibV0.h
Add Kinematics reader
[u/mrichter/AliRoot.git] / TPC / AliTPCcalibV0.h
... / ...
CommitLineData
1#ifndef AliTPCCALIBV0_H
2#define AliTPCCALIBV0_H
3
4
5#include <AliTPCcalibBase.h>
6
7
8class TTreeSRedirector;
9class AliTPCROC;
10class AliTPCseed;
11class AliESDtrack;
12class AliESDEvent;
13class TH3F;
14class TH1F;
15class TH2F;
16class TH1I;
17class TDatabasePDG;
18class AliKFParticle;
19class AliKFVertex;
20class AliESDv0;
21class TArrayI;
22class TTree;
23class AliStack;
24class AliExternalTrackParam;
25class AliTPCCorrection;
26
27class AliTPCcalibV0 : public AliTPCcalibBase {
28public :
29
30 // List of branches
31
32 AliTPCcalibV0();
33 AliTPCcalibV0(const Text_t *name, const Text_t *title);
34 virtual ~AliTPCcalibV0();
35 virtual void Process(AliESDEvent *event) {return ProcessESD(event,0);}
36 Long64_t Merge(TCollection *const li);
37 void AddTree(TTree * treeInput);
38 void AddTreeHPT(TTree * treeInput);
39 static AliExternalTrackParam * RefitTrack(AliTPCseed *seed, AliTPCCorrection * corr, Double_t xstart, Double_t xstop, Double_t mass);
40 static void MakeFitTreeTrack(const TObjArray * corrArray, Double_t ptCut, Int_t run);
41 static void MakeFitTreeV0(const TObjArray * corrArray, Double_t ptCut, Int_t run);
42 //
43 //
44 //
45 void ProcessESD(AliESDEvent *esd, AliStack *stack=0);
46 void DumpToTree(AliESDEvent *esd);
47 void DumpToTreeHPT(AliESDEvent *esd);
48 TTree * GetV0Tree(){return fV0Tree;}
49 TTree * GetHPTTree(){return fHPTTree;}
50 //
51 void MakeMC();
52 void MakeV0s();
53 void ProcessV0(Int_t ftype);
54 void ProcessPI0();
55 void BinLogX(TH2F * h);
56 //
57 //
58 //
59 static AliKFParticle * Fit(AliKFVertex & primVtx, AliESDv0 *v0, Int_t PDG1, Int_t PDG2);
60
61protected:
62private:
63
64 AliTPCcalibV0(const AliTPCcalibV0&); // Not implemented
65 AliTPCcalibV0& operator=(const AliTPCcalibV0&); // Not implemented
66 TTree *fV0Tree; // tree with full V0 information
67 TTree *fHPTTree; // tree with high mometa tracks - full calib info
68 //
69 AliStack *fStack; // pointer to kinematic tree
70 AliESDEvent *fESD; //! current ED to proccess - NOT OWNER
71 TDatabasePDG *fPdg; //! particle database
72 TObjArray *fParticles; // array of selected MC particles
73 TObjArray *fV0s; // array of V0s
74 TObjArray *fGammas; // gamma conversion candidates
75 //
76 void Process(AliESDtrack *track, Int_t runNo=-1){AliTPCcalibBase::Process(track,runNo);};
77 void Process(AliTPCseed *track){return AliTPCcalibBase::Process(track);}
78 //
79 ClassDef(AliTPCcalibV0,3);
80};
81
82
83#endif