00001 #ifndef Alignment_CommonAlignmentMonitor_AlignmentMonitorMuonSystemMap1D_H 00002 #define Alignment_CommonAlignmentMonitor_AlignmentMonitorMuonSystemMap1D_H 00003 00010 // system include files 00011 #include "Alignment/CommonAlignmentMonitor/interface/AlignmentMonitorPluginFactory.h" 00012 #include "Alignment/CommonAlignmentMonitor/interface/AlignmentMonitorBase.h" 00013 #include "FWCore/ParameterSet/interface/ParameterSet.h" 00014 #include "FWCore/MessageLogger/interface/MessageLogger.h" 00015 #include "FWCore/Framework/interface/EventSetup.h" 00016 #include "Geometry/CommonDetUnit/interface/GlobalTrackingGeometry.h" 00017 #include "Geometry/Records/interface/GlobalTrackingGeometryRecord.h" 00018 00019 #include "Alignment/MuonAlignmentAlgorithms/interface/MuonResidualsFromTrack.h" 00020 #include "Alignment/CommonAlignmentMonitor/interface/MuonSystemMapPlot1D.h" 00021 00022 // user include files 00023 00024 // 00025 // class definition 00026 // 00027 00028 class AlignmentMonitorMuonSystemMap1D: public AlignmentMonitorBase { 00029 public: 00030 AlignmentMonitorMuonSystemMap1D(const edm::ParameterSet& cfg); 00031 ~AlignmentMonitorMuonSystemMap1D() {}; 00032 00033 void book(); 00034 void event(const edm::Event &iEvent, const edm::EventSetup &iSetup, const ConstTrajTrackPairCollection& iTrajTracks); 00035 void afterAlignment(const edm::EventSetup &iSetup); 00036 00037 private: 00038 friend class MuonSystemMapPlot1D; 00039 00040 std::string num02d(int num); 00041 00042 double m_minTrackPt; 00043 double m_maxTrackPt; 00044 int m_minTrackerHits; 00045 double m_maxTrackerRedChi2; 00046 bool m_allowTIDTEC; 00047 int m_minDT13Hits; 00048 int m_minDT2Hits; 00049 int m_minCSCHits; 00050 00051 MuonSystemMapPlot1D *m_DTvsz_station1[12]; 00052 MuonSystemMapPlot1D *m_DTvsz_station2[12]; 00053 MuonSystemMapPlot1D *m_DTvsz_station3[12]; 00054 MuonSystemMapPlot1D *m_DTvsz_station4[14]; 00055 MuonSystemMapPlot1D *m_CSCvsr_me1[2][36]; 00056 MuonSystemMapPlot1D *m_CSCvsr_me2[2][36]; 00057 MuonSystemMapPlot1D *m_CSCvsr_me3[2][36]; 00058 MuonSystemMapPlot1D *m_CSCvsr_me4[2][36]; 00059 00060 MuonSystemMapPlot1D *m_DTvsphi_station1[5]; 00061 MuonSystemMapPlot1D *m_DTvsphi_station2[5]; 00062 MuonSystemMapPlot1D *m_DTvsphi_station3[5]; 00063 MuonSystemMapPlot1D *m_DTvsphi_station4[5]; 00064 00065 MuonSystemMapPlot1D *m_CSCvsphi_me11[2]; 00066 MuonSystemMapPlot1D *m_CSCvsphi_me12[2]; 00067 MuonSystemMapPlot1D *m_CSCvsphi_me13[2]; 00068 MuonSystemMapPlot1D *m_CSCvsphi_me14[2]; 00069 MuonSystemMapPlot1D *m_CSCvsphi_me21[2]; 00070 MuonSystemMapPlot1D *m_CSCvsphi_me22[2]; 00071 MuonSystemMapPlot1D *m_CSCvsphi_me31[2]; 00072 MuonSystemMapPlot1D *m_CSCvsphi_me32[2]; 00073 MuonSystemMapPlot1D *m_CSCvsphi_me41[2]; 00074 MuonSystemMapPlot1D *m_CSCvsphi_me42[2]; 00075 00076 std::vector<MuonSystemMapPlot1D*> m_plots; 00077 00078 long m_counter_event; 00079 long m_counter_track; 00080 long m_counter_trackpt; 00081 long m_counter_trackokay; 00082 long m_counter_dt; 00083 long m_counter_13numhits; 00084 long m_counter_2numhits; 00085 long m_counter_csc; 00086 long m_counter_cscnumhits; 00087 }; 00088 00089 #endif // Alignment_CommonAlignmentMonitor_AlignmentMonitorMuonSystemMap1D_H