|
ACTS
Experiment-independent tracking
|
Decorator for the volume builder. More...
#include <detray/builders/volume_builder_interface.hpp>
Public Types | |
| using | scalar_t = dscalar<typename detector_t::algebra_type> |
| Scalar type used by the detector's algebra. | |
| Public Types inherited from detray::volume_builder_interface< detector_t > | |
| using | algebra_type = typename detector_t::algebra_type |
| Algebra type used by the detector. | |
| using | scalar_type = dscalar<algebra_type> |
| Scalar type used by the detector's algebra. | |
Public Member Functions | |
| volume_decorator (std::unique_ptr< volume_builder_interface< detector_t > > vol_builder) | |
| Wraps a volume builder. | |
| void | add_surfaces (std::shared_ptr< surface_factory_interface< detector_t > > sf_factory, typename detector_t::geometry_context ctx={}) override |
| Adds surfaces through the wrapped builder's factory interface. | |
| void | add_volume_placement (const typename detector_t::point3_type &t) override |
| Adds a placement using a translation and identity rotation. | |
| void | add_volume_placement (const typename detector_t::point3_type &t, const typename detector_t::vector3_type &x, const typename detector_t::vector3_type &z) override |
| Adds a placement using a translation and its x- and z-axes. | |
| void | add_volume_placement (const typename detector_t::transform3_type &trf={}) override |
| Adds a placement transform to the wrapped builder. | |
| auto | build (detector_t &det, const volume_builder_options &opt, typename detector_t::geometry_context={}) -> typename detector_t::volume_type *override |
| Builds the wrapped volume in the detector. | |
| bool | has_accel () const override |
| Returns whether sensitive surfaces are added to brute force lookup. | |
| void | has_accel (bool toggle) override |
| Forwards the brute-force acceleration setting to the wrapped builder. | |
| std::string_view | name () override |
| Returns the wrapped volume's name. | |
| auto | operator() () -> typename detector_t::volume_type &override |
| Returns the mutable volume being built. | |
| auto | operator() () const -> const typename detector_t::volume_type &override |
| Returns const access to the wrapped volume. | |
| void | set_name (std::string volume_name) override |
| Sets the wrapped volume's name. | |
| auto | vol_index () const -> dindex override |
| Returns the index assigned by the wrapped builder. | |
| Public Member Functions inherited from detray::volume_builder_interface< detector_t > | |
| virtual void | add_volume_placement (const dpoint3D< algebra_type > &t)=0 |
Add the transform for the volume placement from the translation t. | |
| virtual void | add_volume_placement (const dpoint3D< algebra_type > &t, const dvector3D< algebra_type > &x, const dvector3D< algebra_type > &z)=0 |
Add the transform for the volume placement from the translation t , the new x- and z-axis (x, z). | |
| virtual void | add_volume_placement (const dtransform3D< algebra_type > &trf={})=0 |
| Add the transform for the volume placement - copy. | |
Protected Member Functions | |
| volume_builder_interface< detector_t > * | get_builder () |
| Access to underlying builderReturns a pointer to the wrapped builder. | |
| detector_t::surface_lookup_container & | surfaces () override |
| Returns mutable access to the wrapped builder's surface lookup container. | |
| detector_t::transform_container & | transforms () override |
| Returns mutable access to the wrapped builder's transforms. | |
| detector_t::mask_container & | masks () override |
| Returns mutable access to the wrapped builder's masks. | |
| Protected Member Functions inherited from detray::volume_builder_interface< detector_t > | |
Decorator for the volume builder.
Can be volume builders that introduce special sorting/memory layout, or accelerator builders, like the grid builder.
|
explicit |
Wraps a volume builder.
| vol_builder | Builder to decorate; must not be null. |
|
overridevirtual |
Adds surfaces through the wrapped builder's factory interface.
| sf_factory | Factory that supplies surfaces. |
| ctx | Geometry context forwarded to the builder. |
Implements detray::volume_builder_interface< detector_t >.
|
override |
Adds a placement using a translation and identity rotation.
| t | Translation of the placement. |
|
override |
Adds a placement using a translation and its x- and z-axes.
| t | Translation of the placement. |
| x | New x-axis of the placement. |
| z | New z-axis of the placement. |
|
override |
Adds a placement transform to the wrapped builder.
| trf | Transform to copy into the placement. |
|
overridevirtual |
Builds the wrapped volume in the detector.
| det | Detector receiving the volume. |
| opt | Options controlling deduplication and sorting. |
Implements detray::volume_builder_interface< detector_t >.
|
protected |
Access to underlying builderReturns a pointer to the wrapped builder.
|
overridevirtual |
Returns whether sensitive surfaces are added to brute force lookup.
Implements detray::volume_builder_interface< detector_t >.
|
overridevirtual |
Forwards the brute-force acceleration setting to the wrapped builder.
| toggle | Whether sensitive surfaces are added to brute force lookup. |
Implements detray::volume_builder_interface< detector_t >.
|
overrideprotectedvirtual |
Returns mutable access to the wrapped builder's masks.
Implements detray::volume_builder_interface< detector_t >.
|
overridevirtual |
Returns the wrapped volume's name.
Implements detray::volume_builder_interface< detector_t >.
|
overridevirtual |
Returns the mutable volume being built.
Implements detray::volume_builder_interface< detector_t >.
|
overridevirtual |
Returns const access to the wrapped volume.
Implements detray::volume_builder_interface< detector_t >.
|
overridevirtual |
Sets the wrapped volume's name.
| volume_name | Name to assign. |
Implements detray::volume_builder_interface< detector_t >.
|
overrideprotectedvirtual |
Returns mutable access to the wrapped builder's surface lookup container.
Implements detray::volume_builder_interface< detector_t >.
|
overrideprotectedvirtual |
Returns mutable access to the wrapped builder's transforms.
Implements detray::volume_builder_interface< detector_t >.
|
overridevirtual |
Returns the index assigned by the wrapped builder.
Implements detray::volume_builder_interface< detector_t >.