#include <TofCheckData.h>
Public Member Functions | |
void | Fill (Event::EventHeader &, RecETofCalHit *&) |
void | Fill (Event::EventHeader &, RecBTofCalHit *&) |
void | Fill (Event::EventHeader &, RecTofTrack *&, RecMdcKalTrack *&, bool) |
void | Fill (Event::EventHeader &, RecETofCalHit *&) |
void | Fill (Event::EventHeader &, RecBTofCalHit *&) |
void | Fill (Event::EventHeader &, RecTofTrack *&, RecMdcKalTrack *&, bool) |
void | FillCol (Event::EventHeader &, RecETofCalHitCol &) |
void | FillCol (Event::EventHeader &, RecBTofCalHitCol &) |
void | FillCol (Event::EventHeader &, RecTofTrackCol &, RecMdcKalTrackCol &) |
void | FillCol (Event::EventHeader &, RecETofCalHitCol &) |
void | FillCol (Event::EventHeader &, RecBTofCalHitCol &) |
void | FillCol (Event::EventHeader &, RecTofTrackCol &, RecMdcKalTrackCol &) |
TofCheckData (NTuple::Tuple *&trk, NTuple::Tuple *&cbtrk, NTuple::Tuple *&cetrk) | |
TofCheckData (NTuple::Tuple *&trk, NTuple::Tuple *&cbtrk, NTuple::Tuple *&cetrk) | |
~TofCheckData () | |
~TofCheckData () | |
Private Attributes | |
NTuple::Item< double > | cbtrk_adc1 |
NTuple::Item< double > | cbtrk_adc1 |
NTuple::Item< double > | cbtrk_adc2 |
NTuple::Item< double > | cbtrk_adc2 |
NTuple::Item< double > | cbtrk_dzhit |
NTuple::Item< double > | cbtrk_dzhit |
NTuple::Item< double > | cbtrk_event |
NTuple::Item< double > | cbtrk_event |
NTuple::Item< double > | cbtrk_p |
NTuple::Item< double > | cbtrk_p |
NTuple::Item< double > | cbtrk_path |
NTuple::Item< double > | cbtrk_path |
NTuple::Item< double > | cbtrk_q |
NTuple::Item< double > | cbtrk_q |
NTuple::Item< double > | cbtrk_qual |
NTuple::Item< double > | cbtrk_qual |
NTuple::Item< double > | cbtrk_run |
NTuple::Item< double > | cbtrk_run |
NTuple::Item< double > | cbtrk_sintheta |
NTuple::Item< double > | cbtrk_sintheta |
NTuple::Item< double > | cbtrk_tdc1 |
NTuple::Item< double > | cbtrk_tdc1 |
NTuple::Item< double > | cbtrk_tdc2 |
NTuple::Item< double > | cbtrk_tdc2 |
NTuple::Item< double > | cbtrk_texp |
NTuple::Item< double > | cbtrk_texp |
NTuple::Item< double > | cbtrk_tofid |
NTuple::Item< double > | cbtrk_tofid |
NTuple::Tuple *& | cbtrk_tuple |
NTuple::Tuple *& | cbtrk_tuple |
NTuple::Item< double > | cbtrk_zhit |
NTuple::Item< double > | cbtrk_zhit |
NTuple::Item< double > | cetrk_adc |
NTuple::Item< double > | cetrk_adc |
NTuple::Item< double > | cetrk_drhit |
NTuple::Item< double > | cetrk_drhit |
NTuple::Item< double > | cetrk_event |
NTuple::Item< double > | cetrk_event |
NTuple::Item< double > | cetrk_p |
NTuple::Item< double > | cetrk_p |
NTuple::Item< double > | cetrk_path |
NTuple::Item< double > | cetrk_path |
NTuple::Item< double > | cetrk_q |
NTuple::Item< double > | cetrk_q |
NTuple::Item< double > | cetrk_qual |
NTuple::Item< double > | cetrk_qual |
NTuple::Item< double > | cetrk_rhit |
NTuple::Item< double > | cetrk_rhit |
NTuple::Item< double > | cetrk_run |
NTuple::Item< double > | cetrk_run |
NTuple::Item< double > | cetrk_tdc |
NTuple::Item< double > | cetrk_tdc |
NTuple::Item< double > | cetrk_texp |
NTuple::Item< double > | cetrk_texp |
NTuple::Item< double > | cetrk_tofid |
NTuple::Item< double > | cetrk_tofid |
NTuple::Tuple *& | cetrk_tuple |
NTuple::Tuple *& | cetrk_tuple |
NTuple::Item< double > | trk_barrel |
NTuple::Item< double > | trk_barrel |
NTuple::Item< double > | trk_beta |
NTuple::Item< double > | trk_beta |
NTuple::Item< double > | trk_charge |
NTuple::Item< double > | trk_charge |
NTuple::Item< double > | trk_cluster |
NTuple::Item< double > | trk_cluster |
NTuple::Item< double > | trk_counter |
NTuple::Item< double > | trk_counter |
NTuple::Item< double > | trk_east |
NTuple::Item< double > | trk_east |
NTuple::Item< double > | trk_energy |
NTuple::Item< double > | trk_energy |
NTuple::Item< double > | trk_errenergy |
NTuple::Item< double > | trk_errenergy |
NTuple::Item< double > | trk_errphi |
NTuple::Item< double > | trk_errphi |
NTuple::Item< double > | trk_errt0 |
NTuple::Item< double > | trk_errt0 |
NTuple::Item< double > | trk_errtof |
NTuple::Item< double > | trk_errtof |
NTuple::Item< double > | trk_errz |
NTuple::Item< double > | trk_errz |
NTuple::Item< double > | trk_event |
NTuple::Item< double > | trk_event |
NTuple::Item< double > | trk_layer |
NTuple::Item< double > | trk_layer |
NTuple::Item< double > | trk_multihit |
NTuple::Item< double > | trk_multihit |
NTuple::Item< double > | trk_ncounter |
NTuple::Item< double > | trk_ncounter |
NTuple::Item< double > | trk_neast |
NTuple::Item< double > | trk_neast |
NTuple::Item< double > | trk_nwest |
NTuple::Item< double > | trk_nwest |
NTuple::Item< double > | trk_offe |
NTuple::Item< double > | trk_offe |
NTuple::Item< double > | trk_offk |
NTuple::Item< double > | trk_offk |
NTuple::Item< double > | trk_offmu |
NTuple::Item< double > | trk_offmu |
NTuple::Item< double > | trk_offp |
NTuple::Item< double > | trk_offp |
NTuple::Item< double > | trk_offpi |
NTuple::Item< double > | trk_offpi |
NTuple::Item< double > | trk_overflow |
NTuple::Item< double > | trk_overflow |
NTuple::Array< double > | trk_p |
NTuple::Array< double > | trk_p |
NTuple::Item< double > | trk_path |
NTuple::Item< double > | trk_path |
NTuple::Item< double > | trk_ph |
NTuple::Item< double > | trk_ph |
NTuple::Item< double > | trk_phi |
NTuple::Item< double > | trk_phi |
NTuple::Item< double > | trk_quality |
NTuple::Item< double > | trk_quality |
NTuple::Item< double > | trk_raw |
NTuple::Item< double > | trk_raw |
NTuple::Item< double > | trk_readout |
NTuple::Item< double > | trk_readout |
NTuple::Item< double > | trk_run |
NTuple::Item< double > | trk_run |
NTuple::Item< double > | trk_sige |
NTuple::Item< double > | trk_sige |
NTuple::Item< double > | trk_sigk |
NTuple::Item< double > | trk_sigk |
NTuple::Item< double > | trk_sigmu |
NTuple::Item< double > | trk_sigmu |
NTuple::Item< double > | trk_sigp |
NTuple::Item< double > | trk_sigp |
NTuple::Item< double > | trk_sigpi |
NTuple::Item< double > | trk_sigpi |
NTuple::Item< double > | trk_t0 |
NTuple::Item< double > | trk_t0 |
NTuple::Item< double > | trk_texpe |
NTuple::Item< double > | trk_texpe |
NTuple::Item< double > | trk_texpk |
NTuple::Item< double > | trk_texpk |
NTuple::Item< double > | trk_texpmu |
NTuple::Item< double > | trk_texpmu |
NTuple::Item< double > | trk_texpp |
NTuple::Item< double > | trk_texpp |
NTuple::Item< double > | trk_texppi |
NTuple::Item< double > | trk_texppi |
NTuple::Item< double > | trk_tof |
NTuple::Item< double > | trk_tof |
NTuple::Item< double > | trk_tofid |
NTuple::Item< double > | trk_tofid |
NTuple::Item< double > | trk_toftrackid |
NTuple::Item< double > | trk_toftrackid |
NTuple::Item< double > | trk_trackid |
NTuple::Item< double > | trk_trackid |
NTuple::Tuple *& | trk_tuple |
NTuple::Tuple *& | trk_tuple |
NTuple::Item< double > | trk_zrhit |
NTuple::Item< double > | trk_zrhit |
|
00005 :trk_tuple(trk),cbtrk_tuple(cbtrk),cetrk_tuple(cetrk) { 00006 00007 if(!trk_tuple) { 00008 std::cerr<<" Error: invalid pionter in TofCheckData(NTuple::Tuple*) for trk_tple"<<std::endl; 00009 } 00010 else{ 00011 trk_tuple->addItem("run", trk_run ); 00012 trk_tuple->addItem("event", trk_event ); 00013 trk_tuple->addItem("toftrackid", trk_toftrackid ); 00014 trk_tuple->addItem("trackid", trk_trackid ); 00015 trk_tuple->addItem("charge", trk_charge ); 00016 trk_tuple->addItem("p", 5, trk_p ); 00017 trk_tuple->addItem("tofid", trk_tofid ); 00018 trk_tuple->addItem("raw", trk_raw ); 00019 trk_tuple->addItem("readout", trk_readout ); 00020 trk_tuple->addItem("counter", trk_counter ); 00021 trk_tuple->addItem("cluster", trk_cluster ); 00022 trk_tuple->addItem("barrel", trk_barrel ); 00023 trk_tuple->addItem("east", trk_east ); 00024 trk_tuple->addItem("layer", trk_layer ); 00025 trk_tuple->addItem("over", trk_overflow ); 00026 trk_tuple->addItem("cluster", trk_cluster ); 00027 trk_tuple->addItem("multihit", trk_multihit ); 00028 trk_tuple->addItem("ncounter", trk_ncounter ); 00029 trk_tuple->addItem("neast", trk_neast ); 00030 trk_tuple->addItem("nwest", trk_nwest ); 00031 trk_tuple->addItem("path", trk_path ); 00032 trk_tuple->addItem("zrhit", trk_zrhit ); 00033 trk_tuple->addItem("ph", trk_ph ); 00034 trk_tuple->addItem("tof", trk_tof ); 00035 trk_tuple->addItem("errtof", trk_errtof ); 00036 trk_tuple->addItem("beta", trk_beta ); 00037 trk_tuple->addItem("texpe", trk_texpe ); 00038 trk_tuple->addItem("texpmu", trk_texpmu ); 00039 trk_tuple->addItem("texppi", trk_texppi ); 00040 trk_tuple->addItem("texpk", trk_texpk ); 00041 trk_tuple->addItem("texpp", trk_texpp ); 00042 trk_tuple->addItem("offe", trk_offe ); 00043 trk_tuple->addItem("offmu", trk_offmu ); 00044 trk_tuple->addItem("offpi", trk_offpi ); 00045 trk_tuple->addItem("offk", trk_offk ); 00046 trk_tuple->addItem("offp", trk_offp ); 00047 trk_tuple->addItem("sige", trk_sige ); 00048 trk_tuple->addItem("sigmu", trk_sigmu ); 00049 trk_tuple->addItem("sigpi", trk_sigpi ); 00050 trk_tuple->addItem("sigk", trk_sigk ); 00051 trk_tuple->addItem("sigp", trk_sigp ); 00052 trk_tuple->addItem("qual", trk_quality ); 00053 trk_tuple->addItem("t0", trk_t0 ); 00054 trk_tuple->addItem("errt0", trk_errt0 ); 00055 trk_tuple->addItem("errz", trk_errz ); 00056 trk_tuple->addItem("phi", trk_phi ); 00057 trk_tuple->addItem("errphi", trk_errphi ); 00058 trk_tuple->addItem("e", trk_energy ); 00059 trk_tuple->addItem("erre", trk_errenergy ); 00060 } 00061 00062 if(!cbtrk_tuple) { 00063 std::cerr<<" Error: invalid pionter in TofCheckData(NTuple::Tuple*) for cbtrk_tple"<<std::endl; 00064 } 00065 else{ 00066 cbtrk_tuple->addItem("run", cbtrk_run ); 00067 cbtrk_tuple->addItem("event", cbtrk_event ); 00068 cbtrk_tuple->addItem("tofid", cbtrk_tofid ); 00069 cbtrk_tuple->addItem("qual", cbtrk_qual ); 00070 cbtrk_tuple->addItem("texp", cbtrk_texp ); 00071 cbtrk_tuple->addItem("tdc1", cbtrk_tdc1 ); 00072 cbtrk_tuple->addItem("tdc2", cbtrk_tdc2 ); 00073 cbtrk_tuple->addItem("adc1", cbtrk_adc1 ); 00074 cbtrk_tuple->addItem("adc2", cbtrk_adc2 ); 00075 cbtrk_tuple->addItem("zhit", cbtrk_zhit ); 00076 cbtrk_tuple->addItem("dzhit", cbtrk_dzhit ); 00077 cbtrk_tuple->addItem("sint", cbtrk_sintheta ); 00078 cbtrk_tuple->addItem("p", cbtrk_p ); 00079 cbtrk_tuple->addItem("q", cbtrk_q ); 00080 cbtrk_tuple->addItem("path", cbtrk_path ); 00081 } 00082 00083 if(!cetrk_tuple) { 00084 std::cerr<<" Error: invalid pionter in TofCheckData(NTuple::Tuple*) for cetrk_tple"<<std::endl; 00085 } 00086 else{ 00087 cetrk_tuple->addItem("run", cetrk_run ); 00088 cetrk_tuple->addItem("event", cetrk_event ); 00089 cetrk_tuple->addItem("tofid", cetrk_tofid ); 00090 cetrk_tuple->addItem("qual", cetrk_qual ); 00091 cetrk_tuple->addItem("texp", cetrk_texp ); 00092 cetrk_tuple->addItem("tdc", cetrk_tdc ); 00093 cetrk_tuple->addItem("adc", cetrk_adc ); 00094 cetrk_tuple->addItem("rhit", cetrk_rhit ); 00095 cetrk_tuple->addItem("drhit", cetrk_drhit ); 00096 // cetrk_tuple->addItem("sint", cetrk_sintheta ); 00097 cetrk_tuple->addItem("p", cetrk_p ); 00098 cetrk_tuple->addItem("q", cetrk_q ); 00099 cetrk_tuple->addItem("path", cetrk_path ); 00100 } 00101 }
|
|
00014 {}
|
|
|
|
00014 {}
|
|
|
|
|
|
|
|
00212 { 00213 00214 cetrk_run = eventHeader.runNumber(); 00215 cetrk_event = eventHeader.eventNumber(); 00216 cetrk_tofid = recETof->mod(); 00217 cetrk_qual = recETof->qual(); 00218 cetrk_texp = recETof->tpred(1); 00219 cetrk_tdc = recETof->tdc(); 00220 cetrk_adc = recETof->adc(); 00221 cetrk_rhit = recETof->rHit(); 00222 cetrk_drhit = recETof->drHit(); 00223 // cetrk_sintheta = recETof->sinTheta(); 00224 cetrk_p = recETof->p(); 00225 cetrk_q = recETof->Q(); 00226 cetrk_path = recETof->path(); 00227 cetrk_tuple->write(); 00228 return; 00229 }
|
|
00190 { 00191 00192 cbtrk_run = eventHeader.runNumber(); 00193 cbtrk_event = eventHeader.eventNumber(); 00194 cbtrk_tofid = recBTof->mod(); 00195 cbtrk_qual = recBTof->qual(); 00196 cbtrk_texp = recBTof->tpred(1); 00197 cbtrk_tdc1 = recBTof->tdc1(); 00198 cbtrk_tdc2 = recBTof->tdc2(); 00199 cbtrk_adc1 = recBTof->adc1(); 00200 cbtrk_adc2 = recBTof->adc2(); 00201 cbtrk_zhit = recBTof->zHit(); 00202 cbtrk_dzhit = recBTof->dzHit(); 00203 cbtrk_sintheta = recBTof->sinTheta(); 00204 cbtrk_p = recBTof->p(); 00205 cbtrk_q = recBTof->Q(); 00206 cbtrk_path = recBTof->path(); 00207 cbtrk_tuple->write(); 00208 return; 00209 }
|
|
00104 { 00105 00106 int charge = 0; 00107 double p[5]= {0.}; 00108 if( fillTrk ) { 00109 kalTrack->setPidType( RecMdcKalTrack::electron ); 00110 double kappa = kalTrack->kappa(); 00111 if( kappa>0 ) { charge = 1; } 00112 else { charge = -1; } 00113 if( abs(kappa)<1.0e-6 ) { kappa = 1.0e-6; } 00114 p[0] = abs(sqrt( 1.0 + kalTrack->tanl()*kalTrack->tanl() ) / kappa); 00115 kalTrack->setPidType( RecMdcKalTrack::muon ); 00116 kappa = kalTrack->kappa(); 00117 if( abs(kappa)<1.0e-6 ) { kappa = 1.0e-6; } 00118 p[1] = abs(sqrt( 1.0 + kalTrack->tanl()*kalTrack->tanl() ) / kappa ); 00119 kalTrack->setPidType( RecMdcKalTrack::pion ); 00120 kappa = kalTrack->kappa(); 00121 if( abs(kappa)<1.0e-6 ) { kappa = 1.0e-6; } 00122 p[2] = abs(sqrt( 1.0 + kalTrack->tanl()*kalTrack->tanl() ) / kappa ); 00123 kalTrack->setPidType( RecMdcKalTrack::kaon ); 00124 kappa = kalTrack->kappa(); 00125 if( abs(kappa)<1.0e-6 ) { kappa = 1.0e-6; } 00126 p[3] = abs(sqrt( 1.0 + kalTrack->tanl()*kalTrack->tanl() ) / kappa ); 00127 kalTrack->setPidType( RecMdcKalTrack::proton ); 00128 kappa = kalTrack->kappa(); 00129 if( abs(kappa)<1.0e-6 ) { kappa = 1.0e-6; } 00130 p[4] = abs(sqrt( 1.0 + kalTrack->tanl()*kalTrack->tanl() ) / kappa ); 00131 } 00132 trk_run = eventHeader.runNumber(); 00133 trk_event = eventHeader.eventNumber(); 00134 trk_toftrackid = recTof->tofTrackID(); 00135 trk_trackid = recTof->trackID(); 00136 trk_charge = charge; 00137 for( unsigned int i=0; i<5; i++ ) { 00138 trk_p[i] = p[i]; 00139 } 00140 trk_tofid = recTof->tofID(); 00141 TofHitStatus* hitStatus = new TofHitStatus; 00142 hitStatus->setStatus( recTof->status() ); 00143 trk_raw = hitStatus->is_raw(); 00144 trk_readout = hitStatus->is_readout(); 00145 trk_counter = hitStatus->is_counter(); 00146 trk_cluster = hitStatus->is_cluster(); 00147 trk_barrel = hitStatus->is_barrel(); 00148 trk_east = hitStatus->is_east(); 00149 trk_layer = hitStatus->layer(); 00150 trk_overflow = hitStatus->is_overflow(); 00151 trk_multihit = hitStatus->is_multihit(); 00152 trk_ncounter = hitStatus->ncounter(); 00153 trk_neast = hitStatus->neast(); 00154 trk_nwest = hitStatus->nwest(); 00155 delete hitStatus; 00156 trk_path = recTof->path(); 00157 trk_zrhit = recTof->zrhit(); 00158 trk_ph = recTof->ph(); 00159 trk_tof = recTof->tof(); 00160 trk_errtof = recTof->errtof(); 00161 trk_beta = recTof->beta(); 00162 trk_texpe = recTof->texpElectron(); 00163 trk_texpmu = recTof->texpMuon(); 00164 trk_texppi = recTof->texpPion(); 00165 trk_texpk = recTof->texpKaon(); 00166 trk_texpp = recTof->texpProton(); 00167 trk_offe = recTof->toffsetElectron(); 00168 trk_offmu = recTof->toffsetMuon(); 00169 trk_offpi = recTof->toffsetPion(); 00170 trk_offk = recTof->toffsetKaon(); 00171 trk_offp = recTof->toffsetProton(); 00172 trk_sige = recTof->sigmaElectron(); 00173 trk_sigmu = recTof->sigmaMuon(); 00174 trk_sigpi = recTof->sigmaPion(); 00175 trk_sigk = recTof->sigmaKaon(); 00176 trk_sigp = recTof->sigmaProton(); 00177 trk_quality = recTof->quality(); 00178 trk_t0 = recTof->t0(); 00179 trk_errt0 = recTof->errt0(); 00180 trk_errz = recTof->errz(); 00181 trk_phi = recTof->phi(); 00182 trk_errphi = recTof->errphi(); 00183 trk_energy = recTof->energy(); 00184 trk_errenergy = recTof->errenergy(); 00185 trk_tuple->write(); 00186 return; 00187 }
|
|
|
|
|
|
|
|
00252 { 00253 RecETofCalHitCol::iterator iter_etof = recETofCalHitCol.begin(); 00254 for( ; iter_etof!=recETofCalHitCol.end(); iter_etof++ ) { 00255 Fill( eventHeader, *iter_etof ); 00256 } 00257 return; 00258 }
|
|
00244 { 00245 RecBTofCalHitCol::iterator iter_btof = recBTofCalHitCol.begin(); 00246 for( ; iter_btof!=recBTofCalHitCol.end(); iter_btof++ ) { 00247 Fill( eventHeader, *iter_btof ); 00248 } 00249 return; 00250 }
|
|
00232 { 00233 RecTofTrackCol::iterator iter_tof = recTofTrackCol.begin(); 00234 for( ; iter_tof!=recTofTrackCol.end(); iter_tof++ ) { 00235 RecMdcKalTrackCol::iterator iter_kal = kalTrackCol.begin(); 00236 for( ; iter_kal!=kalTrackCol.end(); iter_kal++ ) { 00237 if( (*iter_tof)->trackID() == (*iter_kal)->trackId() ) break; 00238 } 00239 Fill( eventHeader, *iter_tof, *iter_kal, iter_kal!=kalTrackCol.end() ); 00240 } 00241 return; 00242 }
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|