00001 #ifndef DTRunConditionVar_H 00002 #define DTRunConditionVar_H 00003 00018 #include "DataFormats/Common/interface/Handle.h" 00019 00020 #include "DataFormats/TrackReco/interface/TrackFwd.h" 00021 #include "DataFormats/TrackReco/interface/Track.h" 00022 00023 #include "FWCore/Framework/interface/EDAnalyzer.h" 00024 #include "FWCore/Framework/interface/ESHandle.h" 00025 #include "FWCore/Utilities/interface/InputTag.h" 00026 00027 #include "FWCore/Framework/interface/Frameworkfwd.h" 00028 00029 #include "Geometry/DTGeometry/interface/DTGeometry.h" 00030 #include "Geometry/CommonDetUnit/interface/GlobalTrackingGeometry.h" 00031 #include "MagneticField/Engine/interface/MagneticField.h" 00032 #include "CondFormats/DTObjects/interface/DTMtime.h" 00033 00034 #include "RecoMuon/MeasurementDet/interface/MuonDetLayerMeasurements.h" 00035 #include <vector> 00036 #include <string> 00037 00038 class DQMStore; 00039 class MonitorElement; 00040 class DetLayer; 00041 class DetId; 00042 00043 class DTRunConditionVar : public edm::EDAnalyzer 00044 { 00045 00046 public: 00047 //Constructor 00048 DTRunConditionVar(const edm::ParameterSet& pset) ; 00049 00050 //Destructor 00051 ~DTRunConditionVar() ; 00052 00053 //Operations 00054 void analyze(const edm::Event & event, const edm::EventSetup& eventSetup); 00055 void beginJob(); 00056 void beginRun(const edm::Run& , const edm::EventSetup&); 00057 void endJob(); 00058 00059 private: 00060 00061 void bookChamberHistos(const DTChamberId& dtCh, std::string histoType, int , float , float); 00062 00063 bool debug; 00064 int nMinHitsPhi; 00065 double maxAnglePhiSegm; 00066 00067 edm::InputTag thedt4DSegments_; 00068 00069 edm::ESHandle<DTGeometry> dtGeom; 00070 00071 edm::ESHandle<DTMtime> mTime; 00072 const DTMtime* mTimeMap_; 00073 00074 DQMStore* theDbe; 00075 00076 std::map<uint32_t, std::map<std::string, MonitorElement*> > chamberHistos; 00077 00078 protected: 00079 00080 00081 }; 00082 00083 #endif 00084