00001 #ifndef _HepevtTables_h_ 00002 #define _HepevtTables_h_ 00003 00004 #include <string> 00005 #include <iostream> 00006 #include <vector> 00007 00008 using namespace std; 00009 00010 // 00011 //*** generated particle information in LUND7 format 00012 // 00013 class Gen_hepevt { 00014 public: 00015 Gen_hepevt() {}; 00016 public: 00017 int id; 00018 int isthep; 00019 int idhep; 00020 const Gen_hepevt * mother; 00021 int mo[2]; 00022 int da[2]; 00023 float P[5]; 00024 float V[4]; 00025 }; 00026 00027 class GenHepevtCol { 00028 public: 00029 static vector<Gen_hepevt>* getGenHepevtCol(void); 00030 private: 00031 static vector<Gen_hepevt>* s_col; 00032 }; 00033 00034 00035 // 00036 //*** Packed Gen_HEPEVT (main part) 00037 // 00038 class Gen_pakevt { 00039 public: 00040 Gen_pakevt() {}; 00041 public: 00042 int id; 00043 int istid; 00044 int movtx; 00045 float PX; 00046 float PY; 00047 float PZ; 00048 float E; 00049 }; 00050 00051 class GenPakevtCol { 00052 public: 00053 static vector<Gen_pakevt>* getGenPakevtCol(void); 00054 private: 00055 static vector<Gen_pakevt>* s_col; 00056 }; 00057 00058 00059 // 00060 //*** Packed Gen_HEPEVT (vertex part) 00061 // 00062 class Gen_pakvtx { 00063 public: 00064 Gen_pakvtx() {}; 00065 public: 00066 int id; 00067 float VX; 00068 float VY; 00069 float VZ; 00070 float T; 00071 }; 00072 00073 class GenPakvtxCol { 00074 public: 00075 static vector<Gen_pakvtx>* getGenPakvtxCol(void); 00076 private: 00077 static vector<Gen_pakvtx>* s_col; 00078 }; 00079 00080 00081 #endif // _HepevtTables_h_ 00082