CMS 3D CMS Logo

MonitorLTC.cc
Go to the documentation of this file.
1 // -*- C++ -*-
2 //
3 // Package: SiStripMonitorCluster
4 // Class: MonitorLTC
5 //
6 // class MonitorLTC MonitorLTC.cc DQM/SiStripMonitorCluster/src/MonitorLTC.cc
7 #include <vector>
8 
9 #include <iostream>
10 #include <numeric>
11 
13 
16 
18  const edm::ParameterSet&
19  iConfig) // :
20  // ltcDigiCollectionTag_(iConfig.getParameter<edm::InputTag>("ltcDigiCollectionTag"))
21 {
22  HLTDirectory = "HLTResults";
24  conf_ = iConfig;
25 
26  ltcDigiCollectionTagToken_ = consumes<LTCDigiCollection>(
27  conf_.getParameter<edm::InputTag>("ltcDigiCollectionTag"));
28 }
29 
31  const edm::EventSetup& es) {
33  // 0 DT
34  // 1 CSC
35  // 2 RBC1 (RPC techn. cosmic trigger for wheel +1, sector 10)
36  // 3 RBC2 (RPC techn. cosmic trigger for wheel +2, sector 10)
37  // 4 RPCTB (RPC Trigger Board trigger, covering both sectors 10 of both
38  // wheels, but with different geometrical acceptance ("pointing")) 5 unused
39  // edm::CurrentProcessingContext const* current_processing_context =
40  // currentContext(); std::string const* the_label = moduleLabel();
41  std::string the_label = conf_.getParameter<std::string>("@module_label");
42  std::string ltctitle = the_label + "_LTCTriggerDecision";
43  LTCTriggerDecision_all = ibooker.book1D(ltctitle, ltctitle, 8, -0.5, 7.5);
49 }
50 
52  const edm::EventSetup& iSetup) {
54  iEvent.getByToken(ltcDigiCollectionTagToken_, ltcdigis);
55  // unsigned int ltc_run;
56  // unsigned int ltc_event;
57  // unsigned int ltc_triggerNumber;
58  // unsigned int ltc_mask; // eight bits
59  // unsigned long long int ltc_gpstime;
60  // unsigned int ltc_orbit;
61  // unsigned int ltc_bunch;
62  // unsigned int ltc_inhibit;
63  for (LTCDigiCollection::const_iterator ltcdigiItr = ltcdigis->begin();
64  ltcdigiItr != ltcdigis->end(); ++ltcdigiItr) {
65  // ltc_run = ltcdigiItr->runNumber();
66  // ltc_event = ltcdigiItr->eventNumber();
67  // ltc_triggerNumber = ltcdigiItr->eventID();
68  // ltc_bunch = ltcdigiItr->bunchNumber();
69  // ltc_orbit = ltcdigiItr->orbitNumber();
70  // ltc_inhibit = ltcdigiItr->triggerInhibitNumber();
71  // ltc_mask = (unsigned int)(ltcdigiItr->externTriggerMask());
72  // ltc_gpstime = ltcdigiItr->bstGpsTime();
73  for (int ibit = 0; ibit < 7; ++ibit) {
74  if (ltcdigiItr->HasTriggered(ibit)) {
75  LTCTriggerDecision_all->Fill(ibit, 1.);
76  }
77  }
78  //
79  // std::cout << "XXX: "
80  // << ltcdigiItr->runNumber() << " "
81  // << ltcdigiItr->eventNumber() << " "
82  // << ltcdigiItr->bunchNumber() << " "
83  // << ltcdigiItr->orbitNumber() << " "
84  // << "0x" << std::hex
85  // << int(ltcdigiItr->externTriggerMask()) << " "
86  // << std::dec
87  // << ltcdigiItr->triggerInhibitNumber() << " "
88  // << ltcdigiItr->bstGpsTime() << " "
89  // << std::endl;
90  // std::cout << (*ltcdigiItr) << std::endl;
91  }
92 }
T getParameter(std::string const &) const
bool getByToken(EDGetToken token, Handle< PROD > &result) const
Definition: Event.h:519
MonitorElement * LTCTriggerDecision_all
Definition: MonitorLTC.h:38
void setBinLabel(int bin, const std::string &label, int axis=1)
set bin label for x, y or z axis (axis=1, 2, 3 respectively)
void analyze(const edm::Event &, const edm::EventSetup &) override
Definition: MonitorLTC.cc:51
void Fill(long long x)
int iEvent
Definition: GenABIO.cc:230
MonitorElement * book1D(Args &&...args)
Definition: DQMStore.h:118
std::string HLTDirectory
Definition: MonitorLTC.h:40
edm::EDGetTokenT< LTCDigiCollection > ltcDigiCollectionTagToken_
Definition: MonitorLTC.h:42
void setCurrentFolder(const std::string &fullpath)
Definition: DQMStore.cc:279
DQMStore * dqmStore_
Definition: MonitorLTC.h:35
MonitorLTC(const edm::ParameterSet &)
Definition: MonitorLTC.cc:17
void bookHistograms(DQMStore::IBooker &, edm::Run const &, edm::EventSetup const &) override
Definition: MonitorLTC.cc:30
edm::ParameterSet conf_
Definition: MonitorLTC.h:36
Definition: Run.h:43