ECCE @ EIC Software
Reference for
ECCE @ EIC
simulation and reconstruction software on GitHub
|
Abstract Base Class for tracking surfaces. More...
#include <acts/blob/master/Core/include/Acts/Surfaces/Surface.hpp>
Public Types | |
enum | SurfaceType { Cone = 0, Cylinder = 1, Disc = 2, Perigee = 3, Plane = 4, Straw = 5, Curvilinear = 6, Other = 7 } |
Public Member Functions | |
virtual | ~Surface () |
std::shared_ptr< Surface > | getSharedPtr () |
std::shared_ptr< const Surface > | getSharedPtr () const |
Surface & | operator= (const Surface &other) |
virtual bool | operator== (const Surface &other) const |
virtual bool | operator!= (const Surface &sf) const |
virtual SurfaceType | type () const =0 |
Return method for the Surface type to avoid dynamic casts. | |
virtual const Transform3D & | transform (const GeometryContext &gctx) const |
virtual const Vector3D | center (const GeometryContext &gctx) const |
virtual const Vector3D | normal (const GeometryContext &gctx, const Vector2D &lposition) const =0 |
virtual const Vector3D | normal (const GeometryContext &gctx, const Vector3D &position) const |
virtual const Vector3D | normal (const GeometryContext &gctx) const |
virtual const SurfaceBounds & | bounds () const =0 |
const DetectorElementBase * | associatedDetectorElement () const |
const Layer * | associatedLayer () const |
void | associateLayer (const Layer &lay) |
const ISurfaceMaterial * | surfaceMaterial () const |
const std::shared_ptr< const ISurfaceMaterial > & | surfaceMaterialSharedPtr () const |
void | assignSurfaceMaterial (std::shared_ptr< const ISurfaceMaterial > material) |
bool | isOnSurface (const GeometryContext &gctx, const Vector3D &position, const Vector3D &momentum, const BoundaryCheck &bcheck=true) const |
virtual bool | insideBounds (const Vector2D &lposition, const BoundaryCheck &bcheck=true) const |
virtual void | localToGlobal (const GeometryContext &gctx, const Vector2D &lposition, const Vector3D &momentum, Vector3D &position) const =0 |
virtual bool | globalToLocal (const GeometryContext &gctx, const Vector3D &position, const Vector3D &momentum, Vector2D &lposition) const =0 |
virtual const Acts::RotationMatrix3D | referenceFrame (const GeometryContext &gctx, const Vector3D &position, const Vector3D &momentum) const |
virtual void | initJacobianToGlobal (const GeometryContext &gctx, BoundToFreeMatrix &jacobian, const Vector3D &position, const Vector3D &direction, const BoundVector &pars) const |
virtual const RotationMatrix3D | initJacobianToLocal (const GeometryContext &gctx, FreeToBoundMatrix &jacobian, const Vector3D &position, const Vector3D &direction) const |
virtual const BoundRowVector | derivativeFactors (const GeometryContext &gctx, const Vector3D &position, const Vector3D &direction, const RotationMatrix3D &rft, const BoundToFreeMatrix &jacobian) const |
virtual double | pathCorrection (const GeometryContext &gctx, const Vector3D &position, const Vector3D &direction) const =0 |
virtual SurfaceIntersection | intersect (const GeometryContext &gctx, const Vector3D &position, const Vector3D &direction, const BoundaryCheck &bcheck) const |
virtual Intersection | intersectionEstimate (const GeometryContext &gctx, const Vector3D &position, const Vector3D &direction, const BoundaryCheck &bcheck) const =0 |
virtual std::ostream & | toStream (const GeometryContext &gctx, std::ostream &sl) const |
virtual std::string | name () const =0 |
Return properly formatted class name. | |
virtual Polyhedron | polyhedronRepresentation (const GeometryContext &gctx, size_t lseg) const =0 |
Public Member Functions inherited from Acts::GeometryObject | |
GeometryObject ()=default | |
Defaulted construrctor. | |
GeometryObject (const GeometryObject &)=default | |
Defaulted copy constructor. | |
GeometryObject (const GeometryID &geoID) | |
GeometryObject & | operator= (const GeometryObject &geoID) |
const GeometryID & | geoID () const |
virtual const Vector3D | binningPosition (const GeometryContext &gctx, BinningValue bValue) const =0 |
virtual double | binningPositionValue (const GeometryContext &gctx, BinningValue bValue) const |
void | assignGeoID (const GeometryID &geoID) |
Static Public Member Functions | |
template<class T , typename... Args> | |
static std::shared_ptr< T > | makeShared (Args &&...args) |
Protected Member Functions | |
Surface (std::shared_ptr< const Transform3D > tform=nullptr) | |
Surface (const Surface &other) | |
Surface (const DetectorElementBase &detelement) | |
Surface (const GeometryContext &gctx, const Surface &other, const Transform3D &shift) | |
Protected Attributes | |
std::shared_ptr< const Transform3D > | m_transform |
const DetectorElementBase * | m_associatedDetElement {nullptr} |
Pointer to the a DetectorElementBase. | |
const Layer * | m_associatedLayer {nullptr} |
const TrackingVolume * | m_associatedTrackingVolume {nullptr} |
std::shared_ptr< const ISurfaceMaterial > | m_surfaceMaterial |
Possibility to attach a material descrption. | |
Protected Attributes inherited from Acts::GeometryObject | |
GeometryID | m_geoID |
Abstract Base Class for tracking surfaces.
The Surface class builds the core of the Acts Tracking Geometry. All other geometrical objects are either extending the surface or are built from it.
Surfaces are either owned by Detector elements or the Tracking Geometry, in which case they are not copied within the data model objects.
Definition at line 48 of file Surface.hpp.
View newest version in sPHENIX GitHub at line 48 of file Surface.hpp
enum Acts::Surface::SurfaceType |
This enumerator simplifies the persistency & calculations, by saving a dynamic_cast, e.g. for persistency
Definition at line 55 of file Surface.hpp.
View newest version in sPHENIX GitHub at line 55 of file Surface.hpp
|
protected |
Constructor with Transform3D as a shared object
tform | Transform3D positions the surface in 3D global space |
Definition at line 15 of file Surface.cpp.
View newest version in sPHENIX GitHub at line 15 of file Surface.cpp
|
protected |
Copy constructor
other | Source surface for copy. |
Definition at line 23 of file Surface.cpp.
View newest version in sPHENIX GitHub at line 23 of file Surface.cpp
|
protected |
Constructor fromt DetectorElementBase: Element proxy
detelement | Detector element which is represented by this surface |
Definition at line 18 of file Surface.cpp.
View newest version in sPHENIX GitHub at line 18 of file Surface.cpp
|
protected |
Copy constructor with optional shift
gctx | The current geometry context object, e.g. alignment |
other | Source surface for copy |
shift | Additional transform applied after copying from the source |
Definition at line 29 of file Surface.cpp.
View newest version in sPHENIX GitHub at line 29 of file Surface.cpp
|
virtualdefault |
|
inline |
Assign the surface material description
The material is usually derived in a complicated way and loaded from a framework given source. As various surfaces may share the same source this is provided by a shared pointer
material | Material description associated to this surface |
Definition at line 141 of file Surface.ipp.
View newest version in sPHENIX GitHub at line 141 of file Surface.ipp
Referenced by Acts::addLayerProtoMaterial(), Acts::TrackingVolume::assignBoundaryMaterial(), Acts::Test::BOOST_AUTO_TEST_CASE(), FW::Generic::LayerBuilderT< detector_element_t >::centralLayers(), FW::Generic::LayerBuilderT< detector_element_t >::constructEndcapLayers(), FW::Generic::GenericDetectorElement::GenericDetectorElement(), Acts::TrackingVolume::glueTrackingVolume(), Acts::CylinderVolumeHelper::glueTrackingVolumes(), Acts::Test::CylindricalTrackingGeometry::operator()(), and Acts::TrackingVolume::updateBoundarySurface().
|
inline |
Return method for the associated Detector Element
Definition at line 124 of file Surface.ipp.
View newest version in sPHENIX GitHub at line 124 of file Surface.ipp
Referenced by Acts::Test::BOOST_AUTO_TEST_CASE(), Acts::KalmanFitter< propagator_t, updater_t, smoother_t, outlier_finder_t, calibrator_t, input_converter_t, output_converter_t >::Actor< source_link_t, parameters_t >::filter(), Acts::CombinatorialKalmanFilter< propagator_t, updater_t, smoother_t, source_link_selector_t, branch_stopper_t, calibrator_t, input_converter_t, output_converter_t >::Actor< source_link_t, parameters_t >::filter(), Acts::SurfaceSelector::operator()(), and FW::Obj::ObjSurfaceWriter::write().
|
inline |
Return method for the associated Layer in which the surface is embedded
Definition at line 128 of file Surface.ipp.
View newest version in sPHENIX GitHub at line 128 of file Surface.ipp
Referenced by Acts::Test::BOOST_AUTO_TEST_CASE().
Set Associated Layer Many surfaces can be associated to a Layer, but it might not be known yet during construction of the layer, this can be set afterwards
lay | the assignment Layer by reference |
Definition at line 146 of file Surface.ipp.
View newest version in sPHENIX GitHub at line 146 of file Surface.ipp
Referenced by Acts::LayerCreator::associateSurfacesToLayer(), Acts::Test::BOOST_AUTO_TEST_CASE(), Acts::PlaneLayer::buildApproachDescriptor(), Acts::CylinderLayer::CylinderLayer(), Acts::Test::CubicTrackingGeometry::operator()(), Acts::PlaneLayer::PlaneLayer(), and Acts::GenericApproachDescriptor::registerLayer().
|
pure virtual |
Return method for SurfaceBounds
Implemented in Acts::LineSurface, Acts::CylinderSurface, Acts::ConeSurface, Acts::PlaneSurface, and Acts::SurfaceStub.
Referenced by Acts::JsonGeometryConverter::addSurfaceToJson(), Acts::adjustBinUtility(), Acts::LayerArrayCreator::createNavigationSurface(), Acts::SurfaceArrayCreator::createVariableAxis(), Acts::JsonGeometryConverter::DefaultBin(), operator==(), FW::Obj::ObjSurfaceWriter::write(), and FW::RootMaterialTrackWriter::writeT().
|
inlinevirtual |
Return method for the surface center by reference
gctx | The current geometry context object, e.g. alignment |
Definition at line 13 of file Surface.ipp.
View newest version in sPHENIX GitHub at line 13 of file Surface.ipp
References Acts::Test::transform.
Referenced by Acts::Test::BOOST_AUTO_TEST_CASE(), Acts::PlaneLayer::buildApproachDescriptor(), Acts::AtlasStepper< ConstantBField >::covarianceTransport(), Acts::ImpactPointEstimator< input_track_t, propagator_t, propagator_options_t >::getDistanceAndMomentum(), Acts::ProtoLayer::measure(), and normal().
|
inlinevirtual |
Calculate the form factors for the derivatives the calculation is identical for all surfaces where the reference frame does not depend on the direction
gctx | The current geometry context object, e.g. alignment |
position | is the position of the paramters in global |
direction | is the direction of the track |
rft | is the transposed reference frame (avoids recalculation) |
jacobian | is the transport jacobian |
Reimplemented in Acts::LineSurface.
Definition at line 113 of file Surface.ipp.
View newest version in sPHENIX GitHub at line 113 of file Surface.ipp
References Acts::eBoundParametersSize.
std::shared_ptr< Acts::Surface > Acts::Surface::getSharedPtr | ( | ) |
Retrieve a std::shared_ptr
for this surface (non-const version)
makeShared
factory since it needs access to the original reference. In C++14 this is undefined behavior (but most likely implemented as a bad_weak_ptr
exception), in C++17 it is defined as that exception. Definition at line 54 of file Surface.cpp.
View newest version in sPHENIX GitHub at line 54 of file Surface.cpp
Referenced by Acts::MultiTrajectory< source_link_t >::addTrackState(), Acts::Test::PropagatorState::Stepper::boundState(), Acts::detail::boundState(), Acts::AtlasStepper< ConstantBField >::boundState(), Acts::DD4hepLayerBuilder::createSensitiveSurface(), Acts::KalmanFitter< propagator_t, updater_t, smoother_t, outlier_finder_t, calibrator_t, input_converter_t, output_converter_t >::Actor< source_link_t, parameters_t >::filter(), Acts::Test::make_trackstate(), FW::SimSourceLink::operator*(), FW::CsvPlanarClusterReader::read(), and Acts::detail_lt::TrackStateProxy< source_link_t, N, M, ReadOnly >::setCalibrated().
std::shared_ptr< const Acts::Surface > Acts::Surface::getSharedPtr | ( | ) | const |
Retrieve a std::shared_ptr
for this surface (const version)
makeShared
factory since it needs access to the original reference. In C++14 this is undefined behavior, but most likely implemented as a bad_weak_ptr
exception, in C++17 it is defined as that exception. Definition at line 58 of file Surface.cpp.
View newest version in sPHENIX GitHub at line 58 of file Surface.cpp
|
pure virtual |
Global to local transformation Generalized global to local transformation for the surface types. Since some surface types need the global momentum/direction to resolve sign ambiguity this is also provided
gctx | The current geometry context object, e.g. alignment |
position | global 3D position - considered to be on surface but not inside bounds (check is done) |
momentum | global 3D momentum representation (optionally ignored) |
lposition | local 2D position to be filled (given by reference for method symmetry) |
Implemented in Acts::LineSurface, Acts::CylinderSurface, Acts::ConeSurface, Acts::PlaneSurface, and Acts::SurfaceStub.
Referenced by FW::HitSmearing::execute(), ActsFatras::Interactor< generator_t, physics_list_t, hit_surface_selector_t >::operator()(), and FW::CsvPlanarClusterReader::read().
|
inlinevirtual |
Initialize the jacobian from local to global the surface knows best, hence the calculation is done here. The jacobian is assumed to be initialised, so only the relevant entries are filled
gctx | The current geometry context object, e.g. alignment |
jacobian | is the jacobian to be initialized |
position | is the global position of the parameters |
direction | is the direction at of the parameters |
pars | is the parameter vector |
Reimplemented in Acts::LineSurface.
Definition at line 46 of file Surface.ipp.
View newest version in sPHENIX GitHub at line 46 of file Surface.ipp
References Acts::ePHI, Acts::eQOP, Acts::eT, Acts::eTHETA, x, y, and z.
|
inlinevirtual |
Initialize the jacobian from global to local the surface knows best, hence the calculation is done here. The jacobian is assumed to be initialised, so only the relevant entries are filled
jacobian | is the jacobian to be initialized |
position | is the global position of the parameters |
direction | is the direction at of the parameters |
gctx | The current geometry context object, e.g. alignment |
Definition at line 82 of file Surface.ipp.
View newest version in sPHENIX GitHub at line 82 of file Surface.ipp
References Acts::ePHI, Acts::eQOP, Acts::eT, Acts::eTHETA, x, y, and z.
|
inlinevirtual |
The insideBounds method for local positions
lposition | The local position to check |
bcheck | BoundaryCheck directive for this onSurface check |
Definition at line 35 of file Surface.ipp.
View newest version in sPHENIX GitHub at line 35 of file Surface.ipp
Referenced by Acts::Test::BOOST_AUTO_TEST_CASE().
|
inlinevirtual |
Straight line intersection schema from position/direction
gctx | The current geometry context object, e.g. alignment |
position | The position to start from |
direction | The direction at start |
bcheck | the Boundary Check |
Reimplemented in Acts::CylinderSurface, and Acts::ConeSurface.
Definition at line 397 of file Surface.hpp.
View newest version in sPHENIX GitHub at line 397 of file Surface.hpp
References intersectionEstimate().
Referenced by Acts::Layer::compatibleSurfaces(), Acts::SurfaceReached::operator()(), Acts::Layer::surfaceOnApproach(), and Acts::detail::updateSingleSurfaceStatus().
|
pure virtual |
Straight line intersection from position and momentum
gctx | The current geometry context object, e.g. alignment |
position | global 3D position - considered to be on surface but not inside bounds (check is done) |
direction | 3D direction representation - expected to be normalized (no check done) |
bcheck | boundary check directive for this operation |
Implemented in Acts::LineSurface, Acts::PlaneSurface, Acts::CylinderSurface, Acts::ConeSurface, and Acts::SurfaceStub.
Referenced by Acts::TrackingVolume::compatibleSurfacesFromHierarchy(), intersect(), and FW::RootMaterialTrackWriter::writeT().
bool Acts::Surface::isOnSurface | ( | const GeometryContext & | gctx, |
const Vector3D & | position, | ||
const Vector3D & | momentum, | ||
const BoundaryCheck & | bcheck = true |
||
) | const |
The geometric onSurface method
Geometrical check whether position is on Surface
gctx | The current geometry context object, e.g. alignment |
position | global position to be evaludated |
momentum | global momentum (required for line-type surfaces) |
bcheck | BoundaryCheck directive for this onSurface check |
Definition at line 39 of file Surface.cpp.
View newest version in sPHENIX GitHub at line 39 of file Surface.cpp
Referenced by Acts::Test::BOOST_AUTO_TEST_CASE(), and Acts::BoundarySurfaceT< T >::onBoundary().
|
pure virtual |
Local to global transformation Generalized local to global transformation for the surface types. Since some surface types need the global momentum/direction to resolve sign ambiguity this is also provided
gctx | The current geometry context object, e.g. alignment |
lposition | local 2D position in specialized surface frame |
momentum | global 3D momentum representation (optionally ignored) |
position | global 3D position to be filled (given by reference for method symmetry) |
Implemented in Acts::LineSurface, Acts::CylinderSurface, Acts::ConeSurface, Acts::PlaneSurface, and Acts::SurfaceStub.
Referenced by Acts::SurfaceArrayCreator::makeGlobalVertices(), FW::CsvPlanarClusterWriter::writeT(), and FW::RootPlanarClusterWriter::writeT().
|
inlinestatic |
Factory for producing memory managed instances of Surface. Will forward all parameters and will attempt to find a suitable constructor.
Definition at line 104 of file Surface.hpp.
View newest version in sPHENIX GitHub at line 104 of file Surface.hpp
References T.
|
pure virtual |
Return properly formatted class name.
Implemented in Acts::LineSurface, Acts::ConeSurface, Acts::CylinderSurface, Acts::PlaneSurface, Acts::SurfaceStub, Acts::StrawSurface, and Acts::PerigeeSurface.
|
pure virtual |
Return method for the normal vector of the surface The normal vector can only be generally defined at a given local position It requires a local position to be given (in general)
gctx | The current geometry context object, e.g. alignment |
lposition | is the local position where the normal vector is constructed |
Implemented in Acts::CylinderSurface, Acts::ConeSurface, Acts::PlaneSurface, Acts::LineSurface, and Acts::SurfaceStub.
Referenced by Acts::Test::BOOST_AUTO_TEST_CASE(), Acts::PlaneLayer::buildApproachDescriptor(), normal(), and ActsFatras::Interactor< generator_t, physics_list_t, hit_surface_selector_t >::operator()().
|
virtual |
Return method for the normal vector of the surface The normal vector can only be generally defined at a given local position It requires a local position to be given (in general)
position | is the global position where the normal vector is constructed |
gctx | The current geometry context object, e.g. alignment |
Reimplemented in Acts::CylinderSurface, Acts::ConeSurface, and Acts::SurfaceStub.
|
inlinevirtual |
Return method for the normal vector of the surface
It will return a normal vector at the center() position
gctx | The current geometry context object, e.g. alignment |
Reimplemented in Acts::SurfaceStub.
Definition at line 206 of file Surface.hpp.
View newest version in sPHENIX GitHub at line 206 of file Surface.hpp
References center(), and normal().
|
virtual |
Comparison (non-equality) operator
sf | Source surface for the comparison |
Definition at line 131 of file Surface.cpp.
View newest version in sPHENIX GitHub at line 131 of file Surface.cpp
References Acts::operator==().
Acts::Surface & Acts::Surface::operator= | ( | const Surface & | other | ) |
Assignment operator
other | Source surface for the assignment |
Definition at line 62 of file Surface.cpp.
View newest version in sPHENIX GitHub at line 62 of file Surface.cpp
References m_associatedDetElement, m_associatedLayer, m_surfaceMaterial, m_transform, and Acts::GeometryObject::operator=().
Referenced by Acts::LineSurface::operator=(), Acts::PlaneSurface::operator=(), Acts::ConeSurface::operator=(), and Acts::CylinderSurface::operator=().
|
virtual |
Comparison (equality) operator The strategy for comparison is (a) first pointer comparison (b) then type comparison (c) then bounds comparison (d) then transform comparison
other | source surface for the comparison |
Definition at line 74 of file Surface.cpp.
View newest version in sPHENIX GitHub at line 74 of file Surface.cpp
References bounds(), e, m_associatedDetElement, m_surfaceMaterial, m_transform, and type().
|
pure virtual |
Calucation of the path correction for incident
gctx | The current geometry context object, e.g. alignment |
position | global 3D position - considered to be on surface but not inside bounds (check is done) |
direction | global 3D momentum direction |
Implemented in Acts::LineSurface, Acts::CylinderSurface, Acts::ConeSurface, Acts::PlaneSurface, and Acts::SurfaceStub.
Referenced by Acts::Layer::compatibleSurfaces(), and Acts::detail::PointwiseMaterialInteraction::evaluateMaterialProperties().
|
pure virtual |
Return a Polyhedron for this object
gctx | The current geometry context object, e.g. alignment |
lseg | Number of segments along curved lines, if the lseg is set to one, only the corners and the extrema are given, otherwise it represents the number of segments for a full 2*M_PI circle and is scaled to the relevant sector |
Implemented in Acts::CylinderSurface, Acts::ConeSurface, Acts::PlaneSurface, Acts::SurfaceStub, Acts::StrawSurface, Acts::PerigeeSurface, and Acts::Test::LineSurfaceStub.
|
inlinevirtual |
Return mehtod for the reference frame This is the frame in which the covariance matrix is defined (specialized by all surfaces)
gctx | The current geometry context object, e.g. alignment |
position | global 3D position - considered to be on surface but not inside bounds (check is done) |
momentum | global 3D momentum representation (optionally ignored) |
Reimplemented in Acts::LineSurface, Acts::ConeSurface, and Acts::CylinderSurface.
Definition at line 40 of file Surface.ipp.
View newest version in sPHENIX GitHub at line 40 of file Surface.ipp
References Acts::Test::transform.
Referenced by Acts::Test::BOOST_AUTO_TEST_CASE(), and Acts::AtlasStepper< ConstantBField >::covarianceTransport().
|
inline |
Return method for the associated Material to this surface
Definition at line 132 of file Surface.ipp.
View newest version in sPHENIX GitHub at line 132 of file Surface.ipp
Referenced by Acts::Test::BOOST_AUTO_TEST_CASE(), Acts::SurfaceMaterialMapper::checkAndInsert(), Acts::JsonGeometryConverter::convertToRep(), Acts::KalmanFitter< propagator_t, updater_t, smoother_t, outlier_finder_t, calibrator_t, input_converter_t, output_converter_t >::Actor< source_link_t, parameters_t >::filter(), Acts::CombinatorialKalmanFilter< propagator_t, updater_t, smoother_t, source_link_selector_t, branch_stopper_t, calibrator_t, input_converter_t, output_converter_t >::Actor< source_link_t, parameters_t >::filter(), Acts::KalmanFitter< propagator_t, updater_t, smoother_t, outlier_finder_t, calibrator_t, input_converter_t, output_converter_t >::Actor< source_link_t, parameters_t >::materialInteractor(), Acts::CombinatorialKalmanFilter< propagator_t, updater_t, smoother_t, source_link_selector_t, branch_stopper_t, calibrator_t, input_converter_t, output_converter_t >::Actor< source_link_t, parameters_t >::materialInteractor(), Acts::MaterialSurface::operator()(), Acts::SurfaceSelector::operator()(), Acts::MaterialInteractor::operator()(), ActsFatras::Interactor< generator_t, physics_list_t, hit_surface_selector_t >::operator()(), and Acts::Layer::surfaceOnApproach().
|
inline |
Return method for the shared pointer to the associated Material
Definition at line 137 of file Surface.ipp.
View newest version in sPHENIX GitHub at line 137 of file Surface.ipp
Referenced by FW::RootMaterialWriter::collectMaterial(), and Acts::TrackingVolume::glueTrackingVolume().
|
virtual |
Output Method for std::ostream, to be overloaded by child classes
gctx | The current geometry context object, e.g. alignment |
sl | is the ostream to be dumped into |
Reimplemented in Acts::PerigeeSurface.
Definition at line 107 of file Surface.cpp.
View newest version in sPHENIX GitHub at line 107 of file Surface.cpp
References Acts::Test::transform.
|
inlinevirtual |
Return method for the surface Transform3D by reference In case a detector element is associated the surface transform is just forwarded to the detector element in order to keep the (mis-)alignment cache cetrally handled
gctx | The current geometry context object, e.g. alignment |
Definition at line 24 of file Surface.ipp.
View newest version in sPHENIX GitHub at line 24 of file Surface.ipp
References Acts::s_idTransform.
Referenced by Acts::JsonGeometryConverter::addSurfaceToJson(), Acts::Test::BOOST_AUTO_TEST_CASE(), Acts::PlaneLayer::buildApproachDescriptor(), Acts::LayerArrayCreator::createNavigationSurface(), Acts::ImpactPointEstimator< input_track_t, propagator_t, propagator_options_t >::get3dVertexCompatibility(), Acts::ProtoLayer::measure(), Acts::PlaneSurface::PlaneSurface(), and FW::Obj::ObjSurfaceWriter::write().
|
pure virtual |
Return method for the Surface type to avoid dynamic casts.
Implemented in Acts::CylinderSurface, Acts::PlaneSurface, Acts::ConeSurface, Acts::StrawSurface, Acts::PerigeeSurface, Acts::Test::LineSurfaceStub, and Acts::SurfaceStub.
Referenced by Acts::adjustBinUtility(), Acts::AtlasStepper< ConstantBField >::covarianceTransport(), Acts::LayerArrayCreator::createNavigationSurface(), Acts::Test::PlaneSelector::operator()(), operator==(), and FW::RootMaterialTrackWriter::writeT().
|
protected |
Pointer to the a DetectorElementBase.
Definition at line 455 of file Surface.hpp.
View newest version in sPHENIX GitHub at line 455 of file Surface.hpp
Referenced by operator=(), and operator==().
|
protected |
The associated layer Layer - layer in which the Surface is be embedded, nullptr if not associated
Definition at line 459 of file Surface.hpp.
View newest version in sPHENIX GitHub at line 459 of file Surface.hpp
Referenced by operator=().
|
protected |
The assoicated TrackingVolume - tracking volume in case the surface is a boundary surface, nullptr if not associated
Definition at line 463 of file Surface.hpp.
View newest version in sPHENIX GitHub at line 463 of file Surface.hpp
|
protected |
Possibility to attach a material descrption.
Definition at line 466 of file Surface.hpp.
View newest version in sPHENIX GitHub at line 466 of file Surface.hpp
Referenced by operator=(), and operator==().
|
protected |
Transform3D definition that positions (translation, rotation) the surface in global space
Definition at line 452 of file Surface.hpp.
View newest version in sPHENIX GitHub at line 452 of file Surface.hpp
Referenced by Acts::CylinderLayer::CylinderLayer(), operator=(), operator==(), Acts::PerigeeSurface::PerigeeSurface(), and Acts::PlaneSurface::PlaneSurface().