CMS 3D CMS Logo

List of all members | Public Member Functions | Static Public Member Functions | Private Member Functions | Private Attributes
TRecHit5DParamConstraint Class Referencefinal

#include <TRecHit5DParamConstraint.h>

Inheritance diagram for TRecHit5DParamConstraint:
TrackingRecHit

Public Member Functions

bool canImproveWithTrack () const override
 
int charge () const
 
virtual RecHitPointer clone (const TrajectoryStateOnSurface &tsos) const
 ???? More...
 
int dimension () const override
 
float errorGlobalR () const override
 
float errorGlobalRPhi () const override
 
float errorGlobalZ () const override
 
GlobalPoint globalPosition () const override
 
GlobalError globalPositionError () const override
 
LocalPoint localPosition () const override
 
LocalError localPositionError () const override
 
AlgebraicVector parameters () const override
 
AlgebraicSymMatrix parametersError () const override
 
AlgebraicMatrix projectionMatrix () const override
 
std::vector< const TrackingRecHit * > recHits () const override
 Access to component RecHits (if any) More...
 
std::vector< TrackingRecHit * > recHits () override
 Non-const access to component RecHits (if any) More...
 
bool sharesInput (const TrackingRecHit *, SharedInputType) const override
 
const Surfacesurface () const override
 
const TrajectoryStateOnSurfacetrajectoryState () const
 
 TRecHit5DParamConstraint (const GeomDet &idet, const TrajectoryStateOnSurface &tsos)
 
 TRecHit5DParamConstraint (const TrajectoryStateOnSurface &tsos)
 
 TRecHit5DParamConstraint (const TRecHit5DParamConstraint &other)=default
 
 TRecHit5DParamConstraint (TRecHit5DParamConstraint &&other)=default
 
 ~TRecHit5DParamConstraint () override
 
- Public Member Functions inherited from TrackingRecHit
RecHitPointer cloneForFit (const GeomDet &idet) const
 
virtual TrackingRecHitcloneHit () const
 
virtual RecHitPointer cloneSH () const
 
const GeomDetdet () const
 
virtual const GeomDetUnitdetUnit () 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...
 
virtual TrackingRecHit const * hit () const
 
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 (const GeomDet &idet, TrackingRecHit const &rh)
 
 TrackingRecHit (const GeomDet &idet, Type type=valid)
 
 TrackingRecHit (const GeomDet &idet, unsigned int rt, Type type=valid)
 
 TrackingRecHit (DetId id, Type type=valid)
 
 TrackingRecHit (DetId id, unsigned int rt, Type type=valid)
 
 TrackingRecHit (id_type id=0, Type type=valid)
 
virtual ConstRecHitContainer transientHits () const
 
Type type () const
 
virtual float weight () const
 
virtual ~TrackingRecHit ()
 

Static Public Member Functions

static RecHitPointer build (const TrajectoryStateOnSurface &tsos)
 

Private Member Functions

TRecHit5DParamConstraintclone () const override
 

Private Attributes

const TrajectoryStateOnSurface tsos_
 

Additional Inherited Members

- Public Types inherited from TrackingRecHit
typedef std::vector< ConstRecHitPointerConstRecHitContainer
 
using ConstRecHitPointer = std::shared_ptr< TrackingRecHit const >
 
typedef unsigned int id_type
 
typedef std::vector< ConstRecHitPointerRecHitContainer
 
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, inactive_inner = 6, inactive_outer = 7
}
 
- 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 9 of file TRecHit5DParamConstraint.h.

Constructor & Destructor Documentation

◆ TRecHit5DParamConstraint() [1/4]

TRecHit5DParamConstraint::TRecHit5DParamConstraint ( const TrajectoryStateOnSurface tsos)
inline

Definition at line 11 of file TRecHit5DParamConstraint.h.

Referenced by build(), and clone().

◆ TRecHit5DParamConstraint() [2/4]

TRecHit5DParamConstraint::TRecHit5DParamConstraint ( const GeomDet idet,
const TrajectoryStateOnSurface tsos 
)
inline

Definition at line 14 of file TRecHit5DParamConstraint.h.

◆ TRecHit5DParamConstraint() [3/4]

TRecHit5DParamConstraint::TRecHit5DParamConstraint ( const TRecHit5DParamConstraint other)
default

◆ TRecHit5DParamConstraint() [4/4]

TRecHit5DParamConstraint::TRecHit5DParamConstraint ( TRecHit5DParamConstraint &&  other)
default

◆ ~TRecHit5DParamConstraint()

TRecHit5DParamConstraint::~TRecHit5DParamConstraint ( )
inlineoverride

Definition at line 20 of file TRecHit5DParamConstraint.h.

20 {}

Member Function Documentation

◆ build()

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

Definition at line 65 of file TRecHit5DParamConstraint.h.

65  {
66  return RecHitPointer(new TRecHit5DParamConstraint(tsos));
67  }

References TRecHit5DParamConstraint().

◆ canImproveWithTrack()

bool TRecHit5DParamConstraint::canImproveWithTrack ( ) const
inlineoverridevirtual

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 40 of file TRecHit5DParamConstraint.h.

40 { return false; }

◆ charge()

int TRecHit5DParamConstraint::charge ( void  ) const
inline

Definition at line 37 of file TRecHit5DParamConstraint.h.

37 { return tsos_.charge(); }

References TrajectoryStateOnSurface::charge(), and tsos_.

◆ clone() [1/2]

TRecHit5DParamConstraint* TRecHit5DParamConstraint::clone ( void  ) const
inlineoverrideprivatevirtual

Implements TrackingRecHit.

Definition at line 72 of file TRecHit5DParamConstraint.h.

72 { return new TRecHit5DParamConstraint(*this); }

References TRecHit5DParamConstraint().

◆ clone() [2/2]

virtual RecHitPointer TRecHit5DParamConstraint::clone ( const TrajectoryStateOnSurface tsos) const
inlinevirtual

????

Definition at line 61 of file TRecHit5DParamConstraint.h.

61  {
62  return RecHitPointer(new TRecHit5DParamConstraint(tsos));
63  }

References TRecHit5DParamConstraint().

◆ dimension()

int TRecHit5DParamConstraint::dimension ( ) const
inlineoverridevirtual

Implements TrackingRecHit.

Definition at line 22 of file TRecHit5DParamConstraint.h.

22 { return 5; }

◆ errorGlobalR()

float TRecHit5DParamConstraint::errorGlobalR ( ) const
inlineoverridevirtual

Reimplemented from TrackingRecHit.

Definition at line 54 of file TRecHit5DParamConstraint.h.

54 { return std::sqrt(globalPositionError().rerr(globalPosition())); }

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

◆ errorGlobalRPhi()

float TRecHit5DParamConstraint::errorGlobalRPhi ( ) const
inlineoverridevirtual

Reimplemented from TrackingRecHit.

Definition at line 56 of file TRecHit5DParamConstraint.h.

56  {
57  return globalPosition().perp() * sqrt(globalPositionError().phierr(globalPosition()));
58  }

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

◆ errorGlobalZ()

float TRecHit5DParamConstraint::errorGlobalZ ( ) const
inlineoverridevirtual

Reimplemented from TrackingRecHit.

Definition at line 55 of file TRecHit5DParamConstraint.h.

55 { return std::sqrt(globalPositionError().czz()); }

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

◆ globalPosition()

GlobalPoint TRecHit5DParamConstraint::globalPosition ( ) const
inlineoverridevirtual

Reimplemented from TrackingRecHit.

Definition at line 50 of file TRecHit5DParamConstraint.h.

50 { return surface()->toGlobal(localPosition()); }

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

Referenced by errorGlobalR(), and errorGlobalRPhi().

◆ globalPositionError()

GlobalError TRecHit5DParamConstraint::globalPositionError ( ) const
inlineoverridevirtual

Reimplemented from TrackingRecHit.

Definition at line 51 of file TRecHit5DParamConstraint.h.

51  {
53  }

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

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

◆ localPosition()

LocalPoint TRecHit5DParamConstraint::localPosition ( ) const
inlineoverridevirtual

Implements TrackingRecHit.

Definition at line 33 of file TRecHit5DParamConstraint.h.

33 { return tsos_.localPosition(); }

References TrajectoryStateOnSurface::localPosition(), and tsos_.

Referenced by globalPosition().

◆ localPositionError()

LocalError TRecHit5DParamConstraint::localPositionError ( ) const
inlineoverridevirtual

◆ parameters()

AlgebraicVector TRecHit5DParamConstraint::parameters ( void  ) const
inlineoverridevirtual

◆ parametersError()

AlgebraicSymMatrix TRecHit5DParamConstraint::parametersError ( ) const
inlineoverridevirtual

◆ projectionMatrix()

AlgebraicMatrix TRecHit5DParamConstraint::projectionMatrix ( ) const
inlineoverridevirtual

Implements TrackingRecHit.

Definition at line 24 of file TRecHit5DParamConstraint.h.

24  {
26  return projectionMatrix;
27  }

◆ recHits() [1/2]

std::vector<const TrackingRecHit*> TRecHit5DParamConstraint::recHits ( ) const
inlineoverridevirtual

Access to component RecHits (if any)

Implements TrackingRecHit.

Definition at line 42 of file TRecHit5DParamConstraint.h.

42 { return std::vector<const TrackingRecHit*>(); }

◆ recHits() [2/2]

std::vector<TrackingRecHit*> TRecHit5DParamConstraint::recHits ( )
inlineoverridevirtual

Non-const access to component RecHits (if any)

Implements TrackingRecHit.

Definition at line 43 of file TRecHit5DParamConstraint.h.

43 { return std::vector<TrackingRecHit*>(); }

◆ sharesInput()

bool TRecHit5DParamConstraint::sharesInput ( const TrackingRecHit other,
SharedInputType  what 
) const
inlineoverridevirtual

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; }

◆ surface()

const Surface* TRecHit5DParamConstraint::surface ( ) const
inlineoverridevirtual

Reimplemented from TrackingRecHit.

Definition at line 48 of file TRecHit5DParamConstraint.h.

48 { return &tsos_.surface(); }

References TrajectoryStateOnSurface::surface(), and tsos_.

Referenced by globalPosition(), and globalPositionError().

◆ trajectoryState()

const TrajectoryStateOnSurface& TRecHit5DParamConstraint::trajectoryState ( ) const
inline

Definition at line 38 of file TRecHit5DParamConstraint.h.

38 { return tsos_; }

References tsos_.

Member Data Documentation

◆ tsos_

const TrajectoryStateOnSurface TRecHit5DParamConstraint::tsos_
private
TRecHit5DParamConstraint::localPosition
LocalPoint localPosition() const override
Definition: TRecHit5DParamConstraint.h:33
LocalTrajectoryError::positionError
LocalError positionError() const
Definition: LocalTrajectoryError.h:81
TrackingRecHit::TrackingRecHit
TrackingRecHit(DetId id, Type type=valid)
Definition: TrackingRecHit.h:61
TRecHit5DParamConstraint::tsos_
const TrajectoryStateOnSurface tsos_
Definition: TRecHit5DParamConstraint.h:70
TrajectoryStateOnSurface::charge
TrackCharge charge() const
Definition: TrajectoryStateOnSurface.h:68
LocalTrajectoryError::matrix
const AlgebraicSymMatrix55 & matrix() const
Definition: LocalTrajectoryError.h:60
TrackingRecHit::RecHitPointer
std::shared_ptr< TrackingRecHit const > RecHitPointer
Definition: TrackingRecHit.h:24
TRecHit5DParamConstraint::globalPosition
GlobalPoint globalPosition() const override
Definition: TRecHit5DParamConstraint.h:50
ErrorFrameTransformer
Definition: ErrorFrameTransformer.h:12
mathSSE::sqrt
T sqrt(T t)
Definition: SSEVec.h:19
Surface::toGlobal
GlobalPoint toGlobal(const Point2DBase< Scalar, LocalTag > lp) const
Definition: Surface.h:79
LocalTrajectoryParameters::vector
AlgebraicVector5 vector() const
Definition: LocalTrajectoryParameters.h:120
TrajectoryStateOnSurface::localParameters
const LocalTrajectoryParameters & localParameters() const
Definition: TrajectoryStateOnSurface.h:73
TrajectoryStateOnSurface::localPosition
LocalPoint localPosition() const
Definition: TrajectoryStateOnSurface.h:74
TRecHit5DParamConstraint::globalPositionError
GlobalError globalPositionError() const override
Definition: TRecHit5DParamConstraint.h:51
TRecHit5DParamConstraint::TRecHit5DParamConstraint
TRecHit5DParamConstraint(const TrajectoryStateOnSurface &tsos)
Definition: TRecHit5DParamConstraint.h:11
TRecHit5DParamConstraint::surface
const Surface * surface() const override
Definition: TRecHit5DParamConstraint.h:48
AlgebraicMatrix
CLHEP::HepMatrix AlgebraicMatrix
Definition: AlgebraicObjects.h:14
asHepVector
CLHEP::HepVector asHepVector(const ROOT::Math::SVector< double, N > &v)
Definition: Migration.h:53
TrajectoryStateOnSurface::surface
const SurfaceType & surface() const
Definition: TrajectoryStateOnSurface.h:78
TRecHit5DParamConstraint::localPositionError
LocalError localPositionError() const override
Definition: TRecHit5DParamConstraint.h:35
ErrorFrameTransformer::transform
static GlobalError transform(const LocalError &le, const Surface &surf)
Definition: ErrorFrameTransformer.h:16
trackerHitRTTI::notFromCluster
Definition: trackerHitRTTI.h:19
TRecHit5DParamConstraint::projectionMatrix
AlgebraicMatrix projectionMatrix() const override
Definition: TRecHit5DParamConstraint.h:24
TrajectoryStateOnSurface::localError
const LocalTrajectoryError & localError() const
Definition: TrajectoryStateOnSurface.h:77
asHepMatrix
CLHEP::HepMatrix asHepMatrix(const ROOT::Math::SMatrix< double, N1, N2, typename ROOT::Math::MatRepStd< double, N1, N2 > > &rm)
Definition: Migration.h:60
PV3DBase::perp
T perp() const
Definition: PV3DBase.h:69