HepMC3 event record library
TauolaValidationTool.h
1// -*- C++ -*-
2//
3// This file is part of HepMC
4// Copyright (C) 2014-2019 The HepMC collaboration (see AUTHORS for details)
5//
6#ifndef TAUOLA_VALIDATION_TOOL_H
7#define TAUOLA_VALIDATION_TOOL_H
8
9#ifdef HEPMC2
10#include "Tauola/TauolaHepMCEvent.h"
11#include "HepMC/GenEvent.h"
12#else
13#include "Tauola/TauolaHepMC3Event.h"
14#include "HepMC3/GenEvent.h"
15#endif // ifdef HEPMC2
16
17#include "ValidationTool.h"
18#include "Timer.h"
19
20#include "Tauola/Tauola.h"
21#include "Tauola/Log.h"
22/// @class TauolaValidationTool
23/// @brief Interface for validatio to Tauola
25public:
26 TauolaValidationTool():m_timer("Tauola++ processing time") {}
27
28public:
29 const std::string name() { return "Tauola++"; }
30 bool tool_modifies_event() { return true; }
31 Timer* timer() { return &m_timer; }
32
33 void initialize();
34 int process(GenEvent &hepmc);
35 void finalize();
36
37private:
38 Timer m_timer; ///< Timer
39};
40
41#endif
Definition of class GenEvent.
Stores event-related information.
Definition: GenEvent.h:41
Interface for validatio to Tauola.
void initialize()
Initialize.
bool tool_modifies_event()
Get information if this tool modifies the event.
Timer * timer()
Get timer for this tool (if this tool is being timed)
int process(GenEvent &hepmc)
Process event.
const std::string name()
Get name of the tool.
Used to benchmark MC generators.
Definition: Timer.h:38
Virtual Interface to validation tools.