#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 | |
Cylinder (const PositionType &pos, const RotationType &rot, SimpleCylinderBounds const &bounds) | |
template<typename... Args> | |
Cylinder (Scalar radius, Args &&... args) | |
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... | |
virtual Side | side (const GlobalPoint &p, Scalar tolerance=0) const |
Side | side (const LocalPoint &p, Scalar toler) const override |
virtual Side | side (const LocalPoint &p, Scalar tolerance=0) const=0 |
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 |
virtual Side | side (const LocalPoint &p, Scalar tolerance=0) const =0 |
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 (BasicReferenceCounted &&) | |
BasicReferenceCounted (const BasicReferenceCounted &) | |
BasicReferenceCounted & | operator= (BasicReferenceCounted &&) |
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 |
GlobalVector | toGlobal (const LocalVector &lv) const |
Point3DBase< U, GlobalTag > | toGlobal (const Point3DBase< U, LocalTag > &lp) const |
Vector3DBase< U, GlobalTag > | toGlobal (const Vector3DBase< U, LocalTag > &lv) const |
LocalPoint | toLocal (const GlobalPoint &gp) const |
LocalVector | toLocal (const GlobalVector &gv) const |
Point3DBase< U, LocalTag > | toLocal (const Point3DBase< U, GlobalTag > &gp) 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=nullptr) |
static CylinderPointer | build (Scalar radius, const PositionType &pos, const RotationType &rot, Bounds *bounds=nullptr) |
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 32 of file Cylinder.h.
Definition at line 33 of file Cylinder.h.
Definition at line 31 of file Cylinder.h.
Definition at line 30 of file Cylinder.h.
|
inline |
Definition at line 24 of file Cylinder.h.
|
inlineoverride |
Definition at line 59 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 45 of file Cylinder.h.
References Surface::bounds(), Cylinder(), radius(), and makeMuonMisalignmentScenario::rot.
Referenced by EMEnrichingFilterAlgo::applyBFieldCurv(), CosmicGenFilterHelix::CosmicGenFilterHelix(), L1MuonRecoTreeProducer::cylExtrapTrkSam(), ResidualRefitting::cylExtrapTrkSam(), CachedTrajectory::getTrajectory(), SmartPropagator::initTkVolume(), PropagateToCal::propagate(), spr::propagateCalo(), spr::propagateHCAL(), cms::MuonTCMETValueMapProducer::propagateTrack(), spr::propagateTrackerEnd(), TCMETAlgo::propagateTrackToCalorimeterFace(), TrackExtrapolator::propagateTrackToVolume(), psClasses.BuildThread::run(), and TrackEfficiencyMonitor::trackerAcceptance().
|
inlinestatic |
Definition at line 52 of file Cylinder.h.
References Surface::bounds(), Cylinder(), radius(), and makeMuonMisalignmentScenario::rot.
Referenced by psClasses.BuildThread::run().
|
inlinestatic |
Definition at line 28 of file Cylinder.h.
References Surface::bounds(), 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 77 of file Cylinder.h.
References Vector3DBase< T, FrameTag >::cross(), GloballyPositioned< float >::position(), GloballyPositioned< float >::rotation(), and z.
|
inline |
tangent plane to surface from local point
Definition at line 84 of file Cylinder.h.
References fastTangent(), and Surface::toGlobal().
Referenced by fastTangent().
|
inline |
Radius of the cylinder.
Definition at line 64 of file Cylinder.h.
References theRadius.
Referenced by build(), MuonShowerInformationFiller::crossingPoint(), HelixBarrelCylinderCrossing::HelixBarrelCylinderCrossing(), MagCylinder::MagCylinder(), RKPropagatorInR::myPropagate(), PropagationDirectionChooser::operator()(), StraightLineBarrelCylinderCrossing::pathLength(), StraightLineCylinderCrossing::pathLength(), SteppingHelixPropagator::propagate(), StraightLinePropagator::propagateParametersOnCylinder(), RKPropagatorInS::propagateParametersOnCylinder(), SteppingHelixPropagator::refToMagVolume(), magneticfield::BaseVolumeHandle::sameSurface(), side(), and Geant4ePropagator::transformToG4SurfaceTarget().
|
inline |
|
override |
Definition at line 9 of file Cylinder.cc.
References SurfaceOrientation::negativeSide, SurfaceOrientation::onSurface, AlCaHLTBitMon_ParallelJobs::p, SurfaceOrientation::positiveSide, and radius().
Referenced by Geant4ePropagator::configureAnyPropagation().
virtual Side Surface::side |
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.
|
overridevirtual |
tangent plane to surface from global point
Implements Surface.
Definition at line 19 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 tangentPlane().
|
overridevirtual |
tangent plane to surface from local point
Implements Surface.
Definition at line 15 of file Cylinder.cc.
References tangentPlane(), and Surface::toGlobal().
|
private |
Definition at line 87 of file Cylinder.h.
Referenced by radius().