AliPhysics  608b256 (608b256)
AliEMCALClusterParams.h
Go to the documentation of this file.
1 #ifndef ALIEMCALCLUSTERPARAMS_H
2 #define ALIEMCALCLUSTERPARAMS_H
3 
4 // $Id$
5 
6 #include <TObject.h>
7 class AliESDtrack;
8 class AliESDCaloCluster;
9 class AliEMCALGeometry;
10 class AliESDCaloCells;
11 class TObjArray;
12 
14 {
15  public:
16  AliEMCALClusterParams(AliESDtrack *trackin,
17  AliESDCaloCluster *clusin,
18  AliEMCALGeometry *geometryin,
19  AliESDCaloCells *cellsin);
20  virtual ~AliEMCALClusterParams() {;}
21 
22  Double_t GetPe() const;
23  Int_t IsElectron() const;
24  void LoopThroughCells() const;
25  void PrintClusterParameters() const;
26 
27  //==========Un-log-weighted parameters============================================================
28  void GetCentroid(Double_t &xback, Double_t &yback, Double_t &rback) const;
29  Double_t GetR(Double_t x, Double_t y) const; //Uses Centroid
30  Double_t GetRfactor() const; //Uses GetR,Centroid
31  Double_t ElectronFraction(Double_t r, Double_t tce) const; //Only used locally for K-factor
32  Double_t GetKfactor() const; //Gets K-factor, uses electronfraction
33  Double_t GetDispersionX() const; //Gets unweighted dispersionX
34  Double_t GetDispersionY() const; //Gets unweighted dispersionY
35  Double_t GetDispersionMax() const; //Gets unweighted dispersionMax
36  void GetEllipseParameters(Double_t &param1, Double_t &param2) const; //Gets M02 M20
37  Double_t GetDispersion() const; //Unweighted Dispersion
38 
39  //==========Log-weighted parameters===============================================================
40  void GetWeightedCentroid(Double_t &xback, Double_t &yback, Double_t &rback) const;
41  Double_t GetWeightedR(Double_t x, Double_t y) const; //Weighted r, uses WeightedCentriod
42  Double_t GetWeightedRfactor() const; //Uses WeightedR
43  Double_t ElectronfractionWeighted(Double_t r, Double_t tce) const; //Used locally for K-factor weighted
44  Double_t GetWeightedKfactor() const; //Gets Weighted K-factor
45  Double_t GetWeightedDispersionX() const; //Gets Weighted dispersionX
46  Double_t GetWeightedDispersionY() const; //Gets Weighted dispersionY
47  Double_t GetWeightedDispersionMax() const; //Gets Weighted dispersionMax
48  void GetWeightedEllipseParameters(Double_t &param1, Double_t &param2) const; //Gets weighted M02 M20
49  Double_t GetWeightedDispersion(Double_t &dispersionback) const; //Gets Weighted dispersion
50 
51  void RecalculateClusterShowerShapeParameters(Double_t &m02, Double_t &m20, Double_t &dispersion) const; //from Gustavo's code!
52 
53  private:
54  AliESDtrack *fTrack;
55  AliESDCaloCluster *fCluster;
56  AliEMCALGeometry *fGeom;
57  AliESDCaloCells *fCells;
58 
61 
62  ClassDef(AliEMCALClusterParams,0)
63 };
64 #endif //ALIEMCALCLUSTERPARAMS_H
Double_t GetWeightedDispersionMax() const
double Double_t
Definition: External.C:58
void GetWeightedCentroid(Double_t &xback, Double_t &yback, Double_t &rback) const
Double_t GetDispersionY() const
Double_t GetWeightedRfactor() const
void GetWeightedEllipseParameters(Double_t &param1, Double_t &param2) const
AliEMCALClusterParams(AliESDtrack *trackin, AliESDCaloCluster *clusin, AliEMCALGeometry *geometryin, AliESDCaloCells *cellsin)
AliESDCaloCluster * fCluster
Double_t GetWeightedDispersionX() const
Double_t GetWeightedDispersionY() const
Double_t GetWeightedDispersion(Double_t &dispersionback) const
int Int_t
Definition: External.C:63
void GetCentroid(Double_t &xback, Double_t &yback, Double_t &rback) const
void RecalculateClusterShowerShapeParameters(Double_t &m02, Double_t &m20, Double_t &dispersion) const
void GetEllipseParameters(Double_t &param1, Double_t &param2) const
Double_t GetWeightedR(Double_t x, Double_t y) const
Double_t ElectronfractionWeighted(Double_t r, Double_t tce) const
Double_t GetR(Double_t x, Double_t y) const
Double_t GetDispersionMax() const
AliEMCALClusterParams & operator=(const AliEMCALClusterParams &g)
Double_t GetWeightedKfactor() const
AliEMCALGeometry * fGeom
Double_t ElectronFraction(Double_t r, Double_t tce) const
Double_t GetDispersionX() const