12 printProvenanceInfo(
false), theCSCStripPedestalSum(0),
13 theCSCStripPedestalCount(0),
count(0)
15 std::string MsgLoggerCat =
"GlobalDigisHistogrammer_GlobalDigisHistogrammer";
26 m_Prov.getUntrackedParameter<
bool>(
"GetAllProvenances");
28 m_Prov.getUntrackedParameter<
bool>(
"PrintProvenanceInfo");
54 <<
"\n===============================\n" 55 <<
"Initialized as EDHistogrammer with parameter values:\n" 56 <<
" Name = " <<
fName <<
"\n" 57 <<
" Verbosity = " << verbosity <<
"\n" 58 <<
" Frequency = " << frequency <<
"\n" 59 <<
" OutputFile = " << outputfile <<
"\n" 60 <<
" DoOutput = " << doOutput <<
"\n" 61 <<
" GetProv = " << getAllProvenances <<
"\n" 62 <<
" PrintProv = " << printProvenanceInfo <<
"\n" 63 <<
" Global Src = " << GlobalDigisSrc_ <<
"\n" 65 <<
"===============================\n";
85 std::string SiStripString[19] = {
"TECW1",
"TECW2",
"TECW3",
"TECW4",
"TECW5",
86 "TECW6",
"TECW7",
"TECW8",
"TIBL1",
"TIBL2",
"TIBL3",
"TIBL4",
"TIDW1",
87 "TIDW2",
"TIDW3",
"TOBL1",
"TOBL2",
"TOBL3",
"TOBL4"};
89 for (
int i = 0;
i < 19; ++
i) {
96 for (
int amend = 0; amend < 19; ++amend) {
98 SiStripString[amend] +
" Digis", 500, 0., 1000.);
103 SiStripString[amend] +
" ADC", 150, 0.0, 300.);
108 SiStripString[amend] +
" Strip", 200, 0.0, 800.);
114 std::string HCalString[4] = {
"HB",
"HE",
"HO",
"HF"};
115 float calnUpper[4] = {3000., 3000., 3000., 2000.};
116 float calnLower[4] = {2000., 2000., 2000., 1000.};
117 float SHEUpper[4] = {0.05, .05, 0.05, 20};
118 float SHEvAEEUpper[4] = {5000, 5000, 5000, 20};
119 float SHEvAEELower[4] = {-5000, -5000, -5000, -20};
120 int SHEvAEEnBins[4] = {200, 200, 200, 40};
121 double ProfileUpper[4] = {1., 1., 1., 20.};
123 for (
int i =0;
i<4; ++
i) {
132 for (
int amend = 0; amend < 4; ++amend) {
134 HCalString[amend] +
" digis", 1000, calnLower[amend], calnUpper[amend]);
139 HCalString[amend]+
"Cal AEE", 60, -10., 50.);
144 HCalString[amend]+
"Cal SHE", 100, 0.0, SHEUpper[amend]);
149 HCalString[amend] +
"Cal AEE/SHE", SHEvAEEnBins[amend],
150 SHEvAEELower[amend], SHEvAEEUpper[amend]);
157 HCalString[amend] +
"Cal SHE vs. AEE", 60, (
float)-10., (
float)50., 100,
158 (
float)0., (
float)ProfileUpper[amend],
"");
167 for (
int i = 0;
i < 2; ++
i) {
177 for (
int amend = 0; amend < 2; ++amend) {
179 ECalString[amend] +
" digis", 300, 1000., 4000.);
184 ECalString[amend] +
"Cal AEE", 100, 0., 1.);
189 ECalString[amend] +
"Cal SHE", 50, 0., 5.);
194 ECalString[amend] +
"Cal MaxPos", 10, 0., 10.);
201 ECalString[amend] +
"Cal SHE vs. AEE/SHE", 100, (
float)0., (
float)10., 50,
202 (
float)0., (
float)5.,
"");
207 ECalString[amend] +
"Cal Multi vs. AEE", 100, (
float)0., (
float)10., 400,
208 (
float)0., (
float)4000.,
"");
214 mehEcaln[2] = ibooker.
book1D(
"hEcaln_ES",
"ESCAL digis", 100, 0., 500.);
218 for (
int i = 0;
i < 3; ++
i) {
221 "hEcalADC" + ADCNumber[
i] +
"_ES",
"ESCAL ADC" + ADCNumber[
i], 150, 950., 1500.);
228 std::string SiPixelString[7] = {
"BRL1",
"BRL2",
"BRL3",
"FWD1n",
"FWD1p",
"FWD2n",
231 for (
int j = 0; j < 7; ++j) {
239 for (
int amend = 0; amend < 7; ++amend) {
242 SiPixelString[amend] +
" Digis", 50, 0., 100.);
246 SiPixelString[amend] +
" Digis", 25, 0., 50.);
252 SiPixelString[amend] +
" ADC", 150, 0.0, 300.);
257 SiPixelString[amend] +
" Row", 100, 0.0, 100.);
262 SiPixelString[amend] +
" Column", 200, 0.0, 500.);
270 std::string MuonString[4] = {
"MB1",
"MB2",
"MB3",
"MB4"};
272 for (
int i = 0;
i < 4; ++
i) {
279 for (
int j = 0; j < 4; ++j) {
281 MuonString[j] +
" digis", 25, 0., 50.);
286 MuonString[j]+
" Layer", 12, 1., 13.);
291 MuonString[j] +
" Time", 300, 400., 1000.);
296 MuonString[j] +
" Time vs. Layer", 12, 1., 13., 300, 400., 1000.,
"");
334 std::string MsgLoggerCat =
"GlobalDigisHistogrammer_analyze";
345 <<
"Processing run " << nrun <<
", event " << nevt
346 <<
" (" <<
count <<
" events total)";
350 <<
"Processing run " << nrun <<
", event " << nevt
351 <<
" (" <<
count <<
" events total)";
361 std::vector<const edm::StableProvenance*> AllProv;
366 <<
"Number of Provenances = " << AllProv.size();
369 TString eventout(
"\nProvenance info:\n");
371 for (
unsigned int i = 0;
i < AllProv.size(); ++
i) {
372 eventout +=
"\n ******************************";
373 eventout +=
"\n Module : ";
375 eventout += AllProv[
i]->moduleLabel();
376 eventout +=
"\n ProductID : ";
378 eventout += AllProv[
i]->productID().id();
379 eventout +=
"\n ClassName : ";
381 eventout += AllProv[
i]->className();
382 eventout +=
"\n InstanceName : ";
384 eventout += AllProv[
i]->productInstanceName();
385 eventout +=
"\n BranchName : ";
387 eventout += AllProv[
i]->branchName();
389 eventout +=
"\n ******************************\n";
396 if (!srcGlobalDigis.
isValid()) {
398 <<
"Unable to find PGlobalDigis in event!";
452 std::vector<PGlobalDigi::ECalDigi> EECalDigis =
455 for (
unsigned int i = 0;
i < EECalDigis.size(); ++
i) {
459 if (EECalDigis[
i].SHE != 0.) {
462 Fill(EECalDigis[
i].AEE/EECalDigis[
i].SHE,EECalDigis[
i].SHE,1);
466 std::vector<PGlobalDigi::ECalDigi> EBCalDigis =
469 for (
unsigned int i = 0;
i < EBCalDigis.size(); ++
i) {
473 if (EBCalDigis[
i].SHE != 0.) {
476 Fill(EBCalDigis[
i].AEE/EBCalDigis[
i].SHE,EBCalDigis[
i].SHE,1);
480 std::vector<PGlobalDigi::ESCalDigi> ESCalDigis =
483 for (
unsigned int i = 0;
i < ESCalDigis.size(); ++
i) {
490 std::vector<PGlobalDigi::HCalDigi> HBCalDigis =
493 for (
unsigned int i = 0;
i < HBCalDigis.size(); ++
i) {
495 if (HBCalDigis[
i].SHE != 0.) {
499 Fill(HBCalDigis[
i].AEE,HBCalDigis[
i].SHE,1);
502 std::vector<PGlobalDigi::HCalDigi> HECalDigis =
505 for (
unsigned int i = 0;
i < HECalDigis.size(); ++
i) {
507 if (HECalDigis[
i].SHE != 0.) {
511 Fill(HECalDigis[
i].AEE,HECalDigis[
i].SHE,1);
515 std::vector<PGlobalDigi::HCalDigi> HOCalDigis =
518 for (
unsigned int i = 0;
i < HOCalDigis.size(); ++
i) {
520 if (HOCalDigis[
i].SHE != 0.) {
524 Fill(HOCalDigis[
i].AEE,HOCalDigis[
i].SHE,1);
528 std::vector<PGlobalDigi::HCalDigi> HFCalDigis =
531 for (
unsigned int i = 0;
i < HFCalDigis.size(); ++
i) {
533 if (HFCalDigis[
i].SHE != 0.) {
537 Fill(HFCalDigis[
i].AEE,HFCalDigis[
i].SHE,1);
542 std::vector<PGlobalDigi::SiStripDigi> TIBL1Digis =
545 for (
unsigned int i = 0;
i < TIBL1Digis.size(); ++
i) {
550 std::vector<PGlobalDigi::SiStripDigi> TIBL2Digis =
553 for (
unsigned int i = 0;
i < TIBL2Digis.size(); ++
i) {
558 std::vector<PGlobalDigi::SiStripDigi> TIBL3Digis =
561 for (
unsigned int i = 0;
i < TIBL3Digis.size(); ++
i) {
566 std::vector<PGlobalDigi::SiStripDigi> TIBL4Digis =
569 for (
unsigned int i = 0;
i < TIBL4Digis.size(); ++
i) {
574 std::vector<PGlobalDigi::SiStripDigi> TOBL1Digis =
577 for (
unsigned int i = 0;
i < TOBL1Digis.size(); ++
i) {
582 std::vector<PGlobalDigi::SiStripDigi> TOBL2Digis =
585 for (
unsigned int i = 0;
i < TOBL2Digis.size(); ++
i) {
590 std::vector<PGlobalDigi::SiStripDigi> TOBL3Digis =
593 for (
unsigned int i = 0;
i < TOBL3Digis.size(); ++
i) {
598 std::vector<PGlobalDigi::SiStripDigi> TOBL4Digis =
601 for (
unsigned int i = 0;
i < TOBL4Digis.size(); ++
i) {
606 std::vector<PGlobalDigi::SiStripDigi> TIDW1Digis =
609 for (
unsigned int i = 0;
i < TIDW1Digis.size(); ++
i) {
614 std::vector<PGlobalDigi::SiStripDigi> TIDW2Digis =
617 for (
unsigned int i = 0;
i < TIDW2Digis.size(); ++
i) {
622 std::vector<PGlobalDigi::SiStripDigi> TIDW3Digis =
625 for (
unsigned int i = 0;
i < TIDW3Digis.size(); ++
i) {
630 std::vector<PGlobalDigi::SiStripDigi> TECW1Digis =
633 for (
unsigned int i = 0;
i < TECW1Digis.size(); ++
i) {
638 std::vector<PGlobalDigi::SiStripDigi> TECW2Digis =
641 for (
unsigned int i = 0;
i < TECW2Digis.size(); ++
i) {
646 std::vector<PGlobalDigi::SiStripDigi> TECW3Digis =
649 for (
unsigned int i = 0;
i < TECW3Digis.size(); ++
i) {
654 std::vector<PGlobalDigi::SiStripDigi> TECW4Digis =
657 for (
unsigned int i = 0;
i < TECW4Digis.size(); ++
i) {
662 std::vector<PGlobalDigi::SiStripDigi> TECW5Digis =
665 for (
unsigned int i = 0;
i < TECW5Digis.size(); ++
i) {
670 std::vector<PGlobalDigi::SiStripDigi> TECW6Digis =
673 for (
unsigned int i = 0;
i < TECW6Digis.size(); ++
i) {
678 std::vector<PGlobalDigi::SiStripDigi> TECW7Digis =
681 for (
unsigned int i = 0;
i < TECW7Digis.size(); ++
i) {
686 std::vector<PGlobalDigi::SiStripDigi> TECW8Digis =
689 for (
unsigned int i = 0;
i < TECW8Digis.size(); ++
i) {
695 std::vector<PGlobalDigi::SiPixelDigi> BRL1Digis =
698 for (
unsigned int i = 0;
i < BRL1Digis.size(); ++
i) {
704 std::vector<PGlobalDigi::SiPixelDigi> BRL2Digis =
707 for (
unsigned int i = 0;
i < BRL2Digis.size(); ++
i) {
713 std::vector<PGlobalDigi::SiPixelDigi> BRL3Digis =
716 for (
unsigned int i = 0;
i < BRL3Digis.size(); ++
i) {
722 std::vector<PGlobalDigi::SiPixelDigi> FWD1pDigis =
725 for (
unsigned int i = 0;
i < FWD1pDigis.size(); ++
i) {
731 std::vector<PGlobalDigi::SiPixelDigi> FWD1nDigis =
734 for (
unsigned int i = 0;
i < FWD1nDigis.size(); ++
i) {
740 std::vector<PGlobalDigi::SiPixelDigi> FWD2pDigis =
743 for (
unsigned int i = 0;
i < FWD2pDigis.size(); ++
i) {
749 std::vector<PGlobalDigi::SiPixelDigi> FWD2nDigis =
752 for (
unsigned int i = 0;
i < FWD2nDigis.size(); ++
i) {
759 std::vector<PGlobalDigi::DTDigi> MB1Digis =
762 for (
unsigned int i = 0;
i < MB1Digis.size(); ++
i) {
763 float layer = 4.0 * (MB1Digis[
i].SLAYER - 1.0) + MB1Digis[
i].LAYER;
769 std::vector<PGlobalDigi::DTDigi> MB2Digis =
772 for (
unsigned int i = 0;
i < MB2Digis.size(); ++
i) {
773 float layer = 4.0 * (MB2Digis[
i].SLAYER - 1.0) + MB2Digis[
i].LAYER;
779 std::vector<PGlobalDigi::DTDigi> MB3Digis =
782 for (
unsigned int i = 0;
i < MB3Digis.size(); ++
i) {
783 float layer = 4.0 * (MB3Digis[
i].SLAYER - 1.0) + MB3Digis[
i].LAYER;
789 std::vector<PGlobalDigi::DTDigi> MB4Digis =
792 for (
unsigned int i = 0;
i < MB4Digis.size(); ++
i) {
793 float layer = 4.0 * (MB4Digis[
i].SLAYER - 1.0) + MB4Digis[
i].LAYER;
800 std::vector<PGlobalDigi::CSCstripDigi> CSCstripDigis =
803 for (
unsigned int i = 0;
i < CSCstripDigis.size(); ++
i) {
808 std::vector<PGlobalDigi::CSCwireDigi> CSCwireDigis =
811 for (
unsigned int i = 0;
i < CSCwireDigis.size(); ++
i) {
816 <<
"Done gathering data from event.";
T getParameter(std::string const &) const
EventNumber_t event() const
T getUntrackedParameter(std::string const &, T const &) const
MonitorElement * mehHcaln[4]
MonitorElement * mehDtMuonLayer[4]
SiStripDigiVector getTOBL1Digis() const
MonitorElement * mehCSCWireTime
int getnTOBL1Digis() const
int getnTECW2Digis() const
int getnTIDW1Digis() const
DTDigiVector getMB1Digis() const
MonitorElement * mehEcalMultvAEE[2]
SiStripDigiVector getTIDW2Digis() const
int getnTECW4Digis() const
SiPixelDigiVector getBRL2Digis() const
int getnTIBL4Digis() const
int getnTECW5Digis() const
MonitorElement * bookProfile(Args &&...args)
bool getByToken(EDGetToken token, Handle< PROD > &result) const
SiPixelDigiVector getFWD1nDigis() const
SiPixelDigiVector getFWD2nDigis() const
SiStripDigiVector getTOBL4Digis() const
SiStripDigiVector getTIDW3Digis() const
SiPixelDigiVector getFWD1pDigis() const
unsigned long long EventNumber_t
MonitorElement * mehHcalAEESHE[4]
MonitorElement * mehSiPixelCol[7]
MonitorElement * mehHcalSHEvAEE[4]
int getnTECW6Digis() const
int getnHOCalDigis() const
MonitorElement * mehHcalSHE[4]
SiStripDigiVector getTECW1Digis() const
SiStripDigiVector getTIBL1Digis() const
SiPixelDigiVector getBRL3Digis() const
MonitorElement * mehCSCStripn
int getnFWD2nDigis() const
int getnTECW8Digis() const
MonitorElement * mehDtMuonTimevLayer[4]
GlobalDigisHistogrammer(const edm::ParameterSet &)
SiStripDigiVector getTECW2Digis() const
ECalDigiVector getEBCalDigis() const
DTDigiVector getMB3Digis() const
int getnHBCalDigis() const
MonitorElement * mehSiStripADC[19]
int getnFWD2pDigis() const
int getnEBCalDigis() const
DTDigiVector getMB4Digis() const
MonitorElement * mehEcalSHEvAEESHE[2]
void Fill(HcalDetId &id, double val, std::vector< TH2F > &depth)
SiStripDigiVector getTECW8Digis() const
MonitorElement * mehEcalSHE[2]
int getnESCalDigis() const
MonitorElement * mehHcalAEE[4]
MonitorElement * mehSiPixelRow[7]
MonitorElement * mehEcaln[3]
MonitorElement * mehCSCWiren
edm::InputTag GlobalDigisSrc_
int getnBRL3Digis() const
MonitorElement * book1D(Args &&...args)
HCalDigiVector getHFCalDigis() const
int getnBRL1Digis() const
int getnFWD1nDigis() const
MonitorElement * mehSiPixelADC[7]
int getnTECW1Digis() const
SiStripDigiVector getTECW4Digis() const
int getnTIDW2Digis() const
MonitorElement * mehSiPixeln[7]
int getnTIBL2Digis() const
int getnTOBL2Digis() const
int getnHFCalDigis() const
CSCwireDigiVector getCSCwireDigis() const
SiStripDigiVector getTIBL4Digis() const
int getnTECW7Digis() const
virtual ~GlobalDigisHistogrammer()
ESCalDigiVector getESCalDigis() const
void bookHistograms(DQMStore::IBooker &, edm::Run const &, edm::EventSetup const &) override
SiPixelDigiVector getFWD2pDigis() const
MonitorElement * mehDtMuonn[4]
void setCurrentFolder(const std::string &fullpath)
SiStripDigiVector getTECW7Digis() const
SiStripDigiVector getTOBL3Digis() const
SiStripDigiVector getTIBL2Digis() const
SiStripDigiVector getTIBL3Digis() const
MonitorElement * mehDtMuonTime[4]
SiStripDigiVector getTECW5Digis() const
MonitorElement * mehSiStripStrip[19]
int getnTIBL3Digis() const
int getnTIDW3Digis() const
ECalDigiVector getEECalDigis() const
int getnHECalDigis() const
int getnCSCwireDigis() const
MonitorElement * mehEScalADC[3]
HCalDigiVector getHBCalDigis() const
MonitorElement * mehEcalAEE[2]
int getnFWD1pDigis() const
MonitorElement * mehEcalMaxPos[2]
int getnTECW3Digis() const
HCalDigiVector getHECalDigis() const
edm::EDGetTokenT< PGlobalDigi > GlobalDigisSrc_Token_
MonitorElement * mehSiStripn[19]
MonitorElement * mehCSCStripADC
int getnEECalDigis() const
CSCstripDigiVector getCSCstripDigis() const
void setAxisTitle(const std::string &title, int axis=1)
set x-, y- or z-axis title (axis=1, 2, 3 respectively)
HCalDigiVector getHOCalDigis() const
virtual void analyze(const edm::Event &, const edm::EventSetup &) override
SiStripDigiVector getTOBL2Digis() const
SiStripDigiVector getTIDW1Digis() const
SiStripDigiVector getTECW6Digis() const
int getnCSCstripDigis() const
SiStripDigiVector getTECW3Digis() const
int getnTOBL3Digis() const
int getnTOBL4Digis() const
int getnBRL2Digis() const
int getnTIBL1Digis() const
SiPixelDigiVector getBRL1Digis() const
DTDigiVector getMB2Digis() const
void getAllStableProvenance(std::vector< StableProvenance const * > &provenances) const