CMS 3D CMS Logo

Public Types | Public Member Functions | Protected Attributes

ThirdHitRZPredictionBase Class Reference

#include <ThirdHitRZPredictionBase.h>

Inheritance diagram for ThirdHitRZPredictionBase:
ThirdHitRZPrediction< Propagator >

List of all members.

Public Types

typedef
TkTrackingRegionsMargin< float > 
Margin
typedef PixelRecoRange< float > Range

Public Member Functions

const RangedetRange () const
const RangedetSize () const
void initLayer (const DetLayer *layer)
void initTolerance (float tolerance)
 ThirdHitRZPredictionBase ()
 ThirdHitRZPredictionBase (float tolerance, const DetLayer *layer=0)

Protected Attributes

bool theBarrel
Range theDetRange
Range theDetSize
bool theForward
Margin theTolerance

Detailed Description

Definition at line 18 of file ThirdHitRZPredictionBase.h.


Member Typedef Documentation

Definition at line 21 of file ThirdHitRZPredictionBase.h.

Definition at line 20 of file ThirdHitRZPredictionBase.h.


Constructor & Destructor Documentation

ThirdHitRZPredictionBase::ThirdHitRZPredictionBase ( )

Definition at line 9 of file ThirdHitRZPredictionBase.cc.

                                                   : 
  theBarrel(false), theForward(false), theTolerance(0.,0.)
{}
ThirdHitRZPredictionBase::ThirdHitRZPredictionBase ( float  tolerance,
const DetLayer layer = 0 
)

Definition at line 13 of file ThirdHitRZPredictionBase.cc.

References initLayer().

  : theBarrel(false), theForward(false), theTolerance(tolerance, tolerance)
{
    if (layer) initLayer(layer);
}

Member Function Documentation

const Range& ThirdHitRZPredictionBase::detRange ( ) const [inline]

Definition at line 26 of file ThirdHitRZPredictionBase.h.

References theDetRange.

{ return theDetRange; }
const Range& ThirdHitRZPredictionBase::detSize ( ) const [inline]

Definition at line 27 of file ThirdHitRZPredictionBase.h.

References theDetSize.

{ return theDetSize; }
void ThirdHitRZPredictionBase::initLayer ( const DetLayer layer)

Definition at line 20 of file ThirdHitRZPredictionBase.cc.

References Reference_intrackfit_cff::barrel, BoundSurface::bounds(), Reference_intrackfit_cff::endcap, Bounds::length(), DetLayer::location(), CosmicsPD_Skims::maxZ, GeometricSearchDet::position(), CosmicsPD_Skims::radius, BarrelDetLayer::specificSurface(), BarrelDetLayer::surface(), ForwardDetLayer::surface(), theBarrel, theDetRange, theDetSize, theForward, Bounds::thickness(), and PV3DBase< T, PVType, FrameType >::z().

Referenced by PixelTripletHLTGenerator::hitTriplets(), and ThirdHitRZPredictionBase().

{
  if (layer->location() == GeomDetEnumerators::barrel) {
    theBarrel = true;
    theForward = false;
    const BarrelDetLayer& bl = dynamic_cast<const BarrelDetLayer&>(*layer);
    float halfThickness  = bl.surface().bounds().thickness()/2;
    float radius = bl.specificSurface().radius();
    theDetRange = Range(radius-halfThickness, radius+halfThickness);
    float maxZ = bl.surface().bounds().length()/2;
    theDetSize = Range(-maxZ, maxZ);
  } else if (layer->location() == GeomDetEnumerators::endcap) {
    theBarrel= false;
    theForward = true;
    const ForwardDetLayer& fl = dynamic_cast<const ForwardDetLayer&>(*layer);
    float halfThickness  = fl.surface().bounds().thickness()/2;
    float zLayer = fl.position().z() ;
    theDetRange = Range(zLayer-halfThickness, zLayer+halfThickness);
    const SimpleDiskBounds& diskRadialBounds =
                 static_cast<const SimpleDiskBounds &>(fl.surface().bounds());
    theDetSize = Range(diskRadialBounds.innerRadius(), diskRadialBounds.outerRadius());
  }
}
void ThirdHitRZPredictionBase::initTolerance ( float  tolerance) [inline]

Definition at line 29 of file ThirdHitRZPredictionBase.h.

References theTolerance.

{ theTolerance = Margin(tolerance, tolerance); }

Member Data Documentation

Definition at line 33 of file ThirdHitRZPredictionBase.h.

Referenced by initLayer().

Definition at line 34 of file ThirdHitRZPredictionBase.h.

Referenced by detRange(), and initLayer().

Definition at line 34 of file ThirdHitRZPredictionBase.h.

Referenced by detSize(), and initLayer().

Definition at line 33 of file ThirdHitRZPredictionBase.h.

Referenced by initLayer().

Definition at line 35 of file ThirdHitRZPredictionBase.h.

Referenced by initTolerance().