HepMC3 event record library
test
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
12
void
PythiaValidationTool::initialize
() {
13
m_pythia
.init();
14
}
15
16
int
PythiaValidationTool::process
(
GenEvent
&hepmc) {
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
26
void
PythiaValidationTool::finalize
() {
27
/* The condition below is true at least for 8.209+. 8.209- will probably fail */
28
#if defined(PYTHIA_VERSION_INTEGER) || defined (PYTHIA_VERSION)
29
m_pythia
.stat();
30
#else
31
m_pythia
.statistics();
32
#endif
33
}
HepMC3::GenEvent
Stores event-related information.
Definition:
GenEvent.h:41
PythiaValidationTool::PythiaValidationTool
PythiaValidationTool(const std::string &filename)
Constructor.
Definition:
PythiaValidationTool.cc:8
PythiaValidationTool::initialize
void initialize()
Initialize.
Definition:
PythiaValidationTool.cc:12
PythiaValidationTool::finalize
void finalize()
Finalize.
Definition:
PythiaValidationTool.cc:26
PythiaValidationTool::m_timer
Timer m_timer
Timer.
Definition:
PythiaValidationTool.h:51
PythiaValidationTool::m_pythia
Pythia8::Pythia m_pythia
Pythia8 instance.
Definition:
PythiaValidationTool.h:49
PythiaValidationTool::m_filename
std::string m_filename
Used file.
Definition:
PythiaValidationTool.h:50
PythiaValidationTool::process
int process(GenEvent &hepmc)
Process event.
Definition:
PythiaValidationTool.cc:16
Timer::start
void start()
Definition:
Timer.h:44
Generated on Wed Jan 18 2023 00:00:00 for HepMC3 event record library by
1.9.6