00001 #ifndef SiPixelHitEfficiencySource_H 00002 #define SiPixelHitEfficiencySource_H 00003 00004 // Package: SiPixelMonitorTrack 00005 // Class: SiPixelHitEfficiencySource 00006 // 00007 // class SiPixelHitEfficiencySource SiPixelHitEfficiencySource.h 00008 // DQM/SiPixelMonitorTrack/interface/SiPixelHitEfficiencySource.h 00009 // 00010 // Description: <one line class summary> 00011 // Implementation: <Notes on implementation> 00012 // 00013 // 00014 // Original Authors: Romain Rougny & Luca Mucibello 00015 // Created: Mar Nov 10 13:29:00 CET 2009 00016 00017 00018 #include <boost/cstdint.hpp> 00019 00020 #include "FWCore/Framework/interface/EDAnalyzer.h" 00021 #include "FWCore/Framework/interface/Event.h" 00022 #include "FWCore/Framework/interface/EventSetup.h" 00023 #include "FWCore/Framework/interface/MakerMacros.h" 00024 #include "FWCore/ParameterSet/interface/ParameterSet.h" 00025 #include "FWCore/ServiceRegistry/interface/Service.h" 00026 #include "DQMServices/Core/interface/DQMStore.h" 00027 #include "DQMServices/Core/interface/MonitorElement.h" 00028 #include "DQM/SiPixelMonitorTrack/interface/SiPixelHitEfficiencyModule.h" 00029 00030 //Files added for monitoring track quantities 00031 #include "Alignment/TrackerAlignment/interface/TrackerAlignableId.h" 00032 #include "Alignment/OfflineValidation/interface/TrackerValidationVariables.h" 00033 #include "DataFormats/TrackerRecHit2D/interface/SiPixelRecHitCollection.h" 00034 #include "Geometry/TrackerGeometryBuilder/interface/RectangularPixelTopology.h" 00035 #include "DataFormats/SiPixelDetId/interface/PixelBarrelName.h" 00036 #include "DataFormats/SiPixelDetId/interface/PixelEndcapName.h" 00037 #include "DataFormats/TrackReco/interface/Track.h" 00038 #include "TrackingTools/PatternTools/interface/TrajTrackAssociation.h" 00039 00040 class SiPixelHitEfficiencySource : public edm::EDAnalyzer { 00041 public: 00042 explicit SiPixelHitEfficiencySource(const edm::ParameterSet&); 00043 ~SiPixelHitEfficiencySource(); 00044 00045 virtual void beginJob(); 00046 virtual void endJob(void); 00047 virtual void beginRun(const edm::Run& r, edm::EventSetup const& iSetup); 00048 virtual void analyze(const edm::Event&, const edm::EventSetup&); 00049 00050 private: 00051 edm::ParameterSet pSet_; 00052 edm::InputTag src_; 00053 edm::InputTag tracksrc_; 00054 00055 bool applyEdgeCut_; 00056 double nSigma_EdgeCut_; 00057 00058 DQMStore* dbe_; 00059 00060 bool debug_; 00061 bool modOn; 00062 //barrel: 00063 bool ladOn, layOn, phiOn; 00064 //forward: 00065 bool ringOn, bladeOn, diskOn; 00066 00067 bool firstRun; 00068 00069 std::map<uint32_t, SiPixelHitEfficiencyModule*> theSiPixelStructure; 00070 00071 int nmissing,nvalid; 00072 00073 int nvtx_; 00074 int vtxntrk_; 00075 double vtxD0_; 00076 double vtxX_; 00077 double vtxY_; 00078 double vtxZ_; 00079 double vtxndof_; 00080 double vtxchi2_; 00081 00082 }; 00083 00084 #endif