CMS 3D CMS Logo

ParticleTowerProducer.h
Go to the documentation of this file.
1 #ifndef ParticleTowerProducer_h
2 #define ParticleTowerProducer_h
3 
4 // user include files
7 
10 
12 
14 
18 
21 
22 #include "TMath.h"
23 #include "TRandom.h"
24 
26 public:
28  ~ParticleTowerProducer() override;
29 
30 private:
31  void beginJob() override;
32  void produce(edm::Event&, const edm::EventSetup&) override;
33  void endJob() override;
34  void resetTowers(edm::Event& iEvent, const edm::EventSetup& iSetup);
36  DetId getNearestTower(double eta, double phi) const;
37  // uint32_t denseIndex(int ieta, int iphi, double eta) const;
38  int eta2ieta(double eta) const;
39  int phi2iphi(double phi, int ieta) const;
40 
41  // ----------member data ---------------------------
42 
44  bool useHF_;
45 
46  std::map<DetId, double> towers_;
47 
48  double PI;
49  TRandom* random_;
50 
51  CaloGeometry const* geo_; // geometry
52 
53  static const double etatow[];
54  static const double etacent[];
55  double etaedge[42];
56 };
57 #endif
ParticleTowerProducer::resetTowers
void resetTowers(edm::Event &iEvent, const edm::EventSetup &iSetup)
Definition: ParticleTowerProducer.cc:259
ParticleTowerProducer::etacent
static const double etacent[]
Definition: ParticleTowerProducer.h:54
ParticleTowerProducer::useHF_
bool useHF_
Definition: ParticleTowerProducer.h:44
EDProducer.h
ESHandle.h
ParticleTowerProducer::eta2ieta
int eta2ieta(double eta) const
Definition: ParticleTowerProducer.cc:443
PFCandidate.h
ParticleTowerProducer
Definition: ParticleTowerProducer.h:25
edm::EDGetTokenT< reco::PFCandidateCollection >
ParticleTowerProducer::getNearestTower
DetId getNearestTower(const reco::PFCandidate &in) const
Definition: ParticleTowerProducer.cc:291
ParticleTowerProducer::geo_
CaloGeometry const * geo_
Definition: ParticleTowerProducer.h:51
ParticleTowerProducer::~ParticleTowerProducer
~ParticleTowerProducer() override
Definition: ParticleTowerProducer.cc:71
ParticleTowerProducer::src_
edm::EDGetTokenT< reco::PFCandidateCollection > src_
Definition: ParticleTowerProducer.h:43
DetId
Definition: DetId.h:17
MakerMacros.h
CaloGeometry
Definition: CaloGeometry.h:21
PVValHelper::eta
Definition: PVValidationHelpers.h:69
ParticleTowerProducer::produce
void produce(edm::Event &, const edm::EventSetup &) override
Definition: ParticleTowerProducer.cc:82
CaloGeometryRecord.h
ParticleTowerProducer::beginJob
void beginJob() override
Definition: ParticleTowerProducer.cc:190
LEDCalibrationChannels.ieta
ieta
Definition: LEDCalibrationChannels.py:63
edm::ParameterSet
Definition: ParameterSet.h:36
Event.h
HcalDetId.h
recoMuon::in
Definition: RecoMuonEnumerators.h:6
iEvent
int iEvent
Definition: GenABIO.cc:224
ParticleTowerProducer::random_
TRandom * random_
Definition: ParticleTowerProducer.h:49
edm::EventSetup
Definition: EventSetup.h:57
CaloTowerCollection.h
DDAxes::phi
ParticleTowerProducer::etatow
static const double etatow[]
Definition: ParticleTowerProducer.h:53
Frameworkfwd.h
CaloGeometry.h
ParticleTowerProducer::towers_
std::map< DetId, double > towers_
Definition: ParticleTowerProducer.h:46
edm::EDProducer
Definition: EDProducer.h:36
reco::PFCandidate
Particle reconstructed by the particle flow algorithm.
Definition: PFCandidate.h:40
ParticleTowerProducer::PI
double PI
Definition: ParticleTowerProducer.h:48
ParameterSet.h
ParticleTowerProducer::phi2iphi
int phi2iphi(double phi, int ieta) const
Definition: ParticleTowerProducer.cc:501
ParticleTowerProducer::endJob
void endJob() override
Definition: ParticleTowerProducer.cc:257
edm::Event
Definition: Event.h:73
ParticleTowerProducer::etaedge
double etaedge[42]
Definition: ParticleTowerProducer.h:55
ParticleTowerProducer::ParticleTowerProducer
ParticleTowerProducer(const edm::ParameterSet &)
Definition: ParticleTowerProducer.cc:59