CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_5_3_4/src/GeneratorInterface/RivetInterface/interface/RivetAnalyzer.h

Go to the documentation of this file.
00001 #ifndef GeneratorInterface_RivetInterface_RivetAnalyzer
00002 #define GeneratorInterface_RivetInterface_RivetAnalyzer
00003 
00004 #include "FWCore/Framework/interface/EDAnalyzer.h"
00005 #include "FWCore/Utilities/interface/InputTag.h"
00006 
00007 #include "Rivet/AnalysisHandler.hh"
00008 
00009 namespace edm{
00010   class ParameterSet;
00011   class Event;
00012   class EventSetup;
00013   class InputTag;
00014 }
00015 
00016 class RivetAnalyzer : public edm::EDAnalyzer
00017 {
00018   public:
00019   RivetAnalyzer(const edm::ParameterSet&);
00020 
00021   virtual ~RivetAnalyzer();
00022 
00023   virtual void beginJob();
00024 
00025   virtual void endJob();  
00026 
00027   virtual void analyze(const edm::Event&, const edm::EventSetup&);
00028 
00029   virtual void beginRun(const edm::Run&, const edm::EventSetup&);
00030 
00031   virtual void endRun(const edm::Run&, const edm::EventSetup&);
00032   
00033   private:
00034 
00035   edm::InputTag            _hepmcCollection;
00036   Rivet::AnalysisHandler   _analysisHandler;   
00037   bool                     _isFirstEvent;
00038   std::string              _outFileName; 
00039 };
00040 
00041 #endif