CMS 3D CMS Logo

/afs/cern.ch/work/a/aaltunda/public/www/CMSSW_6_2_5/src/DQM/RPCMonitorClient/interface/RPCMonitorLinkSynchro.h

Go to the documentation of this file.
00001 #ifndef DQM_RPCMonitorClient_RPCMonitorLinkSynchro_H
00002 #define DQM_RPCMonitorClient_RPCMonitorLinkSynchro_H
00003 
00007 #include "FWCore/Framework/interface/EDAnalyzer.h"
00008 #include "FWCore/ParameterSet/interface/ParameterSet.h"
00009 
00010 #include "FWCore/Framework/interface/ESWatcher.h"
00011 #include "FWCore/Utilities/interface/InputTag.h"
00012 #include "CondFormats/DataRecord/interface/RPCEMapRcd.h"
00013 
00014 #include "DQM/RPCMonitorClient/interface/RPCLinkSynchroStat.h"
00015 
00016 class MonitorElement;
00017 #include "TObjArray.h"
00018 namespace edm { class Event; class EventSetup; class Run;}
00019 
00020 
00021 class RPCMonitorLinkSynchro : public edm::EDAnalyzer {
00022 public:
00023   explicit RPCMonitorLinkSynchro( const edm::ParameterSet& cfg);
00024   virtual ~RPCMonitorLinkSynchro();
00025   virtual void beginJob();
00026   virtual void beginRun(const edm::Run&, const edm::EventSetup&);
00027   virtual void endLuminosityBlock(const edm::LuminosityBlock&,const edm::EventSetup&);
00028   virtual void analyze(const edm::Event&, const edm::EventSetup&);  
00029   virtual  const RPCRawSynchro::ProdItem & select(const RPCRawSynchro::ProdItem &v, const edm::Event&, const edm::EventSetup&) { return v; };
00030   virtual void endJob();
00031 
00032 protected:
00033   virtual TObjArray histos() const;
00034   edm::ParameterSet theConfig;
00035   edm::ESWatcher<RPCEMapRcd> theCablingWatcher;
00036   RPCLinkSynchroStat theSynchroStat;
00037 
00038   MonitorElement* me_delaySummary;
00039   MonitorElement* me_delaySpread;
00040   MonitorElement* me_topOccup;
00041   MonitorElement* me_topSpread;
00042   MonitorElement* me_notComplete[3];
00043 
00044 private:
00045   edm::InputTag rpcRawSynchroProdItemTag_;
00046 };
00047 
00048 #endif
00049 
00050