CMS 3D CMS Logo

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

TRecHit1DMomConstraint Class Reference

#include <TRecHit1DMomConstraint.h>

Inheritance diagram for TRecHit1DMomConstraint:
TransientTrackingRecHit TrackingRecHit ReferenceCountedPoolAllocated BlockWipedPoolAllocated

List of all members.

Public Member Functions

virtual bool canImproveWithTrack () const
int charge () 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
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< 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 ~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 int charge, const double mom, const double err, const Surface *surface)
 Creates the TrackingRecHit internally, avoids redundent cloning.
 TRecHit1DMomConstraint (const TRecHit1DMomConstraint &other)

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.

{}
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().

                                                : 
    charge_(charge),mom_(mom),err_(err),surface_(surface) {}
TRecHit1DMomConstraint::TRecHit1DMomConstraint ( const TRecHit1DMomConstraint other) [inline, private]

Definition at line 80 of file TRecHit1DMomConstraint.h.

                                                               :
    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().

                                                     {
    return RecHitPointer( new TRecHit1DMomConstraint( charge, mom, err, surface));
  }
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.

{return false;}
int TRecHit1DMomConstraint::charge ( void  ) const [inline]

Definition at line 39 of file TRecHit1DMomConstraint.h.

References charge_.

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

Implements TransientTrackingRecHit.

Definition at line 83 of file TRecHit1DMomConstraint.h.

References TRecHit1DMomConstraint().

                                                 {
    return new TRecHit1DMomConstraint(*this);
  }
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().

Referenced by clone().

{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.

{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.

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

Implements TrackingRecHit.

Definition at line 32 of file TRecHit1DMomConstraint.h.

{return 1;}
double TRecHit1DMomConstraint::err ( ) const [inline]

Definition at line 38 of file TRecHit1DMomConstraint.h.

References err_.

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

Implements TransientTrackingRecHit.

Definition at line 41 of file TRecHit1DMomConstraint.h.

Referenced by recHits().

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

Implements TrackingRecHit.

Definition at line 34 of file TRecHit1DMomConstraint.h.

{return LocalPoint(0,0,0);}
virtual LocalError TRecHit1DMomConstraint::localPositionError ( ) const [inline, virtual]

Implements TrackingRecHit.

Definition at line 35 of file TRecHit1DMomConstraint.h.

{return LocalError(0,0,0);}
double TRecHit1DMomConstraint::mom ( ) const [inline]

Definition at line 37 of file TRecHit1DMomConstraint.h.

References mom_.

{return mom_;}
virtual AlgebraicVector TRecHit1DMomConstraint::parameters ( void  ) const [inline, virtual]

Implements TrackingRecHit.

Definition at line 13 of file TRecHit1DMomConstraint.h.

References charge_, mom_, and query::result.

                                             {
    AlgebraicVector result(1);
    result[0] = charge_/fabs(mom_);
    return result;
  }
virtual AlgebraicSymMatrix TRecHit1DMomConstraint::parametersError ( ) const [inline, virtual]

Implements TrackingRecHit.

Definition at line 19 of file TRecHit1DMomConstraint.h.

References err_, m, and mom_.

                                                     {
    AlgebraicSymMatrix m(1);
    m[0][0] = err_/(mom_*mom_);//parametersErrors are squared
    m[0][0] *= m[0][0];
    return m;
  }
virtual AlgebraicMatrix TRecHit1DMomConstraint::projectionMatrix ( ) const [inline, virtual]

Implements TrackingRecHit.

Definition at line 26 of file TRecHit1DMomConstraint.h.

                                                   {
    AlgebraicMatrix theProjectionMatrix;
    theProjectionMatrix = AlgebraicMatrix( 1, 5, 0);
    theProjectionMatrix[0][0] = 1;
    return theProjectionMatrix;
  }
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().

                                                           {
    return hit()->recHits();
  }
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.

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

Reimplemented from TransientTrackingRecHit.

Definition at line 66 of file TRecHit1DMomConstraint.h.

References surface_.

{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().

Definition at line 72 of file TRecHit1DMomConstraint.h.

Referenced by surface().