00001 #ifndef MonitorTrackResiduals_H 00002 #define MonitorTrackResiduals_H 00003 00004 // -*- C++ -*- 00005 // 00006 // Package: TrackerMonitorTrack 00007 // Class: MonitorTrackResiduals 00008 // 00012 // Original Author: Israel Goitom 00013 // Created: Fri May 26 14:12:01 CEST 2006 00014 // $Id: MonitorTrackResiduals.h,v 1.18 2010/05/12 06:43:53 dutta Exp $ 00015 #include <memory> 00016 #include <fstream> 00017 #include "FWCore/Framework/interface/Frameworkfwd.h" 00018 #include "FWCore/Framework/interface/EDAnalyzer.h" 00019 #include "FWCore/Framework/interface/MakerMacros.h" 00020 #include "FWCore/ParameterSet/interface/ParameterSet.h" 00021 #include "FWCore/Framework/interface/Run.h" 00022 00023 00024 class MonitorElement; 00025 class DQMStore; 00026 class GenericTriggerEventFlag; 00027 namespace edm { class Event; } 00028 00029 typedef std::map<int32_t, MonitorElement *> HistoClass; 00030 00031 class MonitorTrackResiduals : public edm::EDAnalyzer { 00032 public: 00033 // constructors and EDAnalyzer Methods 00034 explicit MonitorTrackResiduals(const edm::ParameterSet&); 00035 ~MonitorTrackResiduals(); 00036 virtual void beginRun(edm::Run const& run, edm::EventSetup const& iSetup); 00037 virtual void endRun(const edm::Run&, const edm::EventSetup&); 00038 virtual void beginJob(void); 00039 virtual void endJob(void); 00040 virtual void analyze(const edm::Event&, const edm::EventSetup&); 00041 // Own methods 00042 void createMEs(const edm::EventSetup&); 00043 void resetModuleMEs(int32_t modid); 00044 void resetLayerMEs(const std::pair<std::string, int32_t>&); 00045 private: 00046 00047 DQMStore * dqmStore_; 00048 edm::ParameterSet conf_; 00049 edm::ParameterSet Parameters; 00050 std::map< std::pair<std::string,int32_t>, MonitorElement* > m_SubdetLayerResiduals; 00051 std::map< std::pair<std::string,int32_t>, MonitorElement* > m_SubdetLayerNormedResiduals; 00052 HistoClass HitResidual; 00053 HistoClass NormedHitResiduals; 00054 SiStripFolderOrganizer folder_organizer; 00055 unsigned long long m_cacheID_; 00056 bool reset_me_after_each_run; 00057 bool ModOn; 00058 GenericTriggerEventFlag* genTriggerEventFlag_; 00059 }; 00060 #endif