hej is hosted by Hepforge, IPPP Durham
HEJ 2.1.4
High energy resummation for hadron colliders
Loading...
Searching...
No Matches
RivetAnalysis.hh
Go to the documentation of this file.
1
8#pragma once
9
10#include <memory>
11#include <string>
12#include <vector>
13
14#include "LHEF/LHEF.h"
15
16#include "HEJ/Analysis.hh"
17#include "HEJ/optional.hh"
18
19namespace YAML {
20 class Node;
21}
22
23namespace HEJ {
30 class RivetAnalysis: public Analysis {
31 public:
33 static std::unique_ptr<Analysis> create(
34 YAML::Node const & config, LHEF::HEPRUP const & heprup);
35
37
45 RivetAnalysis(YAML::Node const & config, LHEF::HEPRUP heprup);
46 ~RivetAnalysis() override;
48 void fill(Event const & event, Event const & /*unused*/) override;
50 bool pass_cuts(Event const & /*unused*/, Event const & /*unused*/
51 ) override { return true; }
52 void finalise() override;
53
54 private:
55 std::vector<std::string> analyses_names_;
56 std::string output_name_;
57 LHEF::HEPRUP heprup_;
58
60 struct rivet_info;
61 std::vector<rivet_info> rivet_runs_;
62
68 void init(Event const & event);
69 bool first_event_;
70 };
71} // namespace HEJ
Header file for the Analysis interface.
An event with clustered jets.
Definition: Event.hh:47
Class representing a Rivet analysis.
Definition: RivetAnalysis.hh:30
static std::unique_ptr< Analysis > create(YAML::Node const &config, LHEF::HEPRUP const &heprup)
Create RivetAnalysis.
bool pass_cuts(Event const &, Event const &) override
no additional cuts are applied
Definition: RivetAnalysis.hh:50
RivetAnalysis(YAML::Node const &config, LHEF::HEPRUP heprup)
Constructor.
void finalise() override
Finalise analysis.
~RivetAnalysis() override
void fill(Event const &event, Event const &) override
Pass an event to the underlying Rivet analysis.
Main HEJ 2 Namespace.
Definition: mainpage.dox:1
Definition: EmptyAnalysis.hh:14
Defines the optional type.
Analysis base class.
Definition: Analysis.hh:27