hej
is hosted by
Hepforge
,
IPPP Durham
HEJ 2
2.0
High energy resummation for hadron colliders
Loading...
Searching...
No Matches
include
HEJ
RivetAnalysis.hh
Go to the documentation of this file.
1
9
#pragma once
10
11
#include <memory>
12
#include <string>
13
#include <vector>
14
15
#include "
HEJ/Analysis.hh
"
16
#include "
HEJ/HepMCInterface.hh
"
17
18
namespace
Rivet
{
19
class
AnalysisHandler;
20
}
21
namespace
YAML
{
22
class
Node;
23
}
24
25
namespace
HEJ
{
32
class
RivetAnalysis
:
public
HEJ::Analysis
{
33
public
:
34
static
std::unique_ptr<Analysis>
create
(YAML::Node
const
& config);
35
37
44
RivetAnalysis
(YAML::Node
const
& config);
46
void
fill
(
HEJ::Event
const
& event,
HEJ::Event
const
&)
override
;
47
bool
pass_cuts
(
HEJ::Event
const
&,
HEJ::Event
const
&)
override
48
{
return
true
;}
//< no additional cuts are applied
49
void
finalise
()
override
;
50
private
:
51
std::vector<std::string> analyses_names_;
52
const
std::string output_name_;
53
55
struct
rivet_info {
56
std::unique_ptr<Rivet::AnalysisHandler> handler;
57
std::string name;
58
HEJ::HepMCInterface
hepmc;
59
};
60
std::vector<rivet_info> rivet_runs_;
61
66
void
init(
HEJ::Event
const
& event);
67
bool
first_event_;
68
};
69
}
Analysis.hh
Header file for the Analysis interface.
HepMCInterface.hh
Header file for the HepMCInterface.
HEJ::Event
Definition:
Event.hh:84
HEJ::HepMCInterface
This class converts the Events into HepMC::GenEvents.
Definition:
HepMCInterface.hh:32
HEJ::RivetAnalysis
Class representing a Rivet analysis.
Definition:
RivetAnalysis.hh:32
HEJ::RivetAnalysis::fill
void fill(HEJ::Event const &event, HEJ::Event const &) override
Pass an event to the underlying Rivet analysis.
HEJ::RivetAnalysis::pass_cuts
bool pass_cuts(HEJ::Event const &, HEJ::Event const &) override
Decide whether an event passes the cuts.
Definition:
RivetAnalysis.hh:47
HEJ::RivetAnalysis::create
static std::unique_ptr< Analysis > create(YAML::Node const &config)
HEJ::RivetAnalysis::RivetAnalysis
RivetAnalysis(YAML::Node const &config)
Constructor.
HEJ::RivetAnalysis::finalise
void finalise() override
Finalise analysis.
HEJ
Main HEJ 2 Namespace.
Definition:
mainpage.dox:1
Rivet
Definition:
RivetAnalysis.hh:18
YAML
YAML Namespace.
Definition:
EmptyAnalysis.hh:16
HEJ::Analysis
Analysis base class.
Definition:
Analysis.hh:23
Generated by
1.9.5