Loading [MathJax]/extensions/tex2jax.js
hej is hosted by Hepforge, IPPP Durham
HEJ  2.3.0
High energy resummation for hadron colliders
EventWriter.hh
Go to the documentation of this file.
1 
8 #pragma once
9 
10 #include <string>
11 
12 namespace HEJ {
13  class Event;
14 
16  class EventWriter {
17  public:
19  virtual void write(Event const &) = 0;
20 
22  virtual void set_xs_scale(double scale) = 0;
23 
26  virtual void finish(){finished_=true;};
27 
28  virtual ~EventWriter() = default;
29  protected:
38  EventWriter* writer, std::string const & name
39  ) const noexcept;
40  bool finished() const {return finished_;};
41  private:
42  bool finished_ = false;
43  };
44 
45 } // namespace HEJ
Pure abstract base class for event writers.
Definition: EventWriter.hh:16
virtual void set_xs_scale(double scale)=0
Set the ratio (cross section) / (sum of event weights)
bool finished() const
Definition: EventWriter.hh:40
void finish_or_abort(EventWriter *writer, std::string const &name) const noexcept
If writer is not finished run finish() and abort on error.
virtual void write(Event const &)=0
Write an event.
virtual void finish()
Definition: EventWriter.hh:26
virtual ~EventWriter()=default
An event with clustered jets.
Definition: Event.hh:51
std::string name(EventType type)
Event type names.
Definition: event_types.hh:57
Main HEJ 2 Namespace.
Definition: mainpage.dox:1