Celeritas 0.6.0-rc.2.10+develop.de0a3a05
Loading...
Searching...
No Matches
Public Member Functions | Protected Member Functions | List of all members
celeritas::GeoParamsInterface Class Referenceabstract

Interface class for accessing host geometry metadata. More...

#include <GeoParamsInterface.hh>

Inheritance diagram for celeritas::GeoParamsInterface:
Inheritance graph
[legend]

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 constbbox () const =0
 Outer bounding box of geometry.
 
virtual LevelId::size_type max_depth () const =0
 Maximum nested volume instance depth.
 
virtual VolumeMap constvolumes () const =0
 Get volume metadata.
 
virtual VolInstanceMap constvolume_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 GeantPhysicalInstance id_to_geant (VolumeInstanceId id) const =0
 Get the Geant4 PV corresponding to a volume instance.
 

Protected Member Functions

 CELER_DEFAULT_COPY_MOVE (GeoParamsInterface)
 

Detailed Description

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.

Member Function Documentation

◆ bbox()

virtual BBox const & celeritas::GeoParamsInterface::bbox ( ) const
pure virtual

Outer bounding box of geometry.

Implemented in celeritas::GeantGeoParams, celeritas::VecgeomParams, and celeritas::OrangeParams.

◆ find_volume()

virtual VolumeId celeritas::GeoParamsInterface::find_volume ( G4LogicalVolume const volume) const
pure virtual

Get the volume ID corresponding to a Geant4 logical volume.

Implemented in celeritas::GeantGeoParams, celeritas::VecgeomParams, celeritas::OrangeParams, celeritas::GeantGeoParams, and celeritas::VecgeomParams.

◆ id_to_geant()

virtual GeantPhysicalInstance celeritas::GeoParamsInterface::id_to_geant ( VolumeInstanceId  id) const
pure virtual

Get the Geant4 PV corresponding to a volume instance.

Implemented in celeritas::GeantGeoParams, celeritas::VecgeomParams, and celeritas::OrangeParams.

◆ max_depth()

virtual LevelId::size_type celeritas::GeoParamsInterface::max_depth ( ) const
pure virtual

Maximum nested volume instance depth.

Implemented in celeritas::GeantGeoParams, celeritas::VecgeomParams, and celeritas::OrangeParams.

◆ supports_safety()

virtual bool celeritas::GeoParamsInterface::supports_safety ( ) const
pure virtual

Whether safety distance calculations are accurate and precise.

Implemented in celeritas::GeantGeoParams, celeritas::VecgeomParams, and celeritas::OrangeParams.

◆ volume_instances()

virtual VolInstanceMap const & celeritas::GeoParamsInterface::volume_instances ( ) const
pure virtual

Get volume instance metadata.

Implemented in celeritas::GeantGeoParams, celeritas::VecgeomParams, and celeritas::OrangeParams.

◆ volumes()

virtual VolumeMap const & celeritas::GeoParamsInterface::volumes ( ) const
pure virtual

The documentation for this class was generated from the following files: