]>
Commit | Line | Data |
---|---|---|
2a33668d | 1 | #ifndef ALIRECPOINT_H |
2 | #define ALIRECPOINT_H | |
3 | /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. * | |
4 | * See cxx source for full Copyright notice */ | |
5 | ||
6 | /* $Id$ */ | |
7 | ||
8 | //////////////////////////////////////////////// | |
9 | // Base class for Reconstructed Point // | |
10 | // Version 0.1 // | |
11 | // Author Yves Schutz SUBATECH // | |
12 | // // | |
13 | // // | |
14 | //////////////////////////////////////////////// | |
15 | ||
2a33668d | 16 | // --- Standard library --- |
17 | ||
18 | #include "assert.h" | |
19 | #include "iostream.h" | |
20 | ||
94de3818 | 21 | // --- ROOT system --- |
2a33668d | 22 | |
94de3818 | 23 | #include "TObject.h" |
24 | #include "TVector3.h" | |
25 | class TMatrix; | |
2a33668d | 26 | |
94de3818 | 27 | // --- AliRoot header files --- |
2a33668d | 28 | |
94de3818 | 29 | class AliDigitNew; |
2a33668d | 30 | class AliGeometry; |
31 | ||
32 | class AliRecPoint : public TObject { | |
33 | ||
34 | public: | |
35 | ||
36 | AliRecPoint() ; // ctor | |
aee8290b | 37 | AliRecPoint(const AliRecPoint &recp); // copy ctor |
2a33668d | 38 | virtual ~AliRecPoint() ; // dtor |
39 | ||
65a2d2b0 | 40 | virtual void AddDigit(AliDigitNew & digit) ; // add a digit to the digit's indexes list |
2a33668d | 41 | // virtual void AddTrack(AliTrack & track) ; // add a track to the tracks list |
ef42d733 | 42 | void Copy(AliRecPoint &recp) const; |
2a33668d | 43 | virtual void GetCovarianceMatrix(TMatrix & mat) ; |
44 | virtual AliGeometry * GetGeom() const { return fGeom; } | |
94de3818 | 45 | virtual void GetGlobalPosition(TVector3 & gpos, TMatrix & gmat) const ; // return global position in ALICE |
2a33668d | 46 | virtual int * GetDigitsList(void) const { return fDigitsList ; } |
47 | // virtual int * GetTracksList(void) const { return fTracksList ; } | |
94de3818 | 48 | virtual Float_t GetEnergy() const {return fAmp; } |
49 | virtual void GetLocalPosition(TVector3 & pos) const ; | |
2a33668d | 50 | virtual Int_t GetDigitsMultiplicity(void) const { return fMulDigit ; } |
65a2d2b0 | 51 | Int_t GetIndexInList() const { return fIndexInList ; } |
2a33668d | 52 | virtual Int_t GetMaximumDigitMultiplicity() const { return fMaxDigit; } |
53 | virtual Int_t GetMaximumTrackMultiplicity() const { return fMaxTrack; } | |
54 | virtual Int_t GetTracksMultiplicity(void) const { return fMulTrack ; } | |
55 | virtual void Print(Option_t * opt = "void") = 0 ; | |
ef42d733 | 56 | AliRecPoint & operator= (const AliRecPoint &recp); |
65a2d2b0 | 57 | void SetIndexInList(Int_t val) { fIndexInList = val ; } |
2a33668d | 58 | |
59 | ||
60 | protected: | |
61 | ||
62 | Float_t fAmp ; // summed amplitude of digits | |
65a2d2b0 | 63 | AliGeometry * fGeom ; //! pointer to the geometry class |
64 | Int_t fIndexInList ;// the index of this RecPoint in the list stored in TreeR (to be set by analysis) | |
2a33668d | 65 | TVector3 fLocPos ; // local position in the sub-detector coordinate |
66 | TMatrix * fLocPosM ; // covariance matrix ; | |
67 | Int_t fMaxDigit ; //! max initial size of digits array (not saved) | |
68 | Int_t fMulDigit ; // total multiplicity of digits | |
69 | Int_t fMaxTrack ; //! max initial size of tracks array (not saved) | |
70 | Int_t fMulTrack ; // total multiplicity of tracks | |
712d6528 | 71 | Int_t * fDigitsList ; //[fMulDigit] list of digit's indexes from which the point was reconstructed |
72 | Int_t * fTracksList ; //[fMulTrack] list of tracks to which the point was assigned | |
65a2d2b0 | 73 | |
94de3818 | 74 | ClassDef(AliRecPoint,1) // Base class for reconstructed space points |
2a33668d | 75 | |
76 | }; | |
77 | ||
78 | #endif // ALIRECPOINT_H |