DD4hep  1.30.0
Detector Description Toolkit for High Energy Physics
Public Member Functions | Private Attributes | List of all members
SimpleCylinderImpl Class Reference

helper class for a simple cylinder surface parallel to z with a given length - used as IP layer More...

Inheritance diagram for SimpleCylinderImpl:
dd4hep::rec::VolCylinderImpl dd4hep::rec::VolSurfaceBase dd4hep::rec::ISurface

Public Member Functions

 SimpleCylinderImpl (dd4hep::Volume vol, SurfaceType type, double thickness_inner, double thickness_outer, Vector3D origin)
 standard c'tor with all necessary arguments - origin is (0,0,0) if not given. More...
 
void setHalfLength (double half_length)
 
void setID (dd4hep::FieldID id)
 
bool insideBounds (const Vector3D &point, double epsilon) const
 Checks if the given point lies within the surface. More...
 
virtual std::vector< std::pair< Vector3D, Vector3D > > getLines (unsigned nMax=100)
 
- Public Member Functions inherited from dd4hep::rec::VolCylinderImpl
 VolCylinderImpl ()
 default c'tor More...
 
 VolCylinderImpl (Volume vol, SurfaceType type, double thickness_inner, double thickness_outer, Vector3D origin)
 
virtual Vector3D u (const Vector3D &point=Vector3D()) const
 
virtual Vector3D normal (const Vector3D &point=Vector3D()) const
 
virtual double distance (const Vector3D &point) const
 
virtual Vector2D globalToLocal (const Vector3D &point) const
 
virtual Vector3D localToGlobal (const Vector2D &point) const
 
- Public Member Functions inherited from dd4hep::rec::VolSurfaceBase
virtual ~VolSurfaceBase ()=default
 
 VolSurfaceBase ()=default
 default c'tor More...
 
 VolSurfaceBase (SurfaceType typ, double thickness_inner, double thickness_outer, Vector3D u_val, Vector3D v_val, Vector3D n, Vector3D o, Volume vol, int identifier)
 
 VolSurfaceBase (const VolSurfaceBase &c)
 Copy the from object. More...
 
Volume volume () const
 the volume to which this surface is attached. More...
 
virtual long64 id () const
 The id of this surface. More...
 
virtual const SurfaceTypetype () const
 
virtual Vector3D v (const Vector3D &point=Vector3D()) const
 
virtual const Vector3Dorigin () const
 
virtual const IMaterialinnerMaterial () const
 Access to the material in opposite direction of the normal. More...
 
virtual const IMaterialouterMaterial () const
 Access to the material in direction of the normal. More...
 
virtual double innerThickness () const
 
virtual double outerThickness () const
 
virtual double length_along_u () const
 
virtual double length_along_v () const
 
void setInnerMaterial (const IMaterial &mat)
 set the inner Material More...
 
void setOuterMaterial (const IMaterial &mat)
 set the outer Materal More...
 
- Public Member Functions inherited from dd4hep::rec::ISurface
virtual ~ISurface ()
 Destructor. More...
 

Private Attributes

double _half_length
 

Additional Inherited Members

- Protected Member Functions inherited from dd4hep::rec::VolSurfaceBase
virtual void setU (const Vector3D &u)
 setter for daughter classes More...
 
virtual void setV (const Vector3D &v)
 setter for daughter classes More...
 
virtual void setNormal (const Vector3D &n)
 setter for daughter classes More...
 
virtual void setOrigin (const Vector3D &o)
 setter for daughter classes More...
 
- Protected Attributes inherited from dd4hep::rec::VolSurfaceBase
SurfaceType _type {}
 
Vector3D _u {}
 
Vector3D _v {}
 
Vector3D _n {}
 
Vector3D _o {}
 
double _th_i {0}
 
double _th_o {0}
 
MaterialData _innerMat {}
 
MaterialData _outerMat {}
 
Volume _vol {}
 
long64 _id {0}
 
unsigned _refCount {0}
 

Detailed Description

helper class for a simple cylinder surface parallel to z with a given length - used as IP layer

Definition at line 45 of file Beampipe_o1_v01_geo.cpp.

Constructor & Destructor Documentation

◆ SimpleCylinderImpl()

SimpleCylinderImpl::SimpleCylinderImpl ( dd4hep::Volume  vol,
SurfaceType  type,
double  thickness_inner,
double  thickness_outer,
Vector3D  origin 
)
inline

standard c'tor with all necessary arguments - origin is (0,0,0) if not given.

Definition at line 49 of file Beampipe_o1_v01_geo.cpp.

Member Function Documentation

◆ getLines()

virtual std::vector< std::pair<Vector3D, Vector3D> > SimpleCylinderImpl::getLines ( unsigned  nMax = 100)
inlinevirtual

Reimplemented from dd4hep::rec::VolSurfaceBase.

Definition at line 64 of file Beampipe_o1_v01_geo.cpp.

◆ insideBounds()

bool SimpleCylinderImpl::insideBounds ( const Vector3D point,
double  epsilon 
) const
inlinevirtual

Checks if the given point lies within the surface.

Reimplemented from dd4hep::rec::VolSurfaceBase.

Definition at line 60 of file Beampipe_o1_v01_geo.cpp.

◆ setHalfLength()

void SimpleCylinderImpl::setHalfLength ( double  half_length)
inline

Definition at line 54 of file Beampipe_o1_v01_geo.cpp.

◆ setID()

void SimpleCylinderImpl::setID ( dd4hep::FieldID  id)
inline

Definition at line 57 of file Beampipe_o1_v01_geo.cpp.

Member Data Documentation

◆ _half_length

double SimpleCylinderImpl::_half_length
private

Definition at line 46 of file Beampipe_o1_v01_geo.cpp.


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