CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_5_2_9/src/DQMOffline/EGamma/plugins/ElectronGeneralAnalyzer.h

Go to the documentation of this file.
00001 
00002 #ifndef DQMOffline_EGamma_ElectronGeneralAnalyzer_h
00003 #define DQMOffline_EGamma_ElectronGeneralAnalyzer_h
00004 
00005 #include "DQMOffline/EGamma/interface/ElectronDqmAnalyzerBase.h"
00006 
00007 #include "DataFormats/EgammaCandidates/interface/GsfElectronFwd.h"
00008 #include "DataFormats/EgammaReco/interface/SuperClusterFwd.h"
00009 
00010 #include "Geometry/TrackerGeometryBuilder/interface/TrackerGeometry.h"
00011 #include "TrackingTools/TrajectoryState/interface/TrajectoryStateTransform.h"
00012 
00013 class MagneticField ;
00014 
00015 #include "FWCore/Framework/interface/Event.h"
00016 #include "FWCore/Framework/interface/ESHandle.h"
00017 #include "FWCore/Framework/interface/EventSetup.h"
00018 
00019 class ElectronGeneralAnalyzer : public ElectronDqmAnalyzerBase
00020  {
00021   public:
00022 
00023     explicit ElectronGeneralAnalyzer( const edm::ParameterSet & conf ) ;
00024     virtual ~ElectronGeneralAnalyzer() ;
00025 
00026     virtual void book() ;
00027     virtual void analyze( const edm::Event & e, const edm::EventSetup & c ) ;
00028 
00029   private:
00030 
00031     //=========================================
00032     // parameters
00033     //=========================================
00034 
00035     // collection input tags
00036     edm::InputTag electronCollection_;
00037     edm::InputTag matchingObjectCollection_;
00038     edm::InputTag gsftrackCollection_;
00039     edm::InputTag trackCollection_;
00040     edm::InputTag vertexCollection_;
00041     edm::InputTag beamSpotTag_;
00042 
00043     // for trigger
00044     edm::InputTag triggerResults_;
00045     //std::vector<std::string > HLTPathsByName_;
00046 //
00047 //    //=========================================
00048 //    // general attributes and utility methods
00049 //    //=========================================
00050 //
00051 //    bool trigger( const edm::Event & e ) ;
00052 //    std::vector<unsigned int> HLTPathsByIndex_;
00053 
00054     //=========================================
00055     // histograms
00056     //=========================================
00057 
00058     MonitorElement * h2_ele_beamSpotXvsY ;
00059     MonitorElement * py_ele_nElectronsVsLs ;
00060     MonitorElement * py_ele_nClustersVsLs ;
00061     MonitorElement * py_ele_nGsfTracksVsLs ;
00062     MonitorElement * py_ele_nTracksVsLs ;
00063     MonitorElement * py_ele_nVerticesVsLs ;
00064     MonitorElement * h1_ele_triggers ;
00065 
00066  } ;
00067 
00068 #endif
00069 
00070 
00071