3 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
7 //-------------------------------------------------------------------------
9 // Virtual class to access calorimeter
10 // (EMCAL, PHOS, PMD, FMD) cluster data
11 // Author: Gustavo Conesa Balbastre LPSC-Grenoble
13 //-------------------------------------------------------------------------
16 #include <TLorentzVector.h>
18 class AliVCluster : public TObject
24 virtual ~AliVCluster() { ; }
25 AliVCluster(const AliVCluster& clus);
26 AliVCluster & operator=(const AliVCluster& source);
27 void Clear(const Option_t*) {;}
29 enum VClu_t {kUndef = -2,
48 kCharged = 11,//For PMD?
49 kNeutral = 12 //For PMD?
52 //Common EMCAL/PHOS/FMD/PMD
54 virtual void SetID(Int_t ) { ; }
55 virtual Int_t GetID() const {return 0 ; }
57 virtual void SetType(Char_t ) { ; }
58 virtual Char_t GetType() const {return kUndef ; }
60 virtual void SetE(Double_t ) { ; }
61 virtual Double_t E() const {return 0. ; }
63 virtual void SetChi2(Double_t ) { ; }
64 virtual Double_t Chi2() const {return 0. ; }
66 virtual void SetPositionAt(Float_t,Int_t) { ; }
67 virtual void SetPosition(Float_t *) { ; }
68 virtual void GetPosition(Float_t *) const { ; }
70 virtual void SetPIDAt(Float_t , Int_t) { ; }
71 virtual void SetPID(const Float_t *) { ; }
72 virtual const Double_t *GetPID() const { return 0 ; }
74 //CaloClusters, PHOS/EMCAL
76 virtual Bool_t IsEMCAL() const {return kFALSE ; }
77 virtual Bool_t IsPHOS() const {return kFALSE ; }
79 virtual void SetDispersion(Double_t ) { ; }
80 virtual Double_t GetDispersion() const {return 0. ;}
82 virtual void SetM20(Double_t) { ; }
83 virtual Double_t GetM20() const {return 0. ; }
85 virtual void SetM02(Double_t) { ; }
86 virtual Double_t GetM02() const {return 0. ; }
88 virtual void SetNExMax(UChar_t) { ; }
89 virtual UChar_t GetNExMax() const {return 0 ; }
91 virtual void SetTOF(Double_t) { ; }
92 virtual Double_t GetTOF() const {return 0. ; }
94 virtual void SetEmcCpvDistance(Double_t) { ; }
95 virtual Double_t GetEmcCpvDistance() const {return 0. ; }
96 virtual void SetTrackDistance(Double_t, Double_t ){ ; }
97 virtual Double_t GetTrackDx(void)const {return 0. ; }
98 virtual Double_t GetTrackDz(void)const {return 0. ; }
100 virtual void SetDistanceToBadChannel(Double_t) { ; }
101 virtual Double_t GetDistanceToBadChannel() const {return 0. ; }
103 virtual void SetNCells(Int_t) { ; }
104 virtual Int_t GetNCells() const {return 0 ; }
105 virtual void SetCellsAbsId(UShort_t */*array*/) {;}
106 virtual UShort_t *GetCellsAbsId() {return 0 ; }
107 virtual void SetCellsAmplitudeFraction(Double32_t */*array*/) {;}
108 virtual Double_t *GetCellsAmplitudeFraction() {return 0 ; }
109 virtual Int_t GetCellAbsId(Int_t) const {return 0 ; }
110 virtual Double_t GetCellAmplitudeFraction(Int_t) const {return 0. ; }
112 virtual Int_t GetLabel() const {return -1 ;}
113 virtual Int_t GetLabelAt(UInt_t) const {return -1 ;}
114 virtual Int_t *GetLabels() const {return 0 ; }
115 virtual UInt_t GetNLabels() const {return 0 ; }
117 virtual Int_t GetNTracksMatched() const {return 0 ; }
118 virtual TObject *GetTrackMatched(Int_t) const {return 0 ; }//AODCaloCluster
119 virtual Int_t GetTrackMatchedIndex() const {return -1; }//ESDCaloCluster
121 virtual void GetMomentum(TLorentzVector &/*tl*/, Double_t * /*v*/) { ; }
123 ClassDef(AliVCluster,0) //VCluster
126 #endif //ALIVCLUSTER_H