ECCE @ EIC Software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Acts::ConeLayer Class Reference

#include <acts/blob/master/Core/include/Acts/Geometry/ConeLayer.hpp>

+ Inheritance diagram for Acts::ConeLayer:
+ Collaboration diagram for Acts::ConeLayer:

Public Member Functions

 ConeLayer ()=delete
 Default Constructor - delete.
 
 ConeLayer (const ConeLayer &cla)=delete
 Copy constructor of ConeLayer - delete.
 
ConeLayer & operator= (const ConeLayer &)=delete
 Assignment operator for ConeLayers - delete.
 
 ~ConeLayer () override=default
 Destructor.
 
const ConeSurface & surfaceRepresentation () const override
 Transforms the layer into a Surface representation for extrapolation.
 
ConeSurface & surfaceRepresentation () override
 
- Public Member Functions inherited from Acts::ConeSurface
 ~ConeSurface () override=default
 Destructor - defaulted.
 
 ConeSurface ()=delete
 Default Constructor - deleted.
 
ConeSurface & operator= (const ConeSurface &other)
 
const Vector3D binningPosition (const GeometryContext &gctx, BinningValue bValue) const final
 
SurfaceType type () const override
 Return the surface type.
 
const RotationMatrix3D referenceFrame (const GeometryContext &gctx, const Vector3D &position, const Vector3D &momentum) const final
 
const Vector3D normal (const GeometryContext &gctx, const Vector2D &lposition) const final
 
const Vector3D normal (const GeometryContext &gctx, const Vector3D &position) const final
 
virtual const Vector3D rotSymmetryAxis (const GeometryContext &gctx) const
 
const ConeBounds & bounds () const final
 This method returns the ConeBounds by reference.
 
void localToGlobal (const GeometryContext &gctx, const Vector2D &lposition, const Vector3D &momentum, Vector3D &position) const final
 
bool globalToLocal (const GeometryContext &gctx, const Vector3D &position, const Vector3D &momentum, Vector2D &lposition) const final
 
Intersection intersectionEstimate (const GeometryContext &gctx, const Vector3D &position, const Vector3D &direction, const BoundaryCheck &bcheck=false) const final
 Straight line intersection schema - provides closest intersection and (signed) path length.
 
SurfaceIntersection intersect (const GeometryContext &gctx, const Vector3D &position, const Vector3D &direction, const BoundaryCheck &bcheck) const final
 
double pathCorrection (const GeometryContext &gctx, const Vector3D &position, const Vector3D &direction) const final
 
Polyhedron polyhedronRepresentation (const GeometryContext &gctx, size_t lseg) const override
 
std::string name () const override
 Return properly formatted class name for screen output.
 
- 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 Transform3D & transform (const GeometryContext &gctx) const
 
virtual const Vector3D center (const GeometryContext &gctx) const
 
virtual const Vector3D 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 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 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 std::ostream & toStream (const GeometryContext &gctx, std::ostream &sl) const
 
- 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 double binningPositionValue (const GeometryContext &gctx, BinningValue bValue) const
 
void assignGeoID (const GeometryID &geoID)
 
- 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 &)=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 Vector3D &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
 
template<typename options_t >
std::vector< SurfaceIntersection > compatibleSurfaces (const GeometryContext &gctx, const Vector3D &position, const Vector3D &direction, const options_t &options) const
 Decompose Layer into (compatible) surfaces.
 
template<typename options_t >
const SurfaceIntersection surfaceOnApproach (const GeometryContext &gctx, const Vector3D &position, const Vector3D &direction, const options_t &options) const
 
const Layer * nextLayer (const GeometryContext &gctx, const Vector3D &position, const Vector3D &direction) const
 
const TrackingVolume * trackingVolume () const
 
const AbstractVolume * representingVolume () const
 
LayerType layerType () const
 return the LayerType
 

Static Public Member Functions

static MutableLayerPtr create (std::shared_ptr< const Transform3D > transform, std::shared_ptr< const ConeBounds > cbounds, std::unique_ptr< SurfaceArray > surfaceArray, double thickness=0., std::unique_ptr< ApproachDescriptor > ad=nullptr, LayerType laytyp=Acts::active)
 

Protected Member Functions

 ConeLayer (std::shared_ptr< const Transform3D > transform, std::shared_ptr< const ConeBounds > cbounds, std::unique_ptr< SurfaceArray > surfaceArray, double thickness=0., std::unique_ptr< ApproachDescriptor > ade=nullptr, LayerType laytyp=Acts::active)
 
 ConeLayer (const ConeLayer &cla, const Transform3D &shift)
 
- Protected Member Functions inherited from Acts::ConeSurface
 ConeSurface (std::shared_ptr< const Transform3D > htrans, double alpha, bool symmetric=false)
 
 ConeSurface (std::shared_ptr< const Transform3D > htrans, double alpha, double zmin, double zmax, double halfPhi=M_PI)
 
 ConeSurface (std::shared_ptr< const Transform3D > htrans, const std::shared_ptr< const ConeBounds > &cbounds)
 
 ConeSurface (const ConeSurface &other)
 
 ConeSurface (const GeometryContext &gctx, const ConeSurface &other, const Transform3D &transf)
 
- Protected Member Functions inherited from Acts::Surface
 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 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)
 

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
}
 
- Protected Attributes inherited from Acts::ConeSurface
std::shared_ptr< const ConeBounds > m_bounds
 bounds (shared)
 
- 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
 

Detailed Description

Class to describe a conical detector layer for tracking, it inhertis from both, Layer base class and ConeSurface class

Definition at line 29 of file ConeLayer.hpp.

View newest version in sPHENIX GitHub at line 29 of file ConeLayer.hpp

Constructor & Destructor Documentation

Acts::ConeLayer::ConeLayer ( )
delete

Default Constructor - delete.

Referenced by create().

+ Here is the caller graph for this function:

Acts::ConeLayer::ConeLayer ( const ConeLayer &  cla)
delete

Copy constructor of ConeLayer - delete.

Acts::ConeLayer::~ConeLayer ( )
overridedefault

Destructor.

Acts::ConeLayer::ConeLayer ( std::shared_ptr< const Transform3D >  transform,
std::shared_ptr< const ConeBounds >  cbounds,
std::unique_ptr< SurfaceArray >  surfaceArray,
double  thickness = 0.,
std::unique_ptr< ApproachDescriptor >  ade = nullptr,
LayerType  laytyp = Acts::active 
)
protected

Private constructor with arguments

Parameters
transformis the 3D transform that poisitions the layer in 3D frame
cboundsis the conical bound description
surfaceArrayis the array of sensitive surfaces
thicknessis the layer thickness along the normal axis
adeis the approach descriptor for navigation towards the layer
laytypis the layer type

Definition at line 19 of file ConeLayer.cpp.

View newest version in sPHENIX GitHub at line 19 of file ConeLayer.cpp

Acts::ConeLayer::ConeLayer ( const ConeLayer &  cla,
const Transform3D &  shift 
)
protected

Private copy constructor with shift, called by create(args*)

Parameters
clais the source clone layer
shiftis the additional shift applied after copying

Member Function Documentation

static MutableLayerPtr Acts::ConeLayer::create ( std::shared_ptr< const Transform3D >  transform,
std::shared_ptr< const ConeBounds >  cbounds,
std::unique_ptr< SurfaceArray >  surfaceArray,
double  thickness = 0.,
std::unique_ptr< ApproachDescriptor >  ad = nullptr,
LayerType  laytyp = Acts::active 
)
inlinestatic

Factory for shared layer

Parameters
transformis the 3D transform that poisitions the layer in 3D frame
cboundsis the conical bound description
surfaceArrayis the array of sensitive surfaces
thicknessis the layer thickness along the normal axis
adis the approach descriptor for navigation towards the layer
laytypis the layer type
Returns
is a shared pointer to a layer

Definition at line 43 of file ConeLayer.hpp.

View newest version in sPHENIX GitHub at line 43 of file ConeLayer.hpp

References ConeLayer(), and Acts::Layer::thickness().

Referenced by Acts::Test::Layers::BOOST_AUTO_TEST_CASE().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

ConeLayer& Acts::ConeLayer::operator= ( const ConeLayer &  )
delete

Assignment operator for ConeLayers - delete.

const Acts::ConeSurface & Acts::ConeLayer::surfaceRepresentation ( ) const
overridevirtual

Transforms the layer into a Surface representation for extrapolation.

Implements Acts::Layer.

Definition at line 28 of file ConeLayer.cpp.

View newest version in sPHENIX GitHub at line 28 of file ConeLayer.cpp

Acts::ConeSurface & Acts::ConeLayer::surfaceRepresentation ( )
overridevirtual

Implements Acts::Layer.

Definition at line 32 of file ConeLayer.cpp.

View newest version in sPHENIX GitHub at line 32 of file ConeLayer.cpp


The documentation for this class was generated from the following files: