CMS 3D CMS Logo

/data/doxygen/doxygen-1.7.3/gen/CMSSW_4_2_8/src/DQM/EcalEndcapMonitorTasks/interface/EETriggerTowerTask.h

Go to the documentation of this file.
00001 #ifndef EETriggerTowerTask_H
00002 #define EETriggerTowerTask_H
00003 
00004 /*
00005  * \file EETriggerTowerTask.h
00006  *
00007  * $Date: 2010/02/17 22:46:52 $
00008  * $Revision: 1.25 $
00009  *
00010 */
00011 
00012 #include "FWCore/Framework/interface/EDAnalyzer.h"
00013 #include "FWCore/Framework/interface/Event.h"
00014 #include "FWCore/ParameterSet/interface/ParameterSet.h"
00015 
00016 #include "DataFormats/EcalDigi/interface/EcalDigiCollections.h"
00017 
00018 #include <vector>
00019 
00020 class MonitorElement;
00021 class DQMStore;
00022 
00023 class EETriggerTowerTask : public edm::EDAnalyzer {
00024 
00025  public:
00026 
00028   EETriggerTowerTask(const edm::ParameterSet& ps);
00029 
00031   virtual ~EETriggerTowerTask();
00032 
00034   static const int nTTEta; 
00035 
00037   static const int nTTPhi; 
00038 
00040   static const int nSM; 
00041 
00042  protected:
00043 
00045   void analyze(const edm::Event& e, 
00046                const edm::EventSetup& c);
00047 
00049   void beginJob(void);
00050 
00052   void endJob(void);
00053 
00055   void beginRun(const edm::Run & r, const edm::EventSetup & c);
00056 
00058   void endRun(const edm::Run & r, const edm::EventSetup & c);
00059 
00061   void reset(void);
00062 
00064   void setup(void);
00065 
00067   void cleanup(void);
00068 
00069  private:
00070   
00072   typedef std::vector<MonitorElement*> array1;
00073 
00075   void reserveArray( array1& array );
00076 
00078   void processDigis( const edm::Event& e,
00079                      const edm::Handle<EcalTrigPrimDigiCollection>& digis, 
00080                      array1& meEtMap,
00081                      array1& meVeto,
00082                      const edm::Handle<EcalTrigPrimDigiCollection>& compDigis
00083                      = edm::Handle<EcalTrigPrimDigiCollection>(),
00084                      const edm::Handle<edm::TriggerResults>& hltResults
00085                      = edm::Handle<edm::TriggerResults>());
00086 
00087 
00089   void setup( const char* nameext,
00090               const char* folder, 
00091               bool emulated);
00092   
00093 
00095   int ievt_;
00096 
00098   array1 meEtMapReal_;
00099 
00101   array1 meVetoReal_;
00102 
00104   array1 meEtMapEmul_;
00105 
00107   array1 meVetoEmul_;
00108 
00112   array1 meEmulError_;
00113   array1 meEmulMatch_;
00114   array1 meVetoEmulError_;
00115 
00117   bool init_;
00118 
00120   DQMStore* dqmStore_;
00121 
00123   std::string prefixME_;
00124 
00126   bool enableCleanup_;
00127 
00129   bool mergeRuns_;
00130 
00132   edm::InputTag realCollection_;
00133 
00135   edm::InputTag emulCollection_;
00136   
00138   edm::InputTag EEDigiCollection_;
00139 
00141   edm::InputTag HLTResultsCollection_;
00142   std::string HLTCaloHLTBit_;
00143   std::string HLTMuonHLTBit_;
00144 
00146   std::string outputFile_;
00147 
00149   MonitorElement* meEmulMatchIndex1D_[2];
00150   MonitorElement* meEmulMatchMaxIndex1D_[2];
00151 
00153   MonitorElement* meEtSpectrumReal_[2];
00154   MonitorElement* meEtSpectrumEmul_[2];
00155   MonitorElement* meEtSpectrumEmulMax_[2];
00156 
00158   MonitorElement* meEtBxReal_[2];
00159   MonitorElement* meOccupancyBxReal_[2];
00160 
00162   MonitorElement* meTCCTimingCalo_[2];
00163   MonitorElement* meTCCTimingMuon_[2];
00164 
00165 };
00166 
00167 #endif