Celeritas 0.6.0-129+develop.846910afa
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< ImplVolumeId const >
 
using ImplVolumeMap = LabelIdMultiMap< ImplVolumeId >
 

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 inp::Model make_model_input () const =0
 
virtual ImplVolumeMap constimpl_volumes () const =0
 Get volume metadata.
 
virtual VolumeId volume_id (ImplVolumeId) const =0
 Get the canonical volume IDs corresponding to an implementation volume.
 
virtual ImplVolumeId 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 ImplVolumeId 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.

◆ impl_volumes()

virtual ImplVolumeMap const & celeritas::GeoParamsInterface::impl_volumes ( ) const
pure virtual

◆ make_model_input()

virtual inp::Model celeritas::GeoParamsInterface::make_model_input ( ) const
pure virtual

◆ 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_id()

virtual VolumeId celeritas::GeoParamsInterface::volume_id ( ImplVolumeId  ) const
pure virtual

Get the canonical volume IDs corresponding to an implementation volume.

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


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