Go to the documentation of this file.00001 #ifndef ESIntegrityTask_H
00002 #define ESIntegrityTask_H
00003
00004 #include "FWCore/Framework/interface/EDAnalyzer.h"
00005 #include "FWCore/Framework/interface/Event.h"
00006 #include "FWCore/ParameterSet/interface/ParameterSet.h"
00007
00008 class MonitorElement;
00009 class DQMStore;
00010
00011 class ESIntegrityTask : public edm::EDAnalyzer {
00012
00013 public:
00014
00015 ESIntegrityTask(const edm::ParameterSet& ps);
00016 virtual ~ESIntegrityTask();
00017
00018 protected:
00019
00021 void analyze(const edm::Event& e, const edm::EventSetup& c);
00022
00024 void beginJob(void);
00025
00027 void endJob(void);
00028
00030 void beginRun(const edm::Run & r, const edm::EventSetup & c);
00031
00033 void endRun(const edm::Run & r, const edm::EventSetup & c);
00034
00036 void beginLuminosityBlock(const edm::LuminosityBlock& lumi, const edm::EventSetup & c);
00037
00039 void endLuminosityBlock(const edm::LuminosityBlock& lumi, const edm::EventSetup & c);
00040
00042 void reset(void);
00043
00045 void setup(void);
00046
00048 void cleanup(void);
00049
00051 void calculateDIFraction(void);
00052
00053 private:
00054
00055 int ievt_;
00056
00057 DQMStore* dqmStore_;
00058
00059 std::string prefixME_;
00060
00061 bool enableCleanup_;
00062 bool mergeRuns_;
00063
00064 edm::InputTag dccCollections_;
00065 edm::InputTag kchipCollections_;
00066
00067 MonitorElement* meGain_;
00068 MonitorElement* meFED_;
00069 MonitorElement* meSLinkCRCErr_;
00070 MonitorElement* meDCCErr_;
00071 MonitorElement* meDCCCRCErr_;
00072 MonitorElement* meOptoRX_;
00073 MonitorElement* meOptoBC_;
00074 MonitorElement* meFiberBadStatus_;
00075 MonitorElement* meFiberErrCode_;
00076 MonitorElement* meFiberOff_;
00077 MonitorElement* meEVDR_;
00078 MonitorElement* meKF1_;
00079 MonitorElement* meKF2_;
00080 MonitorElement* meKBC_;
00081 MonitorElement* meKEC_;
00082 MonitorElement* meDIErrors_[2][2];
00083 MonitorElement* meDIErrorsLS_[2][2];
00084 MonitorElement* meDIFraction_;
00085
00086 edm::FileInPath lookup_;
00087
00088 bool init_;
00089 int runNum_, eCount_, runtype_, seqtype_, dac_, gain_, precision_;
00090 int firstDAC_, nDAC_, isPed_, vDAC_[5];
00091 int fed_[2][2][40][40], kchip_[2][2][40][4], fiber_[2][2][40][40];
00092 bool doLumiAnalysis_;
00093 };
00094
00095 #endif