diff --git a/examples/run/alpaka/CMakeLists.txt b/examples/run/alpaka/CMakeLists.txt index 9139a749a8..0a144e7c3d 100644 --- a/examples/run/alpaka/CMakeLists.txt +++ b/examples/run/alpaka/CMakeLists.txt @@ -16,11 +16,13 @@ if(alpaka_ACC_GPU_CUDA_ENABLE) traccc_add_executable( seeding_example_alpaka "seeding_example_alpaka.cpp" LINK_LIBRARIES vecmem::core vecmem::cuda traccc::io traccc::performance traccc::core traccc::device_common traccc::cuda traccc::alpaka alpaka::alpaka + detray::utils detray::io traccc::options ) else() traccc_add_executable( seeding_example_alpaka "seeding_example_alpaka.cpp" LINK_LIBRARIES vecmem::core traccc::io traccc::performance traccc::core traccc::device_common traccc::alpaka alpaka::alpaka + detray::utils detray::io traccc::options ) endif() diff --git a/examples/run/alpaka/seeding_example_alpaka.cpp b/examples/run/alpaka/seeding_example_alpaka.cpp index 95b8960b02..a0dc750c6a 100644 --- a/examples/run/alpaka/seeding_example_alpaka.cpp +++ b/examples/run/alpaka/seeding_example_alpaka.cpp @@ -10,7 +10,9 @@ #include "traccc/alpaka/utils/definitions.hpp" #include "traccc/efficiency/seeding_performance_writer.hpp" #include "traccc/io/read_geometry.hpp" +#include "traccc/io/read_measurements.hpp" #include "traccc/io/read_spacepoints.hpp" +#include "traccc/io/utils.hpp" #include "traccc/options/common_options.hpp" #include "traccc/options/detector_input_options.hpp" #include "traccc/options/handle_argument_errors.hpp" @@ -20,6 +22,15 @@ #include "traccc/seeding/seeding_algorithm.hpp" #include "traccc/seeding/track_params_estimation.hpp" +// Detray include(s). +#include "detray/core/detector.hpp" +#include "detray/core/detector_metadata.hpp" +#include "detray/detectors/bfield.hpp" +#include "detray/io/common/detector_reader.hpp" +#include "detray/propagator/navigator.hpp" +#include "detray/propagator/propagator.hpp" +#include "detray/propagator/rk_stepper.hpp" + // VecMem include(s). #ifdef ALPAKA_ACC_GPU_CUDA_ENABLED #include @@ -41,8 +52,27 @@ int seq_run(const traccc::seeding_input_config& /*i_cfg*/, const traccc::common_options& common_opts, const traccc::detector_input_options& det_opts, bool run_cpu) { - // Read the surface transforms - auto surface_transforms = traccc::io::read_geometry(det_opts.detector_file); + /// Type declarations + using host_detector_type = detray::detector<>; + + // Memory resource used by the EDM. + vecmem::host_memory_resource host_mr; + + // Read the detector + detray::io::detector_reader_config reader_cfg{}; + reader_cfg.add_file(traccc::io::data_directory() + det_opts.detector_file); + if (!det_opts.material_file.empty()) { + reader_cfg.add_file(traccc::io::data_directory() + + det_opts.material_file); + } + if (!det_opts.grid_file.empty()) { + reader_cfg.add_file(traccc::io::data_directory() + det_opts.grid_file); + } + auto [host_det, names] = + detray::io::read_detector(host_mr, reader_cfg); + + traccc::geometry surface_transforms = + traccc::io::alt_read_geometry(host_det); // Output stats uint64_t n_modules = 0; @@ -55,9 +85,6 @@ int seq_run(const traccc::seeding_input_config& /*i_cfg*/, traccc::spacepoint_grid_config grid_config(finder_config); traccc::seedfilter_config filter_config; - // Memory resources used by the application. - vecmem::host_memory_resource host_mr; - #ifdef ALPAKA_ACC_GPU_CUDA_ENABLED vecmem::cuda::copy copy; vecmem::cuda::device_memory_resource device_mr;