CMS 3D CMS Logo

PFBlockElementSuperCluster.h
Go to the documentation of this file.
1 #ifndef __PFBlockElementSuperCluster__
2 #define __PFBlockElementSuperCluster__
3 
4 #include <iostream>
5 
9 
10 namespace reco {
11 
16  public:
18 
24  superClusterRef_(ref),
25  trackIso_(0.),
26  ecalIso_(0.),
27  hcalIso_(0.),
28  HoE_(0.),
32 
33  PFBlockElement* clone() const override { return new PFBlockElementSuperCluster(*this); }
34 
37 
39  const PhotonRef& photonRef() const { return photonRef_; }
40 
41  void Dump(std::ostream& out = std::cout, const char* tab = " ") const override;
42 
44  void setTrackIso(float val) { trackIso_ = val; }
45 
47  void setEcalIso(float val) { ecalIso_ = val; }
48 
50  void setHcalIso(float val) { hcalIso_ = val; }
51 
53  void setHoE(float val) { HoE_ = val; }
54 
57 
59  void setFromPhoton(bool val) { fromPhoton_ = val; }
60 
62 
64  void setPhotonRef(const PhotonRef& ref) { photonRef_ = ref; }
65 
67  float trackIso() const { return trackIso_; }
68 
70  float ecalIso() const { return ecalIso_; }
71 
73  float hcalIso() const { return hcalIso_; }
74 
76  float hoverE() const { return HoE_; }
77 
79  bool fromGsfElectron() const { return fromGsfElectron_; }
80 
82  bool fromPhoton() const { return fromPhoton_; }
83 
84  //SuperCluster comes from a PFSuperCluster (and can therefore be matched
85  // by ref back to the initial PFClusters)
86  bool fromPFSuperCluster() const { return fromPFSuperCluster_; }
87 
88  private:
92 
93  float trackIso_;
94  float ecalIso_;
95  float hcalIso_;
96  float HoE_;
97 
101  };
102 } // namespace reco
103 
104 #endif
const SuperClusterRef & superClusterRef() const
Abstract base class for a PFBlock element (track, cluster...)
void setFromGsfElectron(bool val)
set provenance
void setFromPhoton(bool val)
set provenance
void setHcalIso(float val)
set the had Iso
PFBlockElementSuperCluster(const SuperClusterRef &ref)
constructor. type must be equal to PS1, PS2, ECAL, HCAL.
SuperClusterRef superClusterRef_
reference to the corresponding cluster
void setTrackIso(float val)
set the track Iso
void setPhotonRef(const PhotonRef &ref)
set photonRef
void Dump(std::ostream &out=std::cout, const char *tab=" ") const override
print the object inside the element
fixed size matrix
PFBlockElement * clone() const override
necessary to have the edm::OwnVector<PFBlockElement> working
void setEcalIso(float val)
set the ecal Iso