CMS 3D CMS Logo

CSCALCTDigiValidation.cc
Go to the documentation of this file.
4 
8 
10  : CSCBaseValidation(ps), theTimeBinPlots(), theNDigisPerChamberPlots() {
11  const auto &pset = ps.getParameterSet("cscALCT");
12  inputTag_ = pset.getParameter<edm::InputTag>("inputTag");
14 }
15 
17 
19  theNDigisPerEventPlot = iBooker.book1D(
20  "CSCALCTDigisPerEvent", "ALCT trigger primitives per event; Number of ALCTs; Entries", 100, 0, 100);
21  for (int i = 1; i <= 10; ++i) {
22  const std::string t1("CSCALCTDigiTime_" + CSCDetId::chamberName(i));
23  const std::string t2("CSCALCTDigisPerChamber_" + CSCDetId::chamberName(i));
24  theTimeBinPlots[i - 1] = iBooker.book1D(t1, "ALCT BX " + CSCDetId::chamberName(i) + ";ALCT BX; Entries", 16, 0, 16);
25  theNDigisPerChamberPlots[i - 1] = iBooker.book1D(
26  t2, "Number of ALCTs per chamber " + CSCDetId::chamberName(i) + ";Number of ALCTs per chamber;Entries", 4, 0, 4);
27  }
28 }
29 
32  e.getByToken(alcts_Token_, alcts);
33  if (!alcts.isValid()) {
34  edm::LogError("CSCALCTDigiValidation") << "Cannot get ALCTs by label " << inputTag_.encode();
35  }
36  unsigned nDigisPerEvent = 0;
37 
38  for (auto j = alcts->begin(); j != alcts->end(); j++) {
39  auto beginDigi = (*j).second.first;
40  auto endDigi = (*j).second.second;
41  CSCDetId detId((*j).first.rawId());
42  int chamberType = detId.iChamberType();
43  int nDigis = endDigi - beginDigi;
44  nDigisPerEvent += nDigis;
45  theNDigisPerChamberPlots[chamberType - 1]->Fill(nDigis);
46 
47  for (auto digiItr = beginDigi; digiItr != endDigi; ++digiItr) {
48  theTimeBinPlots[chamberType - 1]->Fill(digiItr->getBX());
49  }
50  }
51  theNDigisPerEventPlot->Fill(nDigisPerEvent);
52 }
RandomServiceHelper.t2
t2
Definition: RandomServiceHelper.py:257
Handle.h
mps_fire.i
i
Definition: mps_fire.py:428
CSCALCTDigiValidation::theNDigisPerEventPlot
MonitorElement * theNDigisPerEventPlot
Definition: CSCALCTDigiValidation.h:23
MessageLogger.h
CSCALCTDigiValidation::~CSCALCTDigiValidation
~CSCALCTDigiValidation() override
Definition: CSCALCTDigiValidation.cc:16
CSCALCTDigiValidation::inputTag_
edm::InputTag inputTag_
Definition: CSCALCTDigiValidation.h:20
CSCALCTDigiValidation::alcts_Token_
edm::EDGetTokenT< CSCALCTDigiCollection > alcts_Token_
Definition: CSCALCTDigiValidation.h:19
DQMStore.h
CSCALCTDigiValidation::CSCALCTDigiValidation
CSCALCTDigiValidation(const edm::ParameterSet &ps, edm::ConsumesCollector &&iC)
Definition: CSCALCTDigiValidation.cc:9
edm::Handle< CSCALCTDigiCollection >
CSCDetId::iChamberType
unsigned short iChamberType() const
Definition: CSCDetId.h:96
CSCALCTDigiValidation::bookHistograms
void bookHistograms(DQMStore::IBooker &)
Definition: CSCALCTDigiValidation.cc:18
CSCALCTDigiValidation::theTimeBinPlots
MonitorElement * theTimeBinPlots[10]
Definition: CSCALCTDigiValidation.h:21
CSCALCTDigiValidation.h
RandomServiceHelper.t1
t1
Definition: RandomServiceHelper.py:256
dqm::impl::MonitorElement::Fill
void Fill(long long x)
Definition: MonitorElement.h:290
CSCLayerGeometry.h
AlCaHLTBitMon_QueryRunRegistry.string
string
Definition: AlCaHLTBitMon_QueryRunRegistry.py:256
edm::ParameterSet
Definition: ParameterSet.h:47
CSCDetId
Definition: CSCDetId.h:26
CSCALCTDigiCollection
edm::InputTag::encode
std::string encode() const
Definition: InputTag.cc:159
edm::EventSetup
Definition: EventSetup.h:58
edm::LogError
Log< level::Error, false > LogError
Definition: MessageLogger.h:123
CSCALCTDigiValidation::analyze
void analyze(const edm::Event &, const edm::EventSetup &) override
Definition: CSCALCTDigiValidation.cc:30
CSCALCTDigiValidation::theNDigisPerChamberPlots
MonitorElement * theNDigisPerChamberPlots[10]
Definition: CSCALCTDigiValidation.h:22
CSCDetId::chamberName
std::string chamberName() const
Definition: CSCDetId.cc:74
dqm::implementation::IBooker
Definition: DQMStore.h:43
CSCBaseValidation
Definition: CSCBaseValidation.h:14
dqmiolumiharvest.j
j
Definition: dqmiolumiharvest.py:66
edm::HandleBase::isValid
bool isValid() const
Definition: HandleBase.h:70
edm::Event
Definition: Event.h:73
edm::InputTag
Definition: InputTag.h:15
edm::ConsumesCollector
Definition: ConsumesCollector.h:45
edm::ParameterSet::getParameterSet
ParameterSet const & getParameterSet(std::string const &) const
Definition: ParameterSet.cc:2128
muonDTDigis_cfi.pset
pset
Definition: muonDTDigis_cfi.py:27
dqm::implementation::IBooker::book1D
MonitorElement * book1D(TString const &name, TString const &title, int const nchX, double const lowX, double const highX, FUNC onbooking=NOOP())
Definition: DQMStore.h:98
CSCGeometry.h
MillePedeFileConverter_cfg.e
e
Definition: MillePedeFileConverter_cfg.py:37