CMS 3D CMS Logo

EESummaryClient Class Reference

#include <DQM/EcalEndcapMonitorClient/interface/EESummaryClient.h>

Inheritance diagram for EESummaryClient:

EEClient

List of all members.

Public Member Functions

void analyze (void)
 Analyze.
void beginJob (DQMStore *dqmStore)
 BeginJob.
void beginRun (void)
 BeginRun.
void cleanup (void)
 Cleanup.
 EESummaryClient (const edm::ParameterSet &ps)
 Constructor.
void endJob (void)
 EndJob.
void endRun (void)
 EndRun.
int getEvtPerJob ()
 Get Functions.
int getEvtPerRun ()
 Returns the number of processed events in this Run.
void htmlOutput (int run, std::string &htmlDir, std::string &htmlName)
 HtmlOutput.
void setFriends (std::vector< EEClient * > clients)
 Set Clients.
void setup (void)
 Setup.
void softReset (bool flag)
 SoftReset.
bool writeDb (EcalCondDBInterface *econn, RunIOV *runiov, MonRunIOV *moniov, bool &status, bool flag)
 WriteDB.
virtual ~EESummaryClient ()
 Destructor.

Private Member Functions

void writeMap (std::ofstream &hf, const char *mapname)

Private Attributes

std::vector< EEClient * > clients_
bool cloneME_
bool debug_
DQMStoredqmStore_
bool enableCleanup_
int ievt_
int jevt_
MonitorElementmeCosmic_ [2]
MonitorElementmeGlobalSummary_ [2]
MonitorElementmeIntegrity_ [2]
MonitorElementmeIntegrityErr_
MonitorElementmeLaserL1_ [2]
MonitorElementmeLaserL1Err_
MonitorElementmeLaserL1PN_ [2]
MonitorElementmeLaserL1PNErr_
MonitorElementmeLedL1_ [2]
MonitorElementmeLedL1Err_
MonitorElementmeLedL1PN_ [2]
MonitorElementmeLedL1PNErr_
MonitorElementmeOccupancy1D_
MonitorElementmeOccupancy_ [2]
MonitorElementmePedestal_ [2]
MonitorElementmePedestalErr_
MonitorElementmePedestalOnline_ [2]
MonitorElementmePedestalOnlineErr_
MonitorElementmePedestalPN_ [2]
MonitorElementmePedestalPNErr_
MonitorElementmeStatusFlags_ [2]
MonitorElementmeStatusFlagsErr_
MonitorElementmeTestPulse_ [2]
MonitorElementmeTestPulseErr_
MonitorElementmeTestPulsePN_ [2]
MonitorElementmeTestPulsePNErr_
MonitorElementmeTiming_ [2]
MonitorElementmeTriggerTowerEmulError_ [2]
MonitorElementmeTriggerTowerEt_ [2]
MonitorElementmeTriggerTowerTiming_ [2]
std::string prefixME_
std::vector< intsuperModules_
bool verbose_


Detailed Description

Definition at line 29 of file EESummaryClient.h.


Constructor & Destructor Documentation

EESummaryClient::EESummaryClient ( const edm::ParameterSet ps  ) 

Constructor.

Definition at line 49 of file EESummaryClient.cc.

References cloneME_, debug_, enableCleanup_, edm::ParameterSet::getUntrackedParameter(), i, meCosmic_, meGlobalSummary_, meIntegrity_, meIntegrityErr_, meLaserL1_, meLaserL1Err_, meLaserL1PN_, meLaserL1PNErr_, meLedL1_, meLedL1Err_, meLedL1PN_, meLedL1PNErr_, meOccupancy1D_, meOccupancy_, mePedestal_, mePedestalErr_, mePedestalOnline_, mePedestalOnlineErr_, mePedestalPN_, mePedestalPNErr_, meStatusFlags_, meStatusFlagsErr_, meTestPulse_, meTestPulseErr_, meTestPulsePN_, meTestPulsePNErr_, meTiming_, meTriggerTowerEmulError_, meTriggerTowerEt_, meTriggerTowerTiming_, prefixME_, superModules_, and verbose_.

Referenced by EcalEndcapMonitorClient::EcalEndcapMonitorClient().

00049                                                        {
00050 
00051   // cloneME switch
00052   cloneME_ = ps.getUntrackedParameter<bool>("cloneME", true);
00053 
00054   // verbose switch
00055   verbose_ = ps.getUntrackedParameter<bool>("verbose", true);
00056 
00057   // debug switch
00058   debug_ = ps.getUntrackedParameter<bool>("debug", false);
00059 
00060   // prefixME path
00061   prefixME_ = ps.getUntrackedParameter<string>("prefixME", "");
00062 
00063   // enableCleanup_ switch
00064   enableCleanup_ = ps.getUntrackedParameter<bool>("enableCleanup", false);
00065 
00066   // vector of selected Super Modules (Defaults to all 18).
00067   superModules_.reserve(18);
00068   for ( unsigned int i = 1; i <= 18; i++ ) superModules_.push_back(i);
00069   superModules_ = ps.getUntrackedParameter<vector<int> >("superModules", superModules_);
00070 
00071   // summary maps
00072   meIntegrity_[0]      = 0;
00073   meIntegrity_[1]      = 0;
00074   meOccupancy_[0]      = 0;
00075   meOccupancy_[1]      = 0;
00076   meStatusFlags_[0]    = 0;
00077   meStatusFlags_[1]    = 0;
00078   mePedestalOnline_[0] = 0;
00079   mePedestalOnline_[1] = 0;
00080   meLaserL1_[0]        = 0;
00081   meLaserL1_[1]        = 0;
00082   meLaserL1PN_[0]      = 0;
00083   meLaserL1PN_[1]      = 0;
00084   meLedL1_[0]          = 0;
00085   meLedL1_[1]          = 0;
00086   meLedL1PN_[0]        = 0;
00087   meLedL1PN_[1]        = 0;
00088   mePedestal_[0]       = 0;
00089   mePedestal_[1]       = 0;
00090   mePedestalPN_[0]     = 0;
00091   mePedestalPN_[1]     = 0;
00092   meTestPulse_[0]      = 0;
00093   meTestPulse_[1]      = 0;
00094   meTestPulsePN_[0]    = 0;
00095   meTestPulsePN_[1]    = 0;
00096   meGlobalSummary_[0]  = 0;
00097   meGlobalSummary_[1]  = 0;
00098 
00099   meCosmic_[0]         = 0;
00100   meCosmic_[1]         = 0;
00101   meTiming_[0]         = 0;
00102   meTiming_[1]         = 0;
00103   meTriggerTowerEt_[0]        = 0;
00104   meTriggerTowerEt_[1]        = 0;
00105   meTriggerTowerEmulError_[0] = 0;
00106   meTriggerTowerEmulError_[1] = 0;
00107   meTriggerTowerTiming_[0] = 0;
00108   meTriggerTowerTiming_[1] = 0;
00109 
00110   // summary errors
00111   meIntegrityErr_       = 0;
00112   meOccupancy1D_        = 0;
00113   meStatusFlagsErr_     = 0;
00114   mePedestalOnlineErr_  = 0;
00115   meLaserL1Err_         = 0;
00116   meLaserL1PNErr_       = 0;
00117   meLedL1Err_           = 0;
00118   meLedL1PNErr_         = 0;
00119   mePedestalErr_        = 0;
00120   mePedestalPNErr_      = 0;
00121   meTestPulseErr_       = 0;
00122   meTestPulsePNErr_     = 0;
00123 
00124 }

EESummaryClient::~EESummaryClient (  )  [virtual]

Destructor.

Definition at line 126 of file EESummaryClient.cc.

00126                                   {
00127 
00128 }


Member Function Documentation

void EESummaryClient::analyze ( void   )  [virtual]

Analyze.

Implements EEClient.

Definition at line 680 of file EESummaryClient.cc.

References clients_, GenMuonPlsPt100GeV_cfg::cout, debug_, dqmStore_, lat::endl(), MonitorElement::Fill(), find(), DQMStore::get(), MonitorElement::getBinContent(), MonitorElement::getEntries(), EECosmicClient::h02_, h2, EEIntegrityClient::h_, histo, i, ievt_, iter, Numbers::ix0EE(), Numbers::iy0EE(), j, jevt_, EETriggerTowerClient::l01_, me, EETriggerTowerClient::me_h01_, EETriggerTowerClient::me_o01_, meCosmic_, EELaserClient::meg01_, EELedClient::meg01_, EEPedestalClient::meg01_, EETestPulseClient::meg01_, EEIntegrityClient::meg01_, EETimingClient::meg01_, EEPedestalClient::meg02_, EETestPulseClient::meg02_, EEPedestalOnlineClient::meg03_, EEPedestalClient::meg03_, EETestPulseClient::meg03_, meGlobalSummary_, EEStatusFlagsClient::meh01_, meIntegrity_, meIntegrityErr_, meLaserL1_, meLaserL1Err_, meLaserL1PN_, meLaserL1PNErr_, meLedL1_, meLedL1Err_, meLedL1PN_, meLedL1PNErr_, meOccupancy1D_, meOccupancy_, mePedestal_, mePedestalErr_, mePedestalOnline_, mePedestalOnlineErr_, mePedestalPN_, mePedestalPNErr_, meStatusFlags_, meStatusFlagsErr_, meTestPulse_, meTestPulseErr_, meTestPulsePN_, meTestPulsePNErr_, meTiming_, meTriggerTowerEmulError_, meTriggerTowerEt_, meTriggerTowerTiming_, VarParsing::obj, prefixME_, getDQMSummary::reportSummary, MonitorElement::Reset(), Numbers::sEE(), MonitorElement::setBinContent(), MonitorElement::setEntries(), superModules_, and Numbers::validEE().

Referenced by EcalEndcapMonitorClient::analyze().

00680                                   {
00681 
00682   ievt_++;
00683   jevt_++;
00684   if ( ievt_ % 10 == 0 ) {
00685     if ( debug_ ) cout << "EESummaryClient: ievt/jevt = " << ievt_ << "/" << jevt_ << endl;
00686   }
00687 
00688   for ( int ix = 1; ix <= 100; ix++ ) {
00689     for ( int iy = 1; iy <= 100; iy++ ) {
00690 
00691       meIntegrity_[0]->setBinContent( ix, iy, 6. );
00692       meIntegrity_[1]->setBinContent( ix, iy, 6. );
00693       meOccupancy_[0]->setBinContent( ix, iy, 0. );
00694       meOccupancy_[1]->setBinContent( ix, iy, 0. );
00695       meStatusFlags_[0]->setBinContent( ix, iy, 6. );
00696       meStatusFlags_[1]->setBinContent( ix, iy, 6. );
00697       mePedestalOnline_[0]->setBinContent( ix, iy, 6. );
00698       mePedestalOnline_[1]->setBinContent( ix, iy, 6. );
00699 
00700       meLaserL1_[0]->setBinContent( ix, iy, 6. );
00701       meLaserL1_[1]->setBinContent( ix, iy, 6. );
00702       meLedL1_[0]->setBinContent( ix, iy, 6. );
00703       meLedL1_[1]->setBinContent( ix, iy, 6. );
00704       mePedestal_[0]->setBinContent( ix, iy, 6. );
00705       mePedestal_[1]->setBinContent( ix, iy, 6. );
00706       meTestPulse_[0]->setBinContent( ix, iy, 6. );
00707       meTestPulse_[1]->setBinContent( ix, iy, 6. );
00708 
00709       meCosmic_[0]->setBinContent( ix, iy, 0. );
00710       meCosmic_[1]->setBinContent( ix, iy, 0. );
00711       meTiming_[0]->setBinContent( ix, iy, 6. );
00712       meTiming_[1]->setBinContent( ix, iy, 6. );
00713 
00714       meGlobalSummary_[0]->setBinContent( ix, iy, 6. );
00715       meGlobalSummary_[1]->setBinContent( ix, iy, 6. );
00716 
00717     }
00718   }
00719 
00720   for ( int ix = 1; ix <= 20; ix++ ) {
00721     for ( int iy = 1; iy <= 90; iy++ ) {
00722 
00723       meLaserL1PN_[0]->setBinContent( ix, iy, 6. );
00724       meLaserL1PN_[1]->setBinContent( ix, iy, 6. );
00725       mePedestalPN_[0]->setBinContent( ix, iy, 6. );
00726       mePedestalPN_[1]->setBinContent( ix, iy, 6. );
00727       meTestPulsePN_[0]->setBinContent( ix, iy, 6. );
00728       meTestPulsePN_[1]->setBinContent( ix, iy, 6. );
00729 
00730     }
00731   }
00732 
00733   for ( int ix = 1; ix <= 100; ix++ ) {
00734     for ( int iy = 1; iy <= 100; iy++ ) {
00735       meTriggerTowerEt_[0]->setBinContent( ix, iy, 0. );
00736       meTriggerTowerEt_[1]->setBinContent( ix, iy, 0. );
00737       meTriggerTowerEmulError_[0]->setBinContent( ix, iy, 6. );
00738       meTriggerTowerEmulError_[1]->setBinContent( ix, iy, 6. );
00739       meTriggerTowerTiming_[0]->setBinContent( ix, iy, -1 );
00740       meTriggerTowerTiming_[1]->setBinContent( ix, iy, -1 );
00741     }
00742   }
00743 
00744   meIntegrity_[0]->setEntries( 0 );
00745   meIntegrity_[1]->setEntries( 0 );
00746   meIntegrityErr_->Reset();
00747   meOccupancy_[0]->setEntries( 0 );
00748   meOccupancy_[1]->setEntries( 0 );
00749   meOccupancy1D_->Reset();
00750   meStatusFlags_[0]->setEntries( 0 );
00751   meStatusFlags_[1]->setEntries( 0 );
00752   meStatusFlagsErr_->Reset();
00753   mePedestalOnline_[0]->setEntries( 0 );
00754   mePedestalOnline_[1]->setEntries( 0 );
00755   mePedestalOnlineErr_->Reset();
00756 
00757   meLaserL1_[0]->setEntries( 0 );
00758   meLaserL1_[1]->setEntries( 0 );
00759   meLaserL1Err_->Reset();
00760   meLaserL1PN_[0]->setEntries( 0 );
00761   meLaserL1PN_[1]->setEntries( 0 );
00762   meLaserL1PNErr_->Reset();
00763   meLedL1_[0]->setEntries( 0 );
00764   meLedL1_[1]->setEntries( 0 );
00765   meLedL1Err_->Reset();
00766   meLedL1PN_[0]->setEntries( 0 );
00767   meLedL1PN_[1]->setEntries( 0 );
00768   meLedL1PNErr_->Reset();
00769   mePedestal_[0]->setEntries( 0 );
00770   mePedestal_[1]->setEntries( 0 );
00771   mePedestalErr_->Reset();
00772   mePedestalPN_[0]->setEntries( 0 );
00773   mePedestalPN_[1]->setEntries( 0 );
00774   mePedestalPNErr_->Reset();
00775   meTestPulse_[0]->setEntries( 0 );
00776   meTestPulse_[1]->setEntries( 0 );
00777   meTestPulseErr_->Reset();
00778   meTestPulsePN_[0]->setEntries( 0 );
00779   meTestPulsePN_[1]->setEntries( 0 );
00780   meTestPulsePNErr_->Reset();
00781 
00782   meCosmic_[0]->setEntries( 0 );
00783   meCosmic_[1]->setEntries( 0 );
00784   meTiming_[0]->setEntries( 0 );
00785   meTiming_[1]->setEntries( 0 );
00786   meTriggerTowerEt_[0]->setEntries( 0 );
00787   meTriggerTowerEt_[1]->setEntries( 0 );
00788   meTriggerTowerEmulError_[0]->setEntries( 0 );
00789   meTriggerTowerEmulError_[1]->setEntries( 0 );
00790   meTriggerTowerTiming_[0]->setEntries( 0 );
00791   meTriggerTowerTiming_[1]->setEntries( 0 );
00792 
00793   meGlobalSummary_[0]->setEntries( 0 );
00794   meGlobalSummary_[1]->setEntries( 0 );
00795 
00796   for ( unsigned int i=0; i<clients_.size(); i++ ) {
00797 
00798     EEIntegrityClient* eeic = dynamic_cast<EEIntegrityClient*>(clients_[i]);
00799     EEStatusFlagsClient* eesfc = dynamic_cast<EEStatusFlagsClient*>(clients_[i]);
00800     EEPedestalOnlineClient* eepoc = dynamic_cast<EEPedestalOnlineClient*>(clients_[i]);
00801 
00802     EELaserClient* eelc = dynamic_cast<EELaserClient*>(clients_[i]);
00803     EELedClient* eeldc = dynamic_cast<EELedClient*>(clients_[i]);
00804     EEPedestalClient* eepc = dynamic_cast<EEPedestalClient*>(clients_[i]);
00805     EETestPulseClient* eetpc = dynamic_cast<EETestPulseClient*>(clients_[i]);
00806 
00807     EECosmicClient* eecc = dynamic_cast<EECosmicClient*>(clients_[i]);
00808     EETimingClient* eetmc = dynamic_cast<EETimingClient*>(clients_[i]);
00809     EETriggerTowerClient* eetttc = dynamic_cast<EETriggerTowerClient*>(clients_[i]);
00810 
00811     MonitorElement *me;
00812     MonitorElement *me_01, *me_02, *me_03;
00813     //    MonitorElement *me_f[6], *me_fg[2];
00814 //    MonitorElement *me_04, *me_05;
00815 
00816     TH2F* h2;
00817     TProfile2D* h2d;
00818 
00819     // fill the gain value priority map<id,priority>
00820     map<float,float> priority;
00821     priority.insert( pair<float,float>(0,3) );
00822     priority.insert( pair<float,float>(1,1) );
00823     priority.insert( pair<float,float>(2,2) );
00824     priority.insert( pair<float,float>(3,2) );
00825     priority.insert( pair<float,float>(4,3) );
00826     priority.insert( pair<float,float>(5,1) );
00827 
00828     for ( unsigned int i=0; i<superModules_.size(); i++ ) {
00829 
00830       int ism = superModules_[i];
00831 
00832       for ( int ix = 1; ix <= 50; ix++ ) {
00833         for ( int iy = 1; iy <= 50; iy++ ) {
00834 
00835           int jx = ix + Numbers::ix0EE(ism);
00836           int jy = iy + Numbers::iy0EE(ism);
00837 
00838           if ( eeic ) {
00839 
00840             me = eeic->meg01_[ism-1];
00841 
00842             if ( me ) {
00843 
00844               float xval = me->getBinContent( ix, iy );
00845 
00846               if ( ism >= 1 && ism <= 9 ) {
00847                 if ( Numbers::validEE(ism, 101 - jx, jy) ) meIntegrity_[0]->setBinContent( 101 - jx, jy, xval );
00848               } else {
00849                 if ( Numbers::validEE(ism, jx, jy) ) meIntegrity_[1]->setBinContent( jx, jy, xval );
00850               }
00851               if ( xval == 0 ) meIntegrityErr_->Fill( ism );
00852 
00853             }
00854 
00855             h2 = eeic->h_[ism-1];
00856 
00857             if ( h2 ) {
00858 
00859               float xval = h2->GetBinContent( ix, iy );
00860 
00861               if ( ism >= 1 && ism <= 9 ) {
00862                 if ( xval != 0 ) {
00863                   if ( Numbers::validEE(ism, 101 - jx, jy) ) meOccupancy_[0]->setBinContent( 101 - jx, jy, xval );
00864                 }
00865               } else {
00866                 if ( xval != 0 ) {
00867                   if ( Numbers::validEE(ism, jx, jy) ) meOccupancy_[1]->setBinContent( jx, jy, xval );
00868                 }
00869               }
00870               meOccupancy1D_->Fill( ism, xval );
00871 
00872             }
00873 
00874           }
00875 
00876           if ( eepoc ) {
00877 
00878             me = eepoc->meg03_[ism-1];
00879 
00880             if ( me ) {
00881 
00882               float xval = me->getBinContent( ix, iy );
00883 
00884               if ( ism >= 1 && ism <= 9 ) {
00885                 if ( Numbers::validEE(ism, 101 - jx, jy) ) mePedestalOnline_[0]->setBinContent( 101 - jx, jy, xval );
00886               } else {
00887                 if ( Numbers::validEE(ism, jx, jy) ) mePedestalOnline_[1]->setBinContent( jx, jy, xval );
00888               }
00889               if ( xval == 0 ) mePedestalOnlineErr_->Fill( ism );
00890 
00891             }
00892 
00893           }
00894 
00895           if ( eelc ) {
00896 
00897             me = eelc->meg01_[ism-1];
00898 
00899             if ( me ) {
00900 
00901               float xval = me->getBinContent( ix, iy );
00902 
00903               if ( me->getEntries() != 0 ) {
00904                 if ( ism >= 1 && ism <= 9 ) {
00905                   if ( Numbers::validEE(ism, 101 - jx, jy) ) meLaserL1_[0]->setBinContent( 101 - jx, jy, xval );
00906                 } else {
00907                   if ( Numbers::validEE(ism, jx, jy) ) meLaserL1_[1]->setBinContent( jx, jy, xval );
00908                 }
00909                 if ( xval == 0 ) meLaserL1Err_->Fill( ism );
00910               }
00911 
00912             }
00913 
00914           }
00915 
00916           if ( eeldc ) {
00917 
00918             me = eeldc->meg01_[ism-1];
00919 
00920             if ( me ) {
00921 
00922               float xval = me->getBinContent( ix, iy );
00923 
00924               if ( me->getEntries() != 0 ) {
00925                 if ( ism >= 1 && ism <= 9 ) {
00926                   if ( Numbers::validEE(ism, 101 - jx, jy) ) meLedL1_[0]->setBinContent( 101 - jx, jy, xval );
00927                 } else {
00928                   if ( Numbers::validEE(ism, jx, jy) ) meLedL1_[1]->setBinContent( jx, jy, xval );
00929                 }
00930                 if ( xval == 0 ) meLedL1Err_->Fill( ism );
00931               }
00932 
00933             }
00934 
00935           }
00936 
00937           if ( eepc ) {
00938 
00939             me_01 = eepc->meg01_[ism-1];
00940             me_02 = eepc->meg02_[ism-1];
00941             me_03 = eepc->meg03_[ism-1];
00942 
00943             if ( me_01 && me_02 && me_03 ) {
00944               float xval=2;
00945               float val_01=me_01->getBinContent(ix,iy);
00946               float val_02=me_02->getBinContent(ix,iy);
00947               float val_03=me_03->getBinContent(ix,iy);
00948 
00949               vector<float> maskedVal, unmaskedVal;
00950               (val_01>=3&&val_01<=5) ? maskedVal.push_back(val_01) : unmaskedVal.push_back(val_01);
00951               (val_02>=3&&val_02<=5) ? maskedVal.push_back(val_02) : unmaskedVal.push_back(val_02);
00952               (val_03>=3&&val_03<=5) ? maskedVal.push_back(val_03) : unmaskedVal.push_back(val_03);
00953 
00954               float brightColor=6, darkColor=6;
00955               float maxPriority=-1;
00956 
00957               vector<float>::const_iterator Val;
00958               for(Val=unmaskedVal.begin(); Val<unmaskedVal.end(); Val++) {
00959                 if(priority[*Val]>maxPriority) brightColor=*Val;
00960               }
00961               maxPriority=-1;
00962               for(Val=maskedVal.begin(); Val<maskedVal.end(); Val++) {
00963                 if(priority[*Val]>maxPriority) darkColor=*Val;
00964               }
00965               if(unmaskedVal.size()==3) xval = brightColor;
00966               else if(maskedVal.size()==3) xval = darkColor;
00967               else {
00968                 if(brightColor==1 && darkColor==5) xval = 5;
00969                 else xval = brightColor;
00970               }
00971 
00972               if ( me_01->getEntries() != 0 && me_02->getEntries() != 0 && me_03->getEntries() != 0 ) {
00973                 if ( ism >= 1 && ism <= 9 ) {
00974                   if ( Numbers::validEE(ism, 101 - jx, jy) ) mePedestal_[0]->setBinContent( 101 - jx, jy, xval );
00975                 } else {
00976                   if ( Numbers::validEE(ism, jx, jy) ) mePedestal_[1]->setBinContent( jx, jy, xval );
00977                 }
00978                 if ( xval == 0 ) mePedestalErr_->Fill( ism );
00979               }
00980 
00981             }
00982 
00983           }
00984 
00985           if ( eetpc ) {
00986 
00987             me_01 = eetpc->meg01_[ism-1];
00988             me_02 = eetpc->meg02_[ism-1];
00989             me_03 = eetpc->meg03_[ism-1];
00990 
00991             if ( me_01 && me_02 && me_03 ) {
00992               float xval=2;
00993               float val_01=me_01->getBinContent(ix,iy);
00994               float val_02=me_02->getBinContent(ix,iy);
00995               float val_03=me_03->getBinContent(ix,iy);
00996 
00997               vector<float> maskedVal, unmaskedVal;
00998               (val_01>=3&&val_01<=5) ? maskedVal.push_back(val_01) : unmaskedVal.push_back(val_01);
00999               (val_02>=3&&val_02<=5) ? maskedVal.push_back(val_02) : unmaskedVal.push_back(val_02);
01000               (val_03>=3&&val_03<=5) ? maskedVal.push_back(val_03) : unmaskedVal.push_back(val_03);
01001 
01002               float brightColor=6, darkColor=6;
01003               float maxPriority=-1;
01004 
01005               vector<float>::const_iterator Val;
01006               for(Val=unmaskedVal.begin(); Val<unmaskedVal.end(); Val++) {
01007                 if(priority[*Val]>maxPriority) brightColor=*Val;
01008               }
01009               maxPriority=-1;
01010               for(Val=maskedVal.begin(); Val<maskedVal.end(); Val++) {
01011                 if(priority[*Val]>maxPriority) darkColor=*Val;
01012               }
01013               if(unmaskedVal.size()==3) xval = brightColor;
01014               else if(maskedVal.size()==3) xval = darkColor;
01015               else {
01016                 if(brightColor==1 && darkColor==5) xval = 5;
01017                 else xval = brightColor;
01018               }
01019 
01020               if ( me_01->getEntries() != 0 && me_02->getEntries() != 0 && me_03->getEntries() != 0 ) {
01021                 if ( ism >= 1 && ism <= 9 ) {
01022                   if ( Numbers::validEE(ism, 101 - jx, jy) ) meTestPulse_[0]->setBinContent( 101 - jx, jy, xval );
01023                 } else {
01024                   if ( Numbers::validEE(ism, jx, jy) ) meTestPulse_[1]->setBinContent( jx, jy, xval );
01025                 }
01026                 if ( xval == 0 ) meTestPulseErr_->Fill( ism );
01027               }
01028 
01029             }
01030 
01031           }
01032 
01033           if ( eecc ) {
01034 
01035             h2d = eecc->h02_[ism-1];
01036 
01037             if ( h2d ) {
01038 
01039               float xval = h2d->GetBinContent( ix, iy );
01040 
01041               if ( ism >= 1 && ism <= 9 ) {
01042                 if ( xval != 0 ) {
01043                   if ( Numbers::validEE(ism, 101 - jx, jy) ) meCosmic_[0]->setBinContent( 101 - jx, jy, xval );
01044                 }
01045               } else {
01046                 if ( xval != 0 ) {
01047                   if ( Numbers::validEE(ism, jx, jy) ) meCosmic_[1]->setBinContent( jx, jy, xval );
01048                 }
01049               }
01050 
01051             }
01052 
01053           }
01054 
01055           if ( eetmc ) {
01056 
01057             me = eetmc->meg01_[ism-1];
01058 
01059             if ( me ) {
01060 
01061               float xval = me->getBinContent( ix, iy );
01062 
01063               if ( ism >= 1 && ism <= 9 ) {
01064                 if ( Numbers::validEE(ism, 101 - jx, jy) ) meTiming_[0]->setBinContent( 101 - jx, jy, xval );
01065               } else {
01066                 if ( Numbers::validEE(ism, jx, jy) ) meTiming_[1]->setBinContent( jx, jy, xval );
01067               }
01068 
01069             }
01070 
01071           }
01072 
01073         }
01074       }
01075 
01076       for ( int ix = 1; ix <= 50; ix++ ) {
01077         for ( int iy = 1; iy <= 50; iy++ ) {
01078 
01079           int jx = ix + Numbers::ix0EE(ism);
01080           int jy = iy + Numbers::iy0EE(ism);
01081 
01082           if ( eesfc ) {
01083 
01084             me = eesfc->meh01_[ism-1];
01085 
01086             if ( me ) {
01087 
01088               float xval = 6;
01089 
01090               if ( me->getBinContent( ix, iy ) == 6 ) xval = 2;
01091               if ( me->getBinContent( ix, iy ) == 0 ) xval = 1;
01092               if ( me->getBinContent( ix, iy ) > 0 ) xval = 0;
01093 
01094               if ( me->getEntries() != 0 ) {
01095               if ( ism >= 1 && ism <= 9 ) {
01096                 if ( Numbers::validEE(ism, 101 - jx, jy) ) meStatusFlags_[0]->setBinContent( 101 - jx, jy, xval );
01097               } else {
01098                 if ( Numbers::validEE(ism, jx, jy) ) meStatusFlags_[1]->setBinContent( jx, jy, xval );
01099               }
01100               if ( xval == 0 ) meStatusFlagsErr_->Fill( ism );
01101               }
01102 
01103             }
01104 
01105           }
01106 
01107           if ( eetttc ) {
01108 
01109             me = eetttc->me_h01_[ism-1];
01110 
01111             bool hasRealDigi = false;
01112 
01113             if ( me ) {
01114 
01115               float xval = me->getBinContent( ix, iy );
01116 
01117               TProfile2D* obj = UtilsClient::getHisto<TProfile2D*>( me );
01118               if(obj && obj->GetBinEntries(obj->GetBin( ix, iy ))!=0) hasRealDigi = true;
01119 
01120               if ( ism >= 1 && ism <= 9 ) {
01121                 if ( xval > 0 ) {
01122                   meTriggerTowerEt_[0]->setBinContent( 101 - jx, jy, xval );
01123                 }
01124               } else {
01125                 if ( xval > 0 ) {
01126                   meTriggerTowerEt_[1]->setBinContent( jx, jy, xval );
01127                 }
01128               }
01129 
01130             }
01131 
01132             me = eetttc->me_o01_[ism-1];
01133 
01134             if ( me ) {
01135 
01136               float xval = me->getBinContent( ix, iy );
01137 
01138               if ( ism >= 1 && ism <= 9 ) {
01139                 meTriggerTowerTiming_[0]->setBinContent( 101 - jx, jy, xval );
01140               } else {
01141                 meTriggerTowerTiming_[1]->setBinContent( jx, jy, xval );
01142               }
01143 
01144             }
01145 
01146             float xval = 6;
01147             if(!hasRealDigi) xval = 2;
01148             else {
01149 
01150               h2 = eetttc->l01_[ism-1];
01151 
01152               if ( h2 ) {
01153 
01154                 float emulErrorVal = h2->GetBinContent( ix, iy );
01155                 if( emulErrorVal!=0 ) xval = 0;
01156 
01157               }
01158 
01159               // do not propagate the flag bits to the summary for now
01160 //               for ( int iflag=0; iflag<6; iflag++ ) {
01161 
01162 //                 me_f[iflag] = eetttc->me_m01_[ism-1][iflag];
01163 
01164 //                 if ( me_f[iflag] ) {
01165 
01166 //                   float emulFlagErrorVal = me_f[iflag]->getBinContent( ix, iy );
01167 //                   if ( emulFlagErrorVal!=0 ) xval = 0;
01168 
01169 //                 }
01170 
01171 //               }
01172 
01173 //               for ( int ifg=0; ifg<2; ifg++) {
01174 
01175 //                 me_fg[ifg] = eetttc->me_n01_[ism-1][ifg];
01176 //                 if ( me_fg[ifg] ) {
01177 
01178 //                   float emulFineGrainVetoErrorVal = me_fg[ifg]->getBinContent( ix, iy );
01179 //                   if ( emulFineGrainVetoErrorVal!=0 ) xval = 0;
01180 
01181 //                 }
01182 
01183 //               }
01184 
01185               if ( xval!=0 ) xval = 1;
01186 
01187             }
01188 
01189             // see fix below
01190             if ( xval == 2 ) continue;
01191 
01192             if ( ism >= 1 && ism <= 9 ) {
01193               meTriggerTowerEmulError_[0]->setBinContent( 101 - jx, jy, xval );
01194             } else {
01195               meTriggerTowerEmulError_[1]->setBinContent( jx, jy, xval );
01196             }
01197 
01198           }
01199 
01200         }
01201       }
01202 
01203       // PN's summaries
01204       for( int i = 1; i <= 10; i++ ) {
01205         for( int j = 1; j <= 5; j++ ) {
01206 
01207           if ( eepc ) {
01208 
01209           }
01210 
01211           if ( eetpc ) {
01212 
01213           }
01214 
01215           if ( eelc ) {
01216 
01217           }
01218 
01219           if ( eeldc ) {
01220 
01221 
01222           }
01223 
01224         }
01225       }
01226 
01227     } // loop on SM
01228 
01229     // fix TPG quality plots
01230 
01231     for ( unsigned int i=0; i<superModules_.size(); i++ ) {
01232 
01233       int ism = superModules_[i];
01234 
01235       for ( int ix = 1; ix <= 50; ix++ ) {
01236         for ( int iy = 1; iy <= 50; iy++ ) {
01237 
01238           int jx = ix + Numbers::ix0EE(ism);
01239           int jy = iy + Numbers::iy0EE(ism);
01240 
01241           if ( eetttc ) {
01242 
01243             if ( ism >= 1 && ism <= 9 ) {
01244               if ( meTriggerTowerEmulError_[0]->getBinContent( 101 - jx, jy ) == 6 ) {
01245                 if ( Numbers::validEE(ism, 101 - jx, jy) ) meTriggerTowerEmulError_[0]->setBinContent( 101 - jx, jy, 2 );
01246               }
01247             } else {
01248               if ( meTriggerTowerEmulError_[1]->getBinContent( jx, jy ) == 6 ) {
01249                 if ( Numbers::validEE(ism, jx, jy) ) meTriggerTowerEmulError_[1]->setBinContent( jx, jy, 2 );
01250               }
01251             }
01252 
01253           }
01254 
01255         }
01256       }
01257 
01258     }
01259 
01260   } // loop on clients
01261 
01262   // The global-summary
01263   int nGlobalErrors = 0;
01264   int nGlobalErrorsEE[18];
01265   int nValidChannels = 0;
01266   int nValidChannelsEE[18];
01267 
01268   for (int i = 0; i < 18; i++) {
01269     nGlobalErrorsEE[i] = 0;
01270     nValidChannelsEE[i] = 0;
01271   }
01272 
01273   for ( int jx = 1; jx <= 100; jx++ ) {
01274     for ( int jy = 1; jy <= 100; jy++ ) {
01275 
01276       if(meIntegrity_[0] && mePedestalOnline_[0] && meLaserL1_[0] && meLedL1_[0] && meTiming_[0] && meStatusFlags_[0] && meTriggerTowerEmulError_[0]) {
01277 
01278         float xval = 6;
01279         float val_in = meIntegrity_[0]->getBinContent(jx,jy);
01280         float val_po = mePedestalOnline_[0]->getBinContent(jx,jy);
01281         float val_ls = meLaserL1_[0]->getBinContent(jx,jy);
01282         float val_ld = meLedL1_[0]->getBinContent(jx,jy);
01283         float val_tm = meTiming_[0]->getBinContent(jx,jy);
01284         float val_sf = meStatusFlags_[0]->getBinContent(jx,jy);
01285         // float val_ee = meTriggerTowerEmulError_[0]->getBinContent(jx,jy); // removed temporarily from the global summary
01286         float val_ee = 1;
01287 
01288         // turn each dark color (masked channel) to bright green
01289         // for laser & timing & trigger turn also yellow into bright green
01290 
01291         //  0/3 = red/dark red
01292         //  1/4 = green/dark green
01293         //  2/5 = yellow/dark yellow
01294         //  6   = unknown
01295 
01296         if(             val_in==3 || val_in==4 || val_in==5) val_in=1;
01297         if(             val_po==3 || val_po==4 || val_po==5) val_po=1;
01298         if(val_ls==2 || val_ls==3 || val_ls==4 || val_ls==5) val_ls=1;
01299         if(val_ld==2 || val_ld==3 || val_ld==4 || val_ld==5) val_ld=1;
01300         if(val_tm==2 || val_tm==3 || val_tm==4 || val_tm==5) val_tm=1;
01301         if(             val_sf==3 || val_sf==4 || val_sf==5) val_sf=1;
01302         if(val_ee==2 || val_ee==3 || val_ee==4 || val_ee==5) val_ee=1;
01303 
01304         if(val_in==6) xval=6;
01305         else if(val_in==0) xval=0;
01306         else if(val_po==0 || val_ls==0 || val_ld==0 || val_tm==0 || val_sf==0 || val_ee==0) xval=0;
01307         else if(val_po==2 || val_ls==2 || val_ld==2 || val_tm==2 || val_sf==2 || val_ee==2) xval=2;
01308         else xval=1;
01309 
01310         bool validCry = false;
01311 
01312         // if the SM is entirely not read, the masked channels
01313         // are reverted back to yellow
01314         float iEntries=0;
01315 
01316         for(int ism = 1; ism <= 9; ism++) {
01317           vector<int>::iterator iter = find(superModules_.begin(), superModules_.end(), ism);
01318           if (iter != superModules_.end()) {
01319             if ( Numbers::validEE(ism, jx, jy) ) {
01320               validCry = true;
01321               for ( unsigned int i=0; i<clients_.size(); i++ ) {
01322                 EEIntegrityClient* eeic = dynamic_cast<EEIntegrityClient*>(clients_[i]);
01323                 if ( eeic ) {
01324                   TH2F* h2 = eeic->h_[ism-1];
01325                   if ( h2 ) {
01326                     iEntries = h2->GetEntries();
01327                   }
01328                 }
01329               }
01330             }
01331           }
01332         }
01333 
01334         if ( validCry && iEntries==0 ) {
01335           xval=2;
01336         }
01337 
01338         meGlobalSummary_[0]->setBinContent( jx, jy, xval );
01339 
01340         if ( xval >= 0 && xval <= 5 ) {
01341           if ( xval != 2 && xval != 5 ) ++nValidChannels;
01342           for (int i = 1; i <= 9; i++) {
01343             if ( xval != 2 && xval != 5 ) {
01344               if ( Numbers::validEE(i, jx, jy) ) ++nValidChannelsEE[i-1];
01345             }
01346           }
01347           if ( xval == 0 ) ++nGlobalErrors;
01348           for (int i = 1; i <= 9; i++) {
01349             if ( xval == 0 ) {
01350               if ( Numbers::validEE(i, jx, jy) ) ++nGlobalErrorsEE[i-1];
01351             }
01352           }
01353         }
01354 
01355       }
01356 
01357       if(meIntegrity_[1] && mePedestalOnline_[1] && meLaserL1_[1] && meLedL1_[1] && meTiming_[1] && meStatusFlags_[1] && meTriggerTowerEmulError_[1]) {
01358 
01359         float xval = 6;
01360         float val_in = meIntegrity_[1]->getBinContent(jx,jy);
01361         float val_po = mePedestalOnline_[1]->getBinContent(jx,jy);
01362         float val_ls = meLaserL1_[1]->getBinContent(jx,jy);
01363         float val_ld = meLedL1_[1]->getBinContent(jx,jy);
01364         float val_tm = meTiming_[1]->getBinContent(jx,jy);
01365         float val_sf = meStatusFlags_[1]->getBinContent(jx,jy);
01366         // float val_ee = meTriggerTowerEmulError_[1]->getBinContent(jx,jy); // removed temporarily from the global summary
01367         float val_ee = 1;
01368 
01369         // turn each dark color to bright green
01370         // for laser & timing & trigger turn also yellow into bright green
01371 
01372         //  0/3 = red/dark red
01373         //  1/4 = green/dark green
01374         //  2/5 = yellow/dark yellow
01375         //  6   = unknown
01376 
01377         if(             val_in==3 || val_in==4 || val_in==5) val_in=1;
01378         if(             val_po==3 || val_po==4 || val_po==5) val_po=1;
01379         if(val_ls==2 || val_ls==3 || val_ls==4 || val_ls==5) val_ls=1;
01380         if(val_ld==2 || val_ld==3 || val_ld==4 || val_ld==5) val_ld=1;
01381         if(val_tm==2 || val_tm==3 || val_tm==4 || val_tm==5) val_tm=1;
01382         if(             val_sf==3 || val_sf==4 || val_sf==5) val_sf=1;
01383         if(val_ee==2 || val_ee==3 || val_ee==4 || val_ee==5) val_ee=1;
01384 
01385         if(val_in==6) xval=6;
01386         else if(val_in==0) xval=0;
01387         else if(val_po==0 || val_ls==0 || val_ld==0 || val_tm==0 || val_sf==0 || val_ee==0) xval=0;
01388         else if(val_po==2 || val_ls==2 || val_ld==2 || val_tm==2 || val_sf==2 || val_ee==2) xval=2;
01389         else xval=1;
01390 
01391         bool validCry = false;
01392 
01393         // if the SM is entirely not read, the masked channels
01394         // are reverted back in yellow
01395         float iEntries=0;
01396         for(int ism = 10; ism <= 18; ism++) {
01397           if ( Numbers::validEE(ism, jx, jy) ) {
01398             validCry = true;
01399             for ( unsigned int i=0; i<clients_.size(); i++ ) {
01400               EEIntegrityClient* eeic = dynamic_cast<EEIntegrityClient*>(clients_[i]);
01401               if ( eeic ) {
01402                 TH2F *h2 = eeic->h_[ism-1];
01403                 if ( h2 ) {
01404                   iEntries = h2->GetEntries();
01405                 }
01406               }
01407             }
01408           }
01409         }
01410 
01411         if ( validCry && iEntries==0 ) {
01412           xval=2;
01413         }
01414 
01415         meGlobalSummary_[1]->setBinContent( jx, jy, xval );
01416 
01417         if ( xval >= 0 && xval <= 5 ) {
01418           if ( xval != 2 && xval != 5 ) ++nValidChannels;
01419           for (int i = 10; i <= 18; i++) {
01420             if ( xval != 2 && xval != 5 ) {
01421               if ( Numbers::validEE(i, jx, jy) ) ++nValidChannelsEE[i-1];
01422             }
01423           }
01424           if ( xval == 0 ) ++nGlobalErrors;
01425           for (int i = 10; i <= 18; i++) {
01426             if ( xval == 0 ) {
01427               if ( Numbers::validEE(i, jx, jy) ) ++nGlobalErrorsEE[i-1];
01428             }
01429           }
01430         }
01431 
01432       }
01433 
01434     }
01435   }
01436 
01437   MonitorElement* me;
01438 
01439   float reportSummary = -1.0;
01440   if ( nValidChannels != 0 )
01441     reportSummary = 1.0 - float(nGlobalErrors)/float(nValidChannels);
01442   me = dqmStore_->get(prefixME_ + "/EventInfo/reportSummary");
01443   if ( me ) me->Fill(reportSummary);
01444 
01445   char histo[200];
01446 
01447   for (int i = 0; i < 18; i++) {
01448     float reportSummaryEE = -1.0;
01449     if ( nValidChannelsEE[i] != 0 )
01450       reportSummaryEE = 1.0 - float(nGlobalErrorsEE[i])/float(nValidChannelsEE[i]);
01451     sprintf(histo, "EcalEndcap_%s", Numbers::sEE(i+1).c_str());
01452     me = dqmStore_->get(prefixME_ + "/EventInfo/reportSummaryContents/" + histo);
01453     if ( me ) me->Fill(reportSummaryEE);
01454   }
01455 
01456   me = dqmStore_->get(prefixME_ + "/EventInfo/reportSummaryMap");
01457   if ( me ) {
01458 
01459     int nValidChannelsTT[2][20][20];
01460     int nGlobalErrorsTT[2][20][20];
01461     int nOutOfGeometryTT[2][20][20];
01462     for ( int jxdcc = 0; jxdcc < 20; jxdcc++ ) {
01463       for ( int jydcc = 0; jydcc < 20; jydcc++ ) {
01464         for ( int iside = 0; iside < 2; iside++ ) {
01465           nValidChannelsTT[iside][jxdcc][jydcc] = 0;
01466           nGlobalErrorsTT[iside][jxdcc][jydcc] = 0;
01467           nOutOfGeometryTT[iside][jxdcc][jydcc] = 0;
01468         }
01469       }
01470     }
01471 
01472     for ( int jx = 1; jx <= 100; jx++ ) {
01473       for ( int jy = 1; jy <= 100; jy++ ) {
01474         for ( int iside = 0; iside < 2; iside++ ) {
01475 
01476           int jxdcc = (jx-1)/5+1;
01477           int jydcc = (jy-1)/5+1;
01478 
01479           float xval = meGlobalSummary_[iside]->getBinContent( jx, jy );
01480 
01481           if ( xval >= 0 && xval <= 5 ) {
01482             if ( xval != 2 && xval != 5 ) ++nValidChannelsTT[iside][jxdcc-1][jydcc-1];
01483             if ( xval == 0 ) ++nGlobalErrorsTT[iside][jxdcc-1][jydcc-1];
01484           } else {
01485             nOutOfGeometryTT[iside][jxdcc-1][jydcc-1]++;
01486           }
01487 
01488         }
01489       }
01490     }
01491 
01492     for ( int jxdcc = 0; jxdcc < 20; jxdcc++ ) {
01493       for ( int jydcc = 0; jydcc < 20; jydcc++ ) {
01494         for ( int iside = 0; iside < 2; iside++ ) {
01495 
01496           float xval = -1.0;
01497           if ( nOutOfGeometryTT[iside][jxdcc][jydcc] < 25 ) {
01498             if ( nValidChannelsTT[iside][jxdcc][jydcc] != 0 )
01499               xval = 1.0 - float(nGlobalErrorsTT[iside][jxdcc][jydcc])/float(nValidChannelsTT[iside][jxdcc][jydcc]);
01500           }
01501 
01502           me->setBinContent( 20*iside+jxdcc+1, jydcc+1, xval );
01503 
01504         }
01505       }
01506     }
01507 
01508   }
01509 
01510 }

void EESummaryClient::beginJob ( DQMStore dqmStore  )  [virtual]

BeginJob.

Implements EEClient.

Definition at line 130 of file EESummaryClient.cc.

References DQMStore::book2D(), DQMStore::bookFloat(), GenMuonPlsPt100GeV_cfg::cout, debug_, dqmStore_, lat::endl(), MonitorElement::Fill(), DQMStore::get(), MonitorElement::getName(), histo, i, ievt_, jevt_, me, prefixME_, DQMStore::removeElement(), Numbers::sEE(), MonitorElement::setAxisTitle(), MonitorElement::setBinContent(), and DQMStore::setCurrentFolder().

Referenced by EcalEndcapMonitorClient::beginJob().

00130                                                  {
00131 
00132   dqmStore_ = dqmStore;
00133 
00134   if ( debug_ ) cout << "EESummaryClient: beginJob" << endl;
00135 
00136   ievt_ = 0;
00137   jevt_ = 0;
00138 
00139   // summary for DQM GUI
00140 
00141   char histo[200];
00142 
00143   MonitorElement* me;
00144 
00145   dqmStore_->setCurrentFolder( prefixME_ + "/EventInfo" );
00146 
00147   sprintf(histo, "reportSummary");
00148   if ( me = dqmStore_->get(prefixME_ + "/EventInfo/" + histo) ) {
00149     dqmStore_->removeElement(me->getName());
00150   }
00151   me = dqmStore_->bookFloat(histo);
00152   me->Fill(-1.0);
00153 
00154   dqmStore_->setCurrentFolder( prefixME_ + "/EventInfo/reportSummaryContents" );
00155 
00156   for (int i = 0; i < 18; i++) {
00157     sprintf(histo, "EcalEndcap_%s", Numbers::sEE(i+1).c_str());
00158     if ( me = dqmStore_->get(prefixME_ + "/EventInfo/reportSummaryContents/" + histo) ) {
00159       dqmStore_->removeElement(me->getName());
00160     }
00161     me = dqmStore_->bookFloat(histo);
00162     me->Fill(-1.0);
00163   }
00164 
00165   dqmStore_->setCurrentFolder( prefixME_ + "/EventInfo" );
00166 
00167   sprintf(histo, "reportSummaryMap");
00168   if ( me = dqmStore_->get(prefixME_ + "/EventInfo/" + histo) ) {
00169     dqmStore_->removeElement(me->getName());
00170   }
00171   me = dqmStore_->book2D(histo, histo, 40, 0., 40., 20, 0., 20);
00172   for ( int jxdcc = 0; jxdcc < 20; jxdcc++ ) {
00173     for ( int jydcc = 0; jydcc < 20; jydcc++ ) {
00174       for ( int iside = 0; iside < 2; iside++ ) {
00175         me->setBinContent( 20*iside+jxdcc+1, jydcc+1, -1.0 );
00176       }
00177     }
00178   }
00179   me->setAxisTitle("jx", 1);
00180   me->setAxisTitle("jy", 2);
00181 
00182 }

void EESummaryClient::beginRun ( void   )  [virtual]

BeginRun.

Implements EEClient.

Definition at line 184 of file EESummaryClient.cc.

References GenMuonPlsPt100GeV_cfg::cout, debug_, lat::endl(), jevt_, and setup().

Referenced by EcalEndcapMonitorClient::beginRun().

00184                                    {
00185 
00186   if ( debug_ ) cout << "EESummaryClient: beginRun" << endl;
00187 
00188   jevt_ = 0;
00189 
00190   this->setup();
00191 
00192 }

void EESummaryClient::cleanup ( void   )  [virtual]

Cleanup.

Implements EEClient.

Definition at line 518 of file EESummaryClient.cc.

References dqmStore_, enableCleanup_, edm::getName(), MonitorElement::getName(), meCosmic_, meGlobalSummary_, meIntegrity_, meIntegrityErr_, meLaserL1_, meLaserL1Err_, meLaserL1PN_, meLaserL1PNErr_, meLedL1_, meLedL1Err_, meLedL1PN_, meLedL1PNErr_, meOccupancy1D_, meOccupancy_, mePedestal_, mePedestalErr_, mePedestalOnline_, mePedestalOnlineErr_, mePedestalPN_, mePedestalPNErr_, meStatusFlags_, meStatusFlagsErr_, meTestPulse_, meTestPulseErr_, meTestPulsePN_, meTestPulsePNErr_, meTiming_, meTriggerTowerEmulError_, meTriggerTowerEt_, meTriggerTowerTiming_, prefixME_, DQMStore::removeElement(), and DQMStore::setCurrentFolder().

Referenced by endJob(), and endRun().

00518                                   {
00519 
00520   if ( ! enableCleanup_ ) return;
00521 
00522   dqmStore_->setCurrentFolder( prefixME_ + "/EESummaryClient" );
00523 
00524   if ( meIntegrity_[0] ) dqmStore_->removeElement( meIntegrity_[0]->getName() );
00525   meIntegrity_[0] = 0;
00526 
00527   if ( meIntegrity_[1] ) dqmStore_->removeElement( meIntegrity_[1]->getName() );
00528   meIntegrity_[1] = 0;
00529 
00530   if ( meIntegrityErr_ ) dqmStore_->removeElement( meIntegrityErr_->getName() );
00531   meIntegrityErr_ = 0;
00532 
00533   if ( meOccupancy_[0] ) dqmStore_->removeElement( meOccupancy_[0]->getName() );
00534   meOccupancy_[0] = 0;
00535 
00536   if ( meOccupancy_[1] ) dqmStore_->removeElement( meOccupancy_[1]->getName() );
00537   meOccupancy_[1] = 0;
00538 
00539   if ( meOccupancy1D_ ) dqmStore_->removeElement( meOccupancy1D_->getName() );
00540   meOccupancy1D_ = 0;
00541 
00542   if ( meStatusFlags_[0] ) dqmStore_->removeElement( meStatusFlags_[0]->getName() );
00543   meStatusFlags_[0] = 0;
00544 
00545   if ( meStatusFlags_[1] ) dqmStore_->removeElement( meStatusFlags_[1]->getName() );
00546   meStatusFlags_[1] = 0;
00547 
00548   if ( meStatusFlagsErr_ ) dqmStore_->removeElement( meStatusFlagsErr_->getName() );
00549   meStatusFlagsErr_ = 0;
00550 
00551   if ( mePedestalOnline_[0] ) dqmStore_->removeElement( mePedestalOnline_[0]->getName() );
00552   mePedestalOnline_[0] = 0;
00553 
00554   if ( mePedestalOnline_[1] ) dqmStore_->removeElement( mePedestalOnline_[1]->getName() );
00555   mePedestalOnline_[1] = 0;
00556 
00557   if ( mePedestalOnlineErr_ ) dqmStore_->removeElement( mePedestalOnlineErr_->getName() );
00558   mePedestalOnlineErr_ = 0;
00559 
00560   if ( meLaserL1_[0] ) dqmStore_->removeElement( meLaserL1_[0]->getName() );
00561   meLaserL1_[0] = 0;
00562 
00563   if ( meLaserL1_[1] ) dqmStore_->removeElement( meLaserL1_[1]->getName() );
00564   meLaserL1_[1] = 0;
00565 
00566   if ( meLaserL1Err_ ) dqmStore_->removeElement( meLaserL1Err_->getName() );
00567   meLaserL1Err_ = 0;
00568 
00569   if ( meLaserL1PN_[0] ) dqmStore_->removeElement( meLaserL1PN_[0]->getName() );
00570   meLaserL1PN_[0] = 0;
00571 
00572   if ( meLaserL1PN_[1] ) dqmStore_->removeElement( meLaserL1PN_[1]->getName() );
00573   meLaserL1PN_[1] = 0;
00574 
00575   if ( meLaserL1PNErr_ ) dqmStore_->removeElement( meLaserL1PNErr_->getName() );
00576   meLaserL1PNErr_ = 0;
00577 
00578   if ( meLedL1_[0] ) dqmStore_->removeElement( meLedL1_[0]->getName() );
00579   meLedL1_[0] = 0;
00580 
00581   if ( meLedL1_[1] ) dqmStore_->removeElement( meLedL1_[1]->getName() );
00582   meLedL1_[1] = 0;
00583 
00584   if ( meLedL1Err_ ) dqmStore_->removeElement( meLedL1Err_->getName() );
00585   meLedL1Err_ = 0;
00586 
00587   if ( meLedL1PN_[0] ) dqmStore_->removeElement( meLedL1PN_[0]->getName() );
00588   meLedL1PN_[0] = 0;
00589 
00590   if ( meLedL1PN_[1] ) dqmStore_->removeElement( meLedL1PN_[1]->getName() );
00591   meLedL1PN_[1] = 0;
00592 
00593   if ( meLedL1PNErr_ ) dqmStore_->removeElement( meLedL1PNErr_->getName() );
00594   meLedL1PNErr_ = 0;
00595 
00596   if ( mePedestal_[0] ) dqmStore_->removeElement( mePedestal_[0]->getName() );
00597   mePedestal_[0] = 0;
00598 
00599   if ( mePedestal_[1] ) dqmStore_->removeElement( mePedestal_[1]->getName() );
00600   mePedestal_[1] = 0;
00601 
00602   if ( mePedestalErr_ ) dqmStore_->removeElement( mePedestalErr_->getName() );
00603   mePedestalErr_ = 0;
00604 
00605   if ( mePedestalPN_[0] ) dqmStore_->removeElement( mePedestalPN_[0]->getName() );
00606   mePedestalPN_[0] = 0;
00607 
00608   if ( mePedestalPN_[1] ) dqmStore_->removeElement( mePedestalPN_[1]->getName() );
00609   mePedestalPN_[1] = 0;
00610 
00611   if ( mePedestalPNErr_ ) dqmStore_->removeElement( mePedestalPNErr_->getName() );
00612   mePedestalPNErr_ = 0;
00613 
00614   if ( meTestPulse_[0] ) dqmStore_->removeElement( meTestPulse_[0]->getName() );
00615   meTestPulse_[0] = 0;
00616 
00617   if ( meTestPulse_[1] ) dqmStore_->removeElement( meTestPulse_[1]->getName() );
00618   meTestPulse_[1] = 0;
00619 
00620   if ( meTestPulseErr_ ) dqmStore_->removeElement( meTestPulseErr_->getName() );
00621   meTestPulseErr_ = 0;
00622 
00623   if ( meTestPulsePN_[0] ) dqmStore_->removeElement( meTestPulsePN_[0]->getName() );
00624   meTestPulsePN_[0] = 0;
00625 
00626   if ( meTestPulsePN_[1] ) dqmStore_->removeElement( meTestPulsePN_[1]->getName() );
00627   meTestPulsePN_[1] = 0;
00628 
00629   if ( meTestPulsePNErr_ ) dqmStore_->removeElement( meTestPulsePNErr_->getName() );
00630   meTestPulsePNErr_ = 0;
00631 
00632   if ( meCosmic_[0] ) dqmStore_->removeElement( meCosmic_[0]->getName() );
00633   meCosmic_[0] = 0;
00634 
00635   if ( meCosmic_[1] ) dqmStore_->removeElement( meCosmic_[1]->getName() );
00636   meCosmic_[1] = 0;
00637 
00638   if ( meTiming_[0] ) dqmStore_->removeElement( meTiming_[0]->getName() );
00639   meTiming_[0] = 0;
00640 
00641   if ( meTiming_[1] ) dqmStore_->removeElement( meTiming_[1]->getName() );
00642   meTiming_[1] = 0;
00643 
00644   if ( meTriggerTowerEt_[0] ) dqmStore_->removeElement( meTriggerTowerEt_[0]->getName() );
00645   meTriggerTowerEt_[0] = 0;
00646 
00647   if ( meTriggerTowerEt_[1] ) dqmStore_->removeElement( meTriggerTowerEt_[1]->getName() );
00648   meTriggerTowerEt_[1] = 0;
00649 
00650   if ( meTriggerTowerEmulError_[0] ) dqmStore_->removeElement( meTriggerTowerEmulError_[0]->getName() );
00651   meTriggerTowerEmulError_[0] = 0;
00652 
00653   if ( meTriggerTowerEmulError_[1] ) dqmStore_->removeElement( meTriggerTowerEmulError_[1]->getName() );
00654   meTriggerTowerEmulError_[1] = 0;
00655 
00656   if ( meTriggerTowerTiming_[0] ) dqmStore_->removeElement( meTriggerTowerTiming_[0]->getName() );
00657   meTriggerTowerTiming_[0] = 0;
00658 
00659   if ( meTriggerTowerTiming_[1] ) dqmStore_->removeElement( meTriggerTowerTiming_[1]->getName() );
00660   meTriggerTowerTiming_[1] = 0;
00661 
00662   if ( meGlobalSummary_[0] ) dqmStore_->removeElement( meGlobalSummary_[0]->getName() );
00663   meGlobalSummary_[0] = 0;
00664 
00665   if ( meGlobalSummary_[1] ) dqmStore_->removeElement( meGlobalSummary_[1]->getName() );
00666   meGlobalSummary_[1] = 0;
00667 
00668 }

void EESummaryClient::endJob ( void   )  [virtual]

EndJob.

Implements EEClient.

Definition at line 194 of file EESummaryClient.cc.

References cleanup(), GenMuonPlsPt100GeV_cfg::cout, debug_, lat::endl(), and ievt_.

Referenced by EcalEndcapMonitorClient::endJob().

00194                                  {
00195 
00196   if ( debug_ ) cout << "EESummaryClient: endJob, ievt = " << ievt_ << endl;
00197 
00198   this->cleanup();
00199 
00200 }

void EESummaryClient::endRun ( void   )  [virtual]

EndRun.

Implements EEClient.

Definition at line 202 of file EESummaryClient.cc.

References cleanup(), GenMuonPlsPt100GeV_cfg::cout, debug_, lat::endl(), and jevt_.

Referenced by EcalEndcapMonitorClient::endRun().

00202                                  {
00203 
00204   if ( debug_ ) cout << "EESummaryClient: endRun, jevt = " << jevt_ << endl;
00205 
00206   this->cleanup();
00207 
00208 }

int EESummaryClient::getEvtPerJob ( void   )  [inline, virtual]

Get Functions.

Implements EEClient.

Definition at line 70 of file EESummaryClient.h.

References ievt_.

00070 { return ievt_; }

int EESummaryClient::getEvtPerRun ( void   )  [inline, virtual]

Returns the number of processed events in this Run.

Implements EEClient.

Definition at line 71 of file EESummaryClient.h.

References jevt_.

00071 { return jevt_; }

void EESummaryClient::htmlOutput ( int  run,
std::string &  htmlDir,
std::string &  htmlName 
) [virtual]

HtmlOutput.

Implements EEClient.

Referenced by EcalEndcapMonitorClient::htmlOutput().

void EESummaryClient::setFriends ( std::vector< EEClient * >  clients  )  [inline]

Set Clients.

Definition at line 74 of file EESummaryClient.h.

References clients_.

Referenced by EcalEndcapMonitorClient::EcalEndcapMonitorClient().

00074 { clients_ = clients; }

void EESummaryClient::setup ( void   )  [virtual]

Setup.

Implements EEClient.

Definition at line 210 of file EESummaryClient.cc.

References DQMStore::book1D(), DQMStore::book2D(), dqmStore_, edm::getName(), MonitorElement::getName(), histo, i, meCosmic_, meGlobalSummary_, meIntegrity_, meIntegrityErr_, meLaserL1_, meLaserL1Err_, meLaserL1PN_, meLaserL1PNErr_, meLedL1_, meLedL1Err_, meLedL1PN_, meLedL1PNErr_, meOccupancy1D_, meOccupancy_, mePedestal_, mePedestalErr_, mePedestalOnline_, mePedestalOnlineErr_, mePedestalPN_, mePedestalPNErr_, meStatusFlags_, meStatusFlagsErr_, meTestPulse_, meTestPulseErr_, meTestPulsePN_, meTestPulsePNErr_, meTiming_, meTriggerTowerEmulError_, meTriggerTowerEt_, meTriggerTowerTiming_, prefixME_, DQMStore::removeElement(), Numbers::sEE(), MonitorElement::setAxisTitle(), MonitorElement::setBinLabel(), and DQMStore::setCurrentFolder().

Referenced by beginRun().

00210                                 {
00211 
00212   char histo[200];
00213 
00214   dqmStore_->setCurrentFolder( prefixME_ + "/EESummaryClient" );
00215 
00216   if ( meIntegrity_[0] ) dqmStore_->removeElement( meIntegrity_[0]->getName() );
00217   sprintf(histo, "EEIT EE - integrity quality summary");
00218   meIntegrity_[0] = dqmStore_->book2D(histo, histo, 100, 0., 100., 100, 0., 100.);
00219   meIntegrity_[0]->setAxisTitle("jx", 1);
00220   meIntegrity_[0]->setAxisTitle("jy", 2);
00221 
00222   if ( meIntegrity_[1] ) dqmStore_->removeElement( meIntegrity_[0]->getName() );
00223   sprintf(histo, "EEIT EE + integrity quality summary");
00224   meIntegrity_[1] = dqmStore_->book2D(histo, histo, 100, 0., 100., 100, 0., 100.);
00225   meIntegrity_[1]->setAxisTitle("jx", 1);
00226   meIntegrity_[1]->setAxisTitle("jy", 2);
00227 
00228   if ( meIntegrityErr_ ) dqmStore_->removeElement( meIntegrityErr_->getName() );
00229   sprintf(histo, "EEIT integrity quality errors summary");
00230   meIntegrityErr_ = dqmStore_->book1D(histo, histo, 18, 1, 19);
00231   for (int i = 0; i < 18; i++) {
00232     meIntegrityErr_->setBinLabel(i+1, Numbers::sEE(i+1).c_str(), 1);
00233   }
00234 
00235   if ( meOccupancy_[0] ) dqmStore_->removeElement( meOccupancy_[0]->getName() );
00236   sprintf(histo, "EEOT EE - digi occupancy summary");
00237   meOccupancy_[0] = dqmStore_->book2D(histo, histo, 100, 0., 100., 100, 0., 100.);
00238   meOccupancy_[0]->setAxisTitle("jx", 1);
00239   meOccupancy_[0]->setAxisTitle("jy", 2);
00240 
00241   if ( meOccupancy_[1] ) dqmStore_->removeElement( meOccupancy_[1]->getName() );
00242   sprintf(histo, "EEOT EE + digi occupancy summary");
00243   meOccupancy_[1] = dqmStore_->book2D(histo, histo, 100, 0., 100., 100, 0., 100.);
00244   meOccupancy_[1]->setAxisTitle("jx", 1);
00245   meOccupancy_[1]->setAxisTitle("jy", 2);
00246 
00247   if ( meOccupancy1D_ ) dqmStore_->removeElement( meOccupancy1D_->getName() );
00248   sprintf(histo, "EEIT digi occupancy summary 1D");
00249   meOccupancy1D_ = dqmStore_->book1D(histo, histo, 18, 1, 19);
00250   for (int i = 0; i < 18; i++) {
00251     meOccupancy1D_->setBinLabel(i+1, Numbers::sEE(i+1).c_str(), 1);
00252   }
00253 
00254   if ( meStatusFlags_[0] ) dqmStore_->removeElement( meStatusFlags_[0]->getName() );
00255   sprintf(histo, "EESFT EE - front-end status summary");
00256   meStatusFlags_[0] = dqmStore_->book2D(histo, histo, 100, 0., 100., 100, 0., 100.);
00257   meStatusFlags_[0]->setAxisTitle("jx", 1);
00258   meStatusFlags_[0]->setAxisTitle("jy", 2);
00259 
00260   if ( meStatusFlags_[1] ) dqmStore_->removeElement( meStatusFlags_[1]->getName() );
00261   sprintf(histo, "EESFT EE + front-end status summary");
00262   meStatusFlags_[1] = dqmStore_->book2D(histo, histo, 100, 0., 100., 100, 0., 100.);
00263   meStatusFlags_[1]->setAxisTitle("jx", 1);
00264   meStatusFlags_[1]->setAxisTitle("jy", 2);
00265 
00266   if ( meStatusFlagsErr_ ) dqmStore_->removeElement( meStatusFlagsErr_->getName() );
00267   sprintf(histo, "EESFT front-end status errors summary");
00268   meStatusFlagsErr_ = dqmStore_->book1D(histo, histo, 18, 1, 19);
00269   for (int i = 0; i < 18; i++) {
00270     meStatusFlagsErr_->setBinLabel(i+1, Numbers::sEE(i+1).c_str(), 1);
00271   }
00272 
00273   if ( mePedestalOnline_[0] ) dqmStore_->removeElement( mePedestalOnline_[0]->getName() );
00274   sprintf(histo, "EEPOT EE - pedestal quality summary G12");
00275   mePedestalOnline_[0] = dqmStore_->book2D(histo, histo, 100, 0., 100., 100, 0., 100.);
00276   mePedestalOnline_[0]->setAxisTitle("jx", 1);
00277   mePedestalOnline_[0]->setAxisTitle("jy", 2);
00278 
00279   if ( mePedestalOnline_[1] ) dqmStore_->removeElement( mePedestalOnline_[1]->getName() );
00280   sprintf(histo, "EEPOT EE + pedestal quality summary G12");
00281   mePedestalOnline_[1] = dqmStore_->book2D(histo, histo, 100, 0., 100., 100, 0., 100.);
00282   mePedestalOnline_[1]->setAxisTitle("jx", 1);
00283   mePedestalOnline_[1]->setAxisTitle("jy", 2);
00284 
00285   if ( mePedestalOnlineErr_ ) dqmStore_->removeElement( mePedestalOnlineErr_->getName() );
00286   sprintf(histo, "EEPOT pedestal quality errors summary G12");
00287   mePedestalOnlineErr_ = dqmStore_->book1D(histo, histo, 18, 1, 19);
00288   for (int i = 0; i < 18; i++) {
00289     mePedestalOnlineErr_->setBinLabel(i+1, Numbers::sEE(i+1).c_str(), 1);
00290   }
00291 
00292   if ( meLaserL1_[0] ) dqmStore_->removeElement( meLaserL1_[0]->getName() );
00293   sprintf(histo, "EELT EE - laser quality summary L1");
00294   meLaserL1_[0] = dqmStore_->book2D(histo, histo, 100, 0., 100., 100, 0., 100.);
00295   meLaserL1_[0]->setAxisTitle("jx", 1);
00296   meLaserL1_[0]->setAxisTitle("jy", 2);
00297 
00298   if ( meLaserL1PN_[0] ) dqmStore_->removeElement( meLaserL1PN_[0]->getName() );
00299   sprintf(histo, "EELT EE - PN laser quality summary L1");
00300   meLaserL1PN_[0] = dqmStore_->book2D(histo, histo, 90, 0., 90., 20, -10., 10.);
00301   meLaserL1PN_[0]->setAxisTitle("jx", 1);
00302   meLaserL1PN_[0]->setAxisTitle("jy", 2);
00303 
00304   if ( meLaserL1_[1] ) dqmStore_->removeElement( meLaserL1_[1]->getName() );
00305   sprintf(histo, "EELT EE + laser quality summary L1");
00306   meLaserL1_[1] = dqmStore_->book2D(histo, histo, 100, 0., 100., 100, 0., 100.);
00307   meLaserL1_[1]->setAxisTitle("jx", 1);
00308   meLaserL1_[1]->setAxisTitle("jy", 2);
00309 
00310   if ( meLaserL1PN_[1] ) dqmStore_->removeElement( meLaserL1PN_[1]->getName() );
00311   sprintf(histo, "EELT EE + PN laser quality summary L1");
00312   meLaserL1PN_[1] = dqmStore_->book2D(histo, histo, 90, 0., 90., 20, -10., 10.);
00313   meLaserL1PN_[1]->setAxisTitle("jx", 1);
00314   meLaserL1PN_[1]->setAxisTitle("jy", 2);
00315 
00316   if ( meLaserL1Err_ ) dqmStore_->removeElement( meLaserL1Err_->getName() );
00317   sprintf(histo, "EELT laser quality errors summary L1");
00318   meLaserL1Err_ = dqmStore_->book1D(histo, histo, 18, 1, 19);
00319   for (int i = 0; i < 18; i++) {
00320     meLaserL1Err_->setBinLabel(i+1, Numbers::sEE(i+1).c_str(), 1);
00321   }
00322 
00323   if ( meLaserL1PNErr_ ) dqmStore_->removeElement( meLaserL1PNErr_->getName() );
00324   sprintf(histo, "EELT PN laser quality errors summary L1");
00325   meLaserL1PNErr_ = dqmStore_->book1D(histo, histo, 18, 1, 19);
00326   for (int i = 0; i < 18; i++) {
00327     meLaserL1PNErr_->setBinLabel(i+1, Numbers::sEE(i+1).c_str(), 1);
00328   }
00329 
00330   if ( meLedL1_[0] ) dqmStore_->removeElement( meLedL1_[0]->getName() );
00331   sprintf(histo, "EELDT EE - led quality summary L1");
00332   meLedL1_[0] = dqmStore_->book2D(histo, histo, 100, 0., 100., 100, 0., 100.);
00333   meLedL1_[0]->setAxisTitle("jx", 1);
00334   meLedL1_[0]->setAxisTitle("jy", 2);
00335 
00336   if ( meLedL1PN_[0] ) dqmStore_->removeElement( meLedL1PN_[0]->getName() );
00337   sprintf(histo, "EELDT EE - PN led quality summary L1");
00338   meLedL1PN_[0] = dqmStore_->book2D(histo, histo, 90, 0., 90., 20, -10., 10.);
00339   meLedL1PN_[0]->setAxisTitle("jx", 1);
00340   meLedL1PN_[0]->setAxisTitle("jy", 2);
00341 
00342   if ( meLedL1_[1] ) dqmStore_->removeElement( meLedL1_[1]->getName() );
00343   sprintf(histo, "EELDT EE + led quality summary L1");
00344   meLedL1_[1] = dqmStore_->book2D(histo, histo, 100, 0., 100., 100, 0., 100.);
00345   meLedL1_[1]->setAxisTitle("jx", 1);
00346   meLedL1_[1]->setAxisTitle("jy", 2);
00347 
00348   if ( meLedL1PN_[1] ) dqmStore_->removeElement( meLedL1PN_[1]->getName() );
00349   sprintf(histo, "EELDT EE + PN led quality summary L1");
00350   meLedL1PN_[1] = dqmStore_->book2D(histo, histo, 90, 0., 90., 20, -10., 10.);
00351   meLedL1PN_[1]->setAxisTitle("jx", 1);
00352   meLedL1PN_[1]->setAxisTitle("jy", 2);
00353 
00354   if ( meLedL1Err_ ) dqmStore_->removeElement( meLedL1Err_->getName() );
00355   sprintf(histo, "EELDT led quality errors summary L1");
00356   meLedL1Err_ = dqmStore_->book1D(histo, histo, 18, 1, 19);
00357   for (int i = 0; i < 18; i++) {
00358     meLedL1Err_->setBinLabel(i+1, Numbers::sEE(i+1).c_str(), 1);
00359   }
00360 
00361   if ( meLedL1PNErr_ ) dqmStore_->removeElement( meLedL1PNErr_->getName() );
00362   sprintf(histo, "EELDT PN led quality errors summary L1");
00363   meLedL1PNErr_ = dqmStore_->book1D(histo, histo, 18, 1, 19);
00364   for (int i = 0; i < 18; i++) {
00365     meLedL1PNErr_->setBinLabel(i+1, Numbers::sEE(i+1).c_str(), 1);
00366   }
00367 
00368   if( mePedestal_[0] ) dqmStore_->removeElement( mePedestal_[0]->getName() );
00369   sprintf(histo, "EEPT EE - pedestal quality summary");
00370   mePedestal_[0] = dqmStore_->book2D(histo, histo, 100, 0., 100., 100, 0., 100.);
00371   mePedestal_[0]->setAxisTitle("jx", 1);
00372   mePedestal_[0]->setAxisTitle("jy", 2);
00373 
00374   if( mePedestalPN_[0] ) dqmStore_->removeElement( mePedestalPN_[0]->getName() );
00375   sprintf(histo, "EEPT EE - PN pedestal quality summary");
00376   mePedestalPN_[0] = dqmStore_->book2D(histo, histo, 90, 0., 90., 20, -10, 10.);
00377   mePedestalPN_[0]->setAxisTitle("jx", 1);
00378   mePedestalPN_[0]->setAxisTitle("jy", 2);
00379 
00380   if( mePedestal_[1] ) dqmStore_->removeElement( mePedestal_[1]->getName() );
00381   sprintf(histo, "EEPT EE + pedestal quality summary");
00382   mePedestal_[1] = dqmStore_->book2D(histo, histo, 100, 0., 100., 100, 0., 100.);
00383   mePedestal_[1]->setAxisTitle("jx", 1);
00384   mePedestal_[1]->setAxisTitle("jy", 2);
00385 
00386   if( mePedestalPN_[1] ) dqmStore_->removeElement( mePedestalPN_[1]->getName() );
00387   sprintf(histo, "EEPT EE + PN pedestal quality summary");
00388   mePedestalPN_[1] = dqmStore_->book2D(histo, histo, 90, 0., 90., 20, -10, 10.);
00389   mePedestalPN_[1]->setAxisTitle("jx", 1);
00390   mePedestalPN_[1]->setAxisTitle("jy", 2);
00391 
00392   if ( mePedestalErr_ ) dqmStore_->removeElement( mePedestalErr_->getName() );
00393   sprintf(histo, "EEPT pedestal quality errors summary");
00394   mePedestalErr_ = dqmStore_->book1D(histo, histo, 18, 1, 19);
00395   for (int i = 0; i < 18; i++) {
00396     mePedestalErr_->setBinLabel(i+1, Numbers::sEE(i+1).c_str(), 1);
00397   }
00398 
00399   if ( mePedestalPNErr_ ) dqmStore_->removeElement( mePedestalPNErr_->getName() );
00400   sprintf(histo, "EEPT PN pedestal quality errors summary");
00401   mePedestalPNErr_ = dqmStore_->book1D(histo, histo, 18, 1, 19);
00402   for (int i = 0; i < 18; i++) {
00403     mePedestalPNErr_->setBinLabel(i+1, Numbers::sEE(i+1).c_str(), 1);
00404   }
00405 
00406   if( meTestPulse_[0] ) dqmStore_->removeElement( meTestPulse_[0]->getName() );
00407   sprintf(histo, "EETPT EE - test pulse quality summary");
00408   meTestPulse_[0] = dqmStore_->book2D(histo, histo, 100, 0., 100., 100, 0., 100.);
00409   meTestPulse_[0]->setAxisTitle("jx", 1);
00410   meTestPulse_[0]->setAxisTitle("jy", 2);
00411 
00412   if( meTestPulsePN_[0] ) dqmStore_->removeElement( meTestPulsePN_[0]->getName() );
00413   sprintf(histo, "EETPT EE - PN test pulse quality summary");
00414   meTestPulsePN_[0] = dqmStore_->book2D(histo, histo, 90, 0., 90., 20, -10., 10.);
00415   meTestPulsePN_[0]->setAxisTitle("jx", 1);
00416   meTestPulsePN_[0]->setAxisTitle("jy", 2);
00417 
00418   if( meTestPulse_[1] ) dqmStore_->removeElement( meTestPulse_[1]->getName() );
00419   sprintf(histo, "EETPT EE + test pulse quality summary");
00420   meTestPulse_[1] = dqmStore_->book2D(histo, histo, 100, 0., 100., 100, 0., 100.);
00421   meTestPulse_[1]->setAxisTitle("jx", 1);
00422   meTestPulse_[1]->setAxisTitle("jy", 2);
00423 
00424   if( meTestPulsePN_[1] ) dqmStore_->removeElement( meTestPulsePN_[1]->getName() );
00425   sprintf(histo, "EETPT EE + PN test pulse quality summary");
00426   meTestPulsePN_[1] = dqmStore_->book2D(histo, histo, 90, 0., 90., 20, -10., 10.);
00427   meTestPulsePN_[1]->setAxisTitle("jx", 1);
00428   meTestPulsePN_[1]->setAxisTitle("jy", 2);
00429 
00430   if ( meTestPulseErr_ ) dqmStore_->removeElement( meTestPulseErr_->getName() );
00431   sprintf(histo, "EETPT test pulse quality errors summary");
00432   meTestPulseErr_ = dqmStore_->book1D(histo, histo, 18, 1, 19);
00433   for (int i = 0; i < 18; i++) {
00434     meTestPulseErr_->setBinLabel(i+1, Numbers::sEE(i+1).c_str(), 1);
00435   }
00436 
00437   if ( meTestPulsePNErr_ ) dqmStore_->removeElement( meTestPulsePNErr_->getName() );
00438   sprintf(histo, "EETPT PN test pulse quality errors summary");
00439   meTestPulsePNErr_ = dqmStore_->book1D(histo, histo, 18, 1, 19);
00440   for (int i = 0; i < 18; i++) {
00441     meTestPulsePNErr_->setBinLabel(i+1, Numbers::sEE(i+1).c_str(), 1);
00442   }
00443 
00444   if( meCosmic_[0] ) dqmStore_->removeElement( meCosmic_[0]->getName() );
00445   sprintf(histo, "EECT EE - cosmic summary");
00446   meCosmic_[0] = dqmStore_->book2D(histo, histo, 100, 0., 100., 100, 0., 100.);
00447   meCosmic_[0]->setAxisTitle("jx", 1);
00448   meCosmic_[0]->setAxisTitle("jy", 2);
00449 
00450   if( meCosmic_[1] ) dqmStore_->removeElement( meCosmic_[1]->getName() );
00451   sprintf(histo, "EECT EE + cosmic summary");
00452   meCosmic_[1] = dqmStore_->book2D(histo, histo, 100, 0., 100., 100, 0., 100.);
00453   meCosmic_[1]->setAxisTitle("jx", 1);
00454   meCosmic_[1]->setAxisTitle("jy", 2);
00455 
00456   if( meTiming_[0] ) dqmStore_->removeElement( meTiming_[0]->getName() );
00457   sprintf(histo, "EETMT EE - timing quality summary");
00458   meTiming_[0] = dqmStore_->book2D(histo, histo, 100, 0., 100., 100, 0., 100.);
00459   meTiming_[0]->setAxisTitle("jx", 1);
00460   meTiming_[0]->setAxisTitle("jy", 2);
00461 
00462   if( meTiming_[1] ) dqmStore_->removeElement( meTiming_[1]->getName() );
00463   sprintf(histo, "EETMT EE + timing quality summary");
00464   meTiming_[1] = dqmStore_->book2D(histo, histo, 100, 0., 100., 100, 0., 100.);
00465   meTiming_[1]->setAxisTitle("jx", 1);
00466   meTiming_[1]->setAxisTitle("jy", 2);
00467 
00468   if( meTriggerTowerEt_[0] ) dqmStore_->removeElement( meTriggerTowerEt_[0]->getName() );
00469   sprintf(histo, "EETTT EE - Et trigger tower summary");
00470   meTriggerTowerEt_[0] = dqmStore_->book2D(histo, histo, 100, 0., 100., 100, 0., 100.);
00471   meTriggerTowerEt_[0]->setAxisTitle("jx", 1);
00472   meTriggerTowerEt_[0]->setAxisTitle("jy", 2);
00473 
00474   if( meTriggerTowerEt_[1] ) dqmStore_->removeElement( meTriggerTowerEt_[1]->getName() );
00475   sprintf(histo, "EETTT EE + Et trigger tower summary");
00476   meTriggerTowerEt_[1] = dqmStore_->book2D(histo, histo, 100, 0., 100., 100, 0., 100.);
00477   meTriggerTowerEt_[1]->setAxisTitle("jx", 1);
00478   meTriggerTowerEt_[1]->setAxisTitle("jy", 2);
00479 
00480   if( meTriggerTowerEmulError_[0] ) dqmStore_->removeElement( meTriggerTowerEmulError_[0]->getName() );
00481   sprintf(histo, "EETTT EE - emulator error quality summary");
00482   meTriggerTowerEmulError_[0] = dqmStore_->book2D(histo, histo, 100, 0., 100., 100, 0., 100.);
00483   meTriggerTowerEmulError_[0]->setAxisTitle("jx", 1);
00484   meTriggerTowerEmulError_[0]->setAxisTitle("jy", 2);
00485 
00486   if( meTriggerTowerEmulError_[1] ) dqmStore_->removeElement( meTriggerTowerEmulError_[1]->getName() );
00487   sprintf(histo, "EETTT EE + emulator error quality summary");
00488   meTriggerTowerEmulError_[1] = dqmStore_->book2D(histo, histo, 100, 0., 100., 100, 0., 100.);
00489   meTriggerTowerEmulError_[1]->setAxisTitle("jx", 1);
00490   meTriggerTowerEmulError_[1]->setAxisTitle("jy", 2);
00491 
00492   if( meTriggerTowerTiming_[0] ) dqmStore_->removeElement( meTriggerTowerTiming_[0]->getName() );
00493   sprintf(histo, "EETTT EE - Trigger Primitives Timing summary");
00494   meTriggerTowerTiming_[0] = dqmStore_->book2D(histo, histo, 100, 0., 100., 100, 0., 100.);
00495   meTriggerTowerTiming_[0]->setAxisTitle("jx", 1);
00496   meTriggerTowerTiming_[0]->setAxisTitle("jy", 2);
00497 
00498   if( meTriggerTowerTiming_[1] ) dqmStore_->removeElement( meTriggerTowerTiming_[1]->getName() );
00499   sprintf(histo, "EETTT EE + Trigger Primitives Timing summary");
00500   meTriggerTowerTiming_[1] = dqmStore_->book2D(histo, histo, 100, 0., 100., 100, 0., 100.);
00501   meTriggerTowerTiming_[1]->setAxisTitle("jx", 1);
00502   meTriggerTowerTiming_[1]->setAxisTitle("jy", 2);
00503 
00504   if( meGlobalSummary_[0] ) dqmStore_->removeElement( meGlobalSummary_[0]->getName() );
00505   sprintf(histo, "EE global summary EE -");
00506   meGlobalSummary_[0] = dqmStore_->book2D(histo, histo, 100, 0., 100., 100, 0., 100.);
00507   meGlobalSummary_[0]->setAxisTitle("jx", 1);
00508   meGlobalSummary_[0]->setAxisTitle("jy", 2);
00509 
00510   if( meGlobalSummary_[1] ) dqmStore_->removeElement( meGlobalSummary_[1]->getName() );
00511   sprintf(histo, "EE global summary EE +");
00512   meGlobalSummary_[1] = dqmStore_->book2D(histo, histo, 100, 0., 100., 100, 0., 100.);
00513   meGlobalSummary_[1]->setAxisTitle("jx", 1);
00514   meGlobalSummary_[1]->setAxisTitle("jy", 2);
00515 
00516 }

void EESummaryClient::softReset ( bool  flag  )  [virtual]

SoftReset.

Implements EEClient.

Definition at line 1512 of file EESummaryClient.cc.

Referenced by EcalEndcapMonitorClient::softReset().

01512                                          {
01513 
01514 }

bool EESummaryClient::writeDb ( EcalCondDBInterface econn,
RunIOV runiov,
MonRunIOV moniov,
bool status,
bool  flag 
) [virtual]

WriteDB.

Implements EEClient.

Definition at line 670 of file EESummaryClient.cc.

Referenced by EcalEndcapMonitorClient::writeDb().

00670                                                                                                                     {
00671 
00672   status = true;
00673 
00674   if ( ! flag ) return false;
00675 
00676   return true;
00677 
00678 }

void EESummaryClient::writeMap ( std::ofstream &  hf,
const char *  mapname 
) [private]


Member Data Documentation

std::vector<EEClient*> EESummaryClient::clients_ [private]

Definition at line 94 of file EESummaryClient.h.

Referenced by analyze(), and setFriends().

bool EESummaryClient::cloneME_ [private]

Definition at line 83 of file EESummaryClient.h.

Referenced by EESummaryClient().

bool EESummaryClient::debug_ [private]

Definition at line 86 of file EESummaryClient.h.

Referenced by analyze(), beginJob(), beginRun(), EESummaryClient(), endJob(), and endRun().

DQMStore* EESummaryClient::dqmStore_ [private]

Definition at line 96 of file EESummaryClient.h.

Referenced by analyze(), beginJob(), cleanup(), and setup().

bool EESummaryClient::enableCleanup_ [private]

Definition at line 90 of file EESummaryClient.h.

Referenced by cleanup(), and EESummaryClient().

int EESummaryClient::ievt_ [private]

Definition at line 80 of file EESummaryClient.h.

Referenced by analyze(), beginJob(), endJob(), and getEvtPerJob().

int EESummaryClient::jevt_ [private]

Definition at line 81 of file EESummaryClient.h.

Referenced by analyze(), beginJob(), beginRun(), endRun(), and getEvtPerRun().

MonitorElement* EESummaryClient::meCosmic_[2] [private]

Definition at line 123 of file EESummaryClient.h.

Referenced by analyze(), cleanup(), EESummaryClient(), and setup().

MonitorElement* EESummaryClient::meGlobalSummary_[2] [private]

Definition at line 129 of file EESummaryClient.h.

Referenced by analyze(), cleanup(), EESummaryClient(), and setup().

MonitorElement* EESummaryClient::meIntegrity_[2] [private]

Definition at line 98 of file EESummaryClient.h.

Referenced by analyze(), cleanup(), EESummaryClient(), and setup().

MonitorElement* EESummaryClient::meIntegrityErr_ [private]

Definition at line 99 of file EESummaryClient.h.

Referenced by analyze(), cleanup(), EESummaryClient(), and setup().

MonitorElement* EESummaryClient::meLaserL1_[2] [private]

Definition at line 106 of file EESummaryClient.h.

Referenced by analyze(), cleanup(), EESummaryClient(), and setup().

MonitorElement* EESummaryClient::meLaserL1Err_ [private]

Definition at line 107 of file EESummaryClient.h.

Referenced by analyze(), cleanup(), EESummaryClient(), and setup().

MonitorElement* EESummaryClient::meLaserL1PN_[2] [private]

Definition at line 108 of file EESummaryClient.h.

Referenced by analyze(), cleanup(), EESummaryClient(), and setup().

MonitorElement* EESummaryClient::meLaserL1PNErr_ [private]

Definition at line 109 of file EESummaryClient.h.

Referenced by analyze(), cleanup(), EESummaryClient(), and setup().

MonitorElement* EESummaryClient::meLedL1_[2] [private]

Definition at line 110 of file EESummaryClient.h.

Referenced by analyze(), cleanup(), EESummaryClient(), and setup().

MonitorElement* EESummaryClient::meLedL1Err_ [private]

Definition at line 111 of file EESummaryClient.h.

Referenced by analyze(), cleanup(), EESummaryClient(), and setup().

MonitorElement* EESummaryClient::meLedL1PN_[2] [private]

Definition at line 112 of file EESummaryClient.h.

Referenced by analyze(), cleanup(), EESummaryClient(), and setup().

MonitorElement* EESummaryClient::meLedL1PNErr_ [private]

Definition at line 113 of file EESummaryClient.h.

Referenced by analyze(), cleanup(), EESummaryClient(), and setup().

MonitorElement* EESummaryClient::meOccupancy1D_ [private]

Definition at line 103 of file EESummaryClient.h.

Referenced by analyze(), cleanup(), EESummaryClient(), and setup().

MonitorElement* EESummaryClient::meOccupancy_[2] [private]

Definition at line 102 of file EESummaryClient.h.

Referenced by analyze(), cleanup(), EESummaryClient(), and setup().

MonitorElement* EESummaryClient::mePedestal_[2] [private]

Definition at line 114 of file EESummaryClient.h.

Referenced by analyze(), cleanup(), EESummaryClient(), and setup().

MonitorElement* EESummaryClient::mePedestalErr_ [private]

Definition at line 115 of file EESummaryClient.h.

Referenced by analyze(), cleanup(), EESummaryClient(), and setup().

MonitorElement* EESummaryClient::mePedestalOnline_[2] [private]

Definition at line 104 of file EESummaryClient.h.

Referenced by analyze(), cleanup(), EESummaryClient(), and setup().

MonitorElement* EESummaryClient::mePedestalOnlineErr_ [private]

Definition at line 105 of file EESummaryClient.h.

Referenced by analyze(), cleanup(), EESummaryClient(), and setup().

MonitorElement* EESummaryClient::mePedestalPN_[2] [private]

Definition at line 116 of file EESummaryClient.h.

Referenced by analyze(), cleanup(), EESummaryClient(), and setup().

MonitorElement* EESummaryClient::mePedestalPNErr_ [private]

Definition at line 117 of file EESummaryClient.h.

Referenced by analyze(), cleanup(), EESummaryClient(), and setup().

MonitorElement* EESummaryClient::meStatusFlags_[2] [private]

Definition at line 100 of file EESummaryClient.h.

Referenced by analyze(), cleanup(), EESummaryClient(), and setup().

MonitorElement* EESummaryClient::meStatusFlagsErr_ [private]

Definition at line 101 of file EESummaryClient.h.

Referenced by analyze(), cleanup(), EESummaryClient(), and setup().

MonitorElement* EESummaryClient::meTestPulse_[2] [private]

Definition at line 118 of file EESummaryClient.h.

Referenced by analyze(), cleanup(), EESummaryClient(), and setup().

MonitorElement* EESummaryClient::meTestPulseErr_ [private]

Definition at line 119 of file EESummaryClient.h.

Referenced by analyze(), cleanup(), EESummaryClient(), and setup().

MonitorElement* EESummaryClient::meTestPulsePN_[2] [private]

Definition at line 120 of file EESummaryClient.h.

Referenced by analyze(), cleanup(), EESummaryClient(), and setup().

MonitorElement* EESummaryClient::meTestPulsePNErr_ [private]

Definition at line 121 of file EESummaryClient.h.

Referenced by analyze(), cleanup(), EESummaryClient(), and setup().

MonitorElement* EESummaryClient::meTiming_[2] [private]

Definition at line 124 of file EESummaryClient.h.

Referenced by analyze(), cleanup(), EESummaryClient(), and setup().

MonitorElement* EESummaryClient::meTriggerTowerEmulError_[2] [private]

Definition at line 126 of file EESummaryClient.h.

Referenced by analyze(), cleanup(), EESummaryClient(), and setup().

MonitorElement* EESummaryClient::meTriggerTowerEt_[2] [private]

Definition at line 125 of file EESummaryClient.h.

Referenced by analyze(), cleanup(), EESummaryClient(), and setup().

MonitorElement* EESummaryClient::meTriggerTowerTiming_[2] [private]

Definition at line 127 of file EESummaryClient.h.

Referenced by analyze(), cleanup(), EESummaryClient(), and setup().

std::string EESummaryClient::prefixME_ [private]

Definition at line 88 of file EESummaryClient.h.

Referenced by analyze(), beginJob(), cleanup(), EESummaryClient(), and setup().

std::vector<int> EESummaryClient::superModules_ [private]

Definition at line 92 of file EESummaryClient.h.

Referenced by analyze(), and EESummaryClient().

bool EESummaryClient::verbose_ [private]

Definition at line 85 of file EESummaryClient.h.

Referenced by EESummaryClient().


The documentation for this class was generated from the following files:
Generated on Tue Jun 9 18:20:08 2009 for CMSSW by  doxygen 1.5.4