/search.css" rel="stylesheet" type="text/css"/> /search.js">
00001 00007 #ifndef VALIDATIONTREE_H 00008 #define VALIDATIONTREE_H 00009 00010 #include "TFile.h" 00011 #include "TTree.h" 00012 00013 #include <iostream> 00014 00015 #define MaxSimHitEntries 100000 00016 00017 #define MaxOpticalPhoton 100000 00018 00019 class ValidationTree 00020 { 00021 public: 00022 ValidationTree(); 00023 ~ValidationTree(); 00024 00025 public: 00026 int create();//const char* filename = "noname.root"); 00027 int reset(); 00028 int fill(); 00029 int close(); 00030 00032 public: 00033 00036 int SimHitsEntries; 00037 00038 double hitTime[MaxSimHitEntries]; 00039 double hitx[MaxSimHitEntries]; 00040 double hity[MaxSimHitEntries]; 00041 double hitz[MaxSimHitEntries]; 00042 int sensID[MaxSimHitEntries]; 00043 int ancestorPdg[MaxSimHitEntries]; 00044 double wavelength[MaxSimHitEntries]; 00045 double polx[MaxSimHitEntries]; 00046 double poly[MaxSimHitEntries]; 00047 double polz[MaxSimHitEntries]; 00048 double px[MaxSimHitEntries]; 00049 double py[MaxSimHitEntries]; 00050 double pz[MaxSimHitEntries]; 00051 float weight[MaxSimHitEntries]; 00052 00054 double MuonPx, MuonPy, MuonPz; 00055 double MuonX, MuonY, MuonZ; 00056 double MuonTime; 00057 double MuonE; 00058 double MuonTrkLengthInOws; 00059 double MuonTrkLengthInIws; 00060 double MuonTrkLengthInLS; 00061 double MuonTrkLengthInGdLS; 00062 double dEInn; 00063 double dEOut; 00064 int StopFlag; 00065 00067 int trk1_pdgId; 00068 00069 double trk1_t; 00070 double trk1_x; 00071 double trk1_y; 00072 double trk1_z; 00073 00074 double trk1_e; 00075 double trk1_px; 00076 double trk1_py; 00077 double trk1_pz; 00078 00079 double trk1_ke; // kinematic energy 00080 double trk1_ve; // visible energy 00081 00082 double trk1_TrkLength_GD; // pathlength in GDLS 00083 double trk1_TrkLength_iAV; // in inner AV 00084 double trk1_TrkLength_LS; // in LS 00085 double trk1_TrkLength_oAV; // in outer AV 00086 double trk1_TrkLength_Oil; // in oil 00087 00089 int trk2_pdgId; 00090 00091 double trk2_t; 00092 double trk2_x; 00093 double trk2_y; 00094 double trk2_z; 00095 00096 double trk2_e; 00097 double trk2_px; 00098 double trk2_py; 00099 double trk2_pz; 00100 00101 double trk2_ke; // kinematic energy 00102 double trk2_ve; // visible energy 00103 00104 double trk2_TrkLength_GD; // pathlength in GDLS 00105 double trk2_TrkLength_iAV; // in inner AV 00106 double trk2_TrkLength_LS; // in LS 00107 double trk2_TrkLength_oAV; // in outer AV 00108 double trk2_TrkLength_Oil; // in oil 00109 00111 int number_opti_pho; 00112 double wavelength_opti_pho[MaxOpticalPhoton]; 00113 00115 int n; // an independent counter in Sim15 00116 int execKine; // execution number in kinematic 00117 int execDets; // in DetSim 00118 int execElec; // in ElecSim 00119 int execTrig; // in TrigRead 00120 int execSing; // in SingleLoader 00121 double time; // event arrival time in second 00122 00124 int adc[8][24]; // adc: 8 rings, 24 in each ring 00125 int tdc[8][24]; // tdc: 8 rings, 24 in each ring 00126 00127 double adc_sum; // sum of all adc 00128 00129 private: 00130 TFile* m_file; 00131 TTree* m_tree; 00132 }; 00133 00134 00135 #endif // VALIDATIONTREE_H