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 
36 
39 
40 
41 // GEDPhotonProducer inherits from EDProducer, so it can be a module:
43 
44  public:
45 
47  ~GEDPhotonProducer() override;
48 
49  void beginRun (edm::Run const& r, edm::EventSetup const & es) final;
50  void endRun(edm::Run const&, edm::EventSetup const&) final;
51  void produce(edm::Event& evt, const edm::EventSetup& es) override;
52 
53  private:
54 
56  edm::EventSetup const & es,
57  const edm::Handle<reco::PhotonCoreCollection> & photonCoreHandle,
58  const CaloTopology *topology,
59  const EcalRecHitCollection* ecalBarrelHits,
60  const EcalRecHitCollection* ecalEndcapHits,
62  const edm::Handle<CaloTowerCollection> & hcalTowersHandle,
63  const reco::VertexCollection& pvVertices,
64  reco::PhotonCollection & outputCollection,
65  int& iSC);
66 
67 
69  edm::EventSetup const & es,
70  const edm::Handle<reco::PhotonCollection> & photonHandle,
71  const edm::Handle<reco::PFCandidateCollection> pfCandidateHandle,
72  const edm::Handle<reco::PFCandidateCollection> pfEGCandidateHandle,
73  edm::ValueMap<reco::PhotonRef> pfEGCandToPhotonMap,
75  reco::PhotonCollection & outputCollection,
76  int& iSC, const edm::Handle<edm::ValueMap<float>>& chargedHadrons_, const edm::Handle<edm::ValueMap<float>>& neutralHadrons_, const edm::Handle<edm::ValueMap<float>>& photons_);
77 
78 
79  // std::string PhotonCoreCollection_;
82 
92  //for isolation with map-based veto
94  //photon isolation sums
98 
102 
104 
105  //AA
106  //Flags and severities to be excluded from calculations
107 
108  std::vector<int> flagsexclEB_;
109  std::vector<int> flagsexclEE_;
110  std::vector<int> severitiesexclEB_;
111  std::vector<int> severitiesexclEE_;
112 
113 
115  double maxHOverE_;
116  double minSCEt_;
117  double highEt_;
118  double minR9Barrel_;
119  double minR9Endcap_;
121 
124 
128 
131 
133 
134  //MIP
136 
137  std::vector<double> preselCutValuesBarrel_;
138  std::vector<double> preselCutValuesEndcap_;
139 
143 
144 };
145 #endif
edm::InputTag photonProducer_
std::string conversionCollection_
PhotonEnergyCorrector * thePhotonEnergyCorrector_
PhotonMIPHaloTagger * thePhotonMIPHaloTagger_
edm::EDGetTokenT< reco::PFCandidateCollection > pfCandidates_
edm::ESHandle< CaloGeometry > theCaloGeom_
void beginRun(edm::Run const &r, edm::EventSetup const &es) final
edm::EDGetTokenT< CaloTowerCollection > hcalTowers_
CaloTopology const * topology(0)
void produce(edm::Event &evt, const edm::EventSetup &es) override
~GEDPhotonProducer() override
edm::EDGetTokenT< edm::ValueMap< float > > phoPhotonIsolationToken_CITK
std::vector< int > flagsexclEB_
std::vector< Vertex > VertexCollection
collection of Vertex objects
Definition: VertexFwd.h:9
edm::EDGetTokenT< EcalRecHitCollection > endcapEcalHits_
std::string reconstructionStep_
PhotonIsolationCalculator * thePhotonIsolationCalculator_
std::vector< int > severitiesexclEE_
std::string photonCollection_
edm::ESHandle< CaloTopology > theCaloTopo_
edm::EDGetTokenT< EcalRecHitCollection > barrelEcalHits_
PositionCalc posCalculator_
std::string conversionProducer_
std::vector< int > flagsexclEE_
edm::EDGetTokenT< reco::PhotonCoreCollection > photonCoreProducerT_
edm::EDGetTokenT< edm::ValueMap< float > > phoChargedIsolationToken_CITK
edm::EDGetTokenT< edm::ValueMap< std::vector< reco::PFCandidateRef > > > particleBasedIsolationToken
edm::EDGetTokenT< reco::PFCandidateCollection > pfEgammaCandidates_
std::vector< int > severitiesexclEB_
GEDPhotonProducer(const edm::ParameterSet &ps)
std::vector< double > preselCutValuesBarrel_
edm::EDGetTokenT< reco::PhotonCollection > photonProducerT_
std::vector< Photon > PhotonCollection
collectin of Photon objects
Definition: PhotonFwd.h:9
std::vector< double > preselCutValuesEndcap_
std::string candidateP4type_
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, const edm::Handle< CaloTowerCollection > &hcalTowersHandle, const reco::VertexCollection &pvVertices, reco::PhotonCollection &outputCollection, int &iSC)
void endRun(edm::Run const &, edm::EventSetup const &) final
edm::EDGetTokenT< edm::ValueMap< float > > phoNeutralHadronIsolationToken_CITK
edm::ParameterSet conf_
edm::EDGetTokenT< reco::VertexCollection > vertexProducer_
EcalClusterFunctionBaseClass * energyCorrectionF
edm::EDGetTokenT< EcalRecHitCollection > preshowerHits_
Definition: Run.h:42
std::string valueMapPFCandPhoton_