Analysis Software
Documentation for sPHENIX simulation software
|
#include <acts/blob/sPHENIX/Core/include/Acts/Geometry/PlaneLayer.hpp>
Public Member Functions | |
PlaneLayer ()=delete | |
PlaneLayer (const PlaneLayer &pla)=delete | |
~PlaneLayer () override=default | |
PlaneLayer & | operator= (const PlaneLayer &)=delete |
const PlaneSurface & | surfaceRepresentation () const override |
PlaneSurface & | surfaceRepresentation () override |
Public Member Functions inherited from Acts::PlaneSurface | |
~PlaneSurface () override=default | |
PlaneSurface ()=delete | |
PlaneSurface & | operator= (const PlaneSurface &other) |
Vector3 | normal (const GeometryContext &gctx, const Vector2 &lposition) const final |
Vector3 | binningPosition (const GeometryContext &gctx, BinningValue bValue) const final |
SurfaceType | type () const override |
Return the surface type. | |
const SurfaceBounds & | bounds () const override |
Return method for bounds object of this surfrace. | |
Vector3 | localToGlobal (const GeometryContext &gctx, const Vector2 &lposition, const Vector3 &direction) const override |
Result< Vector2 > | globalToLocal (const GeometryContext &gctx, const Vector3 &position, const Vector3 &direction, double tolerance=s_onSurfaceTolerance) const override |
double | pathCorrection (const GeometryContext &gctx, const Vector3 &position, const Vector3 &direction) const final |
SurfaceMultiIntersection | intersect (const GeometryContext &gctx, const Vector3 &position, const Vector3 &direction, const BoundaryCheck &bcheck=false, ActsScalar tolerance=s_onSurfaceTolerance) const final |
Straight line intersection. | |
Polyhedron | polyhedronRepresentation (const GeometryContext &gctx, size_t lseg) const override |
std::string | name () const override |
Return properly formatted class name for screen output. | |
ActsMatrix< 2, 3 > | localCartesianToBoundLocalDerivative (const GeometryContext &gctx, const Vector3 &position) const final |
Public Member Functions inherited from Acts::Surface | |
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 const Transform3 & | transform (const GeometryContext &gctx) const |
virtual Vector3 | center (const GeometryContext &gctx) const |
virtual Vector3 | normal (const GeometryContext &gctx, const Vector3 &position) const |
virtual Vector3 | normal (const GeometryContext &gctx) const |
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 | assignDetectorElement (const DetectorElementBase &detelement) |
void | assignSurfaceMaterial (std::shared_ptr< const ISurfaceMaterial > material) |
bool | isOnSurface (const GeometryContext &gctx, const Vector3 &position, const Vector3 &direction, const BoundaryCheck &bcheck=true) const |
virtual bool | insideBounds (const Vector2 &lposition, const BoundaryCheck &bcheck=true) const |
virtual Acts::RotationMatrix3 | referenceFrame (const GeometryContext &gctx, const Vector3 &position, const Vector3 &direction) const |
virtual BoundToFreeMatrix | boundToFreeJacobian (const GeometryContext &gctx, const BoundVector &boundParams) const |
virtual FreeToBoundMatrix | freeToBoundJacobian (const GeometryContext &gctx, const FreeVector ¶meters) const |
virtual FreeToPathMatrix | freeToPathDerivative (const GeometryContext &gctx, const FreeVector ¶meters) const |
virtual std::ostream & | toStream (const GeometryContext &gctx, std::ostream &sl) const |
std::string | toString (const GeometryContext &gctx) const |
AlignmentToBoundMatrix | alignmentToBoundDerivative (const GeometryContext &gctx, const FreeVector ¶meters, const FreeVector &pathDerivative) const |
virtual AlignmentToPathMatrix | alignmentToPathDerivative (const GeometryContext &gctx, const FreeVector ¶meters) const |
Public Member Functions inherited from Acts::GeometryObject | |
GeometryObject ()=default | |
Defaulted constructor. | |
GeometryObject (const GeometryObject &)=default | |
Defaulted copy constructor. | |
GeometryObject (const GeometryIdentifier &geometryId) | |
GeometryObject & | operator= (const GeometryObject &geometryId) |
const GeometryIdentifier & | geometryId () const |
virtual double | binningPositionValue (const GeometryContext &gctx, BinningValue bValue) const |
void | assignGeometryId (const GeometryIdentifier &geometryId) |
Public Member Functions inherited from Acts::Layer | |
Layer ()=delete | |
Default Constructor - deleted. | |
Layer (const Layer &)=delete | |
Copy Constructor - deleted. | |
virtual | ~Layer ()=default |
Destructor. | |
Layer & | operator= (const Layer &layer)=delete |
const SurfaceArray * | surfaceArray () const |
Return the entire SurfaceArray, returns a nullptr if no SurfaceArray. | |
SurfaceArray * | surfaceArray () |
Non-const version. | |
double | thickness () const |
virtual bool | isOnLayer (const GeometryContext &gctx, const Vector3 &position, const BoundaryCheck &bcheck=true) const |
const ApproachDescriptor * | approachDescriptor () const |
Return method for the approach descriptor, can be nullptr. | |
ApproachDescriptor * | approachDescriptor () |
Non-const version of the approach descriptor. | |
template<typename options_t > | |
bool | resolve (const options_t &options) const |
virtual bool | resolve (bool resolveSensitive, bool resolveMaterial, bool resolvePassive) const |
boost::container::small_vector < SurfaceIntersection, 10 > | compatibleSurfaces (const GeometryContext &gctx, const Vector3 &position, const Vector3 &direction, const NavigationOptions< Surface > &options) const |
Decompose Layer into (compatible) surfaces. | |
SurfaceIntersection | surfaceOnApproach (const GeometryContext &gctx, const Vector3 &position, const Vector3 &direction, const NavigationOptions< Layer > &options) const |
const Layer * | nextLayer (const GeometryContext &gctx, const Vector3 &position, const Vector3 &direction) const |
const TrackingVolume * | trackingVolume () const |
const AbstractVolume * | representingVolume () const |
LayerType | layerType () const |
return the LayerType | |
Static Public Member Functions | |
static MutableLayerPtr | create (const Transform3 &transform, std::shared_ptr< const PlanarBounds > pbounds, std::unique_ptr< SurfaceArray > surfaceArray=nullptr, double thickness=0., std::unique_ptr< ApproachDescriptor > ad=nullptr, LayerType laytyp=Acts::active) |
Protected Member Functions | |
PlaneLayer (const Transform3 &transform, std::shared_ptr< const PlanarBounds > &pbounds, std::unique_ptr< SurfaceArray > surfaceArray=nullptr, double thickness=0., std::unique_ptr< ApproachDescriptor > ades=nullptr, LayerType laytyp=Acts::active) | |
PlaneLayer (const PlaneLayer &pla, const Transform3 &shift) | |
Protected Member Functions inherited from Acts::PlaneSurface | |
PlaneSurface (const PlaneSurface &other) | |
PlaneSurface (const GeometryContext &gctx, const PlaneSurface &other, const Transform3 &transform) | |
PlaneSurface (const Vector3 ¢er, const Vector3 &normal) | |
PlaneSurface (std::shared_ptr< const PlanarBounds > pbounds, const DetectorElementBase &detelement) | |
PlaneSurface (const Transform3 &transform, std::shared_ptr< const PlanarBounds > pbounds=nullptr) | |
Protected Member Functions inherited from Acts::Surface | |
Surface (const Transform3 &transform=Transform3::Identity()) | |
Surface (const Surface &other) | |
Surface (const DetectorElementBase &detelement) | |
Surface (const GeometryContext &gctx, const Surface &other, const Transform3 &shift) | |
Protected Member Functions inherited from Acts::Layer | |
Layer (std::unique_ptr< SurfaceArray > surfaceArray, double thickness=0., std::unique_ptr< ApproachDescriptor > ades=nullptr, LayerType laytyp=passive) | |
void | encloseTrackingVolume (const TrackingVolume &tvol) |
Private Member Functions | |
void | buildApproachDescriptor () |
private helper method to build approach surfaces | |
Additional Inherited Members | |
Public Types inherited from Acts::Surface | |
enum | SurfaceType { Cone = 0, Cylinder = 1, Disc = 2, Perigee = 3, Plane = 4, Straw = 5, Curvilinear = 6, Other = 7 } |
Static Public Attributes inherited from Acts::Surface | |
static std::array< std::string, SurfaceType::Other > | s_surfaceTypeNames |
Helper strings for screen output. | |
Protected Attributes inherited from Acts::PlaneSurface | |
std::shared_ptr< const PlanarBounds > | m_bounds |
the bounds of this surface | |
Protected Attributes inherited from Acts::Layer | |
NextLayers | m_nextLayers |
the previous Layer according to BinGenUtils | |
const BinUtility * | m_nextLayerUtility = nullptr |
std::unique_ptr< const SurfaceArray > | m_surfaceArray = nullptr |
double | m_layerThickness = 0. |
Thickness of the Layer. | |
std::unique_ptr< const ApproachDescriptor > | m_approachDescriptor = nullptr |
const TrackingVolume * | m_trackingVolume = nullptr |
the enclosing TrackingVolume | |
std::unique_ptr< AbstractVolume > | m_representingVolume = nullptr |
LayerType | m_layerType |
make a passive/active either way | |
int | m_ssRepresentingSurface = 0 |
sub structure indication | |
int | m_ssSensitiveSurfaces = 0 |
int | m_ssApproachSurfaces = 0 |
Class to describe a planar detector layer for tracking, it inhertis from both, Layer base class and PlaneSurface class
Definition at line 29 of file PlaneLayer.hpp.
View newest version in sPHENIX GitHub at line 29 of file PlaneLayer.hpp
|
delete |
|
delete |
|
overridedefault |
|
protected |
Private constructor for a PlaneLayer is called by create(args*)
transform | which places the layer in the global frame |
pbounds | the planar bounds that define the layer dimensions |
surfaceArray | is the surface array that holds the sensitive surfaces |
thickness | is the thickness of the layer (normal direction to plane) |
ades | is the approach descriptor for describing the approach surface |
laytyp | is the layer type |
Definition at line 19 of file PlaneLayer.cpp.
View newest version in sPHENIX GitHub at line 19 of file PlaneLayer.cpp
References Acts::Layer::approachDescriptor(), Acts::Surface::associateLayer(), buildApproachDescriptor(), Acts::Layer::m_approachDescriptor, Acts::Layer::m_surfaceArray, and Acts::ApproachDescriptor::registerLayer().
|
protected |
Private constructor for a PlaneLayer, is called by create(arge*
pla | is the plain layer to be coped |
shift | is the additional shift applied after copying |
|
private |
private helper method to build approach surfaces
Definition at line 48 of file PlaneLayer.cpp.
View newest version in sPHENIX GitHub at line 48 of file PlaneLayer.cpp
References Acts::Surface::associateLayer(), Acts::Surface::center(), Acts::PlaneSurface::m_bounds, Acts::Layer::m_layerThickness, testing::internal::move(), Acts::Surface::normal(), and Acts::Surface::transform().
Referenced by PlaneLayer().
|
inlinestatic |
Factory for a shared plane layer
transform | which places the layer in the global frame |
pbounds | the planar bounds that define the layer dimensions |
surfaceArray | is the surface array that holds the sensitive surfaces |
thickness | is the thickness of the layer (normal direction to plane) |
ad | is the approach descriptor for describing the approach surface |
laytyp | is the layer type |
Definition at line 41 of file PlaneLayer.hpp.
View newest version in sPHENIX GitHub at line 41 of file PlaneLayer.hpp
References testing::internal::move(), PlaneLayer(), Acts::Layer::surfaceArray(), and Acts::Layer::thickness().
Referenced by Acts::Test::Layers::BOOST_AUTO_TEST_CASE(), Acts::Test::BOOST_AUTO_TEST_CASE(), Acts::Test::CubicTrackingGeometry::operator()(), and Acts::LayerCreator::planeLayer().
|
delete |
|
overridevirtual |
Transforms the layer into a Surface representation for extrapolation
Implements Acts::Layer.
Definition at line 40 of file PlaneLayer.cpp.
View newest version in sPHENIX GitHub at line 40 of file PlaneLayer.cpp
|
overridevirtual |
Implements Acts::Layer.
Definition at line 44 of file PlaneLayer.cpp.
View newest version in sPHENIX GitHub at line 44 of file PlaneLayer.cpp