Go to the documentation of this file.00001 #ifndef DRELLYANVALIDATION_H
00002 #define DRELLYANVALIDATION_H
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014 #include "FWCore/Framework/interface/EDAnalyzer.h"
00015 #include "FWCore/Framework/interface/Event.h"
00016 #include "FWCore/Framework/interface/EventSetup.h"
00017 #include "FWCore/Framework/interface/Run.h"
00018
00019 #include "DataFormats/Common/interface/Handle.h"
00020 #include "FWCore/Framework/interface/ESHandle.h"
00021 #include "FWCore/ParameterSet/interface/ParameterSet.h"
00022 #include "FWCore/Utilities/interface/InputTag.h"
00023
00024
00025 #include "DQMServices/Core/interface/DQMStore.h"
00026 #include "FWCore/ServiceRegistry/interface/Service.h"
00027 #include "DQMServices/Core/interface/MonitorElement.h"
00028
00029 #include "SimDataFormats/GeneratorProducts/interface/HepMCProduct.h"
00030
00031 #include "SimGeneral/HepPDTRecord/interface/ParticleDataTable.h"
00032
00033
00034 class DrellYanValidation : public edm::EDAnalyzer
00035 {
00036 public:
00037 explicit DrellYanValidation(const edm::ParameterSet&);
00038 virtual ~DrellYanValidation();
00039 virtual void beginJob();
00040 virtual void endJob();
00041 virtual void analyze(const edm::Event&, const edm::EventSetup&);
00042 virtual void beginRun(const edm::Run&, const edm::EventSetup&);
00043 virtual void endRun(const edm::Run&, const edm::EventSetup&);
00044
00045 private:
00046
00047 edm::InputTag hepmcCollection_;
00048
00050 edm::ESHandle<HepPDT::ParticleDataTable> fPDGTable ;
00051
00053 DQMStore *dbe;
00054
00055 MonitorElement *nEvt;
00056 MonitorElement *Zmass, *ZmassPeak, *Zpt, *ZptLog, *Zrap, *Zdaughters;
00057 MonitorElement *dilep_mass, *dilep_massPeak, *dilep_pt, *dilep_ptLog, *dilep_rap;
00058 MonitorElement *leadpt, *secpt, *leadeta, *seceta;
00059 MonitorElement *gamma_energy, *cos_theta_gamma_lepton;
00060
00062 int _flavor;
00064 std::string _name;
00065
00066 };
00067
00068 #endif