diff --git a/src/THcCherenkov.cxx b/src/THcCherenkov.cxx index c2e9bd5205bec8cf3b7f3c99d60dea41c7a3141f..06c9768214c4156e699107129be424dc340ba2e4 100644 --- a/src/THcCherenkov.cxx +++ b/src/THcCherenkov.cxx @@ -195,6 +195,8 @@ Int_t THcCherenkov::ReadDatabase( const TDatime& date ) {"_beta_max", &fBetaMax, kDouble}, {"_enorm_min", &fENormMin, kDouble}, {"_enorm_max", &fENormMax, kDouble}, + {"_dp_min", &fDpMin, kDouble}, + {"_dp_max", &fDpMax, kDouble}, {"_mirror_zpos", &fMirrorZPos, kDouble}, {"_npe_thresh", &fNpeThresh, kDouble}, {"_debug_adc", &fDebugAdc, kInt, 0, 1}, @@ -429,6 +431,7 @@ Int_t THcCherenkov::FineProcess( TClonesArray& tracks ) Double_t trackBeta = track->GetBeta(); Double_t trackEnergy = track->GetEnergy(); Double_t trackMom = track->GetP(); + Double_t trackDp = track->GetDp(); Double_t trackENorm = trackEnergy/trackMom; Double_t trackXfp = track->GetX(); Double_t trackYfp = track->GetY(); @@ -438,8 +441,9 @@ Int_t THcCherenkov::FineProcess( TClonesArray& tracks ) Bool_t trackRedChi2Cut = trackRedChi2 > fRedChi2Min && trackRedChi2 < fRedChi2Max; Bool_t trackBetaCut = trackBeta > fBetaMin && trackBeta < fBetaMax; Bool_t trackENormCut = trackENorm > fENormMin && trackENorm < fENormMax; + Bool_t trackDpCut = trackDp > fDpMin && trackDp < fDpMax; - if (trackRedChi2Cut && trackBetaCut && trackENormCut) { + if (trackRedChi2Cut && trackBetaCut && trackENormCut && trackDpCut) { // Project the track to the Cherenkov mirror planes Double_t xAtCher = trackXfp + trackTheta * fMirrorZPos; diff --git a/src/THcCherenkov.h b/src/THcCherenkov.h index 80d18e1fd11201c6984ac6230f83f89ffd6020f9..bb7145b16beb2cc12de3e653a9fbeb8f64441523 100644 --- a/src/THcCherenkov.h +++ b/src/THcCherenkov.h @@ -74,6 +74,8 @@ class THcCherenkov : public THaNonTrackingDetector, public THcHitList { Double_t fBetaMax; Double_t fENormMin; Double_t fENormMax; + Double_t fDpMin; + Double_t fDpMax; Double_t fMirrorZPos; Double_t fNpeThresh; Double_t fAdcTimeWindowMin;