hej is hosted by Hepforge, IPPP Durham
HEJ  2.3.0
High energy resummation for hadron colliders
HDF5Writer.hh
Go to the documentation of this file.
1 
10 #pragma once
11 
12 #include <memory>
13 #include <string>
14 #include <string_view>
15 
16 #include "HEJ/EventWriter.hh"
17 
18 namespace LHEF {
19  class HEPRUP;
20 }
21 
22 namespace HEJ {
23  class Event;
24 
26 
34  class HDF5Writer: public EventWriter{
35  public:
37 
41  HDF5Writer(std::string const & file, LHEF::HEPRUP heprup);
43 
57  std::string const & file,
58  LHEF::HEPRUP heprup,
59  std::string_view config
60  );
61  HDF5Writer() = delete;
62 
64  void write(Event const & ev) override;
65 
67  void set_xs_scale(double scale) override;
68 
70  void finish() override;
71 
72  ~HDF5Writer() override;
73 
74  private:
75  struct HDF5WriterImpl;
76 
77  std::unique_ptr<HDF5WriterImpl> impl_;
78  };
79 
80 } // 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 HDF5 output.
Definition: HDF5Writer.hh:34
void set_xs_scale(double scale) override
Set the ratio (cross section) / (sum of event weights)
void finish() override
Finish writing.
HDF5Writer(std::string const &file, LHEF::HEPRUP heprup)
Constructor.
HDF5Writer(std::string const &file, LHEF::HEPRUP heprup, std::string_view config)
Constructor.
HDF5Writer()=delete
void write(Event const &ev) override
Write an event to the output file.
~HDF5Writer() override
Main HEJ 2 Namespace.
Definition: mainpage.dox:1
Definition: Analysis.hh:14