@@ -50,16 +50,17 @@ template <typename functor_t>
5050struct surface_getter {
5151
5252 // / Call operator that forwards the functor to all contained surfaces
53- template <typename accel_group_t , typename accel_index_t , typename ... Args>
54- DETRAY_HOST_DEVICE inline void operator ()(const accel_group_t &group,
53+ template <concepts::accelerator_collection accel_coll_t ,
54+ typename accel_index_t , typename ... Args>
55+ DETRAY_HOST_DEVICE inline void operator ()(const accel_coll_t &coll,
5556 const accel_index_t index,
5657 Args &&... args) const {
5758
58- using accel_type = typename accel_group_t ::value_type;
59+ using accel_type = typename accel_coll_t ::value_type;
5960
6061 if constexpr (concepts::surface_accelerator<accel_type>) {
6162 // Run over the surfaces in a single acceleration data structure
62- for (const auto &sf : group [index].all ()) {
63+ for (const auto &sf : coll [index].all ()) {
6364 functor_t {}(sf, std::forward<Args>(args)...);
6465 }
6566 }
@@ -68,16 +69,17 @@ struct surface_getter {
6869
6970// / A functor to access the daughter volumes of a volume
7071template <typename functor_t >
71- struct daughter_volume_getter {
72+ struct volume_getter {
7273
7374 // / Call operator that forwards the functor call to all contained daughter
7475 // / volumes
75- template <typename accel_group_t , typename accel_index_t , typename ... Args>
76- DETRAY_HOST_DEVICE inline void operator ()(const accel_group_t &group,
77- const accel_index_t index,
78- Args &&... args) const {
76+ template <concepts::accelerator_collection accel_coll_t ,
77+ typename accel_index_t , typename ... Args>
78+ DETRAY_HOST_DEVICE inline void operator ()(const accel_coll_t &,
79+ const accel_index_t ,
80+ Args &&...) const {
7981
80- using accel_type = typename accel_group_t ::value_type;
82+ using accel_type = typename accel_coll_t ::value_type;
8183
8284 if constexpr (concepts::volume_accelerator<accel_type>) {
8385 // Run over all the daughter volumes
@@ -92,17 +94,17 @@ struct neighborhood_getter {
9294
9395 // / Call operator that forwards the neighborhood search call in a volume
9496 // / to a surface finder data structure
95- template <typename accel_group_t , typename accel_index_t ,
96- typename detector_t , typename track_t , typename config_t ,
97- typename ... Args>
97+ template <concepts::accelerator_collection accel_coll_t ,
98+ typename accel_index_t , typename detector_t , typename track_t ,
99+ typename config_t , typename ... Args>
98100 DETRAY_HOST_DEVICE inline void operator ()(
99- const accel_group_t &group , const accel_index_t index,
101+ const accel_coll_t &coll , const accel_index_t index,
100102 const detector_t &det, const typename detector_t ::volume_type &volume,
101103 const track_t &track, const config_t &cfg,
102104 const typename detector_t ::geometry_context &ctx,
103105 Args &&... args) const {
104106
105- decltype (auto ) accel = group [index];
107+ decltype (auto ) accel = coll [index];
106108
107109 // Run over the surfaces in a single acceleration data structure
108110 for (const auto &sf : accel.search (det, volume, track, cfg, ctx)) {
@@ -113,10 +115,11 @@ struct neighborhood_getter {
113115
114116// / Query the maximal number of candidates from the acceleration
115117struct n_candidates_getter {
116- template <typename accel_group_t , typename accel_index_t >
117- DETRAY_HOST_DEVICE inline auto operator ()(const accel_group_t &group,
118+ template <concepts::accelerator_collection accel_coll_t ,
119+ typename accel_index_t >
120+ DETRAY_HOST_DEVICE inline auto operator ()(const accel_coll_t &coll,
118121 const accel_index_t index) const {
119- return group [index].n_max_candidates ();
122+ return coll [index].n_max_candidates ();
120123 }
121124};
122125
0 commit comments