hej is hosted by Hepforge, IPPP Durham
HEJ 2  2.0
High energy resummation for hadron colliders
HepMCInterface.hh
Go to the documentation of this file.
1 
9 #pragma once
10 
11 #include <sys/types.h>
12 #include <vector>
13 
14 namespace HepMC{
15  class GenCrossSection;
16  class GenEvent;
17 }
18 
19 namespace HEJ{
20  class Event;
21  class EventParameters;
23 
33  public:
42  HepMC::GenEvent operator()(Event const & event, ssize_t weight_index = -1);
50  HepMC::GenEvent init_kinematics(Event const & event);
59  void set_central(HepMC::GenEvent & out_ev, Event const & event,
60  ssize_t weight_index = -1);
64  void add_variation(HepMC::GenEvent & out_ev,
65  std::vector<EventParameters> const & variations);
66  private:
67  size_t event_count_;
68  double tot_weight_;
69  double tot_weight2_;
70  HepMC::GenCrossSection cross_section() const;
71 
72  };
73 }
Definition: Event.hh:84
This class converts the Events into HepMC::GenEvents.
Definition: HepMCInterface.hh:32
void set_central(HepMC::GenEvent &out_ev, Event const &event, ssize_t weight_index=-1)
Sets the central value from event to out_ev.
void add_variation(HepMC::GenEvent &out_ev, std::vector< EventParameters > const &variations)
Add the event variations to out_ev.
HepMC::GenEvent init_kinematics(Event const &event)
initialise the event kinematics (everything but the weights)
HepMC::GenEvent operator()(Event const &event, ssize_t weight_index=-1)
main function to convert an event into HepMC::GenEvent
Main HEJ 2 Namespace.
Definition: mainpage.dox:1
Definition: HepMCInterface.hh:14