  | 
  
    ATLAS Offline Software
    
   | 
 
 
 
 
Go to the documentation of this file.
    5 #ifndef TRKEVENTCNVTOOLS_DETELEMENTSURFACE_H 
    6 #define TRKEVENTCNVTOOLS_DETELEMENTSURFACE_H 
   29 template<
int DIM, 
class T, 
class S> 
class ParametersT;
 
   40     std::unique_ptr<Surface>    
uniqueClone()
 const {
return nullptr; }
 
   48     MsgStream &                 
dump (MsgStream &sl)
 const { 
return sl;}
 
   49     std::ostream &              
dump (std::ostream &sl)
 const { 
return sl;};
 
   55     std::string                 
name()
 const { 
return "Trk::DetElementSurface";}
 
   57     virtual std::unique_ptr<ParametersBase<5, Trk::Charged>>
 
   67     virtual std::unique_ptr<ParametersBase<5, Trk::Charged>>
 
   76     virtual std::unique_ptr<ParametersBase<5, Trk::Neutral>>
 
   86     virtual std::unique_ptr<ParametersBase<5, Trk::Neutral>>
 
  
virtual Trk::DistanceSolution straightLineDistanceEstimate(const Amg::Vector3D &, const Amg::Vector3D &, bool) const
fast straight line distance evaluation to Surface - with bound option
 
const SurfaceBounds & bounds() const
Surface Bounds method.
 
const Amg::Vector3D * localToGlobal(const LocalParameters &) const
 
Surface * clone() const
Implicit constructor - uses the copy constructor.
 
const Identifier associatedDetectorElementIdentifier() const
 
Eigen::Matrix< double, 2, 1 > Vector2D
 
std::string name() const
Return properly formatted class name.
 
virtual Intersection straightLineIntersection(const Amg::Vector3D &, const Amg::Vector3D &, bool, Trk::BoundaryCheck) const
fast straight line intersection schema - standard: provides closest intersection and (signed) path le...
 
DetElementSurface(const Surface &rhs)
 
MsgStream & dump(MsgStream &sl) const
Output Method for MsgStream, to be overloaded by child classes.
 
bool insideBounds(const Amg::Vector2D &, double, double) const
virtual methods to be overwritten by the inherited surfaces
 
bool operator==(const Trk::Surface &) const
Equality operator.
 
DetElementSurface(Identifier id)
 
AmgSymMatrix(5) &GXFTrackState
 
const Amg::Vector3D * localToGlobal(const Amg::Vector2D &) const
 
virtual std::unique_ptr< ParametersBase< 5, Trk::Charged > > createUniqueTrackParameters(double, double, double, double, double, std::optional< AmgSymMatrix(5)>=std::nullopt) const
Use the Surface as a ParametersBase constructor, from local parameters - charged.
 
virtual std::unique_ptr< ParametersBase< 5, Trk::Charged > > createUniqueTrackParameters(const Amg::Vector3D &, const Amg::Vector3D &, double, std::optional< AmgSymMatrix(5)>=std::nullopt) const
Use the Surface as a ParametersBase constructor, from global parameters - charged.
 
virtual std::unique_ptr< ParametersBase< 5, Trk::Neutral > > createUniqueNeutralParameters(const Amg::Vector3D &, const Amg::Vector3D &, double, std::optional< AmgSymMatrix(5)>=std::nullopt) const
Use the Surface as a ParametersBase constructor, from global parameters - neutral.
 
std::ostream & dump(std::ostream &sl) const
Output Method for std::ostream, to be overloaded by child classes.
 
void localToGlobal(const Amg::Vector2D &, const Amg::Vector3D &, Amg::Vector3D &) const
Specified by each surface type: LocalToGlobal method without dynamic memory allocation.
 
virtual bool isOnSurface(const Amg::Vector3D &, const Trk::BoundaryCheck &, double, double) const
This method returns true if the GlobalPosition is on the Surface for both, within or without check of...
 
bool globalToLocal(const Amg::Vector3D &, const Amg::Vector3D &, Amg::Vector2D &) const
Specified by each surface type: GlobalToLocal method without dynamic memory allocation - boolean chec...
 
Ensure that the ATLAS eigen extensions are properly loaded.
 
bool insideBoundsCheck(const Amg::Vector2D &, const BoundaryCheck &) const
 
Eigen::Matrix< double, 3, 1 > Vector3D
 
virtual std::unique_ptr< ParametersBase< 5, Trk::Neutral > > createUniqueNeutralParameters(double, double, double, double, double, std::optional< AmgSymMatrix(5)>=std::nullopt) const
Use the Surface as a ParametersBase constructor, from local parameters - neutral.
 
SurfaceType type() const
Returns the Surface type to avoid dynamic casts.
 
const Amg::Vector2D * globalToLocal(const Amg::Vector3D &, const double) const
 
virtual DistanceSolution straightLineDistanceEstimate(const Amg::Vector3D &, const Amg::Vector3D &) const
fast straight line distance evaluation to Surface
 
std::unique_ptr< Surface > uniqueClone() const