CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
List of all members | Public Member Functions | Static Public Member Functions | Private Member Functions | Private Attributes
TRecHit5DParamConstraint Class Reference

#include <TRecHit5DParamConstraint.h>

Inheritance diagram for TRecHit5DParamConstraint:
TrackingRecHit

Public Member Functions

virtual bool canImproveWithTrack () const
 
virtual int charge () const
 
virtual
TransientTrackingRecHit::RecHitPointer 
clone (const TrajectoryStateOnSurface &tsos) const
 
virtual TrackingRecHitcloneHit () const
 
virtual const GeomDetdet () const
 
virtual const GeomDetUnitdetUnit () const
 
virtual int dimension () const
 
virtual float errorGlobalR () const
 
virtual float errorGlobalRPhi () const
 
virtual float errorGlobalZ () const
 
virtual GlobalPoint globalPosition () const
 
virtual GlobalError globalPositionError () 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) More...
 
virtual std::vector
< TrackingRecHit * > 
recHits ()
 Non-const access to component RecHits (if any) More...
 
virtual bool sharesInput (const TrackingRecHit *, SharedInputType) const
 
virtual const Surfacesurface () const
 
virtual ~TRecHit5DParamConstraint ()
 
- Public Member Functions inherited from TrackingRecHit
RecHitPointer cloneForFit (const GeomDet &idet) const
 
virtual RecHitPointer cloneSH () const
 
const GeomDetdet () const
 
DetId geographicalId () const
 
virtual void getKfComponents (KfComponentsHolder &holder) const
 
unsigned int getRTTI () const
 
Type getType () const
 
virtual bool hasPositionAndError () const
 to be redefined by daughter class More...
 
bool isValid () const
 
id_type rawId () const
 
virtual void recHitsV (std::vector< const TrackingRecHit * > &) const
 
virtual void recHitsV (std::vector< TrackingRecHit * > &)
 
virtual void setDet (const GeomDet &idet)
 
 TrackingRecHit (DetId id, Type type=valid)
 
 TrackingRecHit (id_type id=0, Type type=valid)
 
 TrackingRecHit (DetId id, unsigned int rt, Type type=valid)
 
 TrackingRecHit (const GeomDet &idet, Type type=valid)
 
 TrackingRecHit (const GeomDet &idet, unsigned int rt, Type type=valid)
 
 TrackingRecHit (const GeomDet &idet, TrackingRecHit const &rh)
 
virtual ConstRecHitContainer transientHits () const
 
Type type () const
 
virtual float weight () const
 
virtual ~TrackingRecHit ()
 

Static Public Member Functions

static
TransientTrackingRecHit::RecHitPointer 
build (const TrajectoryStateOnSurface &tsos)
 

Private Member Functions

virtual TRecHit5DParamConstraintclone () const
 
const TrajectoryStateOnSurfacetrajectoryState () const
 
 TRecHit5DParamConstraint (const TrajectoryStateOnSurface &tsos)
 
 TRecHit5DParamConstraint (const TRecHit5DParamConstraint &other)
 

Private Attributes

const TrajectoryStateOnSurface tsos_
 

Additional Inherited Members

- Public Types inherited from TrackingRecHit
typedef std::vector
< ConstRecHitPointer
ConstRecHitContainer
 
using ConstRecHitPointer = std::shared_ptr< TrackingRecHit const >
 
typedef unsigned int id_type
 
typedef std::vector
< ConstRecHitPointer
RecHitContainer
 
using RecHitPointer = std::shared_ptr< TrackingRecHit const >
 
enum  SharedInputType { all, some }
 definition of equality via shared input More...
 
enum  Type {
  valid = 0, missing = 1, inactive = 2, bad = 3,
  missing_inner = 4, missing_outer = 5
}
 
- Static Public Attributes inherited from TrackingRecHit
static const int rttiShift = 24
 
static const int typeMask = 0xf
 
- Protected Member Functions inherited from TrackingRecHit
void setId (id_type iid)
 
void setRTTI (unsigned int rt)
 
void setType (Type ttype)
 

Detailed Description

Definition at line 10 of file TRecHit5DParamConstraint.h.

Constructor & Destructor Documentation

TRecHit5DParamConstraint::TRecHit5DParamConstraint ( const TrajectoryStateOnSurface tsos)
inlineprivate

Definition at line 14 of file TRecHit5DParamConstraint.h.

Referenced by build(), and clone().

14 : tsos_( tsos ) {}
const TrajectoryStateOnSurface tsos_
TRecHit5DParamConstraint::TRecHit5DParamConstraint ( const TRecHit5DParamConstraint other)
inlineprivate

Definition at line 16 of file TRecHit5DParamConstraint.h.

16 : tsos_( other.trajectoryState() ) {}
const TrajectoryStateOnSurface & trajectoryState() const
const TrajectoryStateOnSurface tsos_
virtual TRecHit5DParamConstraint::~TRecHit5DParamConstraint ( )
inlinevirtual

Definition at line 20 of file TRecHit5DParamConstraint.h.

20 {}

Member Function Documentation

static TransientTrackingRecHit::RecHitPointer TRecHit5DParamConstraint::build ( const TrajectoryStateOnSurface tsos)
inlinestatic

Definition at line 67 of file TRecHit5DParamConstraint.h.

References TRecHit5DParamConstraint().

67  {
68  return RecHitPointer( new TRecHit5DParamConstraint( tsos ) );
69  }
TRecHit5DParamConstraint(const TrajectoryStateOnSurface &tsos)
std::shared_ptr< TrackingRecHit const > RecHitPointer
virtual bool TRecHit5DParamConstraint::canImproveWithTrack ( ) const
inlinevirtual

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&). this will be done inside the TkCloner itself

Reimplemented from TrackingRecHit.

Definition at line 39 of file TRecHit5DParamConstraint.h.

39 { return false; }
virtual int TRecHit5DParamConstraint::charge ( void  ) const
inlinevirtual

Definition at line 37 of file TRecHit5DParamConstraint.h.

References TrajectoryStateOnSurface::charge(), and tsos_.

37 { return tsos_.charge(); }
const TrajectoryStateOnSurface tsos_
virtual TransientTrackingRecHit::RecHitPointer TRecHit5DParamConstraint::clone ( const TrajectoryStateOnSurface tsos) const
inlinevirtual

Definition at line 62 of file TRecHit5DParamConstraint.h.

References TRecHit5DParamConstraint().

62  {
63  //return new TRecHit5DParamConstraint( this->trajectoryState() );
64  return RecHitPointer(new TRecHit5DParamConstraint( tsos ));
65  }
TRecHit5DParamConstraint(const TrajectoryStateOnSurface &tsos)
std::shared_ptr< TrackingRecHit const > RecHitPointer
virtual TRecHit5DParamConstraint* TRecHit5DParamConstraint::clone ( void  ) const
inlineprivatevirtual

Implements TrackingRecHit.

Definition at line 75 of file TRecHit5DParamConstraint.h.

References trajectoryState(), and TRecHit5DParamConstraint().

75  {
76  return new TRecHit5DParamConstraint( this->trajectoryState() );
77  }
TRecHit5DParamConstraint(const TrajectoryStateOnSurface &tsos)
const TrajectoryStateOnSurface & trajectoryState() const
virtual TrackingRecHit* TRecHit5DParamConstraint::cloneHit ( ) const
inlinevirtual

Reimplemented from TrackingRecHit.

Definition at line 42 of file TRecHit5DParamConstraint.h.

42 { return 0;}
virtual const GeomDet* TRecHit5DParamConstraint::det ( ) const
inlinevirtual

Definition at line 51 of file TRecHit5DParamConstraint.h.

51 { return 0; }
virtual const GeomDetUnit* TRecHit5DParamConstraint::detUnit ( ) const
inlinevirtual

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

Definition at line 49 of file TRecHit5DParamConstraint.h.

49 { return 0; }
virtual int TRecHit5DParamConstraint::dimension ( ) const
inlinevirtual

Implements TrackingRecHit.

Definition at line 22 of file TRecHit5DParamConstraint.h.

22 { return 5; }
virtual float TRecHit5DParamConstraint::errorGlobalR ( ) const
inlinevirtual

Reimplemented from TrackingRecHit.

Definition at line 57 of file TRecHit5DParamConstraint.h.

References globalPosition(), globalPositionError(), and mathSSE::sqrt().

57 { return std::sqrt(globalPositionError().rerr(globalPosition()));}
virtual GlobalError globalPositionError() const
T sqrt(T t)
Definition: SSEVec.h:48
virtual GlobalPoint globalPosition() const
virtual float TRecHit5DParamConstraint::errorGlobalRPhi ( ) const
inlinevirtual

Reimplemented from TrackingRecHit.

Definition at line 59 of file TRecHit5DParamConstraint.h.

References globalPosition(), globalPositionError(), PV3DBase< T, PVType, FrameType >::perp(), and mathSSE::sqrt().

59 { return globalPosition().perp()*sqrt(globalPositionError().phierr(globalPosition())); }
T perp() const
Definition: PV3DBase.h:72
virtual GlobalError globalPositionError() const
T sqrt(T t)
Definition: SSEVec.h:48
virtual GlobalPoint globalPosition() const
virtual float TRecHit5DParamConstraint::errorGlobalZ ( ) const
inlinevirtual

Reimplemented from TrackingRecHit.

Definition at line 58 of file TRecHit5DParamConstraint.h.

References globalPositionError(), and mathSSE::sqrt().

58 { return std::sqrt(globalPositionError().czz()); }
virtual GlobalError globalPositionError() const
T sqrt(T t)
Definition: SSEVec.h:48
virtual GlobalPoint TRecHit5DParamConstraint::globalPosition ( ) const
inlinevirtual

Reimplemented from TrackingRecHit.

Definition at line 55 of file TRecHit5DParamConstraint.h.

References localPosition(), surface(), and Surface::toGlobal().

Referenced by errorGlobalR(), and errorGlobalRPhi().

55 { return surface()->toGlobal(localPosition());}
GlobalPoint toGlobal(const Point2DBase< Scalar, LocalTag > lp) const
Definition: Surface.h:114
virtual LocalPoint localPosition() const
virtual const Surface * surface() const
virtual GlobalError TRecHit5DParamConstraint::globalPositionError ( ) const
inlinevirtual

Reimplemented from TrackingRecHit.

Definition at line 56 of file TRecHit5DParamConstraint.h.

References localPositionError(), surface(), and ErrorFrameTransformer::transform().

Referenced by errorGlobalR(), errorGlobalRPhi(), and errorGlobalZ().

static GlobalError transform(const LocalError &le, const Surface &surf)
virtual LocalError localPositionError() const
virtual const Surface * surface() const
virtual const TrackingRecHit* TRecHit5DParamConstraint::hit ( void  ) const
inlinevirtual

Reimplemented from TrackingRecHit.

Definition at line 41 of file TRecHit5DParamConstraint.h.

41 { return 0; }
virtual LocalPoint TRecHit5DParamConstraint::localPosition ( ) const
inlinevirtual

Implements TrackingRecHit.

Definition at line 33 of file TRecHit5DParamConstraint.h.

References TrajectoryStateOnSurface::localPosition(), and tsos_.

Referenced by globalPosition().

33 { return tsos_.localPosition(); }
const TrajectoryStateOnSurface tsos_
virtual LocalError TRecHit5DParamConstraint::localPositionError ( ) const
inlinevirtual

Implements TrackingRecHit.

Definition at line 35 of file TRecHit5DParamConstraint.h.

References TrajectoryStateOnSurface::localError(), LocalTrajectoryError::positionError(), and tsos_.

Referenced by globalPositionError().

35 { return tsos_.localError().positionError(); }
LocalError positionError() const
const LocalTrajectoryError & localError() const
const TrajectoryStateOnSurface tsos_
virtual AlgebraicVector TRecHit5DParamConstraint::parameters ( void  ) const
inlinevirtual

Implements TrackingRecHit.

Definition at line 29 of file TRecHit5DParamConstraint.h.

References asHepVector(), TrajectoryStateOnSurface::localParameters(), tsos_, and LocalTrajectoryParameters::vector().

29 { return asHepVector( tsos_.localParameters().vector() ); }
const LocalTrajectoryParameters & localParameters() const
AlgebraicVector5 vector() const
const TrajectoryStateOnSurface tsos_
CLHEP::HepVector asHepVector(const ROOT::Math::SVector< double, N > &v)
Definition: Migration.h:43
virtual AlgebraicSymMatrix TRecHit5DParamConstraint::parametersError ( ) const
inlinevirtual

Implements TrackingRecHit.

Definition at line 31 of file TRecHit5DParamConstraint.h.

References asHepMatrix(), TrajectoryStateOnSurface::localError(), LocalTrajectoryError::matrix(), and tsos_.

31 { return asHepMatrix( tsos_.localError().matrix() ); }
CLHEP::HepMatrix asHepMatrix(const ROOT::Math::SMatrix< double, N1, N2, typename ROOT::Math::MatRepStd< double, N1, N2 > > &rm)
Definition: Migration.h:49
const AlgebraicSymMatrix55 & matrix() const
const LocalTrajectoryError & localError() const
const TrajectoryStateOnSurface tsos_
virtual AlgebraicMatrix TRecHit5DParamConstraint::projectionMatrix ( ) const
inlinevirtual

Implements TrackingRecHit.

Definition at line 24 of file TRecHit5DParamConstraint.h.

24  {
26  return projectionMatrix;
27  }
CLHEP::HepMatrix AlgebraicMatrix
virtual AlgebraicMatrix projectionMatrix() const
virtual std::vector<const TrackingRecHit*> TRecHit5DParamConstraint::recHits ( ) const
inlinevirtual

Access to component RecHits (if any)

Implements TrackingRecHit.

Definition at line 44 of file TRecHit5DParamConstraint.h.

44 { return std::vector<const TrackingRecHit*>(); }
virtual std::vector<TrackingRecHit*> TRecHit5DParamConstraint::recHits ( )
inlinevirtual

Non-const access to component RecHits (if any)

Implements TrackingRecHit.

Definition at line 45 of file TRecHit5DParamConstraint.h.

45 { return std::vector<TrackingRecHit*>(); }
virtual bool TRecHit5DParamConstraint::sharesInput ( const TrackingRecHit other,
SharedInputType  what 
) const
inlinevirtual

Returns true if the two TrackingRecHits are using the same input information (like Digis, Clusters, etc), false otherwise. The second argument specifies how much sharing is needed in order to return true: the value "all" means that all inputs of the two hits must be identical; the value "some" means that at least one of the inputs is in common.

Reimplemented from TrackingRecHit.

Definition at line 46 of file TRecHit5DParamConstraint.h.

46 { return false;}
virtual const Surface* TRecHit5DParamConstraint::surface ( ) const
inlinevirtual

Reimplemented from TrackingRecHit.

Definition at line 53 of file TRecHit5DParamConstraint.h.

References TrajectoryStateOnSurface::surface(), and tsos_.

Referenced by globalPosition(), and globalPositionError().

53 { return &tsos_.surface(); }
const SurfaceType & surface() const
const TrajectoryStateOnSurface tsos_
const TrajectoryStateOnSurface& TRecHit5DParamConstraint::trajectoryState ( ) const
inlineprivate

Definition at line 79 of file TRecHit5DParamConstraint.h.

References tsos_.

Referenced by clone().

79 { return tsos_; }
const TrajectoryStateOnSurface tsos_

Member Data Documentation

const TrajectoryStateOnSurface TRecHit5DParamConstraint::tsos_
private