CMS 3D CMS Logo

/afs/cern.ch/work/a/aaltunda/public/www/CMSSW_6_2_5/src/Validation/RecoMuon/src/GlobalMuonMatchAnalyzer.h

Go to the documentation of this file.
00001 #ifndef Validation_RecoMuon_GlobalMuonMatchAnalyzer_H
00002 #define Validation_RecoMuon_GlobalMuonMatchAnalyzer_H
00003 
00015 // system include files
00016 #include <memory>
00017 #include <string>
00018 
00019 // user include files
00020 #include "FWCore/Framework/interface/Frameworkfwd.h"
00021 #include "FWCore/Framework/interface/EDAnalyzer.h"
00022 
00023 #include "FWCore/Framework/interface/Event.h"
00024 #include "FWCore/Framework/interface/MakerMacros.h"
00025 
00026 #include "FWCore/ParameterSet/interface/ParameterSet.h"
00027 
00028 #include "TrackingTools/TrajectoryState/interface/TrajectoryStateOnSurface.h"
00029 
00030 namespace reco {class Track;}
00031 
00032 class InputTag;
00033 class MonitorElement;
00034 class TrackAssociatorBase;
00035 class  DQMStore;
00036 
00037 //
00038 // class decleration
00039 //
00040 
00041 class GlobalMuonMatchAnalyzer : public edm::EDAnalyzer {
00042    public:
00043       explicit GlobalMuonMatchAnalyzer(const edm::ParameterSet&);
00044       ~GlobalMuonMatchAnalyzer();
00045 
00046 
00047    private:
00048       virtual void beginJob() ;
00049       virtual void beginRun(const edm::Run&, const edm::EventSetup&) ;
00050       virtual void analyze(const edm::Event&, const edm::EventSetup&);
00051       virtual void endJob() ;
00052 
00053   void computeEfficiencyEta(MonitorElement*, MonitorElement *recoTH2, MonitorElement *simTH2);
00054   void computeEfficiencyPt(MonitorElement*, MonitorElement *recoTH2, MonitorElement *simTH2);
00055       // ----------member data ---------------------------
00056   std::string out;
00057   DQMStore* dbe_;
00058 
00059   MonitorElement *h_shouldMatch, *h_goodMatchSim, *h_tkOnlySim, *h_staOnlySim;
00060   MonitorElement *h_totReco, *h_goodMatch, *h_fakeMatch;
00061   MonitorElement *h_effic, *h_efficPt;
00062   MonitorElement *h_fake, *h_fakePt;
00063 
00064   const TrackAssociatorBase *tkAssociator_, *muAssociator_;
00065   std::string tkAssociatorName_, muAssociatorName_;
00066   edm::InputTag tkName_, tpName_, glbName_, staName_;
00067 
00068 
00069 };
00070 
00071 #endif