#include <ValidationTree.h>
Public Member Functions | |
ValidationTree () | |
~ValidationTree () | |
int | create () |
int | reset () |
int | fill () |
int | close () |
Public Attributes | |
int | SimHitsEntries |
simHit ///////// There is an array for every quantity in SimHit | |
double | hitTime [MaxSimHitEntries] |
double | hitx [MaxSimHitEntries] |
double | hity [MaxSimHitEntries] |
double | hitz [MaxSimHitEntries] |
int | sensID [MaxSimHitEntries] |
int | ancestorPdg [MaxSimHitEntries] |
double | wavelength [MaxSimHitEntries] |
double | polx [MaxSimHitEntries] |
double | poly [MaxSimHitEntries] |
double | polz [MaxSimHitEntries] |
double | px [MaxSimHitEntries] |
double | py [MaxSimHitEntries] |
double | pz [MaxSimHitEntries] |
float | weight [MaxSimHitEntries] |
double | MuonPx |
double | MuonPy |
double | MuonPz |
double | MuonX |
double | MuonY |
double | MuonZ |
double | MuonTime |
double | MuonE |
double | MuonTrkLengthInOws |
double | MuonTrkLengthInIws |
double | MuonTrkLengthInLS |
double | MuonTrkLengthInGdLS |
double | dEInn |
double | dEOut |
int | StopFlag |
int | trk1_pdgId |
double | trk1_t |
double | trk1_x |
double | trk1_y |
double | trk1_z |
double | trk1_e |
double | trk1_px |
double | trk1_py |
double | trk1_pz |
double | trk1_ke |
double | trk1_ve |
double | trk1_TrkLength_GD |
double | trk1_TrkLength_iAV |
double | trk1_TrkLength_LS |
double | trk1_TrkLength_oAV |
double | trk1_TrkLength_Oil |
int | trk2_pdgId |
double | trk2_t |
double | trk2_x |
double | trk2_y |
double | trk2_z |
double | trk2_e |
double | trk2_px |
double | trk2_py |
double | trk2_pz |
double | trk2_ke |
double | trk2_ve |
double | trk2_TrkLength_GD |
double | trk2_TrkLength_iAV |
double | trk2_TrkLength_LS |
double | trk2_TrkLength_oAV |
double | trk2_TrkLength_Oil |
int | number_opti_pho |
double | wavelength_opti_pho [MaxOpticalPhoton] |
int | n |
int | execKine |
int | execDets |
int | execElec |
int | execTrig |
int | execSing |
double | time |
int | adc [8][24] |
int | tdc [8][24] |
double | adc_sum |
Private Attributes | |
TFile * | m_file |
TTree * | m_tree |
Definition at line 19 of file ValidationTree.h.
ValidationTree::ValidationTree | ( | ) |
ValidationTree::~ValidationTree | ( | ) |
int ValidationTree::create | ( | ) |
Definition at line 18 of file ValidationTree.cc.
00019 { 00020 m_file=new TFile("monitor.root","recreate"); 00021 m_tree=new TTree("t","Analysis Tree"); 00022 00024 m_tree->Branch("nhits",&SimHitsEntries,"SimHitsEntries/I"); 00025 m_tree->Branch("hitTime",hitTime,"hitTime[SimHitsEntries]/D"); 00026 m_tree->Branch("hitx",hitx,"hitx[SimHitsEntries]/D"); 00027 m_tree->Branch("hity",hity,"hity[SimHitsEntries]/D"); 00028 m_tree->Branch("hitz",hitz,"hitz[SimHitsEntries]/D"); 00029 m_tree->Branch("sensID",sensID,"sensID[SimHitsEntries]/I"); 00030 m_tree->Branch("ancestor",ancestorPdg,"ancestor[SimHitsEntries]/I"); 00031 m_tree->Branch("wavelength",wavelength,"wavelength[SimHitsEntries]/D"); 00032 m_tree->Branch("polx",polx,"polx[SimHitsEntries]/D"); 00033 m_tree->Branch("poly",poly,"poly[SimHitsEntries]/D"); 00034 m_tree->Branch("polz",polz,"polz[SimHitsEntries]/D"); 00035 m_tree->Branch("px",px,"px[SimHitsEntries]/D"); 00036 m_tree->Branch("py",py,"py[SimHitsEntries]/D"); 00037 m_tree->Branch("pz",pz,"pz[SimHitsEntries]/D"); 00038 m_tree->Branch("weight",weight,"weight[SimHitsEntries]/F"); 00039 00040 //Muon vertex Info 00041 m_tree->Branch("MuonE",&MuonE,"MuonE/D"); 00042 m_tree->Branch("MuonX",&MuonX,"MuonX/D"); 00043 m_tree->Branch("MuonY",&MuonY,"MuonY/D"); 00044 m_tree->Branch("MuonZ",&MuonZ,"MuonZ/D"); 00045 m_tree->Branch("MuonPx",&MuonPx,"MuonPx/D"); 00046 m_tree->Branch("MuonPy",&MuonPy,"MuonPy/D"); 00047 m_tree->Branch("MuonPz",&MuonPz,"MuonPz/D"); 00048 m_tree->Branch("MuonTime",&MuonTime,"MuonTime/D"); 00049 m_tree->Branch("StopFlag",&StopFlag,"StopFlag/I"); 00050 00051 00053 m_tree->Branch("MuonTrkLengthInOws",&MuonTrkLengthInOws,"MuonTrkLengthInOws/D"); 00054 m_tree->Branch("MuonTrkLengthInIws",&MuonTrkLengthInIws,"MuonTrkLengthInIws/D"); 00055 m_tree->Branch("MuonTrkLengthInLS",&MuonTrkLengthInLS,"MuonTrkLengthInLS/D"); 00056 m_tree->Branch("MuonTrkLengthInGdLS",&MuonTrkLengthInGdLS,"MuonTrkLengthInGdLS/D"); 00057 m_tree->Branch("dEInn",&dEInn,"dEInn/D"); 00058 m_tree->Branch("dEOut",&dEOut,"dEOut/D"); 00059 00061 m_tree->Branch("trk1_pdgId", &trk1_pdgId, "trk1_pdgId/I"); 00062 00063 m_tree->Branch("trk1_t", &trk1_t, "trk1_t/D"); 00064 m_tree->Branch("trk1_x", &trk1_x, "trk1_x/D"); 00065 m_tree->Branch("trk1_y", &trk1_y, "trk1_y/D"); 00066 m_tree->Branch("trk1_z", &trk1_z, "trk1_z/D"); 00067 00068 m_tree->Branch("trk1_e", &trk1_e, "trk1_e/D"); 00069 m_tree->Branch("trk1_px", &trk1_px, "trk1_px/D"); 00070 m_tree->Branch("trk1_py", &trk1_py, "trk1_py/D"); 00071 m_tree->Branch("trk1_pz", &trk1_pz, "trk1_pz/D"); 00072 00073 m_tree->Branch("trk1_ke", &trk1_ke, "trk1_ke/D"); // kinematic energy 00074 m_tree->Branch("trk1_ve", &trk1_ve, "trk1_ve/D"); // visible energy 00075 00076 m_tree->Branch("trk1_TrkLength_GD", &trk1_TrkLength_GD, "trk1_TrkLength_GD/D"); // pathlength in GDLS 00077 m_tree->Branch("trk1_TrkLength_iAV",&trk1_TrkLength_iAV,"trk1_TrkLength_iAV/D"); // pathlength in inner AV 00078 m_tree->Branch("trk1_TrkLength_LS", &trk1_TrkLength_LS, "trk1_TrkLength_LS/D"); // pathlength in LS 00079 m_tree->Branch("trk1_TrkLength_oAV",&trk1_TrkLength_oAV,"trk1_TrkLength_oAV/D"); // pathlength in outer AV 00080 m_tree->Branch("trk1_TrkLength_Oil",&trk1_TrkLength_Oil,"trk1_TrkLength_Oil/D"); // pathlength in oil 00081 00083 m_tree->Branch("trk2_pdgId", &trk2_pdgId, "trk2_pdgId/I"); 00084 00085 m_tree->Branch("trk2_t", &trk2_t, "trk2_t/D"); 00086 m_tree->Branch("trk2_x", &trk2_x, "trk2_x/D"); 00087 m_tree->Branch("trk2_y", &trk2_y, "trk2_y/D"); 00088 m_tree->Branch("trk2_z", &trk2_z, "trk2_z/D"); 00089 00090 m_tree->Branch("trk2_e", &trk2_e, "trk2_e/D"); 00091 m_tree->Branch("trk2_px", &trk2_px, "trk2_px/D"); 00092 m_tree->Branch("trk2_py", &trk2_py, "trk2_py/D"); 00093 m_tree->Branch("trk2_pz", &trk2_pz, "trk2_pz/D"); 00094 00095 m_tree->Branch("trk2_ke", &trk2_ke, "trk2_ke/D"); // kinematic energy 00096 m_tree->Branch("trk2_ve", &trk2_ve, "trk2_ve/D"); // visible energy 00097 00098 m_tree->Branch("trk2_TrkLength_GD", &trk2_TrkLength_GD, "trk2_TrkLength_GD/D"); // pathlength in GDLS 00099 m_tree->Branch("trk2_TrkLength_iAV",&trk2_TrkLength_iAV,"trk2_TrkLength_iAV/D"); // pathlength in inner AV 00100 m_tree->Branch("trk2_TrkLength_LS", &trk2_TrkLength_LS, "trk2_TrkLength_LS/D"); // pathlength in LS 00101 m_tree->Branch("trk2_TrkLength_oAV",&trk2_TrkLength_oAV,"trk2_TrkLength_oAV/D"); // pathlength in outer AV 00102 m_tree->Branch("trk2_TrkLength_Oil",&trk2_TrkLength_Oil,"trk2_TrkLength_Oil/D"); // pathlength in oil 00103 00104 // initial optical photons 00105 m_tree->Branch("number_opti_pho", &number_opti_pho, "number_opti_pho/I"); 00106 m_tree->Branch("wavelength_opti_pho",wavelength_opti_pho,",wavelength_opti_pho[number_opti_pho]/D"); 00107 00108 // 00109 m_tree->Branch("n", &n, "n/I"); 00110 m_tree->Branch("execKine",&execKine,"execKine/I"); // execution number in kinematic 00111 m_tree->Branch("execDets",&execDets,"execDets/I"); // in DetSim 00112 m_tree->Branch("execElec",&execElec,"execElec/I"); // in ElecSim 00113 m_tree->Branch("execTrig",&execTrig,"execTrig/I"); // in TrigRead 00114 m_tree->Branch("execSing",&execSing,"execSing/I"); // in SingleLoader 00115 00116 m_tree->Branch("time",&time,"time/D"); // arrival time in second 00117 00118 // readout 00119 m_tree->Branch("adc",adc,"adc[8][24]/I"); // adc 00120 m_tree->Branch("tdc",tdc,"tdc[8][24]/I"); // tdc 00121 00122 m_tree->Branch("adc_sum",&adc_sum,"adc_sum/D"); // adc_sum 00123 00124 00125 return 1; // 1 for SUCCESS; 00126 }
int ValidationTree::reset | ( | ) |
Definition at line 128 of file ValidationTree.cc.
00129 { 00131 SimHitsEntries=0; 00132 00133 //muon vertex information. 00134 MuonE=0; 00135 MuonX=0; 00136 MuonY=0; 00137 MuonZ=0; 00138 MuonPx=0; 00139 MuonPy=0; 00140 MuonPz=0; 00141 MuonTime=0; 00142 StopFlag=0; 00143 00145 MuonTrkLengthInOws=0; 00146 MuonTrkLengthInIws=0; 00147 MuonTrkLengthInLS=0; 00148 MuonTrkLengthInGdLS=0; 00149 dEInn=0; 00150 dEOut=0; 00151 00152 00154 trk1_pdgId=0; 00155 00156 trk1_t=0; 00157 trk1_x=0; 00158 trk1_y=0; 00159 trk1_z=0; 00160 00161 trk1_e=0; 00162 trk1_px=0; 00163 trk1_py=0; 00164 trk1_pz=0; 00165 00166 trk1_ke=0; // kinematic energy 00167 trk1_ve=0; // visible energy 00168 00169 trk1_TrkLength_GD=0; // pathlength in GDLS 00170 trk1_TrkLength_iAV=0; // in inner AV 00171 trk1_TrkLength_LS=0; // in LS 00172 trk1_TrkLength_oAV=0; // in outer AV 00173 trk1_TrkLength_Oil=0; // in oil 00174 00175 // MC truth for the second primary track /////////// 00176 trk2_pdgId=0; 00177 00178 trk2_t=0; 00179 trk2_x=0; 00180 trk2_y=0; 00181 trk2_z=0; 00182 00183 trk2_e=0; 00184 trk2_px=0; 00185 trk2_py=0; 00186 trk2_pz=0; 00187 00188 trk2_ke=0; // kinematic energy 00189 trk2_ve=0; // visible energy 00190 00191 trk2_TrkLength_GD=0; // pathlength in GDLS 00192 trk2_TrkLength_iAV=0; // in inner AV 00193 trk2_TrkLength_LS=0; // in LS 00194 trk2_TrkLength_oAV=0; // in outer AV 00195 trk2_TrkLength_Oil=0; // in oil 00196 00197 00198 number_opti_pho=0; 00199 00200 n=0; 00201 execKine=0; 00202 execDets=0; 00203 execElec=0; 00204 execTrig=0; 00205 execSing=0; 00206 00207 time =0; 00208 00209 adc_sum=0; 00210 00211 return 1; // 1 for SUCCESS; 00212 }
int ValidationTree::fill | ( | ) |
Definition at line 214 of file ValidationTree.cc.
00215 { 00216 m_tree->Fill(); 00217 00218 return 1; // 1 for SUCCESS; 00219 }
int ValidationTree::close | ( | ) |
Definition at line 221 of file ValidationTree.cc.
00222 { 00223 m_file->Write(); 00224 return 1; // 1 for SUCCESS; 00225 }
simHit ///////// There is an array for every quantity in SimHit
Definition at line 36 of file ValidationTree.h.
double ValidationTree::hitTime[MaxSimHitEntries] |
Definition at line 38 of file ValidationTree.h.
double ValidationTree::hitx[MaxSimHitEntries] |
Definition at line 39 of file ValidationTree.h.
double ValidationTree::hity[MaxSimHitEntries] |
Definition at line 40 of file ValidationTree.h.
double ValidationTree::hitz[MaxSimHitEntries] |
Definition at line 41 of file ValidationTree.h.
int ValidationTree::sensID[MaxSimHitEntries] |
Definition at line 42 of file ValidationTree.h.
int ValidationTree::ancestorPdg[MaxSimHitEntries] |
Definition at line 43 of file ValidationTree.h.
double ValidationTree::wavelength[MaxSimHitEntries] |
Definition at line 44 of file ValidationTree.h.
double ValidationTree::polx[MaxSimHitEntries] |
Definition at line 45 of file ValidationTree.h.
double ValidationTree::poly[MaxSimHitEntries] |
Definition at line 46 of file ValidationTree.h.
double ValidationTree::polz[MaxSimHitEntries] |
Definition at line 47 of file ValidationTree.h.
double ValidationTree::px[MaxSimHitEntries] |
Definition at line 48 of file ValidationTree.h.
double ValidationTree::py[MaxSimHitEntries] |
Definition at line 49 of file ValidationTree.h.
double ValidationTree::pz[MaxSimHitEntries] |
Definition at line 50 of file ValidationTree.h.
float ValidationTree::weight[MaxSimHitEntries] |
Definition at line 51 of file ValidationTree.h.
double ValidationTree::MuonPx |
Definition at line 54 of file ValidationTree.h.
double ValidationTree::MuonPy |
Definition at line 54 of file ValidationTree.h.
double ValidationTree::MuonPz |
Definition at line 54 of file ValidationTree.h.
double ValidationTree::MuonX |
Definition at line 55 of file ValidationTree.h.
double ValidationTree::MuonY |
Definition at line 55 of file ValidationTree.h.
double ValidationTree::MuonZ |
Definition at line 55 of file ValidationTree.h.
double ValidationTree::MuonTime |
Definition at line 56 of file ValidationTree.h.
double ValidationTree::MuonE |
Definition at line 57 of file ValidationTree.h.
Definition at line 58 of file ValidationTree.h.
Definition at line 59 of file ValidationTree.h.
Definition at line 60 of file ValidationTree.h.
Definition at line 61 of file ValidationTree.h.
double ValidationTree::dEInn |
Definition at line 62 of file ValidationTree.h.
double ValidationTree::dEOut |
Definition at line 63 of file ValidationTree.h.
Definition at line 64 of file ValidationTree.h.
Definition at line 67 of file ValidationTree.h.
double ValidationTree::trk1_t |
Definition at line 69 of file ValidationTree.h.
double ValidationTree::trk1_x |
Definition at line 70 of file ValidationTree.h.
double ValidationTree::trk1_y |
Definition at line 71 of file ValidationTree.h.
double ValidationTree::trk1_z |
Definition at line 72 of file ValidationTree.h.
double ValidationTree::trk1_e |
Definition at line 74 of file ValidationTree.h.
double ValidationTree::trk1_px |
Definition at line 75 of file ValidationTree.h.
double ValidationTree::trk1_py |
Definition at line 76 of file ValidationTree.h.
double ValidationTree::trk1_pz |
Definition at line 77 of file ValidationTree.h.
double ValidationTree::trk1_ke |
Definition at line 79 of file ValidationTree.h.
double ValidationTree::trk1_ve |
Definition at line 80 of file ValidationTree.h.
Definition at line 82 of file ValidationTree.h.
Definition at line 83 of file ValidationTree.h.
Definition at line 84 of file ValidationTree.h.
Definition at line 85 of file ValidationTree.h.
Definition at line 86 of file ValidationTree.h.
Definition at line 89 of file ValidationTree.h.
double ValidationTree::trk2_t |
Definition at line 91 of file ValidationTree.h.
double ValidationTree::trk2_x |
Definition at line 92 of file ValidationTree.h.
double ValidationTree::trk2_y |
Definition at line 93 of file ValidationTree.h.
double ValidationTree::trk2_z |
Definition at line 94 of file ValidationTree.h.
double ValidationTree::trk2_e |
Definition at line 96 of file ValidationTree.h.
double ValidationTree::trk2_px |
Definition at line 97 of file ValidationTree.h.
double ValidationTree::trk2_py |
Definition at line 98 of file ValidationTree.h.
double ValidationTree::trk2_pz |
Definition at line 99 of file ValidationTree.h.
double ValidationTree::trk2_ke |
Definition at line 101 of file ValidationTree.h.
double ValidationTree::trk2_ve |
Definition at line 102 of file ValidationTree.h.
Definition at line 104 of file ValidationTree.h.
Definition at line 105 of file ValidationTree.h.
Definition at line 106 of file ValidationTree.h.
Definition at line 107 of file ValidationTree.h.
Definition at line 108 of file ValidationTree.h.
Definition at line 111 of file ValidationTree.h.
double ValidationTree::wavelength_opti_pho[MaxOpticalPhoton] |
Definition at line 112 of file ValidationTree.h.
Definition at line 115 of file ValidationTree.h.
Definition at line 116 of file ValidationTree.h.
Definition at line 117 of file ValidationTree.h.
Definition at line 118 of file ValidationTree.h.
Definition at line 119 of file ValidationTree.h.
Definition at line 120 of file ValidationTree.h.
double ValidationTree::time |
Definition at line 121 of file ValidationTree.h.
int ValidationTree::adc[8][24] |
Definition at line 124 of file ValidationTree.h.
int ValidationTree::tdc[8][24] |
Definition at line 125 of file ValidationTree.h.
double ValidationTree::adc_sum |
Definition at line 127 of file ValidationTree.h.
TFile* ValidationTree::m_file [private] |
Definition at line 130 of file ValidationTree.h.
TTree* ValidationTree::m_tree [private] |
Definition at line 131 of file ValidationTree.h.