PandaRoot
PhotosHEPEVTEvent.h
Go to the documentation of this file.
1
#ifndef _PhotosHEPEVTEvent_h_included_
2
#define _PhotosHEPEVTEvent_h_included_
3
18
#include <iostream>
19
#include "
PhotosEvent.h
"
20
#include "
PhotosParticle.h
"
21
#include "
PhotosHEPEVTParticle.h
"
22
23
namespace
Photospp
{
24
25
// Uncomment this line to use interface to common block HEPEVT
26
// But first be sure about suitable for you value of NMXHEP
27
// and whether phep, vhep should be declared float or double
28
//#define USE_HEPEVT_INTERFACE
29
30
#ifdef USE_HEPEVT_INTERFACE
31
32
// Change this value to match HEPEVT size
33
const
int
NMXHEP
= 10000;
34
35
extern
"C"
struct
{
36
int
nevhep
;
// serial number
37
int
nhep
;
// number of particles
38
int
isthep
[
NMXHEP
];
// status code
39
int
idhep
[
NMXHEP
];
// particle PDG ID
40
int
jmohep
[
NMXHEP
][2];
// parent particles
41
int
jdahep
[
NMXHEP
][2];
// childreen particles
42
double
phep
[
NMXHEP
][5];
// four-momentum, mass [GeV]
43
double
vhep
[
NMXHEP
][4];
// vertex [mm]
44
} hepevt_;
45
46
#endif
47
48
class
PhotosHEPEVTParticle
;
49
50
class
PhotosHEPEVTEvent
:
public
PhotosEvent
{
51
52
public
:
54
~PhotosHEPEVTEvent
();
55
57
PhotosHEPEVTEvent
();
58
60
void
addParticle
(
PhotosHEPEVTParticle
*p);
61
63
PhotosHEPEVTParticle
*
getParticle
(
int
i
);
64
66
void
setParticle
(
int
i,
PhotosHEPEVTParticle
*p);
67
69
int
getParticleCount
();
70
72
std::vector<PhotosParticle *>
getParticleList
();
73
75
void
print
();
76
78
void
clear
();
79
80
#ifdef USE_HEPEVT_INTERFACE
81
82
static
void
read_event_from_HEPEVT(
PhotosHEPEVTEvent
*evt);
83
85
static
void
write_event_to_HEPEVT(
PhotosHEPEVTEvent
*evt);
86
#endif
87
88
private
:
90
std::vector<PhotosHEPEVTParticle *> particle_list;
91
};
92
93
}
// namespace Photospp
94
#endif
PhotosHEPEVTParticle.h
Photospp::PhotosHEPEVTEvent
Definition:
PhotosHEPEVTEvent.h:50
Photospp::nhep
int nhep
Definition:
PH_HEPEVT_Interface.h:17
Photospp::vhep
double vhep[NMXHEP][4]
Definition:
PH_HEPEVT_Interface.h:23
PhotosEvent.h
Photospp::isthep
int isthep[NMXHEP]
Definition:
PH_HEPEVT_Interface.h:18
Photospp::PhotosHEPEVTEvent::PhotosHEPEVTEvent
PhotosHEPEVTEvent()
i
unsigned int i
Definition:
P4_F32vec4.h:21
Photospp::PhotosHEPEVTEvent::getParticleCount
int getParticleCount()
Photospp
Definition:
Log.h:30
Photospp::NMXHEP
static const int NMXHEP
Definition:
PH_HEPEVT_Interface.h:10
Photospp::PhotosHEPEVTEvent::print
void print()
Photospp::idhep
int idhep[NMXHEP]
Definition:
PH_HEPEVT_Interface.h:19
PhotosParticle.h
Photospp::PhotosHEPEVTEvent::~PhotosHEPEVTEvent
~PhotosHEPEVTEvent()
Photospp::phep
double phep[NMXHEP][5]
Definition:
PH_HEPEVT_Interface.h:22
Photospp::nevhep
int nevhep
Definition:
PH_HEPEVT_Interface.h:16
Photospp::PhotosHEPEVTEvent::clear
void clear()
Photospp::jdahep
int jdahep[NMXHEP][2]
Definition:
PH_HEPEVT_Interface.h:21
Photospp::PhotosHEPEVTEvent::getParticleList
std::vector< PhotosParticle * > getParticleList()
Photospp::PhotosEvent
Definition:
PhotosEvent.h:25
Photospp::PhotosHEPEVTEvent::setParticle
void setParticle(int i, PhotosHEPEVTParticle *p)
Photospp::PhotosHEPEVTEvent::addParticle
void addParticle(PhotosHEPEVTParticle *p)
Photospp::PhotosHEPEVTEvent::getParticle
PhotosHEPEVTParticle * getParticle(int i)
Photospp::PhotosHEPEVTParticle
Definition:
PhotosHEPEVTParticle.h:31
PhotosHEPEVTParticle
Single particle of HEPEVT event record.
Photospp::jmohep
int jmohep[NMXHEP][2]
Definition:
PH_HEPEVT_Interface.h:20
home
gitlab-runner
builds
LYZoAKaU
0
PandaRootGroup
PandaRoot
pgenerators
EvtGen
Photos
Photos
PhotosHEPEVTEvent.h
Generated on Fri Oct 21 2022 07:03:57 for PandaRoot by
1.8.13