#include <Bounds.h>
Public Member Functions | |
virtual Bounds * | clone () const =0 |
virtual bool | inside (const Local2DPoint &p, const LocalError &err, float scale=1.f) const |
Determine if a 2D point is inside the bounds, taking error into account. | |
virtual bool | inside (const Local3DPoint &) const =0 |
Determine if the point is inside the bounds. | |
virtual bool | inside (const Local3DPoint &, const LocalError &, float scale=1.f) const =0 |
Determine if a point is inside the bounds, taking error into account. | |
virtual bool | inside (const Local2DPoint &p, float tollerance) const |
Determine if a point is inside the bounds, taking a tollerance into account. | |
virtual bool | inside (const Local2DPoint &p) const |
virtual float | length () const =0 |
virtual float | thickness () const =0 |
virtual float | width () const =0 |
virtual float | widthAtHalfLength () const |
Width at half length. Useful for e.g. pitch definition. | |
virtual | ~Bounds () |
Abstract base class for Bounds.
Bounds provide a general way to specify the form of a concrete surface. For example, a BoundPlane with TrapezoidalPlaneBounds has a trapezoidal shape.
virtual Bounds* Bounds::clone | ( | ) | const [pure virtual] |
Implemented in GeneralNSurfaceDelimitedBounds, GeneralTrapezoidalPlaneBounds, OpenBounds, RectangularPlaneBounds, SimpleConeBounds, SimpleCylinderBounds, SimpleDiskBounds, TrapezoidalPlaneBounds, CSCLayerGeometry, FourPointPlaneBounds, and DiskSectorBounds.
Referenced by LinearSearchNavSurfaceImpl::addVolume().
virtual bool Bounds::inside | ( | const Local3DPoint & | ) | const [pure virtual] |
Determine if the point is inside the bounds.
Implemented in GeneralNSurfaceDelimitedBounds, GeneralTrapezoidalPlaneBounds, OpenBounds, RectangularPlaneBounds, SimpleConeBounds, SimpleCylinderBounds, SimpleDiskBounds, TrapezoidalPlaneBounds, CSCLayerGeometry, FourPointPlaneBounds, and DiskSectorBounds.
Referenced by MuonTrackLoader::buildTrackExtra(), ForwardDetLayer::contains(), InsideBoundsMeasurementEstimator::estimate(), Chi2MeasurementEstimatorBase::estimate(), inside(), MuonDetIdAssociator::insideElement(), MuonSimHitProducer::produce(), SETPatternRecognition::segmentCleaning(), and TrajectoryAtInvalidHit::TrajectoryAtInvalidHit().
virtual bool Bounds::inside | ( | const Local2DPoint & | p, |
const LocalError & | err, | ||
float | scale = 1.f |
||
) | const [inline, virtual] |
Determine if a 2D point is inside the bounds, taking error into account.
Reimplemented in GeneralTrapezoidalPlaneBounds, OpenBounds, RectangularPlaneBounds, and TrapezoidalPlaneBounds.
Definition at line 59 of file Bounds.h.
References inside(), pileupReCalc_HLTpaths::scale, PV2DBase< T, PVType, FrameType >::x(), and PV2DBase< T, PVType, FrameType >::y().
{ return inside( Local3DPoint(p.x(), p.y(), 0), err, scale); }
virtual bool Bounds::inside | ( | const Local3DPoint & | , |
const LocalError & | , | ||
float | scale = 1.f |
||
) | const [pure virtual] |
Determine if a point is inside the bounds, taking error into account.
Implemented in GeneralNSurfaceDelimitedBounds, GeneralTrapezoidalPlaneBounds, OpenBounds, RectangularPlaneBounds, SimpleConeBounds, SimpleCylinderBounds, SimpleDiskBounds, TrapezoidalPlaneBounds, CSCLayerGeometry, FourPointPlaneBounds, and DiskSectorBounds.
virtual bool Bounds::inside | ( | const Local2DPoint & | p, |
float | tollerance | ||
) | const [inline, virtual] |
Determine if a point is inside the bounds, taking a tollerance into account.
Reimplemented in RectangularPlaneBounds.
Definition at line 44 of file Bounds.h.
{ return inside(p,LocalError(tollerance*tollerance,0.f,tollerance*tollerance)); }
virtual bool Bounds::inside | ( | const Local2DPoint & | p | ) | const [inline, virtual] |
Reimplemented in GeneralTrapezoidalPlaneBounds, RectangularPlaneBounds, TrapezoidalPlaneBounds, and CSCLayerGeometry.
Definition at line 39 of file Bounds.h.
References inside(), PV2DBase< T, PVType, FrameType >::x(), and PV2DBase< T, PVType, FrameType >::y().
{ return inside( Local3DPoint(p.x(), p.y(), 0) ); }
virtual float Bounds::length | ( | ) | const [pure virtual] |
"Lenght" of the bounded volume; refer to the concrete class documentation for the specific definition.
Implemented in GeneralNSurfaceDelimitedBounds, GeneralTrapezoidalPlaneBounds, OpenBounds, RectangularPlaneBounds, SimpleConeBounds, SimpleCylinderBounds, SimpleDiskBounds, TrapezoidalPlaneBounds, FourPointPlaneBounds, and DiskSectorBounds.
Referenced by MuonNavigationSchool::addBarrelLayer(), MuonTkNavigationSchool::addBarrelLayer(), FWTGeoRecoGeometryESProducer::addDTGeometry(), FWRecoGeometryESProducer::addDTGeometry(), MuonNavigationSchool::addEndcapLayer(), MuonTkNavigationSchool::addEndcapLayer(), GroupedCkfTrajectoryBuilder::advanceOneLayer(), CkfDebugger::analyseRecHitNotFound(), TkLayerLess::barrelForwardLess(), BoundingBox::BoundingBox(), StripTopologyBuilder::build(), PixelTopologyBuilder::build(), DirectTrackerNavigation::checkCompatible(), DirectMuonNavigation::checkCompatible(), ValidateGeometry::compareShape(), MuDetRod::compatibleDets(), BoundingBox::corners(), FWTGeoRecoGeometryESProducer::createShape(), RingMaker::determineExtensions(), MultipleScatteringGeometry::detLayers(), cms::HICSeedMeasurementEstimator::estimate(), HICMeasurementEstimator::estimate(), RectangularEtaPhiTrackingRegion::estimator(), cms::HICTkOuterStartingLayerFinder::findBarrelLayers(), SiTrackerGaussianSmearingRecHitConverter::gaussianSmearing(), MuonDetIdAssociator::getDetIdPoints(), TrackDetectorAssociator::getTAMuonChamberMatches(), GlobalDetRangeRPhi::GlobalDetRangeRPhi(), GlobalDetRangeZPhi::GlobalDetRangeZPhi(), GlobalDetRodRangeZPhi::GlobalDetRodRangeZPhi(), PropagateToMuon::init(), ThirdHitRZPredictionBase::initLayer(), SmartPropagator::insideTkVol(), ShallowGainCalibration::IsFarFromBorder(), DeDxDiscriminatorTools::IsFarFromBorder(), SiStripGainFromData::IsFarFromBorder(), SimpleNavigationSchool::linkNextForwardLayer(), TrajectoryManager::makeSinglePSimHit(), MSLayer::MSLayer(), TIBLayer::overlap(), PixelBlade::overlap(), TOBRod::overlap(), MuonNavigationPrinter::printLayer(), ParticlePropagator::setPropagationConditions(), cms::HICTkOuterStartingLayerFinder::startingLayers(), TIBLayer::TIBLayer(), TOBLayer::TOBLayer(), ValidateGeometry::validateDTLayerGeometry(), TracktoRPC::ValidRPCSurface(), and SimpleNavigableLayer::wellInside().
virtual float Bounds::thickness | ( | ) | const [pure virtual] |
"Thickness" of the bound around the surface; refer to the concrete class documentation for the specific definition.
Implemented in GeneralNSurfaceDelimitedBounds, GeneralTrapezoidalPlaneBounds, OpenBounds, RectangularPlaneBounds, SimpleConeBounds, SimpleCylinderBounds, SimpleDiskBounds, TrapezoidalPlaneBounds, FourPointPlaneBounds, and DiskSectorBounds.
Referenced by FWTGeoRecoGeometryESProducer::addDTGeometry(), FWRecoGeometryESProducer::addDTGeometry(), SiStripGainFromData::algoBeginJob(), DeDxDiscriminatorLearner::algoBeginJob(), DeDxDiscriminatorLearnerFromCalibTree::algoBeginJob(), SiStripGainFromCalibTree::algoBeginJob(), SiStripCalibLorentzAngle::algoBeginJob(), SiStripLAProfileBooker::analyze(), SiStripTrackingRecHitsValid::analyze(), DeDxDiscriminatorProducer::beginRun(), DeDxEstimatorProducerPixelTripplet::beginRun(), SiStripLAProfileBooker::beginRun(), SiStripDetInfoFileWriter::beginRun(), DeDxEstimatorProducer::beginRun(), BoundingBox::BoundingBox(), CSCGeometryBuilder::buildChamber(), ValidateGeometry::compareShape(), MuRingForwardDoubleLayer::compatible(), ForwardDetLayer::compatible(), MuRingForwardDoubleLayer::computeSurface(), TIBLayer::computeWindowSize(), BoundingBox::corners(), FWTGeoRecoGeometryESProducer::createShape(), RingMaker::determineExtensions(), MultipleScatteringGeometry::detLayers(), SiPixelDigitizerAlgorithm::digitize(), shallow::drift(), RectangularEtaPhiTrackingRegion::estimator(), ClusterShapeHitFilter::getCotangent(), MuonDetIdAssociator::getDetIdPoints(), HitPairGeneratorFromLayerPairForPhotonConversion::getLayerRadius(), HitPairGeneratorFromLayerPairForPhotonConversion::getLayerZ(), GlobalDetRodRangeZPhi::GlobalDetRodRangeZPhi(), PixelTripletNoTipGenerator::hitTriplets(), InnerDeltaPhi::initBarrelLayer(), InnerDeltaPhi::initForwardLayer(), ThirdHitRZPredictionBase::initLayer(), ThirdHitPrediction::initLayer(), TrajectoryManager::makeSinglePSimHit(), SiStripGainCosmicCalculator::moduleThickness(), MSLayer::MSLayer(), CylinderBuilderFromDet::operator()(), TIDLayer::overlapInR(), SiHitDigitizer::processHit(), MuonSimHitProducer::produce(), PixelCPEBase::setTheDet(), TIBLayer::TIBLayer(), TIDLayer::TIDLayer(), TOBLayer::TOBLayer(), ValidateGeometry::validateDTLayerGeometry(), and SimpleNavigableLayer::wellInside().
virtual float Bounds::width | ( | ) | const [pure virtual] |
"width" of the bounds; refer to the concrete class documentation for the specific definition.
Implemented in GeneralNSurfaceDelimitedBounds, GeneralTrapezoidalPlaneBounds, OpenBounds, RectangularPlaneBounds, SimpleConeBounds, SimpleCylinderBounds, SimpleDiskBounds, TrapezoidalPlaneBounds, FourPointPlaneBounds, and DiskSectorBounds.
Referenced by FWTGeoRecoGeometryESProducer::addDTGeometry(), FWRecoGeometryESProducer::addDTGeometry(), CkfDebugger::analyseRecHitNotFound(), BoundingBox::BoundingBox(), StripTopologyBuilder::build(), PixelTopologyBuilder::build(), ValidateGeometry::compareShape(), MuRodBarrelLayer::compatibleDets(), BoundingBox::corners(), HICTrajectoryCorrector::correct(), FWTGeoRecoGeometryESProducer::createShape(), RingMaker::determineExtensions(), cms::HICSeedMeasurementEstimator::estimate(), HICMeasurementEstimator::estimate(), SiTrackerGaussianSmearingRecHitConverter::gaussianSmearing(), MuonDetIdAssociator::getDetIdPoints(), TrackDetectorAssociator::getTAMuonChamberMatches(), GlobalDetRangeRPhi::GlobalDetRangeRPhi(), GlobalDetRangeZPhi::GlobalDetRangeZPhi(), GlobalDetRodRangeZPhi::GlobalDetRodRangeZPhi(), TrajectoryManager::makeSinglePSimHit(), SiStripGainCosmicCalculator::moduleWidth(), ParticlePropagator::setPropagationConditions(), ValidateGeometry::validateDTLayerGeometry(), TracktoRPC::ValidRPCSurface(), and widthAtHalfLength().
virtual float Bounds::widthAtHalfLength | ( | ) | const [inline, virtual] |
Width at half length. Useful for e.g. pitch definition.
Reimplemented in GeneralTrapezoidalPlaneBounds, and TrapezoidalPlaneBounds.
Definition at line 35 of file Bounds.h.
References width().
Referenced by StripTopologyBuilder::build().
{return width();}