12 |
|
#define MITANA_DATATREE_SUPERCLUSTER_H |
13 |
|
|
14 |
|
#include <TMath.h> |
15 |
+ |
#include "MitCommon/DataFormats/interface/Vect3C.h" |
16 |
|
#include "MitAna/DataTree/interface/DataObject.h" |
17 |
|
#include "MitAna/DataTree/interface/BasicCluster.h" |
18 |
|
#include "MitAna/DataCont/interface/RefArray.h" |
26 |
|
SuperCluster() : fEnergy(0), fEtaWidth(0), fPreshowerEnergy(0), |
27 |
|
fPhiWidth(0), fRawEnergy(0) {} |
28 |
|
|
28 |
– |
const BasicCluster *Cluster(UInt_t i) const { return fClusters.At(i); } |
29 |
– |
UInt_t ClusterSize() const { return fClusters.GetEntries(); } |
30 |
– |
Double_t Energy() const { return fEnergy; } |
31 |
– |
Double_t Eta() const { return fPoint.Eta(); } |
32 |
– |
Double_t EtaWidth() const { return fEtaWidth; } |
33 |
– |
EObjType ObjType() const { return kSuperCluster; } |
34 |
– |
Double_t Phi() const { return fPoint.Phi(); } |
35 |
– |
Double_t PhiWidth() const { return fPhiWidth; } |
36 |
– |
void Print(Option_t *opt="") const; |
37 |
– |
Double_t PreshowerEnergy() const { return fPreshowerEnergy; } |
38 |
– |
Double_t RawEnergy() const { return fRawEnergy; } |
39 |
– |
const BasicCluster *Seed() const { return fSeedRef.Obj(); } |
40 |
– |
Double_t X() const { return fPoint.X(); } |
41 |
– |
Double_t Y() const { return fPoint.Y(); } |
42 |
– |
Double_t Z() const { return fPoint.Z(); } |
29 |
|
void AddCluster(const BasicCluster *c) { fClusters.Add(c); } |
30 |
+ |
const BasicCluster *Cluster(UInt_t i) const { return fClusters.At(i); } |
31 |
+ |
UInt_t ClusterSize() const { return fClusters.GetEntries(); } |
32 |
+ |
Double_t Energy() const { return fEnergy; } |
33 |
+ |
Double_t Eta() const { return fPoint.Eta(); } |
34 |
+ |
Double_t EtaWidth() const { return fEtaWidth; } |
35 |
+ |
EObjType ObjType() const { return kSuperCluster; } |
36 |
+ |
Double_t Phi() const { return fPoint.Phi(); } |
37 |
+ |
Double_t PhiWidth() const { return fPhiWidth; } |
38 |
+ |
ThreeVectorC Point() const { return fPoint.V(); } |
39 |
+ |
void Print(Option_t *opt="") const; |
40 |
+ |
Double_t PreshowerEnergy() const { return fPreshowerEnergy; } |
41 |
+ |
Double_t RawEnergy() const { return fRawEnergy; } |
42 |
+ |
Double_t Rho() const { return fPoint.Rho(); } |
43 |
+ |
const BasicCluster *Seed() const { return fSeedRef.Obj(); } |
44 |
|
void SetEnergy(Double_t energy) { fEnergy = energy; } |
45 |
|
void SetEtaWidth(Double_t etaWidth) { fEtaWidth = etaWidth; } |
46 |
|
void SetPhiWidth(Double_t phiWidth) { fPhiWidth = phiWidth; } |
50 |
|
void SetXYZ(Double_t x, Double_t y, Double_t z) { fPoint.SetXYZ(x,y,z); } |
51 |
|
|
52 |
|
protected: |
53 |
< |
Double32_t fEnergy; //super cluster energy |
54 |
< |
Double32_t fEtaWidth; //width in Phi |
55 |
< |
ThreeVector32 fPoint; //centroid Position |
56 |
< |
Double32_t fPreshowerEnergy; //energy in the preshower |
57 |
< |
Double32_t fPhiWidth; //width in Phi |
58 |
< |
Double32_t fRawEnergy; //super cluster raw energy |
59 |
< |
RefArray<BasicCluster,1024> fClusters; //assigned basic clusters |
53 |
> |
Vect3C fPoint; //centroid Position |
54 |
> |
Double32_t fEnergy; //[0,0,14]super cluster energy |
55 |
> |
Double32_t fEtaWidth; //[0,0,14]width in Phi |
56 |
> |
Double32_t fPreshowerEnergy; //[0,0,14]energy in the preshower |
57 |
> |
Double32_t fPhiWidth; //[0,0,14]width in Phi |
58 |
> |
Double32_t fRawEnergy; //[0,0,14]super cluster raw energy |
59 |
> |
RefArray<BasicCluster> fClusters; //assigned basic clusters |
60 |
|
Ref<BasicCluster> fSeedRef; //seed cluster |
61 |
|
|
62 |
|
ClassDef(SuperCluster, 1) // Super cluster class |
63 |
|
}; |
64 |
|
} |
65 |
– |
|
65 |
|
#endif |