CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_4_1_8_patch9/src/DQM/HcalMonitorClient/interface/HcalDetDiagLEDClient.h

Go to the documentation of this file.
00001 #ifndef HcalDetDiagLEDClient_GUARD_H
00002 #define HcalDetDiagLEDClient_GUARD_H
00003 
00004 #include "DQM/HcalMonitorClient/interface/HcalBaseDQClient.h"
00005 #include "FWCore/Framework/interface/MakerMacros.h"
00006 #include "FWCore/ServiceRegistry/interface/Service.h"
00007 class TH2F;
00008 class HcalDetDiagLEDClient : public HcalBaseDQClient {
00009 
00010  public:
00011 
00013   HcalDetDiagLEDClient(){name_="";};
00014   HcalDetDiagLEDClient(std::string myname);//{ name_=myname;};
00015   HcalDetDiagLEDClient(std::string myname, const edm::ParameterSet& ps);
00016 
00017   void analyze(void);
00018   void calculateProblems(void); // calculates problem histogram contents
00019   void updateChannelStatus(std::map<HcalDetId, unsigned int>& myqual);
00020   void beginJob(void);
00021   void endJob(void);
00022   void beginRun(void);
00023   void endRun(void); 
00024   void setup(void);  
00025   void cleanup(void);
00026   bool hasErrors_Temp(void);  
00027   bool hasWarnings_Temp(void);
00028   bool hasOther_Temp(void);
00029   bool test_enabled(void);
00030   
00031   void htmlOutput(std::string);
00032   bool validHtmlOutput();
00033  
00035   ~HcalDetDiagLEDClient();
00036 
00037  private:
00038   int nevts_;
00039   int status;
00040   TH2F *ChannelsLEDEnergy[4];
00041   TH2F *ChannelsLEDEnergyRef[4];
00042   TH2F *ChannelStatusMissingChannels[4];
00043   TH2F *ChannelStatusUnstableChannels[4];
00044   TH2F *ChannelStatusUnstableLEDsignal[4];
00045   TH2F *ChannelStatusLEDMean[4];
00046   TH2F *ChannelStatusLEDRMS[4];
00047   TH2F *ChannelStatusTimeMean[4];
00048   TH2F *ChannelStatusTimeRMS[4];
00049   double get_channel_status(std::string subdet,int eta,int phi,int depth,int type);
00050   double get_energy(std::string subdet,int eta,int phi,int depth,int type);
00051 };
00052 
00053 #endif