00001 #include "StHbtMaker/Infrastructure/StHbtTrack.hh"
00002 #include "StHbtMaker/Cut/franksTrackCutMonitor.h"
00003 #include <cstdio>
00004 #include <string>
00005 #include "StLorentzVector.hh"
00006
00007 #ifdef __ROOT__
00008 ClassImp(franksTrackCutMonitor)
00009 #endif
00010
00012 franksTrackCutMonitor::franksTrackCutMonitor(const char* name){
00013 string s("franksTrackCutMonitor");
00014 string n(name);
00015 mDCAxy= new StHbt1DHisto( (s+n+"mDCAxy").c_str(),"Momentum (GeV/c) vs Energy loss (a.u.)",1000,0,5.);
00016 mDCAxyGlobal= new StHbt1DHisto( (s+n+"mDCAxyGlobal").c_str(),"Momentum (GeV/c) vs Energy loss (a.u.)",1000,0.,5.);
00017 mPvsDedx= new StHbt2DHisto( (s+n+"mPvsDedx").c_str(),"Momentum (GeV/c) vs Energy loss (a.u.)",100,-3.,3.,50,0.,5e-6);
00018 }
00019
00021 franksTrackCutMonitor::franksTrackCutMonitor( const franksTrackCutMonitor& cutMoni) {
00022 mDCAxy =new StHbt1DHisto(*(cutMoni.mDCAxy));
00023 mDCAxyGlobal =new StHbt1DHisto(*(cutMoni.mDCAxyGlobal));
00024 mPvsDedx =new StHbt2DHisto(*(cutMoni.mPvsDedx));
00025 }
00027 franksTrackCutMonitor::~franksTrackCutMonitor(){
00028 delete mDCAxy;
00029 delete mDCAxyGlobal;
00030 delete mPvsDedx ;
00031 }
00033 void franksTrackCutMonitor::Fill(const StHbtTrack* track){
00034 mDCAxy->Fill( track->DCAxy(), 1.);
00035 mDCAxyGlobal->Fill( track->DCAxyGlobal(), 1.);
00036 mPvsDedx->Fill( abs(track->P())*track->Charge(), track->dEdx(), 1.);
00037 }
00038
00039