CMS 3D CMS Logo

TRecHit2DPosConstraint Class Reference

#include <RecoTracker/TransientTrackingRecHit/interface/TRecHit2DPosConstraint.h>

Inheritance diagram for TRecHit2DPosConstraint:

TransientTrackingRecHit TrackingRecHit ReferenceCounted

List of all members.

Public Member Functions

virtual bool canImproveWithTrack () const
 Returns true if the clone( const TrajectoryStateOnSurface&) method returns an improved hit, false if it returns an identical copy.
virtual RecHitPointer clone (const TrajectoryStateOnSurface &ts) const
 Returns a copy of the hit with parameters and errors computed with respect to the TrajectoryStateOnSurface given as argument.
virtual const GeomDetdet () const
 The GomeDet* can be zero for InvalidTransientRecHits and for TConstraintRecHit2Ds.
virtual const GeomDetUnitdetUnit () const
 CAUTION: the GeomDetUnit* is zero for composite hits (matched hits in the tracker, segments in the muon).
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
< TrackingRecHit * > 
recHits ()
 Non-const access to component RecHits (if any).
virtual std::vector< const
TrackingRecHit * > 
recHits () 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 TRecHit2DPosConstraint &other)
 TRecHit2DPosConstraint (const LocalPoint &pos, const LocalError &err, const Surface *surface)
 Creates the TrackingRecHit internally, avoids redundent cloning.

Private Attributes

const LocalErrorerr_
const LocalPointpos_
const Surfacesurface_


Detailed Description

Definition at line 8 of file TRecHit2DPosConstraint.h.


Constructor & Destructor Documentation

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

Definition at line 11 of file TRecHit2DPosConstraint.h.

00011 {}

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

Creates the TrackingRecHit internally, avoids redundent cloning.

Definition at line 70 of file TRecHit2DPosConstraint.h.

Referenced by build(), and clone().

00072                                                 : 
00073     pos_(pos),err_(err),surface_(surface) {}

TRecHit2DPosConstraint::TRecHit2DPosConstraint ( const TRecHit2DPosConstraint other  )  [inline, private]

Definition at line 75 of file TRecHit2DPosConstraint.h.

00075                                                                :
00076     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 58 of file TRecHit2DPosConstraint.h.

References TRecHit2DPosConstraint().

00059                                                       {
00060     return RecHitPointer( new TRecHit2DPosConstraint( pos, err, surface));
00061   }

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 51 of file TRecHit2DPosConstraint.h.

00051 {return false;}

virtual TRecHit2DPosConstraint* TRecHit2DPosConstraint::clone ( void   )  const [inline, private, virtual]

Implements TransientTrackingRecHit.

Definition at line 78 of file TRecHit2DPosConstraint.h.

References TRecHit2DPosConstraint().

Referenced by clone().

00078                                                  {
00079     return new TRecHit2DPosConstraint(*this);
00080   }

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 53 of file TRecHit2DPosConstraint.h.

References clone().

00053 {return clone();}

virtual const GeomDet* TRecHit2DPosConstraint::det (  )  const [inline, virtual]

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

Reimplemented from TransientTrackingRecHit.

Definition at line 56 of file TRecHit2DPosConstraint.h.

00056 {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 55 of file TRecHit2DPosConstraint.h.

00055 {return 0;}

virtual int TRecHit2DPosConstraint::dimension (  )  const [inline, virtual]

Implements TrackingRecHit.

Definition at line 37 of file TRecHit2DPosConstraint.h.

00037 {return 2;}

virtual const TrackingRecHit* TRecHit2DPosConstraint::hit ( void   )  const [inline, virtual]

Implements TransientTrackingRecHit.

Definition at line 42 of file TRecHit2DPosConstraint.h.

Referenced by recHits().

00042 {return 0;}//fixme return invalid

virtual LocalPoint TRecHit2DPosConstraint::localPosition (  )  const [inline, virtual]

Implements TrackingRecHit.

Definition at line 39 of file TRecHit2DPosConstraint.h.

References pos_.

Referenced by parameters().

00039 {return pos_;}

virtual LocalError TRecHit2DPosConstraint::localPositionError (  )  const [inline, virtual]

Implements TrackingRecHit.

Definition at line 40 of file TRecHit2DPosConstraint.h.

References err_.

Referenced by parametersError().

00040 {return err_;}

virtual AlgebraicVector TRecHit2DPosConstraint::parameters ( void   )  const [inline, virtual]

Implements TrackingRecHit.

Definition at line 13 of file TRecHit2DPosConstraint.h.

References localPosition(), lp, HLT_VtxMuL3::result, PV3DBase< T, PVType, FrameType >::x(), and PV3DBase< T, PVType, FrameType >::y().

00013                                              {
00014     AlgebraicVector result(2);
00015     LocalPoint lp = localPosition();
00016     result[0] = lp.x();
00017     result[1] = lp.y();
00018     return result;
00019   }

virtual AlgebraicSymMatrix TRecHit2DPosConstraint::parametersError (  )  const [inline, virtual]

Implements TrackingRecHit.

Definition at line 21 of file TRecHit2DPosConstraint.h.

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

00021                                                      {
00022     AlgebraicSymMatrix m(2);
00023     LocalError le( localPositionError());
00024     m[0][0] = le.xx();
00025     m[0][1] = le.xy();
00026     m[1][1] = le.yy();
00027     return m;
00028   }

virtual AlgebraicMatrix TRecHit2DPosConstraint::projectionMatrix (  )  const [inline, virtual]

Implements TrackingRecHit.

Definition at line 30 of file TRecHit2DPosConstraint.h.

00030                                                    {
00031     AlgebraicMatrix theProjectionMatrix;
00032     theProjectionMatrix = AlgebraicMatrix( 2, 5, 0);
00033     theProjectionMatrix[0][3] = 1;
00034     theProjectionMatrix[1][4] = 1;
00035     return theProjectionMatrix;
00036   }

virtual std::vector<TrackingRecHit*> TRecHit2DPosConstraint::recHits (  )  [inline, virtual]

Non-const access to component RecHits (if any).

Implements TrackingRecHit.

Definition at line 47 of file TRecHit2DPosConstraint.h.

00047                                                {
00048     return std::vector<TrackingRecHit*>();
00049   }

virtual std::vector<const TrackingRecHit*> TRecHit2DPosConstraint::recHits (  )  const [inline, virtual]

Access to component RecHits (if any).

Implements TrackingRecHit.

Definition at line 44 of file TRecHit2DPosConstraint.h.

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

00044                                                            {
00045     return hit()->recHits();
00046   }

virtual const Surface* TRecHit2DPosConstraint::surface (  )  const [inline, virtual]

Reimplemented from TransientTrackingRecHit.

Definition at line 63 of file TRecHit2DPosConstraint.h.

References surface_.

00063 {return surface_;}


Member Data Documentation

const LocalError& TRecHit2DPosConstraint::err_ [private]

Definition at line 67 of file TRecHit2DPosConstraint.h.

Referenced by localPositionError().

const LocalPoint& TRecHit2DPosConstraint::pos_ [private]

Definition at line 66 of file TRecHit2DPosConstraint.h.

Referenced by localPosition().

const Surface* TRecHit2DPosConstraint::surface_ [private]

Definition at line 68 of file TRecHit2DPosConstraint.h.

Referenced by surface().


The documentation for this class was generated from the following file:
Generated on Tue Jun 9 18:34:30 2009 for CMSSW by  doxygen 1.5.4