00001 #ifndef DTNoiseCalibration_H 00002 #define DTNoiseCalibration_H 00003 00004 /* 00005 * \file DTNoiseCalibration.h 00006 * 00007 * $Date: 2008/08/19 13:33:23 $ 00008 * $Revision: 1.4 $ 00009 * \author G. Mila - INFN Torino 00010 * 00011 */ 00012 00013 #include <FWCore/Framework/interface/EDAnalyzer.h> 00014 #include "DataFormats/MuonDetId/interface/DTLayerId.h" 00015 #include <FWCore/Framework/interface/ESHandle.h> 00016 00017 #include <string> 00018 #include <map> 00019 #include <vector> 00020 00021 namespace edm { 00022 class ParameterSet; 00023 class Event; 00024 class EventSetup; 00025 } 00026 00027 class DTGeometry; 00028 class DTTtrig; 00029 class TFile; 00030 class TH2F; 00031 class TH1F; 00032 00033 class DTNoiseCalibration: public edm::EDAnalyzer{ 00034 00035 public: 00036 00038 DTNoiseCalibration(const edm::ParameterSet& ps); 00039 00041 virtual ~DTNoiseCalibration(); 00042 00044 void beginJob(const edm::EventSetup& c); 00045 00047 void analyze(const edm::Event& e, const edm::EventSetup& c); 00048 00050 void endJob(); 00051 00052 00053 protected: 00054 00055 private: 00056 00057 bool debug; 00058 int nevents; 00059 int counter; 00060 00062 int TriggerWidth; 00063 float upperLimit; 00064 bool cosmicRun; 00065 bool fastAnalysis; 00066 int wh; 00067 int sect; 00068 00070 float tTrig; 00071 float tTrigRMS; 00072 00073 edm::ParameterSet parameters; 00074 00075 // TDC digi distribution 00076 TH1F *hTDCTriggerWidth; 00077 00078 // Get the DT Geometry 00079 edm::ESHandle<DTGeometry> dtGeom; 00080 00081 // Get the tTrigMap 00082 edm::ESHandle<DTTtrig> tTrigMap; 00083 00084 // The file which will contain the occupancy plot and the digi event plot 00085 TFile *theFile; 00086 00087 // Map of the histograms with the number of events per evt per wire 00088 std::map<DTLayerId, TH2F*> theHistoEvtPerWireMap; 00089 00090 // Map of the occupancy histograms by layer 00091 std::map<DTLayerId, TH1F*> theHistoOccupancyMap; 00092 00093 // Map of skipped histograms 00094 std::map<DTLayerId, int> skippedPlot; 00095 00097 std::string getLayerName(const DTLayerId& lId) const; 00098 00100 std::string getSuperLayerName(const DTSuperLayerId& dtSLId) const; 00101 }; 00102 #endif