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