5#include "Rivet/Tools/RivetSTL.hh"
6#include "Rivet/Tools/RivetHepMC.hh"
7#include "Rivet/Tools/Logging.hh"
13 class AnalysisHandler;
43 bool init(
const std::string& evtfile,
double weight=1.0);
46 bool openFile(
const std::string& evtfile,
double weight=1.0);
80 double _fileweight = 1.0;
95 bool _listAnalyses =
false;
102 std::shared_ptr<GenEvent> _evt;
105 std::shared_ptr<std::istream> _istr;
108 std::shared_ptr<HepMC_IO_type> _hepmcReader;
The key class for coordination of Analysis objects and the event loop.
Definition AnalysisHandler.hh:29
Logging system for controlled & formatted writing to stdout.
Definition Logging.hh:10
Interface to handle a run of events read from a HepMC stream or file.
Definition Run.hh:17
bool init(const std::string &evtfile, double weight=1.0)
Set up HepMC file readers (using the appropriate file weight for the first file)
bool readEvent()
Read the next HepMC event.
Run & setCrossSection(double xs)
Get the cross-section for this run.
Run & setListAnalyses(bool dolist)
Declare whether to list available analyses.
bool openFile(const std::string &evtfile, double weight=1.0)
Open a HepMC GenEvent file (using the appropriate file weight for the first file)
bool processEvent()
Handle next event.
size_t numEvents() const
Read the next HepMC event only to skip it.
Definition Run.hh:56
bool finalize()
Close up HepMC I/O.
Run(AnalysisHandler &ah)
Standard constructor.
Definition MC_CENT_PPB_Projections.hh:10