CMS 3D CMS Logo

TriggerSummaryAnalyzerAOD.cc
Go to the documentation of this file.
1 
13 
14 //
15 // constructors and destructor
16 //
18  : inputTag_(ps.getParameter<edm::InputTag>("inputTag")), inputToken_(consumes<trigger::TriggerEvent>(inputTag_)) {}
19 
21 
22 //
23 // member functions
24 //
25 
28  desc.add<edm::InputTag>("inputTag", edm::InputTag("hltTriggerSummaryAOD"));
29  descriptions.add("triggerSummaryAnalyzerAOD", desc);
30 }
31 
32 // ------------ method called to produce the data ------------
34  using namespace std;
35  using namespace edm;
36  using namespace reco;
37  using namespace trigger;
38 
39  LogVerbatim("TriggerSummaryAnalyzerAOD") << endl;
40  LogVerbatim("TriggerSummaryAnalyzerAOD")
41  << "TriggerSummaryAnalyzerAOD: content of TriggerEvent: " << inputTag_.encode() << endl;
42 
44  iEvent.getByToken(inputToken_, handle);
45  if (handle.isValid()) {
46  LogVerbatim("TriggerSummaryAnalyzerAOD") << "Used Processname: " << handle->usedProcessName() << endl;
47  const size_type nC(handle->sizeCollections());
48  LogVerbatim("TriggerSummaryAnalyzerAOD") << "Number of packed Collections: " << nC << endl;
49  LogVerbatim("TriggerSummaryAnalyzerAOD") << "The Collections: #, tag, 1-past-end index" << endl;
50  for (size_type iC = 0; iC != nC; ++iC) {
51  LogVerbatim("TriggerSummaryAnalyzerAOD")
52  << iC << " " << handle->collectionTag(iC).encode() << " " << handle->collectionKey(iC) << endl;
53  }
54  const size_type nO(handle->sizeObjects());
55  LogVerbatim("TriggerSummaryAnalyzerAOD") << "Number of TriggerObjects: " << nO << endl;
56  LogVerbatim("TriggerSummaryAnalyzerAOD") << "The TriggerObjects: #, id, pt, eta, phi, mass" << endl;
57  const TriggerObjectCollection& TOC(handle->getObjects());
58  for (size_type iO = 0; iO != nO; ++iO) {
59  const TriggerObject& TO(TOC[iO]);
60  LogVerbatim("TriggerSummaryAnalyzerAOD")
61  << iO << " " << TO.id() << " " << TO.pt() << " " << TO.eta() << " " << TO.phi() << " " << TO.mass() << endl;
62  }
63  const size_type nF(handle->sizeFilters());
64  LogVerbatim("TriggerSummaryAnalyzerAOD") << "Number of TriggerFilters: " << nF << endl;
65  LogVerbatim("TriggerSummaryAnalyzerAOD") << "The Filters: #, tag, #ids/#keys, the id/key pairs" << endl;
66  for (size_type iF = 0; iF != nF; ++iF) {
67  const Vids& VIDS(handle->filterIds(iF));
68  const Keys& KEYS(handle->filterKeys(iF));
69  const size_type nI(VIDS.size());
70  const size_type nK(KEYS.size());
71  LogVerbatim("TriggerSummaryAnalyzerAOD")
72  << iF << " " << handle->filterTag(iF).encode() << " " << nI << "/" << nK << " the pairs: ";
73  const size_type n(max(nI, nK));
74  for (size_type i = 0; i != n; ++i) {
75  LogVerbatim("TriggerSummaryAnalyzerAOD") << " " << VIDS[i] << "/" << KEYS[i];
76  }
77  LogVerbatim("TriggerSummaryAnalyzerAOD") << endl;
78  assert(nI == nK);
79  }
80  } else {
81  LogVerbatim("TriggerSummaryAnalyzerAOD") << "Handle invalid! Check InputTag provided." << endl;
82  }
83  LogVerbatim("TriggerSummaryAnalyzerAOD") << endl;
84 
85  return;
86 }
TriggerSummaryAnalyzerAOD(const edm::ParameterSet &)
int id() const
getters
Definition: TriggerObject.h:51
trigger::size_type sizeFilters() const
Definition: TriggerEvent.h:146
trigger::size_type collectionKey(trigger::size_type index) const
Definition: TriggerEvent.h:107
bool getByToken(EDGetToken token, Handle< PROD > &result) const
Definition: Event.h:525
float phi() const
Definition: TriggerObject.h:54
const edm::EDGetTokenT< trigger::TriggerEvent > inputToken_
const Keys & filterKeys(trigger::size_type index) const
Definition: TriggerEvent.h:118
float eta() const
Definition: TriggerObject.h:53
static void fillDescriptions(edm::ConfigurationDescriptions &descriptions)
uint16_t size_type
std::string encode() const
Definition: InputTag.cc:159
~TriggerSummaryAnalyzerAOD() override
const Vids & filterIds(trigger::size_type index) const
Definition: TriggerEvent.h:117
int iEvent
Definition: GenABIO.cc:224
const TriggerObjectCollection & getObjects() const
Definition: TriggerEvent.h:101
const edm::InputTag inputTag_
InputTag of TriggerEvent to analyze.
const std::string & usedProcessName() const
getters
Definition: TriggerEvent.h:98
ParameterDescriptionBase * add(U const &iLabel, T const &value)
bool isValid() const
Definition: HandleBase.h:70
const edm::InputTag collectionTag(trigger::size_type index) const
Definition: TriggerEvent.h:103
std::vector< TriggerObject > TriggerObjectCollection
collection of trigger physics objects (e.g., all isolated muons)
Definition: TriggerObject.h:75
const edm::InputTag filterTag(trigger::size_type index) const
Definition: TriggerEvent.h:108
trigger::size_type sizeObjects() const
Definition: TriggerEvent.h:145
std::vector< size_type > Keys
trigger::size_type sizeCollections() const
other
Definition: TriggerEvent.h:144
void add(std::string const &label, ParameterSetDescription const &psetDescription)
fixed size matrix
void analyze(const edm::Event &, const edm::EventSetup &) override
HLT enums.
float mass() const
Definition: TriggerObject.h:55
std::vector< int > Vids