3 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
8 ////////////////////////////////////////////////
9 // Base class for Reconstructed Point //
11 // Author Yves Schutz SUBATECH //
14 ////////////////////////////////////////////////
16 // --- Standard library ---
19 // --- ROOT system ---
22 #include <TMatrixFfwd.h>
25 // --- AliRoot header files ---
30 class AliRecPoint : public TObject {
34 AliRecPoint() ; // ctor
35 AliRecPoint(const char * opt) ; // ctor
36 AliRecPoint(const AliRecPoint &recp); // copy ctor
37 virtual ~AliRecPoint() ; // dtor
39 virtual void AddDigit(AliDigitNew & digit) ; // add a digit to the digit's indexes list
40 // virtual void AddTrack(AliTrack & track) ; // add a track to the tracks list
41 virtual void GetCovarianceMatrix(TMatrixF & mat) const;
42 virtual AliGeometry * GetGeom() const { return fGeom; }
43 virtual void GetGlobalPosition(TVector3 & gpos, TMatrixF & gmat) const ; // return global position in ALICE
44 virtual int * GetDigitsList(void) const { return fDigitsList ; }
45 // virtual int * GetTracksList(void) const { return fTracksList ; }
46 virtual Float_t GetEnergy() const {return fAmp; }
47 virtual void GetLocalPosition(TVector3 & pos) const ;
48 virtual Int_t GetDigitsMultiplicity(void) const { return fMulDigit ; }
49 Int_t GetIndexInList() const { return fIndexInList ; }
50 virtual Int_t GetMaximumDigitMultiplicity() const { return fMaxDigit; }
51 virtual Int_t GetMaximumTrackMultiplicity() const { return fMaxTrack; }
52 virtual Int_t GetTracksMultiplicity(void) const { return fMulTrack ; }
53 AliRecPoint & operator= (const AliRecPoint &recp)
54 {recp.Copy(*this); return (*this);}
56 void SetIndexInList(Int_t val) { fIndexInList = val ; }
60 void Copy(TObject &recp) const;
62 Float_t fAmp ; // summed amplitude of digits
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)
65 TVector3 fLocPos ; // local position in the sub-detector coordinate
66 TMatrixF * 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
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
74 ClassDef(AliRecPoint,1) // Base class for reconstructed space points
78 #endif // ALIRECPOINT_H