This is a MAJOR modification:
[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
16// --- ROOT system ---
17
18#include "TObject.h"
19#include "TVector3.h"
20#include "TMatrix.h"
21
22// --- Standard library ---
23
24#include "assert.h"
25#include "iostream.h"
26
27// --- AliRoot header files ---
28
29#include "AliDigitNew.h"
30#include "AliGeometry.h"
31//#include "AliTrack.h"
32
33
34class AliGeometry;
35
36class AliRecPoint : public TObject {
37
38public:
39
40 AliRecPoint() ; // ctor
41 virtual ~AliRecPoint() ; // dtor
42
43 virtual void AddDigit(AliDigitNew & digit) ; // add a digit to the digits list
44 // virtual void AddTrack(AliTrack & track) ; // add a track to the tracks list
45 virtual void GetCovarianceMatrix(TMatrix & mat) ;
46 virtual AliGeometry * GetGeom() const { return fGeom; }
47 virtual void GetGlobalPosition(TVector3 & gpos, TMatrix & gmat) ; // return the global position in ALICE
48 virtual int * GetDigitsList(void) const { return fDigitsList ; }
49 // virtual int * GetTracksList(void) const { return fTracksList ; }
50 virtual Float_t GetEnergy() {return fAmp; }
51 virtual void GetLocalPosition(TVector3 & pos) ;
52 virtual Int_t GetDigitsMultiplicity(void) const { return fMulDigit ; }
53 virtual Int_t GetMaximumDigitMultiplicity() const { return fMaxDigit; }
54 virtual Int_t GetMaximumTrackMultiplicity() const { return fMaxTrack; }
55 virtual Int_t GetTracksMultiplicity(void) const { return fMulTrack ; }
56 virtual void Print(Option_t * opt = "void") = 0 ;
57
58
59protected:
60
61 Float_t fAmp ; // summed amplitude of digits
62 int * fDigitsList ; // list of digits from which the point was reconstructed
63 AliGeometry * fGeom ; // pointer to the geometry class
64 TVector3 fLocPos ; // local position in the sub-detector coordinate
65 TMatrix * fLocPosM ; // covariance matrix ;
66 Int_t fMaxDigit ; //! max initial size of digits array (not saved)
67 Int_t fMulDigit ; // total multiplicity of digits
68 Int_t fMaxTrack ; //! max initial size of tracks array (not saved)
69 Int_t fMulTrack ; // total multiplicity of tracks
70 int * fTracksList ; // list of tracks to which the point was assigned
71
72public:
73
74
75 ClassDef(AliRecPoint,1)
76
77};
78
79#endif // ALIRECPOINT_H