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);
00015 HcalDetDiagLEDClient(std::string myname, const edm::ParameterSet& ps);
00016
00017 void analyze(void);
00018 void calculateProblems(void);
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