File GeometryIdentifier.hpp¶
-
namespace Acts
Note
This file is foreseen for the
Geometry
module to replaceExtent
Functions
-
std::ostream &operator<<(std::ostream &os, GeometryIdentifier id)¶
-
class GeometryIdentifier
- #include <Acts/Geometry/GeometryIdentifier.hpp>
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
-
inline constexpr GeometryIdentifier(Value encoded)
Construct from an already encoded value.
-
GeometryIdentifier() = default
Construct default GeometryIdentifier with all values set to zero.
-
GeometryIdentifier(GeometryIdentifier&&) = default
-
GeometryIdentifier(const GeometryIdentifier&) = default
-
~GeometryIdentifier() = default
-
inline constexpr Value approach() const
Return the approach identifier.
-
inline constexpr Value boundary() const
Return the boundary identifier.
-
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.
-
inline constexpr Value layer() const
Return the layer identifier.
-
GeometryIdentifier &operator=(GeometryIdentifier&&) = default
-
GeometryIdentifier &operator=(const GeometryIdentifier&) = default
-
inline constexpr Value sensitive() const
Return the sensitive identifier.
-
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 &setSensitive(Value sensitive)
Set the sensitive identifier.
-
inline constexpr GeometryIdentifier &setVolume(Value volume)
Set the volume identifier.
-
inline constexpr Value value() const
Return the encoded value.
-
inline constexpr Value volume() const
Return the volume identifier.
Private Functions
-
inline constexpr GeometryIdentifier &setBits(Value mask, Value id)¶
Set the masked bits to id in the encoded value.
Private Static Functions
Private Static Attributes
Friends
-
inline friend constexpr bool operator!=(GeometryIdentifier lhs, GeometryIdentifier rhs)¶
-
inline friend constexpr bool operator<(GeometryIdentifier lhs, GeometryIdentifier rhs)¶
-
inline friend constexpr bool operator==(GeometryIdentifier lhs, GeometryIdentifier rhs)¶
-
struct GeometryIdentifierHook¶
- #include <Acts/Geometry/GeometryIdentifier.hpp>
Base class for hooks that can be used to modify the Geometry Identifier during construction.
Most common use case is setting the extra bit fields.
Public Functions
-
virtual ~GeometryIdentifierHook() = default¶
-
virtual Acts::GeometryIdentifier decorateIdentifier(Acts::GeometryIdentifier identifier, const Acts::Surface &surface) const¶
-
virtual ~GeometryIdentifierHook() = default¶
-
std::ostream &operator<<(std::ostream &os, GeometryIdentifier id)¶