#include <SiPixelActionExecutor.h>
Public Member Functions | |
void | bookDeviations (DQMStore *bei) |
void | bookEfficiency (DQMStore *bei) |
void | bookOccupancyPlots (DQMStore *bei, bool hiRes, bool isbarrel) |
void | bookOccupancyPlots (DQMStore *bei, bool hiRes) |
void | bookTrackerMaps (DQMStore *bei, std::string name) |
void | checkQTestResults (DQMStore *bei) |
void | createEfficiency (DQMStore *bei) |
void | createLayout (DQMStore *bei) |
void | createMaps (DQMStore *bei, std::string type, std::string name, funcType ff) |
void | createOccupancy (DQMStore *bei) |
void | createSummary (DQMStore *bei) |
void | createTkMap (DQMStore *bei, std::string mEName, std::string theTKType) |
void | dumpBarrelModIds (DQMStore *bei, edm::EventSetup const &eSetup) |
void | dumpBarrelRefValues (DQMStore *bei, edm::EventSetup const &eSetup) |
void | dumpEndcapModIds (DQMStore *bei, edm::EventSetup const &eSetup) |
void | dumpEndcapRefValues (DQMStore *bei, edm::EventSetup const &eSetup) |
void | dumpModIds (DQMStore *bei, edm::EventSetup const &eSetup) |
void | dumpRefValues (DQMStore *bei, edm::EventSetup const &eSetup) |
void | fillEfficiency (DQMStore *bei, bool isbarrel) |
void | fillLayout (DQMStore *bei) |
int | getTkMapMENames (std::vector< std::string > &names) |
bool | readConfiguration (int &tkmap_freq, int &sum_barrel_freq, int &sum_endcap_freq, int &sum_grandbarrel_freq, int &sum_grandendcap_freq, int &message_limit, int &source_type, int &calib_type) |
void | readConfiguration () |
bool | readConfiguration (int &tkmap_freq, int &summary_freq) |
void | setupQTests (DQMStore *bei) |
SiPixelActionExecutor (bool offlineXMLfile, bool Tier0Flag) | |
~SiPixelActionExecutor () | |
Private Member Functions | |
int | createMap (Double_t map[][NLev2][NLev3][NLev4], std::string type, DQMStore *bei, funcType ff, bool isBarrel) |
void | fillDeviations (DQMStore *bei) |
void | fillFEDErrorSummary (DQMStore *bei, std::string dir_name, std::vector< std::string > &me_names) |
void | fillGrandBarrelSummaryHistos (DQMStore *bei, std::vector< std::string > &me_names) |
void | fillGrandEndcapSummaryHistos (DQMStore *bei, std::vector< std::string > &me_names) |
void | fillOccupancy (DQMStore *bei, bool isbarrel) |
void | fillSummary (DQMStore *bei, std::string dir_name, std::vector< std::string > &me_names, bool isbarrel) |
void | GetBladeSubdirs (DQMStore *bei, std::vector< std::string > &blade_subdirs) |
void | getData (Double_t map[][NLev2][NLev3][NLev4], std::string type, DQMStore *bei, funcType ff, Int_t i, Int_t j, Int_t k, Int_t l) |
MonitorElement * | getFEDSummaryME (DQMStore *bei, std::string me_name) |
void | getGrandSummaryME (DQMStore *bei, int nbin, std::string &me_name, std::vector< MonitorElement * > &mes) |
MonitorElement * | getSummaryME (DQMStore *bei, std::string me_name) |
Double_t | mapMax (const Double_t map[][NLev2][NLev3][NLev4], bool isBarrel) |
Double_t | mapMin (const Double_t map[][NLev2][NLev3][NLev4], bool isBarrel) |
void | prephistosB (MonitorElement *me[NCyl], DQMStore *bei, const Double_t map[][NLev2][NLev3][NLev4], std::string name, Double_t min, Double_t max) |
void | prephistosE (MonitorElement *me[NCyl], DQMStore *bei, const Double_t map[][NLev2][NLev3][NLev4], std::string name, Double_t min, Double_t max) |
Private Attributes | |
int | calib_type_ |
SiPixelConfigParser * | configParser_ |
SiPixelConfigWriter * | configWriter_ |
MonitorElement * | DEV_adc_Barrel |
MonitorElement * | DEV_adc_Endcap |
MonitorElement * | DEV_charge_Barrel |
MonitorElement * | DEV_charge_Endcap |
MonitorElement * | DEV_nclusters_Barrel |
MonitorElement * | DEV_nclusters_Endcap |
MonitorElement * | DEV_ndigis_Barrel |
MonitorElement * | DEV_ndigis_Endcap |
MonitorElement * | DEV_size_Barrel |
MonitorElement * | DEV_size_Endcap |
MonitorElement * | HitEfficiency_Dm1 |
MonitorElement * | HitEfficiency_Dm2 |
MonitorElement * | HitEfficiency_Dp1 |
MonitorElement * | HitEfficiency_Dp2 |
MonitorElement * | HitEfficiency_L1 |
MonitorElement * | HitEfficiency_L2 |
MonitorElement * | HitEfficiency_L3 |
int | message_limit_ |
int | ndet_ |
MonitorElement * | OccupancyMap |
bool | offlineXMLfile_ |
MonitorElement * | PixelOccupancyMap |
QTestHandle * | qtHandler_ |
int | source_type_ |
std::vector< std::string > | summaryMENames |
TH2F * | temp_1x2 |
TH2F * | temp_1x5 |
TH2F * | temp_2x3 |
TH2F * | temp_2x4 |
TH2F * | temp_2x5 |
TH2F * | temp_H |
edm::ESHandle < SiPixelFedCablingMap > | theCablingMap |
bool | Tier0Flag_ |
std::vector< std::string > | tkMapMENames |
Definition at line 47 of file SiPixelActionExecutor.h.
SiPixelActionExecutor::SiPixelActionExecutor | ( | bool | offlineXMLfile, |
bool | Tier0Flag | ||
) |
Definition at line 35 of file SiPixelActionExecutor.cc.
References configParser_, configWriter_, ndet_, and qtHandler_.
: offlineXMLfile_(offlineXMLfile), Tier0Flag_(Tier0Flag) { edm::LogInfo("SiPixelActionExecutor") << " Creating SiPixelActionExecutor " << "\n" ; configParser_ = 0; configWriter_ = 0; qtHandler_ = 0; ndet_ = 0; //collationDone = false; }
SiPixelActionExecutor::~SiPixelActionExecutor | ( | ) |
Definition at line 51 of file SiPixelActionExecutor.cc.
References configParser_, configWriter_, and qtHandler_.
{ edm::LogInfo("SiPixelActionExecutor") << " Deleting SiPixelActionExecutor " << "\n" ; if (configParser_) delete configParser_; if (configWriter_) delete configWriter_; if (qtHandler_) delete qtHandler_; }
void SiPixelActionExecutor::bookDeviations | ( | DQMStore * | bei | ) |
Definition at line 232 of file SiPixelActionExecutor.cc.
References DQMStore::book1D(), DQMStore::cd(), DEV_adc_Barrel, DEV_adc_Endcap, DEV_charge_Barrel, DEV_charge_Endcap, DEV_nclusters_Barrel, DEV_nclusters_Endcap, DEV_ndigis_Barrel, DEV_ndigis_Endcap, DEV_size_Barrel, DEV_size_Endcap, and DQMStore::setCurrentFolder().
Referenced by SiPixelEDAClient::beginRun().
{ bei->cd(); bei->setCurrentFolder("Pixel/Barrel"); DEV_adc_Barrel = bei->book1D("DEV_adc_Barrel","Deviation from reference;Module;<adc_ref>-<adc>",768,0.,768.); DEV_ndigis_Barrel = bei->book1D("DEV_ndigis_Barrel","Deviation from reference;Module;<ndigis_ref>-<ndigis>",768,0.,768.); DEV_charge_Barrel = bei->book1D("DEV_charge_Barrel","Deviation from reference;Module;<charge_ref>-<charge>",768,0.,768.); DEV_nclusters_Barrel = bei->book1D("DEV_nclusters_Barrel","Deviation from reference;Module;<nclusters_ref>-<nclusters>",768,0.,768.); DEV_size_Barrel = bei->book1D("DEV_size_Barrel","Deviation from reference;Module;<size_ref>-<size>",768,0.,768.); bei->cd(); bei->setCurrentFolder("Pixel/Endcap"); DEV_adc_Endcap = bei->book1D("DEV_adc_Endcap","Deviation from reference;Module;<adc_ref>-<adc>",672,0.,672.); DEV_ndigis_Endcap = bei->book1D("DEV_ndigis_Endcap","Deviation from reference;Module;<ndigis_ref>-<ndigis>",672,0.,672.); DEV_charge_Endcap = bei->book1D("DEV_charge_Endcap","Deviation from reference;Module;<charge_ref>-<charge>",672,0.,672.); DEV_nclusters_Endcap = bei->book1D("DEV_nclusters_Endcap","Deviation from reference;Module;<nclusters_ref>-<nclusters>",672,0.,672.); DEV_size_Endcap = bei->book1D("DEV_size_Endcap","Deviation from reference;Module;<size_ref>-<size>",672,0.,672.); bei->cd(); }
void SiPixelActionExecutor::bookEfficiency | ( | DQMStore * | bei | ) |
Definition at line 2269 of file SiPixelActionExecutor.cc.
References DQMStore::book2D(), DQMStore::cd(), HitEfficiency_Dm1, HitEfficiency_Dm2, HitEfficiency_Dp1, HitEfficiency_Dp2, HitEfficiency_L1, HitEfficiency_L2, HitEfficiency_L3, DQMStore::setCurrentFolder(), and Tier0Flag_.
Referenced by SiPixelEDAClient::beginRun().
{ // Barrel bei->cd(); bei->setCurrentFolder("Pixel/Barrel"); if(Tier0Flag_){ HitEfficiency_L1 = bei->book2D("HitEfficiency_L1","Hit Efficiency in Barrel_Layer1;z-side;Ladder",2,-1.,1.,20,-10.,10.); HitEfficiency_L2 = bei->book2D("HitEfficiency_L2","Hit Efficiency in Barrel_Layer2;z-side;Ladder",2,-1.,1.,32,-16.,16.); HitEfficiency_L3 = bei->book2D("HitEfficiency_L3","Hit Efficiency in Barrel_Layer3;z-side;Ladder",2,-1.,1.,44,-22.,22.); }else{ HitEfficiency_L1 = bei->book2D("HitEfficiency_L1","Hit Efficiency in Barrel_Layer1;Module;Ladder",8,-4.,4.,20,-10.,10.); HitEfficiency_L2 = bei->book2D("HitEfficiency_L2","Hit Efficiency in Barrel_Layer2;Module;Ladder",8,-4.,4.,32,-16.,16.); HitEfficiency_L3 = bei->book2D("HitEfficiency_L3","Hit Efficiency in Barrel_Layer3;Module;Ladder",8,-4.,4.,44,-22.,22.); } // Endcap bei->cd(); bei->setCurrentFolder("Pixel/Endcap"); if(Tier0Flag_){ HitEfficiency_Dp1 = bei->book2D("HitEfficiency_Dp1","Hit Efficiency in Endcap_Disk_p1;Blades;",24,-12.,12.,1,0.,1.); HitEfficiency_Dp2 = bei->book2D("HitEfficiency_Dp2","Hit Efficiency in Endcap_Disk_p2;Blades;",24,-12.,12.,1,0.,1.); HitEfficiency_Dm1 = bei->book2D("HitEfficiency_Dm1","Hit Efficiency in Endcap_Disk_m1;Blades;",24,-12.,12.,1,0.,1.); HitEfficiency_Dm2 = bei->book2D("HitEfficiency_Dm2","Hit Efficiency in Endcap_Disk_m2;Blades;",24,-12.,12.,1,0.,1.); }else{ HitEfficiency_Dp1 = bei->book2D("HitEfficiency_Dp1","Hit Efficiency in Endcap_Disk_p1;Blades;Modules",24,-12.,12.,7,1.,8.); HitEfficiency_Dp2 = bei->book2D("HitEfficiency_Dp2","Hit Efficiency in Endcap_Disk_p2;Blades;Modules",24,-12.,12.,7,1.,8.); HitEfficiency_Dm1 = bei->book2D("HitEfficiency_Dm1","Hit Efficiency in Endcap_Disk_m1;Blades;Modules",24,-12.,12.,7,1.,8.); HitEfficiency_Dm2 = bei->book2D("HitEfficiency_Dm2","Hit Efficiency in Endcap_Disk_m2;Blades;Modules",24,-12.,12.,7,1.,8.); } }
void SiPixelActionExecutor::bookOccupancyPlots | ( | DQMStore * | bei, |
bool | hiRes, | ||
bool | isbarrel | ||
) |
Definition at line 1476 of file SiPixelActionExecutor.cc.
References DQMStore::book2D(), DQMStore::cd(), DQMStore::getSubdirs(), DQMStore::goUp(), OccupancyMap, MonitorElement::setAxisTitle(), and Tier0Flag_.
Referenced by SiPixelEDAClient::beginRun(), and bookOccupancyPlots().
{ if(Tier0Flag_) return; vector<string> subdirs = bei->getSubdirs(); for (vector<string>::const_iterator it = subdirs.begin(); it != subdirs.end(); it++) { if(isbarrel && (*it).find("Barrel")==string::npos) continue; if(!isbarrel && (*it).find("Endcap")==string::npos) continue; if((*it).find("Module_")!=string::npos) continue; if((*it).find("Panel_")!=string::npos) continue; if((*it).find("Ladder_")!=string::npos) continue; if((*it).find("Blade_")!=string::npos) continue; if((*it).find("Layer_")!=string::npos) continue; if((*it).find("Disk_")!=string::npos) continue; bei->cd(*it); bookOccupancyPlots(bei, hiRes, isbarrel); if(!hiRes){ //occupancyprinting cout<<"booking low res barrel occ plot now!"<<endl; OccupancyMap = bei->book2D((isbarrel?"barrelOccupancyMap":"endcapOccupancyMap"),"Barrel Digi Occupancy Map (4 pix per bin)",isbarrel?208:130,0.,isbarrel?416.:260.,80,0.,160.); }else{ //occupancyprinting cout<<"booking high res barrel occ plot now!"<<endl; OccupancyMap = bei->book2D((isbarrel?"barrelOccupancyMap":"endcapOccupancyMap"),"Barrel Digi Occupancy Map (1 pix per bin)",isbarrel?416:260,0.,isbarrel?416.:260.,160,0.,160.); } OccupancyMap->setAxisTitle("Columns",1); OccupancyMap->setAxisTitle("Rows",2); bei->goUp(); } }
void SiPixelActionExecutor::bookOccupancyPlots | ( | DQMStore * | bei, |
bool | hiRes | ||
) |
Definition at line 1511 of file SiPixelActionExecutor.cc.
References bookOccupancyPlots(), DQMStore::cd(), DQMStore::setCurrentFolder(), and Tier0Flag_.
{ if(Tier0Flag_) return; // Barrel bei->cd(); bei->setCurrentFolder("Pixel"); this->bookOccupancyPlots(bei, hiRes, true); // Endcap bei->cd(); bei->setCurrentFolder("Pixel"); this->bookOccupancyPlots(bei, hiRes, false); }
void SiPixelActionExecutor::bookTrackerMaps | ( | DQMStore * | bei, |
std::string | name | ||
) |
Definition at line 1597 of file SiPixelActionExecutor.cc.
References DQMStore::book2D(), NCyl, AlCaHLTBitMon_ParallelJobs::p, DQMStore::setCurrentFolder(), and AlCaHLTBitMon_QueryRunRegistry::string.
{ bei->setCurrentFolder("Pixel/Barrel"); std::string partB[] = { "Layer_1", "Layer_2", "Layer_3"}; bei->book2D("TRKMAP_" + name + "_" + partB[0], "TRKMAP_" + name + "_" + partB[0], 20, 1., 21., 8, 1., 9.); bei->book2D("TRKMAP_" + name + "_" + partB[1], "TRKMAP_" + name + "_" + partB[1], 32, 1., 33., 8, 1., 9.); bei->book2D("TRKMAP_" + name + "_" + partB[2], "TRKMAP_" + name + "_" + partB[2], 44, 1., 45., 8, 1., 9.); bei->setCurrentFolder("Pixel/Endcap"); std::string partE[] = { "Disc_1_M", "Disc_2_M", "Disc_1_P", "Disc_2_P" }; for(Int_t p = 0 ; p < NCyl ; p++) bei->book2D("TRKMAP_" + name + "_" + partE[p], "TRKMAP_" + name + "_" + partE[p], 24, 1., 25., 7, 1., 8.); }
void SiPixelActionExecutor::checkQTestResults | ( | DQMStore * | bei | ) |
Definition at line 1905 of file SiPixelActionExecutor.cc.
References calib_type_, configParser_, relmon_rootfiles_spy::contents, benchmark_cfg::errors, DQMStore::get(), SiPixelConfigParser::getCalibType(), DQMStore::getContents(), MonitorElement::getMean(), SiPixelUtility::getMEList(), SiPixelConfigParser::getMessageLimitForQTests(), MonitorElement::getName(), MonitorElement::getQErrors(), MonitorElement::getQWarnings(), MonitorElement::getRMS(), MonitorElement::hasWarning(), LogDebug, message_limit_, DQMStore::pwd(), MonitorElement::runQTests(), AlCaHLTBitMon_QueryRunRegistry::string, and benchmark_cfg::warnings.
Referenced by SiPixelWebInterface::performAction().
{ //printing cout<<"Entering SiPixelActionExecutor::checkQTestResults..."<<endl; int messageCounter=0; string currDir = bei->pwd(); vector<string> contentVec; bei->getContents(contentVec); configParser_->getCalibType(calib_type_); // cout << calib_type_ << endl; configParser_->getMessageLimitForQTests(message_limit_); for (vector<string>::iterator it = contentVec.begin(); it != contentVec.end(); it++) { vector<string> contents; int nval = SiPixelUtility::getMEList((*it), contents); if (nval == 0) continue; for (vector<string>::const_iterator im = contents.begin(); im != contents.end(); im++) { MonitorElement * me = bei->get((*im)); if (me) { me->runQTests(); // get all warnings associated with me vector<QReport*> warnings = me->getQWarnings(); for(vector<QReport *>::const_iterator wi = warnings.begin(); wi != warnings.end(); ++wi) { messageCounter++; if(messageCounter<message_limit_) { //edm::LogWarning("SiPixelQualityTester::checkTestResults") << // " *** Warning for " << me->getName() << // "," << (*wi)->getMessage() << "\n"; edm::LogWarning("SiPixelActionExecutor::checkQTestResults") << " *** Warning for " << me->getName() << "," << (*wi)->getMessage() << " " << me->getMean() << " " << me->getRMS() << me->hasWarning() << endl; } } warnings=vector<QReport*>(); // get all errors associated with me vector<QReport *> errors = me->getQErrors(); for(vector<QReport *>::const_iterator ei = errors.begin(); ei != errors.end(); ++ei) { float empty_mean = me->getMean(); float empty_rms = me->getRMS(); if((empty_mean != 0 && empty_rms != 0) || (calib_type_ == 0)){ messageCounter++; if(messageCounter<=message_limit_) { //edm::LogError("SiPixelQualityTester::checkTestResults") << // " *** Error for " << me->getName() << // "," << (*ei)->getMessage() << "\n"; edm::LogWarning("SiPixelActionExecutor::checkQTestResults") << " *** Error for " << me->getName() << "," << (*ei)->getMessage() << " " << me->getMean() << " " << me->getRMS() << endl; } } } errors=vector<QReport*>(); } me=0; } nval=int(); contents=vector<string>(); } LogDebug("SiPixelActionExecutor::checkQTestResults") <<"messageCounter: "<<messageCounter<<" , message_limit: "<<message_limit_<<endl; // if (messageCounter>=message_limit_) // edm::LogWarning("SiPixelActionExecutor::checkQTestResults") << "WARNING: too many QTest failures! Giving up after "<<message_limit_<<" messages."<<endl; contentVec=vector<string>(); currDir=string(); messageCounter=int(); //printing cout<<"...leaving SiPixelActionExecutor::checkQTestResults!"<<endl; }
void SiPixelActionExecutor::createEfficiency | ( | DQMStore * | bei | ) |
Definition at line 2300 of file SiPixelActionExecutor.cc.
References DQMStore::cd(), and fillEfficiency().
Referenced by SiPixelEDAClient::endLuminosityBlock(), and SiPixelEDAClient::endRun().
{ //std::cout<<"entering SiPixelActionExecutor::createEfficiency..."<<std::endl; bei->cd(); fillEfficiency(bei, true); // Barrel bei->cd(); fillEfficiency(bei, false); // Endcap bei->cd(); //std::cout<<"leaving SiPixelActionExecutor::createEfficiency..."<<std::endl; }
void SiPixelActionExecutor::createLayout | ( | DQMStore * | bei | ) |
Definition at line 1978 of file SiPixelActionExecutor.cc.
References DQMStore::cd(), configWriter_, SiPixelConfigWriter::createLayout(), SiPixelConfigWriter::createRow(), fillLayout(), DQMStore::getSubdirs(), DQMStore::goUp(), SiPixelConfigWriter::init(), mergeVDriftHistosByStation::name, and DQMStore::pwd().
{ if (configWriter_ == 0) { configWriter_ = new SiPixelConfigWriter(); if (!configWriter_->init()) return; } string currDir = bei->pwd(); if (currDir.find("Layer") != string::npos) { string name = "Default"; configWriter_->createLayout(name); configWriter_->createRow(); fillLayout(bei); } else { vector<string> subdirs = bei->getSubdirs(); for (vector<string>::const_iterator it = subdirs.begin(); it != subdirs.end(); it++) { bei->cd(*it); createLayout(bei); bei->goUp(); } } }
int SiPixelActionExecutor::createMap | ( | Double_t | map[][NLev2][NLev3][NLev4], |
std::string | type, | ||
DQMStore * | bei, | ||
funcType | ff, | ||
bool | isBarrel | ||
) | [private] |
Definition at line 1652 of file SiPixelActionExecutor.cc.
References DQMStore::cd(), getData(), DQMStore::getSubdirs(), i, j, gen::k, prof2calltree::l, NLev4, and Tier0Flag_.
Referenced by createMaps().
{ // cout << "Starting with SiPixelActionExecutor::createMap" << endl; //int createMap(Double_t map[][NLev2][NLev3][NLev4], TString type, TDirectoryFile* dirMain, funcType ff){ vector<string> dirLev1 = bei->getSubdirs(); Int_t i = 0; for (vector<string>::const_iterator it = dirLev1.begin(); it != dirLev1.end(); it++) // goes over HalfCylinders in Endcap and over Shells in Barrel { //cout << "Current Directory: " << *it << endl; bei->cd(*it); vector<string> dirLev2 = bei->getSubdirs(); Int_t j = 0; for (vector<string>::const_iterator it2 = dirLev2.begin(); it2 != dirLev2.end(); it2++) // goes over Disks in Endcap and over Layers in Barrel { //cout << "Current Directory: " << *it2 << endl; bei->cd(*it2); Int_t k = 0; vector<string> dirLev3 = bei->getSubdirs(); for (vector<string>::const_iterator it3 = dirLev3.begin(); it3 != dirLev3.end(); it3++) // goes over Blades in Endcap and over Ladders in Barrel { //cout << "Current Directory: " << *it3 << endl; bei->cd(*it3); if(Tier0Flag_) for (Int_t l = 0; l < NLev4; l++) getData(map, type, bei, ff, i, j, k, l); else { Int_t l = 0; vector<string> dirLev4 = bei->getSubdirs(); for (vector<string>::const_iterator it4 = dirLev4.begin(); it4 != dirLev4.end(); it4++) { // cout << "Current Directory: " << *it4 << endl; bei->cd(*it4); if (isBarrel) getData(map, type, bei, ff, i, j, k, l++); else { vector<string> dirLev5 = bei->getSubdirs(); for (vector<string>::const_iterator it5 = dirLev5.begin(); it5 != dirLev5.end(); it5++) { // cout << "Current Directory: " << *it5 << endl; bei->cd(*it5); getData(map, type, bei, ff, i, j, k, l++); } } } } k++; } j++; } i++; } // cout << "Done with SiPixelActionExecutor::createMap" << endl; return 0; }
void SiPixelActionExecutor::createMaps | ( | DQMStore * | bei, |
std::string | type, | ||
std::string | name, | ||
funcType | ff | ||
) |
Definition at line 1612 of file SiPixelActionExecutor.cc.
References createMap(), mapMax(), mapMin(), max(), min, NCyl, NLayer, NLev1, NLev2, NLev3, NLev4, prephistosB(), prephistosE(), and DQMStore::setCurrentFolder().
{ // cout << "Starting with SiPixelActionExecutor::createMaps" << endl; Double_t mapB[NLev1][NLev2][NLev3][NLev4]; bei->setCurrentFolder("Pixel/Barrel/"); createMap(mapB, type, bei, ff, true); Double_t minB = mapMin(mapB, true); Double_t maxB = mapMax(mapB, true); Double_t mapE[NLev1][NLev2][NLev3][NLev4]; bei->setCurrentFolder("Pixel/Endcap/"); createMap(mapE, type, bei, ff, false); Double_t minE = mapMin(mapE, false); Double_t maxE = mapMax(mapE, false); Double_t min = minE<=minB?minE:minB; Double_t max = maxE>=maxB?maxE:maxB; if(!min) min = -0.01; // prephistosB(histB, mapB, type, min, max); // prephistosE(histE, mapE, type, min, max); MonitorElement* meB[NLayer]; // TH2F* histB[NLayer]; MonitorElement* meE[NCyl]; // TH2F* histE[NCyl]; bei->setCurrentFolder("Pixel/Barrel"); prephistosB(meB, bei, mapB, name, min, max); bei->setCurrentFolder("Pixel/Endcap"); prephistosE(meE, bei, mapE, name, min, max); // cout << "Done with SiPixelActionExecutor::createMaps" << endl; }
void SiPixelActionExecutor::createOccupancy | ( | DQMStore * | bei | ) |
Definition at line 1526 of file SiPixelActionExecutor.cc.
References DQMStore::cd(), fillOccupancy(), and Tier0Flag_.
Referenced by SiPixelEDAClient::endLuminosityBlock(), SiPixelEDAClient::endRun(), and SiPixelWebInterface::performAction().
{ //std::cout<<"entering SiPixelActionExecutor::createOccupancy..."<<std::endl; if(Tier0Flag_) return; bei->cd(); fillOccupancy(bei, true); bei->cd(); fillOccupancy(bei, false); bei->cd(); //std::cout<<"leaving SiPixelActionExecutor::createOccupancy..."<<std::endl; }
void SiPixelActionExecutor::createSummary | ( | DQMStore * | bei | ) |
Definition at line 171 of file SiPixelActionExecutor.cc.
References configParser_, configWriter_, gather_cfg::cout, fillFEDErrorSummary(), fillSummary(), DQMParserBase::getDocument(), SiPixelConfigParser::getMENamesForBarrelSummary(), SiPixelConfigParser::getMENamesForEndcapSummary(), SiPixelConfigParser::getMENamesForFEDErrorSummary(), SiPixelConfigParser::getSourceType(), offlineXMLfile_, DQMStore::setCurrentFolder(), source_type_, and AlCaHLTBitMon_QueryRunRegistry::string.
Referenced by SiPixelEDAClient::beginRun(), and SiPixelWebInterface::performAction().
{ //cout<<"entering SiPixelActionExecutor::createSummary..."<<endl; string barrel_structure_name; vector<string> barrel_me_names; string localPath; if(offlineXMLfile_) localPath = string("DQM/SiPixelMonitorClient/test/sipixel_tier0_config.xml"); else localPath = string("DQM/SiPixelMonitorClient/test/sipixel_monitorelement_config.xml"); // cout<<"*********************ATTENTION! LOCALPATH= "<<localPath<<endl; if (configParser_ == 0) { configParser_ = new SiPixelConfigParser(); configParser_->getDocument(edm::FileInPath(localPath).fullPath()); } if (!configParser_->getMENamesForBarrelSummary(barrel_structure_name, barrel_me_names)){ cout << "SiPixelActionExecutor::createSummary: Failed to read Barrel Summary configuration parameters!! "; return; } configParser_->getSourceType(source_type_); // cout<<"++++++++++++++++++++++++++SOURCE TYPE= "<<source_type_<<endl; bei->setCurrentFolder("Pixel/"); //bei->cd(); fillSummary(bei, barrel_structure_name, barrel_me_names, true); // Barrel bei->setCurrentFolder("Pixel/"); //bei->cd(); string endcap_structure_name; vector<string> endcap_me_names; if (!configParser_->getMENamesForEndcapSummary(endcap_structure_name, endcap_me_names)){ edm::LogInfo("SiPixelActionExecutor") << "Failed to read Endcap Summary configuration parameters!! " << "\n" ; return; } // cout << "--- Processing endcap" << endl; bei->setCurrentFolder("Pixel/"); //bei->cd(); fillSummary(bei, endcap_structure_name, endcap_me_names, false); // Endcap bei->setCurrentFolder("Pixel/"); //if(!Tier0Flag_) fillDeviations(bei); bei->setCurrentFolder("Pixel/"); //bei->cd(); if(source_type_==0||source_type_==5 || source_type_ == 20){//do this only if RawData source is present string federror_structure_name; vector<string> federror_me_names; if (!configParser_->getMENamesForFEDErrorSummary(federror_structure_name, federror_me_names)){ cout << "SiPixelActionExecutor::createSummary: Failed to read FED Error Summary configuration parameters!! "; return; } bei->setCurrentFolder("Pixel/"); //bei->cd(); fillFEDErrorSummary(bei, federror_structure_name, federror_me_names); bei->setCurrentFolder("Pixel/"); //bei->cd(); } //createLayout(bei); //string fname = "test.xml"; // configWriter_->write(fname); if (configWriter_) delete configWriter_; configWriter_ = 0; // cout<<"leaving SiPixelActionExecutor::createSummary..."<<endl; }
void SiPixelActionExecutor::createTkMap | ( | DQMStore * | bei, |
std::string | mEName, | ||
std::string | theTKType | ||
) |
Referenced by SiPixelWebInterface::createTkMap().
void SiPixelActionExecutor::dumpBarrelModIds | ( | DQMStore * | bei, |
edm::EventSetup const & | eSetup | ||
) |
Definition at line 2061 of file SiPixelActionExecutor.cc.
References DQMStore::cd(), relmon_rootfiles_spy::contents, gather_cfg::cout, compare_using_db::dir_name, edm::EventSetup::get(), DQMStore::getMEs(), DQMStore::getSubdirs(), DQMStore::goUp(), sipixelobjects::ElectronicIndex::link, ndet_, edm::ESHandle< T >::product(), DQMStore::pwd(), and theCablingMap.
Referenced by dumpModIds().
{ string currDir = bei->pwd(); string dir_name = "Ladder_"; eSetup.get<SiPixelFedCablingMapRcd>().get(theCablingMap); int fedId=-1; int linkId=-1; if (currDir.find(dir_name) != string::npos) { vector<string> subdirs = bei->getSubdirs(); for (vector<string>::const_iterator it = subdirs.begin(); it != subdirs.end(); it++) { if ( (*it).find("Module_") == string::npos) continue; bei->cd(*it); ndet_++; // long version: //cout<<"Ndet: "<<ndet_<<" , Module: "<<bei->pwd(); // short version: cout<<bei->pwd(); vector<string> contents = bei->getMEs(); bool first_me = false; int detId = -999; for (vector<string>::const_iterator im = contents.begin(); im != contents.end(); im++) { if(first_me) break; string mEName = (*im); string detIdString = mEName.substr((mEName.find_last_of("_"))+1,9); std::istringstream isst; isst.str(detIdString); if(mEName.find("_3")!=string::npos) isst>>detId; } bei->goUp(); // long version: //cout<<" , detector ID: "<<detId; // short version: cout<<" "<<detId; for(int fedid=0; fedid<=40; ++fedid){ SiPixelFrameConverter converter(theCablingMap.product(),fedid); uint32_t newDetId = detId; if(converter.hasDetUnit(newDetId)){ fedId=fedid; break; } } if(fedId==-1) continue; sipixelobjects::ElectronicIndex cabling; SiPixelFrameConverter formatter(theCablingMap.product(),fedId); assert(detId >= 0); sipixelobjects::DetectorIndex detector = {static_cast<unsigned int>(detId), 1, 1}; formatter.toCabling(cabling,detector); linkId = cabling.link; // long version: //cout<<" , FED ID: "<<fedId<<" , Link ID: "<<linkId<<endl; // short version: cout<<" "<<fedId<<" "<<linkId<<endl; } } else { vector<string> subdirs = bei->getSubdirs(); for (vector<string>::const_iterator it = subdirs.begin(); it != subdirs.end(); it++) { if((*it).find("Endcap")!=string::npos) continue; bei->cd(*it); dumpBarrelModIds(bei,eSetup); bei->goUp(); } } }
void SiPixelActionExecutor::dumpBarrelRefValues | ( | DQMStore * | bei, |
edm::EventSetup const & | eSetup | ||
) |
Definition at line 2208 of file SiPixelActionExecutor.cc.
References gather_cfg::cout, DQMStore::get(), MonitorElement::getBinContent(), and i.
Referenced by dumpRefValues().
{ MonitorElement* me; me = bei->get("Pixel/Barrel/SUMDIG_adc_Barrel"); if(me){ std::cout<<"SUMDIG_adc_Barrel: "<<std::endl; for(int i=1; i!=769; i++) std::cout<<i<<" "<<me->getBinContent(i)<<std::endl; } me = bei->get("Pixel/Barrel/SUMDIG_ndigis_Barrel"); if(me){ std::cout<<"SUMDIG_ndigis_Barrel: "<<std::endl; for(int i=1; i!=769; i++) std::cout<<i<<" "<<me->getBinContent(i)<<std::endl; } me = bei->get("Pixel/Barrel/SUMCLU_charge_Barrel"); if(me){ std::cout<<"SUMCLU_charge_Barrel: "<<std::endl; for(int i=1; i!=769; i++) std::cout<<i<<" "<<me->getBinContent(i)<<std::endl; } me = bei->get("Pixel/Barrel/SUMCLU_nclusters_Barrel"); if(me){ std::cout<<"SUMCLU_nclusters_Barrel: "<<std::endl; for(int i=1; i!=769; i++) std::cout<<i<<" "<<me->getBinContent(i)<<std::endl; } me = bei->get("Pixel/Barrel/SUMCLU_size_Barrel"); if(me){ std::cout<<"SUMCLU_size_Barrel: "<<std::endl; for(int i=1; i!=769; i++) std::cout<<i<<" "<<me->getBinContent(i)<<std::endl; } }
void SiPixelActionExecutor::dumpEndcapModIds | ( | DQMStore * | bei, |
edm::EventSetup const & | eSetup | ||
) |
Definition at line 2127 of file SiPixelActionExecutor.cc.
References DQMStore::cd(), relmon_rootfiles_spy::contents, gather_cfg::cout, spr::find(), edm::EventSetup::get(), DQMStore::getMEs(), DQMStore::getSubdirs(), DQMStore::goUp(), sipixelobjects::ElectronicIndex::link, ndet_, edm::ESHandle< T >::product(), DQMStore::pwd(), and theCablingMap.
Referenced by dumpModIds().
{ string currDir = bei->pwd(); string dir_name = "Panel_"; eSetup.get<SiPixelFedCablingMapRcd>().get(theCablingMap); int fedId=-1; int linkId=-1; if (currDir.find(dir_name) != string::npos) { vector<string> subdirs = bei->getSubdirs(); for (vector<string>::const_iterator it = subdirs.begin(); it != subdirs.end(); it++) { if ( (*it).find("Module_") == string::npos) continue; bei->cd(*it); ndet_++; // long version: //cout<<"Ndet: "<<ndet_<<" , Module: "<<bei->pwd(); // short version: cout<<bei->pwd(); vector<string> contents = bei->getMEs(); bool first_me = false; int detId = -999; for (vector<string>::const_iterator im = contents.begin(); im != contents.end(); im++) { if(first_me) break; string mEName = (*im); string detIdString = mEName.substr((mEName.find_last_of("_"))+1,9); std::istringstream isst; isst.str(detIdString); if(mEName.find("_3")!=string::npos) isst>>detId; } bei->goUp(); // long version: //cout<<" , detector ID: "<<detId; // short version: cout<<" "<<detId; for(int fedid=0; fedid<=40; ++fedid){ SiPixelFrameConverter converter(theCablingMap.product(),fedid); uint32_t newDetId = detId; if(converter.hasDetUnit(newDetId)){ fedId=fedid; break; } } if(fedId==-1) continue; sipixelobjects::ElectronicIndex cabling; SiPixelFrameConverter formatter(theCablingMap.product(),fedId); assert(detId >= 0); sipixelobjects::DetectorIndex detector = {static_cast<unsigned int>(detId), 1, 1}; formatter.toCabling(cabling,detector); linkId = cabling.link; // long version: //cout<<" , FED ID: "<<fedId<<" , Link ID: "<<linkId<<endl; // short version: cout<<" "<<fedId<<" "<<linkId<<endl; } } else { vector<string> subdirs = bei->getSubdirs(); for (vector<string>::const_iterator it = subdirs.begin(); it != subdirs.end(); it++) { if((bei->pwd()).find("Barrel")!=string::npos) bei->goUp(); bei->cd((*it)); if((*it).find("Barrel")!=string::npos) continue; dumpEndcapModIds(bei,eSetup); bei->goUp(); } } }
void SiPixelActionExecutor::dumpEndcapRefValues | ( | DQMStore * | bei, |
edm::EventSetup const & | eSetup | ||
) |
Definition at line 2238 of file SiPixelActionExecutor.cc.
References gather_cfg::cout, DQMStore::get(), MonitorElement::getBinContent(), and i.
Referenced by dumpRefValues().
{ MonitorElement* me; me = bei->get("Pixel/Endcap/SUMDIG_adc_Endcap"); if(me){ std::cout<<"SUMDIG_adc_Endcap: "<<std::endl; for(int i=1; i!=673; i++) std::cout<<i<<" "<<me->getBinContent(i)<<std::endl; } me = bei->get("Pixel/Endcap/SUMDIG_ndigis_Endcap"); if(me){ std::cout<<"SUMDIG_ndigis_Endcap: "<<std::endl; for(int i=1; i!=673; i++) std::cout<<i<<" "<<me->getBinContent(i)<<std::endl; } me = bei->get("Pixel/Endcap/SUMCLU_charge_Endcap"); if(me){ std::cout<<"SUMCLU_charge_Endcap: "<<std::endl; for(int i=1; i!=673; i++) std::cout<<i<<" "<<me->getBinContent(i)<<std::endl; } me = bei->get("Pixel/Endcap/SUMCLU_nclusters_Endcap"); if(me){ std::cout<<"SUMCLU_nclusters_Endcap: "<<std::endl; for(int i=1; i!=673; i++) std::cout<<i<<" "<<me->getBinContent(i)<<std::endl; } me = bei->get("Pixel/Endcap/SUMCLU_size_Endcap"); if(me){ std::cout<<"SUMCLU_size_Endcap: "<<std::endl; for(int i=1; i!=673; i++) std::cout<<i<<" "<<me->getBinContent(i)<<std::endl; } }
void SiPixelActionExecutor::dumpModIds | ( | DQMStore * | bei, |
edm::EventSetup const & | eSetup | ||
) |
Definition at line 2049 of file SiPixelActionExecutor.cc.
References DQMStore::cd(), dumpBarrelModIds(), and dumpEndcapModIds().
{ //printing cout<<"Going to dump module IDs now!"<<endl; bei->cd(); dumpBarrelModIds(bei,eSetup); bei->cd(); dumpEndcapModIds(bei,eSetup); bei->cd(); //printing cout<<"Done dumping module IDs!"<<endl; }
void SiPixelActionExecutor::dumpRefValues | ( | DQMStore * | bei, |
edm::EventSetup const & | eSetup | ||
) |
Definition at line 2196 of file SiPixelActionExecutor.cc.
References DQMStore::cd(), dumpBarrelRefValues(), and dumpEndcapRefValues().
{ //printing cout<<"Going to dump module IDs now!"<<endl; bei->cd(); dumpBarrelRefValues(bei,eSetup); bei->cd(); dumpEndcapRefValues(bei,eSetup); bei->cd(); //printing cout<<"Done dumping module IDs!"<<endl; }
void SiPixelActionExecutor::fillDeviations | ( | DQMStore * | bei | ) | [private] |
Definition at line 251 of file SiPixelActionExecutor.cc.
References DQMStore::get(), MonitorElement::getBinContent(), MonitorElement::getRefTH1(), i, n, and MonitorElement::setBinContent().
{ int n = 768; MonitorElement* me1; MonitorElement* me2; MonitorElement* me3; MonitorElement* me4; MonitorElement* me5; TH1* ref1; TH1* ref2; TH1* ref3; TH1* ref4; TH1* ref5; MonitorElement* dev1; MonitorElement* dev2; MonitorElement* dev3; MonitorElement* dev4; MonitorElement* dev5; me1 = bei->get("Pixel/Barrel/SUMDIG_adc_Barrel"); ref1 = me1->getRefTH1(); dev1 = bei->get("Pixel/Barrel/DEV_adc_Barrel"); me2 = bei->get("Pixel/Barrel/SUMDIG_ndigis_Barrel"); ref2 = me2->getRefTH1(); dev2 = bei->get("Pixel/Barrel/DEV_ndigis_Barrel"); me3 = bei->get("Pixel/Barrel/SUMCLU_charge_Barrel"); ref3 = me3->getRefTH1(); dev3 = bei->get("Pixel/Barrel/DEV_charge_Barrel"); me4 = bei->get("Pixel/Barrel/SUMCLU_nclusters_Barrel"); ref4 = me4->getRefTH1(); dev4 = bei->get("Pixel/Barrel/DEV_nclusters_Barrel"); me5 = bei->get("Pixel/Barrel/SUMCLU_size_Barrel"); ref5 = me5->getRefTH1(); dev5 = bei->get("Pixel/Barrel/DEV_size_Barrel"); for(int i=1; i!=n+1; i++){ float ref_value; float new_value; // Barrel adc: if(me1)if(ref1)if(dev1){ new_value = me1->getBinContent(i); ref_value = ref1->GetBinContent(i); dev1->setBinContent(i,ref_value-new_value); } //Barrel ndigis: if(me2)if(ref2)if(dev2){ new_value = me2->getBinContent(i); ref_value = ref2->GetBinContent(i); dev2->setBinContent(i,ref_value-new_value); } // Barrel cluster charge: if(me3)if(ref3)if(dev3){ new_value = me3->getBinContent(i); ref_value = ref3->GetBinContent(i); dev3->setBinContent(i,ref_value-new_value); } // Barrel nclusters: if(me4)if(ref4)if(dev4){ new_value = me4->getBinContent(i); ref_value = ref4->GetBinContent(i); dev4->setBinContent(i,ref_value-new_value); } // Barrel cluster size: if(me5)if(ref5)if(dev5){ new_value = me5->getBinContent(i); ref_value = ref5->GetBinContent(i); dev5->setBinContent(i,ref_value-new_value); } } int nn = 672; MonitorElement* me11; MonitorElement* me12; MonitorElement* me13; MonitorElement* me14; MonitorElement* me15; TH1* ref11; TH1* ref12; TH1* ref13; TH1* ref14; TH1* ref15; MonitorElement* dev11; MonitorElement* dev12; MonitorElement* dev13; MonitorElement* dev14; MonitorElement* dev15; me11 = bei->get("Pixel/Endcap/SUMDIG_adc_Endcap"); ref11 = me11->getRefTH1(); dev11 = bei->get("Pixel/Endcap/DEV_adc_Endcap"); me12 = bei->get("Pixel/Endcap/SUMDIG_ndigis_Endcap"); ref12 = me12->getRefTH1(); dev12 = bei->get("Pixel/Endcap/DEV_ndigis_Endcap"); me13 = bei->get("Pixel/Endcap/SUMCLU_charge_Endcap"); ref13 = me13->getRefTH1(); dev13 = bei->get("Pixel/Endcap/DEV_charge_Endcap"); me14 = bei->get("Pixel/Endcap/SUMCLU_nclusters_Endcap"); ref14 = me14->getRefTH1(); dev14 = bei->get("Pixel/Endcap/DEV_nclusters_Endcap"); me15 = bei->get("Pixel/Endcap/SUMCLU_size_Endcap"); ref15 = me15->getRefTH1(); dev15 = bei->get("Pixel/Endcap/DEV_size_Endcap"); for(int i=1; i!=nn+1; i++){ float ref_value; float new_value; // Endcap adc: if(me11)if(ref11)if(dev11){ new_value = me11->getBinContent(i); ref_value = ref11->GetBinContent(i); dev11->setBinContent(i,ref_value-new_value); } //Endcap ndigis: if(me12)if(ref12)if(dev12){ new_value = me12->getBinContent(i); ref_value = ref12->GetBinContent(i); dev12->setBinContent(i,ref_value-new_value); } // Endcap cluster charge: if(me13)if(ref13)if(dev13){ new_value = me13->getBinContent(i); ref_value = ref13->GetBinContent(i); dev13->setBinContent(i,ref_value-new_value); } // Endcap nclusters: if(me14)if(ref14)if(dev14){ new_value = me14->getBinContent(i); ref_value = ref14->GetBinContent(i); dev14->setBinContent(i,ref_value-new_value); } // Endcap cluster size: if(me15)if(ref15)if(dev15){ new_value = me15->getBinContent(i); ref_value = ref15->GetBinContent(i); dev15->setBinContent(i,ref_value-new_value); } } }
void SiPixelActionExecutor::fillEfficiency | ( | DQMStore * | bei, |
bool | isbarrel | ||
) |
Definition at line 2312 of file SiPixelActionExecutor.cc.
References DQMStore::cd(), DQMStore::get(), MonitorElement::getEntries(), DQMStore::getMEs(), DQMStore::getSubdirs(), DQMStore::goUp(), HitEfficiency_Dm1, HitEfficiency_Dm2, HitEfficiency_Dp1, HitEfficiency_Dp2, HitEfficiency_L1, HitEfficiency_L2, HitEfficiency_L3, DQMStore::pwd(), MonitorElement::setBinContent(), and Tier0Flag_.
Referenced by createEfficiency().
{ //cout<<"entering SiPixelActionExecutor::fillEfficiency..."<<std::endl; string currDir = bei->pwd(); string dname = currDir.substr(currDir.find_last_of("/")+1); //cout<<"currDir= "<<currDir<< " , dname= "<<dname<<std::endl; if(Tier0Flag_){ // Offline if(isbarrel && dname.find("Ladder_")!=string::npos){ vector<string> meVec = bei->getMEs(); for (vector<string>::const_iterator it = meVec.begin(); it != meVec.end(); it++) { string full_path = currDir + "/" + (*it); if(full_path.find("missing_")!=string::npos){ // If we have missing hits ME MonitorElement * me = bei->get(full_path); if (!me) continue; float missingHits = me->getEntries(); //if(currDir.find("Barrel/Shell_mI/Layer_1/Ladder_09F")!=string::npos) cout<<"missingHits= "<<missingHits<<endl; string new_path = full_path.replace(full_path.find("missing"),7,"valid"); me = bei->get(new_path); if (!me) continue; float validHits = me->getEntries(); //if(currDir.find("Barrel/Shell_mI/Layer_1/Ladder_09F")!=string::npos) cout<<"validHits= "<<validHits<<endl; float hitEfficiency = -1.; if(validHits + missingHits > 0.) hitEfficiency = validHits / (validHits + missingHits); //if(currDir.find("Barrel/Shell_mI/Layer_1/Ladder_09F")!=string::npos) cout<<"hitEfficiency= "<<hitEfficiency<<endl; int binx = 0; int biny = 0; if(currDir.find("Shell_m")!=string::npos){ binx = 1;}else{ binx = 2;} if(dname.find("01")!=string::npos){ biny = 1;}else if(dname.find("02")!=string::npos){ biny = 2;} else if(dname.find("03")!=string::npos){ biny = 3;}else if(dname.find("04")!=string::npos){ biny = 4;} else if(dname.find("05")!=string::npos){ biny = 5;}else if(dname.find("06")!=string::npos){ biny = 6;} else if(dname.find("07")!=string::npos){ biny = 7;}else if(dname.find("08")!=string::npos){ biny = 8;} else if(dname.find("09")!=string::npos){ biny = 9;}else if(dname.find("10")!=string::npos){ biny = 10;} else if(dname.find("11")!=string::npos){ biny = 11;}else if(dname.find("12")!=string::npos){ biny = 12;} else if(dname.find("13")!=string::npos){ biny = 13;}else if(dname.find("14")!=string::npos){ biny = 14;} else if(dname.find("15")!=string::npos){ biny = 15;}else if(dname.find("16")!=string::npos){ biny = 16;} else if(dname.find("17")!=string::npos){ biny = 17;}else if(dname.find("18")!=string::npos){ biny = 18;} else if(dname.find("19")!=string::npos){ biny = 19;}else if(dname.find("20")!=string::npos){ biny = 20;} else if(dname.find("21")!=string::npos){ biny = 21;}else if(dname.find("22")!=string::npos){ biny = 22;} if(currDir.find("Shell_mO")!=string::npos || currDir.find("Shell_pO")!=string::npos){ if(currDir.find("Layer_1")!=string::npos){ biny = biny + 10;} else if(currDir.find("Layer_2")!=string::npos){ biny = biny + 16;} else if(currDir.find("Layer_3")!=string::npos){ biny = biny + 22;} } if(currDir.find("Layer_1")!=string::npos){ HitEfficiency_L1 = bei->get("Pixel/Barrel/HitEfficiency_L1"); if(HitEfficiency_L1) HitEfficiency_L1->setBinContent(binx, biny,(float)hitEfficiency); //if(currDir.find("Barrel/Shell_mI/Layer_1/Ladder_09F")!=string::npos) cout<<"setting bin ("<<binx<<","<<biny<<") with "<<(float)hitEfficiency<<endl; }else if(currDir.find("Layer_2")!=string::npos){ HitEfficiency_L2 = bei->get("Pixel/Barrel/HitEfficiency_L2"); if(HitEfficiency_L2) HitEfficiency_L2->setBinContent(binx, biny,(float)hitEfficiency); }else if(currDir.find("Layer_3")!=string::npos){ HitEfficiency_L3 = bei->get("Pixel/Barrel/HitEfficiency_L3"); if(HitEfficiency_L3) HitEfficiency_L3->setBinContent(binx, biny,(float)hitEfficiency); } } } }else if(!isbarrel && dname.find("Blade_")!=string::npos){ vector<string> meVec = bei->getMEs(); for (vector<string>::const_iterator it = meVec.begin(); it != meVec.end(); it++) { string full_path = currDir + "/" + (*it); if(full_path.find("missing_")!=string::npos){ // If we have missing hits ME MonitorElement * me = bei->get(full_path); if (!me) continue; float missingHits = me->getEntries(); string new_path = full_path.replace(full_path.find("missing"),7,"valid"); me = bei->get(new_path); if (!me) continue; float validHits = me->getEntries(); float hitEfficiency = -1.; if(validHits + missingHits > 0.) hitEfficiency = validHits / (validHits + missingHits); int binx = 0; int biny = 1; if(currDir.find("01")!=string::npos){ binx = 1;}else if(currDir.find("02")!=string::npos){ binx = 2;} else if(currDir.find("03")!=string::npos){ binx = 3;}else if(currDir.find("04")!=string::npos){ binx = 4;} else if(currDir.find("05")!=string::npos){ binx = 5;}else if(currDir.find("06")!=string::npos){ binx = 6;} else if(currDir.find("07")!=string::npos){ binx = 7;}else if(currDir.find("08")!=string::npos){ binx = 8;} else if(currDir.find("09")!=string::npos){ binx = 9;}else if(currDir.find("10")!=string::npos){ binx = 10;} else if(currDir.find("11")!=string::npos){ binx = 11;}else if(currDir.find("12")!=string::npos){ binx = 12;} if(currDir.find("HalfCylinder_mI")!=string::npos || currDir.find("HalfCylinder_pI")!=string::npos){ binx = binx + 12;} else{ if(binx==1) binx = 12; else if(binx==2) binx = 11; else if(binx==3) binx = 10; else if(binx==4) binx = 9; else if(binx==5) binx = 8; else if(binx==6) binx = 7; else if(binx==7) binx = 6; else if(binx==8) binx = 5; else if(binx==9) binx = 4; else if(binx==10) binx = 3; else if(binx==11) binx = 2; else if(binx==12) binx = 1; } if(currDir.find("Disk_1")!=string::npos && currDir.find("HalfCylinder_m")!=string::npos){ HitEfficiency_Dm1 = bei->get("Pixel/Endcap/HitEfficiency_Dm1"); if(HitEfficiency_Dm1) HitEfficiency_Dm1->setBinContent(binx, biny, (float)hitEfficiency); }else if(currDir.find("Disk_2")!=string::npos && currDir.find("HalfCylinder_m")!=string::npos){ HitEfficiency_Dm2 = bei->get("Pixel/Endcap/HitEfficiency_Dm2"); if(HitEfficiency_Dm2) HitEfficiency_Dm2->setBinContent(binx, biny, (float)hitEfficiency); }else if(currDir.find("Disk_1")!=string::npos && currDir.find("HalfCylinder_p")!=string::npos){ HitEfficiency_Dp1 = bei->get("Pixel/Endcap/HitEfficiency_Dp1"); if(HitEfficiency_Dp1) HitEfficiency_Dp1->setBinContent(binx, biny, (float)hitEfficiency); }else if(currDir.find("Disk_2")!=string::npos && currDir.find("HalfCylinder_p")!=string::npos){ HitEfficiency_Dp2 = bei->get("Pixel/Endcap/HitEfficiency_Dp2"); if(HitEfficiency_Dp2) HitEfficiency_Dp2->setBinContent(binx, biny, (float)hitEfficiency); } //std::cout<<"EFFI: "<<currDir<<" , x: "<<binx<<" , y: "<<biny<<std::endl; } } }else{ //cout<<"finding subdirs now"<<std::endl; vector<string> subdirs = bei->getSubdirs(); for (vector<string>::const_iterator it = subdirs.begin(); it != subdirs.end(); it++) { bei->cd(*it); //cout<<"now I am in "<<bei->pwd()<<std::endl; if(*it != "Pixel" && ((isbarrel && (*it).find("Barrel")==string::npos) || (!isbarrel && (*it).find("Endcap")==string::npos))) continue; //cout<<"calling myself again "<<std::endl; fillEfficiency(bei, isbarrel); bei->goUp(); } } }else{ // Online if(dname.find("Module_")!=string::npos){ vector<string> meVec = bei->getMEs(); for (vector<string>::const_iterator it = meVec.begin(); it != meVec.end(); it++) { string full_path = currDir + "/" + (*it); if(full_path.find("missing_")!=string::npos){ // If we have missing hits ME MonitorElement * me = bei->get(full_path); if (!me) continue; float missingHits = me->getEntries(); string new_path = full_path.replace(full_path.find("missing"),7,"valid"); me = bei->get(new_path); if (!me) continue; float validHits = me->getEntries(); float hitEfficiency = -1.; if(validHits + missingHits > 0.) hitEfficiency = validHits / (validHits + missingHits); int binx = 0; int biny = 0; if(isbarrel){ if(currDir.find("Shell_m")!=string::npos){ if(currDir.find("Module_4")!=string::npos){ binx = 1;}else if(currDir.find("Module_3")!=string::npos){ binx = 2;} if(currDir.find("Module_2")!=string::npos){ binx = 3;}else if(currDir.find("Module_1")!=string::npos){ binx = 4;} }else if(currDir.find("Shell_p")!=string::npos){ if(currDir.find("Module_1")!=string::npos){ binx = 5;}else if(currDir.find("Module_2")!=string::npos){ binx = 6;} if(currDir.find("Module_3")!=string::npos){ binx = 7;}else if(currDir.find("Module_4")!=string::npos){ binx = 8;} } if(currDir.find("01")!=string::npos){ biny = 1;}else if(currDir.find("02")!=string::npos){ biny = 2;} else if(currDir.find("03")!=string::npos){ biny = 3;}else if(currDir.find("04")!=string::npos){ biny = 4;} else if(currDir.find("05")!=string::npos){ biny = 5;}else if(currDir.find("06")!=string::npos){ biny = 6;} else if(currDir.find("07")!=string::npos){ biny = 7;}else if(currDir.find("08")!=string::npos){ biny = 8;} else if(currDir.find("09")!=string::npos){ biny = 9;}else if(currDir.find("10")!=string::npos){ biny = 10;} else if(currDir.find("11")!=string::npos){ biny = 11;}else if(currDir.find("12")!=string::npos){ biny = 12;} else if(currDir.find("13")!=string::npos){ biny = 13;}else if(currDir.find("14")!=string::npos){ biny = 14;} else if(currDir.find("15")!=string::npos){ biny = 15;}else if(currDir.find("16")!=string::npos){ biny = 16;} else if(currDir.find("17")!=string::npos){ biny = 17;}else if(currDir.find("18")!=string::npos){ biny = 18;} else if(currDir.find("19")!=string::npos){ biny = 19;}else if(currDir.find("20")!=string::npos){ biny = 20;} else if(currDir.find("21")!=string::npos){ biny = 21;}else if(currDir.find("22")!=string::npos){ biny = 22;} if(currDir.find("Shell_mO")!=string::npos || currDir.find("Shell_pO")!=string::npos){ if(currDir.find("Layer_1")!=string::npos){ biny = biny + 10;} else if(currDir.find("Layer_2")!=string::npos){ biny = biny + 16;} else if(currDir.find("Layer_3")!=string::npos){ biny = biny + 22;} } }else{ if(currDir.find("01")!=string::npos){ binx = 1;}else if(currDir.find("02")!=string::npos){ binx = 2;} else if(currDir.find("03")!=string::npos){ binx = 3;}else if(currDir.find("04")!=string::npos){ binx = 4;} else if(currDir.find("05")!=string::npos){ binx = 5;}else if(currDir.find("06")!=string::npos){ binx = 6;} else if(currDir.find("07")!=string::npos){ binx = 7;}else if(currDir.find("08")!=string::npos){ binx = 8;} else if(currDir.find("09")!=string::npos){ binx = 9;}else if(currDir.find("10")!=string::npos){ binx = 10;} else if(currDir.find("11")!=string::npos){ binx = 11;}else if(currDir.find("12")!=string::npos){ binx = 12;} if(currDir.find("HalfCylinder_mO")!=string::npos || currDir.find("HalfCylinder_pO")!=string::npos){ binx = binx + 12;} if(currDir.find("Panel_1/Module_1")!=string::npos){ biny = 1;}else if(currDir.find("Panel_2/Module_1")!=string::npos){ biny = 2;} else if(currDir.find("Panel_1/Module_2")!=string::npos){ biny = 3;}else if(currDir.find("Panel_2/Module_2")!=string::npos){ biny = 4;} else if(currDir.find("Panel_1/Module_3")!=string::npos){ biny = 5;}else if(currDir.find("Panel_2/Module_3")!=string::npos){ biny = 6;} else if(currDir.find("Panel_1/Module_4")!=string::npos){ biny = 7;} } if(currDir.find("Layer_1")!=string::npos){ HitEfficiency_L1 = bei->get("Pixel/Barrel/HitEfficiency_L1"); if(HitEfficiency_L1) HitEfficiency_L1->setBinContent(binx, biny,(float)hitEfficiency); }else if(currDir.find("Layer_2")!=string::npos){ HitEfficiency_L2 = bei->get("Pixel/Barrel/HitEfficiency_L2"); if(HitEfficiency_L2) HitEfficiency_L2->setBinContent(binx, biny,(float)hitEfficiency); }else if(currDir.find("Layer_3")!=string::npos){ HitEfficiency_L3 = bei->get("Pixel/Barrel/HitEfficiency_L3"); if(HitEfficiency_L3) HitEfficiency_L3->setBinContent(binx, biny,(float)hitEfficiency); }else if(currDir.find("Disk_1")!=string::npos && currDir.find("HalfCylinder_m")!=string::npos){ HitEfficiency_Dm1 = bei->get("Pixel/Endcap/HitEfficiency_Dm1"); if(HitEfficiency_Dm1) HitEfficiency_Dm1->setBinContent(binx, biny,(float)hitEfficiency); }else if(currDir.find("Disk_2")!=string::npos && currDir.find("HalfCylinder_m")!=string::npos){ HitEfficiency_Dm2 = bei->get("Pixel/Endcap/HitEfficiency_Dm2"); if(HitEfficiency_Dm2) HitEfficiency_Dm2->setBinContent(binx, biny,(float)hitEfficiency); }else if(currDir.find("Disk_1")!=string::npos && currDir.find("HalfCylinder_p")!=string::npos){ HitEfficiency_Dp1 = bei->get("Pixel/Endcap/HitEfficiency_Dp1"); if(HitEfficiency_Dp1) HitEfficiency_Dp1->setBinContent(binx, biny,(float)hitEfficiency); }else if(currDir.find("Disk_2")!=string::npos && currDir.find("HalfCylinder_p")!=string::npos){ HitEfficiency_Dp2 = bei->get("Pixel/Endcap/HitEfficiency_Dp2"); if(HitEfficiency_Dp2) HitEfficiency_Dp2->setBinContent(binx, biny,(float)hitEfficiency); } } } }else{ //cout<<"finding subdirs now"<<std::endl; vector<string> subdirs = bei->getSubdirs(); for (vector<string>::const_iterator it = subdirs.begin(); it != subdirs.end(); it++) { bei->cd(*it); //cout<<"now I am in "<<bei->pwd()<<std::endl; if(*it != "Pixel" && ((isbarrel && (*it).find("Barrel")==string::npos) || (!isbarrel && (*it).find("Endcap")==string::npos))) continue; //cout<<"calling myself again "<<std::endl; fillEfficiency(bei, isbarrel); bei->goUp(); } } } // end online/offline //cout<<"leaving SiPixelActionExecutor::fillEfficiency..."<<std::endl; }
void SiPixelActionExecutor::fillFEDErrorSummary | ( | DQMStore * | bei, |
std::string | dir_name, | ||
std::vector< std::string > & | me_names | ||
) | [private] |
Definition at line 739 of file SiPixelActionExecutor.cc.
References DQMStore::book2D(), DQMStore::cd(), relmon_rootfiles_spy::contents, spr::find(), DQMStore::get(), MonitorElement::getBinContent(), MonitorElement::getEntries(), getFEDSummaryME(), MonitorElement::getIntValue(), MonitorElement::getMean(), DQMStore::getMEs(), DQMStore::getSubdirs(), DQMStore::goUp(), i, isum, findQualityFiles::jj, n, prof2calltree::prefix, DQMStore::pwd(), MonitorElement::Reset(), MonitorElement::setBinContent(), MonitorElement::setBinLabel(), lumiContext::sname, source_type_, GlobalPosition_Frontier_DevDB_cff::tag, groupFilesInBlocks::temp, and indexGen::title.
Referenced by createSummary().
{ //printing cout<<"entering SiPixelActionExecutor::fillFEDErrorSummary..."<<endl; string currDir = bei->pwd(); string prefix; if(source_type_==0) prefix="SUMRAW"; else if(source_type_==20) prefix="SUMOFF"; if (currDir.find(dir_name) != string::npos) { vector<MonitorElement*> sum_mes; for (vector<string>::const_iterator iv = me_names.begin(); iv != me_names.end(); iv++) { bool isBooked = false; vector<string> contents = bei->getMEs(); for (vector<string>::const_iterator im = contents.begin(); im != contents.end(); im++) if ((*im).find(*iv) != string::npos) isBooked = true; if(source_type_==5||source_type_==6){ if((*iv)=="errorType"||(*iv)=="NErrors"||(*iv)=="fullType"||(*iv)=="chanNmbr"|| (*iv)=="TBMType"||(*iv)=="EvtNbr"||(*iv)=="evtSize"||(*iv)=="linkId"|| (*iv)=="ROCId"||(*iv)=="DCOLId"||(*iv)=="PXId"||(*iv)=="ROCNmbr"|| (*iv)=="TBMMessage"||(*iv)=="Type36Hitmap"|| (*iv)=="FedChLErrArray"||(*iv)=="FedChNErrArray"||(*iv)=="FedETypeNErrArray") prefix="SUMRAW"; } if((*iv)=="errorType"||(*iv)=="NErrors"||(*iv)=="fullType"||(*iv)=="chanNmbr"|| (*iv)=="TBMType"||(*iv)=="EvtNbr"||(*iv)=="evtSize"||(*iv)=="linkId"|| (*iv)=="ROCId"||(*iv)=="DCOLId"||(*iv)=="PXId"||(*iv)=="ROCNmbr"|| (*iv)=="TBMMessage"||(*iv)=="Type36Hitmap"){ string tag = prefix + "_" + (*iv) + "_FEDErrors"; MonitorElement* temp = getFEDSummaryME(bei, tag); sum_mes.push_back(temp); }else if((*iv)=="FedChLErrArray"||(*iv)=="FedChNErrArray"||(*iv)=="FedETypeNErrArray"){ string tag = prefix + "_" + (*iv); MonitorElement* temp; if((*iv)=="FedChLErrArray") {if (!isBooked) temp = bei->book2D("FedChLErrArray","Type of last error",40,-0.5,39.5,37,0.,37.); else{ string fullpathname = bei->pwd() + "/" + (*iv); temp = bei->get(fullpathname); temp->Reset();}} //If I don't reset this one, then I instead start adding error codes.. if((*iv)=="FedChNErrArray") {if (!isBooked) temp = bei->book2D("FedChNErrArray","Total number of errors",40,-0.5,39.5,37,0.,37.); else{ string fullpathname = bei->pwd() + "/" + (*iv); temp = bei->get(fullpathname); temp->Reset();}} //If I don't reset this one, then I instead start adding error codes.. if((*iv)=="FedETypeNErrArray"){ if(!isBooked){ temp = bei->book2D("FedETypeNErrArray","Number of each error type",40,-0.5,39.5,21,0.,21.); temp->setBinLabel(1,"ROC of 25",2); temp->setBinLabel(2,"Gap word",2); temp->setBinLabel(3,"Dummy word",2); temp->setBinLabel(4,"FIFO full",2); temp->setBinLabel(5,"Timeout",2); temp->setBinLabel(6,"Stack full",2); temp->setBinLabel(7,"Pre-cal issued",2); temp->setBinLabel(8,"Trigger clear or sync",2); temp->setBinLabel(9,"No token bit",2); temp->setBinLabel(10,"Overflow",2); temp->setBinLabel(11,"FSM error",2); temp->setBinLabel(12,"Invalid #ROCs",2); temp->setBinLabel(13,"Event number",2); temp->setBinLabel(14,"Slink header",2); temp->setBinLabel(15,"Slink trailer",2); temp->setBinLabel(16,"Event size",2); temp->setBinLabel(17,"Invalid channel#",2); temp->setBinLabel(18,"ROC value",2); temp->setBinLabel(19,"Dcol or pixel value",2); temp->setBinLabel(20,"Readout order",2); temp->setBinLabel(21,"CRC error",2); } else{ string fullpathname = bei->pwd() + "/" + (*iv); temp = bei->get(fullpathname); temp->Reset();} //If I don't reset this one, then I instead start adding error codes.. } sum_mes.push_back(temp); } } if (sum_mes.size() == 0) { edm::LogInfo("SiPixelActionExecutor") << " Summary MEs can not be created" << "\n" ; return; } vector<string> subdirs = bei->getSubdirs(); int ndet = 0; for (vector<string>::const_iterator it = subdirs.begin(); it != subdirs.end(); it++) { if ( (*it).find("FED_") == string::npos) continue; bei->cd(*it); string fedid = (*it).substr((*it).find("_")+1); std::istringstream isst; isst.str(fedid); isst>>ndet; ndet++; vector<string> contents = bei->getMEs(); for (vector<MonitorElement*>::const_iterator isum = sum_mes.begin(); isum != sum_mes.end(); isum++) { for (vector<string>::const_iterator im = contents.begin(); im != contents.end(); im++) { if(((*im).find("FedChNErrArray_")!=std::string::npos && (*isum)->getName().find("FedChNErrArray")!=std::string::npos) || ((*im).find("FedChLErrArray_")!=std::string::npos && (*isum)->getName().find("FedChLErrArray")!=std::string::npos) || ((*im).find("FedETypeNErrArray_")!=std::string::npos && (*isum)->getName().find("FedETypeNErrArray")!=std::string::npos)){ string fullpathname = bei->pwd() + "/" + (*im); MonitorElement * me = bei->get(fullpathname); if(me && me->getIntValue()>0){ for(int i=0; i!=37; i++){ int n = (*im).find("_"); n++; string channel_str = (*im).substr(n); std::istringstream jsst; jsst.str(channel_str); int channel=-1; jsst>>channel; if(channel==i){ if((*im).find("FedETypeNErrArray_")!=std::string::npos && i<21) (*isum)->Fill(ndet-1,i,me->getIntValue()); else (*isum)->Fill(ndet-1,i,me->getIntValue()); } } } } string sname = ((*isum)->getName()); string tname = " "; tname = sname.substr(7,(sname.find("_",7)-6)); if (((*im)).find(tname) == 0) { string fullpathname = bei->pwd() + "/" + (*im); MonitorElement * me = bei->get(fullpathname); if (me){ if(me->getMean()>0.){ if (sname.find("_NErrors_")!=string::npos){ string path1 = fullpathname; path1 = path1.replace(path1.find("NErrors"),7,"errorType"); MonitorElement * me1 = bei->get(path1); bool notReset=true; if(me1){ for(int jj=1; jj<16; jj++){ if(me1->getBinContent(jj)>0.){ if(jj==6){ //errorType=30 (reset) string path2 = path1; path2 = path2.replace(path2.find("errorType"),9,"TBMMessage"); MonitorElement * me2 = bei->get(path2); if(me2) if(me2->getBinContent(6)>0. || me2->getBinContent(7)>0.) notReset=false; } } } } if(notReset) (*isum)->setBinContent(ndet, (*isum)->getBinContent(ndet) + me1->getEntries()); }else (*isum)->setBinContent(ndet, (*isum)->getBinContent(ndet) + me->getEntries()); } (*isum)->setAxisTitle("FED #",1); string title = " "; title = sname.substr(7,(sname.find("_",7)-7)) + " per FED"; (*isum)->setAxisTitle(title,2); } break; } } } bei->goUp(); } } else { vector<string> subdirs = bei->getSubdirs(); for (vector<string>::const_iterator it = subdirs.begin(); it != subdirs.end(); it++) { if((*it).find("Endcap")!=string::npos || (*it).find("Barrel")!=string::npos) continue; bei->cd(*it); fillFEDErrorSummary(bei, dir_name, me_names); bei->goUp(); } } //printing cout<<"...leaving SiPixelActionExecutor::fillFEDErrorSummary!"<<endl; }
void SiPixelActionExecutor::fillGrandBarrelSummaryHistos | ( | DQMStore * | bei, |
std::vector< std::string > & | me_names | ||
) | [private] |
Definition at line 913 of file SiPixelActionExecutor.cc.
References DQMStore::cd(), relmon_rootfiles_spy::contents, compare_using_db::dir_name, DQMStore::get(), MonitorElement::getBinContent(), getGrandSummaryME(), DQMStore::getMEs(), MonitorElement::getName(), DQMStore::getSubdirs(), MonitorElement::getTH1F(), DQMStore::goUp(), gen::k, create_public_lumi_plots::path_name, prof2calltree::prefix, DQMStore::pwd(), source_type_, and indexGen::title.
Referenced by StorageAccount::fillSummary().
{ // cout<<"Entering SiPixelActionExecutor::fillGrandBarrelSummaryHistos...:"<<me_names.size()<<endl; vector<MonitorElement*> gsum_mes; string currDir = bei->pwd(); string path_name = bei->pwd(); string dir_name = path_name.substr(path_name.find_last_of("/")+1); // cout<<"I am in "<<path_name<<" now."<<endl; if ((dir_name.find("DQMData") == 0) || (dir_name.find("Pixel") == 0) || (dir_name.find("AdditionalPixelErrors") == 0) || (dir_name.find("Endcap") == 0) || (dir_name.find("HalfCylinder") == 0) || (dir_name.find("Disk") == 0) || (dir_name.find("Blade") == 0) || (dir_name.find("Panel") == 0) ) return; vector<string> subdirs = bei->getSubdirs(); int nDirs = subdirs.size(); int iDir =0; int nbin = 0; int nbin_i = 0; int nbin_subdir = 0; int cnt=0; bool first_subdir = true; for (vector<string>::const_iterator it = subdirs.begin(); it != subdirs.end(); it++) { cnt++; bei->cd(*it); // cout << "--- " << cnt << "\t" << bei->pwd() << endl; vector<string> contents = bei->getMEs(); bei->goUp(); string prefix; if(source_type_==0) prefix="SUMRAW"; else if (source_type_==1) prefix="SUMDIG"; else if (source_type_==2) prefix="SUMCLU"; else if (source_type_==3) prefix="SUMTRK"; else if (source_type_==4) prefix="SUMHIT"; else if (source_type_>=7 && source_type_<20) prefix="SUMCAL"; else if (source_type_==20) prefix="SUMOFF"; for (vector<string>::const_iterator im = contents.begin(); im != contents.end(); im++) { // cout<<"A: iterating over "<<(*im)<<" now:"<<endl; for (vector<string>::const_iterator iv = me_names.begin(); iv != me_names.end(); iv++) { string var = "_" + (*iv) + "_"; // cout<<"\t B: iterating over "<<(*iv)<<" now, var is set to: "<<var<<endl; if ((*im).find(var) != string::npos) { if((var=="_charge_" || var=="_nclusters_" || var=="_size_" || var=="_sizeX_" || var=="_sizeY_") && (*im).find("Track_")!=string::npos) continue; // cout << "Looking into " << (*iv) << endl; string full_path = (*it) + "/" +(*im); MonitorElement * me = bei->get(full_path.c_str()); if (!me) continue; if(source_type_==5||source_type_==6){ if((*iv)=="errorType"||(*iv)=="NErrors"||(*iv)=="fullType"||(*iv)=="chanNmbr"|| (*iv)=="TBMType"||(*iv)=="EvtNbr"||(*iv)=="evtSize"||(*iv)=="linkId"|| (*iv)=="ROCId"||(*iv)=="DCOLId"||(*iv)=="PXId"||(*iv)=="ROCNmbr"|| (*iv)=="TBMMessage"||(*iv)=="Type36Hitmap") prefix="SUMRAW"; else if((*iv)=="ndigis"||(*iv)=="adc" || (*iv)=="ndigisFREQ" || (*iv)=="adcCOMB") prefix="SUMDIG"; else if((*iv)=="nclusters"||(*iv)=="x"||(*iv)=="y"||(*iv)=="charge"||(*iv)=="chargeCOMB"|| (*iv)=="size"||(*iv)=="sizeX"||(*iv)=="sizeY"||(*iv)=="minrow"|| (*iv)=="maxrow"||(*iv)=="mincol"||(*iv)=="maxcol") prefix="SUMCLU"; if(currDir.find("Track")!=string::npos) prefix="SUMTRK"; else if((*iv)=="residualX_mean"||(*iv)=="residualY_mean"|| (*iv)=="residualX_RMS"||(*iv)=="residualY_RMS") prefix="SUMTRK"; else if((*iv)=="ClustX"||(*iv)=="ClustY"||(*iv)=="nRecHits"||(*iv)=="ErrorX"||(*iv)=="ErrorY") prefix="SUMHIT"; else if((*iv)=="Gain1d_mean"||(*iv)=="GainChi2NDF1d_mean"|| (*iv)=="GainChi2Prob1d_mean"||(*iv)=="Pedestal1d_mean"|| (*iv)=="ScurveChi2ProbSummary_mean"||(*iv)=="ScurveFitResultSummary_mean"|| (*iv)=="ScurveSigmasSummary_mean"||(*iv)=="ScurveThresholdSummary_mean"|| (*iv)=="Gain1d_RMS"||(*iv)=="GainChi2NDF1d_RMS"|| (*iv)=="GainChi2Prob1d_RMS"||(*iv)=="Pedestal1d_RMS"|| (*iv)=="GainNPoints1d_mean" || (*iv)=="GainNPoints1d_RMS" || (*iv)=="GainHighPoint1d_mean" || (*iv)=="GainHighPoint1d_RMS" || (*iv)=="GainLowPoint1d_mean" || (*iv)=="GainLowPoint1d_RMS" || (*iv)=="GainEndPoint1d_mean" || (*iv)=="GainEndPoint1d_RMS" || (*iv)=="GainFitResult2d_mean" || (*iv)=="GainFitResult2d_RMS" || (*iv)=="GainDynamicRange2d_mean" || (*iv)=="GainDynamicRange2d_RMS" || (*iv)=="GainSaturate2d_mean" || (*iv)=="GainSaturate2d_RMS" || (*iv)=="ScurveChi2ProbSummary_RMS"||(*iv)=="ScurveFitResultSummary_RMS"|| (*iv)=="ScurveSigmasSummary_RMS"||(*iv)=="ScurveThresholdSummary_RMS"|| (*iv)=="pixelAliveSummary_mean"||(*iv)=="pixelAliveSummary_FracOfPerfectPix" || (*iv)=="SiPixelErrorsCalibDigis_NCalibErrors" ) prefix="SUMCAL"; } // end source_type if // bugfix: gsum_mes is filled using the contents of me_names. Proceeding with each entry in me_names. /* int actual_size = gsum_mes.size(); int wanted_size = me_names.size(); // printing cout << actual_size << "\t" << wanted_size << endl; if (actual_size != wanted_size) { */ if (first_subdir){ // bool create_me = true; nbin = me->getTH1F()->GetNbinsX(); string me_name = prefix + "_" + (*iv) + "_" + dir_name; if((*iv)=="adcCOMB"||(*iv)=="chargeCOMB") me_name = "ALLMODS_" + (*iv) + "_" + dir_name; else if(prefix=="SUMOFF" && dir_name=="Barrel") nbin=192; else if((*iv)=="adcCOMB") nbin=256; else if(dir_name=="Barrel") nbin=768; else if(prefix=="SUMOFF" && dir_name.find("Shell")!=string::npos) nbin=48; else if(dir_name.find("Shell")!=string::npos) nbin=192; else nbin=nbin*nDirs; getGrandSummaryME(bei, nbin, me_name, gsum_mes); } /* for (vector<MonitorElement*>::const_iterator igm = gsum_mes.begin(); igm !=gsum_mes.end(); igm++) { // To be further optimized if( (*iv).find("Clust") != string::npos && (*igm)->getName().find(me_name) != string::npos ) create_me = false; //cout << "Already have it" << endl; } // printing cout<<"me_name to be created= "<<me_name<<endl; if(create_me) getGrandSummaryME(bei, nbin, me_name, gsum_mes); } */ // end bugfix: gsum_mes. for (vector<MonitorElement*>::const_iterator igm = gsum_mes.begin(); igm != gsum_mes.end(); igm++) { // cout<<"\t \t C: iterating over "<<(*igm)->getName()<<" now:"<<endl; if ((*igm)->getName().find(var) != string::npos) { // cout<<"\t \t D: Have the correct var now!"<<endl; if(prefix=="SUMOFF") (*igm)->setAxisTitle("Ladders",1); else if((*igm)->getName().find("adcCOMB_")!=string::npos) (*igm)->setAxisTitle("Digi charge [ADC]",1); else if((*igm)->getName().find("chargeCOMB_")!=string::npos) (*igm)->setAxisTitle("Cluster charge [kilo electrons]",1); else (*igm)->setAxisTitle("Modules",1); // Setting title string title=""; if((*igm)->getName().find("NErrors_") != string::npos && prefix=="SUMOFF") title = "Total number of errors per Ladder"; else if((*igm)->getName().find("NErrors_") != string::npos && prefix=="SUMRAW") title = "Total number of errors per Module"; else if(prefix=="SUMOFF") title = "mean " + (*iv) + " per Ladder"; else if((*igm)->getName().find("FREQ_") != string::npos && prefix!="SUMOFF") title = "NEvents with digis per Module"; else if((*igm)->getName().find("FREQ_") != string::npos && prefix=="SUMOFF") title = "NEvents with digis per Ladder/Blade"; else if((*igm)->getName().find("adcCOMB_") != string::npos) title = "NDigis"; else if((*igm)->getName().find("chargeCOMB_") != string::npos) title = "NClusters"; else title = "mean " + (*iv) + " per Module"; (*igm)->setAxisTitle(title,2); // Setting binning if((*igm)->getName().find("ALLMODS_adcCOMB_")!=string::npos){ nbin_subdir=128; }else if((*igm)->getName().find("ALLMODS_chargeCOMB_")!=string::npos){ nbin_subdir=100; }else if((*igm)->getName().find("Ladder") != string::npos){ nbin_i=0; nbin_subdir=4; }else if((*igm)->getName().find("Layer") != string::npos){ nbin_i=(cnt-1)*4; nbin_subdir=4; }else if((*igm)->getName().find("Shell") != string::npos){ if(prefix!="SUMOFF"){ if(iDir==0){ nbin_i=0; nbin_subdir=40; } else if(iDir==1){ nbin_i=40; nbin_subdir=64; } else if(iDir==2){ nbin_i=104; nbin_subdir=88; } }else{ if(iDir==0){ nbin_i=0; nbin_subdir=10; } else if(iDir==1){ nbin_i=10; nbin_subdir=16; } else if(iDir==2){ nbin_i=26; nbin_subdir=22; } } }else if((*igm)->getName().find("Barrel") != string::npos){ if(prefix!="SUMOFF"){ if(iDir==0){ nbin_i=0; nbin_subdir=192; } else if(iDir==1){ nbin_i=192; nbin_subdir=192; } else if(iDir==2){ nbin_i=384; nbin_subdir=192; } else if(iDir==3){ nbin_i=576; nbin_subdir=192; } }else{ if(iDir==0){ nbin_i=0; nbin_subdir=48; } else if(iDir==1){ nbin_i=48; nbin_subdir=48; } else if(iDir==2){ nbin_i=96; nbin_subdir=48; } else if(iDir==3){ nbin_i=144; nbin_subdir=48; } } } if((*igm)->getName().find("ndigisFREQ")==string::npos) { if(((*igm)->getName().find("adcCOMB")!=string::npos && me->getName().find("adcCOMB")!=string::npos) || ((*igm)->getName().find("chargeCOMB")!=string::npos && me->getName().find("chargeCOMB")!=string::npos)) { (*igm)->getTH1F()->Add(me->getTH1F()); }else if(((*igm)->getName().find("charge_")!=string::npos && (*igm)->getName().find("Track_")==string::npos && me->getName().find("charge_")!=string::npos && me->getName().find("Track_")==string::npos) || ((*igm)->getName().find("nclusters_")!=string::npos && (*igm)->getName().find("Track_")==string::npos && me->getName().find("nclusters_")!=string::npos && me->getName().find("Track_")==string::npos) || ((*igm)->getName().find("size_")!=string::npos && (*igm)->getName().find("Track_")==string::npos && me->getName().find("size_")!=string::npos && me->getName().find("Track_")==string::npos) || ((*igm)->getName().find("charge_OffTrack_")!=string::npos && me->getName().find("charge_OffTrack_")!=string::npos) || ((*igm)->getName().find("nclusters_OffTrack_")!=string::npos && me->getName().find("nclusters_OffTrack_")!=string::npos) || ((*igm)->getName().find("size_OffTrack_")!=string::npos && me->getName().find("size_OffTrack_")!=string::npos) || ((*igm)->getName().find("charge_OnTrack_")!=string::npos && me->getName().find("charge_OnTrack_")!=string::npos) || ((*igm)->getName().find("nclusters_OnTrack_")!=string::npos && me->getName().find("nclusters_OnTrack_")!=string::npos) || ((*igm)->getName().find("size_OnTrack_")!=string::npos && me->getName().find("size_OnTrack_")!=string::npos) || ((*igm)->getName().find("charge_")==string::npos && (*igm)->getName().find("nclusters_")==string::npos && (*igm)->getName().find("size_")==string::npos)){ for (int k = 1; k < nbin_subdir+1; k++) if(me->getBinContent(k) > 0) (*igm)->setBinContent(k+nbin_i, me->getBinContent(k)); } } else if(me->getName().find("ndigisFREQ")!=string::npos) { for (int k = 1; k < nbin_subdir+1; k++) if(me->getBinContent(k) > 0) (*igm)->setBinContent(k+nbin_i, me->getBinContent(k)); } } // end var in igm (gsum_mes) } // end igm loop } // end var in im (contents) } // end of iv loop } // end of im loop iDir++; first_subdir = false; // We are done processing the first directory, we don't add any new MEs in the future passes. } // end of it loop (subdirs) // cout<<"...leaving SiPixelActionExecutor::fillGrandBarrelSummaryHistos!"<<endl; }
void SiPixelActionExecutor::fillGrandEndcapSummaryHistos | ( | DQMStore * | bei, |
std::vector< std::string > & | me_names | ||
) | [private] |
Definition at line 1140 of file SiPixelActionExecutor.cc.
References DQMStore::cd(), relmon_rootfiles_spy::contents, compare_using_db::dir_name, DQMStore::get(), MonitorElement::getBinContent(), getGrandSummaryME(), DQMStore::getMEs(), MonitorElement::getName(), DQMStore::getSubdirs(), MonitorElement::getTH1F(), DQMStore::goUp(), gen::k, create_public_lumi_plots::path_name, prof2calltree::prefix, DQMStore::pwd(), source_type_, and indexGen::title.
Referenced by StorageAccount::fillSummary().
{ //printing cout<<"Entering SiPixelActionExecutor::fillGrandEndcapSummaryHistos..."<<endl; vector<MonitorElement*> gsum_mes; string currDir = bei->pwd(); string path_name = bei->pwd(); string dir_name = path_name.substr(path_name.find_last_of("/")+1); if ((dir_name.find("DQMData") == 0) || (dir_name.find("Pixel") == 0) || (dir_name.find("AdditionalPixelErrors") == 0) || (dir_name.find("Barrel") == 0) || (dir_name.find("Shell") == 0) || (dir_name.find("Layer") == 0) || (dir_name.find("Ladder") == 0) ) return; vector<string> subdirs = bei->getSubdirs(); int iDir =0; int nbin = 0; int nbin_i = 0; int nbin_subdir = 0; int cnt=0; bool first_subdir = true; for (vector<string>::const_iterator it = subdirs.begin(); it != subdirs.end(); it++) { cnt++; bei->cd(*it); vector<string> contents = bei->getMEs(); bei->goUp(); string prefix; if(source_type_==0) prefix="SUMRAW"; else if (source_type_==1) prefix="SUMDIG"; else if (source_type_==2) prefix="SUMCLU"; else if (source_type_==3) prefix="SUMTRK"; else if (source_type_==4) prefix="SUMHIT"; else if (source_type_>=7 && source_type_<20) prefix="SUMCAL"; else if (source_type_==20) prefix="SUMOFF"; for (vector<string>::const_iterator im = contents.begin(); im != contents.end(); im++) { for (vector<string>::const_iterator iv = me_names.begin(); iv != me_names.end(); iv++) { string var = "_" + (*iv) + "_"; if ((*im).find(var) != string::npos) { if((var=="_charge_" || var=="_nclusters_" || var=="_size_" || var=="_sizeX_" || var=="_sizeY_") && (*im).find("Track_")!=string::npos) continue; string full_path = (*it) + "/" +(*im); MonitorElement * me = bei->get(full_path.c_str()); if (!me) continue; if(source_type_==5||source_type_==6){ if((*iv)=="errorType"||(*iv)=="NErrors"||(*iv)=="fullType"||(*iv)=="chanNmbr"|| (*iv)=="TBMType"||(*iv)=="EvtNbr"||(*iv)=="evtSize"||(*iv)=="linkId"|| (*iv)=="ROCId"||(*iv)=="DCOLId"||(*iv)=="PXId"||(*iv)=="ROCNmbr"|| (*iv)=="TBMMessage"||(*iv)=="Type36Hitmap") prefix="SUMRAW"; else if((*iv)=="ndigis"||(*iv)=="adc" || (*iv)=="ndigisFREQ"||(*iv)=="adcCOMB") prefix="SUMDIG"; else if((*iv)=="nclusters"||(*iv)=="x"||(*iv)=="y"||(*iv)=="charge"||(*iv)=="chargeCOMB"|| (*iv)=="size"||(*iv)=="sizeX"||(*iv)=="sizeY"||(*iv)=="minrow"|| (*iv)=="maxrow"||(*iv)=="mincol"||(*iv)=="maxcol") prefix="SUMCLU"; if(currDir.find("Track")!=string::npos) prefix="SUMTRK"; else if((*iv)=="residualX_mean"||(*iv)=="residualY_mean"|| (*iv)=="residualX_RMS"||(*iv)=="residualY_RMS") prefix="SUMTRK"; else if((*iv)=="ClustX"||(*iv)=="ClustY"||(*iv)=="nRecHits"||(*iv)=="ErrorX"||(*iv)=="ErrorY") prefix="SUMHIT"; else if((*iv)=="Gain1d_mean"||(*iv)=="GainChi2NDF1d_mean"|| (*iv)=="GainChi2Prob1d_mean"||(*iv)=="Pedestal1d_mean"|| (*iv)=="ScurveChi2ProbSummary_mean"||(*iv)=="ScurveFitResultSummary_mean"|| (*iv)=="ScurveSigmasSummary_mean"||(*iv)=="ScurveThresholdSummary_mean"|| (*iv)=="Gain1d_RMS"||(*iv)=="GainChi2NDF1d_RMS"|| (*iv)=="GainChi2Prob1d_RMS"||(*iv)=="Pedestal1d_RMS"|| (*iv)=="GainNPoints1d_mean" || (*iv)=="GainNPoints1d_RMS" || (*iv)=="GainHighPoint1d_mean" || (*iv)=="GainHighPoint1d_RMS" || (*iv)=="GainLowPoint1d_mean" || (*iv)=="GainLowPoint1d_RMS" || (*iv)=="GainEndPoint1d_mean" || (*iv)=="GainEndPoint1d_RMS" || (*iv)=="GainFitResult2d_mean" || (*iv)=="GainFitResult2d_RMS" || (*iv)=="GainDynamicRange2d_mean" || (*iv)=="GainDynamicRange2d_RMS" || (*iv)=="GainSaturate2d_mean" || (*iv)=="GainSaturate2d_RMS" || (*iv)=="ScurveChi2ProbSummary_RMS"||(*iv)=="ScurveFitResultSummary_RMS"|| (*iv)=="ScurveSigmasSummary_RMS"||(*iv)=="ScurveThresholdSummary_RMS"|| (*iv)=="pixelAliveSummary_mean"||(*iv)=="pixelAliveSummary_FracOfPerfectPix"|| (*iv) == "SiPixelErrorsCalibDigis_NCalibErrors") prefix="SUMCAL"; } // bugfix: gsum_mes is filled using the contents of me_names. Proceeding with each entry in me_names. /* int actual_size = gsum_mes.size(); int wanted_size = me_names.size(); if (actual_size != wanted_size) { */ if (first_subdir){ // bool create_me = true; nbin = me->getTH1F()->GetNbinsX(); string me_name = prefix + "_" + (*iv) + "_" + dir_name; if((*iv)=="adcCOMB"||(*iv)=="chargeCOMB") me_name = "ALLMODS_" + (*iv) + "_" + dir_name; else if(prefix=="SUMOFF" && dir_name=="Endcap") nbin=96; else if(dir_name=="Endcap") nbin=672; else if(prefix=="SUMOFF" && dir_name.find("HalfCylinder")!=string::npos) nbin=24; else if(dir_name.find("HalfCylinder")!=string::npos) nbin=168; else if(prefix=="SUMOFF" && dir_name.find("Disk")!=string::npos) nbin=12; else if(dir_name.find("Disk")!=string::npos) nbin=84; else if(dir_name.find("Blade")!=string::npos) nbin=7; //else if(dir_name.find("Panel_1")!=string::npos) nbin=4; //else if(dir_name.find("Panel_2")!=string::npos) nbin=3; //cout << dir_name.c_str() << "\t" << nbin << endl; getGrandSummaryME(bei, nbin, me_name, gsum_mes); } /* for (vector<MonitorElement*>::const_iterator igm = gsum_mes.begin(); igm !=gsum_mes.end(); igm++) { // To be further optimized if( (*iv).find("Clust") != string::npos && (*igm)->getName().find(me_name) != string::npos ) create_me = false; //cout << "Already have it" << endl; } // printing cout<<"me_name to be created= "<<me_name<<endl; if(create_me) getGrandSummaryME(bei, nbin, me_name, gsum_mes); } */ // end bugfix: gsum_mes. for (vector<MonitorElement*>::const_iterator igm = gsum_mes.begin(); igm != gsum_mes.end(); igm++) { if ((*igm)->getName().find(var) != string::npos) { if(prefix=="SUMOFF") (*igm)->setAxisTitle("Blades",1); else if((*igm)->getName().find("adcCOMB_")!=string::npos) (*igm)->setAxisTitle("Digi charge [ADC]",1); else if((*igm)->getName().find("chargeCOMB_")!=string::npos) (*igm)->setAxisTitle("Cluster charge [kilo electrons]",1); else (*igm)->setAxisTitle("Modules",1); string title=""; if((*igm)->getName().find("NErrors_") != string::npos && prefix=="SUMOFF") title = "Total number of errors per Blade"; else if((*igm)->getName().find("NErrors_") != string::npos && prefix=="SUMRAW") title = "Total number of errors per Module"; else if(prefix=="SUMOFF") title = "mean " + (*iv) + " per Blade"; else if((*igm)->getName().find("FREQ_") != string::npos) title = "NEvents with digis per Module"; else if((*igm)->getName().find("adcCOMB_")!=string::npos) title = "NDigis"; else if((*igm)->getName().find("chargeCOMB_")!=string::npos) title = "NClusters"; else title = "mean " + (*iv) + " per Module"; (*igm)->setAxisTitle(title,2); nbin_i=0; if((*igm)->getName().find("ALLMODS_adcCOMB_")!=string::npos){ nbin_subdir=128; }else if((*igm)->getName().find("ALLMODS_chargeCOMB_")!=string::npos){ nbin_subdir=100; }else if((*igm)->getName().find("Panel_") != string::npos){ nbin_subdir=7; // }else if((*igm)->getName().find("Panel_1") != string::npos){ // nbin_subdir=4; // }else if((*igm)->getName().find("Panel_2") != string::npos){ // nbin_subdir=3; }else if((*igm)->getName().find("Blade") != string::npos){ if((*im).find("_1") != string::npos) nbin_subdir=4; if((*im).find("_2") != string::npos) {nbin_i=4; nbin_subdir=3;} }else if((*igm)->getName().find("Disk") != string::npos){ nbin_i=((cnt-1)%12)*7; nbin_subdir=7; }else if((*igm)->getName().find("HalfCylinder") != string::npos){ if(prefix!="SUMOFF"){ nbin_subdir=84; if((*im).find("_2") != string::npos) nbin_i=84; }else{ nbin_subdir=12; if((*im).find("_2") != string::npos) nbin_i=12; } }else if((*igm)->getName().find("Endcap") != string::npos){ if(prefix!="SUMOFF"){ nbin_subdir=168; if((*im).find("_mO") != string::npos) nbin_i=168; if((*im).find("_pI") != string::npos) nbin_i=336; if((*im).find("_pO") != string::npos) nbin_i=504; }else{ nbin_subdir=24; if((*im).find("_mO") != string::npos) nbin_i=24; if((*im).find("_pI") != string::npos) nbin_i=48; if((*im).find("_pO") != string::npos) nbin_i=72; } } // for (int k = 1; k < nbin_subdir+1; k++) { if((*igm)->getName().find("ndigisFREQ")==string::npos){ if(((*igm)->getName().find("adcCOMB")!=string::npos && me->getName().find("adcCOMB")!=string::npos) || ((*igm)->getName().find("chargeCOMB")!=string::npos && me->getName().find("chargeCOMB")!=string::npos)){ (*igm)->getTH1F()->Add(me->getTH1F()); }else if(((*igm)->getName().find("charge_")!=string::npos && (*igm)->getName().find("Track_")==string::npos && me->getName().find("charge_")!=string::npos && me->getName().find("Track_")==string::npos) || ((*igm)->getName().find("nclusters_")!=string::npos && (*igm)->getName().find("Track_")==string::npos && me->getName().find("nclusters_")!=string::npos && me->getName().find("Track_")==string::npos) || ((*igm)->getName().find("size_")!=string::npos && (*igm)->getName().find("Track_")==string::npos && me->getName().find("size_")!=string::npos && me->getName().find("Track_")==string::npos) || ((*igm)->getName().find("charge_OffTrack_")!=string::npos && me->getName().find("charge_OffTrack_")!=string::npos) || ((*igm)->getName().find("nclusters_OffTrack_")!=string::npos && me->getName().find("nclusters_OffTrack_")!=string::npos) || ((*igm)->getName().find("size_OffTrack_")!=string::npos && me->getName().find("size_OffTrack_")!=string::npos) || ((*igm)->getName().find("charge_OnTrack_")!=string::npos && me->getName().find("charge_OnTrack_")!=string::npos) || ((*igm)->getName().find("nclusters_OnTrack_")!=string::npos && me->getName().find("nclusters_OnTrack_")!=string::npos) || ((*igm)->getName().find("size_OnTrack_")!=string::npos && me->getName().find("size_OnTrack_")!=string::npos) || ((*igm)->getName().find("charge_")==string::npos && (*igm)->getName().find("nclusters_")==string::npos && (*igm)->getName().find("size_")==string::npos)){ for (int k = 1; k < nbin_subdir+1; k++) if(me->getBinContent(k) > 0) (*igm)->setBinContent(k+nbin_i, me->getBinContent(k)); } }else if(me->getName().find("ndigisFREQ")!=string::npos){ for (int k = 1; k < nbin_subdir+1; k++) if(me->getBinContent(k) > 0) (*igm)->setBinContent(k+nbin_i, me->getBinContent(k)); } // }// for } } } } } iDir++; first_subdir = false; // We are done processing the first directory, we don't add any new MEs in the future passes. } // end for it (subdirs) }
void SiPixelActionExecutor::fillLayout | ( | DQMStore * | bei | ) |
Definition at line 2001 of file SiPixelActionExecutor.cc.
References DQMStore::cd(), configWriter_, relmon_rootfiles_spy::contents, SiPixelConfigWriter::createColumn(), SiPixelConfigWriter::createRow(), DQMStore::getMEs(), DQMStore::getSubdirs(), DQMStore::goUp(), and DQMStore::pwd().
Referenced by createLayout().
{ static int icount = 0; string currDir = bei->pwd(); if (currDir.find("Ladder_") != string::npos) { vector<string> contents = bei->getMEs(); for (vector<string>::const_iterator im = contents.begin(); im != contents.end(); im++) { if ((*im).find("Clusters") != string::npos) { icount++; if (icount != 0 && icount%6 == 0) { configWriter_->createRow(); } ostringstream full_path; full_path << "test/" << currDir << "/" << *im ; string element = "monitorable"; string element_name = full_path.str(); configWriter_->createColumn(element, element_name); } } } else { vector<string> subdirs = bei->getSubdirs(); for (vector<string>::const_iterator it = subdirs.begin(); it != subdirs.end(); it++) { bei->cd(*it); fillLayout(bei); bei->goUp(); } } }
void SiPixelActionExecutor::fillOccupancy | ( | DQMStore * | bei, |
bool | isbarrel | ||
) | [private] |
Definition at line 1539 of file SiPixelActionExecutor.cc.
References DQMStore::cd(), DQMStore::get(), MonitorElement::getBinContent(), DQMStore::getMEs(), MonitorElement::getNbinsX(), MonitorElement::getNbinsY(), DQMStore::getSubdirs(), MonitorElement::getTH2F(), DQMStore::goUp(), i, j, OccupancyMap, getHLTPrescaleColumns::path, DQMStore::pwd(), MonitorElement::setBinContent(), and Tier0Flag_.
Referenced by createOccupancy().
{ //occupancyprinting cout<<"entering SiPixelActionExecutor::fillOccupancy..."<<std::endl; if(Tier0Flag_) return; string currDir = bei->pwd(); string dname = currDir.substr(currDir.find_last_of("/")+1); //occupancyprinting cout<<"currDir= "<<currDir<< " , dname= "<<dname<<std::endl; if(dname.find("Layer_")!=string::npos || dname.find("Disk_")!=string::npos){ vector<string> meVec = bei->getMEs(); for (vector<string>::const_iterator it = meVec.begin(); it != meVec.end(); it++) { string full_path = currDir + "/" + (*it); if(full_path.find("hitmap_siPixelDigis")!=string::npos){ // If we have the hitmap ME MonitorElement * me = bei->get(full_path); if (!me) continue; //occupancyprinting cout << full_path << endl; string path = full_path; while (path.find_last_of("/") != 5) // Stop before Pixel/ { path = path.substr(0,path.find_last_of("/")); // cout << "\t" << path << endl; OccupancyMap = bei->get(path + "/" + (isbarrel?"barrel":"endcap") + "OccupancyMap"); if(OccupancyMap){ for(int i=1; i!=me->getNbinsX()+1; i++) for(int j=1; j!=me->getNbinsY()+1; j++){ float previous = OccupancyMap->getBinContent(i,j); OccupancyMap->setBinContent(i,j,previous + me->getBinContent(i,j)); } OccupancyMap->getTH2F()->SetEntries(OccupancyMap->getTH2F()->Integral()); } } } } //bei->goUp(); } else { //occupancyprinting cout<<"finding subdirs now"<<std::endl; vector<string> subdirs = bei->getSubdirs(); for (vector<string>::const_iterator it = subdirs.begin(); it != subdirs.end(); it++) { bei->cd(*it); //occupancyprinting cout<<"now I am in "<<bei->pwd()<<std::endl; if(*it != "Pixel" && ((isbarrel && (*it).find("Barrel")==string::npos) || (!isbarrel && (*it).find("Endcap")==string::npos))) continue; //occupancyprinting cout<<"calling myself again "<<std::endl; fillOccupancy(bei, isbarrel); bei->goUp(); } } //occupancyprinting cout<<"leaving SiPixelActionExecutor::fillOccupancy..."<<std::endl; }
void SiPixelActionExecutor::fillSummary | ( | DQMStore * | bei, |
std::string | dir_name, | ||
std::vector< std::string > & | me_names, | ||
bool | isbarrel | ||
) | [private] |
Referenced by createSummary(), and StorageAccount::fillSummary().
void SiPixelActionExecutor::GetBladeSubdirs | ( | DQMStore * | bei, |
std::vector< std::string > & | blade_subdirs | ||
) | [private] |
Definition at line 373 of file SiPixelActionExecutor.cc.
References DQMStore::cd(), and DQMStore::getSubdirs().
Referenced by StorageAccount::fillSummary().
{ blade_subdirs.clear(); // cout << "BladeSubdirs::" << bei->pwd() << endl; vector<string> panels = bei->getSubdirs(); vector<string> modules; for (vector<string>::const_iterator it = panels.begin(); it != panels.end(); it++) { bei->cd(*it); modules = bei->getSubdirs(); for (vector<string>::const_iterator m_it = modules.begin(); m_it != modules.end(); m_it++) { // cout << "Would have added " << (*m_it) << "." << endl; blade_subdirs.push_back(*m_it); } } // cout << "Got Blade subdirs" << endl; }
void SiPixelActionExecutor::getData | ( | Double_t | map[][NLev2][NLev3][NLev4], |
std::string | type, | ||
DQMStore * | bei, | ||
funcType | ff, | ||
Int_t | i, | ||
Int_t | j, | ||
Int_t | k, | ||
Int_t | l | ||
) | [private] |
Definition at line 1712 of file SiPixelActionExecutor.cc.
References relmon_rootfiles_spy::contents, EachBinContent, Entries, DQMStore::get(), DQMStore::getMEs(), MonitorElement::getTH1F(), timingPdfMaker::histo, i, j, gen::k, prof2calltree::l, m, Mean, pileupCalc::nbins, DQMStore::pwd(), AlCaHLTBitMon_QueryRunRegistry::string, Sum, and WeightedSum.
Referenced by createMap().
{ // cout << "Starting with SiPixelActionExecutor::getData" << endl; vector<string> contents = bei->getMEs(); for (vector<string>::const_iterator im = contents.begin(); im != contents.end(); im++) { if((*im).find(type + "_") == string::npos){ // cout << "Skip"; continue; // Searching for specific type } //cout << "Name: " << *im << endl; std::string fullpathname = bei->pwd() + "/" + (*im); MonitorElement* me = bei->get(fullpathname); if (me) { TH1F* histo = me->getTH1F(); Int_t nbins = histo->GetNbinsX(); // cout << "# of bins: " << nbins << endl; switch (ff){ case EachBinContent: map[i][j][k][l] = histo->GetBinContent(l + 1); break; case Entries: map[i][j][k][l] = histo->GetEntries(); break; case Mean: map[i][j][k][l] = histo->GetMean(); break; case Sum: { Double_t sum = 0; for(Int_t m = 0; m < nbins; m++) sum += histo->GetBinContent(m + 1); map[i][j][k][l] = sum; } break; case WeightedSum: { Double_t sum = 0; for(Int_t m = 0; m < nbins; m++) sum += histo->GetBinContent(m + 1) * histo->GetBinLowEdge(m + 1); map[i][j][k][l] = sum; } break; default: map[i][j][k][l] = 0; } }} // cout << "Done with SiPixelActionExecutor::getData" << endl; }
MonitorElement * SiPixelActionExecutor::getFEDSummaryME | ( | DQMStore * | bei, |
std::string | me_name | ||
) | [private] |
Definition at line 1447 of file SiPixelActionExecutor.cc.
References DQMStore::book1D(), relmon_rootfiles_spy::contents, spr::find(), DQMStore::get(), DQMStore::getMEs(), DQMStore::pwd(), and MonitorElement::Reset().
Referenced by fillFEDErrorSummary().
{ //printing cout<<"Entering SiPixelActionExecutor::getFEDSummaryME..."<<endl; MonitorElement* me = 0; if((bei->pwd()).find("Pixel")==string::npos) return me; vector<string> contents = bei->getMEs(); for (vector<string>::const_iterator it = contents.begin(); it != contents.end(); it++) { if ((*it).find(me_name) == 0) { string fullpathname = bei->pwd() + "/" + (*it); me = bei->get(fullpathname); if (me) { //printing cout<<"got the ME: "<<fullpathname<<endl; me->Reset(); return me; } } } contents.clear(); me = bei->book1D(me_name.c_str(), me_name.c_str(),40,-0.5,39.5); //if(me) cout<<"finally got the ME: "<<me_name<<endl; return me; //printing cout<<"...leaving SiPixelActionExecutor::getFEDSummaryME!"<<endl; }
void SiPixelActionExecutor::getGrandSummaryME | ( | DQMStore * | bei, |
int | nbin, | ||
std::string & | me_name, | ||
std::vector< MonitorElement * > & | mes | ||
) | [private] |
Definition at line 1356 of file SiPixelActionExecutor.cc.
References DQMStore::book1D(), relmon_rootfiles_spy::contents, spr::find(), DQMStore::get(), DQMStore::getMEs(), DQMStore::pwd(), and MonitorElement::Reset().
Referenced by fillGrandBarrelSummaryHistos(), and fillGrandEndcapSummaryHistos().
{ //printing cout<<"Entering SiPixelActionExecutor::getGrandSummaryME for: "<<me_name<<endl; if((bei->pwd()).find("Pixel")==string::npos) return; // If one doesn't find pixel vector<string> contents = bei->getMEs(); for (vector<string>::const_iterator it = contents.begin(); it != contents.end(); it++) { //printing cout<<"in grand summary me: "<<me_name<<","<<(*it)<<endl; if ((*it).find(me_name) == 0) { string fullpathname = bei->pwd() + "/" + me_name; // cout << "###\t" << fullpathname << endl; MonitorElement* me = bei->get(fullpathname); if (me) { // cout<<"Found grand ME: "<<fullpathname<<endl; me->Reset(); mes.push_back(me); // if printing cout<<"reset and add the following me: "<<me->getName()<<endl; return; } } } // MonitorElement* temp_me = bei->book1D(me_name.c_str(),me_name.c_str(),nbin,1.,nbin+1.); // if (temp_me) mes.push_back(temp_me); MonitorElement* temp_me(0); if(me_name.find("ALLMODS_adcCOMB_")!=string::npos) temp_me = bei->book1D(me_name.c_str(),me_name.c_str(),128,0,256); else if(me_name.find("ALLMODS_chargeCOMB_")!=string::npos) temp_me = bei->book1D(me_name.c_str(),me_name.c_str(),100,0,200); else temp_me = bei->book1D(me_name.c_str(),me_name.c_str(),nbin,1.,nbin+1.); if (temp_me) mes.push_back(temp_me); // if(temp_me) cout<<"finally found grand ME: "<<me_name<<endl; }
MonitorElement* SiPixelActionExecutor::getSummaryME | ( | DQMStore * | bei, |
std::string | me_name | ||
) | [private] |
Referenced by StorageAccount::fillSummary().
int SiPixelActionExecutor::getTkMapMENames | ( | std::vector< std::string > & | names | ) |
Definition at line 2038 of file SiPixelActionExecutor.cc.
References tkMapMENames.
{ if (tkMapMENames.size() == 0) return 0; for (vector<string>::iterator it = tkMapMENames.begin(); it != tkMapMENames.end(); it++) { names.push_back(*it) ; } return names.size(); }
Double_t SiPixelActionExecutor::mapMax | ( | const Double_t | map[][NLev2][NLev3][NLev4], |
bool | isBarrel | ||
) | [private] |
Definition at line 1860 of file SiPixelActionExecutor.cc.
References b, i, max(), NLev1, and AlCaHLTBitMon_ParallelJobs::p.
Referenced by createMaps().
{ Double_t max = map[0][0][0][0]; for(Int_t p = 0 ; p < NLev1 ; p++) for(Int_t d = 0 ; d < (isBarrel?3:2); d++) for(Int_t b = 0 ; b < (isBarrel?(d*6+10):12); b++) for(Int_t i = 0 ; i < (isBarrel?4:7); i++) if(map[p][d][b][i] > max) max = map[p][d][b][i]; // cout << "Done with SiPixelActionExecutor::mapMax" << endl; return max; }
Double_t SiPixelActionExecutor::mapMin | ( | const Double_t | map[][NLev2][NLev3][NLev4], |
bool | isBarrel | ||
) | [private] |
Definition at line 1843 of file SiPixelActionExecutor.cc.
References b, i, min, NLev1, and AlCaHLTBitMon_ParallelJobs::p.
Referenced by createMaps().
{ Double_t min = map[0][0][0][0]; for(Int_t p = 0 ; p < NLev1 ; p++) for(Int_t d = 0 ; d < (isBarrel?3:2) ; d++) for(Int_t b = 0 ; b < (isBarrel?(d*6+10):12) ; b++) for(Int_t i = 0 ; i < (isBarrel?4:7); i++){ if(map[p][d][b][i] < min) min = map[p][d][b][i]; } // cout << "Done with SiPixelActionExecutor::mapMin" << endl; return min; }
void SiPixelActionExecutor::prephistosB | ( | MonitorElement * | me[NCyl], |
DQMStore * | bei, | ||
const Double_t | map[][NLev2][NLev3][NLev4], | ||
std::string | name, | ||
Double_t | min, | ||
Double_t | max | ||
) | [private] |
Definition at line 1771 of file SiPixelActionExecutor.cc.
References b, gather_cfg::cout, DQMStore::get(), i, NLayer, NModuleB, AlCaHLTBitMon_ParallelJobs::p, getHLTPrescaleColumns::path, DQMStore::pwd(), AlCaHLTBitMon_QueryRunRegistry::string, and groupFilesInBlocks::temp.
Referenced by createMaps().
{ // cout << "Starting with SiPixelActionExecutor::prephistosB" << endl; std::string part[] = { "Layer_1", "Layer_2", "Layer_3"}; std::string path = bei->pwd(); for (Int_t i = 0; i < NLayer; i++) { std::string fullpath = path + "/" + "TRKMAP_" + name + "_" + part[i]; MonitorElement* temp = bei->get(fullpath); if(temp) me[i] = temp; else cout << "Problem: " << fullpath << endl; } for(Int_t p = 0 ; p < NLayer ; p++){ for(Int_t b = 0 ; b < (10 + 6 * p); b++) for(Int_t i = 0 ; i < NModuleB ; i++){ me[p]->getTH2F()->SetBinContent(b + 1, i + 1, map[0][p][b][i]); me[p]->getTH2F()->SetBinContent(b + 1, i + 1 + NModuleB, map[1][p][b][i]); me[p]->getTH2F()->SetBinContent(b + 1 + 10 + 6 * p, i + 1, map[2][p][b][i]); me[p]->getTH2F()->SetBinContent(b + 1 + 10 + 6 * p, i + 1 + NModuleB, map[3][p][b][i]); } me[p]->getTH2F()->SetMinimum(min); me[p]->getTH2F()->SetMaximum(max); } // cout << "Done with SiPixelActionExecutor::prephistosB" << endl; }
void SiPixelActionExecutor::prephistosE | ( | MonitorElement * | me[NCyl], |
DQMStore * | bei, | ||
const Double_t | map[][NLev2][NLev3][NLev4], | ||
std::string | name, | ||
Double_t | min, | ||
Double_t | max | ||
) | [private] |
Definition at line 1801 of file SiPixelActionExecutor.cc.
References b, trackerHits::c, gather_cfg::cout, DQMStore::get(), i, NBlade, NCyl, NDisk, getHLTPrescaleColumns::path, DQMStore::pwd(), AlCaHLTBitMon_QueryRunRegistry::string, and groupFilesInBlocks::temp.
Referenced by createMaps().
{ // cout << "Starting with SiPixelActionExecutor::prephistosE" << endl; std::string part[] = { "Disc_1_M", "Disc_2_M", "Disc_1_P", "Disc_2_P" }; std::string path = bei->pwd(); for (Int_t i = 0; i < NCyl; i++) { std::string fullpath = path + "/" + "TRKMAP_" + name + "_" + part[i]; MonitorElement* temp = bei->get(fullpath); if(temp) { me[i] = temp; me[i]->getTH2F()->SetMinimum(min); me[i]->getTH2F()->SetMaximum(max); } else cout << "Problem: " << fullpath << endl; } for(Int_t c = 0 ; c < NCyl ; c += 2) for(Int_t d = 0 ; d < NDisk ; d++) for(Int_t b = 0 ; b < NBlade ; b++){ me[c + d]->getTH2F()->SetBinContent(b + 1, 1, map[c][d][b][0]); me[c + d]->getTH2F()->SetBinContent(b + 1, 2, map[c][d][b][4]); me[c + d]->getTH2F()->SetBinContent(b + 1, 3, map[c][d][b][1]); me[c + d]->getTH2F()->SetBinContent(b + 1, 4, map[c][d][b][5]); me[c + d]->getTH2F()->SetBinContent(b + 1, 5, map[c][d][b][2]); me[c + d]->getTH2F()->SetBinContent(b + 1, 6, map[c][d][b][6]); me[c + d]->getTH2F()->SetBinContent(b + 1, 7, map[c][d][b][3]); me[c + d]->getTH2F()->SetBinContent(2 * NBlade - b, 1, map[c + 1][d][b][0]); me[c + d]->getTH2F()->SetBinContent(2 * NBlade - b, 2, map[c + 1][d][b][4]); me[c + d]->getTH2F()->SetBinContent(2 * NBlade - b, 3, map[c + 1][d][b][1]); me[c + d]->getTH2F()->SetBinContent(2 * NBlade - b, 4, map[c + 1][d][b][5]); me[c + d]->getTH2F()->SetBinContent(2 * NBlade - b, 5, map[c + 1][d][b][2]); me[c + d]->getTH2F()->SetBinContent(2 * NBlade - b, 6, map[c + 1][d][b][6]); me[c + d]->getTH2F()->SetBinContent(2 * NBlade - b, 7, map[c + 1][d][b][3]); } // cout << "Done with SiPixelActionExecutor::prephistosE" << endl; }
bool SiPixelActionExecutor::readConfiguration | ( | int & | tkmap_freq, |
int & | summary_freq | ||
) |
Definition at line 128 of file SiPixelActionExecutor.cc.
References configParser_, gather_cfg::cout, DQMParserBase::getDocument(), SiPixelConfigParser::getFrequencyForBarrelSummary(), SiPixelConfigParser::getFrequencyForTrackerMap(), offlineXMLfile_, and AlCaHLTBitMon_QueryRunRegistry::string.
{ //printing cout<<"Entering SiPixelActionExecutor::readConfiguration..."<<endl; string localPath; if(offlineXMLfile_) localPath = string("DQM/SiPixelMonitorClient/test/sipixel_tier0_config.xml"); else localPath = string("DQM/SiPixelMonitorClient/test/sipixel_monitorelement_config.xml"); if (configParser_ == 0) { configParser_ = new SiPixelConfigParser(); configParser_->getDocument(edm::FileInPath(localPath).fullPath()); } if (!configParser_->getFrequencyForTrackerMap(tkmap_freq)){ cout << "SiPixelActionExecutor::readConfiguration: Failed to read TrackerMap configuration parameters!! "; return false; } if (!configParser_->getFrequencyForBarrelSummary(summary_freq)){ edm::LogInfo("SiPixelActionExecutor") << "Failed to read Summary configuration parameters!! " << "\n" ; return false; } //printing cout<<"...leaving SiPixelActionExecutor::readConfiguration..."<<endl; return true; }
void SiPixelActionExecutor::readConfiguration | ( | ) |
Definition at line 62 of file SiPixelActionExecutor.cc.
References configParser_, DQMParserBase::getDocument(), offlineXMLfile_, and AlCaHLTBitMon_QueryRunRegistry::string.
{ string localPath; if(offlineXMLfile_) localPath = string("DQM/SiPixelMonitorClient/test/sipixel_tier0_config.xml"); else localPath = string("DQM/SiPixelMonitorClient/test/sipixel_monitorelement_config.xml"); if (configParser_ == 0) { configParser_ = new SiPixelConfigParser(); configParser_->getDocument(edm::FileInPath(localPath).fullPath()); } }
bool SiPixelActionExecutor::readConfiguration | ( | int & | tkmap_freq, |
int & | sum_barrel_freq, | ||
int & | sum_endcap_freq, | ||
int & | sum_grandbarrel_freq, | ||
int & | sum_grandendcap_freq, | ||
int & | message_limit, | ||
int & | source_type, | ||
int & | calib_type | ||
) |
Definition at line 75 of file SiPixelActionExecutor.cc.
References configParser_, gather_cfg::cout, SiPixelConfigParser::getCalibType(), DQMParserBase::getDocument(), SiPixelConfigParser::getFrequencyForBarrelSummary(), SiPixelConfigParser::getFrequencyForEndcapSummary(), SiPixelConfigParser::getFrequencyForGrandBarrelSummary(), SiPixelConfigParser::getFrequencyForGrandEndcapSummary(), SiPixelConfigParser::getFrequencyForTrackerMap(), SiPixelConfigParser::getMessageLimitForQTests(), SiPixelConfigParser::getSourceType(), offlineXMLfile_, and AlCaHLTBitMon_QueryRunRegistry::string.
Referenced by SiPixelWebInterface::readConfiguration().
{ //printing cout<<"Entering SiPixelActionExecutor::readConfiguration..."<<endl; string localPath; if(offlineXMLfile_) localPath = string("DQM/SiPixelMonitorClient/test/sipixel_tier0_config.xml"); else localPath = string("DQM/SiPixelMonitorClient/test/sipixel_monitorelement_config.xml"); if (configParser_ == 0) { configParser_ = new SiPixelConfigParser(); configParser_->getDocument(edm::FileInPath(localPath).fullPath()); } if (!configParser_->getFrequencyForTrackerMap(tkmap_freq)){ cout << "SiPixelActionExecutor::readConfiguration: Failed to read TrackerMap configuration parameters!! "; return false; } if (!configParser_->getFrequencyForBarrelSummary(sum_barrel_freq)){ edm::LogInfo("SiPixelActionExecutor") << "Failed to read Barrel Summary configuration parameters!! " << "\n" ; return false; } if (!configParser_->getFrequencyForEndcapSummary(sum_endcap_freq)){ edm::LogInfo("SiPixelActionExecutor") << "Failed to read Endcap Summary configuration parameters!! " << "\n" ; return false; } if (!configParser_->getFrequencyForGrandBarrelSummary(sum_grandbarrel_freq)){ edm::LogInfo("SiPixelActionExecutor") << "Failed to read Grand Barrel Summary configuration parameters!! " << "\n" ; return false; } if (!configParser_->getFrequencyForGrandEndcapSummary(sum_grandendcap_freq)){ edm::LogInfo("SiPixelActionExecutor") << "Failed to read Grand Endcap Summary configuration parameters!! " << "\n" ; return false; } if (!configParser_->getMessageLimitForQTests(message_limit_)){ edm::LogInfo("SiPixelActionExecutor") << "Failed to read QTest Message Limit" << "\n" ; return false; } if (!configParser_->getSourceType(source_type_)){ edm::LogInfo("SiPixelActionExecutor") << "Failed to read Source Type" << "\n" ; return false; } if (!configParser_->getCalibType(calib_type_)){ edm::LogInfo("SiPixelActionExecutor") << "Failed to read Calib Type" << "\n" ; return false; } //printing cout<<"...leaving SiPixelActionExecutor::readConfiguration..."<<endl; return true; }
void SiPixelActionExecutor::setupQTests | ( | DQMStore * | bei | ) |
Definition at line 1880 of file SiPixelActionExecutor.cc.
References QTestHandle::attachTests(), DQMStore::cd(), QTestHandle::configureTests(), gather_cfg::cout, edm::FileInPath::fullPath(), offlineXMLfile_, qtHandler_, and AlCaHLTBitMon_QueryRunRegistry::string.
Referenced by SiPixelWebInterface::performAction().
{ //printing cout<<"Entering SiPixelActionExecutor::setupQTests: "<<endl; bei->cd(); bei->cd("Pixel"); string localPath; if(offlineXMLfile_) localPath = string("DQM/SiPixelMonitorClient/test/sipixel_tier0_qualitytest.xml"); else localPath = string("DQM/SiPixelMonitorClient/test/sipixel_qualitytest_config.xml"); if(!qtHandler_){ qtHandler_ = new QTestHandle(); } if(!qtHandler_->configureTests(edm::FileInPath(localPath).fullPath(),bei)){ qtHandler_->attachTests(bei,false); bei->cd(); }else{ cout << " Problem setting up quality tests "<<endl; } //printing cout<<" leaving SiPixelActionExecutor::setupQTests. "<<endl; }
int SiPixelActionExecutor::calib_type_ [private] |
Definition at line 139 of file SiPixelActionExecutor.h.
Referenced by checkQTestResults().
Definition at line 130 of file SiPixelActionExecutor.h.
Referenced by checkQTestResults(), createSummary(), StorageAccount::fillSummary(), readConfiguration(), SiPixelActionExecutor(), and ~SiPixelActionExecutor().
Definition at line 131 of file SiPixelActionExecutor.h.
Referenced by createLayout(), createSummary(), fillLayout(), SiPixelActionExecutor(), and ~SiPixelActionExecutor().
Definition at line 155 of file SiPixelActionExecutor.h.
Referenced by bookDeviations().
Definition at line 160 of file SiPixelActionExecutor.h.
Referenced by bookDeviations().
Definition at line 157 of file SiPixelActionExecutor.h.
Referenced by bookDeviations().
Definition at line 162 of file SiPixelActionExecutor.h.
Referenced by bookDeviations().
Definition at line 158 of file SiPixelActionExecutor.h.
Referenced by bookDeviations().
Definition at line 163 of file SiPixelActionExecutor.h.
Referenced by bookDeviations().
Definition at line 156 of file SiPixelActionExecutor.h.
Referenced by bookDeviations().
Definition at line 161 of file SiPixelActionExecutor.h.
Referenced by bookDeviations().
Definition at line 159 of file SiPixelActionExecutor.h.
Referenced by bookDeviations().
Definition at line 164 of file SiPixelActionExecutor.h.
Referenced by bookDeviations().
Definition at line 153 of file SiPixelActionExecutor.h.
Referenced by bookEfficiency(), and fillEfficiency().
Definition at line 154 of file SiPixelActionExecutor.h.
Referenced by bookEfficiency(), and fillEfficiency().
Definition at line 151 of file SiPixelActionExecutor.h.
Referenced by bookEfficiency(), and fillEfficiency().
Definition at line 152 of file SiPixelActionExecutor.h.
Referenced by bookEfficiency(), and fillEfficiency().
Definition at line 148 of file SiPixelActionExecutor.h.
Referenced by bookEfficiency(), and fillEfficiency().
Definition at line 149 of file SiPixelActionExecutor.h.
Referenced by bookEfficiency(), and fillEfficiency().
Definition at line 150 of file SiPixelActionExecutor.h.
Referenced by bookEfficiency(), and fillEfficiency().
int SiPixelActionExecutor::message_limit_ [private] |
Definition at line 137 of file SiPixelActionExecutor.h.
Referenced by checkQTestResults().
int SiPixelActionExecutor::ndet_ [private] |
Definition at line 140 of file SiPixelActionExecutor.h.
Referenced by dumpBarrelModIds(), dumpEndcapModIds(), and SiPixelActionExecutor().
Definition at line 146 of file SiPixelActionExecutor.h.
Referenced by bookOccupancyPlots(), and fillOccupancy().
bool SiPixelActionExecutor::offlineXMLfile_ [private] |
Definition at line 141 of file SiPixelActionExecutor.h.
Referenced by createSummary(), SiStripActionExecutor::createTkMap(), readConfiguration(), and setupQTests().
Definition at line 147 of file SiPixelActionExecutor.h.
QTestHandle* SiPixelActionExecutor::qtHandler_ [private] |
Definition at line 144 of file SiPixelActionExecutor.h.
Referenced by setupQTests(), SiPixelActionExecutor(), and ~SiPixelActionExecutor().
int SiPixelActionExecutor::source_type_ [private] |
Definition at line 138 of file SiPixelActionExecutor.h.
Referenced by createSummary(), fillFEDErrorSummary(), fillGrandBarrelSummaryHistos(), fillGrandEndcapSummaryHistos(), and StorageAccount::fillSummary().
std::vector<std::string> SiPixelActionExecutor::summaryMENames [private] |
Definition at line 134 of file SiPixelActionExecutor.h.
TH2F* SiPixelActionExecutor::temp_1x2 [private] |
Definition at line 175 of file SiPixelActionExecutor.h.
TH2F* SiPixelActionExecutor::temp_1x5 [private] |
Definition at line 176 of file SiPixelActionExecutor.h.
TH2F* SiPixelActionExecutor::temp_2x3 [private] |
Definition at line 177 of file SiPixelActionExecutor.h.
TH2F* SiPixelActionExecutor::temp_2x4 [private] |
Definition at line 178 of file SiPixelActionExecutor.h.
TH2F* SiPixelActionExecutor::temp_2x5 [private] |
Definition at line 179 of file SiPixelActionExecutor.h.
TH2F* SiPixelActionExecutor::temp_H [private] |
Definition at line 174 of file SiPixelActionExecutor.h.
Definition at line 132 of file SiPixelActionExecutor.h.
Referenced by dumpBarrelModIds(), and dumpEndcapModIds().
bool SiPixelActionExecutor::Tier0Flag_ [private] |
Definition at line 142 of file SiPixelActionExecutor.h.
Referenced by bookEfficiency(), bookOccupancyPlots(), createMap(), createOccupancy(), fillEfficiency(), and fillOccupancy().
std::vector<std::string> SiPixelActionExecutor::tkMapMENames [private] |
Definition at line 135 of file SiPixelActionExecutor.h.
Referenced by getTkMapMENames().