]>
Commit | Line | Data |
---|---|---|
06d06fbb | 1 | #ifndef ALIRECINFO_H |
2 | #define ALIRECINFO_H | |
3 | /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. * | |
4 | * See cxx source for full Copyright notice */ | |
5 | ||
6 | ||
7 | ||
8 | ////////////////////////////////////////////////////////////////////////////// | |
9 | // Class AliRecInfo // | |
10 | // collect together MC info and Rec info for comparison purposes | |
11 | // - effieciency studies and so on// // | |
12 | // marian.ivanov@cern.ch // | |
13 | ////////////////////////////////////////////////////////////////////////////// | |
14 | ||
15 | ||
16 | #include "TObject.h" | |
83200484 | 17 | #include "AliESDEvent.h" |
06d06fbb | 18 | #include "AliESDtrack.h" |
19 | #include "AliV0.h" | |
20 | #include "AliESDfriendTrack.h" | |
21 | #include "AliITStrackMI.h" | |
22 | #include "AliTRDtrack.h" | |
23 | class AliTPCseed; | |
24 | ||
25 | ///////////////////////////////////////////////////////////////////////// | |
26 | class AliESDRecInfo: public TObject { | |
83200484 | 27 | friend class AliRecInfoMaker; |
28 | friend class AliESDRecV0Info; | |
29 | friend class AliESDRecKinkInfo; | |
30 | ||
06d06fbb | 31 | public: |
32 | AliESDRecInfo(); | |
33 | AliESDRecInfo(const AliESDRecInfo& recinfo); | |
34 | ~AliESDRecInfo(); | |
35 | void UpdatePoints(AliESDtrack* track); | |
83200484 | 36 | void Update(AliMCInfo* info,AliTPCParam * par, Bool_t reconstructed); |
06d06fbb | 37 | void Reset(); |
38 | // | |
39 | void SetESDtrack(const AliESDtrack *track); | |
40 | AliESDtrack *GetESDtrack() const { return fESDtrack;} | |
41 | AliESDfriendTrack *GetTrackF() const { return fTrackF;} | |
42 | AliTPCseed *GetTPCtrack() const { return fTPCtrack;} | |
43 | AliITStrackMI *GetITStrack() const { return fITStrack;} | |
44 | AliTRDtrack *GetTRDtrack() const { return fTRDtrack;} | |
83200484 | 45 | protected: |
06d06fbb | 46 | // |
47 | Float_t fTPCPoints[10]; //start , biggest end points,max density .. density at the last 30 pad-rows | |
48 | Double_t fTPCinR0[5]; //generated position of the track at inner tpc - radius [3] and fi [4] | |
49 | Double_t fTPCinR1[5]; //reconstructed postion of the track - radius [3] and fi [ | |
50 | Double_t fTPCinP0[5]; //generated position of the track at inner tpc | |
51 | Double_t fTPCinP1[5]; //reconstructed postion of the track | |
52 | Double_t fTPCAngle0[2]; // generated angle | |
53 | Double_t fTPCAngle1[2]; //refconstructed angle | |
54 | Double_t fTPCDelta[5]; // deltas | |
55 | Double_t fTPCPools[5]; // pools | |
56 | Double_t fITSinR0[5]; //generated position of the track at inner tpc | |
57 | Double_t fITSinR1[5]; //reconstructed postion of the track | |
58 | Double_t fITSinP0[5]; //generated position of the track at inner tpc | |
59 | Double_t fITSinP1[5]; //reconstructed postion of the track | |
60 | Double_t fITSAngle0[2]; // generated angle | |
61 | Double_t fITSAngle1[2]; //refconstructed angle | |
62 | Double_t fITSDelta[5]; // deltas | |
63 | Double_t fITSPools[5]; // pools | |
64 | Float_t fTRLocalCoord[3]; //local coordinates of the track ref. | |
65 | Int_t fStatus[4]; // status -0 not found - 1 -only in - 2 -in-out -3 -in -out-refit | |
66 | Int_t fLabels[2]; // labels | |
67 | ||
68 | Bool_t fITSOn; // ITS refitted inward | |
69 | Bool_t fTRDOn; // ITS refitted inward | |
70 | Float_t fDeltaP; //delta of momenta | |
71 | Double_t fSign; // sign | |
72 | Int_t fReconstructed; //flag if track was reconstructed | |
73 | Int_t fFake; // fake track | |
74 | Int_t fMultiple; // number of reconstructions | |
75 | Bool_t fTPCOn; // TPC refitted inward | |
76 | Float_t fBestTOFmatch; //best matching between times | |
77 | ||
78 | private: | |
79 | AliESDtrack *fESDtrack; // esd track | |
80 | AliESDfriendTrack *fTrackF; // friend track | |
81 | AliTPCseed *fTPCtrack; // tpc track | |
82 | AliITStrackMI *fITStrack; // its track | |
83 | AliTRDtrack *fTRDtrack; // trd track | |
84 | ||
85 | ClassDef(AliESDRecInfo,2) // container for | |
86 | }; | |
87 | ||
88 | ||
89 | ||
90 | ///////////////////////////////////////////////////////// | |
91 | ///////////////////////////////////////////////////////// | |
92 | ///////////////////////////////////////////////////////// | |
93 | ||
94 | ||
95 | class AliESDRecV0Info: public TObject { | |
83200484 | 96 | friend class AliRecInfoMaker; |
06d06fbb | 97 | public: |
98 | void Update(Float_t vertex[3]); | |
83200484 | 99 | protected: |
06d06fbb | 100 | AliESDRecInfo fT1; //track1 |
101 | AliESDRecInfo fT2; //track2 | |
102 | Double_t fDist1; //info about closest distance according closest MC - linear DCA | |
103 | Double_t fDist2; //info about closest distance parabolic DCA | |
104 | Double_t fInvMass; //reconstructed invariant mass - | |
105 | // | |
106 | Double_t fPdr[3]; //momentum at vertex daughter - according approx at DCA | |
107 | Double_t fXr[3]; //rec. position according helix | |
108 | // | |
109 | Double_t fRs[2]; // minimum radius in rphi intersection | |
110 | Double_t fDistMinR; // distance at minimal radius | |
111 | Double_t fPm[3]; //momentum at the vertex mother | |
112 | Double_t fAngle[3]; //three angles | |
113 | Double_t fRr; // rec position of the vertex | |
114 | Int_t fLab[2]; //MC label of the partecle | |
115 | Float_t fPointAngleFi; //point angle fi | |
116 | Float_t fPointAngleTh; //point angle theta | |
117 | Float_t fPointAngle; //point angle full | |
118 | Int_t fV0Status; // status of the kink | |
119 | AliV0* fV0tpc; // Vo information from reconsturction according TPC | |
120 | AliV0* fV0its; // Vo information from reconsturction according ITS | |
121 | AliV0* fV0rec; // V0 information form the reconstruction | |
83200484 | 122 | Int_t fMultiple; // how man times V0 was recostructed |
123 | Int_t fV0Multiple; // how man times was V0 reconstucted | |
06d06fbb | 124 | Int_t fRecStatus; // status form the reconstuction |
125 | ClassDef(AliESDRecV0Info,2) // container for | |
126 | }; | |
127 | ||
128 | ||
129 | ||
130 | class AliESDRecKinkInfo: public TObject { | |
83200484 | 131 | friend class AliRecInfoMaker; |
06d06fbb | 132 | public: |
133 | void Update(); | |
83200484 | 134 | protected: |
06d06fbb | 135 | AliESDRecInfo fT1; //track1 |
136 | AliESDRecInfo fT2; //track2 | |
137 | AliESDkink fKink; //kink | |
138 | Double_t fDist1; //info about closest distance according closest MC - linear DCA | |
139 | Double_t fDist2; //info about closest distance parabolic DCA | |
140 | Double_t fInvMass; //reconstructed invariant mass - | |
141 | // | |
142 | Double_t fPdr[3]; //momentum at vertex daughter - according approx at DCA | |
143 | Double_t fXr[3]; //rec. position according helix | |
144 | // | |
145 | Double_t fPm[3]; //momentum at the vertex mother | |
146 | Double_t fAngle[3]; //three angles | |
147 | Double_t fRr; // rec position of the vertex | |
148 | Double_t fMinR; // minimum radius in rphi intersection | |
149 | Double_t fDistMinR; // distance at minimal radius | |
150 | Int_t fLab[2]; //MC label of the partecle | |
151 | Float_t fPointAngleFi; //point angle fi | |
152 | Float_t fPointAngleTh; //point angle theta | |
153 | Float_t fPointAngle; //point angle full | |
154 | Int_t fStatus; //status -tracks | |
155 | Int_t fRecStatus; //kink -status- 0 - not found 1-good - fake | |
83200484 | 156 | Int_t fMultiple; // how many times was kink reconstructed |
157 | Int_t fKinkMultiple; // how many times was kink reconstructed | |
06d06fbb | 158 | ClassDef(AliESDRecKinkInfo,1) // container for |
159 | }; | |
160 | ||
161 | #endif |