diff --git a/include/HEJ/RivetAnalysis.hh b/include/HEJ/RivetAnalysis.hh index 4bc29be..07e22e5 100644 --- a/include/HEJ/RivetAnalysis.hh +++ b/include/HEJ/RivetAnalysis.hh @@ -1,74 +1,74 @@ /** \file * \brief HEJ 2 interface to rivet analyses * * \authors The HEJ collaboration (see AUTHORS for details) * \date 2019 * \copyright GPLv2 or later */ #pragma once #include <memory> #include <string> #include <vector> #include "LHEF/LHEF.h" #include "HEJ/Analysis.hh" #include "HEJ/HepMCInterface.hh" namespace Rivet { class AnalysisHandler; } namespace YAML { class Node; } namespace HEJ { /** * @brief Class representing a Rivet analysis * * This class inherits from Analysis and can therefore be used * like any other HEJ 2 analysis. */ class RivetAnalysis: public HEJ::Analysis { public: static std::unique_ptr<Analysis> create(YAML::Node const & config); //! Constructor /** * @param config Configuration parameters * - * config["analysis"] should be the name of a single Rivet analysis or + * config["rivet"] should be the name of a single Rivet analysis or * a list of Rivet analyses. config["output"] is the prefix for * the .yoda output files. */ RivetAnalysis(YAML::Node const & config); //! Initialise common informations, given in LHEF::HEPRUP void initialise(LHEF::HEPRUP const &) override; //! Pass an event to the underlying Rivet analysis void fill(HEJ::Event const & event, HEJ::Event const &) override; bool pass_cuts(HEJ::Event const &, HEJ::Event const &) override {return true;} //< no additional cuts are applied void finalise() override; private: std::vector<std::string> analyses_names_; const std::string output_name_; LHEF::HEPRUP heprup_; /// struct to organise the infos per rivet run/scale setting struct rivet_info { std::unique_ptr<Rivet::AnalysisHandler> handler; std::string name; HEJ::HepMCInterface hepmc; }; std::vector<rivet_info> rivet_runs_; /** * \internal * @brief Calculates the scale variation from the first event for the output * file */ void init(HEJ::Event const & event); bool first_event_; }; }