#include <Cylinder.h>
Public Types | |
typedef ReferenceCountingPointer< Cylinder > | BoundCylinderPointer |
typedef ConstReferenceCountingPointer< Cylinder > | ConstBoundCylinderPointer |
typedef ConstReferenceCountingPointer< Cylinder > | ConstCylinderPointer |
typedef ReferenceCountingPointer< Cylinder > | CylinderPointer |
Public Types inherited from Surface | |
using | Base = GloballyPositioned< float > |
using | Side = SurfaceOrientation::Side |
Public Types inherited from GloballyPositioned< float > | |
typedef Point3DBase< float, GlobalTag > | GlobalPoint |
typedef Vector3DBase< float, GlobalTag > | GlobalVector |
typedef Point3DBase< float, LocalTag > | LocalPoint |
typedef Vector3DBase< float, LocalTag > | LocalVector |
typedef Point3DBase< float, GlobalTag > | PositionType |
typedef TkRotation< float > | RotationType |
typedef float | Scalar |
Public Member Functions | |
template<typename... Args> | |
Cylinder (Scalar radius, Args &&...args) | |
Cylinder (const PositionType &pos, const RotationType &rot, SimpleCylinderBounds const &bounds) | |
Plane | fastTangent (const GlobalPoint &aPoint) const |
tangent plane to surface from global point More... | |
Plane | fastTangent (const LocalPoint &aPoint) const |
tangent plane to surface from local point More... | |
Scalar | radius () const |
Radius of the cylinder. More... | |
Side | side (const LocalPoint &p, Scalar toler) const override |
ConstReferenceCountingPointer< TangentPlane > | tangentPlane (const GlobalPoint &) const override |
tangent plane to surface from global point More... | |
ConstReferenceCountingPointer< TangentPlane > | tangentPlane (const LocalPoint &) const override |
tangent plane to surface from local point More... | |
~Cylinder () override | |
Public Member Functions inherited from Surface | |
const Bounds & | bounds () const |
const MediumProperties & | mediumProperties () const |
std::pair< float, float > const & | phiSpan () const |
std::pair< float, float > const & | rSpan () const |
void | setMediumProperties (const MediumProperties &mp) |
virtual Side | side (const GlobalPoint &p, Scalar tolerance=0) const |
GlobalPoint | toGlobal (const Point2DBase< Scalar, LocalTag > lp) const |
std::pair< float, float > const & | zSpan () const |
~Surface () override | |
Public Member Functions inherited from BasicReferenceCounted | |
void | addReference () const |
BasicReferenceCounted () | |
BasicReferenceCounted (const BasicReferenceCounted &) | |
BasicReferenceCounted (BasicReferenceCounted &&)=default | |
BasicReferenceCounted & | operator= (BasicReferenceCounted &&)=default |
BasicReferenceCounted & | operator= (const BasicReferenceCounted &) |
unsigned int | references () const |
void | removeReference () const |
virtual | ~BasicReferenceCounted () |
Public Member Functions inherited from GloballyPositioned< float > | |
float | eta () const |
GloballyPositioned () | |
GloballyPositioned (const PositionType &pos, const RotationType &rot) | |
void | move (const GlobalVector &displacement) |
float | phi () const |
const PositionType & | position () const |
void | rotate (const RotationType &rotation) |
const RotationType & | rotation () const |
GlobalPoint | toGlobal (const LocalPoint &lp) const |
Point3DBase< U, GlobalTag > | toGlobal (const Point3DBase< U, LocalTag > &lp) const |
GlobalVector | toGlobal (const LocalVector &lv) const |
Vector3DBase< U, GlobalTag > | toGlobal (const Vector3DBase< U, LocalTag > &lv) const |
LocalPoint | toLocal (const GlobalPoint &gp) const |
Point3DBase< U, LocalTag > | toLocal (const Point3DBase< U, GlobalTag > &gp) const |
LocalVector | toLocal (const GlobalVector &gv) const |
Vector3DBase< U, LocalTag > | toLocal (const Vector3DBase< U, GlobalTag > &gv) const |
virtual | ~GloballyPositioned () |
Static Public Member Functions | |
static CylinderPointer | build (const PositionType &pos, const RotationType &rot, Scalar radius, Bounds *bounds=0) |
static CylinderPointer | build (Scalar radius, const PositionType &pos, const RotationType &rot, Bounds *bounds=0) |
static float | computeRadius (Bounds const &bounds) |
Static Public Member Functions inherited from GloballyPositioned< float > | |
static float | iniEta () |
static float | iniPhi () |
Private Attributes | |
Scalar | theRadius |
Additional Inherited Members | |
Protected Member Functions inherited from Surface | |
Surface () | |
Surface (const PositionType &pos, const RotationType &rot) | |
Surface (const PositionType &pos, const RotationType &rot, Bounds *bounds) | |
Surface (const PositionType &pos, const RotationType &rot, MediumProperties mp) | |
Surface (const PositionType &pos, const RotationType &rot, MediumProperties mp, Bounds *bounds) | |
Surface (const Surface &iSurface) | |
Surface (Surface &&iSurface) | |
Protected Attributes inherited from Surface | |
extstd::clone_ptr< Bounds > | theBounds |
MediumProperties | theMediumProperties |
A Cylinder.
Definition at line 19 of file Cylinder.h.
Definition at line 37 of file Cylinder.h.
Definition at line 38 of file Cylinder.h.
Definition at line 36 of file Cylinder.h.
Definition at line 35 of file Cylinder.h.
|
inline |
Definition at line 26 of file Cylinder.h.
|
inlineoverride |
Definition at line 61 of file Cylinder.h.
|
inlinestatic |
Construct a cylinder with the specified radius. The reference frame is defined by pos and rot; the cylinder axis is parallel to the local Z axis.
Definition at line 51 of file Cylinder.h.
References Surface::bounds(), and Cylinder().
Referenced by EMEnrichingFilterAlgo::applyBFieldCurv(), doubleEMEnrichingFilterAlgo::applyBFieldCurv(), CosmicGenFilterHelix::CosmicGenFilterHelix(), MuonGmtPair::cylExtrapTrkSam(), L1MuonRecoTreeProducer::cylExtrapTrkSam(), ResidualRefitting::cylExtrapTrkSam(), CachedTrajectory::getTrajectory(), HLTMuonPointingFilter::HLTMuonPointingFilter(), SmartPropagator::initTkVolume(), PropagateToCal::propagate(), spr::propagateCalo(), cms::MuonTCMETValueMapProducer::propagateTrack(), spr::propagateTrackerEnd(), TCMETAlgo::propagateTrackToCalorimeterFace(), TrackExtrapolator::propagateTrackToVolume(), psClasses.BuildThread::run(), and TrackEfficiencyMonitor::trackerAcceptance().
|
inlinestatic |
Definition at line 56 of file Cylinder.h.
References Surface::bounds(), and Cylinder().
Referenced by psClasses.BuildThread::run().
|
inlinestatic |
Definition at line 30 of file Cylinder.h.
References Bounds::thickness(), and Bounds::width().
Referenced by CylinderBuilderFromDet::build(), BarrelDetLayer::computeSurface(), initCylinder(), CylinderBuilderFromDet::operator()(), and TkConvValidator::recalculateMomentumAtFittedVertex().
|
inline |
tangent plane to surface from global point
Definition at line 80 of file Cylinder.h.
References Vector3DBase< T, FrameTag >::cross(), GloballyPositioned< float >::position(), GloballyPositioned< float >::rotation(), and z.
Referenced by fastTangent().
|
inline |
tangent plane to surface from local point
Definition at line 87 of file Cylinder.h.
References fastTangent(), and Surface::toGlobal().
|
inline |
Radius of the cylinder.
Definition at line 67 of file Cylinder.h.
References AlCaHLTBitMon_ParallelJobs::p, side(), Surface::side(), tangentPlane(), and theRadius.
Referenced by MuonShowerInformationFiller::crossingPoint(), HelixBarrelCylinderCrossing::HelixBarrelCylinderCrossing(), MagCylinder::MagCylinder(), RKPropagatorInR::myPropagate(), PropagationDirectionChooser::operator()(), StraightLineCylinderCrossing::pathLength(), StraightLineBarrelCylinderCrossing::pathLength(), SteppingHelixPropagator::propagate(), StraightLinePropagator::propagateParametersOnCylinder(), RKPropagatorInS::propagateParametersOnCylinder(), SteppingHelixPropagator::refToMagVolume(), MagGeoBuilderFromDDD::volumeHandle::sameSurface(), side(), and Geant4ePropagator::transformToG4SurfaceTarget().
|
overridevirtual |
Returns the side of the surface on which the point is. Not defined for 1-sided surfaces (Moebius leaf etc.) For normal 2-sided surfaces the meaning of side is surface type dependent.
Implements Surface.
Definition at line 9 of file Cylinder.cc.
References SurfaceOrientation::negativeSide, SurfaceOrientation::onSurface, PV3DBase< T, PVType, FrameType >::perp(), SurfaceOrientation::positiveSide, and radius().
Referenced by Geant4ePropagator::configureAnyPropagation(), and radius().
|
overridevirtual |
tangent plane to surface from global point
Implements Surface.
Definition at line 23 of file Cylinder.cc.
References funct::abs(), Vector3DBase< T, FrameTag >::cross(), SiStripPI::max, GloballyPositioned< float >::position(), GloballyPositioned< float >::rotation(), findQualityFiles::size, and z.
Referenced by radius(), and tangentPlane().
|
overridevirtual |
tangent plane to surface from local point
Implements Surface.
Definition at line 17 of file Cylinder.cc.
References tangentPlane(), and Surface::toGlobal().
|
private |
Definition at line 93 of file Cylinder.h.
Referenced by radius().