CMS 3D CMS Logo

TRecHit1DMomConstraint Class Reference

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

Inheritance diagram for TRecHit1DMomConstraint:

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.
int charge () const
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
double err () const
virtual const TrackingRecHithit () const
virtual LocalPoint localPosition () const
virtual LocalError localPositionError () const
double mom () 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 ~TRecHit1DMomConstraint ()

Static Public Member Functions

static RecHitPointer build (const int charge, const double mom, const double err, const Surface *surface)

Private Member Functions

virtual TRecHit1DMomConstraintclone () const
 TRecHit1DMomConstraint (const TRecHit1DMomConstraint &other)
 TRecHit1DMomConstraint (const int charge, const double mom, const double err, const Surface *surface)
 Creates the TrackingRecHit internally, avoids redundent cloning.

Private Attributes

const int charge_
const double err_
const double mom_
const Surfacesurface_


Detailed Description

Definition at line 8 of file TRecHit1DMomConstraint.h.


Constructor & Destructor Documentation

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

Definition at line 11 of file TRecHit1DMomConstraint.h.

00011 {}

TRecHit1DMomConstraint::TRecHit1DMomConstraint ( const int  charge,
const double  mom,
const double  err,
const Surface surface 
) [inline, private]

Creates the TrackingRecHit internally, avoids redundent cloning.

Definition at line 74 of file TRecHit1DMomConstraint.h.

Referenced by build(), and clone().

00077                                                 : 
00078     charge_(charge),mom_(mom),err_(err),surface_(surface) {}

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

Definition at line 80 of file TRecHit1DMomConstraint.h.

00080                                                                :
00081     charge_( other.charge() ), mom_( other.mom() ),err_( other.err() ), surface_((other.surface())) {}
  


Member Function Documentation

static RecHitPointer TRecHit1DMomConstraint::build ( const int  charge,
const double  mom,
const double  err,
const Surface surface 
) [inline, static]

Definition at line 59 of file TRecHit1DMomConstraint.h.

References TRecHit1DMomConstraint().

00062                                                      {
00063     return RecHitPointer( new TRecHit1DMomConstraint( charge, mom, err, surface));
00064   }

virtual bool TRecHit1DMomConstraint::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 TRecHit1DMomConstraint.h.

00052 {return false;}

int TRecHit1DMomConstraint::charge ( void   )  const [inline]

Definition at line 39 of file TRecHit1DMomConstraint.h.

References charge_.

00039 {return charge_;}

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

Implements TransientTrackingRecHit.

Definition at line 83 of file TRecHit1DMomConstraint.h.

References TRecHit1DMomConstraint().

Referenced by clone().

00083                                                  {
00084     return new TRecHit1DMomConstraint(*this);
00085   }

virtual RecHitPointer TRecHit1DMomConstraint::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 TRecHit1DMomConstraint.h.

References clone().

00054 {return clone();}

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

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

Reimplemented from TransientTrackingRecHit.

Definition at line 57 of file TRecHit1DMomConstraint.h.

00057 {return 0;}

virtual const GeomDetUnit* TRecHit1DMomConstraint::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 TRecHit1DMomConstraint.h.

00056 {return 0;}

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

Implements TrackingRecHit.

Definition at line 32 of file TRecHit1DMomConstraint.h.

00032 {return 1;}

double TRecHit1DMomConstraint::err (  )  const [inline]

Definition at line 38 of file TRecHit1DMomConstraint.h.

References err_.

00038 {return err_;}

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

Implements TransientTrackingRecHit.

Definition at line 41 of file TRecHit1DMomConstraint.h.

Referenced by recHits().

00041 {return 0;}//fixme return invalid

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

Implements TrackingRecHit.

Definition at line 34 of file TRecHit1DMomConstraint.h.

00034 {return LocalPoint(0,0,0);}

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

Implements TrackingRecHit.

Definition at line 35 of file TRecHit1DMomConstraint.h.

00035 {return LocalError(0,0,0);}

double TRecHit1DMomConstraint::mom (  )  const [inline]

Definition at line 37 of file TRecHit1DMomConstraint.h.

References mom_.

00037 {return mom_;}

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

Implements TrackingRecHit.

Definition at line 13 of file TRecHit1DMomConstraint.h.

References charge_, mom_, and HLT_VtxMuL3::result.

00013                                              {
00014     AlgebraicVector result(1);
00015     result[0] = charge_/fabs(mom_);
00016     return result;
00017   }

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

Implements TrackingRecHit.

Definition at line 19 of file TRecHit1DMomConstraint.h.

References err_, m, and mom_.

00019                                                      {
00020     AlgebraicSymMatrix m(1);
00021     m[0][0] = err_/(mom_*mom_);//parametersErrors are squared
00022     m[0][0] *= m[0][0];
00023     return m;
00024   }

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

Implements TrackingRecHit.

Definition at line 26 of file TRecHit1DMomConstraint.h.

00026                                                    {
00027     AlgebraicMatrix theProjectionMatrix;
00028     theProjectionMatrix = AlgebraicMatrix( 1, 5, 0);
00029     theProjectionMatrix[0][0] = 1;
00030     return theProjectionMatrix;
00031   }

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

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

Implements TrackingRecHit.

Definition at line 48 of file TRecHit1DMomConstraint.h.

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

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

Access to component RecHits (if any).

Implements TrackingRecHit.

Definition at line 45 of file TRecHit1DMomConstraint.h.

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

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

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

Reimplemented from TransientTrackingRecHit.

Definition at line 66 of file TRecHit1DMomConstraint.h.

References surface_.

00066 {return surface_;}


Member Data Documentation

const int TRecHit1DMomConstraint::charge_ [private]

Definition at line 69 of file TRecHit1DMomConstraint.h.

Referenced by charge(), and parameters().

const double TRecHit1DMomConstraint::err_ [private]

Definition at line 71 of file TRecHit1DMomConstraint.h.

Referenced by err(), and parametersError().

const double TRecHit1DMomConstraint::mom_ [private]

Definition at line 70 of file TRecHit1DMomConstraint.h.

Referenced by mom(), parameters(), and parametersError().

const Surface* TRecHit1DMomConstraint::surface_ [private]

Definition at line 72 of file TRecHit1DMomConstraint.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