|
ACTS
Experiment-independent tracking
|
Defines a special telescope test detector type with only rectangle portals and one additional kind of contained module surfaces (mask_shape_t).
More...
#include <detray/detectors/telescope_metadata.hpp>
Public Types | |
| enum class | accel_id : std::uint_least8_t { e_surface_brute_force = 0u , e_volume_brute_force = 1u , e_surface_default = e_surface_brute_force , e_volume_default = e_volume_brute_force } |
| Acceleration data structures. | |
| template<typename container_t = host_container_types> | |
| using | accelerator_store |
| How to store the brute force search data structure. | |
| using | algebra_type = algebra_t |
| Define the algebra type for the geometry and navigation Algebra backend used by the detector geometry and scalar types. | |
| enum | geo_objects : std::uint_least8_t { e_sensitive = 0u , e_portal = 0u , e_passive = 0u , e_volume = 1u , e_size = 2u , e_all = e_size } |
| No grids/other acceleration data structure, everything is brute forced. | |
| enum class | mask_id : std::uint_least8_t { e_rectangle2D = 0u , e_annulus2D = 1u , e_cylinder2D = 1u , e_ring2D = 1u , e_trapezoid2D = 1u , e_single1D = 1u , e_single2D = 1u , e_single3D = 1u , e_straw_tube = 1u , e_drift_cell = 1u , e_unbounded_annulus2 = 1u , e_unbounded_cell2 = 1u , e_unbounded_cylinder2 = 1u , e_unbounded_disc2 = 1u , e_unbounded_rectangle2 = 1u , e_unbounded_trapezoid2 = 1u , e_unbounded_line_circular2 = 1u , e_unmasked2 = 1u } |
| Rectangles are always needed as portals (but they have the same type as module rectangles). More... | |
| using | mask_link = typename mask_store<>::single_link |
| Link type for a range of telescope surface masks. | |
| template<template< typename... > class vector_t = dvector> | |
| using | mask_store |
| How to store masks. | |
| enum class | material_id : std::uint_least8_t { e_material_slab = 0u , e_raw_material = 1u , e_material_rod = 2u , e_none = 3u } |
| Identifiers for material payload and map alternatives. | |
| using | material_link = typename material_store<>::single_link |
| Link type used to refer to the corresponding detector component store. | |
| using | material_rod_t = material_rod<scalar_t> |
| Material rod representation used by telescope supports. | |
| using | material_slab_t = material_slab<scalar_t> |
| Material types (slabs for portals, rods are optional). | |
| template<typename container_t = host_container_types> | |
| using | material_store |
| How to store materials. | |
| using | module_t = mask<mask_shape_t, algebra_type, nav_link> |
| Mask type describing a telescope module. | |
| using | nav_link = std::uint_least16_t |
| Index type in the masks to find the adjacent volumes. | |
| using | object_link_type |
| One link for all surfaces (in the brute force method). | |
| using | rectangle2D_t = mask<detray::rectangle2D, algebra_type, nav_link> |
| Rectangles are needed for the portals. | |
| using | scalar_t = dscalar<algebra_type> |
| Scalar type associated with the metadata algebra. | |
| using | surface_type |
| Surface type used for sensitives, passives and portals Surface descriptor type combining links to its geometry components. | |
| using | transform_link = typename transform_store<>::single_link |
| How to link to the entries in the data stores. | |
| template<template< typename... > class vector_t = dvector> | |
| using | transform_store |
| How to store coordinate transform matrices. | |
Defines a special telescope test detector type with only rectangle portals and one additional kind of contained module surfaces (mask_shape_t).
| algebra_t | Algebra backend used by the detector. |
| mask_shape_t | Shape of the contained module surfaces. |
| using detray::telescope_metadata< algebra_t, mask_shape_t >::accelerator_store |
How to store the brute force search data structure.
| using detray::telescope_metadata< algebra_t, mask_shape_t >::mask_store |
How to store masks.
| using detray::telescope_metadata< algebra_t, mask_shape_t >::material_store |
How to store materials.
| using detray::telescope_metadata< algebra_t, mask_shape_t >::object_link_type |
One link for all surfaces (in the brute force method).
| using detray::telescope_metadata< algebra_t, mask_shape_t >::surface_type |
Surface type used for sensitives, passives and portals Surface descriptor type combining links to its geometry components.
| using detray::telescope_metadata< algebra_t, mask_shape_t >::transform_store |
How to store coordinate transform matrices.
|
strong |
Rectangles are always needed as portals (but they have the same type as module rectangles).
Only one additional mask shape is allowed