#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... | |
virtual Side | side (const GlobalPoint &p, Scalar tolerance=0) const |
virtual Side | side (const LocalPoint &p, Scalar tolerance=0) const=0 |
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 LocalPoint &p, Scalar tolerance=0) const =0 |
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 &&) | |
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 |
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=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 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 Cylinder(), radius(), and makeMuonMisalignmentScenario::rot.
Referenced by psClasses.BuildThread::run().
|
inlinestatic |
Definition at line 28 of file Cylinder.h.
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().
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.
|
inline |
Definition at line 74 of file Surface.h.
|
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().
|
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().