hej is hosted by Hepforge, IPPP Durham
HEJ  2.3.0
High energy resummation for hadron colliders
HDF5Reader.hh
Go to the documentation of this file.
1 
8 #pragma once
9 
10 #include <memory>
11 #include <string>
12 
13 #include "HEJ/EventReader.hh"
14 
15 namespace HEJ {
16 
18 
21  class HDF5Reader : public EventReader{
22  public:
23  HDF5Reader() = delete;
24 
26  explicit HDF5Reader(std::string const & filename);
27 
29  bool read_event() override;
30 
32  std::string const & header() const override;
33 
35  LHEF::HEPRUP const & heprup() const override;
36 
38  LHEF::HEPEUP const & hepeup() const override;
39 
41  std::optional<size_t> number_events() const override;
42 
43  ~HDF5Reader() override;
44 
45  private:
46  struct HDF5ReaderImpl;
47 
48  std::unique_ptr<HDF5ReaderImpl> impl_;
49  };
50 
51 } // namespace HEJ
Header file for event reader interface.
Class for reading events from a file in the HDF5 file format.
Definition: HDF5Reader.hh:21
std::string const & header() const override
Access header text.
LHEF::HEPRUP const & heprup() const override
Access run information.
LHEF::HEPEUP const & hepeup() const override
Access last read event.
HDF5Reader(std::string const &filename)
Contruct object reading from the given file.
HDF5Reader()=delete
bool read_event() override
Read an event.
~HDF5Reader() override
std::optional< size_t > number_events() const override
Get number of events.
Main HEJ 2 Namespace.
Definition: mainpage.dox:1
Abstract base class for reading events from files.
Definition: EventReader.hh:25