Class Acts::GeometryIdentifier
-
class GeometryIdentifier
Identifier for geometry nodes within the geometry hierarchy.
An identifier can be split into the following components. They define a hierarchy of objects starting from the high-level volumes:
Volume
Boundary surfaces (for a volume)
Layers (confined within a volume)
Approach surfaces (for a layer)
Sensitive surfaces (confined to a layer, also called modules)
Public Types
-
using Value = uint64_t
Public Functions
-
GeometryIdentifier() = default
Construct default GeometryIdentifier with all values set to zero.
-
GeometryIdentifier(const GeometryIdentifier&) = default
-
GeometryIdentifier(GeometryIdentifier&&) = default
-
~GeometryIdentifier() = default
-
inline constexpr Value extra() const
Return the extra identifier Usage can be experiment-specific, like tagging which kind of detector a surface object corresponds to, or which subsystem it belongs to.
-
GeometryIdentifier &operator=(const GeometryIdentifier&) = default
-
GeometryIdentifier &operator=(GeometryIdentifier&&) = default
-
inline constexpr GeometryIdentifier &setApproach(Value approach)
Set the approach identifier.
-
inline constexpr GeometryIdentifier &setBoundary(Value boundary)
Set the boundary identifier.
-
inline constexpr GeometryIdentifier &setExtra(Value extra)
Set the extra identifier.
-
inline constexpr GeometryIdentifier &setLayer(Value layer)
Set the layer identifier.
-
inline constexpr GeometryIdentifier &setPassive(Value approach)
Set the approach identifier - shared with Passive.
-
inline constexpr GeometryIdentifier &setSensitive(Value sensitive)
Set the sensitive identifier.
-
inline constexpr GeometryIdentifier &setVolume(Value volume)
Set the volume identifier.