diff --git a/reco/L1/CbmL1ReadEvent.cxx b/reco/L1/CbmL1ReadEvent.cxx index fdd5f17244bca771ad1fb52c1eec569ab4f40259..04ed4ea15da821acc5b6607b69cbc9fa17f8649c 100644 --- a/reco/L1/CbmL1ReadEvent.cxx +++ b/reco/L1/CbmL1ReadEvent.cxx @@ -694,6 +694,10 @@ void CbmL1::ReadEvent(CbmEvent* event) const L1Station& st = fpAlgo->GetParameters()->GetStation(th.iStation); th.u = th.x * st.frontInfo.cos_phi[0] + th.y * st.frontInfo.sin_phi[0]; th.v = th.x * st.backInfo.cos_phi[0] + th.y * st.backInfo.sin_phi[0]; + + // Get time + th.time = h->GetTime(); // currently ignored by the tracking + th.dt = h->GetTimeError(); // currently ignored by the tracking } th.Det = 0; th.iMC = fPerformance ? MatchHitWithMc<L1DetectorID::kMvd>(hitIndex) : -1; diff --git a/reco/L1/L1Algo/L1CaTrackFinder.cxx b/reco/L1/L1Algo/L1CaTrackFinder.cxx index eba4866229617144c73bea1cceefb219594d0d03..113a0cc7e468c4a802bdd8240d1bbaf070af97f5 100644 --- a/reco/L1/L1Algo/L1CaTrackFinder.cxx +++ b/reco/L1/L1Algo/L1CaTrackFinder.cxx @@ -66,7 +66,7 @@ void L1Algo::CaTrackFinder() for (int iStream = 0; iStream < nDataStreams; ++iStream) { - fscal maxTimeBeforeHit = std::numeric_limits<fscal>::min(); + fscal maxTimeBeforeHit = std::numeric_limits<fscal>::lowest(); int nStreamHits = fInputData.GetStreamNhits(iStream); @@ -92,6 +92,11 @@ void L1Algo::CaTrackFinder() info.fEventTimeMin = h.t - dt - timeOfFlightMax; info.fEventTimeMax = h.t + dt - timeOfFlightMin; + if (!st.timeInfo) { + info.fEventTimeMin = std::numeric_limits<fscal>::lowest(); + info.fEventTimeMax = std::numeric_limits<fscal>::max(); + } + if (maxTimeBeforeHit < info.fEventTimeMax) { maxTimeBeforeHit = info.fEventTimeMax; } info.fMaxTimeBeforeHit = maxTimeBeforeHit; diff --git a/reco/L1/L1Algo/L1CaTrackFinderSlice.cxx b/reco/L1/L1Algo/L1CaTrackFinderSlice.cxx index 360cb31b1fc80f6fb7d5cefecd67bcbaf58944d8..9f211669b3f1edea969a944c682a1b84c92b7c82 100644 --- a/reco/L1/L1Algo/L1CaTrackFinderSlice.cxx +++ b/reco/L1/L1Algo/L1CaTrackFinderSlice.cxx @@ -271,7 +271,7 @@ inline void L1Algo::findSingletsStep1( /// input 1st stage of singlet search fvec txErr2 = fMaxSlopePV * fMaxSlopePV / fvec(9.); fvec qpErr2 = fMaxInvMom * fMaxInvMom / fvec(9.); - T.ResetErrors(1., 1., txErr2, txErr2, qpErr2, timeEr2, 1.e2); + T.ResetErrors(1., 1., txErr2, txErr2, qpErr2, (stal.timeInfo ? timeEr2 : 1.e6), 1.e2); T.chi2 = 0.; T.NDF = (fpCurrentIteration->GetPrimaryFlag()) ? fvec(2.) : fvec(0.);