CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
List of all members | Public Member Functions | Protected Member Functions | Private Attributes | Friends
BoundSurface Class Reference

#include <BoundSurface.h>

Inheritance diagram for BoundSurface:
Surface GloballyPositioned< float > BasicReferenceCounted BoundCylinder BoundPlane BoundDisk BoundDiskSector

Public Member Functions

const Boundsbounds () const
 
 BoundSurface (const PositionType &pos, const RotationType &rot, const Bounds *bounds)
 
 BoundSurface (const PositionType &pos, const RotationType &rot, const Bounds &bounds)
 
 BoundSurface (const PositionType &pos, const RotationType &rot, const Bounds *bounds, MediumProperties *mp)
 
 BoundSurface (const PositionType &pos, const RotationType &rot, const Bounds &bounds, MediumProperties *mp)
 
 BoundSurface (const BoundSurface &iToCopy)
 
const BoundSurfaceoperator= (const BoundSurface &iRHS)
 
std::pair< float, float > const & phiSpan () const
 
std::pair< float, float > const & rSpan () const
 
std::pair< float, float > const & zSpan () const
 
- Public Member Functions inherited from Surface
const MediumPropertiesmediumProperties () const
 
void setMediumProperties (const MediumProperties &mp)
 
void setMediumProperties (MediumProperties *mp)
 
virtual Side side (const LocalPoint &p, Scalar tolerance=0) const =0
 
virtual Side side (const GlobalPoint &p, Scalar tolerance=0) const
 
 Surface (const PositionType &pos, const RotationType &rot)
 
 Surface (const PositionType &pos, const RotationType &rot, MediumProperties *mp)
 
 Surface (const PositionType &pos, const RotationType &rot, MediumProperties mp)
 
 Surface (const Surface &iSurface)
 
virtual
ReferenceCountingPointer
< TangentPlane
tangentPlane (const GlobalPoint &) const =0
 
virtual
ReferenceCountingPointer
< TangentPlane
tangentPlane (const LocalPoint &) const =0
 
GlobalPoint toGlobal (const Point2DBase< Scalar, LocalTag > lp) const
 
virtual ~Surface ()=0
 
- Public Member Functions inherited from GloballyPositioned< float >
float eta () const
 
 GloballyPositioned (const PositionType &pos, const RotationType &rot)
 
void move (const GlobalVector &displacement)
 
float phi () const
 
const PositionTypeposition () const
 
void rotate (const RotationType &rotation)
 
const RotationTyperotation () const
 
GlobalPoint toGlobal (const LocalPoint &lp) const
 
Point3DBase< U, GlobalTagtoGlobal (const Point3DBase< U, LocalTag > &lp) const
 
GlobalVector toGlobal (const LocalVector &lv) const
 
Vector3DBase< U, GlobalTagtoGlobal (const Vector3DBase< U, LocalTag > &lv) const
 
LocalPoint toLocal (const GlobalPoint &gp) const
 
Point3DBase< U, LocalTagtoLocal (const Point3DBase< U, GlobalTag > &gp) const
 
LocalVector toLocal (const GlobalVector &gv) const
 
Vector3DBase< U, LocalTagtoLocal (const Vector3DBase< U, GlobalTag > &gv) const
 
virtual ~GloballyPositioned ()
 
- Public Member Functions inherited from BasicReferenceCounted
void addReference () const
 
 BasicReferenceCounted ()
 
 BasicReferenceCounted (const BasicReferenceCounted &iRHS)
 
const BasicReferenceCountedoperator= (const BasicReferenceCounted &)
 
unsigned int references () const
 
void removeReference () const
 
virtual ~BasicReferenceCounted ()
 

Protected Member Functions

void computeSpan ()
 

Private Attributes

std::pair< float, float > m_phiSpan
 
std::pair< float, float > m_rSpan
 
std::pair< float, float > m_zSpan
 
std::auto_ptr< BoundstheBounds
 

Friends

void boundSpan::computeSpan (BoundSurface &plane)
 

Additional Inherited Members

- Public Types inherited from Surface
typedef GloballyPositioned< float > Base
 
typedef SurfaceOrientation::Side 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
 
- Static Public Member Functions inherited from GloballyPositioned< float >
static float iniEta ()
 
static float iniPhi ()
 

Detailed Description

Adds Bounds to Surface.

The Bounds define a region AROUND the surface. Surfaces which differ only by the shape of their bounds are of the same "surface" type (e.g. Plane or Cylinder).

Definition at line 19 of file BoundSurface.h.

Constructor & Destructor Documentation

BoundSurface::BoundSurface ( const PositionType pos,
const RotationType rot,
const Bounds bounds 
)
inline

Definition at line 22 of file BoundSurface.h.

References computeSpan().

24  :
25  Surface( pos, rot ),
26  m_phiSpan( 0., 0.),
27  m_zSpan( 0., 0.),
28  m_rSpan( 0., 0.),
29  theBounds( bounds->clone() )
30  {
31  computeSpan();
32  }
std::auto_ptr< Bounds > theBounds
Definition: BoundSurface.h:105
std::pair< float, float > m_zSpan
Definition: BoundSurface.h:102
void computeSpan()
Definition: BoundSurface.cc:4
std::pair< float, float > m_phiSpan
Definition: BoundSurface.h:101
std::pair< float, float > m_rSpan
Definition: BoundSurface.h:103
virtual Bounds * clone() const =0
Surface(const PositionType &pos, const RotationType &rot)
Definition: Surface.h:40
BoundSurface::BoundSurface ( const PositionType pos,
const RotationType rot,
const Bounds bounds 
)
inline

Definition at line 34 of file BoundSurface.h.

References computeSpan().

36  :
37  Surface( pos, rot),
38  m_phiSpan( 0., 0.),
39  m_zSpan( 0., 0.),
40  m_rSpan( 0., 0.),
41  theBounds( bounds.clone())
42  {
43  computeSpan();
44  }
std::auto_ptr< Bounds > theBounds
Definition: BoundSurface.h:105
std::pair< float, float > m_zSpan
Definition: BoundSurface.h:102
void computeSpan()
Definition: BoundSurface.cc:4
std::pair< float, float > m_phiSpan
Definition: BoundSurface.h:101
std::pair< float, float > m_rSpan
Definition: BoundSurface.h:103
virtual Bounds * clone() const =0
Surface(const PositionType &pos, const RotationType &rot)
Definition: Surface.h:40
BoundSurface::BoundSurface ( const PositionType pos,
const RotationType rot,
const Bounds bounds,
MediumProperties mp 
)
inline

Definition at line 46 of file BoundSurface.h.

References computeSpan().

49  :
50  Surface( pos, rot, mp),
51  m_phiSpan( 0., 0.),
52  m_zSpan( 0., 0.),
53  m_rSpan( 0., 0.),
54  theBounds( bounds->clone())
55  {
56  computeSpan();
57  }
std::auto_ptr< Bounds > theBounds
Definition: BoundSurface.h:105
std::pair< float, float > m_zSpan
Definition: BoundSurface.h:102
void computeSpan()
Definition: BoundSurface.cc:4
std::pair< float, float > m_phiSpan
Definition: BoundSurface.h:101
std::pair< float, float > m_rSpan
Definition: BoundSurface.h:103
virtual Bounds * clone() const =0
Surface(const PositionType &pos, const RotationType &rot)
Definition: Surface.h:40
BoundSurface::BoundSurface ( const PositionType pos,
const RotationType rot,
const Bounds bounds,
MediumProperties mp 
)
inline

Definition at line 59 of file BoundSurface.h.

References computeSpan().

62  :
63  Surface( pos, rot, mp),
64  m_phiSpan( 0., 0.),
65  m_zSpan( 0., 0.),
66  m_rSpan( 0., 0.),
67  theBounds( bounds.clone())
68  {
69  computeSpan();
70  }
std::auto_ptr< Bounds > theBounds
Definition: BoundSurface.h:105
std::pair< float, float > m_zSpan
Definition: BoundSurface.h:102
void computeSpan()
Definition: BoundSurface.cc:4
std::pair< float, float > m_phiSpan
Definition: BoundSurface.h:101
std::pair< float, float > m_rSpan
Definition: BoundSurface.h:103
virtual Bounds * clone() const =0
Surface(const PositionType &pos, const RotationType &rot)
Definition: Surface.h:40
BoundSurface::BoundSurface ( const BoundSurface iToCopy)
inline

Definition at line 72 of file BoundSurface.h.

72  :
73  Surface( iToCopy ),
74  m_phiSpan( iToCopy.m_phiSpan ),
75  m_zSpan( iToCopy.m_zSpan ),
76  m_rSpan( iToCopy.m_rSpan ),
77  theBounds( iToCopy.theBounds->clone() )
78  {}
std::auto_ptr< Bounds > theBounds
Definition: BoundSurface.h:105
std::pair< float, float > m_zSpan
Definition: BoundSurface.h:102
std::pair< float, float > m_phiSpan
Definition: BoundSurface.h:101
std::pair< float, float > m_rSpan
Definition: BoundSurface.h:103
Surface(const PositionType &pos, const RotationType &rot)
Definition: Surface.h:40

Member Function Documentation

const Bounds& BoundSurface::bounds ( ) const
inline

Definition at line 89 of file BoundSurface.h.

References theBounds.

Referenced by MuonNavigationSchool::addBarrelLayer(), MuonTkNavigationSchool::addBarrelLayer(), FWRecoGeometryESProducer::addDTGeometry(), FWTGeoRecoGeometryESProducer::addDTGeometry(), MuonNavigationSchool::addEndcapLayer(), MuonTkNavigationSchool::addEndcapLayer(), GroupedCkfTrajectoryBuilder::advanceOneLayer(), DeDxDiscriminatorLearner::algoBeginJob(), DeDxDiscriminatorLearnerFromCalibTree::algoBeginJob(), SiStripCalibLorentzAngle::algoBeginJob(), SiStripGainFromData::algoBeginJob(), SiStripGainFromCalibTree::algoBeginJob(), CkfDebugger::analyseRecHitNotFound(), SiStripLAProfileBooker::analyze(), SiStripTrackingRecHitsValid::analyze(), TkLayerLess::barrelForwardLess(), SiStripDetInfoFileWriter::beginRun(), SiStripLAProfileBooker::beginRun(), DeDxEstimatorProducer::beginRun(), DeDxEstimatorProducerPixelTripplet::beginRun(), DeDxDiscriminatorProducer::beginRun(), BoundingBox::BoundingBox(), BoundDiskSector::bounds(), CSCGeometryBuilder::buildChamber(), MuonTrackLoader::buildTrackExtra(), DirectMuonNavigation::checkCompatible(), DirectTrackerNavigation::checkCompatible(), ValidateGeometry::compareShape(), ForwardDetLayer::compatible(), MuRingForwardDoubleLayer::compatible(), MuRodBarrelLayer::compatibleDets(), MuDetRod::compatibleDets(), boundSpan::computeSpan(), MuRingForwardDoubleLayer::computeSurface(), TIBLayer::computeWindowSize(), ForwardDetLayer::contains(), BoundingBox::corners(), HICTrajectoryCorrector::correct(), FWTGeoRecoGeometryESProducer::createShape(), MuonShowerInformationFiller::crossingPoint(), TIBLayer::cylinder(), RingMaker::determineExtensions(), MultipleScatteringGeometry::detLayers(), SiPixelDigitizerAlgorithm::digitize(), shallow::drift(), InsideBoundsMeasurementEstimator::estimate(), cms::HICSeedMeasurementEstimator::estimate(), Chi2MeasurementEstimatorBase::estimate(), HICMeasurementEstimator::estimate(), RectangularEtaPhiTrackingRegion::estimator(), TrackerValidationVariables::fillHitQuantities(), StripCPE::fillParams(), cms::HICTkOuterStartingLayerFinder::findBarrelLayers(), SiTrackerGaussianSmearingRecHitConverter::gaussianSmearing(), ClusterShapeHitFilter::getCotangent(), MuonDetIdAssociator::getDetIdPoints(), HitPairGeneratorFromLayerPairForPhotonConversion::getLayerRadius(), HitPairGeneratorFromLayerPairForPhotonConversion::getLayerZ(), TrackDetectorAssociator::getTAMuonChamberMatches(), GlobalDetRangeRPhi::GlobalDetRangeRPhi(), GlobalDetRangeZPhi::GlobalDetRangeZPhi(), GlobalDetRodRangeZPhi::GlobalDetRodRangeZPhi(), PixelTripletNoTipGenerator::hitTriplets(), PropagateToMuon::init(), InnerDeltaPhi::initBarrelLayer(), InnerDeltaPhi::initForwardLayer(), ThirdHitRZPredictionBase::initLayer(), ThirdHitPrediction::initLayer(), BoundDisk::innerRadius(), MuonDetIdAssociator::insideElement(), SmartPropagator::insideTkVol(), DeDxDiscriminatorTools::IsFarFromBorder(), ShallowGainCalibration::IsFarFromBorder(), SiStripGainFromData::IsFarFromBorder(), SimpleNavigationSchool::linkNextForwardLayer(), TrajectoryManager::makeSinglePSimHit(), SiStripGainCosmicCalculator::moduleThickness(), SiStripGainCosmicCalculator::moduleWidth(), MSLayer::MSLayer(), SiStripMonitorMuonHLT::Normalizer(), CylinderBuilderFromDet::operator()(), BoundDisk::outerRadius(), TIBLayer::overlap(), TOBRod::overlap(), PixelBlade::overlap(), TIDLayer::overlapInR(), MuonNavigationPrinter::printLayer(), EnergyLossPlain::process(), SiHitDigitizer::processHit(), MuonSimHitProducer::produce(), SETPatternRecognition::segmentCleaning(), ParticlePropagator::setPropagationConditions(), PixelCPEBase::setTheDet(), cms::HICTkOuterStartingLayerFinder::startingLayers(), TIBLayer::TIBLayer(), TIDLayer::TIDLayer(), TOBLayer::TOBLayer(), TrajectoryAtInvalidHit::TrajectoryAtInvalidHit(), ValidateGeometry::validateDTLayerGeometry(), and SimpleNavigableLayer::wellInside().

89 { return *theBounds; }
std::auto_ptr< Bounds > theBounds
Definition: BoundSurface.h:105
void BoundSurface::computeSpan ( )
protected

Definition at line 4 of file BoundSurface.cc.

References boundSpan::computeSpan().

Referenced by BoundSurface().

4  {
6 }
void computeSpan(BoundSurface &plane)
Definition: BoundSpan.cc:10
const BoundSurface& BoundSurface::operator= ( const BoundSurface iRHS)
inline

Definition at line 80 of file BoundSurface.h.

References m_phiSpan, m_rSpan, m_zSpan, BasicReferenceCounted::operator=(), and theBounds.

80  {
81  Surface::operator=( iRHS );
82  m_phiSpan = iRHS.m_phiSpan;
83  m_zSpan = iRHS.m_zSpan;
84  m_rSpan = iRHS.m_rSpan;
85  theBounds.reset( iRHS.theBounds->clone() );
86  return *this;
87  }
const BasicReferenceCounted & operator=(const BasicReferenceCounted &)
std::auto_ptr< Bounds > theBounds
Definition: BoundSurface.h:105
std::pair< float, float > m_zSpan
Definition: BoundSurface.h:102
std::pair< float, float > m_phiSpan
Definition: BoundSurface.h:101
std::pair< float, float > m_rSpan
Definition: BoundSurface.h:103
std::pair<float,float> const& BoundSurface::phiSpan ( ) const
inline

Definition at line 91 of file BoundSurface.h.

References m_phiSpan.

Referenced by TOBLayer::overlap(), PixelBarrelLayer::overlap(), and tkDetUtil::overlapInPhi().

91 { return m_phiSpan; }
std::pair< float, float > m_phiSpan
Definition: BoundSurface.h:101
std::pair<float,float> const& BoundSurface::rSpan ( ) const
inline

Definition at line 93 of file BoundSurface.h.

References m_rSpan.

93 { return m_rSpan; }
std::pair< float, float > m_rSpan
Definition: BoundSurface.h:103
std::pair<float,float> const& BoundSurface::zSpan ( ) const
inline

Definition at line 92 of file BoundSurface.h.

References m_zSpan.

92 { return m_zSpan; }
std::pair< float, float > m_zSpan
Definition: BoundSurface.h:102

Friends And Related Function Documentation

void boundSpan::computeSpan ( BoundSurface plane)
friend

Member Data Documentation

std::pair<float,float> BoundSurface::m_phiSpan
private

Definition at line 101 of file BoundSurface.h.

Referenced by boundSpan::computeSpan(), operator=(), and phiSpan().

std::pair<float,float> BoundSurface::m_rSpan
private

Definition at line 103 of file BoundSurface.h.

Referenced by operator=(), and rSpan().

std::pair<float,float> BoundSurface::m_zSpan
private

Definition at line 102 of file BoundSurface.h.

Referenced by boundSpan::computeSpan(), operator=(), and zSpan().

std::auto_ptr<Bounds> BoundSurface::theBounds
private

Definition at line 105 of file BoundSurface.h.

Referenced by bounds(), and operator=().