Removal of useless dependecies via forward declarations
[u/mrichter/AliRoot.git] / STEER / AliRecPoint.h
CommitLineData
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"
25class TMatrix;
2a33668d 26
94de3818 27// --- AliRoot header files ---
2a33668d 28
94de3818 29class AliDigitNew;
2a33668d 30class AliGeometry;
31
32class AliRecPoint : public TObject {
33
34public:
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
60protected:
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