CMS 3D CMS Logo

GenericProjectedRecHit2D Class Reference

#include <RecoTracker/SiTrackerMRHTools/interface/GenericProjectedRecHit2D.h>

Inheritance diagram for GenericProjectedRecHit2D:

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.
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 int dimension () const
virtual DetId geographicalId () const
virtual const TrackingRecHithit () const
virtual bool isValid () const
virtual LocalPoint localPosition () const
virtual LocalError localPositionError () const
const GeomDetoriginalDet () const
virtual AlgebraicVector parameters () const
virtual AlgebraicSymMatrix parametersError () const
virtual AlgebraicMatrix projectionMatrix () const
const TrackingRecHitPropagatorpropagator () 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).

Static Public Member Functions

static RecHitPointer build (const LocalPoint &pos, const LocalError &err, const GeomDet *det, const GeomDet *originaldet, const TransientTrackingRecHit::ConstRecHitPointer originalHit, const TrackingRecHitPropagator *propagator)

Private Member Functions

virtual GenericProjectedRecHit2Dclone () const
 GenericProjectedRecHit2D (const LocalPoint &pos, const LocalError &err, const GeomDet *det, const GeomDet *originaldet, const TransientTrackingRecHit::ConstRecHitPointer originalHit, const TrackingRecHitPropagator *propagator)

Private Attributes

int theDimension
LocalError theLe
LocalPoint theLp
const GeomDettheOriginalDet
TransientTrackingRecHit::ConstRecHitPointer theOriginalTransientHit
AlgebraicMatrix theProjectionMatrix
const TrackingRecHitPropagatorthePropagator


Detailed Description

Definition at line 8 of file GenericProjectedRecHit2D.h.


Constructor & Destructor Documentation

GenericProjectedRecHit2D::GenericProjectedRecHit2D ( const LocalPoint pos,
const LocalError err,
const GeomDet det,
const GeomDet originaldet,
const TransientTrackingRecHit::ConstRecHitPointer  originalHit,
const TrackingRecHitPropagator propagator 
) [private]

Definition at line 8 of file GenericProjectedRecHit2D.cc.

References theDimension, theLe, theLp, theOriginalDet, theOriginalTransientHit, theProjectionMatrix, and thePropagator.

Referenced by build(), and clone().

00011                                                                                                 :
00012   TransientTrackingRecHit( det, originalHit->weight(), originalHit->getAnnealingFactor()) 
00013 {
00014         theOriginalDet = originalDet;
00015         thePropagator = propagator;
00016         theOriginalTransientHit = originalHit;          
00017         theLp = pos;
00018         theLe = err;
00019         theProjectionMatrix = originalHit->projectionMatrix();
00020         theDimension = originalHit->dimension();        
00021         //theOriginalHit = originalTransientHit.hit()->clone();
00022 }


Member Function Documentation

static RecHitPointer GenericProjectedRecHit2D::build ( const LocalPoint pos,
const LocalError err,
const GeomDet det,
const GeomDet originaldet,
const TransientTrackingRecHit::ConstRecHitPointer  originalHit,
const TrackingRecHitPropagator propagator 
) [inline, static]

Definition at line 50 of file GenericProjectedRecHit2D.h.

References GenericProjectedRecHit2D().

00053                                                                           {
00054     return RecHitPointer( new GenericProjectedRecHit2D( pos, err, det, originaldet, originalHit, propagator));
00055   }

virtual bool GenericProjectedRecHit2D::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 46 of file GenericProjectedRecHit2D.h.

00046 {return true;} 

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

Implements TransientTrackingRecHit.

Definition at line 75 of file GenericProjectedRecHit2D.h.

References GenericProjectedRecHit2D().

00075                                                   {
00076     return new GenericProjectedRecHit2D(*this);
00077   }

TransientTrackingRecHit::RecHitPointer GenericProjectedRecHit2D::clone ( const TrajectoryStateOnSurface ts  )  const [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 32 of file GenericProjectedRecHit2D.cc.

References TransientTrackingRecHit::det(), TrackingRecHitPropagator::project(), theOriginalTransientHit, and thePropagator.

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

Implements TrackingRecHit.

Definition at line 27 of file GenericProjectedRecHit2D.h.

References theDimension.

00027 {return theDimension;}

virtual DetId GenericProjectedRecHit2D::geographicalId (  )  const [inline, virtual]

Reimplemented from TrackingRecHit.

Definition at line 25 of file GenericProjectedRecHit2D.h.

References TransientTrackingRecHit::det(), and GeomDet::geographicalId().

00025 {return det() ? det()->geographicalId() : DetId();}

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

Implements TransientTrackingRecHit.

Definition at line 30 of file GenericProjectedRecHit2D.h.

References theOriginalTransientHit.

00030 {return theOriginalTransientHit->hit();};       

virtual bool GenericProjectedRecHit2D::isValid ( void   )  const [inline, virtual]

Reimplemented from TrackingRecHit.

Definition at line 32 of file GenericProjectedRecHit2D.h.

00032 {return true;}

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

Implements TrackingRecHit.

Definition at line 19 of file GenericProjectedRecHit2D.h.

References theLp.

00019 {return theLp;}

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

Implements TrackingRecHit.

Definition at line 21 of file GenericProjectedRecHit2D.h.

References theLe.

Referenced by parametersError().

00021 {return theLe;}  

const GeomDet* GenericProjectedRecHit2D::originalDet (  )  const [inline]

Definition at line 48 of file GenericProjectedRecHit2D.h.

References theOriginalDet.

00048 {return theOriginalDet;}

AlgebraicVector GenericProjectedRecHit2D::parameters ( void   )  const [virtual]

Implements TrackingRecHit.

Definition at line 24 of file GenericProjectedRecHit2D.cc.

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

00024                                                           {
00025         AlgebraicVector result(2);
00026         result[0] = theLp.x();
00027         result[1] = theLp.y();
00028         return result;
00029 }

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

Implements TrackingRecHit.

Definition at line 11 of file GenericProjectedRecHit2D.h.

References TransientTrackingRecHit::det(), and localPositionError().

00011                                                      {
00012     return HelpertRecHit2DLocalPos().parError( localPositionError(), *det()); 
00013   }

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

Implements TrackingRecHit.

Definition at line 23 of file GenericProjectedRecHit2D.h.

References theProjectionMatrix.

00023 {return theProjectionMatrix;}   

const TrackingRecHitPropagator* GenericProjectedRecHit2D::propagator ( void   )  const [inline]

Definition at line 44 of file GenericProjectedRecHit2D.h.

References thePropagator.

00044 {return thePropagator;}

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

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

Implements TrackingRecHit.

Definition at line 39 of file GenericProjectedRecHit2D.h.

00039                                                {
00040         //should it do something different?
00041         return std::vector<TrackingRecHit*>();
00042   }

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

Access to component RecHits (if any).

Implements TrackingRecHit.

Definition at line 34 of file GenericProjectedRecHit2D.h.

00034                                                            {
00035         //return theOriginalTransientHit->hit()->recHits();
00036         return std::vector<const TrackingRecHit*>();
00037   }


Member Data Documentation

int GenericProjectedRecHit2D::theDimension [private]

Definition at line 68 of file GenericProjectedRecHit2D.h.

Referenced by dimension(), and GenericProjectedRecHit2D().

LocalError GenericProjectedRecHit2D::theLe [private]

Definition at line 64 of file GenericProjectedRecHit2D.h.

Referenced by GenericProjectedRecHit2D(), and localPositionError().

LocalPoint GenericProjectedRecHit2D::theLp [private]

Definition at line 63 of file GenericProjectedRecHit2D.h.

Referenced by GenericProjectedRecHit2D(), localPosition(), and parameters().

const GeomDet* GenericProjectedRecHit2D::theOriginalDet [private]

Definition at line 61 of file GenericProjectedRecHit2D.h.

Referenced by GenericProjectedRecHit2D(), and originalDet().

TransientTrackingRecHit::ConstRecHitPointer GenericProjectedRecHit2D::theOriginalTransientHit [private]

Definition at line 62 of file GenericProjectedRecHit2D.h.

Referenced by clone(), GenericProjectedRecHit2D(), and hit().

AlgebraicMatrix GenericProjectedRecHit2D::theProjectionMatrix [private]

Definition at line 65 of file GenericProjectedRecHit2D.h.

Referenced by GenericProjectedRecHit2D(), and projectionMatrix().

const TrackingRecHitPropagator* GenericProjectedRecHit2D::thePropagator [private]

Definition at line 66 of file GenericProjectedRecHit2D.h.

Referenced by clone(), GenericProjectedRecHit2D(), and propagator().


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