CMS 3D CMS Logo

Public Member Functions | Private Attributes

ThirdHitPredictionFromInvParabola::MappedPoint< T > Class Template Reference

List of all members.

Public Member Functions

 MappedPoint ()
 MappedPoint (const T &aU, const T &aV, const TkRotation< T > *aRot)
 MappedPoint (const Basic2DVector< T > &point, const TkRotation< T > *aRot)
T u () const
Basic2DVector< Tunmap () const
T v () const

Private Attributes

const TkRotation< T > * pRot
T theU
T theV

Detailed Description

template<class T>
class ThirdHitPredictionFromInvParabola::MappedPoint< T >

Definition at line 51 of file ThirdHitPredictionFromInvParabola.h.


Constructor & Destructor Documentation

template<class T>
ThirdHitPredictionFromInvParabola::MappedPoint< T >::MappedPoint ( ) [inline]

Definition at line 53 of file ThirdHitPredictionFromInvParabola.h.

: theU(0), theV(0), pRot(0) { }
template<class T>
ThirdHitPredictionFromInvParabola::MappedPoint< T >::MappedPoint ( const T aU,
const T aV,
const TkRotation< T > *  aRot 
) [inline]

Definition at line 54 of file ThirdHitPredictionFromInvParabola.h.

        : theU(aU), theV(aV), pRot(aRot) { }
template<class T>
ThirdHitPredictionFromInvParabola::MappedPoint< T >::MappedPoint ( const Basic2DVector< T > &  point,
const TkRotation< T > *  aRot 
) [inline]

Definition at line 56 of file ThirdHitPredictionFromInvParabola.h.

        : pRot(aRot) {
      T invRadius2 = T(1)/point.mag2();
      Basic3DVector<T> rotated = (*pRot) * point;
      theU = rotated.x() * invRadius2;
      theV = rotated.y() * invRadius2;
    }

Member Function Documentation

template<class T>
T ThirdHitPredictionFromInvParabola::MappedPoint< T >::u ( ) const [inline]
template<class T>
Basic2DVector<T> ThirdHitPredictionFromInvParabola::MappedPoint< T >::unmap ( ) const [inline]

Definition at line 65 of file ThirdHitPredictionFromInvParabola.h.

Referenced by ThirdHitPredictionFromInvParabola::rangeRPhi(), and ThirdHitPredictionFromInvParabola::rangeRPhiSlow().

                                    {
      T radius2 = T(1)/(theU*theU+theV*theV); 
       Basic3DVector<T> tmp
           = (*pRot).multiplyInverse(Basic2DVector<T>(theU,theV));
       return Basic2DVector<T>( tmp.x()*radius2, tmp.y()*radius2);
    }
template<class T>
T ThirdHitPredictionFromInvParabola::MappedPoint< T >::v ( ) const [inline]

Member Data Documentation

template<class T>
const TkRotation<T>* ThirdHitPredictionFromInvParabola::MappedPoint< T >::pRot [private]

Definition at line 73 of file ThirdHitPredictionFromInvParabola.h.

template<class T>
T ThirdHitPredictionFromInvParabola::MappedPoint< T >::theU [private]
template<class T>
T ThirdHitPredictionFromInvParabola::MappedPoint< T >::theV [private]