CMS 3D CMS Logo

List of all members | Public Member Functions | Static Public Member Functions | Private Member Functions | Private Attributes
GenericProjectedRecHit2D Class Reference

#include <GenericProjectedRecHit2D.h>

Inheritance diagram for GenericProjectedRecHit2D:
TrackingRecHit

Public Member Functions

bool canImproveWithTrack () const override
 
RecHitPointer clone (const TrajectoryStateOnSurface &ts, const TransientTrackingRecHitBuilder *) const
 
TrackingRecHitcloneHit () const override
 
int dimension () const override
 
 GenericProjectedRecHit2D (const LocalPoint &pos, const LocalError &err, const GeomDet *det, const GeomDet *originaldet, const TransientTrackingRecHit::ConstRecHitPointer originalHit, const TrackingRecHitPropagator *propagator)
 
virtual DetId geographicalId () const
 
const TrackingRecHithit () const override
 
virtual bool isValid () const
 
LocalPoint localPosition () const override
 
LocalError localPositionError () const override
 
const GeomDetoriginalDet () const
 
AlgebraicVector parameters () const override
 
AlgebraicSymMatrix parametersError () const override
 
AlgebraicMatrix projectionMatrix () const override
 
const TrackingRecHitPropagatorpropagator () const
 
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...
 
- Public Member Functions inherited from TrackingRecHit
RecHitPointer cloneForFit (const GeomDet &idet) const
 
virtual RecHitPointer cloneSH () const
 
const GeomDetdet () const
 
virtual const GeomDetUnitdetUnit () const
 
virtual float errorGlobalR () const
 
virtual float errorGlobalRPhi () const
 
virtual float errorGlobalZ () const
 
DetId geographicalId () const
 
virtual void getKfComponents (KfComponentsHolder &holder) const
 
unsigned int getRTTI () const
 
Type getType () const
 
virtual GlobalPoint globalPosition () const
 
virtual GlobalError globalPositionError () 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)
 
virtual bool sharesInput (const TrackingRecHit *other, SharedInputType what) const
 
virtual const Surfacesurface () const
 
 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 LocalPoint &pos, const LocalError &err, const GeomDet *det, const GeomDet *originaldet, const TransientTrackingRecHit::ConstRecHitPointer originalHit, const TrackingRecHitPropagator *propagator)
 

Private Member Functions

GenericProjectedRecHit2Dclone () const override
 

Private Attributes

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

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 8 of file GenericProjectedRecHit2D.h.

Constructor & Destructor Documentation

◆ GenericProjectedRecHit2D()

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

Definition at line 8 of file GenericProjectedRecHit2D.cc.

14  : TrackingRecHit(*det) //, originalHit->weight(), originalHit->getAnnealingFactor())
15 {
18  theOriginalTransientHit = originalHit;
19  theLp = pos;
20  theLe = err;
21  theProjectionMatrix = originalHit->projectionMatrix();
22  theDimension = originalHit->dimension();
23  //theOriginalHit = originalTransientHit.hit()->clone();
24 }

References runTheMatrix::err, originalDet(), propagator(), theDimension, theLe, theLp, theOriginalDet, theOriginalTransientHit, theProjectionMatrix, and thePropagator.

Referenced by build(), and clone().

Member Function Documentation

◆ build()

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

Definition at line 58 of file GenericProjectedRecHit2D.h.

63  {
64  return RecHitPointer(new GenericProjectedRecHit2D(pos, err, det, originaldet, originalHit, propagator));
65  }

References TrackingRecHit::det(), runTheMatrix::err, GenericProjectedRecHit2D(), and propagator().

◆ canImproveWithTrack()

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

54 { return true; }

◆ clone() [1/2]

GenericProjectedRecHit2D* GenericProjectedRecHit2D::clone ( void  ) const
inlineoverrideprivatevirtual

Implements TrackingRecHit.

Definition at line 79 of file GenericProjectedRecHit2D.h.

79 { return new GenericProjectedRecHit2D(*this); }

References GenericProjectedRecHit2D().

◆ clone() [2/2]

TransientTrackingRecHit::RecHitPointer GenericProjectedRecHit2D::clone ( const TrajectoryStateOnSurface ts,
const TransientTrackingRecHitBuilder builder 
) const

◆ cloneHit()

TrackingRecHit* GenericProjectedRecHit2D::cloneHit ( ) const
inlineoverridevirtual

Reimplemented from TrackingRecHit.

Definition at line 38 of file GenericProjectedRecHit2D.h.

38 { return theOriginalTransientHit->cloneHit(); }

References theOriginalTransientHit.

◆ dimension()

int GenericProjectedRecHit2D::dimension ( ) const
inlineoverridevirtual

Implements TrackingRecHit.

Definition at line 33 of file GenericProjectedRecHit2D.h.

33 { return theDimension; }

References theDimension.

◆ geographicalId()

virtual DetId GenericProjectedRecHit2D::geographicalId ( ) const
inlinevirtual

Definition at line 31 of file GenericProjectedRecHit2D.h.

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

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

◆ hit()

const TrackingRecHit* GenericProjectedRecHit2D::hit ( ) const
inlineoverridevirtual

Reimplemented from TrackingRecHit.

Definition at line 36 of file GenericProjectedRecHit2D.h.

36 { return theOriginalTransientHit->hit(); }

References theOriginalTransientHit.

◆ isValid()

virtual bool GenericProjectedRecHit2D::isValid ( void  ) const
inlinevirtual

Definition at line 40 of file GenericProjectedRecHit2D.h.

40 { return true; }

Referenced by ntupleDataFormat._Object::_checkIsValid(), and core.AutoHandle.AutoHandle::ReallyLoad().

◆ localPosition()

LocalPoint GenericProjectedRecHit2D::localPosition ( ) const
inlineoverridevirtual

Implements TrackingRecHit.

Definition at line 25 of file GenericProjectedRecHit2D.h.

25 { return theLp; }

References theLp.

◆ localPositionError()

LocalError GenericProjectedRecHit2D::localPositionError ( ) const
inlineoverridevirtual

Implements TrackingRecHit.

Definition at line 27 of file GenericProjectedRecHit2D.h.

27 { return theLe; }

References theLe.

Referenced by parametersError().

◆ originalDet()

const GeomDet* GenericProjectedRecHit2D::originalDet ( ) const
inline

Definition at line 56 of file GenericProjectedRecHit2D.h.

56 { return theOriginalDet; }

References theOriginalDet.

Referenced by GenericProjectedRecHit2D().

◆ parameters()

AlgebraicVector GenericProjectedRecHit2D::parameters ( void  ) const
overridevirtual

Implements TrackingRecHit.

Definition at line 26 of file GenericProjectedRecHit2D.cc.

26  {
28  result[0] = theLp.x();
29  result[1] = theLp.y();
30  return result;
31 }

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

◆ parametersError()

AlgebraicSymMatrix GenericProjectedRecHit2D::parametersError ( ) const
inlineoverridevirtual

◆ projectionMatrix()

AlgebraicMatrix GenericProjectedRecHit2D::projectionMatrix ( ) const
inlineoverridevirtual

Implements TrackingRecHit.

Definition at line 29 of file GenericProjectedRecHit2D.h.

29 { return theProjectionMatrix; }

References theProjectionMatrix.

◆ propagator()

const TrackingRecHitPropagator* GenericProjectedRecHit2D::propagator ( ) const
inline

Definition at line 52 of file GenericProjectedRecHit2D.h.

52 { return thePropagator; }

References thePropagator.

Referenced by build(), and GenericProjectedRecHit2D().

◆ recHits() [1/2]

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

Access to component RecHits (if any)

Implements TrackingRecHit.

Definition at line 42 of file GenericProjectedRecHit2D.h.

42  {
43  //return theOriginalTransientHit->hit()->recHits();
44  return std::vector<const TrackingRecHit*>();
45  }

◆ recHits() [2/2]

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

Non-const access to component RecHits (if any)

Implements TrackingRecHit.

Definition at line 47 of file GenericProjectedRecHit2D.h.

47  {
48  //should it do something different?
49  return std::vector<TrackingRecHit*>();
50  }

Member Data Documentation

◆ theDimension

int GenericProjectedRecHit2D::theDimension
private

Definition at line 77 of file GenericProjectedRecHit2D.h.

Referenced by dimension(), and GenericProjectedRecHit2D().

◆ theLe

LocalError GenericProjectedRecHit2D::theLe
private

Definition at line 73 of file GenericProjectedRecHit2D.h.

Referenced by GenericProjectedRecHit2D(), and localPositionError().

◆ theLp

LocalPoint GenericProjectedRecHit2D::theLp
private

Definition at line 72 of file GenericProjectedRecHit2D.h.

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

◆ theOriginalDet

const GeomDet* GenericProjectedRecHit2D::theOriginalDet
private

Definition at line 70 of file GenericProjectedRecHit2D.h.

Referenced by GenericProjectedRecHit2D(), and originalDet().

◆ theOriginalTransientHit

TransientTrackingRecHit::ConstRecHitPointer GenericProjectedRecHit2D::theOriginalTransientHit
private

Definition at line 71 of file GenericProjectedRecHit2D.h.

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

◆ theProjectionMatrix

AlgebraicMatrix GenericProjectedRecHit2D::theProjectionMatrix
private

Definition at line 74 of file GenericProjectedRecHit2D.h.

Referenced by GenericProjectedRecHit2D(), and projectionMatrix().

◆ thePropagator

const TrackingRecHitPropagator* GenericProjectedRecHit2D::thePropagator
private

Definition at line 75 of file GenericProjectedRecHit2D.h.

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

GenericProjectedRecHit2D::GenericProjectedRecHit2D
GenericProjectedRecHit2D(const LocalPoint &pos, const LocalError &err, const GeomDet *det, const GeomDet *originaldet, const TransientTrackingRecHit::ConstRecHitPointer originalHit, const TrackingRecHitPropagator *propagator)
Definition: GenericProjectedRecHit2D.cc:8
GenericProjectedRecHit2D
Definition: GenericProjectedRecHit2D.h:8
GenericProjectedRecHit2D::theProjectionMatrix
AlgebraicMatrix theProjectionMatrix
Definition: GenericProjectedRecHit2D.h:74
PV3DBase::x
T x() const
Definition: PV3DBase.h:59
TrackingRecHit::TrackingRecHit
TrackingRecHit(DetId id, Type type=valid)
Definition: TrackingRecHit.h:61
GenericProjectedRecHit2D::localPositionError
LocalError localPositionError() const override
Definition: GenericProjectedRecHit2D.h:27
TrackingRecHit::det
const GeomDet * det() const
Definition: TrackingRecHit.h:122
pos
Definition: PixelAliasList.h:18
TrackingRecHitPropagator::project
TrackingRecHit::RecHitPointer project(const TrackingRecHit::ConstRecHitPointer hit, const GeomDet &det, const TrajectoryStateOnSurface ts, const TransientTrackingRecHitBuilder *builder) const
Definition: TrackingRecHitPropagator.h:30
TrackingRecHit::RecHitPointer
std::shared_ptr< TrackingRecHit const > RecHitPointer
Definition: TrackingRecHit.h:24
HelpertRecHit2DLocalPos::parError
static AlgebraicSymMatrix parError(const LocalError &le, const GeomDet &det)
Definition: HelpertRecHit2DLocalPos.h:17
GenericProjectedRecHit2D::thePropagator
const TrackingRecHitPropagator * thePropagator
Definition: GenericProjectedRecHit2D.h:75
GenericProjectedRecHit2D::theLe
LocalError theLe
Definition: GenericProjectedRecHit2D.h:73
DetId
Definition: DetId.h:17
AlgebraicVector
CLHEP::HepVector AlgebraicVector
Definition: AlgebraicObjects.h:13
GenericProjectedRecHit2D::theOriginalDet
const GeomDet * theOriginalDet
Definition: GenericProjectedRecHit2D.h:70
GenericProjectedRecHit2D::theDimension
int theDimension
Definition: GenericProjectedRecHit2D.h:77
GeomDet::geographicalId
DetId geographicalId() const
The label of this GeomDet.
Definition: GeomDet.h:64
HelpertRecHit2DLocalPos
Definition: HelpertRecHit2DLocalPos.h:14
runTheMatrix.err
err
Definition: runTheMatrix.py:288
PV3DBase::y
T y() const
Definition: PV3DBase.h:60
GenericProjectedRecHit2D::propagator
const TrackingRecHitPropagator * propagator() const
Definition: GenericProjectedRecHit2D.h:52
GenericProjectedRecHit2D::originalDet
const GeomDet * originalDet() const
Definition: GenericProjectedRecHit2D.h:56
GenericProjectedRecHit2D::theLp
LocalPoint theLp
Definition: GenericProjectedRecHit2D.h:72
mps_fire.result
result
Definition: mps_fire.py:303
GenericProjectedRecHit2D::theOriginalTransientHit
TransientTrackingRecHit::ConstRecHitPointer theOriginalTransientHit
Definition: GenericProjectedRecHit2D.h:71