@@ -23,52 +23,52 @@ namespace o2::itsmft::tracking
2323
2424using o2::itsmft::IndexTableCoordType;
2525
26- IndexTableConfigError bindIndexTableConfiguration (o2::itsmft::IndexTableUtilsCore& staged ,
27- const DetectorParameters& params,
28- int activeSurfaceCount,
29- SurfaceKind kind,
30- gsl::span<const SurfaceChartRange> chartRanges) noexcept
26+ bool configureIndexTableUtils (o2::itsmft::IndexTableUtilsCore& destination ,
27+ const DetectorParameters& params,
28+ int activeSurfaceCount,
29+ SurfaceKind kind,
30+ gsl::span<const SurfaceChartRange> chartRanges) noexcept
3131{
3232 if (kind != SurfaceKind::Cylinder && kind != SurfaceKind::Disk) {
33- return IndexTableConfigError::InvalidSurfaceKind ;
33+ return false ;
3434 }
3535 if (!(activeSurfaceCount > 0 && activeSurfaceCount <= o2::itsmft::IndexTableUtilsCore::MaxLayers)) {
36- return IndexTableConfigError::InvalidActiveLayerCount ;
36+ return false ;
3737 }
3838 if (params.RowBins <= 0 ) {
39- return IndexTableConfigError::NonPositiveRowBins ;
39+ return false ;
4040 }
4141 if (params.ColBins <= 0 ) {
42- return IndexTableConfigError::NonPositiveColBins ;
42+ return false ;
4343 }
4444
4545 const std::uint64_t binCount = static_cast <std::uint64_t >(params.RowBins ) * static_cast <std::uint64_t >(params.ColBins );
4646 if (binCount > static_cast <std::uint64_t >(std::numeric_limits<int >::max ())) {
47- return IndexTableConfigError::RowColBinCountExceedsIndexRange ;
47+ return false ;
4848 }
4949
5050 if (chartRanges.size () < static_cast <std::size_t >(activeSurfaceCount)) {
51- return IndexTableConfigError::InsufficientChartRanges ;
51+ return false ;
5252 }
5353 std::array<float , o2::itsmft::IndexTableUtilsCore::MaxLayers> colMin{};
5454 std::array<float , o2::itsmft::IndexTableUtilsCore::MaxLayers> colMax{};
5555 for (int iLayer = 0 ; iLayer < activeSurfaceCount; ++iLayer) {
5656 if (!o2::gpu::GPUCommonMath::Finite (chartRanges[iLayer].min ) ||
5757 !o2::gpu::GPUCommonMath::Finite (chartRanges[iLayer].max )) {
58- return IndexTableConfigError::NonFiniteChartRange ;
58+ return false ;
5959 }
6060 if (!(chartRanges[iLayer].max > chartRanges[iLayer].min )) {
61- return IndexTableConfigError::InvalidChartRange ;
61+ return false ;
6262 }
6363 colMin[iLayer] = chartRanges[iLayer].min ;
6464 colMax[iLayer] = chartRanges[iLayer].max ;
6565 }
6666
67- staged .setIndexTableParams (kind == SurfaceKind::Disk ? IndexTableCoordType::PhiR : IndexTableCoordType::PhiZ,
68- params.RowBins , params.ColBins , 0 .f , o2::constants::math::TwoPI,
69- gsl::span<const float >{colMin.data (), static_cast <std::size_t >(activeSurfaceCount)},
70- gsl::span<const float >{colMax.data (), static_cast <std::size_t >(activeSurfaceCount)});
71- return IndexTableConfigError::None ;
67+ destination .setIndexTableParams (kind == SurfaceKind::Disk ? IndexTableCoordType::PhiR : IndexTableCoordType::PhiZ,
68+ params.RowBins , params.ColBins , 0 .f , o2::constants::math::TwoPI,
69+ gsl::span<const float >{colMin.data (), static_cast <std::size_t >(activeSurfaceCount)},
70+ gsl::span<const float >{colMax.data (), static_cast <std::size_t >(activeSurfaceCount)});
71+ return true ;
7272}
7373
7474} // namespace o2::itsmft::tracking
0 commit comments