![]() |
![]() |
00001 #ifndef TrackerHitAnalyzer_H 00002 #define TrackerHitAnalyzer_H 00003 00004 /* 00005 * \file TrackerHitAnalyzer.h 00006 * 00007 * $Date: 2012/09/04 21:50:26 $ 00008 * $Revision: 1.7 $ 00009 * \author F. Cossutti 00010 * 00011 */ 00012 // framework & common header files 00013 #include "FWCore/ParameterSet/interface/ParameterSet.h" 00014 #include "FWCore/Framework/interface/Frameworkfwd.h" 00015 #include "FWCore/Framework/interface/EDAnalyzer.h" 00016 00017 #include "FWCore/Framework/interface/Event.h" 00018 #include "FWCore/Framework/interface/EventSetup.h" 00019 #include "FWCore/Framework/interface/ESHandle.h" 00020 #include "FWCore/Framework/interface/MakerMacros.h" 00021 #include "DataFormats/Common/interface/Handle.h" 00022 00023 #include "FWCore/MessageLogger/interface/MessageLogger.h" 00024 #include "FWCore/Utilities/interface/InputTag.h" 00025 00026 #include "Geometry/CommonDetUnit/interface/GeomDetUnit.h" 00027 #include "DataFormats/DetId/interface/DetId.h" 00028 00029 #include "FWCore/ServiceRegistry/interface/Service.h" 00030 #include "DQMServices/Core/interface/DQMStore.h" 00031 00032 #include "DQMServices/Core/interface/MonitorElement.h" 00033 00034 #include <fstream> 00035 #include <map> 00036 #include <iostream> 00037 #include <stdlib.h> 00038 #include <string> 00039 #include <memory> 00040 #include <vector> 00041 00042 00043 class TrackerHitAnalyzer: public edm::EDAnalyzer { 00044 00045 public: 00046 00048 TrackerHitAnalyzer(const edm::ParameterSet& ps); 00049 00051 ~TrackerHitAnalyzer(); 00052 00053 protected: 00054 00056 void analyze(const edm::Event& e, const edm::EventSetup& c); 00057 00058 00059 00060 // EndJob 00061 void endJob(void); 00062 00063 //void BookTestHistos(Char_t sname, int nbin, float *xmin, float *xmax); 00064 00065 private: 00066 00067 edm::InputTag SiTIBLowSrc_; 00068 edm::InputTag SiTIBHighSrc_; 00069 edm::InputTag SiTOBLowSrc_; 00070 edm::InputTag SiTOBHighSrc_; 00071 edm::InputTag SiTIDLowSrc_; 00072 edm::InputTag SiTIDHighSrc_; 00073 edm::InputTag SiTECLowSrc_; 00074 edm::InputTag SiTECHighSrc_; 00075 edm::InputTag PxlBrlLowSrc_; 00076 edm::InputTag PxlBrlHighSrc_; 00077 edm::InputTag PxlFwdLowSrc_; 00078 edm::InputTag PxlFwdHighSrc_; 00079 edm::InputTag G4TrkSrc_; 00080 00081 // edm::ParameterSet config_; 00082 00083 00084 bool verbose_; 00085 00086 DQMStore* fDBE; 00087 00088 std::string fOutputFile; 00089 00090 MonitorElement* htofeta; 00091 MonitorElement* htofphi; 00092 MonitorElement* htofr; 00093 MonitorElement* htofz; 00094 MonitorElement* htofeta_profile; 00095 MonitorElement* htofphi_profile; 00096 MonitorElement* htofr_profile; 00097 MonitorElement* htofz_profile; 00098 MonitorElement* h1e[12]; 00099 MonitorElement* h2e[12]; 00100 MonitorElement* h3e[12]; 00101 MonitorElement* h4e[12]; 00102 MonitorElement* h5e[12]; 00103 MonitorElement* h6e[12]; 00104 00105 MonitorElement* h1ex[12]; 00106 MonitorElement* h2ex[12]; 00107 MonitorElement* h3ex[12]; 00108 MonitorElement* h4ex[12]; 00109 MonitorElement* h5ex[12]; 00110 MonitorElement* h6ex[12]; 00111 00112 MonitorElement* h1ey[12]; 00113 MonitorElement* h2ey[12]; 00114 MonitorElement* h3ey[12]; 00115 MonitorElement* h4ey[12]; 00116 MonitorElement* h5ey[12]; 00117 MonitorElement* h6ey[12]; 00118 00119 MonitorElement* h1ez[12]; 00120 MonitorElement* h2ez[12]; 00121 MonitorElement* h3ez[12]; 00122 MonitorElement* h4ez[12]; 00123 MonitorElement* h5ez[12]; 00124 MonitorElement* h6ez[12]; 00125 00126 MonitorElement* h1lx[12]; 00127 MonitorElement* h2lx[12]; 00128 MonitorElement* h3lx[12]; 00129 MonitorElement* h4lx[12]; 00130 MonitorElement* h5lx[12]; 00131 MonitorElement* h6lx[12]; 00132 00133 MonitorElement* h1ly[12]; 00134 MonitorElement* h2ly[12]; 00135 MonitorElement* h3ly[12]; 00136 MonitorElement* h4ly[12]; 00137 MonitorElement* h5ly[12]; 00138 MonitorElement* h6ly[12]; 00139 }; 00140 00141 #endif