|
ACTS
Experiment-independent tracking
|
Provides functionality to build a detray detector volume by volume. More...
#include <detray/builders/detector_builder.hpp>
Public Types | |
| using | algebra_type = typename detector_type::algebra_type |
| Algebra backend used by the detector geometry. | |
| using | detector_type = detail::detector<metadata_t, host_container_types> |
| Detector type produced from the configured metadata. | |
| using | scalar_type = dscalar<algebra_type> |
| Scalar type used for geometry values. | |
Public Member Functions | |
| auto | build (vecmem::memory_resource &resource, const volume_builder_options &opt) -> detector_type |
Assembles the final detector from the volumes builders and allocates the detector containers with the memory resource resource. | |
| auto | build (vecmem::memory_resource &resource, const volume_builder_options &opt, typename detector_type::name_map &name_map) -> detector_type |
Assembles the final detector and fill an externally provided name map name_map. | |
| template<class builder_t> | |
| auto | decorate (const volume_builder_interface< detector_type > *v_builder) -> builder_t * |
Decorate a volume builder v_builder with more functionality. | |
| template<class builder_t> | |
| auto | decorate (dindex volume_idx) -> builder_t * |
Decorate a volume builder at position volume_idx with more functionality. | |
| bool | has_volume (const std::size_t volume_idx) const |
| auto | n_volumes () const -> dindex |
| std::string_view | name () const |
| template<typename... Args> | |
| auto | new_volume (const volume_id id, Args &&... args) -> volume_builder_interface< detector_type > * |
Add a new volume builder that will build a volume of the shape given by id. | |
| auto | operator[] (dindex volume_idx) -> volume_builder_interface< detector_type > * |
Access a particular volume builder by volume index volume_idx. | |
| void | set_name (std::string det_name) |
Set the name of the detector under construction to det_name. | |
Provides functionality to build a detray detector volume by volume.
| metadata | the type definitions for the detector |
| volume_builder_t | the basic volume builder to be used for the geometry data |
| volume_data_t | the data structure that holds the volume builders |
| auto detray::detector_builder< metadata_t, volume_builder_t, volume_data_t >::build | ( | vecmem::memory_resource & | resource, |
| const volume_builder_options & | opt )->detector_type |
Assembles the final detector from the volumes builders and allocates the detector containers with the memory resource resource.
| resource | Memory resource used for detector storage. |
| opt | Options applied while building each volume. |
| auto detray::detector_builder< metadata_t, volume_builder_t, volume_data_t >::build | ( | vecmem::memory_resource & | resource, |
| const volume_builder_options & | opt, | ||
| typename detector_type::name_map & | name_map )->detector_type |
Assembles the final detector and fill an externally provided name map name_map.
| resource | Memory resource used for detector storage. |
| opt | Options applied while building each volume. |
| name_map | Map to populate with detector and volume names. |
| auto detray::detector_builder< metadata_t, volume_builder_t, volume_data_t >::decorate | ( | const volume_builder_interface< detector_type > * | v_builder | ) | ->builder_t * |
Decorate a volume builder v_builder with more functionality.
| v_builder | Builder to decorate; it must belong to this detector builder. |
| auto detray::detector_builder< metadata_t, volume_builder_t, volume_data_t >::decorate | ( | dindex | volume_idx | ) | ->builder_t * |
Decorate a volume builder at position volume_idx with more functionality.
| volume_idx | Index of the builder to decorate. |
| bool detray::detector_builder< metadata_t, volume_builder_t, volume_data_t >::has_volume | ( | const std::size_t | volume_idx | ) | const |
| volume_idx | Volume index to check. |
volume_idx | auto detray::detector_builder< metadata_t, volume_builder_t, volume_data_t >::n_volumes | ( | ) | const->dindex |
| std::string_view detray::detector_builder< metadata_t, volume_builder_t, volume_data_t >::name | ( | ) | const |
| auto detray::detector_builder< metadata_t, volume_builder_t, volume_data_t >::new_volume | ( | const volume_id | id, |
| Args &&... | args )->volume_builder_interface< detector_type > * |
Add a new volume builder that will build a volume of the shape given by id.
| id | Volume shape to build. |
| args | Additional arguments forwarded to the volume builder. |
| auto detray::detector_builder< metadata_t, volume_builder_t, volume_data_t >::operator[] | ( | dindex | volume_idx | ) | ->volume_builder_interface< detector_type > * |
Access a particular volume builder by volume index volume_idx.
| volume_idx | Index of the requested builder. |
| void detray::detector_builder< metadata_t, volume_builder_t, volume_data_t >::set_name | ( | std::string | det_name | ) |
Set the name of the detector under construction to det_name.
| det_name | Name to assign to the detector. |