HepMC3 event record library
PythiaValidationTool.cc
1 // -*- C++ -*-
2 //
3 // This file is part of HepMC
4 // Copyright (C) 2014-2019 The HepMC collaboration (see AUTHORS for details)
5 //
6 #include "PythiaValidationTool.h"
7 
8 PythiaValidationTool::PythiaValidationTool( const std::string &filename ):m_filename(filename),m_timer("pythia8 conversion time") {
9  m_pythia.readFile(m_filename);
10 }
11 
13  m_pythia.init();
14 }
15 
17  if( !m_pythia.next() ) return 1;
18 
19  // Exclude generation time
20  m_timer.start();
21 
22  m_tohepmc.fill_next_event(m_pythia.event, &hepmc, -1, &m_pythia.info);
23  return 0;
24 }
25 
27 #ifdef PYTHIA_VERSION_INTEGER
28  if (PYTHIA_VERSION_INTEGER>8200) m_pythia.stat();
29 #else
30  m_pythia.statistics();
31 #endif
32 }
PythiaValidationTool::m_pythia
Pythia8::Pythia m_pythia
Pythia8 instance.
Definition: PythiaValidationTool.h:44
PythiaValidationTool::PythiaValidationTool
PythiaValidationTool(const std::string &filename)
Constructor.
Definition: PythiaValidationTool.cc:8
HepMC3::GenEvent
Stores event-related information.
Definition: GenEvent.h:41
PythiaValidationTool::finalize
void finalize()
Finalize.
Definition: PythiaValidationTool.cc:26
PythiaValidationTool::m_filename
std::string m_filename
Used file.
Definition: PythiaValidationTool.h:45
PythiaValidationTool::initialize
void initialize()
Initialize.
Definition: PythiaValidationTool.cc:12
PythiaValidationTool::m_timer
Timer m_timer
Timer.
Definition: PythiaValidationTool.h:46
PythiaValidationTool::process
int process(GenEvent &hepmc)
Process event.
Definition: PythiaValidationTool.cc:16
Timer::start
void start()
Definition: Timer.h:44