CMS 3D CMS Logo

FWPFCandidateTowerProxyBuilder.h
Go to the documentation of this file.
1 #ifndef Fireworks_Calo_FWPFCandTowerProxyBuilder_h
2 #define Fireworks_Calo_FWPFCandTowerProxyBuilder_h
3 // -*- C++ -*-
4 //
5 // Package: Calo
6 // Class : FWCaloTowerProxyBuilderBase
7 //
16 //
17 // Original Author: Chris Jones
18 // Created: Wed Dec 3 11:28:08 EST 2008
19 //
20 
21 #include "Rtypes.h"
22 #include <string>
23 
27 
29 
31 public:
34 
35  virtual double getEt(const reco::PFCandidate&) const = 0;
36 
37 protected:
38  void fillCaloData() override;
40  void build(const FWEventItem* iItem, TEveElementList* product, const FWViewContext*) override;
41 
42 private:
43  FWPFCandidateTowerProxyBuilder(const FWPFCandidateTowerProxyBuilder&) = delete; // stop default
44  const FWPFCandidateTowerProxyBuilder& operator=(const FWPFCandidateTowerProxyBuilder&) = delete; // stop default
45 
46  // ---------- member data --------------------------------
48 };
49 
50 //
51 // Ecal
52 //
53 
55 public:
58 
59  // ---------- const member functions ---------------------
60 
61  double getEt(const reco::PFCandidate& iTower) const override {
62  return iTower.ecalEnergy() * TMath::Sin(iTower.theta());
63  }
64 
66 
67 private:
68  FWECalPFCandidateProxyBuilder(const FWECalPFCandidateProxyBuilder&) = delete; // stop default
69  const FWECalPFCandidateProxyBuilder& operator=(const FWECalPFCandidateProxyBuilder&) = delete; // stop default
70 };
71 
72 //
73 // Hcal
74 //
75 
77 public:
80 
81  // ---------- const member functions ---------------------
82 
83  double getEt(const reco::PFCandidate& iTower) const override {
84  return iTower.hcalEnergy() * TMath::Sin(iTower.theta());
85  }
86 
88 
89 private:
90  FWHCalPFCandidateProxyBuilder(const FWHCalPFCandidateProxyBuilder&) = delete; // stop default
91 
92  const FWHCalPFCandidateProxyBuilder& operator=(const FWHCalPFCandidateProxyBuilder&) = delete; // stop default
93 };
94 
95 #endif
PFCandidate.h
FWECalPFCandidateProxyBuilder::~FWECalPFCandidateProxyBuilder
~FWECalPFCandidateProxyBuilder() override
Definition: FWPFCandidateTowerProxyBuilder.h:57
FWPFCandidateTowerProxyBuilder::operator=
const FWPFCandidateTowerProxyBuilder & operator=(const FWPFCandidateTowerProxyBuilder &)=delete
REGISTER_PROXYBUILDER_METHODS
#define REGISTER_PROXYBUILDER_METHODS()
Definition: register_dataproxybuilder_macro.h:27
FWPFCandidateTowerProxyBuilder::getEt
virtual double getEt(const reco::PFCandidate &) const =0
FWHCalPFCandidateProxyBuilder::getEt
double getEt(const reco::PFCandidate &iTower) const override
Definition: FWPFCandidateTowerProxyBuilder.h:83
FWHistSliceSelector
Definition: FWHistSliceSelector.h:7
reco::LeafCandidate::theta
double theta() const final
momentum polar angle
Definition: LeafCandidate.h:150
FWHCalPFCandidateProxyBuilder::~FWHCalPFCandidateProxyBuilder
~FWHCalPFCandidateProxyBuilder() override
Definition: FWPFCandidateTowerProxyBuilder.h:79
FWPFCandidateTowerProxyBuilder
Definition: FWPFCandidateTowerProxyBuilder.h:30
FWECalPFCandidateProxyBuilder::FWECalPFCandidateProxyBuilder
FWECalPFCandidateProxyBuilder()
Definition: FWPFCandidateTowerProxyBuilder.h:56
FWPFCandidateTowerProxyBuilder::m_towers
const reco::PFCandidateCollection * m_towers
Definition: FWPFCandidateTowerProxyBuilder.h:47
FWECalPFCandidateProxyBuilder::getEt
double getEt(const reco::PFCandidate &iTower) const override
Definition: FWPFCandidateTowerProxyBuilder.h:61
FWHCalPFCandidateProxyBuilder
Definition: FWPFCandidateTowerProxyBuilder.h:76
FWECalPFCandidateProxyBuilder
Definition: FWPFCandidateTowerProxyBuilder.h:54
FWPFCandidateTowerProxyBuilder::instantiateSliceSelector
FWHistSliceSelector * instantiateSliceSelector() override
Definition: FWPFCandidateTowerProxyBuilder.cc:50
FWCaloDataHistProxyBuilder
Definition: FWCaloDataHistProxyBuilder.h:10
FWCaloDataHistProxyBuilder.h
FWProxyBuilderBase::build
void build()
Definition: FWProxyBuilderBase.cc:110
FWViewContext
Definition: FWViewContext.h:32
reco::PFCandidate::ecalEnergy
double ecalEnergy() const
return corrected Ecal energy
Definition: PFCandidate.h:221
FWEventItem
Definition: FWEventItem.h:56
reco::PFCandidate::hcalEnergy
double hcalEnergy() const
return corrected Hcal energy
Definition: PFCandidate.h:233
FWPFCandidateTowerProxyBuilder::~FWPFCandidateTowerProxyBuilder
~FWPFCandidateTowerProxyBuilder() override
Definition: FWPFCandidateTowerProxyBuilder.cc:36
reco::PFCandidateCollection
std::vector< reco::PFCandidate > PFCandidateCollection
collection of PFCandidates
Definition: PFCandidateFwd.h:12
FWHCalPFCandidateProxyBuilder::operator=
const FWHCalPFCandidateProxyBuilder & operator=(const FWHCalPFCandidateProxyBuilder &)=delete
reco::PFCandidate
Particle reconstructed by the particle flow algorithm.
Definition: PFCandidate.h:41
FWPFCandidateTowerProxyBuilder::FWPFCandidateTowerProxyBuilder
FWPFCandidateTowerProxyBuilder()
Definition: FWPFCandidateTowerProxyBuilder.cc:34
FWPFCandidateTowerProxyBuilder::fillCaloData
void fillCaloData() override
Definition: FWPFCandidateTowerProxyBuilder.cc:54
PFCandidateFwd.h
FWECalPFCandidateProxyBuilder::operator=
const FWECalPFCandidateProxyBuilder & operator=(const FWECalPFCandidateProxyBuilder &)=delete
FWHCalPFCandidateProxyBuilder::FWHCalPFCandidateProxyBuilder
FWHCalPFCandidateProxyBuilder()
Definition: FWPFCandidateTowerProxyBuilder.h:78