CMS 3D CMS Logo

GEDPhotonProducer.h
Go to the documentation of this file.
1 #ifndef RecoEgamma_EgammaPhotonProducers_GEDPhotonProducer_h
2 #define RecoEgamma_EgammaPhotonProducers_GEDPhotonProducer_h
3 
34 
37 
38 // GEDPhotonProducer inherits from EDProducer, so it can be a module:
40 public:
42  ~GEDPhotonProducer() override;
43 
44  void beginRun(edm::Run const& r, edm::EventSetup const& es) final;
45  void endRun(edm::Run const&, edm::EventSetup const&) final;
46  void produce(edm::Event& evt, const edm::EventSetup& es) override;
47 
48 private:
49  class RecoStepInfo {
50  public:
51  enum FlagBits { kOOT = 0x1, kFinal = 0x2 };
52  explicit RecoStepInfo(const std::string& recoStep);
53 
54  bool isOOT() const { return flags_ & kOOT; }
55  bool isFinal() const { return flags_ & kFinal; }
56 
57  private:
58  unsigned int flags_;
59  };
60 
62  edm::EventSetup const& es,
63  const edm::Handle<reco::PhotonCoreCollection>& photonCoreHandle,
64  const CaloTopology* topology,
65  const EcalRecHitCollection* ecalBarrelHits,
66  const EcalRecHitCollection* ecalEndcapHits,
69  const reco::VertexCollection& pvVertices,
70  reco::PhotonCollection& outputCollection,
71  int& iSC);
72 
74  edm::EventSetup const& es,
75  const edm::Handle<reco::PhotonCollection>& photonHandle,
76  const edm::Handle<reco::PFCandidateCollection> pfCandidateHandle,
77  const edm::Handle<reco::PFCandidateCollection> pfEGCandidateHandle,
78  edm::ValueMap<reco::PhotonRef> pfEGCandToPhotonMap,
80  reco::PhotonCollection& outputCollection,
81  int& iSC,
82  const edm::Handle<edm::ValueMap<float>>& chargedHadrons,
83  const edm::Handle<edm::ValueMap<float>>& neutralHadrons,
85  const edm::Handle<edm::ValueMap<float>>& chargedHadronsWorstVtx,
86  const edm::Handle<edm::ValueMap<float>>& chargedHadronsWorstVtxGeomVeto,
87  const edm::Handle<edm::ValueMap<float>>& chargedHadronsPFPV,
88  const edm::Handle<edm::ValueMap<float>>& pfEcalClusters,
89  const edm::Handle<edm::ValueMap<float>>& pfHcalClusters);
90 
91  // std::string PhotonCoreCollection_;
94 
104  //for isolation with map-based veto
106  //photon isolation sums
113 
116 
118 
122 
124 
125  //AA
126  //Flags and severities to be excluded from calculations
127 
128  std::vector<int> flagsexclEB_;
129  std::vector<int> flagsexclEE_;
130  std::vector<int> severitiesexclEB_;
131  std::vector<int> severitiesexclEE_;
132 
134  double maxHOverE_;
135  double minSCEt_;
136  double highEt_;
137  double minR9Barrel_;
138  double minR9Endcap_;
140 
143 
147 
150 
152 
153  //MIP
155 
156  std::vector<double> preselCutValuesBarrel_;
157  std::vector<double> preselCutValuesEndcap_;
158 
162 
164 };
165 #endif
GEDPhotonProducer::conf_
edm::ParameterSet conf_
Definition: GEDPhotonProducer.h:145
PhotonIsolationCalculator.h
GEDPhotonProducer::preshowerHits_
edm::EDGetTokenT< EcalRecHitCollection > preshowerHits_
Definition: GEDPhotonProducer.h:99
GEDPhotonProducer::thePhotonMIPHaloTagger_
PhotonMIPHaloTagger * thePhotonMIPHaloTagger_
Definition: GEDPhotonProducer.h:154
Handle.h
GEDPhotonProducer::valueMapPFCandPhoton_
std::string valueMapPFCandPhoton_
Definition: GEDPhotonProducer.h:121
PositionCalc.h
ESHandle.h
GEDPhotonProducer::~GEDPhotonProducer
~GEDPhotonProducer() override
Definition: GEDPhotonProducer.cc:212
GEDPhotonProducer::produce
void produce(edm::Event &evt, const edm::EventSetup &es) override
Definition: GEDPhotonProducer.cc:227
edm::Run
Definition: Run.h:45
GEDPhotonProducer::thePhotonIsolationCalculator_
PhotonIsolationCalculator * thePhotonIsolationCalculator_
Definition: GEDPhotonProducer.h:123
BasicCluster.h
edm::EDGetTokenT< reco::PhotonCoreCollection >
GEDPhotonProducer::beginRun
void beginRun(edm::Run const &r, edm::EventSetup const &es) final
Definition: GEDPhotonProducer.cc:219
reco::VertexCollection
std::vector< Vertex > VertexCollection
collection of Vertex objects
Definition: VertexFwd.h:9
GEDPhotonProducer::thePhotonEnergyCorrector_
PhotonEnergyCorrector * thePhotonEnergyCorrector_
Definition: GEDPhotonProducer.h:160
EcalFunctionParameters.h
EDProducer.h
edm::SortedCollection< EcalRecHit >
PhotonFwd.h
EcalClusterFunctionBaseClass.h
GEDPhotonProducer::phoChargedPFPVIsoToken_
edm::EDGetTokenT< edm::ValueMap< float > > phoChargedPFPVIsoToken_
Definition: GEDPhotonProducer.h:112
GEDPhotonProducer::theCaloTopo_
edm::ESHandle< CaloTopology > theCaloTopo_
Definition: GEDPhotonProducer.h:149
PhotonCore.h
PhotonMIPHaloTagger.h
edm::Handle
Definition: AssociativeIterator.h:50
GEDPhotonProducer::photonCollection_
std::string photonCollection_
Definition: GEDPhotonProducer.h:92
GEDPhotonProducer::flagsexclEB_
std::vector< int > flagsexclEB_
Definition: GEDPhotonProducer.h:128
CaloTopology
Definition: CaloTopology.h:19
PhotonIsolationCalculator
Definition: PhotonIsolationCalculator.h:17
ElectronSeedFwd.h
GEDPhotonProducer::maxHOverE_
double maxHOverE_
Definition: GEDPhotonProducer.h:134
PhotonEnergyCorrector.h
Photon.h
GEDPhotonProducer::photonCoreProducerT_
edm::EDGetTokenT< reco::PhotonCoreCollection > photonCoreProducerT_
Definition: GEDPhotonProducer.h:95
GEDPhotonProducer::flagsexclEE_
std::vector< int > flagsexclEE_
Definition: GEDPhotonProducer.h:129
GEDPhotonProducer::recoStep_
RecoStepInfo recoStep_
Definition: GEDPhotonProducer.h:142
GEDPhotonProducer::validPixelSeeds_
bool validPixelSeeds_
Definition: GEDPhotonProducer.h:151
ecaldqm::topology
const CaloTopology * topology(nullptr)
GEDPhotonProducer::endcapEcalHits_
edm::EDGetTokenT< EcalRecHitCollection > endcapEcalHits_
Definition: GEDPhotonProducer.h:98
GEDPhotonProducer::pfEgammaCandidates_
edm::EDGetTokenT< reco::PFCandidateCollection > pfEgammaCandidates_
Definition: GEDPhotonProducer.h:100
GEDPhotonProducer::RecoStepInfo
Definition: GEDPhotonProducer.h:49
edm::ESHandle< CaloGeometry >
GEDPhotonProducer::posCalculator_
PositionCalc posCalculator_
Definition: GEDPhotonProducer.h:146
GEDPhotonProducer::severitiesexclEE_
std::vector< int > severitiesexclEE_
Definition: GEDPhotonProducer.h:131
GEDPhotonProducer::minR9Endcap_
double minR9Endcap_
Definition: GEDPhotonProducer.h:138
EcalClusterLazyToolsBase::ESGetTokens
Definition: EcalClusterLazyTools.h:53
EcalSeverityLevelAlgo.h
GEDPhotonProducer::phoChargedWorstVtxGeomVetoIsoToken_
edm::EDGetTokenT< edm::ValueMap< float > > phoChargedWorstVtxGeomVetoIsoToken_
Definition: GEDPhotonProducer.h:111
AlCaHLTBitMon_QueryRunRegistry.string
string
Definition: AlCaHLTBitMon_QueryRunRegistry.py:256
GEDPhotonProducer::phoChargedIsolationToken_
edm::EDGetTokenT< edm::ValueMap< float > > phoChargedIsolationToken_
Definition: GEDPhotonProducer.h:107
GEDPhotonProducer::phoPFHCALClusIsolationToken_
edm::EDGetTokenT< edm::ValueMap< float > > phoPFHCALClusIsolationToken_
Definition: GEDPhotonProducer.h:115
GEDPhotonProducer::GEDPhotonProducer
GEDPhotonProducer(const edm::ParameterSet &ps)
Definition: GEDPhotonProducer.cc:58
GEDPhotonProducer::photonProducerT_
edm::EDGetTokenT< reco::PhotonCollection > photonProducerT_
Definition: GEDPhotonProducer.h:96
edm::ParameterSet
Definition: ParameterSet.h:47
GEDPhotonProducer::barrelEcalHits_
edm::EDGetTokenT< EcalRecHitCollection > barrelEcalHits_
Definition: GEDPhotonProducer.h:97
PhotonMIPHaloTagger
Definition: PhotonMIPHaloTagger.h:17
Event.h
GEDPhotonProducer::RecoStepInfo::isOOT
bool isOOT() const
Definition: GEDPhotonProducer.h:54
EcalClusterTools.h
GEDPhotonProducer::RecoStepInfo::flags_
unsigned int flags_
Definition: GEDPhotonProducer.h:58
GEDPhotonProducer::RecoStepInfo::RecoStepInfo
RecoStepInfo(const std::string &recoStep)
Definition: GEDPhotonProducer.cc:43
GEDPhotonProducer::candidateP4type_
std::string candidateP4type_
Definition: GEDPhotonProducer.h:161
GEDPhotonProducer::RecoStepInfo::kOOT
Definition: GEDPhotonProducer.h:51
GEDPhotonProducer::RecoStepInfo::FlagBits
FlagBits
Definition: GEDPhotonProducer.h:51
PositionCalc
Definition: PositionCalc.h:29
GEDPhotonProducer::severitiesexclEB_
std::vector< int > severitiesexclEB_
Definition: GEDPhotonProducer.h:130
GEDPhotonProducer::hOverEConeSize_
double hOverEConeSize_
Definition: GEDPhotonProducer.h:133
ctpps_dqm_sourceclient-live_cfg.recoStep
recoStep
Definition: ctpps_dqm_sourceclient-live_cfg.py:73
GEDPhotonProducer::minR9Barrel_
double minR9Barrel_
Definition: GEDPhotonProducer.h:137
GEDPhotonProducer::RecoStepInfo::kFinal
Definition: GEDPhotonProducer.h:51
edm::stream::EDProducer
Definition: EDProducer.h:38
BPHMonitor_cfi.photons
photons
Definition: BPHMonitor_cfi.py:91
GEDPhotonProducer::particleBasedIsolationToken
edm::EDGetTokenT< edm::ValueMap< std::vector< reco::PFCandidateRef > > > particleBasedIsolationToken
Definition: GEDPhotonProducer.h:105
edm::EventSetup
Definition: EventSetup.h:57
GEDPhotonProducer::conversionProducer_
std::string conversionProducer_
Definition: GEDPhotonProducer.h:119
GEDPhotonProducer::ecalClusterESGetTokens_
const EcalClusterLazyTools::ESGetTokens ecalClusterESGetTokens_
Definition: GEDPhotonProducer.h:117
GEDPhotonProducer::fillPhotonCollection
void fillPhotonCollection(edm::Event &evt, edm::EventSetup const &es, const edm::Handle< reco::PhotonCoreCollection > &photonCoreHandle, const CaloTopology *topology, const EcalRecHitCollection *ecalBarrelHits, const EcalRecHitCollection *ecalEndcapHits, const EcalRecHitCollection *preshowerHits, CaloTowerCollection const *hcalTowers, const reco::VertexCollection &pvVertices, reco::PhotonCollection &outputCollection, int &iSC)
Definition: GEDPhotonProducer.cc:448
GEDPhotonProducer::phoPFECALClusIsolationToken_
edm::EDGetTokenT< edm::ValueMap< float > > phoPFECALClusIsolationToken_
Definition: GEDPhotonProducer.h:114
GEDPhotonProducer::phoNeutralHadronIsolationToken_
edm::EDGetTokenT< edm::ValueMap< float > > phoNeutralHadronIsolationToken_
Definition: GEDPhotonProducer.h:108
GEDPhotonProducer::validConversions_
bool validConversions_
Definition: GEDPhotonProducer.h:141
conversions_cfi.hcalTowers
hcalTowers
Definition: conversions_cfi.py:21
alignCSCRings.r
r
Definition: alignCSCRings.py:93
CaloTopology.h
CaloTowerCollection.h
GEDPhotonProducer::phoChargedWorstVtxIsoToken_
edm::EDGetTokenT< edm::ValueMap< float > > phoChargedWorstVtxIsoToken_
Definition: GEDPhotonProducer.h:110
PhotonEnergyCorrector
Definition: PhotonEnergyCorrector.h:25
GEDPhotonProducer::checkHcalStatus_
bool checkHcalStatus_
Definition: GEDPhotonProducer.h:163
GEDPhotonProducer::minSCEt_
double minSCEt_
Definition: GEDPhotonProducer.h:135
edm::ValueMap
Definition: ValueMap.h:107
SuperCluster.h
CaloGeometry.h
GEDPhotonProducer::usePrimaryVertex_
bool usePrimaryVertex_
Definition: GEDPhotonProducer.h:144
EventSetup.h
GEDPhotonProducer::RecoStepInfo::isFinal
bool isFinal() const
Definition: GEDPhotonProducer.h:55
GEDPhotonProducer
Definition: GEDPhotonProducer.h:39
GEDPhotonProducer::preselCutValuesEndcap_
std::vector< double > preselCutValuesEndcap_
Definition: GEDPhotonProducer.h:157
GEDPhotonProducer::preselCutValuesBarrel_
std::vector< double > preselCutValuesBarrel_
Definition: GEDPhotonProducer.h:156
reco::PhotonCollection
std::vector< Photon > PhotonCollection
collectin of Photon objects
Definition: PhotonFwd.h:9
GEDPhotonProducer::highEt_
double highEt_
Definition: GEDPhotonProducer.h:136
GEDPhotonProducer::conversionCollection_
std::string conversionCollection_
Definition: GEDPhotonProducer.h:120
ParameterSet.h
GEDPhotonProducer::pfCandidates_
edm::EDGetTokenT< reco::PFCandidateCollection > pfCandidates_
Definition: GEDPhotonProducer.h:101
GEDPhotonProducer::endRun
void endRun(edm::Run const &, edm::EventSetup const &) final
Definition: GEDPhotonProducer.cc:225
GEDPhotonProducer::theCaloGeom_
edm::ESHandle< CaloGeometry > theCaloGeom_
Definition: GEDPhotonProducer.h:148
edm::Event
Definition: Event.h:73
GEDPhotonProducer::hcalTowers_
edm::EDGetTokenT< CaloTowerCollection > hcalTowers_
Definition: GEDPhotonProducer.h:102
gedPhotons_cfi.preshowerHits
preshowerHits
Definition: gedPhotons_cfi.py:47
GEDPhotonProducer::energyCorrectionF
EcalClusterFunctionBaseClass * energyCorrectionF
Definition: GEDPhotonProducer.h:159
GEDPhotonProducer::phoPhotonIsolationToken_
edm::EDGetTokenT< edm::ValueMap< float > > phoPhotonIsolationToken_
Definition: GEDPhotonProducer.h:109
edm::InputTag
Definition: InputTag.h:15
GEDPhotonProducer::vertexProducer_
edm::EDGetTokenT< reco::VertexCollection > vertexProducer_
Definition: GEDPhotonProducer.h:103
BasicClusterShapeAssociation.h
EcalClusterFunctionBaseClass
Definition: EcalClusterFunctionBaseClass.h:26
GEDPhotonProducer::runMIPTagger_
bool runMIPTagger_
Definition: GEDPhotonProducer.h:139
PFCandidateFwd.h
GEDPhotonProducer::photonProducer_
edm::InputTag photonProducer_
Definition: GEDPhotonProducer.h:93
Conversion.h