]> git.uio.no Git - u/mrichter/AliRoot.git/blame - STEER/AliESDfriendTrack.h
- created the option to use the converted output blocks of the CATracker, in order...
[u/mrichter/AliRoot.git] / STEER / AliESDfriendTrack.h
CommitLineData
1d99986f 1#ifndef ALIESDFRIENDTRACK_H
2#define ALIESDFRIENDTRACK_H
3
4//-------------------------------------------------------------------------
5// Class AliESDfriendTrack
6// This class contains ESD track additions
7// Origin: Iouri Belikov, CERN, Jouri.Belikov@cern.ch
8//-------------------------------------------------------------------------
9
10#include <TObject.h>
ded25cc6 11#include <AliExternalTrackParam.h>
1d99986f 12
13class AliTrackPointArray;
15e85efa 14class AliKalmanTrack;
00dce61a 15class TObjArrray;
1d99986f 16//_____________________________________________________________________________
17class AliESDfriendTrack : public TObject {
18public:
15e85efa 19 enum {
20 kMaxITScluster=12,
21 kMaxTPCcluster=160,
22 kMaxTRDcluster=180
23 };
1d99986f 24 AliESDfriendTrack();
7454372c 25 AliESDfriendTrack(const AliESDfriendTrack &t);
1d99986f 26 virtual ~AliESDfriendTrack();
27
15e85efa 28 void Set1P(Float_t p) {f1P=p;}
29 void SetTrackPointArray(AliTrackPointArray *points) {
30 fPoints=points;
31 }
32 Float_t Get1P() const {return f1P;}
33 Int_t *GetITSindices() {return fITSindex;}
34 Int_t *GetTPCindices() {return fTPCindex;}
35 Int_t *GetTRDindices() {return fTRDindex;}
1d99986f 36 const AliTrackPointArray *GetTrackPointArray() const {return fPoints;}
37
15e85efa 38 void SetITStrack(AliKalmanTrack *t) {fITStrack=t;}
39 void SetTRDtrack(AliKalmanTrack *t) {fTRDtrack=t;}
40 AliKalmanTrack *GetTRDtrack() {return fTRDtrack;}
41 AliKalmanTrack *GetITStrack() {return fITStrack;}
00dce61a 42 void AddCalibObject(TObject * calibObject);
43 TObject * GetCalibObject(Int_t index);
ded25cc6 44 //
45 // parameters backup
46 void SetTPCOut(const AliExternalTrackParam &param);
47 void SetITSOut(const AliExternalTrackParam &param);
48 void SetTRDIn(const AliExternalTrackParam &param);
49 //
50 const AliExternalTrackParam * GetTPCOut(){return fTPCOut;}
51 const AliExternalTrackParam * GetITSOut() { return fITSOut;}
52 const AliExternalTrackParam * GetTRDIn() { return fTRDIn;}
7454372c 53
6d3a7bbf 54 void SetITSIndices(Int_t* indices, Int_t n);
55 void SetTPCIndices(Int_t* indices, Int_t n);
56 void SetTRDIndices(Int_t* indices, Int_t n);
57
58 Int_t GetMaxITScluster() {return fnMaxITScluster;}
59 Int_t GetMaxTPCcluster() {return fnMaxTPCcluster;}
60 Int_t GetMaxTRDcluster() {return fnMaxTRDcluster;}
61
3e341ccb 62 // bit manipulation for filtering
63 void SetSkipBit(Bool_t skip){SetBit(23,skip);}
64 Bool_t TestSkipBit() {return TestBit(23);}
65
1d99986f 66protected:
15e85efa 67 Float_t f1P; // 1/P (1/(GeV/c))
6d3a7bbf 68 Int_t fnMaxITScluster; // Max number of ITS clusters
69 Int_t fnMaxTPCcluster; // Max number of TPC clusters
70 Int_t fnMaxTRDcluster; // Max number of TRD clusters
71 Int_t* fITSindex; //[fnMaxITScluster] indices of the ITS clusters
72 Int_t* fTPCindex; //[fnMaxTPCcluster] indices of the TPC clusters
73 Int_t* fTRDindex; //[fnMaxTRDcluster] indices of the TRD clusters
74
15e85efa 75 AliTrackPointArray *fPoints;//Array of track space points in the global frame
00dce61a 76 TObjArray *fCalibContainer; //Array of objects for calibration
15e85efa 77 AliKalmanTrack *fITStrack; //! pointer to the ITS track (debug purposes)
78 AliKalmanTrack *fTRDtrack; //! pointer to the TRD track (debug purposes)
ded25cc6 79 //
80 //
81 AliExternalTrackParam * fTPCOut; // tpc outer parameters
82 AliExternalTrackParam * fITSOut; // its outer parameters
83 AliExternalTrackParam * fTRDIn; // trd inner parameters
84
7454372c 85private:
42cdc768 86 AliESDfriendTrack &operator=(const AliESDfriendTrack & /* t */) {return *this;}
7454372c 87
6d3a7bbf 88 ClassDef(AliESDfriendTrack,4) //ESD friend track
1d99986f 89};
90
91#endif
92
93