ACTS
Experiment-independent tracking
Loading...
Searching...
No Matches
detray::detail::surface_checker Struct Reference

A functor that checks the surface descriptor and correct volume index in every acceleration data structure for a given volume. More...

#include <detray/utils/consistency_checker.hpp>

Public Member Functions

template<typename sf_descr_t, typename sf_source_descr_t>
void operator() (const sf_descr_t &ref_descr, const sf_source_descr_t &check_descr, bool &success) const
 Test whether a given surface check_desc is properly registered at least once in one of the volume acceleration data structures.
template<concepts::detector detector_t>
void operator() (const typename detector_t::surface_type &sf_descr, const detector_t &det, const dindex vol_idx, const typename detector_t::name_map &names) const
 Test the contained surfaces for consistency.

Detailed Description

A functor that checks the surface descriptor and correct volume index in every acceleration data structure for a given volume.

Member Function Documentation

◆ operator()() [1/2]

template<typename sf_descr_t, typename sf_source_descr_t>
void detray::detail::surface_checker::operator() ( const sf_descr_t & ref_descr,
const sf_source_descr_t & check_descr,
bool & success ) const

Test whether a given surface check_desc is properly registered at least once in one of the volume acceleration data structures.

Parameters
ref_descrone of the surfaces in the volumes acceleration data
check_descrsurface that we are searching for
successcommunicate success to the outside

◆ operator()() [2/2]

template<concepts::detector detector_t>
void detray::detail::surface_checker::operator() ( const typename detector_t::surface_type & sf_descr,
const detector_t & det,
const dindex vol_idx,
const typename detector_t::name_map & names ) const

Test the contained surfaces for consistency.

Parameters
sf_descrSurface descriptor being checked.
detDetector that owns the surface.
vol_idxIndex of the volume expected to contain the surface.
namesMap used to resolve volume names in diagnostics.