]> git.uio.no Git - u/mrichter/AliRoot.git/blame - TEvtGen/Photos/PhotosHEPEVTEvent.h
making script executable
[u/mrichter/AliRoot.git] / TEvtGen / Photos / PhotosHEPEVTEvent.h
CommitLineData
0ca57c2f 1#ifndef _PhotosHEPEVTEvent_h_included_
2#define _PhotosHEPEVTEvent_h_included_
3
4/**
5 * @class PhotosHEPEVTParticle
6 *
7 * @brief Single particle of HEPEVT event record
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 information stored in HEPEVT event record.
13 *
14 * @author Tomasz Przedzinski
15 * @date 24 November 2011
16 */
17
18#include <iostream>
19#include "f_Init.h"
20#include "PhotosEvent.h"
21#include "PhotosParticle.h"
22#include "PhotosHEPEVTParticle.h"
23
24namespace Photospp
25{
26
27class PhotosHEPEVTParticle;
28
29class PhotosHEPEVTEvent : public PhotosEvent {
30
31 public:
32
33 /** Default destructor */
34 ~PhotosHEPEVTEvent();
35
36 /** Default constructor */
37 PhotosHEPEVTEvent();
38
39 /** Add particle at the end of event record */
40 void addParticle(PhotosHEPEVTParticle *p);
41
42 /** Get particle at index 'i' */
43 PhotosHEPEVTParticle *getParticle(int i);
44
45 /** Set particle at index 'i' */
46 void setParticle(int i, PhotosHEPEVTParticle *p);
47
48 /** Get higher-most index of the particles in event (nhep) */
49 int getParticleCount();
50
51 /** Get an unfiltered list of particles from the event record */
52 std::vector<PhotosParticle*> getParticleList();
53
54 /** Print out list of particles in the event */
55 void print();
56
57 /** Remove all particles from the event */
58 void clear();
59
60 /** Fill PhotosHEPEVTEvent from HEPEVT common block */
61 static void read_event_from_HEPEVT(PhotosHEPEVTEvent *evt);
62
63 /** Write to HEPEVT common block content of PhotosHEPEVTEvent */
64 static void write_event_to_HEPEVT(PhotosHEPEVTEvent *evt);
65
66 private:
67
68 /** List of all particles */
69 std::vector<PhotosHEPEVTParticle*> particle_list;
70};
71
72} // namespace Photospp
73#endif
74