PandaRoot
PH_HEPEVT_Interface.h
Go to the documentation of this file.
1 //****************************************************************************
2 //* This file is part of PandaRoot. *
3 //* *
4 //* PandaRoot is distributed under the terms of the *
5 //* GNU General Public License (GPL) version 3, *
6 //* copied verbatim in the file "LICENSE". *
7 //* *
8 //* Copyright (C) 2006 - 2024 FAIR GmbH and copyright holders of PandaRoot *
9 //* The copyright holders are listed in the file "COPYRIGHTHOLDERS". *
10 //* The authors are listed in the file "AUTHORS". *
11 //****************************************************************************
12 
13 #ifndef _PH_HEPEVT_Interface_included_
14 #define _PH_HEPEVT_Interface_included_
15 
16 #include <vector>
17 #include "PhotosBranch.h"
18 #include "PhotosParticle.h"
19 
20 namespace Photospp {
21 
22 const static int NMXHEP = 10000;
23 const static double NO_BOOST_THRESHOLD = 1.0e-8;
24 
25 extern "C" {
27 extern struct {
28  int nevhep;
29  int nhep;
30  int isthep[NMXHEP];
31  int idhep[NMXHEP];
32  int jmohep[NMXHEP][2];
33  int jdahep[NMXHEP][2];
34  double phep[NMXHEP][5];
35  double vhep[NMXHEP][4];
36  // COMMON/PH_HEPEVT/NEVHEP,NHEP,ISTHEP(NMXHEP),IDHEP(NMXHEP),
37  // &JMOHEP(2,NMXHEP),JDAHEP(2,NMXHEP),PHEP(5,NMXHEP),VHEP(4,NMXHEP)
38 } ph_hepevt_;
39 
40 extern struct {
41  int qedrad[NMXHEP];
42 } ph_phoqed_;
43 
45 extern "C" void phodmp_();
46 }
47 
49  public:
51  static int set(PhotosBranch *branch);
52 
54  static void get();
55 
57  static void prepare();
58 
60  static void check_ME_channel();
61 
63  static void complete();
64 
66  static void clear();
67 
68  public:
70  static int decay_idx;
72  static int ME_channel;
73 
74  private:
76  static void add_particle(int i, PhotosParticle *particle, int first_mother, int last_mother, int first_daughter, int last_daughter);
77 
79  static std::vector<PhotosParticle *> m_particle_list;
80 };
81 
82 } // namespace Photospp
83 #endif
double vhep[NMXHEP][4]
struct Photospp::@31 ph_phoqed_
void phodmp_()
int isthep[NMXHEP]
unsigned int i
Definition: P4_F32vec4.h:33
static const double NO_BOOST_THRESHOLD
struct Photospp::@30 ph_hepevt_
Definition: Log.h:54
static const int NMXHEP
int idhep[NMXHEP]
int qedrad[NMXHEP]
double phep[NMXHEP][5]
int jdahep[NMXHEP][2]
int jmohep[NMXHEP][2]