CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_5_3_10_patch1/src/Validation/RecoEgamma/plugins/ElectronConversionRejectionValidator.h

Go to the documentation of this file.
00001 #ifndef ElectronConversionRejectionValidator_H
00002 #define ElectronConversionRejectionValidator_H
00003 #include "FWCore/Framework/interface/EDAnalyzer.h"
00004 #include "FWCore/ParameterSet/interface/ParameterSet.h"
00005 #include "FWCore/Framework/interface/Event.h"
00006 #include "FWCore/Framework/interface/EventSetup.h"
00007 #include "FWCore/Framework/interface/ESHandle.h"
00008 #include "DataFormats/Common/interface/RefToBaseVector.h"
00009 #include "DataFormats/Common/interface/RefVector.h"
00010 #include "DataFormats/VertexReco/interface/VertexFwd.h"
00011 #include "DataFormats/VertexReco/interface/Vertex.h"
00012 //
00013 //DQM services
00014 #include "DQMServices/Core/interface/DQMStore.h"
00015 #include "FWCore/ServiceRegistry/interface/Service.h"
00016 #include "DQMServices/Core/interface/MonitorElement.h"
00017 
00018 
00019 //
00020 #include <map>
00021 #include <vector>
00022 
00023 // forward declarations
00024 class TFile;
00025 class TH1F;
00026 class TH2F;
00027 class TProfile;
00028 class TTree;
00029 class SimVertex;
00030 class SimTrack;
00042 class ElectronConversionRejectionValidator : public edm::EDAnalyzer
00043 {
00044 
00045  public:
00046    
00047   //
00048   explicit ElectronConversionRejectionValidator( const edm::ParameterSet& ) ;
00049   virtual ~ElectronConversionRejectionValidator();
00050                                    
00051       
00052   virtual void analyze( const edm::Event&, const edm::EventSetup& ) ;
00053   virtual void beginJob();
00054   virtual void beginRun( edm::Run const & r, edm::EventSetup const & theEventSetup) ;
00055   virtual void endRun (edm::Run& r, edm::EventSetup const & es);
00056   virtual void endJob() ;
00057   
00058  private:
00059   //
00060 
00061 
00062       
00063   std::string fName_;
00064   DQMStore *dbe_;
00065 
00066   int verbosity_;
00067   int nEvt_;
00068   int nEntry_;
00069 
00070 
00071   edm::ParameterSet parameters_;
00072   std::string conversionCollectionProducer_;       
00073   std::string conversionCollection_;
00074 
00075   std::string gsfElectronCollectionProducer_;       
00076   std::string gsfElectronCollection_;
00077 
00078   std::string dqmpath_;
00079 
00080   edm::InputTag label_tp_;
00081 
00082 
00083 
00084   bool isRunCentrally_;
00085 
00086   float elePtMin_;
00087   int eleExpectedHitsInnerMax_;
00088   float eleD0Max_;
00089   
00090   //
00091   MonitorElement* h_elePtAll_;
00092   MonitorElement* h_eleEtaAll_;
00093   MonitorElement* h_elePhiAll_; 
00094   
00095   MonitorElement* h_elePtPass_;
00096   MonitorElement* h_eleEtaPass_;
00097   MonitorElement* h_elePhiPass_; 
00098   
00099   MonitorElement* h_elePtFail_;
00100   MonitorElement* h_eleEtaFail_;  
00101   MonitorElement* h_elePhiFail_;
00102   
00103   MonitorElement* h_elePtEff_;
00104   MonitorElement* h_eleEtaEff_;
00105   MonitorElement* h_elePhiEff_;   
00106   
00107   MonitorElement* h_convPt_;
00108   MonitorElement* h_convEta_;  
00109   MonitorElement* h_convPhi_; 
00110   MonitorElement* h_convRho_;  
00111   MonitorElement* h_convZ_;  
00112   
00113   MonitorElement* h_convProb_;    
00114 
00115   MonitorElement* h_convLeadTrackpt_;  
00116   MonitorElement* h_convTrailTrackpt_;  
00117   MonitorElement* h_convLog10TrailTrackpt_;  
00118   MonitorElement* h_convLeadTrackAlgo_;    
00119   MonitorElement* h_convTrailTrackAlgo_;    
00120   
00121 };
00122 
00123 
00124 
00125 
00126 #endif