CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_5_3_1/src/DQMServices/Examples/interface/DQMSourceExample.h

Go to the documentation of this file.
00001 #ifndef DQMSourceExample_H
00002 #define DQMSourceExample_H
00003 
00013 #include <FWCore/Framework/interface/EDAnalyzer.h>
00014 #include "FWCore/ParameterSet/interface/ParameterSet.h"
00015 
00016 #include "DQMServices/Core/interface/DQMStore.h"
00017 #include "DQMServices/Core/interface/MonitorElement.h"
00018 
00019 //
00020 // class declaration
00021 //
00022 
00023 class DQMSourceExample : public edm::EDAnalyzer {
00024 public:
00025   DQMSourceExample( const edm::ParameterSet& );
00026   ~DQMSourceExample();
00027 
00028 protected:
00029    
00030   // BeginJob
00031   void beginJob();
00032 
00033   // BeginRun
00034   void beginRun(const edm::Run& r, const edm::EventSetup& c);
00035 
00036   // Fake Analyze
00037   void analyze(const edm::Event& e, const edm::EventSetup& c);
00038 
00039   void beginLuminosityBlock(const edm::LuminosityBlock& lumiSeg, 
00040                             const edm::EventSetup& context);
00041 
00042   // DQM Client Diagnostic
00043   void endLuminosityBlock(const edm::LuminosityBlock& lumiSeg, 
00044                           const edm::EventSetup& c);
00045 
00046   // EndRun
00047   void endRun(const edm::Run& r, const edm::EventSetup& c);
00048 
00049   // Endjob
00050   void endJob();
00051 
00052 private:
00053 
00054   void initialize();
00055  
00056   edm::ParameterSet parameters_;
00057 
00058   DQMStore* dbe_;
00059   std::string monitorName_;
00060 
00061   int counterEvt_;
00062   int counterLS_;
00063 
00064   int prescaleEvt_;    // every n events
00065   int prescaleLS_;     // units of lumi sections
00066 
00067   // ---------- member data ----------
00068 
00069   int   NBINS;
00070   float XMIN, XMAX;
00071 
00072   // monitor elements for testing of Quality Tests
00073   MonitorElement * xTrue;
00074   MonitorElement * xFalse;
00075   MonitorElement * yTrue;
00076   MonitorElement * yFalse;
00077 
00078   MonitorElement * wExpTrue;
00079   MonitorElement * wExpFalse;
00080   MonitorElement * meanTrue;
00081   MonitorElement * meanFalse;
00082 
00083   MonitorElement * deadTrue;
00084   MonitorElement * deadFalse;
00085   MonitorElement * noisyTrue;
00086   MonitorElement * noisyFalse;
00087 
00088   // several ME more
00089   MonitorElement * i1;
00090   MonitorElement * f1;
00091   MonitorElement * s1;
00092   MonitorElement * p1;
00093   MonitorElement * p2;
00094   MonitorElement * h1;
00095   MonitorElement * h1hist;
00096   MonitorElement * h2;
00097   MonitorElement * h3;
00098   MonitorElement * h4;
00099   MonitorElement * summ;
00100 
00101 };
00102 
00103 #endif
00104