HepMC3 event record library
PhotosValidationTool.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 PHOTOS_VALIDATION_TOOL_H
7#define PHOTOS_VALIDATION_TOOL_H
8
9#ifdef HEPMC2
10#include "Photos/PhotosHepMCEvent.h"
11#include "HepMC/GenEvent.h"
12#else
13#include "Photos/PhotosHepMC3Event.h"
14#include "HepMC3/GenEvent.h"
15#include "HepMC3/Selector.h"
16#endif // ifdef HEPMC2
17
18#include "ValidationTool.h"
19#include "Timer.h"
20
21#include "Photos/Photos.h"
22#include "Photos/Log.h"
23/// @class PhotosValidationTool
24/// @brief Interface for validatio to Photos
26public:
28
29public:
30 const std::string name() { return "Photos++"; }
31 bool tool_modifies_event() { return true; }
32 Timer* timer() { return &m_timer; }
33
34 void initialize();
35 int process(GenEvent &hepmc);
36 void finalize();
37
38private:
39 static const int MAX_PHOTONS_TO_KEEP_TRACK_OF = 4; ///< Number of tracked photons
41 int m_more_photons_added; ///< More added photons
42 Timer m_timer; ///< Timer
43};
44
45#endif
Definition of class GenEvent.
definition of /b Selector class
Stores event-related information.
Definition GenEvent.h:42
Interface for validatio to Photos.
void initialize()
Initialize.
static const int MAX_PHOTONS_TO_KEEP_TRACK_OF
Number of tracked photons.
int m_photons_added[MAX_PHOTONS_TO_KEEP_TRACK_OF]
Added photons.
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.
int m_more_photons_added
More added photons.
Used to benchmark MC generators.
Definition Timer.h:38
Virtual Interface to validation tools.