CMS 3D CMS Logo

BoundSurface Class Reference

Adds Bounds to Surface. More...

#include <DataFormats/GeometrySurface/interface/BoundSurface.h>

Inheritance diagram for BoundSurface:

Surface GloballyPositioned< float > ReferenceCounted BoundCylinder BoundPlane BoundDisk BoundDiskSector

List of all members.

Public Member Functions

const Boundsbounds () const
 BoundSurface (const BoundSurface &iToCopy)
 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 PositionType &pos, const RotationType &rot, const Bounds &bounds)
 BoundSurface (const PositionType &pos, const RotationType &rot, const Bounds *bounds)
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

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 computeSpan (BoundSurface &plane)


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().

00024                                       :
00025     Surface(   pos, rot ),
00026     m_phiSpan( 0., 0.),
00027     m_zSpan(   0., 0.),
00028     m_rSpan(   0., 0.),
00029     theBounds( bounds->clone() )
00030   { 
00031     computeSpan();
00032   }

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

Definition at line 34 of file BoundSurface.h.

References computeSpan().

00036                                       :
00037     Surface(   pos, rot),
00038     m_phiSpan( 0., 0.),
00039     m_zSpan(   0., 0.),
00040     m_rSpan(   0., 0.),
00041     theBounds( bounds.clone()) 
00042   { 
00043     computeSpan();
00044   }

BoundSurface::BoundSurface ( const PositionType pos,
const RotationType rot,
const Bounds bounds,
MediumProperties mp 
) [inline]

Definition at line 46 of file BoundSurface.h.

References computeSpan().

00049                                       :
00050     Surface(   pos, rot, mp),  
00051     m_phiSpan( 0., 0.),
00052     m_zSpan(   0., 0.),
00053     m_rSpan(   0., 0.),
00054     theBounds( bounds->clone()) 
00055   { 
00056     computeSpan();
00057   }

BoundSurface::BoundSurface ( const PositionType pos,
const RotationType rot,
const Bounds bounds,
MediumProperties mp 
) [inline]

Definition at line 59 of file BoundSurface.h.

References computeSpan().

00062                                       :
00063     Surface(   pos, rot, mp),  
00064     m_phiSpan( 0., 0.),
00065     m_zSpan(   0., 0.),
00066     m_rSpan(   0., 0.),
00067     theBounds( bounds.clone()) 
00068   {
00069     computeSpan();
00070   }

BoundSurface::BoundSurface ( const BoundSurface iToCopy  )  [inline]

Definition at line 72 of file BoundSurface.h.

00072                                              :
00073     Surface(   iToCopy ), 
00074     m_phiSpan( iToCopy.m_phiSpan ),
00075     m_zSpan(   iToCopy.m_zSpan ),
00076     m_rSpan(   iToCopy.m_rSpan ),
00077     theBounds( iToCopy.theBounds->clone() ) 
00078   {}


Member Function Documentation

const Bounds& BoundSurface::bounds (  )  const [inline]

Reimplemented in BoundDiskSector.

Definition at line 89 of file BoundSurface.h.

References theBounds.

Referenced by MuonNavigationSchool::addBarrelLayer(), MuonTkNavigationSchool::addBarrelLayer(), VisEventSetupService::addBoxWafer(), VisTrackingGeometry::addBoxWafer(), VisEventSetup::addCorners(), MuonNavigationSchool::addEndcapLayer(), MuonTkNavigationSchool::addEndcapLayer(), VisEventSetupService::addWafer(), VisTrackingGeometry::addWafer(), SiStripGainFromData::algoBeginJob(), SiStripCalibLorentzAngle::algoBeginJob(), CkfDebugger::analyseRecHitNotFound(), RPCMonitorEfficiency::analyze(), VisCSCSegment::analyze(), SiStripTrackingRecHitsValid::analyze(), TkLayerLess::barrelForwardLess(), SiStripLAProfileBooker::beginJob(), DeDxDiscriminatorProducer::beginJob(), SiStripDetInfoFileWriter::beginJob(), BoundingBox::BoundingBox(), BoundDiskSector::bounds(), CSCGeometryBuilderFromDDD::buildChamber(), VisEventSetup::buildDriftTubes(), VisEventSetup::buildTracker(), DirectTrackerNavigation::checkCompatible(), DirectMuonNavigation::checkCompatible(), MuRingForwardDoubleLayer::compatible(), ForwardDetLayer::compatible(), BarrelDetLayer::compatible(), MuDetRod::compatibleDets(), MuRodBarrelLayer::compatibleDets(), boundSpan::computeSpan(), MuRingForwardDoubleLayer::computeSurface(), TIBLayer::computeWindowSize(), ForwardDetLayer::contains(), BarrelDetLayer::contains(), BoundingBox::corners(), HICTrajectoryCorrector::correct(), RingMaker::determineExtensions(), ClusterShape::determineShape(), MultipleScatteringGeometry::detLayers(), SiPixelDigitizerAlgorithm::digitize(), cms::HICSeedMeasurementEstimator::estimate(), InsideBoundsMeasurementEstimator::estimate(), HICMeasurementEstimator::estimate(), Chi2MeasurementEstimatorBase::estimate(), RectangularEtaPhiTrackingRegion::estimator(), StripCPE::fillParam(), cms::HICTkOuterStartingLayerFinder::findBarrelLayers(), SiTrackerGaussianSmearingRecHitConverter::gaussianSmearing(), MuonDetIdAssociator::getDetIdPoints(), TrackDetectorAssociator::getTAMuonChamberMatches(), GlobalDetRangeRPhi::GlobalDetRangeRPhi(), GlobalDetRangeZPhi::GlobalDetRangeZPhi(), GlobalDetRodRangeZPhi::GlobalDetRodRangeZPhi(), HitPairGeneratorFromLayerPair::hitPairs(), InnerDeltaPhi::initBarrelLayer(), InnerDeltaPhi::initForwardLayer(), ThirdHitRZPrediction::initLayer(), ThirdHitPrediction::initLayer(), BoundDisk::innerRadius(), MuonDetIdAssociator::insideElement(), SmartPropagator::insideTkVol(), DeDxDiscriminatorProducer::IsFarFromBorder(), SiStripGainFromData::IsFarFromBorder(), SimpleNavigationSchool::linkNextForwardLayer(), HICSimpleNavigationSchool::linkNextForwardLayer(), TrajectoryManager::makeSinglePSimHit(), SiStripGainCosmicCalculator::moduleThickness(), SiStripGainCosmicCalculator::moduleWidth(), MSLayer::MSLayer(), CylinderBuilderFromDet::operator()(), BoundDisk::outerRadius(), TIBLayer::overlap(), PixelBlade::overlap(), TOBRod::overlap(), TIDLayer::overlapInR(), MuonNavigationPrinter::printLayer(), ClusterShapeTrajectoryFilter::processHit(), SiHitDigitizer::processHit(), MuonSimHitProducer::produce(), ParticlePropagator::setPropagationConditions(), PixelCPEBase::setTheDet(), CPEFromDetPosition::setTheDet(), cms::HICTkOuterStartingLayerFinder::startingLayers(), VisCSCSeg2HETwig::update(), VisCSCSegmentTwig::update(), VisRPCDigiTwig::update(), and SimpleNavigableLayer::wellInside().

00089 { return *theBounds; }

void BoundSurface::computeSpan (  )  [protected]

Definition at line 4 of file BoundSurface.cc.

References boundSpan::computeSpan().

Referenced by BoundSurface().

00004                                {
00005   boundSpan::computeSpan(*this);
00006 }

const BoundSurface& BoundSurface::operator= ( const BoundSurface iRHS  )  [inline]

Definition at line 80 of file BoundSurface.h.

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

00080                                                             {
00081     Surface::operator=( iRHS );
00082     m_phiSpan = iRHS.m_phiSpan;
00083     m_zSpan   = iRHS.m_zSpan;
00084     m_rSpan   = iRHS.m_rSpan;
00085     theBounds.reset( iRHS.theBounds->clone() );
00086     return *this;
00087   }

std::pair<float,float> const& BoundSurface::phiSpan (  )  const [inline]

Definition at line 91 of file BoundSurface.h.

References m_phiSpan.

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

00091 { return m_phiSpan; }

std::pair<float,float> const& BoundSurface::rSpan (  )  const [inline]

Definition at line 93 of file BoundSurface.h.

References m_rSpan.

00093 { return m_rSpan; }

std::pair<float,float> const& BoundSurface::zSpan (  )  const [inline]

Definition at line 92 of file BoundSurface.h.

References m_zSpan.

00092 { return m_zSpan; }


Friends And Related Function Documentation

void 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=().


The documentation for this class was generated from the following files:
Generated on Tue Jun 9 18:15:03 2009 for CMSSW by  doxygen 1.5.4