src/eventRecordInterfaces/PhotosHepMC3Event.h
1#ifndef _PhotosHepMC3Event_h_included_
2#define _PhotosHepMC3Event_h_included_
3
4/**
5 * @class PhotosHepMC3Event
6 *
7 * @brief Interface to GenEvent objects
8 *
9 * This class implements the virtual methods of
10 * PhotosEvent. In this way it provides an
11 * interface between the generic PhotosEvent class
12 * and a GenEvent object.
13 *
14 * @date 26 Jan 2020
15 *
16 * This code is licensed under GNU General Public Licence.
17 * For more informations, see: http://www.gnu.org/licenses/
18 */
19
20#include <vector>
21#include "HepMC3/GenEvent.h"
22#include "PhotosEvent.h"
23#include "PhotosParticle.h"
24
25namespace Photospp
26{
27using namespace HepMC3;
29{
30public:
32
33 /** Constructor which keeps a pointer to the GenEvent*/
34 PhotosHepMC3Event(GenEvent * event);
35
36 /** Returns the GenEvent */
37 GenEvent * getEvent();
38
39 /** Returns the list of particles */
40 std::vector<PhotosParticle*> getParticleList();
41
42 /** Prints event summary */
43 void print();
44private:
45 /** The event */
46 GenEvent * m_event;
47 /** Particle list */
48 std::vector<PhotosParticle *> particles;
49};
50
51} // namespace Photospp
52#endif
std::vector< PhotosParticle * > getParticleList()
std::vector< PhotosParticle * > particles
PhotosHepMC3Event(GenEvent *event)