|
|
using | material_id = typename detector_t::material::id |
| | Material collection identifier enum supplied by the detector.
|
|
using | scalar_type = dscalar<typename detector_t::algebra_type> |
| | Scalar type used by the detector's material definitions.
|
|
using | scalar_t = dscalar<typename detector_t::algebra_type> |
| | Scalar type used by the detector's algebra.
|
|
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.
|
|
| | homogeneous_material_builder (std::unique_ptr< volume_builder_interface< detector_t > > vol_builder) |
| auto | build (detector_t &det, const volume_builder_options &opt, typename detector_t::geometry_context ctx={}) -> typename detector_t::volume_type *override |
| | Add the volume and the material to the detector det.
|
| void | add_surfaces (std::shared_ptr< surface_factory_interface< detector_t > > sf_factory, typename detector_t::geometry_context ctx={}) override |
| | Overwrite, to add material in addition to surfaces (only if surfaces are present in the factory, otherwise only add material).
|
| | 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.
|
| 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.
|
template<typename detector_t>
class detray::homogeneous_material_builder< detector_t >
Build a volume containing surfaces with material.
Decorator class to a volume builder that adds the material data to the surfaces while building the volume.