@@ -191,6 +191,9 @@ std::vector<o2::its::TrackingParameters> TrackerDPL::createTrackingParamsFromCon
191191 if (paramConfig.contains (" MinPt" )) {
192192 params.MinPt = paramConfig[" MinPt" ].get <std::vector<float >>();
193193 }
194+ if (paramConfig.contains (" AddTimeError" )) {
195+ params.AddTimeError = paramConfig[" AddTimeError" ].get <std::vector<UInt_t>>();
196+ }
194197
195198 if (paramConfig.contains (" Diamond" ) && paramConfig[" Diamond" ].is_array () && paramConfig[" Diamond" ].size () == 3 ) {
196199 params.Diamond [0 ] = paramConfig[" Diamond" ][0 ].get <float >();
@@ -207,6 +210,19 @@ std::vector<o2::its::TrackingParameters> TrackerDPL::createTrackingParamsFromCon
207210 params.CorrType = static_cast <o2::base::PropagatorImpl<float >::MatCorrType>(corrTypeInt);
208211 }
209212
213+ const auto nLayers = static_cast <size_t >(params.NLayers );
214+ LOG_IF (fatal, params.LayerZ .size () != nLayers) << " Invalid ALICE3 TRK tracking parameter LayerZ: expected " << nLayers << " entries, got " << params.LayerZ .size ();
215+ LOG_IF (fatal, params.LayerRadii .size () != nLayers) << " Invalid ALICE3 TRK tracking parameter LayerRadii: expected " << nLayers << " entries, got " << params.LayerRadii .size ();
216+ LOG_IF (fatal, params.LayerxX0 .size () != nLayers) << " Invalid ALICE3 TRK tracking parameter LayerxX0: expected " << nLayers << " entries, got " << params.LayerxX0 .size ();
217+ LOG_IF (fatal, params.LayerResolution .size () != nLayers) << " Invalid ALICE3 TRK tracking parameter LayerResolution: expected " << nLayers << " entries, got " << params.LayerResolution .size ();
218+ LOG_IF (fatal, params.SystErrorY2 .size () != nLayers) << " Invalid ALICE3 TRK tracking parameter SystErrorY2: expected " << nLayers << " entries, got " << params.SystErrorY2 .size ();
219+ LOG_IF (fatal, params.SystErrorZ2 .size () != nLayers) << " Invalid ALICE3 TRK tracking parameter SystErrorZ2: expected " << nLayers << " entries, got " << params.SystErrorZ2 .size ();
220+ LOG_IF (fatal, params.AddTimeError .size () != nLayers) << " Invalid ALICE3 TRK tracking parameter AddTimeError: expected " << nLayers << " entries, got " << params.AddTimeError .size ();
221+
222+ LOG_IF (fatal, params.MinTrackLength > params.NLayers ) << " Invalid ALICE3 TRK tracking parameter MinTrackLength: expected <= NLayers (" << params.NLayers << " ), got " << params.MinTrackLength ;
223+ const auto minPtSize = static_cast <size_t >(params.NLayers - params.MinTrackLength + 1 );
224+ LOG_IF (fatal, params.MinPt .size () != minPtSize) << " Invalid ALICE3 TRK tracking parameter MinPt: expected " << minPtSize << " entries, got " << params.MinPt .size ();
225+
210226 trackingParams.push_back (params);
211227 }
212228 };
0 commit comments