#include <Validation/GlobalHits/interface/GlobalHitsProdHistStripper.h>
Definition at line 44 of file GlobalHitsProdHistStripper.h.
GlobalHitsProdHistStripper::GlobalHitsProdHistStripper | ( | const edm::ParameterSet & | iPSet | ) | [explicit] |
Definition at line 14 of file GlobalHitsProdHistStripper.cc.
References dbe, doOutput, fName, frequency, getAllProvenances, edm::ParameterSet::getParameter(), edm::ParameterSet::getUntrackedParameter(), outputfile, printProvenanceInfo, DQMStore::setVerbose(), DQMStore::showDirStructure(), verbosity, and vtxunit.
00017 : fName(""), verbosity(0), frequency(0), vtxunit(0), 00018 getAllProvenances(false), printProvenanceInfo(false), outputfile(""), 00019 count(0) 00020 { 00021 std::string MsgLoggerCat = 00022 "GlobalHitsProdHistStripper_GlobalHitsProdHistStripper"; 00023 00024 // get information from parameter set 00025 fName = iPSet.getUntrackedParameter<std::string>("Name"); 00026 verbosity = iPSet.getUntrackedParameter<int>("Verbosity"); 00027 frequency = iPSet.getUntrackedParameter<int>("Frequency"); 00028 vtxunit = iPSet.getUntrackedParameter<int>("VtxUnit"); 00029 outputfile = iPSet.getParameter<std::string>("OutputFile"); 00030 doOutput = iPSet.getParameter<bool>("DoOutput"); 00031 edm::ParameterSet m_Prov = 00032 iPSet.getParameter<edm::ParameterSet>("ProvenanceLookup"); 00033 getAllProvenances = 00034 m_Prov.getUntrackedParameter<bool>("GetAllProvenances"); 00035 printProvenanceInfo = 00036 m_Prov.getUntrackedParameter<bool>("PrintProvenanceInfo"); 00037 00038 00039 // use value of first digit to determine default output level (inclusive) 00040 // 0 is none, 1 is basic, 2 is fill output, 3 is gather output 00041 verbosity %= 10; 00042 00043 // get dqm info 00044 dbe = 0; 00045 dbe = edm::Service<DQMStore>().operator->(); 00046 if (dbe) { 00047 if (verbosity > 0 ) { 00048 dbe->setVerbose(1); 00049 } else { 00050 dbe->setVerbose(0); 00051 } 00052 } 00053 00054 if (dbe) { 00055 if (verbosity > 0 ) dbe->showDirStructure(); 00056 } 00057 00058 // print out Parameter Set information being used 00059 if (verbosity >= 0) { 00060 edm::LogInfo(MsgLoggerCat) 00061 << "\n===============================\n" 00062 << "Initialized as EDAnalyzer with parameter values:\n" 00063 << " Name = " << fName << "\n" 00064 << " Verbosity = " << verbosity << "\n" 00065 << " Frequency = " << frequency << "\n" 00066 << " VtxUnit = " << vtxunit << "\n" 00067 << " OutputFile = " << outputfile << "\n" 00068 << " DoOutput = " << doOutput << "\n" 00069 << " GetProv = " << getAllProvenances << "\n" 00070 << " PrintProv = " << printProvenanceInfo << "\n" 00071 << "===============================\n"; 00072 } 00073 00074 }
GlobalHitsProdHistStripper::~GlobalHitsProdHistStripper | ( | ) | [virtual] |
Definition at line 76 of file GlobalHitsProdHistStripper.cc.
References dbe, doOutput, outputfile, and DQMStore::save().
00077 { 00078 if (doOutput) 00079 if (outputfile.size() != 0 && dbe) dbe->save(outputfile); 00080 }
void GlobalHitsProdHistStripper::analyze | ( | const edm::Event & | iEvent, | |
const edm::EventSetup & | iSetup | |||
) | [virtual] |
void GlobalHitsProdHistStripper::beginJob | ( | const edm::EventSetup & | iSetup | ) | [virtual] |
void GlobalHitsProdHistStripper::beginRun | ( | const edm::Run & | iRun, | |
const edm::EventSetup & | iSetup | |||
) | [virtual] |
Reimplemented from edm::EDAnalyzer.
Definition at line 96 of file GlobalHitsProdHistStripper.cc.
References count, frequency, edm::Run::getAllProvenance(), getAllProvenances, i, printProvenanceInfo, edm::Run::run(), and verbosity.
00098 { 00099 std::string MsgLoggerCat = "GlobalHitsProdHistStripper_beginRun"; 00100 // keep track of number of runs processed 00101 ++count; 00102 00103 int nrun = iRun.run(); 00104 00105 if (verbosity > 0) { 00106 edm::LogInfo(MsgLoggerCat) 00107 << "Processing run " << nrun << " (" << count << " runs total)"; 00108 } else if (verbosity == 0) { 00109 if (nrun%frequency == 0 || count == 1) { 00110 edm::LogInfo(MsgLoggerCat) 00111 << "Processing run " << nrun << " (" << count << " runs total)"; 00112 } 00113 } 00114 00115 if (getAllProvenances) { 00116 00117 std::vector<const edm::Provenance*> AllProv; 00118 iRun.getAllProvenance(AllProv); 00119 00120 if (verbosity >= 0) 00121 edm::LogInfo(MsgLoggerCat) 00122 << "Number of Provenances = " << AllProv.size(); 00123 00124 if (printProvenanceInfo && (verbosity >= 0)) { 00125 TString eventout("\nProvenance info:\n"); 00126 00127 for (unsigned int i = 0; i < AllProv.size(); ++i) { 00128 eventout += "\n ******************************"; 00129 eventout += "\n Module : "; 00130 eventout += AllProv[i]->moduleLabel(); 00131 eventout += "\n ProductID : "; 00132 eventout += AllProv[i]->productID().id(); 00133 eventout += "\n ClassName : "; 00134 eventout += AllProv[i]->className(); 00135 eventout += "\n InstanceName : "; 00136 eventout += AllProv[i]->productInstanceName(); 00137 eventout += "\n BranchName : "; 00138 eventout += AllProv[i]->branchName(); 00139 } 00140 eventout += "\n ******************************\n"; 00141 edm::LogInfo(MsgLoggerCat) << eventout << "\n"; 00142 printProvenanceInfo = false; 00143 } 00144 getAllProvenances = false; 00145 } 00146 00147 return; 00148 }
Reimplemented from edm::EDAnalyzer.
Definition at line 87 of file GlobalHitsProdHistStripper.cc.
References count, and verbosity.
00088 { 00089 std::string MsgLoggerCat = "GlobalHitsProdHistStripper_endJob"; 00090 if (verbosity >= 0) 00091 edm::LogInfo(MsgLoggerCat) 00092 << "Terminating having processed " << count << " runs."; 00093 return; 00094 }
void GlobalHitsProdHistStripper::endRun | ( | const edm::Run & | iRun, | |
const edm::EventSetup & | iSetup | |||
) | [virtual] |
Reimplemented from edm::EDAnalyzer.
Definition at line 150 of file GlobalHitsProdHistStripper.cc.
References DQMStore::book1D(), dbe, edm::DataViewImpl::getManyByType(), i, edm::Handle< T >::isValid(), me, moduleLabel(), edm::Handle< T >::provenance(), DQMStore::setCurrentFolder(), value, and x.
00152 { 00153 std::string MsgLoggerCat = "GlobalHitsProdHistStripper_endRun"; 00154 00155 edm::Handle<TH1F> histogram1D; 00156 std::vector<edm::Handle<TH1F> > allhistogram1D; 00157 iRun.getManyByType(allhistogram1D); 00158 00159 me.resize(allhistogram1D.size()); 00160 00161 for (uint i = 0; i < allhistogram1D.size(); ++i) { 00162 histogram1D = allhistogram1D[i]; 00163 if(!histogram1D.isValid()) { 00164 edm::LogWarning(MsgLoggerCat) 00165 << "Invalid histogram extracted from event."; 00166 continue; 00167 } 00168 00169 me[i] = 0; 00170 00171 /* 00172 std::cout << "Extracting histogram: " << std::endl 00173 << " Module : " 00174 << (histogram1D.provenance()->product()).moduleLabel() 00175 << std::endl 00176 << " ProductID : " 00177 << (histogram1D.provenance()->product()).productID().id() 00178 << std::endl 00179 << " ClassName : " 00180 << (histogram1D.provenance()->product()).className() 00181 << std::endl 00182 << " InstanceName : " 00183 << (histogram1D.provenance()->product()).productInstanceName() 00184 << std::endl 00185 << " BranchName : " 00186 << (histogram1D.provenance()->product()).branchName() 00187 << std::endl; 00188 */ 00189 00190 if ((histogram1D.provenance()->product()).moduleLabel() 00191 != "globalhitsprodhist") continue; 00192 00193 std::string histname = histogram1D->GetName(); 00194 00195 std::string subhist1 = histname.substr(1,5); 00196 std::string subhist2 = histname.substr(1,4); 00197 00198 if (dbe) { 00199 if (subhist1 == "CaloE" || subhist1 == "CaloP") { 00200 dbe->setCurrentFolder("GlobalHitsV/ECal"); 00201 } else if (subhist1 == "CaloH") { 00202 dbe->setCurrentFolder("GlobalHitsV/HCal"); 00203 } else if (subhist1 == "Geant" || subhist2 == "MCG4" || 00204 subhist1 == "MCRGP") { 00205 dbe->setCurrentFolder("GlobalHitsV/MCGeant"); 00206 } else if (subhist2 == "Muon") { 00207 dbe->setCurrentFolder("GlobalHitsV/Muon"); 00208 } else if (subhist1 == "Track") { 00209 dbe->setCurrentFolder("GlobalHitsV/Tracker"); 00210 } 00211 00212 me[i] = dbe->book1D(histname,histogram1D->GetTitle(), 00213 histogram1D->GetXaxis()->GetNbins(), 00214 histogram1D->GetXaxis()->GetXmin(), 00215 histogram1D->GetXaxis()->GetXmax()); 00216 me[i]->setAxisTitle(histogram1D->GetXaxis()->GetTitle(),1); 00217 me[i]->setAxisTitle(histogram1D->GetYaxis()->GetTitle(),2); 00218 00219 } 00220 00221 std::string mename = me[i]->getName(); 00222 00223 //std::cout << "Extracting histogram " << histname 00224 // << " into MonitorElement " << mename 00225 // << std::endl; 00226 00227 for (Int_t x = 1; x <= histogram1D->GetXaxis()->GetNbins(); ++x) { 00228 Double_t binx = histogram1D->GetBinCenter(x); 00229 Double_t value = histogram1D->GetBinContent(x); 00230 me[i]->Fill(binx,value); 00231 } 00232 } 00233 return; 00234 }
unsigned int GlobalHitsProdHistStripper::count [private] |
Definition at line 161 of file GlobalHitsProdHistStripper.h.
Referenced by beginRun(), and endJob().
DQMStore* GlobalHitsProdHistStripper::dbe [private] |
Definition at line 70 of file GlobalHitsProdHistStripper.h.
Referenced by endRun(), GlobalHitsProdHistStripper(), and ~GlobalHitsProdHistStripper().
bool GlobalHitsProdHistStripper::doOutput [private] |
Definition at line 72 of file GlobalHitsProdHistStripper.h.
Referenced by GlobalHitsProdHistStripper(), and ~GlobalHitsProdHistStripper().
std::string GlobalHitsProdHistStripper::fName [private] |
Definition at line 62 of file GlobalHitsProdHistStripper.h.
Referenced by GlobalHitsProdHistStripper().
int GlobalHitsProdHistStripper::frequency [private] |
Definition at line 64 of file GlobalHitsProdHistStripper.h.
Referenced by beginRun(), and GlobalHitsProdHistStripper().
Definition at line 66 of file GlobalHitsProdHistStripper.h.
Referenced by beginRun(), and GlobalHitsProdHistStripper().
std::vector<MonitorElement*> GlobalHitsProdHistStripper::me [private] |
MonitorElement* GlobalHitsProdHistStripper::meCaloEcal[2] [private] |
Definition at line 90 of file GlobalHitsProdHistStripper.h.
MonitorElement* GlobalHitsProdHistStripper::meCaloEcalE[2] [private] |
Definition at line 91 of file GlobalHitsProdHistStripper.h.
Definition at line 94 of file GlobalHitsProdHistStripper.h.
Definition at line 93 of file GlobalHitsProdHistStripper.h.
MonitorElement* GlobalHitsProdHistStripper::meCaloEcalToF[2] [private] |
Definition at line 92 of file GlobalHitsProdHistStripper.h.
MonitorElement* GlobalHitsProdHistStripper::meCaloHcal[2] [private] |
Definition at line 105 of file GlobalHitsProdHistStripper.h.
MonitorElement* GlobalHitsProdHistStripper::meCaloHcalE[2] [private] |
Definition at line 106 of file GlobalHitsProdHistStripper.h.
Definition at line 109 of file GlobalHitsProdHistStripper.h.
Definition at line 108 of file GlobalHitsProdHistStripper.h.
MonitorElement* GlobalHitsProdHistStripper::meCaloHcalToF[2] [private] |
Definition at line 107 of file GlobalHitsProdHistStripper.h.
MonitorElement* GlobalHitsProdHistStripper::meCaloPreSh[2] [private] |
Definition at line 97 of file GlobalHitsProdHistStripper.h.
MonitorElement* GlobalHitsProdHistStripper::meCaloPreShE[2] [private] |
Definition at line 98 of file GlobalHitsProdHistStripper.h.
Definition at line 101 of file GlobalHitsProdHistStripper.h.
Definition at line 100 of file GlobalHitsProdHistStripper.h.
MonitorElement* GlobalHitsProdHistStripper::meCaloPreShToF[2] [private] |
Definition at line 99 of file GlobalHitsProdHistStripper.h.
Definition at line 86 of file GlobalHitsProdHistStripper.h.
Definition at line 85 of file GlobalHitsProdHistStripper.h.
MonitorElement* GlobalHitsProdHistStripper::meGeantVtxX[2] [private] |
Definition at line 81 of file GlobalHitsProdHistStripper.h.
MonitorElement* GlobalHitsProdHistStripper::meGeantVtxY[2] [private] |
Definition at line 82 of file GlobalHitsProdHistStripper.h.
MonitorElement* GlobalHitsProdHistStripper::meGeantVtxZ[2] [private] |
Definition at line 83 of file GlobalHitsProdHistStripper.h.
MonitorElement* GlobalHitsProdHistStripper::meMCG4Trk[2] [private] |
Definition at line 84 of file GlobalHitsProdHistStripper.h.
MonitorElement* GlobalHitsProdHistStripper::meMCG4Vtx[2] [private] |
Definition at line 80 of file GlobalHitsProdHistStripper.h.
MonitorElement* GlobalHitsProdHistStripper::meMCRGP[2] [private] |
Definition at line 79 of file GlobalHitsProdHistStripper.h.
MonitorElement* GlobalHitsProdHistStripper::meMuon[2] [private] |
Definition at line 137 of file GlobalHitsProdHistStripper.h.
MonitorElement* GlobalHitsProdHistStripper::meMuonCscToF[2] [private] |
Definition at line 149 of file GlobalHitsProdHistStripper.h.
Definition at line 150 of file GlobalHitsProdHistStripper.h.
Definition at line 145 of file GlobalHitsProdHistStripper.h.
MonitorElement* GlobalHitsProdHistStripper::meMuonDtToF[2] [private] |
Definition at line 144 of file GlobalHitsProdHistStripper.h.
Definition at line 139 of file GlobalHitsProdHistStripper.h.
Definition at line 138 of file GlobalHitsProdHistStripper.h.
Definition at line 158 of file GlobalHitsProdHistStripper.h.
MonitorElement* GlobalHitsProdHistStripper::meMuonRpcBToF[2] [private] |
Definition at line 157 of file GlobalHitsProdHistStripper.h.
MonitorElement* GlobalHitsProdHistStripper::meMuonRpcFToF[2] [private] |
Definition at line 155 of file GlobalHitsProdHistStripper.h.
Definition at line 156 of file GlobalHitsProdHistStripper.h.
MonitorElement* GlobalHitsProdHistStripper::meTrackerPx[2] [private] |
Definition at line 116 of file GlobalHitsProdHistStripper.h.
Definition at line 120 of file GlobalHitsProdHistStripper.h.
Definition at line 119 of file GlobalHitsProdHistStripper.h.
Definition at line 118 of file GlobalHitsProdHistStripper.h.
Definition at line 121 of file GlobalHitsProdHistStripper.h.
Definition at line 122 of file GlobalHitsProdHistStripper.h.
Definition at line 117 of file GlobalHitsProdHistStripper.h.
MonitorElement* GlobalHitsProdHistStripper::meTrackerSi[2] [private] |
Definition at line 128 of file GlobalHitsProdHistStripper.h.
Definition at line 132 of file GlobalHitsProdHistStripper.h.
Definition at line 131 of file GlobalHitsProdHistStripper.h.
Definition at line 130 of file GlobalHitsProdHistStripper.h.
Definition at line 133 of file GlobalHitsProdHistStripper.h.
Definition at line 134 of file GlobalHitsProdHistStripper.h.
Definition at line 129 of file GlobalHitsProdHistStripper.h.
std::map<std::string,MonitorElement*> GlobalHitsProdHistStripper::monitorElements [private] |
Definition at line 74 of file GlobalHitsProdHistStripper.h.
std::string GlobalHitsProdHistStripper::outputfile [private] |
Definition at line 71 of file GlobalHitsProdHistStripper.h.
Referenced by GlobalHitsProdHistStripper(), and ~GlobalHitsProdHistStripper().
Definition at line 67 of file GlobalHitsProdHistStripper.h.
Referenced by beginRun(), and GlobalHitsProdHistStripper().
int GlobalHitsProdHistStripper::verbosity [private] |
Definition at line 63 of file GlobalHitsProdHistStripper.h.
Referenced by beginRun(), endJob(), and GlobalHitsProdHistStripper().
int GlobalHitsProdHistStripper::vtxunit [private] |
Definition at line 65 of file GlobalHitsProdHistStripper.h.
Referenced by GlobalHitsProdHistStripper().