CMS 3D CMS Logo

ElectronHEEPIDValueMapProducer.cc
Go to the documentation of this file.
3 
7 
9 
13 
19 
22 
25 
26 #include <memory>
27 #include <vector>
28 
29 //Heavily inspired from ElectronIDValueMapProducer
30 
32 private:
33  //helper classes to handle AOD vs MiniAOD
34  template <typename T>
35  struct DualToken {
38  };
39  class DataFormat {
40  public:
41  enum Format { AUTO = 0, AOD = 1, MINIAOD = 2 };
42 
43  private:
44  int data_;
45 
46  public:
47  DataFormat(int val) : data_(val) {}
48  bool tryAOD() const { return data_ == AUTO || data_ == AOD; }
49  bool tryMiniAOD() const { return data_ == AUTO || data_ == MINIAOD; }
50  int operator()() const { return data_; }
51  };
52 
53 public:
56 
57  static void fillDescriptions(edm::ConfigurationDescriptions& descriptions);
58 
59 private:
60  void produce(edm::Event&, const edm::EventSetup&) override;
61 
62  template <typename T>
63  static void writeValueMap(edm::Event& iEvent,
65  const std::vector<T>& values,
66  const std::string& label);
67 
68  static int nrSaturatedCrysIn5x5(const reco::GsfElectron& ele,
71  edm::ESHandle<CaloTopology>& caloTopo);
72 
73  static float calTrkIso(const reco::GsfElectron& ele,
74  const edm::View<reco::GsfElectron>& eles,
76  const std::vector<EleTkIsolFromCands::PIDVeto>& pidVetos,
77  const EleTkIsolFromCands& trkIsoCalc);
78 
79  template <typename T>
81  token = consumes<T>(tag);
82  }
83  template <typename T>
85  token = consumes<T>(iPara.getParameter<edm::InputTag>(tag));
86  }
87  template <typename T>
88  void setToken(std::vector<edm::EDGetTokenT<T> >& tokens, const edm::ParameterSet& iPara, const std::string& tagName) {
89  auto tags = iPara.getParameter<std::vector<edm::InputTag> >(tagName);
90  for (auto& tag : tags) {
92  setToken(token, tag);
93  tokens.push_back(token);
94  }
95  }
96  template <typename T>
98  const edm::ParameterSet& iPara,
99  const std::string& tagAOD,
100  const std::string& tagMiniAOD,
101  DataFormat format) {
102  if (format.tryAOD())
103  token.aod = consumes<T>(iPara.getParameter<edm::InputTag>(tagAOD));
104  if (format.tryMiniAOD())
105  token.miniAOD = consumes<T>(iPara.getParameter<edm::InputTag>(tagMiniAOD));
106  }
107  template <typename T>
108  void setToken(std::vector<DualToken<T> >& tokens,
109  const edm::ParameterSet& iPara,
110  const std::string& tagAOD,
111  const std::string& tagMiniAOD,
112  DataFormat format) {
113  auto tagsAOD = iPara.getParameter<std::vector<edm::InputTag> >(tagAOD);
114  auto tagsMiniAOD = iPara.getParameter<std::vector<edm::InputTag> >(tagMiniAOD);
115  size_t maxSize = std::max(tagsAOD.size(), tagsMiniAOD.size());
116  tokens.clear();
117  tokens.resize(maxSize);
118  if (format.tryAOD()) {
119  for (size_t tagNr = 0; tagNr < tagsAOD.size(); tagNr++) {
120  setToken(tokens[tagNr].aod, tagsAOD[tagNr]);
121  }
122  }
123  if (format.tryMiniAOD()) {
124  for (size_t tagNr = 0; tagNr < tagsMiniAOD.size(); tagNr++) {
125  setToken(tokens[tagNr].miniAOD, tagsMiniAOD[tagNr]);
126  }
127  }
128  }
129 
130  template <typename T>
133  iEvent.getByToken(token, handle);
134  return handle;
135  }
136  template <typename T>
139  if (!token.aod.isUninitialized())
140  iEvent.getByToken(token.aod, handle);
141  if (!handle.isValid() && !token.miniAOD.isUninitialized())
142  iEvent.getByToken(token.miniAOD, handle);
143  return handle;
144  }
145 
146  template <typename T>
147  static std::vector<edm::Handle<T> > getHandles(const edm::Event& iEvent, const std::vector<DualToken<T> >& tokens) {
148  std::vector<edm::Handle<T> > handles(tokens.size());
149  if (tokens.empty())
150  return handles;
151  if (!tokens[0].aod.isUninitialized())
152  iEvent.getByToken(tokens[0].aod, handles[0]);
153  bool isAOD = handles[0].isValid();
154  if (!isAOD && !tokens[0].miniAOD.isUninitialized())
155  iEvent.getByToken(tokens[0].miniAOD, handles[0]);
156 
157  for (size_t tokenNr = 1; tokenNr < tokens.size(); tokenNr++) {
158  auto token = isAOD ? tokens[tokenNr].aod : tokens[tokenNr].miniAOD;
159  if (!token.isUninitialized())
160  iEvent.getByToken(token, handles[tokenNr]);
161  }
162  return handles;
163  }
164 
165  template <typename T>
166  static bool isEventAOD(const edm::Event& iEvent, const DualToken<T>& token) {
168  if (!token.aod.isUninitialized())
169  iEvent.getByToken(token.aod, handle);
170  if (handle.isValid())
171  return true;
172  else
173  return false;
174  }
175 
179  std::vector<DualToken<pat::PackedCandidateCollection> > candTokens_;
181 
186  std::vector<EleTkIsolFromCands::PIDVeto> candVetosAOD_;
187  std::vector<EleTkIsolFromCands::PIDVeto> candVetosMiniAOD_;
188 
192 };
193 
197 
199  : trkIsoCalc_(iConfig.getParameter<edm::ParameterSet>("trkIsoConfig")),
200  trkIso04Calc_(iConfig.getParameter<edm::ParameterSet>("trkIso04Config")),
201  makeTrkIso04_(iConfig.getParameter<bool>("makeTrkIso04")),
202  dataFormat_(iConfig.getParameter<int>("dataFormat")) {
203  setToken(ebRecHitToken_, iConfig, "ebRecHitsAOD", "ebRecHitsMiniAOD", dataFormat_);
204  setToken(eeRecHitToken_, iConfig, "eeRecHitsAOD", "eeRecHitsMiniAOD", dataFormat_);
205  setToken(eleToken_, iConfig, "elesAOD", "elesMiniAOD", dataFormat_);
206  setToken(candTokens_, iConfig, "candsAOD", "candsMiniAOD", dataFormat_);
207  setToken(beamSpotToken_, iConfig, "beamSpot");
208 
209  auto fillVetos = [](const auto& in, auto& out) {
210  std::transform(in.begin(), in.end(), std::back_inserter(out), EleTkIsolFromCands::pidVetoFromStr);
211  };
212 
213  fillVetos(iConfig.getParameter<std::vector<std::string> >("candVetosAOD"), candVetosAOD_);
214  if (candVetosAOD_.size() != iConfig.getParameter<std::vector<edm::InputTag> >("candsAOD").size()) {
215  throw cms::Exception("ConfigError") << " Error candVetosAOD should be the same size as candsAOD " << std::endl;
216  }
217 
218  fillVetos(iConfig.getParameter<std::vector<std::string> >("candVetosMiniAOD"), candVetosMiniAOD_);
219  if (candVetosMiniAOD_.size() != iConfig.getParameter<std::vector<edm::InputTag> >("candsMiniAOD").size()) {
220  throw cms::Exception("ConfigError") << " Error candVetosMiniAOD should be the same size as candsMiniAOD "
221  << std::endl;
222  }
223 
224  produces<edm::ValueMap<float> >(eleTrkPtIsoLabel_);
225  if (makeTrkIso04_)
226  produces<edm::ValueMap<float> >(eleTrkPtIso04Label_);
227  produces<edm::ValueMap<int> >(eleNrSaturateIn5x5Label_);
228 }
229 
231 
233  auto eleHandle = getHandle(iEvent, eleToken_);
234  auto ebRecHitHandle = getHandle(iEvent, ebRecHitToken_);
235  auto eeRecHitHandle = getHandle(iEvent, eeRecHitToken_);
236  auto beamSpotHandle = getHandle(iEvent, beamSpotToken_);
237  auto candHandles = getHandles(iEvent, candTokens_);
238 
239  bool isAOD = isEventAOD(iEvent, eleToken_);
240  const auto& candVetos = isAOD ? candVetosAOD_ : candVetosMiniAOD_;
241 
242  edm::ESHandle<CaloTopology> caloTopoHandle;
243  iSetup.get<CaloTopologyRecord>().get(caloTopoHandle);
244 
245  std::vector<float> eleTrkPtIso;
246  std::vector<float> eleTrkPtIso04;
247  std::vector<int> eleNrSaturateIn5x5;
248  for (auto const& ele : *eleHandle) {
249  eleTrkPtIso.push_back(calTrkIso(ele, *eleHandle, candHandles, candVetos, trkIsoCalc_));
250  if (makeTrkIso04_) {
251  eleTrkPtIso04.push_back(calTrkIso(ele, *eleHandle, candHandles, candVetos, trkIso04Calc_));
252  }
253  eleNrSaturateIn5x5.push_back(nrSaturatedCrysIn5x5(ele, ebRecHitHandle, eeRecHitHandle, caloTopoHandle));
254  }
255 
256  writeValueMap(iEvent, eleHandle, eleTrkPtIso, eleTrkPtIsoLabel_);
257  if (makeTrkIso04_)
258  writeValueMap(iEvent, eleHandle, eleTrkPtIso04, eleTrkPtIso04Label_);
259  writeValueMap(iEvent, eleHandle, eleNrSaturateIn5x5, eleNrSaturateIn5x5Label_);
260 }
261 
265  edm::ESHandle<CaloTopology>& caloTopo) {
266  DetId id = ele.superCluster()->seed()->seed();
267  auto recHits = id.subdetId() == EcalBarrel ? ebHits.product() : eeHits.product();
269 }
270 
272  const edm::View<reco::GsfElectron>& eles,
274  const std::vector<EleTkIsolFromCands::PIDVeto>& pidVetos,
275  const EleTkIsolFromCands& trkIsoCalc) {
276  if (ele.gsfTrack().isNull())
278  else {
279  float trkIso = 0.;
280  for (size_t handleNr = 0; handleNr < handles.size(); handleNr++) {
281  auto& handle = handles[handleNr];
282  if (handle.isValid()) {
283  if (handleNr < pidVetos.size()) {
284  trkIso += trkIsoCalc.calIsolPt(*ele.gsfTrack(), *handle, pidVetos[handleNr]);
285  } else {
286  throw cms::Exception("LogicError") << " somehow the pidVetos and handles do not much, given this is checked "
287  "at construction time, something has gone wrong in the code handle nr "
288  << handleNr << " size of vetos " << pidVetos.size();
289  }
290  }
291  }
292  return trkIso;
293  }
294 }
295 
296 template <typename T>
299  const std::vector<T>& values,
300  const std::string& label) {
301  std::unique_ptr<edm::ValueMap<T> > valMap(new edm::ValueMap<T>());
302  typename edm::ValueMap<T>::Filler filler(*valMap);
303  filler.insert(handle, values.begin(), values.end());
304  filler.fill();
305  iEvent.put(std::move(valMap), label);
306 }
307 
310  desc.add<edm::InputTag>("beamSpot", edm::InputTag("offlineBeamSpot"));
311  desc.add<edm::InputTag>("ebRecHitsAOD", edm::InputTag("reducedEcalRecHitsEB"));
312  desc.add<edm::InputTag>("eeRecHitsAOD", edm::InputTag("reducedEcalRecHitsEE"));
313  desc.add<std::vector<edm::InputTag> >("candsAOD", {edm::InputTag("packedCandidates")});
314  desc.add<std::vector<std::string> >("candVetosAOD", {"none"});
315  desc.add<edm::InputTag>("elesAOD", edm::InputTag("gedGsfElectrons"));
316 
317  desc.add<edm::InputTag>("ebRecHitsMiniAOD", edm::InputTag("reducedEcalRecHitsEB"));
318  desc.add<edm::InputTag>("eeRecHitsMiniAOD", edm::InputTag("reducedEcalRecHitsEE"));
319  desc.add<std::vector<edm::InputTag> >("candsMiniAOD", {edm::InputTag("packedCandidates")});
320  desc.add<std::vector<std::string> >("candVetosMiniAOD", {"none"});
321  desc.add<edm::InputTag>("elesMiniAOD", edm::InputTag("gedGsfElectrons"));
322  desc.add<int>("dataFormat", 0);
323  desc.add<bool>("makeTrkIso04", false);
324  desc.add("trkIsoConfig", EleTkIsolFromCands::pSetDescript());
325  desc.add("trkIso04Config", EleTkIsolFromCands::pSetDescript());
326 
327  descriptions.addDefault(desc);
328 }
329 
PAT_cff.miniAOD
miniAOD
Definition: PAT_cff.py:15
edm::ESHandle::product
T const * product() const
Definition: ESHandle.h:86
Handle.h
electrons_cff.bool
bool
Definition: electrons_cff.py:372
edm::ParameterSetDescription::add
ParameterDescriptionBase * add(U const &iLabel, T const &value)
Definition: ParameterSetDescription.h:95
reco::GsfElectron::gsfTrack
GsfTrackRef gsfTrack() const override
reference to a GsfTrack
Definition: GsfElectron.h:164
EcalClusterToolsT::nrSaturatedCrysIn5x5
static int nrSaturatedCrysIn5x5(const DetId &id, const EcalRecHitCollection *recHits, const CaloTopology *topology)
Definition: EcalClusterTools.h:1826
edm::Handle::product
T const * product() const
Definition: Handle.h:70
ElectronHEEPIDValueMapProducer::DualToken
Definition: ElectronHEEPIDValueMapProducer.cc:35
ESHandle.h
ElectronHEEPIDValueMapProducer::eleToken_
DualToken< edm::View< reco::GsfElectron > > eleToken_
Definition: ElectronHEEPIDValueMapProducer.cc:178
ElectronHEEPIDValueMapProducer::setToken
void setToken(edm::EDGetTokenT< T > &token, edm::InputTag tag)
Definition: ElectronHEEPIDValueMapProducer.cc:80
ElectronHEEPIDValueMapProducer::DataFormat::tryAOD
bool tryAOD() const
Definition: ElectronHEEPIDValueMapProducer.cc:48
ElectronHEEPIDValueMapProducer::ElectronHEEPIDValueMapProducer
ElectronHEEPIDValueMapProducer(const edm::ParameterSet &)
Definition: ElectronHEEPIDValueMapProducer.cc:198
patZpeak.handle
handle
Definition: patZpeak.py:23
edm::EDGetTokenT
Definition: EDGetToken.h:33
edm::Ref::isNull
bool isNull() const
Checks for null.
Definition: Ref.h:235
edm
HLT enums.
Definition: AlignableModifier.h:19
ZMuMuCategoriesSequences_cff.trkIso
trkIso
Definition: ZMuMuCategoriesSequences_cff.py:140
ElectronHEEPIDValueMapProducer::writeValueMap
static void writeValueMap(edm::Event &iEvent, const edm::Handle< edm::View< reco::GsfElectron > > &handle, const std::vector< T > &values, const std::string &label)
Definition: ElectronHEEPIDValueMapProducer.cc:297
EleTkIsolFromCands::pidVetoFromStr
static PIDVeto pidVetoFromStr(const std::string &vetoStr)
Definition: EleTkIsolFromCands.cc:125
edm::ParameterSetDescription
Definition: ParameterSetDescription.h:52
ElectronHEEPIDValueMapProducer::eleNrSaturateIn5x5Label_
static const std::string eleNrSaturateIn5x5Label_
Definition: ElectronHEEPIDValueMapProducer.cc:191
EDProducer.h
ElectronHEEPIDValueMapProducer::isEventAOD
static bool isEventAOD(const edm::Event &iEvent, const DualToken< T > &token)
Definition: ElectronHEEPIDValueMapProducer.cc:166
ElectronHEEPIDValueMapProducer::eeRecHitToken_
DualToken< EcalRecHitCollection > eeRecHitToken_
Definition: ElectronHEEPIDValueMapProducer.cc:177
CaloTopologyRecord
Definition: CaloTopologyRecord.h:10
edm::Handle
Definition: AssociativeIterator.h:50
EcalBarrel
Definition: EcalSubdetector.h:10
ElectronHEEPIDValueMapProducer::DataFormat::data_
int data_
Definition: ElectronHEEPIDValueMapProducer.cc:44
ElectronHEEPIDValueMapProducer::~ElectronHEEPIDValueMapProducer
~ElectronHEEPIDValueMapProducer() override
Definition: ElectronHEEPIDValueMapProducer.cc:230
ElectronHEEPIDValueMapProducer::DualToken::miniAOD
edm::EDGetTokenT< T > miniAOD
Definition: ElectronHEEPIDValueMapProducer.cc:37
DetId
Definition: DetId.h:17
MakerMacros.h
ElectronHEEPIDValueMapProducer::DataFormat::MINIAOD
Definition: ElectronHEEPIDValueMapProducer.cc:41
edm::EventSetup::get
T get() const
Definition: EventSetup.h:73
ElectronHEEPIDValueMapProducer::DataFormat::DataFormat
DataFormat(int val)
Definition: ElectronHEEPIDValueMapProducer.cc:47
DEFINE_FWK_MODULE
#define DEFINE_FWK_MODULE(type)
Definition: MakerMacros.h:16
ElectronHEEPIDValueMapProducer::calTrkIso
static float calTrkIso(const reco::GsfElectron &ele, const edm::View< reco::GsfElectron > &eles, const std::vector< edm::Handle< pat::PackedCandidateCollection > > &handles, const std::vector< EleTkIsolFromCands::PIDVeto > &pidVetos, const EleTkIsolFromCands &trkIsoCalc)
Definition: ElectronHEEPIDValueMapProducer.cc:271
ElectronHEEPIDValueMapProducer::eleTrkPtIso04Label_
static const std::string eleTrkPtIso04Label_
Definition: ElectronHEEPIDValueMapProducer.cc:190
ElectronHEEPIDValueMapProducer::getHandle
static edm::Handle< T > getHandle(const edm::Event &iEvent, const DualToken< T > &token)
Definition: ElectronHEEPIDValueMapProducer.cc:137
HLTEGTnPMonitor_cfi.isAOD
isAOD
Definition: HLTEGTnPMonitor_cfi.py:1001
GlobalPosition_Frontier_DevDB_cff.tag
tag
Definition: GlobalPosition_Frontier_DevDB_cff.py:11
ElectronHEEPIDValueMapProducer::candTokens_
std::vector< DualToken< pat::PackedCandidateCollection > > candTokens_
Definition: ElectronHEEPIDValueMapProducer.cc:179
contentValuesCheck.values
values
Definition: contentValuesCheck.py:38
edm::ESHandle< CaloTopology >
HcalDetIdTransform::transform
unsigned transform(const HcalDetId &id, unsigned transformCode)
Definition: HcalDetIdTransform.cc:7
reco::GsfElectron
Definition: GsfElectron.h:35
ElectronHEEPIDValueMapProducer::nrSaturatedCrysIn5x5
static int nrSaturatedCrysIn5x5(const reco::GsfElectron &ele, edm::Handle< EcalRecHitCollection > &ebHits, edm::Handle< EcalRecHitCollection > &eeHits, edm::ESHandle< CaloTopology > &caloTopo)
Definition: ElectronHEEPIDValueMapProducer.cc:262
GsfElectron.h
ElectronHEEPIDValueMapProducer::getHandles
static std::vector< edm::Handle< T > > getHandles(const edm::Event &iEvent, const std::vector< DualToken< T > > &tokens)
Definition: ElectronHEEPIDValueMapProducer.cc:147
ElectronHEEPIDValueMapProducer::makeTrkIso04_
bool makeTrkIso04_
Definition: ElectronHEEPIDValueMapProducer.cc:184
magneticfield::handles
std::vector< BaseVolumeHandle * > handles
Definition: BaseVolumeHandle.h:154
edm::ConfigurationDescriptions
Definition: ConfigurationDescriptions.h:28
ElectronHEEPIDValueMapProducer::candVetosMiniAOD_
std::vector< EleTkIsolFromCands::PIDVeto > candVetosMiniAOD_
Definition: ElectronHEEPIDValueMapProducer.cc:187
AlCaHLTBitMon_QueryRunRegistry.string
string
Definition: AlCaHLTBitMon_QueryRunRegistry.py:256
EcalSubdetector.h
FastTrackerRecHitMaskProducer_cfi.recHits
recHits
Definition: FastTrackerRecHitMaskProducer_cfi.py:8
edm::View
Definition: CaloClusterFwd.h:14
ElectronHEEPIDValueMapProducer::DataFormat::operator()
int operator()() const
Definition: ElectronHEEPIDValueMapProducer.cc:50
EleTkIsolFromCands::calIsolPt
double calIsolPt(Args &&... args) const
Definition: EleTkIsolFromCands.h:95
GsfElectronFwd.h
HLT_2018_cff.InputTag
InputTag
Definition: HLT_2018_cff.py:79016
edm::ParameterSet
Definition: ParameterSet.h:36
DataFormat
Definition: DataFormat.py:1
EleTkIsolFromCands.h
Event.h
ElectronHEEPIDValueMapProducer::setToken
void setToken(std::vector< DualToken< T > > &tokens, const edm::ParameterSet &iPara, const std::string &tagAOD, const std::string &tagMiniAOD, DataFormat format)
Definition: ElectronHEEPIDValueMapProducer.cc:108
ParameterSet
Definition: Functions.h:16
SiStripPI::max
Definition: SiStripPayloadInspectorHelper.h:169
ElectronHEEPIDValueMapProducer::setToken
void setToken(DualToken< T > &token, const edm::ParameterSet &iPara, const std::string &tagAOD, const std::string &tagMiniAOD, DataFormat format)
Definition: ElectronHEEPIDValueMapProducer.cc:97
ElectronHEEPIDValueMapProducer::ebRecHitToken_
DualToken< EcalRecHitCollection > ebRecHitToken_
Definition: ElectronHEEPIDValueMapProducer.cc:176
trigObjTnPSource_cfi.filler
filler
Definition: trigObjTnPSource_cfi.py:21
EcalClusterTools.h
PackedCandidate.h
recoMuon::in
Definition: RecoMuonEnumerators.h:6
CaloTopologyRecord.h
ElectronHEEPIDValueMapProducer::DataFormat::AUTO
Definition: ElectronHEEPIDValueMapProducer.cc:41
createfilelist.int
int
Definition: createfilelist.py:10
iEvent
int iEvent
Definition: GenABIO.cc:224
ElectronHEEPIDValueMapProducer::produce
void produce(edm::Event &, const edm::EventSetup &) override
Definition: ElectronHEEPIDValueMapProducer.cc:232
GsfTrack.h
edm::stream::EDProducer
Definition: EDProducer.h:38
EleTkIsolFromCands::pSetDescript
static edm::ParameterSetDescription pSetDescript()
Definition: EleTkIsolFromCands.cc:47
ElectronHEEPIDValueMapProducer::getHandle
static edm::Handle< T > getHandle(const edm::Event &iEvent, const edm::EDGetTokenT< T > &token)
Definition: ElectronHEEPIDValueMapProducer.cc:131
edm::EventSetup
Definition: EventSetup.h:57
get
#define get
ElectronHEEPIDValueMapProducer::fillDescriptions
static void fillDescriptions(edm::ConfigurationDescriptions &descriptions)
Definition: ElectronHEEPIDValueMapProducer.cc:308
CaloTopology.h
ValueMap.h
ElectronHEEPIDValueMapProducer::dataFormat_
DataFormat dataFormat_
Definition: ElectronHEEPIDValueMapProducer.cc:185
edm::ParameterSet::getParameter
T getParameter(std::string const &) const
ElectronHEEPIDValueMapProducer::DualToken::aod
edm::EDGetTokenT< T > aod
Definition: ElectronHEEPIDValueMapProducer.cc:36
reco_skim_cfg_mod.maxSize
maxSize
Definition: reco_skim_cfg_mod.py:154
ElectronHEEPIDValueMapProducer::DataFormat::Format
Format
Definition: ElectronHEEPIDValueMapProducer.cc:41
heppy_batch.val
val
Definition: heppy_batch.py:351
eostools.move
def move(src, dest)
Definition: eostools.py:511
Frameworkfwd.h
edm::ValueMap
Definition: ValueMap.h:107
Exception
Definition: hltDiff.cc:246
format
ElectronHEEPIDValueMapProducer::trkIso04Calc_
EleTkIsolFromCands trkIso04Calc_
Definition: ElectronHEEPIDValueMapProducer.cc:183
ElectronHEEPIDValueMapProducer
Definition: ElectronHEEPIDValueMapProducer.cc:31
reco::GsfElectron::superCluster
SuperClusterRef superCluster() const override
reference to a SuperCluster
Definition: GsfElectron.h:163
triggerMatcherToHLTDebug_cfi.tags
tags
Definition: triggerMatcherToHLTDebug_cfi.py:9
ElectronHEEPIDValueMapProducer::trkIsoCalc_
EleTkIsolFromCands trkIsoCalc_
Definition: ElectronHEEPIDValueMapProducer.cc:182
MillePedeFileConverter_cfg.out
out
Definition: MillePedeFileConverter_cfg.py:31
edm::helper::Filler
Definition: ValueMap.h:22
EleTkIsolFromCands
Definition: EleTkIsolFromCands.h:44
View.h
ElectronHEEPIDValueMapProducer::beamSpotToken_
edm::EDGetTokenT< reco::BeamSpot > beamSpotToken_
Definition: ElectronHEEPIDValueMapProducer.cc:180
ParameterSet.h
ElectronHEEPIDValueMapProducer::setToken
void setToken(std::vector< edm::EDGetTokenT< T > > &tokens, const edm::ParameterSet &iPara, const std::string &tagName)
Definition: ElectronHEEPIDValueMapProducer.cc:88
ElectronHEEPIDValueMapProducer::eleTrkPtIsoLabel_
static const std::string eleTrkPtIsoLabel_
Definition: ElectronHEEPIDValueMapProducer.cc:189
edm::Event
Definition: Event.h:73
edm::ConfigurationDescriptions::addDefault
void addDefault(ParameterSetDescription const &psetDescription)
Definition: ConfigurationDescriptions.cc:99
ElectronHEEPIDValueMapProducer::setToken
void setToken(edm::EDGetTokenT< T > &token, const edm::ParameterSet &iPara, const std::string &tag)
Definition: ElectronHEEPIDValueMapProducer.cc:84
JetPartonCorrections_cff.tagName
tagName
Definition: JetPartonCorrections_cff.py:12
edm::InputTag
Definition: InputTag.h:15
label
const char * label
Definition: PFTauDecayModeTools.cc:11
ElectronHEEPIDValueMapProducer::candVetosAOD_
std::vector< EleTkIsolFromCands::PIDVeto > candVetosAOD_
Definition: ElectronHEEPIDValueMapProducer.cc:186
ElectronHEEPIDValueMapProducer::DataFormat::tryMiniAOD
bool tryMiniAOD() const
Definition: ElectronHEEPIDValueMapProducer.cc:49
findQualityFiles.size
size
Write out results.
Definition: findQualityFiles.py:443
ElectronHEEPIDValueMapProducer::DataFormat::AOD
Definition: ElectronHEEPIDValueMapProducer.cc:41
unpackBuffers-CaloStage2.token
token
Definition: unpackBuffers-CaloStage2.py:316