Loading [MathJax]/extensions/tex2jax.js
hej is hosted by Hepforge, IPPP Durham
HEJ  2.3.0
High energy resummation for hadron colliders
HepMC3Writer.hh
Go to the documentation of this file.
1 
8 #pragma once
9 
10 #include <memory>
11 #include <string>
12 
13 #include "HEJ/EventWriter.hh"
14 
15 namespace LHEF {
16  class HEPRUP;
17 }
18 
19 namespace HEJ {
20  class Event;
21 
23 
32  class HepMC3Writer: public EventWriter{
33  public:
35 
39  HepMC3Writer(std::string const & file, LHEF::HEPRUP heprup);
40  HepMC3Writer() = delete;
41 
43  void write(Event const & ev) override;
44 
46  void set_xs_scale(double scale) override;
47 
49  void finish() override;
50 
51  ~HepMC3Writer() override;
52  private:
53  struct HepMC3WriterImpl;
54 
55  std::unique_ptr<HepMC3WriterImpl> impl_;
56  };
57 
58 } // namespace HEJ
Header file for the EventWriter interface.
Pure abstract base class for event writers.
Definition: EventWriter.hh:16
An event with clustered jets.
Definition: Event.hh:51
This is an event writer specifically for HepMC3 output.
Definition: HepMC3Writer.hh:32
HepMC3Writer()=delete
~HepMC3Writer() override
void write(Event const &ev) override
Write an event to the output file.
void set_xs_scale(double scale) override
Set the ratio (cross section) / (sum of event weights)
void finish() override
Finish writing.
HepMC3Writer(std::string const &file, LHEF::HEPRUP heprup)
Constructor.
Main HEJ 2 Namespace.
Definition: mainpage.dox:1
Definition: Analysis.hh:14