16 getAllProvenances(
false),
17 printProvenanceInfo(
false),
20 std::string MsgLoggerCat =
"GlobalHitsProdHistStripper_GlobalHitsProdHistStripper";
48 edm::LogInfo(MsgLoggerCat) <<
"\n===============================\n" 49 <<
"Initialized as EDAnalyzer with parameter values:\n" 50 <<
" Name = " <<
fName <<
"\n" 51 <<
" Verbosity = " << verbosity <<
"\n" 52 <<
" Frequency = " << frequency <<
"\n" 53 <<
" VtxUnit = " << vtxunit <<
"\n" 54 <<
" OutputFile = " << outputfile <<
"\n" 55 <<
" DoOutput = " << doOutput <<
"\n" 56 <<
" GetProv = " << getAllProvenances <<
"\n" 57 <<
" PrintProv = " << printProvenanceInfo <<
"\n" 58 <<
"===============================\n";
71 std::string MsgLoggerCat =
"GlobalHitsProdHistStripper_endJob";
73 edm::LogInfo(MsgLoggerCat) <<
"Terminating having processed " <<
count <<
" runs.";
78 std::string MsgLoggerCat =
"GlobalHitsProdHistStripper_beginRun";
82 int nrun = iRun.
run();
85 edm::LogInfo(MsgLoggerCat) <<
"Processing run " << nrun <<
" (" <<
count <<
" runs total)";
88 edm::LogInfo(MsgLoggerCat) <<
"Processing run " << nrun <<
" (" <<
count <<
" runs total)";
93 std::vector<const edm::StableProvenance *> AllProv;
97 edm::LogInfo(MsgLoggerCat) <<
"Number of Provenances = " << AllProv.size();
100 TString eventout(
"\nProvenance info:\n");
102 for (
unsigned int i = 0;
i < AllProv.size(); ++
i) {
103 eventout +=
"\n ******************************";
104 eventout +=
"\n Module : ";
105 eventout += AllProv[
i]->moduleLabel();
106 eventout +=
"\n ProductID : ";
107 eventout += AllProv[
i]->productID().id();
108 eventout +=
"\n ClassName : ";
109 eventout += AllProv[
i]->className();
110 eventout +=
"\n InstanceName : ";
111 eventout += AllProv[
i]->productInstanceName();
112 eventout +=
"\n BranchName : ";
113 eventout += AllProv[
i]->branchName();
115 eventout +=
"\n ******************************\n";
126 std::string MsgLoggerCat =
"GlobalHitsProdHistStripper_endRun";
129 std::vector<edm::Handle<TH1F>> allhistogram1D;
132 me.resize(allhistogram1D.size());
134 for (
uint i = 0;
i < allhistogram1D.size(); ++
i) {
135 histogram1D = allhistogram1D[
i];
137 edm::LogWarning(MsgLoggerCat) <<
"Invalid histogram extracted from event.";
173 if (subhist1 ==
"CaloE" || subhist1 ==
"CaloP") {
175 }
else if (subhist1 ==
"CaloH") {
177 }
else if (subhist1 ==
"Geant" || subhist2 ==
"MCG4" || subhist1 ==
"MCRGP") {
179 }
else if (subhist2 ==
"Muon") {
181 }
else if (subhist1 ==
"Track") {
186 histogram1D->GetTitle(),
187 histogram1D->GetXaxis()->GetNbins(),
188 histogram1D->GetXaxis()->GetXmin(),
189 histogram1D->GetXaxis()->GetXmax());
190 me[
i]->setAxisTitle(histogram1D->GetXaxis()->GetTitle(), 1);
191 me[
i]->setAxisTitle(histogram1D->GetYaxis()->GetTitle(), 2);
200 for (Int_t
x = 1;
x <= histogram1D->GetXaxis()->GetNbins(); ++
x) {
201 Double_t binx = histogram1D->GetBinCenter(
x);
202 Double_t
value = histogram1D->GetBinContent(
x);
203 me[
i]->Fill(binx, value);
T getParameter(std::string const &) const
T getUntrackedParameter(std::string const &, T const &) const
void getAllStableProvenance(std::vector< StableProvenance const * > &provenances) const
GlobalHitsProdHistStripper(const edm::ParameterSet &)
std::vector< MonitorElement * > me
void getManyByType(std::vector< Handle< PROD >> &results) const
void beginRun(const edm::Run &, const edm::EventSetup &) override
void setCurrentFolder(std::string const &fullpath)
void showDirStructure() const
MonitorElement * book1D(char_string const &name, char_string const &title, int const nchX, double const lowX, double const highX)
Book 1D histogram.
void beginJob(void) override
~GlobalHitsProdHistStripper() override
void analyze(const edm::Event &, const edm::EventSetup &) override
void endRun(const edm::Run &, const edm::EventSetup &) override
void save(std::string const &filename, std::string const &path="", std::string const &pattern="", std::string const &rewrite="", uint32_t run=0, uint32_t lumi=0, SaveReferenceTag ref=SaveWithReference, int minStatus=dqm::qstatus::STATUS_OK, std::string const &fileupdate="RECREATE")
Provenance const * provenance() const