template<typename S>
{ cs == s2 } -> std::same_as<bool>;
{ cs.type() } -> std::same_as<Surface::SurfaceType>;
{ cs.localToGlobalTransform(gctx) } -> std::same_as<const Transform3&>;
{ cs.center(gctx) } -> std::same_as<Vector3>;
{ cs.bounds() } -> std::convertible_to<const SurfaceBounds&>;
{ cs.surfacePlacement() } -> std::same_as<const SurfacePlacementBase*>;
{ cs.associatedLayer() } -> std::same_as<const Layer*>;
{
s.associateLayer(std::declval<const Layer&>()) } -> std::same_as<void>;
{ cs.surfaceMaterial() } -> std::same_as<const ISurfaceMaterial*>;
{
cs.surfaceMaterialSharedPtr()
} -> std::same_as<const std::shared_ptr<const ISurfaceMaterial>&>;
{
std::declval<std::shared_ptr<const ISurfaceMaterial>>())
} -> std::same_as<void>;
{
} -> std::same_as<bool>;
{ cs.insideBounds(
Vector2{}, tolerance) } -> std::same_as<bool>;
{ cs.localToGlobal(gctx,
Vector2{},
Vector3{}) } -> std::same_as<Vector3>;
{
} -> std::same_as<Result<Vector2>>;
{
} -> std::same_as<RotationMatrix3>;
{
} -> std::same_as<BoundToFreeMatrix>;
{
} -> std::same_as<FreeToBoundMatrix>;
{
} -> std::same_as<FreeToPathMatrix>;
{ cs.pathCorrection(gctx,
Vector3{},
Vector3{}) } -> std::same_as<double>;
{
cs.intersect(gctx,
Vector3{},
Vector3{}, tolerance, std::declval<double>())
} -> std::same_as<MultiIntersection3D>;
{ cs.toStream(gctx) } -> std::same_as<GeometryContextOstreamWrapper<Surface>>;
{ cs.toString(gctx) } -> std::same_as<std::string>;
{ cs.name() } -> std::same_as<std::string>;
{
cs.polyhedronRepresentation(gctx, std::declval<unsigned int>())
} -> std::same_as<Polyhedron>;
{
} -> std::same_as<AlignmentToBoundMatrix>;
{
} -> std::same_as<AlignmentToPathMatrix>;
{
cs.localCartesianToBoundLocalDerivative(gctx,
Vector3{})
} -> std::same_as<ActsMatrix<2, 3>>;
}
Variant-like type to capture different types of boundary tolerances.
Definition BoundaryTolerance.hpp:49
This is the central definition of the Acts payload object regarding detector geometry status (e....
Definition GeometryContext.hpp:46
Definition SurfaceConcept.hpp:25
ActsVector< 3 > Vector3
3-dimensional vector type for e.g. spatial coordinates and momenta
Definition Algebra.hpp:72
ActsVector< 2 > Vector2
2-dimensional vector type for 2D coordinates
Definition Algebra.hpp:70
constexpr double s
Definition Units.hpp:123
ActsVector< eFreeSize > FreeVector
Vector type for free track parameters.
Definition TrackParametrization.hpp:128