CMS 3D CMS Logo

GlobalDetRangeZPhi Class Reference

Implementation class for PhiZMeasurementEstimator etc. More...

#include <RecoTracker/TkTrackingRegions/interface/GlobalDetRangeZPhi.h>

List of all members.

Public Types

typedef std::pair< float, float > Range

Public Member Functions

 GlobalDetRangeZPhi (const BoundPlane &det)
Range phiRange () const
Range zRange () const

Private Attributes

Range thePhiRange
Range theZRange


Detailed Description

Implementation class for PhiZMeasurementEstimator etc.

Definition at line 11 of file GlobalDetRangeZPhi.h.


Member Typedef Documentation

typedef std::pair<float,float> GlobalDetRangeZPhi::Range

Definition at line 14 of file GlobalDetRangeZPhi.h.


Constructor & Destructor Documentation

GlobalDetRangeZPhi::GlobalDetRangeZPhi ( const BoundPlane det  ) 

Definition at line 11 of file GlobalDetRangeZPhi.cc.

References BoundSurface::bounds(), i, Bounds::length(), PV3DBase< T, PVType, FrameType >::phi(), phi, thePhiRange, theZRange, Surface::toGlobal(), Bounds::width(), and z.

00011                                                                {
00012 
00013   float dx = plane.bounds().width()/2.;
00014   float dy = plane.bounds().length()/2.;
00015 
00016   vector<Surface::GlobalPoint> corners(4);
00017   corners[0] = plane.toGlobal( LocalPoint( -dx, -dy, 0));
00018   corners[1] = plane.toGlobal( LocalPoint( -dx,  dy, 0));
00019   corners[2] = plane.toGlobal( LocalPoint(  dx, -dy, 0));
00020   corners[3] = plane.toGlobal( LocalPoint(  dx,  dy, 0));
00021 
00022   float phimin = corners[0].phi();  float phimax = phimin;
00023   float zmin   = corners[0].z();    float zmax   = zmin;
00024   for ( int i=1; i<4; i++) {
00025     float phi = corners[i].phi();
00026     if ( PhiLess()( phi, phimin)) phimin = phi;
00027     if ( PhiLess()( phimax, phi)) phimax = phi;
00028 
00029     float z = corners[i].z();
00030     if ( z < zmin) zmin = z;
00031     if ( z > zmax) zmax = z;
00032   }
00033 
00034   theZRange.first    = zmin;
00035   theZRange.second   = zmax;
00036   thePhiRange.first  = phimin;
00037   thePhiRange.second = phimax;
00038 
00039 }


Member Function Documentation

Range GlobalDetRangeZPhi::phiRange (  )  const [inline]

Definition at line 19 of file GlobalDetRangeZPhi.h.

References thePhiRange.

Referenced by OuterDetCompatibility::operator()().

00019 { return thePhiRange;}

Range GlobalDetRangeZPhi::zRange (  )  const [inline]

Definition at line 18 of file GlobalDetRangeZPhi.h.

References theZRange.

Referenced by OuterDetCompatibility::operator()().

00018 { return theZRange;}


Member Data Documentation

Range GlobalDetRangeZPhi::thePhiRange [private]

Definition at line 23 of file GlobalDetRangeZPhi.h.

Referenced by GlobalDetRangeZPhi(), and phiRange().

Range GlobalDetRangeZPhi::theZRange [private]

Definition at line 22 of file GlobalDetRangeZPhi.h.

Referenced by GlobalDetRangeZPhi(), and zRange().


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