CMS 3D CMS Logo

Public Member Functions | Static Public Member Functions | Private Member Functions | Private Attributes

TRecHit2DPosConstraint Class Reference

#include <TRecHit2DPosConstraint.h>

Inheritance diagram for TRecHit2DPosConstraint:
TransientTrackingRecHit TrackingRecHit ReferenceCountedPoolAllocated BlockWipedPoolAllocated

List of all members.

Public Member Functions

virtual bool canImproveWithTrack () const
virtual RecHitPointer clone (const TrajectoryStateOnSurface &ts) const
virtual const GeomDetdet () const
 The GomeDet* can be zero for InvalidTransientRecHits and for TConstraintRecHit2Ds.
virtual const GeomDetUnitdetUnit () const
virtual int dimension () const
virtual const TrackingRecHithit () const
virtual LocalPoint localPosition () const
virtual LocalError localPositionError () const
virtual AlgebraicVector parameters () const
virtual AlgebraicSymMatrix parametersError () const
virtual AlgebraicMatrix projectionMatrix () const
virtual std::vector< const
TrackingRecHit * > 
recHits () const
 Access to component RecHits (if any)
virtual std::vector
< TrackingRecHit * > 
recHits ()
 Non-const access to component RecHits (if any)
virtual const Surfacesurface () const
virtual ~TRecHit2DPosConstraint ()

Static Public Member Functions

static RecHitPointer build (const LocalPoint &pos, const LocalError &err, const Surface *surface)

Private Member Functions

virtual TRecHit2DPosConstraintclone () const
 TRecHit2DPosConstraint (const LocalPoint &pos, const LocalError &err, const Surface *surface)
 Creates the TrackingRecHit internally, avoids redundent cloning.
 TRecHit2DPosConstraint (const TRecHit2DPosConstraint &other)

Private Attributes

const LocalError err_
const LocalPoint pos_
ConstReferenceCountingPointer
< Surface
surface_

Detailed Description

Definition at line 9 of file TRecHit2DPosConstraint.h.


Constructor & Destructor Documentation

virtual TRecHit2DPosConstraint::~TRecHit2DPosConstraint ( ) [inline, virtual]

Definition at line 12 of file TRecHit2DPosConstraint.h.

{}
TRecHit2DPosConstraint::TRecHit2DPosConstraint ( const LocalPoint pos,
const LocalError err,
const Surface surface 
) [inline, private]

Creates the TrackingRecHit internally, avoids redundent cloning.

Definition at line 72 of file TRecHit2DPosConstraint.h.

Referenced by build(), and clone().

                                                : 
    pos_(pos),err_(err),surface_(surface) {}
TRecHit2DPosConstraint::TRecHit2DPosConstraint ( const TRecHit2DPosConstraint other) [inline, private]

Definition at line 77 of file TRecHit2DPosConstraint.h.

                                                               :
    pos_( other.localPosition() ),err_( other.localPositionError() ), surface_((other.surface())) {}

Member Function Documentation

static RecHitPointer TRecHit2DPosConstraint::build ( const LocalPoint pos,
const LocalError err,
const Surface surface 
) [inline, static]

Definition at line 59 of file TRecHit2DPosConstraint.h.

References TRecHit2DPosConstraint().

                                                      {
    return RecHitPointer( new TRecHit2DPosConstraint( pos, err, surface));
  }
virtual bool TRecHit2DPosConstraint::canImproveWithTrack ( ) const [inline, virtual]

Returns true if the clone( const TrajectoryStateOnSurface&) method returns an improved hit, false if it returns an identical copy. In order to avoid redundent copies one should call canImproveWithTrack() before calling clone( const TrajectoryStateOnSurface&).

Reimplemented from TransientTrackingRecHit.

Definition at line 52 of file TRecHit2DPosConstraint.h.

{return false;}
virtual RecHitPointer TRecHit2DPosConstraint::clone ( const TrajectoryStateOnSurface ts) const [inline, virtual]

Returns a copy of the hit with parameters and errors computed with respect to the TrajectoryStateOnSurface given as argument. For concrete hits not capable to improve their parameters and errors this method returns an exact copy, and is equivalent to clone() without arguments.

Reimplemented from TransientTrackingRecHit.

Definition at line 54 of file TRecHit2DPosConstraint.h.

References clone().

Referenced by clone().

{return clone();}
virtual TRecHit2DPosConstraint* TRecHit2DPosConstraint::clone ( void  ) const [inline, private, virtual]

Implements TransientTrackingRecHit.

Definition at line 80 of file TRecHit2DPosConstraint.h.

References TRecHit2DPosConstraint().

                                                 {
    return new TRecHit2DPosConstraint(*this);
  }
virtual const GeomDet* TRecHit2DPosConstraint::det ( ) const [inline, virtual]

The GomeDet* can be zero for InvalidTransientRecHits and for TConstraintRecHit2Ds.

Reimplemented from TransientTrackingRecHit.

Definition at line 57 of file TRecHit2DPosConstraint.h.

{return 0;}
virtual const GeomDetUnit* TRecHit2DPosConstraint::detUnit ( ) const [inline, virtual]

CAUTION: the GeomDetUnit* is zero for composite hits (matched hits in the tracker, segments in the muon). Always check this pointer before using it!

Reimplemented from TransientTrackingRecHit.

Definition at line 56 of file TRecHit2DPosConstraint.h.

{return 0;}
virtual int TRecHit2DPosConstraint::dimension ( ) const [inline, virtual]

Implements TrackingRecHit.

Definition at line 38 of file TRecHit2DPosConstraint.h.

{return 2;}
virtual const TrackingRecHit* TRecHit2DPosConstraint::hit ( void  ) const [inline, virtual]

Implements TransientTrackingRecHit.

Definition at line 43 of file TRecHit2DPosConstraint.h.

Referenced by recHits().

{return 0;}//fixme return invalid
virtual LocalPoint TRecHit2DPosConstraint::localPosition ( ) const [inline, virtual]

Implements TrackingRecHit.

Definition at line 40 of file TRecHit2DPosConstraint.h.

References pos_.

Referenced by parameters().

{return pos_;}
virtual LocalError TRecHit2DPosConstraint::localPositionError ( ) const [inline, virtual]

Implements TrackingRecHit.

Definition at line 41 of file TRecHit2DPosConstraint.h.

References err_.

Referenced by parametersError().

{return err_;}
virtual AlgebraicVector TRecHit2DPosConstraint::parameters ( void  ) const [inline, virtual]
virtual AlgebraicSymMatrix TRecHit2DPosConstraint::parametersError ( ) const [inline, virtual]

Implements TrackingRecHit.

Definition at line 22 of file TRecHit2DPosConstraint.h.

References asciidump::le, localPositionError(), m, LocalError::xx(), LocalError::xy(), and LocalError::yy().

                                                     {
    AlgebraicSymMatrix m(2);
    LocalError le( localPositionError());
    m[0][0] = le.xx();
    m[0][1] = le.xy();
    m[1][1] = le.yy();
    return m;
  }
virtual AlgebraicMatrix TRecHit2DPosConstraint::projectionMatrix ( ) const [inline, virtual]

Implements TrackingRecHit.

Definition at line 31 of file TRecHit2DPosConstraint.h.

                                                   {
    AlgebraicMatrix theProjectionMatrix;
    theProjectionMatrix = AlgebraicMatrix( 2, 5, 0);
    theProjectionMatrix[0][3] = 1;
    theProjectionMatrix[1][4] = 1;
    return theProjectionMatrix;
  }
virtual std::vector<const TrackingRecHit*> TRecHit2DPosConstraint::recHits ( ) const [inline, virtual]

Access to component RecHits (if any)

Implements TrackingRecHit.

Definition at line 45 of file TRecHit2DPosConstraint.h.

References hit(), and TrackingRecHit::recHits().

                                                           {
    return hit()->recHits();
  }
virtual std::vector<TrackingRecHit*> TRecHit2DPosConstraint::recHits ( ) [inline, virtual]

Non-const access to component RecHits (if any)

Implements TrackingRecHit.

Definition at line 48 of file TRecHit2DPosConstraint.h.

                                               {
    return std::vector<TrackingRecHit*>();
  }
virtual const Surface* TRecHit2DPosConstraint::surface ( ) const [inline, virtual]

Reimplemented from TransientTrackingRecHit.

Definition at line 64 of file TRecHit2DPosConstraint.h.

{return &(*surface_);}

Member Data Documentation

Definition at line 68 of file TRecHit2DPosConstraint.h.

Referenced by localPositionError().

Definition at line 67 of file TRecHit2DPosConstraint.h.

Referenced by localPosition().

Definition at line 70 of file TRecHit2DPosConstraint.h.