CMS 3D CMS Logo

TriggerEventWithRefs.h
Go to the documentation of this file.
1 #ifndef HLTReco_TriggerEventWithRefs_h
2 #define HLTReco_TriggerEventWithRefs_h
3 
19 #include <string>
20 #include <vector>
21 
22 namespace trigger
23 {
24 
27 
30 
31  public:
32 
35  public:
61 
64  filterTag_(),
65  photons_(0), electrons_(0), muons_(0), jets_(0), composites_(0), basemets_(0), calomets_(0), pixtracks_(0), l1em_(0), l1muon_(0), l1jet_(0), l1etmiss_(0), l1hfrings_(0), pfjets_(0), pftaus_(0), pfmets_(0), l1tmuon_(0), l1tegamma_(0), l1tjet_(0), l1ttau_(0), l1tetsum_(0) {
66  filterTag_=edm::InputTag().encode();
67  }
69  size_type np, size_type ne, size_type nm, size_type nj, size_type nc, size_type nB, size_type nC, size_type nt, size_type l1em, size_type l1muon, size_type l1jet, size_type l1etmiss, size_type l1hfrings, size_type pfjets, size_type pftaus, size_type pfmets, size_type l1tmuon, size_type l1tegamma, size_type l1tjet, size_type l1ttau, size_type l1tetsum) :
70  filterTag_(filterTag.encode()),
71  photons_(np), electrons_(ne), muons_(nm), jets_(nj), composites_(nc), basemets_(nB), calomets_(nC), pixtracks_(nt), l1em_(l1em), l1muon_(l1muon), l1jet_(l1jet), l1etmiss_(l1etmiss), l1hfrings_(l1hfrings), pfjets_(pfjets), pftaus_(pftaus), pfmets_(pfmets), l1tmuon_(l1tmuon), l1tegamma_(l1tegamma), l1tjet_(l1tjet), l1ttau_(l1ttau), l1tetsum_(l1tetsum) { }
72  };
73 
75  private:
79  std::vector<TriggerFilterObject> filterObjects_;
80 
82  public:
84  TriggerEventWithRefs(): TriggerRefsCollections(), usedProcessName_(), filterObjects_() { }
87  usedProcessName_(usedProcessName),
88  filterObjects_()
89  {
90  filterObjects_.reserve(n);
91  }
92 
95 
96  filterObjects_.push_back(
97 
98  TriggerFilterObject(filterTag,
99  addObjects(tfowr.photonIds(),tfowr.photonRefs()),
100  addObjects(tfowr.electronIds(),tfowr.electronRefs()),
101  addObjects(tfowr.muonIds(),tfowr.muonRefs()),
102  addObjects(tfowr.jetIds(),tfowr.jetRefs()),
103  addObjects(tfowr.compositeIds(),tfowr.compositeRefs()),
104  addObjects(tfowr.basemetIds(),tfowr.basemetRefs()),
105  addObjects(tfowr.calometIds(),tfowr.calometRefs()),
106  addObjects(tfowr.pixtrackIds(),tfowr.pixtrackRefs()),
107  addObjects(tfowr.l1emIds(),tfowr.l1emRefs()),
108  addObjects(tfowr.l1muonIds(),tfowr.l1muonRefs()),
109  addObjects(tfowr.l1jetIds(),tfowr.l1jetRefs()),
110  addObjects(tfowr.l1etmissIds(),tfowr.l1etmissRefs()),
111  addObjects(tfowr.l1hfringsIds(),tfowr.l1hfringsRefs()),
112  addObjects(tfowr.pfjetIds(),tfowr.pfjetRefs()),
113  addObjects(tfowr.pftauIds(),tfowr.pftauRefs()),
114  addObjects(tfowr.pfmetIds(),tfowr.pfmetRefs()),
115  addObjects(tfowr.l1tmuonIds(),tfowr.l1tmuonRefs()),
116  addObjects(tfowr.l1tegammaIds(),tfowr.l1tegammaRefs()),
117  addObjects(tfowr.l1tjetIds(),tfowr.l1tjetRefs()),
118  addObjects(tfowr.l1ttauIds(),tfowr.l1ttauRefs()),
119  addObjects(tfowr.l1tetsumIds(),tfowr.l1tetsumRefs())
120  )
121 
122  );
123 
124  }
125 
128 
130  size_type size() const {return filterObjects_.size();}
131 
134  return edm::InputTag(filterObjects_.at(filterIndex).filterTag_);
135  }
136 
139  const std::string encodedFilterTag (filterTag.encode());
140  const size_type n(filterObjects_.size());
141  for (size_type i=0; i!=n; ++i) {
142  if (encodedFilterTag==filterObjects_[i].filterTag_) {return i;}
143  }
144  return n;
145  }
146 
148 
149  std::pair<size_type,size_type> photonSlice(size_type filter) const {
150  const size_type begin(filter==0? 0 : filterObjects_.at(filter-1).photons_);
151  const size_type end(filterObjects_.at(filter).photons_);
152  return std::pair<size_type,size_type>(begin,end);
153  }
154 
155  std::pair<size_type,size_type> electronSlice(size_type filter) const {
156  const size_type begin(filter==0? 0 : filterObjects_.at(filter-1).electrons_);
157  const size_type end(filterObjects_.at(filter).electrons_);
158  return std::pair<size_type,size_type>(begin,end);
159  }
160 
161  std::pair<size_type,size_type> muonSlice(size_type filter) const {
162  const size_type begin(filter==0? 0 : filterObjects_.at(filter-1).muons_);
163  const size_type end(filterObjects_.at(filter).muons_);
164  return std::pair<size_type,size_type>(begin,end);
165  }
166 
167  std::pair<size_type,size_type> jetSlice(size_type filter) const {
168  const size_type begin(filter==0? 0 : filterObjects_.at(filter-1).jets_);
169  const size_type end(filterObjects_.at(filter).jets_);
170  return std::pair<size_type,size_type>(begin,end);
171  }
172 
173  std::pair<size_type,size_type> compositeSlice(size_type filter) const {
174  const size_type begin(filter==0? 0 : filterObjects_.at(filter-1).composites_);
175  const size_type end(filterObjects_.at(filter).composites_);
176  return std::pair<size_type,size_type>(begin,end);
177  }
178 
179  std::pair<size_type,size_type> basemetSlice(size_type filter) const {
180  const size_type begin(filter==0? 0 : filterObjects_.at(filter-1).basemets_);
181  const size_type end(filterObjects_.at(filter).basemets_);
182  return std::pair<size_type,size_type>(begin,end);
183  }
184 
185  std::pair<size_type,size_type> calometSlice(size_type filter) const {
186  const size_type begin(filter==0? 0 : filterObjects_.at(filter-1).calomets_);
187  const size_type end(filterObjects_.at(filter).calomets_);
188  return std::pair<size_type,size_type>(begin,end);
189  }
190 
191  std::pair<size_type,size_type> pixtrackSlice(size_type filter) const {
192  const size_type begin(filter==0? 0 : filterObjects_.at(filter-1).pixtracks_);
193  const size_type end(filterObjects_.at(filter).pixtracks_);
194  return std::pair<size_type,size_type>(begin,end);
195  }
196 
197  std::pair<size_type,size_type> l1emSlice(size_type filter) const {
198  const size_type begin(filter==0? 0 : filterObjects_.at(filter-1).l1em_);
199  const size_type end(filterObjects_.at(filter).l1em_);
200  return std::pair<size_type,size_type>(begin,end);
201  }
202 
203  std::pair<size_type,size_type> l1muonSlice(size_type filter) const {
204  const size_type begin(filter==0? 0 : filterObjects_.at(filter-1).l1muon_);
205  const size_type end(filterObjects_.at(filter).l1muon_);
206  return std::pair<size_type,size_type>(begin,end);
207  }
208 
209  std::pair<size_type,size_type> l1jetSlice(size_type filter) const {
210  const size_type begin(filter==0? 0 : filterObjects_.at(filter-1).l1jet_);
211  const size_type end(filterObjects_.at(filter).l1jet_);
212  return std::pair<size_type,size_type>(begin,end);
213  }
214 
215  std::pair<size_type,size_type> l1etmissSlice(size_type filter) const {
216  const size_type begin(filter==0? 0 : filterObjects_.at(filter-1).l1etmiss_);
217  const size_type end(filterObjects_.at(filter).l1etmiss_);
218  return std::pair<size_type,size_type>(begin,end);
219  }
220 
221  std::pair<size_type,size_type> l1hfringsSlice(size_type filter) const {
222  const size_type begin(filter==0? 0 : filterObjects_.at(filter-1).l1hfrings_);
223  const size_type end(filterObjects_.at(filter).l1hfrings_);
224  return std::pair<size_type,size_type>(begin,end);
225  }
226 
227  std::pair<size_type,size_type> pfjetSlice(size_type filter) const {
228  const size_type begin(filter==0? 0 : filterObjects_.at(filter-1).pfjets_);
229  const size_type end(filterObjects_.at(filter).pfjets_);
230  return std::pair<size_type,size_type>(begin,end);
231  }
232 
233  std::pair<size_type,size_type> pftauSlice(size_type filter) const {
234  const size_type begin(filter==0? 0 : filterObjects_.at(filter-1).pftaus_);
235  const size_type end(filterObjects_.at(filter).pftaus_);
236  return std::pair<size_type,size_type>(begin,end);
237  }
238 
239  std::pair<size_type,size_type> pfmetSlice(size_type filter) const {
240  const size_type begin(filter==0? 0 : filterObjects_.at(filter-1).pfmets_);
241  const size_type end(filterObjects_.at(filter).pfmets_);
242  return std::pair<size_type,size_type>(begin,end);
243  }
244 
245  std::pair<size_type,size_type> l1tmuonSlice(size_type filter) const {
246  const size_type begin(filter==0? 0 : filterObjects_.at(filter-1).l1tmuon_);
247  const size_type end(filterObjects_.at(filter).l1tmuon_);
248  return std::pair<size_type,size_type>(begin,end);
249  }
250 
251  std::pair<size_type,size_type> l1tegammaSlice(size_type filter) const {
252  const size_type begin(filter==0? 0 : filterObjects_.at(filter-1).l1tegamma_);
253  const size_type end(filterObjects_.at(filter).l1tegamma_);
254  return std::pair<size_type,size_type>(begin,end);
255  }
256 
257  std::pair<size_type,size_type> l1tjetSlice(size_type filter) const {
258  const size_type begin(filter==0? 0 : filterObjects_.at(filter-1).l1tjet_);
259  const size_type end(filterObjects_.at(filter).l1tjet_);
260  return std::pair<size_type,size_type>(begin,end);
261  }
262 
263  std::pair<size_type,size_type> l1ttauSlice(size_type filter) const {
264  const size_type begin(filter==0? 0 : filterObjects_.at(filter-1).l1ttau_);
265  const size_type end(filterObjects_.at(filter).l1ttau_);
266  return std::pair<size_type,size_type>(begin,end);
267  }
268 
269  std::pair<size_type,size_type> l1tetsumSlice(size_type filter) const {
270  const size_type begin(filter==0? 0 : filterObjects_.at(filter-1).l1tetsum_);
271  const size_type end(filterObjects_.at(filter).l1tetsum_);
272  return std::pair<size_type,size_type>(begin,end);
273  }
274 
275 
277 
279  const size_type begin(photonSlice(filter).first);
280  const size_type end(photonSlice(filter).second);
281  TriggerRefsCollections::getObjects(ids,photons,begin,end);
282  }
283  void getObjects(size_type filter, int id, VRphoton& photons) const {
284  const size_type begin(photonSlice(filter).first);
285  const size_type end(photonSlice(filter).second);
286  TriggerRefsCollections::getObjects(id,photons,begin,end);
287  }
288 
290  const size_type begin(electronSlice(filter).first);
291  const size_type end(electronSlice(filter).second);
292  TriggerRefsCollections::getObjects(ids,electrons,begin,end);
293  }
295  const size_type begin(electronSlice(filter).first);
296  const size_type end(electronSlice(filter).second);
297  TriggerRefsCollections::getObjects(id,electrons,begin,end);
298  }
299 
301  const size_type begin(muonSlice(filter).first);
302  const size_type end(muonSlice(filter).second);
303  TriggerRefsCollections::getObjects(ids,muons,begin,end);
304  }
305  void getObjects(size_type filter, int id, VRmuon& muons) const {
306  const size_type begin(muonSlice(filter).first);
307  const size_type end(muonSlice(filter).second);
308  TriggerRefsCollections::getObjects(id,muons,begin,end);
309  }
310 
312  const size_type begin(jetSlice(filter).first);
313  const size_type end(jetSlice(filter).second);
314  TriggerRefsCollections::getObjects(ids,jets,begin,end);
315  }
316  void getObjects(size_type filter, int id, VRjet& jets) const {
317  const size_type begin(jetSlice(filter).first);
318  const size_type end(jetSlice(filter).second);
319  TriggerRefsCollections::getObjects(id,jets,begin,end);
320  }
321 
322  void getObjects(size_type filter, Vids& ids, VRcomposite& composites) const {
323  const size_type begin(compositeSlice(filter).first);
324  const size_type end(compositeSlice(filter).second);
325  TriggerRefsCollections::getObjects(ids,composites,begin,end);
326  }
327  void getObjects(size_type filter, int id, VRcomposite& composites) const {
328  const size_type begin(compositeSlice(filter).first);
329  const size_type end(compositeSlice(filter).second);
330  TriggerRefsCollections::getObjects(id,composites,begin,end);
331  }
332 
333  void getObjects(size_type filter, Vids& ids, VRbasemet& basemets) const {
334  const size_type begin(basemetSlice(filter).first);
335  const size_type end(basemetSlice(filter).second);
336  TriggerRefsCollections::getObjects(ids,basemets,begin,end);
337  }
338  void getObjects(size_type filter, int id, VRbasemet& basemets) const {
339  const size_type begin(basemetSlice(filter).first);
340  const size_type end(basemetSlice(filter).second);
341  TriggerRefsCollections::getObjects(id,basemets,begin,end);
342  }
343 
344  void getObjects(size_type filter, Vids& ids, VRcalomet& calomets) const {
345  const size_type begin(calometSlice(filter).first);
346  const size_type end(calometSlice(filter).second);
347  TriggerRefsCollections::getObjects(ids,calomets,begin,end);
348  }
349  void getObjects(size_type filter, int id, VRcalomet& calomets) const {
350  const size_type begin(calometSlice(filter).first);
351  const size_type end(calometSlice(filter).second);
352  TriggerRefsCollections::getObjects(id,calomets,begin,end);
353  }
354 
355  void getObjects(size_type filter, Vids& ids, VRpixtrack& pixtracks) const {
356  const size_type begin(pixtrackSlice(filter).first);
357  const size_type end(pixtrackSlice(filter).second);
358  TriggerRefsCollections::getObjects(ids,pixtracks,begin,end);
359  }
360  void getObjects(size_type filter, int id, VRpixtrack& pixtracks) const {
361  const size_type begin(pixtrackSlice(filter).first);
362  const size_type end(pixtrackSlice(filter).second);
363  TriggerRefsCollections::getObjects(id,pixtracks,begin,end);
364  }
365 
366  void getObjects(size_type filter, Vids& ids, VRl1em& l1em) const {
367  const size_type begin(l1emSlice(filter).first);
368  const size_type end(l1emSlice(filter).second);
369  TriggerRefsCollections::getObjects(ids,l1em,begin,end);
370  }
371  void getObjects(size_type filter, int id, VRl1em& l1em) const {
372  const size_type begin(l1emSlice(filter).first);
373  const size_type end(l1emSlice(filter).second);
374  TriggerRefsCollections::getObjects(id,l1em,begin,end);
375  }
376 
377  void getObjects(size_type filter, Vids& ids, VRl1muon& l1muon) const {
378  const size_type begin(l1muonSlice(filter).first);
379  const size_type end(l1muonSlice(filter).second);
380  TriggerRefsCollections::getObjects(ids,l1muon,begin,end);
381  }
382  void getObjects(size_type filter, int id, VRl1muon& l1muon) const {
383  const size_type begin(l1muonSlice(filter).first);
384  const size_type end(l1muonSlice(filter).second);
385  TriggerRefsCollections::getObjects(id,l1muon,begin,end);
386  }
387 
388  void getObjects(size_type filter, Vids& ids, VRl1jet& l1jet) const {
389  const size_type begin(l1jetSlice(filter).first);
390  const size_type end(l1jetSlice(filter).second);
391  TriggerRefsCollections::getObjects(ids,l1jet,begin,end);
392  }
393  void getObjects(size_type filter, int id, VRl1jet& l1jet) const {
394  const size_type begin(l1jetSlice(filter).first);
395  const size_type end(l1jetSlice(filter).second);
396  TriggerRefsCollections::getObjects(id,l1jet,begin,end);
397  }
398 
399  void getObjects(size_type filter, Vids& ids, VRl1etmiss& l1etmiss) const {
400  const size_type begin(l1etmissSlice(filter).first);
401  const size_type end(l1etmissSlice(filter).second);
402  TriggerRefsCollections::getObjects(ids,l1etmiss,begin,end);
403  }
404  void getObjects(size_type filter, int id, VRl1etmiss& l1etmiss) const {
405  const size_type begin(l1etmissSlice(filter).first);
406  const size_type end(l1etmissSlice(filter).second);
407  TriggerRefsCollections::getObjects(id,l1etmiss,begin,end);
408  }
409 
410  void getObjects(size_type filter, Vids& ids, VRl1hfrings& l1hfrings) const {
411  const size_type begin(l1hfringsSlice(filter).first);
412  const size_type end(l1hfringsSlice(filter).second);
413  TriggerRefsCollections::getObjects(ids,l1hfrings,begin,end);
414  }
415  void getObjects(size_type filter, int id, VRl1hfrings& l1hfrings) const {
416  const size_type begin(l1hfringsSlice(filter).first);
417  const size_type end(l1hfringsSlice(filter).second);
418  TriggerRefsCollections::getObjects(id,l1hfrings,begin,end);
419  }
420 
421  void getObjects(size_type filter, Vids& ids, VRpfjet& pfjets) const {
422  const size_type begin(pfjetSlice(filter).first);
423  const size_type end(pfjetSlice(filter).second);
424  TriggerRefsCollections::getObjects(ids,pfjets,begin,end);
425  }
426  void getObjects(size_type filter, int id, VRpfjet& pfjets) const {
427  const size_type begin(pfjetSlice(filter).first);
428  const size_type end(pfjetSlice(filter).second);
429  TriggerRefsCollections::getObjects(id,pfjets,begin,end);
430  }
431 
432  void getObjects(size_type filter, Vids& ids, VRpftau& pftaus) const {
433  const size_type begin(pftauSlice(filter).first);
434  const size_type end(pftauSlice(filter).second);
435  TriggerRefsCollections::getObjects(ids,pftaus,begin,end);
436  }
437  void getObjects(size_type filter, int id, VRpftau& pftaus) const {
438  const size_type begin(pftauSlice(filter).first);
439  const size_type end(pftauSlice(filter).second);
440  TriggerRefsCollections::getObjects(id,pftaus,begin,end);
441  }
442 
443  void getObjects(size_type filter, Vids& ids, VRpfmet& pfmets) const {
444  const size_type begin(pfmetSlice(filter).first);
445  const size_type end(pfmetSlice(filter).second);
446  TriggerRefsCollections::getObjects(ids,pfmets,begin,end);
447  }
448  void getObjects(size_type filter, int id, VRpfmet& pfmets) const {
449  const size_type begin(pfmetSlice(filter).first);
450  const size_type end(pfmetSlice(filter).second);
451  TriggerRefsCollections::getObjects(id,pfmets,begin,end);
452  }
453 
454  void getObjects(size_type filter, Vids& ids, VRl1tmuon& l1tmuon) const {
455  const size_type begin(l1tmuonSlice(filter).first);
456  const size_type end(l1tmuonSlice(filter).second);
457  TriggerRefsCollections::getObjects(ids,l1tmuon,begin,end);
458  }
459  void getObjects(size_type filter, int id, VRl1tmuon& l1tmuon) const {
460  const size_type begin(l1tmuonSlice(filter).first);
461  const size_type end(l1tmuonSlice(filter).second);
462  TriggerRefsCollections::getObjects(id,l1tmuon,begin,end);
463  }
464 
465  void getObjects(size_type filter, Vids& ids, VRl1tegamma& l1tegamma) const {
466  const size_type begin(l1tegammaSlice(filter).first);
467  const size_type end(l1tegammaSlice(filter).second);
468  TriggerRefsCollections::getObjects(ids,l1tegamma,begin,end);
469  }
470  void getObjects(size_type filter, int id, VRl1tegamma& l1tegamma) const {
471  const size_type begin(l1tegammaSlice(filter).first);
472  const size_type end(l1tegammaSlice(filter).second);
473  TriggerRefsCollections::getObjects(id,l1tegamma,begin,end);
474  }
475 
476  void getObjects(size_type filter, Vids& ids, VRl1tjet& l1tjet) const {
477  const size_type begin(l1tjetSlice(filter).first);
478  const size_type end(l1tjetSlice(filter).second);
479  TriggerRefsCollections::getObjects(ids,l1tjet,begin,end);
480  }
481  void getObjects(size_type filter, int id, VRl1tjet& l1tjet) const {
482  const size_type begin(l1tjetSlice(filter).first);
483  const size_type end(l1tjetSlice(filter).second);
484  TriggerRefsCollections::getObjects(id,l1tjet,begin,end);
485  }
486 
487  void getObjects(size_type filter, Vids& ids, VRl1ttau& l1ttau) const {
488  const size_type begin(l1ttauSlice(filter).first);
489  const size_type end(l1ttauSlice(filter).second);
490  TriggerRefsCollections::getObjects(ids,l1ttau,begin,end);
491  }
492  void getObjects(size_type filter, int id, VRl1ttau& l1ttau) const {
493  const size_type begin(l1ttauSlice(filter).first);
494  const size_type end(l1ttauSlice(filter).second);
495  TriggerRefsCollections::getObjects(id,l1ttau,begin,end);
496  }
497 
498  void getObjects(size_type filter, Vids& ids, VRl1tetsum& l1tetsum) const {
499  const size_type begin(l1tetsumSlice(filter).first);
500  const size_type end(l1tetsumSlice(filter).second);
501  TriggerRefsCollections::getObjects(ids,l1tetsum,begin,end);
502  }
503  void getObjects(size_type filter, int id, VRl1tetsum& l1tetsum) const {
504  const size_type begin(l1tetsumSlice(filter).first);
505  const size_type end(l1tetsumSlice(filter).second);
506  TriggerRefsCollections::getObjects(id,l1tetsum,begin,end);
507  }
508 
509  };
510 
511 }
512 
513 #endif
void getObjects(size_type filter, int id, VRelectron &electrons) const
std::pair< size_type, size_type > l1tmuonSlice(size_type filter) const
void getObjects(size_type filter, Vids &ids, VRl1em &l1em) const
std::pair< size_type, size_type > pftauSlice(size_type filter) const
size_type addObjects(const Vids &ids, const VRphoton &refs)
void getObjects(size_type filter, int id, VRpfjet &pfjets) const
void getObjects(Vids &ids, VRphoton &refs) const
various physics-level getters:
void getObjects(size_type filter, Vids &ids, VRl1jet &l1jet) const
std::vector< TriggerFilterObject > filterObjects_
the filters recorded here
std::pair< size_type, size_type > l1tegammaSlice(size_type filter) const
void getObjects(size_type filter, int id, VRpftau &pftaus) const
const VRbasemet & basemetRefs() const
std::pair< size_type, size_type > compositeSlice(size_type filter) const
void addFilterObject(const edm::InputTag &filterTag, const TriggerFilterObjectWithRefs &tfowr)
setters - to build EDProduct
std::pair< size_type, size_type > l1etmissSlice(size_type filter) const
const VRcalomet & calometRefs() const
void getObjects(size_type filter, Vids &ids, VRl1ttau &l1ttau) const
const VRl1tetsum & l1tetsumRefs() const
l1t::EGammaVectorRef VRl1tegamma
void getObjects(size_type filter, Vids &ids, VRpfmet &pfmets) const
std::vector< reco::METRef > VRbasemet
void getObjects(size_type filter, Vids &ids, VRbasemet &basemets) const
void getObjects(size_type filter, int id, VRpfmet &pfmets) const
std::pair< size_type, size_type > pfmetSlice(size_type filter) const
void getObjects(size_type filter, int id, VRl1tjet &l1tjet) const
const std::string & usedProcessName() const
getters - for user access
void getObjects(size_type filter, Vids &ids, VRjet &jets) const
const edm::InputTag filterTag(size_type filterIndex) const
tag from index
void getObjects(size_type filter, Vids &ids, VRl1tmuon &l1tmuon) const
l1t::JetVectorRef VRl1tjet
TriggerFilterObject(const edm::InputTag &filterTag, size_type np, size_type ne, size_type nm, size_type nj, size_type nc, size_type nB, size_type nC, size_type nt, size_type l1em, size_type l1muon, size_type l1jet, size_type l1etmiss, size_type l1hfrings, size_type pfjets, size_type pftaus, size_type pfmets, size_type l1tmuon, size_type l1tegamma, size_type l1tjet, size_type l1ttau, size_type l1tetsum)
std::string usedProcessName_
data members
std::pair< size_type, size_type > calometSlice(size_type filter) const
uint16_t size_type
std::string encode() const
Definition: InputTag.cc:159
std::vector< l1extra::L1MuonParticleRef > VRl1muon
void getObjects(size_type filter, int id, VRl1tetsum &l1tetsum) const
std::pair< size_type, size_type > jetSlice(size_type filter) const
void getObjects(size_type filter, int id, VRl1tegamma &l1tegamma) const
U second(std::pair< T, U > const &p)
void getObjects(size_type filter, Vids &ids, VRpftau &pftaus) const
const VRl1ttau & l1ttauRefs() const
std::vector< l1extra::L1HFRingsRef > VRl1hfrings
void getObjects(size_type filter, int id, VRl1etmiss &l1etmiss) const
void getObjects(size_type filter, int id, VRl1tmuon &l1tmuon) const
std::vector< reco::IsolatedPixelTrackCandidateRef > VRpixtrack
void getObjects(size_type filter, Vids &ids, VRmuon &muons) const
void getObjects(size_type filter, int id, VRbasemet &basemets) const
const VRl1muon & l1muonRefs() const
std::vector< l1extra::L1EtMissParticleRef > VRl1etmiss
std::pair< size_type, size_type > l1muonSlice(size_type filter) const
int np
Definition: AMPTWrapper.h:33
const VRl1tegamma & l1tegammaRefs() const
std::pair< size_type, size_type > muonSlice(size_type filter) const
void getObjects(size_type filter, int id, VRcalomet &calomets) const
vector< PseudoJet > jets
void getObjects(size_type filter, int id, VRl1em &l1em) const
void getObjects(size_type filter, Vids &ids, VRl1muon &l1muon) const
const VRcomposite & compositeRefs() const
void getObjects(size_type filter, Vids &ids, VRcalomet &calomets) const
void getObjects(size_type filter, int id, VRl1hfrings &l1hfrings) const
std::pair< size_type, size_type > l1jetSlice(size_type filter) const
#define end
Definition: vmac.h:39
std::vector< l1extra::L1EmParticleRef > VRl1em
void getObjects(size_type filter, Vids &ids, VRcomposite &composites) const
const VRl1hfrings & l1hfringsRefs() const
void getObjects(size_type filter, int id, VRjet &jets) const
void getObjects(size_type filter, Vids &ids, VRpfjet &pfjets) const
int nt
Definition: AMPTWrapper.h:32
size_type filterIndex(const edm::InputTag &filterTag) const
index from tag
void getObjects(size_type filter, int id, VRl1jet &l1jet) const
void getObjects(size_type filter, int id, VRl1ttau &l1ttau) const
void getObjects(size_type filter, int id, VRpixtrack &pixtracks) const
std::pair< size_type, size_type > l1tjetSlice(size_type filter) const
std::pair< size_type, size_type > pfjetSlice(size_type filter) const
void getObjects(size_type filter, Vids &ids, VRl1tetsum &l1tetsum) const
const VRl1tmuon & l1tmuonRefs() const
const VRl1etmiss & l1etmissRefs() const
std::vector< reco::CaloJetRef > VRjet
const VRl1tjet & l1tjetRefs() const
void getObjects(size_type filter, Vids &ids, VRl1etmiss &l1etmiss) const
void getObjects(size_type filter, Vids &ids, VRl1hfrings &l1hfrings) const
std::vector< reco::PFJetRef > VRpfjet
void getObjects(size_type filter, Vids &ids, VRphoton &photons) const
extract Ref<C>s for a specific filter and of specific physics type
void getObjects(size_type filter, int id, VRmuon &muons) const
size_type size() const
number of filters
def encode(args, files)
std::vector< reco::CompositeCandidateRef > VRcomposite
l1t::MuonVectorRef VRl1tmuon
std::pair< size_type, size_type > l1ttauSlice(size_type filter) const
const VRphoton & photonRefs() const
std::vector< reco::RecoChargedCandidateRef > VRmuon
std::pair< size_type, size_type > photonSlice(size_type filter) const
slices of objects for a specific filter: [begin,end[
void getObjects(size_type filter, Vids &ids, VRelectron &electrons) const
std::pair< size_type, size_type > l1emSlice(size_type filter) const
const VRelectron & electronRefs() const
#define begin
Definition: vmac.h:32
void getObjects(size_type filter, int id, VRcomposite &composites) const
TriggerEventWithRefs(const std::string &usedProcessName, size_type n)
std::pair< size_type, size_type > pixtrackSlice(size_type filter) const
const VRpixtrack & pixtrackRefs() const
void getObjects(size_type filter, Vids &ids, VRpixtrack &pixtracks) const
l1t::TauVectorRef VRl1ttau
std::vector< reco::ElectronRef > VRelectron
std::pair< size_type, size_type > l1hfringsSlice(size_type filter) const
std::vector< reco::PFMETRef > VRpfmet
std::vector< reco::CaloMETRef > VRcalomet
Helper class: trigger objects firing a single filter.
l1t::EtSumVectorRef VRl1tetsum
std::vector< reco::RecoEcalCandidateRef > VRphoton
void getObjects(size_type filter, int id, VRphoton &photons) const
void getObjects(size_type filter, Vids &ids, VRl1tegamma &l1tegamma) const
std::vector< l1extra::L1JetParticleRef > VRl1jet
std::vector< int > Vids
std::vector< reco::PFTauRef > VRpftau
std::pair< size_type, size_type > l1tetsumSlice(size_type filter) const
void getObjects(size_type filter, int id, VRl1muon &l1muon) const
void getObjects(size_type filter, Vids &ids, VRl1tjet &l1tjet) const
std::pair< size_type, size_type > basemetSlice(size_type filter) const
std::pair< size_type, size_type > electronSlice(size_type filter) const
std::string filterTag_
encoded InputTag of filter product