--- PamelaLevel2/doc/examples/My-Histos.cpp 2007/01/03 13:28:49 1.2 +++ PamelaLevel2/doc/examples/My-Histos.cpp 2007/02/16 18:38:13 1.4 @@ -67,44 +67,45 @@ //=============================================================== // Get ToF dE/dx //=============================================================== -Float_t GetdEdx( PamTrack *trk ){ - Float_t dedx = 0.; - Int_t nval=0; - Bool_t ISNULL = false; - for (Int_t i=0; inpmtadc; i++){ - if(trk->dedx[i] == 0)ISNULL=true; - dedx += (trk->dedx).At(i)*(Int_t)(!ISNULL); - nval += (Int_t)(!ISNULL); - }; - // - if(nval)dedx=dedx/nval; -// cout <<" -- dedx "<GetToFTrack()->npmtadc; i++){ +// if(trk->GetToFTrack()->dedx[i] == 0)ISNULL=true; +// dedx += (trk->GetToFTrack()->dedx).At(i)*(Int_t)(!ISNULL); +// nval += (Int_t)(!ISNULL); +// }; +// // +// if(nval)dedx=dedx/nval; +// // cout <<" -- dedx "<1)beta=1; +// float f0 = p0[0]/beta+p1[0]; +// float f1 = p0[1]/beta+p1[1]; +// float z0 = zz[0]; +// float z1 = zz[1]; +// float aa = (z0-z1)/(f0-f1); +// float bb = -aa*f0+z0; +// if( (bb+aa*dedx)==0 )return 0; +// return sqrt(bb+aa*dedx); - int nspec=2; - float p0[]={0.904,3.373}; - float p1[]={0.295,2.756}; - float zz[]={1.,4.}; - - if(beta>1)beta=1; - float f0 = p0[0]/beta+p1[0]; - float f1 = p0[1]/beta+p1[1]; - float z0 = zz[0]; - float z1 = zz[1]; - float aa = (z0-z1)/(f0-f1); - float bb = -aa*f0+z0; - if( (bb+aa*dedx)==0 )return 0; - return sqrt(bb+aa*dedx); - -} +// } //=============================================================== // Create histograms //=============================================================== -void CreateHistos( TFile* outf ){ +void CreateHistos( PamLevel2* event, TFile* outf ){ gROOT->cd();//create histos in memory @@ -209,7 +210,7 @@ tot++; - if( event->GetNTracks()==0 ) return; + if( event->GetTrkLevel2()->GetNTracks()==0 ) return; PamTrack *track = event->GetTrack(0); //------------------------------ // track selection @@ -227,20 +228,20 @@ //------------------- // ToF variables //------------------- - beta = track->beta[12]; + beta = track->GetToFTrack()->beta[12]; // dedxtof = GetdEdx(track); //------------------- // tracker variables //------------------- - dedxtrk = track->GetDEDX()/1.3; //<<GetRigidity(); - deflection = track->GetDeflection(); - chi2 = track->chi2; - errdef = sqrt(track->coval[4][4]); + dedxtrk = track->GetTrkTrack()->GetDEDX()/1.3; //<<GetTrkTrack()->GetRigidity(); + deflection = track->GetTrkTrack()->GetDeflection(); + chi2 = track->GetTrkTrack()->chi2; + errdef = sqrt(track->GetTrkTrack()->coval[4][4]); for(Int_t ip=0; ip<6; ip++){ - if(track->XGood(ip))errx[ip]=track->resx[ip]; - if(track->YGood(ip))erry[ip]=track->resy[ip]; + if(track->GetTrkTrack()->XGood(ip))errx[ip]=track->GetTrkTrack()->resx[ip]; + if(track->GetTrkTrack()->YGood(ip))erry[ip]=track->GetTrkTrack()->resy[ip]; } //------------------- @@ -294,7 +295,7 @@ //------------------------ // 6-planes lever-arm //------------------------ - if( !(track->XGood(0) && track->XGood(5)) )return; + if( !(track->GetTrkTrack()->XGood(0) && track->GetTrkTrack()->XGood(5)) )return; sel[3]++; for(Int_t ip=0; ip<6; ip++)herrx[ip]->Fill(errx[ip]); @@ -312,7 +313,7 @@ hdef->Fill(deflection); } - delete track; +// delete track; }