Celeritas
0.5.0-86+4a8eea4
|
Interface class for accessing host geometry metadata. More...
#include <GeoParamsInterface.hh>
Public Types | |
Type aliases | |
using | SpanConstVolumeId = Span< VolumeId const > |
using | VolumeMap = LabelIdMultiMap< VolumeId > |
using | VolInstanceMap = LabelIdMultiMap< VolumeInstanceId > |
Public Member Functions | |
virtual | ~GeoParamsInterface ()=0 |
Default virtual destructor. | |
virtual bool | supports_safety () const =0 |
Whether safety distance calculations are accurate and precise. | |
virtual BBox const & | bbox () const =0 |
Outer bounding box of geometry. | |
virtual LevelId::size_type | max_depth () const =0 |
Maximum nested scene/volume depth. | |
virtual VolumeMap const & | volumes () const =0 |
Get volume metadata. | |
virtual VolInstanceMap const & | volume_instances () const =0 |
Get volume instance metadata. | |
virtual VolumeId | find_volume (G4LogicalVolume const *volume) const =0 |
Get the volume ID corresponding to a Geant4 logical volume. | |
virtual G4VPhysicalVolume const * | id_to_pv (VolumeInstanceId id) const =0 |
Get the Geant4 PV corresponding to a volume instance. | |
VolumeId::size_type | num_volumes () const |
Number of volumes. | |
Label const & | id_to_label (VolumeId vol_id) const |
Get the label for a placed volume ID. | |
VolumeId | find_volume (std::string const &name) const |
Get the volume ID corresponding to a unique name. | |
VolumeId | find_volume (Label const &label) const |
Get the volume ID corresponding to a unique label. | |
VolumeId | find_volume (char const *name) const |
Get the volume ID corresponding to a unique name. | |
SpanConstVolumeId | find_volumes (std::string const &name) const |
Get the volume ID corresponding to a unique name. | |
Protected Member Functions | |
CELER_DEFAULT_COPY_MOVE (GeoParamsInterface) | |
Interface class for accessing host geometry metadata.
This class is implemented by OrangeParams
to allow navigation with the ORANGE geometry implementation, VecgeomParams
for using VecGeom, and GeantGeoParams
for testing with the Geant4-provided navigator.