AliRoot Core  3abf5b4 (3abf5b4)
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
AliMUONRawClusterV2.h
Go to the documentation of this file.
1 #ifndef ALIMUONRAWCLUSTERV2_H
2 #define ALIMUONRAWCLUSTERV2_H
3 
4 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
5  * See cxx source for full Copyright notice */
6 
7 /* $Id$ */
8 // Revision of includes 07/05/2004
9 
14 // Author Philippe Pillot, Subatech
15 
16 #include "AliMUONVCluster.h"
17 #include <TMath.h>
18 
20 
21  public:
23  AliMUONRawClusterV2(Int_t chamberId, Int_t detElemId, Int_t clusterIndex);
24  virtual ~AliMUONRawClusterV2();
27 
28  virtual void Clear(Option_t* = "");
29 
31  virtual AliMUONRawClusterV2* Clone(const char* = "") const {return new AliMUONRawClusterV2(*this);}
32 
34  virtual void SetXYZ(Double_t x, Double_t y, Double_t z) {fX = x; fY = y; fZ = z;}
36  virtual Double_t GetX() const {return fX;}
38  virtual Double_t GetY() const {return fY;}
40  virtual Double_t GetZ() const {return fZ;}
41 
43  virtual void SetErrXY(Double_t errX, Double_t errY) {fErrX2 = errX * errX; fErrY2 = errY * errY;}
45  virtual Double_t GetErrX() const {return TMath::Sqrt(fErrX2);}
47  virtual Double_t GetErrX2() const {return fErrX2;}
49  virtual Double_t GetErrY() const {return TMath::Sqrt(fErrY2);}
51  virtual Double_t GetErrY2() const {return fErrY2;}
52 
54  virtual void SetCharge(Double_t q) {fQ = q;}
56  virtual Double_t GetCharge() const {return fQ;}
57 
59  virtual Int_t GetChamberId() const {return AliMUONVCluster::GetChamberId(GetUniqueID());}
61  virtual Int_t GetDetElemId() const {return AliMUONVCluster::GetDetElemId(GetUniqueID());}
62 
63  virtual void SetDigitsId(Int_t nDigits, const UInt_t *digitsId);
65  virtual void AddDigitId(UInt_t id);
67  virtual Int_t GetNDigits() const {return fNDigits;}
69  virtual UInt_t GetDigitId(Int_t i) const {return (i < fNDigits && fDigitsId) ? fDigitsId[i] : 0;}
71  virtual const UInt_t* GetDigitsId() const {return fDigitsId;}
72 
74  virtual void SetChi2( Double_t chi2) {fChi2 = chi2;}
76  virtual Double_t GetChi2() const {return fChi2;}
77 
79  virtual void SetMCLabel(Int_t label) {fMCLabel = label;}
81  virtual Int_t GetMCLabel() const {return fMCLabel;}
82 
84  Bool_t IsSortable() const {return kTRUE;}
85  Int_t Compare(const TObject *obj) const;
86 
87 
88 private:
89 
90  Double32_t fX;
91  Double32_t fY;
92  Double32_t fZ;
93 
94  Double32_t fErrX2;
95  Double32_t fErrY2;
96 
97  Double32_t fQ;
98 
99  Double32_t fChi2;
100 
101  Int_t fNDigits;
102  UInt_t *fDigitsId; //[fNDigits] Indices of digits attached to the cluster
104 
105  Int_t fMCLabel;
106 
107 
108  ClassDef(AliMUONRawClusterV2,2) //Cluster class for MUON
109 };
110 
111 #endif
virtual void SetChi2(Double_t chi2)
Set chi2 of cluster.
Double32_t fErrY2
Y coordinate error square.
virtual Double_t GetErrX() const
Return resolution (cm) on coordinate X.
virtual AliMUONRawClusterV2 * Clone(const char *="") const
Create a copy of the current cluster.
virtual Int_t GetDetElemId() const =0
Return detection element Id.
virtual Int_t GetNDigits() const
Return number of associated digits.
Double32_t fZ
Z of cluster.
Double32_t fChi2
Chi2 of cluster.
MUON raw cluster.
UInt_t * fDigitsId
Indices of digits attached to the cluster.
virtual Int_t GetChamberId() const =0
Return chamber Id.
virtual Double_t GetChi2() const
Return chi2 of cluster.
Bool_t IsSortable() const
Return true as the function Compare() is implemented.
virtual Double_t GetX() const
Return coordinate X (cm)
Double32_t fY
Y of cluster.
virtual void SetXYZ(Double_t x, Double_t y, Double_t z)
Set coordinates (cm)
Double_t chi2
Definition: AnalyzeLaser.C:7
abstract base class for clusters
virtual Double_t GetErrX2() const
Return resolution**2 (cm**2) on coordinate X.
virtual Int_t GetMCLabel() const
Return the corresponding MC track number.
virtual Double_t GetCharge() const
Set the cluster charge.
virtual Double_t GetErrY2() const
Return resolution**2 (cm**2) on coordinate Y.
virtual void SetErrXY(Double_t errX, Double_t errY)
Set resolution (cm) on coordinates (X,Y)
Int_t fMCLabel
Point to the corresponding MC track.
virtual void Clear(Option_t *="")
Clear method (used by TClonesArray)
virtual Double_t GetZ() const
Return coordinate Z (cm)
virtual void SetDigitsId(Int_t nDigits, const UInt_t *digitsId)
Set Id of associated digits.
virtual UInt_t GetDigitId(Int_t i) const
Return Id of digits i.
virtual void SetMCLabel(Int_t label)
Set the corresponding MC track number.
AliMUONRawClusterV2 & operator=(const AliMUONRawClusterV2 &cluster)
Int_t Compare(const TObject *obj) const
virtual void SetCharge(Double_t q)
Set the cluster charge.
Double32_t fX
X of cluster.
virtual Int_t GetDetElemId() const
Return detection element id.
virtual Double_t GetErrY() const
Return resolution (cm) on coordinate Y.
virtual void AddDigitId(UInt_t id)
Add a digit Id to the array of associated digits.
virtual const UInt_t * GetDigitsId() const
Return the array of digits'id.
Double32_t fErrX2
X coordinate error square.
Double32_t fQ
Q of cluster (in ADC counts)
virtual Double_t GetY() const
Return coordinate Y (cm)
virtual Int_t GetChamberId() const
Return chamber Id.