CMS 3D CMS Logo

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

#include <ProjectedSiStripRecHit2D.h>

Inheritance diagram for ProjectedSiStripRecHit2D:
TrackerSingleRecHit BaseTrackerRecHit TrackingRecHit

Public Types

typedef TrackerSingleRecHit Base
 
typedef OmniClusterRef::ClusterStripRef ClusterRef
 
- Public Types inherited from TrackerSingleRecHit
typedef BaseTrackerRecHit Base
 
typedef OmniClusterRef::ClusterMTDRef ClusterMTDRef
 
typedef OmniClusterRef::Phase2Cluster1DRef ClusterPhase2Ref
 
typedef OmniClusterRef::ClusterPixelRef ClusterPixelRef
 
typedef OmniClusterRef::ClusterStripRef ClusterStripRef
 
- 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
}
 

Public Member Functions

bool canImproveWithTrack () const override
 
ProjectedSiStripRecHit2Dclone () const override
 
ClusterRef cluster () const
 
int dimension () const override
 
void getKfComponents (KfComponentsHolder &holder) const override
 
const GeomDetUnitoriginalDet () const
 
SiStripRecHit2D originalHit () const
 
unsigned int originalId () const
 
 ProjectedSiStripRecHit2D ()
 
 ProjectedSiStripRecHit2D (const LocalPoint &pos, const LocalError &err, GeomDet const &idet, SiStripRecHit2D const &originalHit)
 
template<typename CluRef >
 ProjectedSiStripRecHit2D (const LocalPoint &pos, const LocalError &err, GeomDet const &idet, GeomDet const &originalDet, CluRef const &clus)
 
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...
 
void setDet (const GeomDet &idet) override
 
- Public Member Functions inherited from TrackerSingleRecHit
ClusterMTDRef cluster_mtd () const
 
ClusterPhase2Ref cluster_phase2OT () const
 
ClusterPixelRef cluster_pixel () const
 
ClusterStripRef cluster_strip () const
 
const GeomDetUnitdetUnit () const override
 
OmniClusterRef const & firstClusterRef () const final
 
FTLCluster const & mtdCluster () const
 
OmniClusterRef const & omniCluster () const
 
OmniClusterRefomniCluster ()
 
OmniClusterRef const & omniClusterRef () const
 
OmniClusterRefomniClusterRef ()
 
Phase2TrackerCluster1D const & phase2OTCluster () const
 
SiPixelCluster const & pixelCluster () 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...
 
bool sameCluster (OmniClusterRef const &oh) const
 
void setClusterMTDRef (ClusterMTDRef const &ref)
 
void setClusterPhase2Ref (ClusterPhase2Ref const &ref)
 
void setClusterPixelRef (ClusterPixelRef const &ref)
 
void setClusterStripRef (ClusterStripRef const &ref)
 
bool sharesInput (const TrackingRecHit *other, SharedInputType what) const final
 
bool sharesInput (TrackerSingleRecHit const &other) const
 
SiStripCluster const & stripCluster () const
 
 TrackerSingleRecHit ()
 
 TrackerSingleRecHit (DetId id, OmniClusterRef const &clus)
 
template<typename CluRef >
 TrackerSingleRecHit (const LocalPoint &p, const LocalError &e, GeomDet const &idet, CluRef const &clus)
 
template<typename CluRef >
 TrackerSingleRecHit (const LocalPoint &p, const LocalError &e, GeomDet const &idet, trackerHitRTTI::RTTI rt, CluRef const &clus)
 
- Public Member Functions inherited from BaseTrackerRecHit
 BaseTrackerRecHit ()
 
 BaseTrackerRecHit (DetId id, trackerHitRTTI::RTTI rt)
 
 BaseTrackerRecHit (const GeomDet &idet, trackerHitRTTI::RTTI rt)
 
 BaseTrackerRecHit (const LocalPoint &p, const LocalError &e, GeomDet const &idet, trackerHitRTTI::RTTI rt)
 
virtual float clusterProbability () const
 cluster probability, overloaded by pixel rechits. More...
 
float errorGlobalR () const final
 
float errorGlobalRPhi () const final
 
float errorGlobalZ () const final
 
void getKfComponents1D (KfComponentsHolder &holder) const
 
void getKfComponents2D (KfComponentsHolder &holder) const
 
GlobalPoint globalPosition () const final
 
GlobalError globalPositionError () const final
 
TrackingRecHitGlobalState globalState () const
 
bool hasPositionAndError () const override
 to be redefined by daughter class More...
 
BaseTrackerRecHit const * hit () const final
 
bool isMatched () const
 
bool isMulti () const
 
virtual bool isPhase2 () const
 
virtual bool isPixel () const
 
bool isProjected () const
 
bool isProjMono () const
 
bool isProjStereo () const
 
bool isSingle () const
 
LocalPoint localPosition () const override
 
LocalError localPositionError () const override
 
const LocalErrorlocalPositionErrorFast () const
 
const LocalPointlocalPositionFast () const
 
AlgebraicVector parameters () const override
 
AlgebraicSymMatrix parametersError () const override
 
AlgebraicMatrix projectionMatrix () const override
 
trackerHitRTTI::RTTI rtti () const
 
bool sameDetModule (TrackingRecHit const &hit) const
 
const Surfacesurface () const final
 
 ~BaseTrackerRecHit () override
 
- Public Member Functions inherited from TrackingRecHit
RecHitPointer cloneForFit (const GeomDet &idet) const
 
virtual TrackingRecHitcloneHit () const
 
virtual RecHitPointer cloneSH () const
 
const GeomDetdet () const
 
DetId geographicalId () const
 
unsigned int getRTTI () const
 
Type getType () const
 
bool isValid () const
 
id_type rawId () const
 
virtual void recHitsV (std::vector< const TrackingRecHit *> &) const
 
virtual void recHitsV (std::vector< TrackingRecHit *> &)
 
 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 bool isMono (GeomDet const &gdet, GeomDet const &sdet)
 

Private Member Functions

ProjectedSiStripRecHit2Dclone_ (TkCloner const &cloner, TrajectoryStateOnSurface const &tsos) const override
 
ConstRecHitPointer cloneSH_ (TkCloner const &cloner, TrajectoryStateOnSurface const &tsos) const override
 

Private Attributes

const GeomDettheOriginalDet
 

Additional Inherited Members

- 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)
 
- Protected Attributes inherited from BaseTrackerRecHit
LocalError err_
 
LocalPoint pos_
 
unsigned int qualWord_
 

Detailed Description

Definition at line 8 of file ProjectedSiStripRecHit2D.h.

Member Typedef Documentation

◆ Base

Definition at line 14 of file ProjectedSiStripRecHit2D.h.

◆ ClusterRef

Definition at line 50 of file ProjectedSiStripRecHit2D.h.

Constructor & Destructor Documentation

◆ ProjectedSiStripRecHit2D() [1/3]

ProjectedSiStripRecHit2D::ProjectedSiStripRecHit2D ( )
inline

Definition at line 16 of file ProjectedSiStripRecHit2D.h.

Referenced by clone().

16 : theOriginalDet(nullptr) {}

◆ ProjectedSiStripRecHit2D() [2/3]

ProjectedSiStripRecHit2D::ProjectedSiStripRecHit2D ( const LocalPoint pos,
const LocalError err,
GeomDet const &  idet,
SiStripRecHit2D const &  originalHit 
)
inline

Definition at line 18 of file ProjectedSiStripRecHit2D.h.

References cms::cuda::assert(), originalHit(), originalId(), and TrackingRecHit::rawId().

23  err,
24  idet,
28  // std::cout << getRTTI() << ' ' << originalHit.rawId() << ' ' << idet.geographicalId().rawId() << ' ' << originalId() << std::endl;
30  }
id_type rawId() const
assert(be >=bs)
const GeomDet * det() const
SiStripRecHit2D originalHit() const
static bool isMono(GeomDet const &gdet, GeomDet const &sdet)
OmniClusterRef const & omniCluster() const

◆ ProjectedSiStripRecHit2D() [3/3]

template<typename CluRef >
ProjectedSiStripRecHit2D::ProjectedSiStripRecHit2D ( const LocalPoint pos,
const LocalError err,
GeomDet const &  idet,
GeomDet const &  originalDet,
CluRef const &  clus 
)
inline

Member Function Documentation

◆ canImproveWithTrack()

bool ProjectedSiStripRecHit2D::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 43 of file ProjectedSiStripRecHit2D.h.

43 { return true; }

◆ clone()

ProjectedSiStripRecHit2D* ProjectedSiStripRecHit2D::clone ( void  ) const
inlineoverridevirtual

Implements TrackingRecHit.

Definition at line 45 of file ProjectedSiStripRecHit2D.h.

References ProjectedSiStripRecHit2D().

◆ clone_()

ProjectedSiStripRecHit2D* ProjectedSiStripRecHit2D::clone_ ( TkCloner const &  cloner,
TrajectoryStateOnSurface const &  tsos 
) const
inlineoverrideprivatevirtual

Reimplemented from TrackingRecHit.

Definition at line 69 of file ProjectedSiStripRecHit2D.h.

69  {
70  return cloner(*this, tsos).release();
71  }

◆ cloneSH_()

ConstRecHitPointer ProjectedSiStripRecHit2D::cloneSH_ ( TkCloner const &  cloner,
TrajectoryStateOnSurface const &  tsos 
) const
inlineoverrideprivatevirtual

Reimplemented from TrackingRecHit.

Definition at line 73 of file ProjectedSiStripRecHit2D.h.

References TkCloner::makeShared().

73  {
74  return cloner.makeShared(*this, tsos);
75  }

◆ cluster()

ClusterRef ProjectedSiStripRecHit2D::cluster ( ) const
inline

Definition at line 51 of file ProjectedSiStripRecHit2D.h.

References TrackerSingleRecHit::cluster_strip().

51 { return cluster_strip(); }
ClusterStripRef cluster_strip() const

◆ dimension()

int ProjectedSiStripRecHit2D::dimension ( ) const
inlineoverridevirtual

Implements BaseTrackerRecHit.

Definition at line 47 of file ProjectedSiStripRecHit2D.h.

47 { return 2; }

◆ getKfComponents()

void ProjectedSiStripRecHit2D::getKfComponents ( KfComponentsHolder holder) const
inlineoverridevirtual

Implements BaseTrackerRecHit.

Definition at line 48 of file ProjectedSiStripRecHit2D.h.

References BaseTrackerRecHit::getKfComponents2D().

48 { getKfComponents2D(holder); }
void getKfComponents2D(KfComponentsHolder &holder) const

◆ isMono()

static bool ProjectedSiStripRecHit2D::isMono ( GeomDet const &  gdet,
GeomDet const &  sdet 
)
inlinestatic

Definition at line 10 of file ProjectedSiStripRecHit2D.h.

References GeomDet::geographicalId().

10  {
11  return (sdet.geographicalId() - gdet.geographicalId()) == 2;
12  }

◆ originalDet()

const GeomDetUnit* ProjectedSiStripRecHit2D::originalDet ( ) const
inline

Definition at line 52 of file ProjectedSiStripRecHit2D.h.

References theOriginalDet.

Referenced by ProjectedSiStripRecHit2D().

52 { return theOriginalDet; }

◆ originalHit()

SiStripRecHit2D ProjectedSiStripRecHit2D::originalHit ( ) const
inline

◆ originalId()

unsigned int ProjectedSiStripRecHit2D::originalId ( ) const
inline

Definition at line 53 of file ProjectedSiStripRecHit2D.h.

References trackerHitRTTI::projId().

Referenced by originalHit(), and ProjectedSiStripRecHit2D().

53 { return trackerHitRTTI::projId(*this); }
unsigned int projId(TrackingRecHit const &hit)

◆ recHits() [1/2]

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

Access to component RecHits (if any)

Implements TrackingRecHit.

Definition at line 58 of file ProjectedSiStripRecHit2D.h.

58  {
59  std::vector<const TrackingRecHit*> rechits;
60  return rechits;
61  }

◆ recHits() [2/2]

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

Non-const access to component RecHits (if any)

Implements TrackingRecHit.

Definition at line 62 of file ProjectedSiStripRecHit2D.h.

62  {
63  std::vector<TrackingRecHit*> rechits;
64  return rechits;
65  }

◆ setDet()

void ProjectedSiStripRecHit2D::setDet ( const GeomDet idet)
overridevirtual

Reimplemented from TrackingRecHit.

Definition at line 6 of file ProjectedSiStripRecHit2D.cc.

References trackerHitRTTI::isProjMono(), GluedGeomDet::monoDet(), TrackingRecHit::setDet(), GluedGeomDet::stereoDet(), and theOriginalDet.

6  {
8  const GluedGeomDet& gdet = static_cast<const GluedGeomDet&>(idet);
10 }
bool isProjMono(TrackingRecHit const &hit)
virtual void setDet(const GeomDet &idet)
const GeomDetUnit * monoDet() const
Definition: GluedGeomDet.h:19
const GeomDetUnit * stereoDet() const
Definition: GluedGeomDet.h:20

Member Data Documentation

◆ theOriginalDet

const GeomDet* ProjectedSiStripRecHit2D::theOriginalDet
private

Definition at line 79 of file ProjectedSiStripRecHit2D.h.

Referenced by originalDet(), and setDet().