CMS 3D CMS Logo

List of all members | Public Types | Public Member Functions | Private Member Functions
SiPixelRecHit Class Referencefinal

Our base class. More...

#include <SiPixelRecHit.h>

Inheritance diagram for SiPixelRecHit:
TrackerSingleRecHit BaseTrackerRecHit TrackingRecHit

Public Types

typedef edm::Ref< edmNew::DetSetVector< SiPixelCluster >, SiPixelClusterClusterRef
 
- Public Types inherited from TrackerSingleRecHit
typedef BaseTrackerRecHit Base
 
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
}
 

Public Member Functions

virtual bool canImproveWithTrack () const override
 
virtual SiPixelRecHitclone () const override
 
virtual RecHitPointer cloneSH () const override
 
ClusterRef cluster () const
 
float clusterProbability (unsigned int flags=0) const
 
virtual int dimension () const override
 
virtual void getKfComponents (KfComponentsHolder &holder) const override
 
bool hasBadPixels () const
 
bool hasFilledProb () const
 
bool isOnEdge () const
 
virtual bool isPixel () const override
 
float probabilityQ () const
 
float probabilityX () const
 
float probabilityXY () const
 
float probabilityY () const
 
int qBin () const
 
SiPixelRecHitQuality::QualWordType rawQualityWord () const
 
void setClusterRef (ClusterRef const &ref)
 
 SiPixelRecHit ()
 
 SiPixelRecHit (const LocalPoint &pos, const LocalError &err, SiPixelRecHitQuality::QualWordType qual, GeomDet const &idet, ClusterRef const &clus)
 
bool spansTwoROCs () const
 
 ~SiPixelRecHit ()
 
- Public Member Functions inherited from TrackerSingleRecHit
ClusterPhase2Ref cluster_phase2OT () const
 
ClusterPixelRef cluster_pixel () const
 
ClusterStripRef cluster_strip () const
 
const GeomDetUnitdetUnit () const
 
virtual OmniClusterRef const & firstClusterRef () const final
 
OmniClusterRef const & omniCluster () const
 
OmniClusterRefomniCluster ()
 
OmniClusterRef const & omniClusterRef () const
 
OmniClusterRefomniClusterRef ()
 
Phase2TrackerCluster1D const & phase2OTCluster () const
 
SiPixelCluster const & pixelCluster () 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...
 
bool sameCluster (OmniClusterRef const &oh) const
 
void setClusterPhase2Ref (ClusterPhase2Ref const &ref)
 
void setClusterPixelRef (ClusterPixelRef const &ref)
 
void setClusterStripRef (ClusterStripRef const &ref)
 
virtual 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 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
 
virtual GlobalPoint globalPosition () const final
 
GlobalError globalPositionError () const final
 
TrackingRecHitGlobalState globalState () const
 
bool hasPositionAndError () const final
 to be redefined by daughter class More...
 
BaseTrackerRecHit const * hit () const final
 
bool isMatched () const
 
bool isMulti () const
 
virtual bool isPhase2 () const
 
bool isProjected () const
 
bool isProjMono () const
 
bool isProjStereo () const
 
bool isSingle () const
 
virtual LocalPoint localPosition () const final
 
virtual LocalError localPositionError () const final
 
const LocalErrorlocalPositionErrorFast () const
 
const LocalPointlocalPositionFast () const
 
virtual AlgebraicVector parameters () const
 
virtual AlgebraicSymMatrix parametersError () const
 
virtual AlgebraicMatrix projectionMatrix () const
 
trackerHitRTTI::RTTI rtti () const
 
bool sameDetModule (TrackingRecHit const &hit) const
 
virtual const Surfacesurface () const final
 
virtual ~BaseTrackerRecHit ()
 
- Public Member Functions inherited from TrackingRecHit
RecHitPointer cloneForFit (const GeomDet &idet) const
 
virtual TrackingRecHitcloneHit () 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 * > &)
 
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 ()
 

Private Member Functions

virtual SiPixelRecHitclone (TkCloner const &cloner, TrajectoryStateOnSurface const &tsos) const override
 
virtual RecHitPointer cloneSH (TkCloner const &cloner, TrajectoryStateOnSurface const &tsos) const override
 

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

Our base class.

Pixel Reconstructed Hit.

Quality word packing

A pixel hit is a 2D position and error in a given pixel sensor. It contains a persistent reference edm::Ref to the pixel cluster.

Author
porting from ORCA: Petar Maksimovic (JHU), DetSetVector and persistent references: V.Chiochia (Uni Zurich)

Definition at line 23 of file SiPixelRecHit.h.

Member Typedef Documentation

Definition at line 27 of file SiPixelRecHit.h.

Constructor & Destructor Documentation

SiPixelRecHit::SiPixelRecHit ( )
inline

Definition at line 29 of file SiPixelRecHit.h.

Referenced by clone().

29 {}
SiPixelRecHit::~SiPixelRecHit ( )
inline

Definition at line 31 of file SiPixelRecHit.h.

31 {}
SiPixelRecHit::SiPixelRecHit ( const LocalPoint pos,
const LocalError err,
SiPixelRecHitQuality::QualWordType  qual,
GeomDet const &  idet,
ClusterRef const &  clus 
)
inline

Definition at line 33 of file SiPixelRecHit.h.

References BaseTrackerRecHit::qualWord_.

36  :
37  TrackerSingleRecHit(pos,err,idet, clus){
38  qualWord_=qual; }
unsigned int qualWord_

Member Function Documentation

virtual bool SiPixelRecHit::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 57 of file SiPixelRecHit.h.

57 {return true;}
virtual SiPixelRecHit* SiPixelRecHit::clone ( void  ) const
inlineoverridevirtual

Implements TrackingRecHit.

Definition at line 43 of file SiPixelRecHit.h.

References SiPixelRecHit().

43 {return new SiPixelRecHit( * this); }
virtual SiPixelRecHit* SiPixelRecHit::clone ( TkCloner const &  cloner,
TrajectoryStateOnSurface const &  tsos 
) const
inlineoverrideprivatevirtual

Reimplemented from TrackingRecHit.

Definition at line 60 of file SiPixelRecHit.h.

60  {
61  return cloner(*this,tsos).release();
62  }
virtual RecHitPointer SiPixelRecHit::cloneSH ( ) const
inlineoverridevirtual

Reimplemented from TrackingRecHit.

Definition at line 45 of file SiPixelRecHit.h.

45 { return std::make_shared<SiPixelRecHit>(*this);}
virtual RecHitPointer SiPixelRecHit::cloneSH ( TkCloner const &  cloner,
TrajectoryStateOnSurface const &  tsos 
) const
inlineoverrideprivatevirtual

Reimplemented from TrackingRecHit.

Definition at line 64 of file SiPixelRecHit.h.

References BaseTrackerRecHit::clusterProbability(), flags, and TkCloner::makeShared().

64  {
65  return cloner.makeShared(*this,tsos);
66  }
ClusterRef SiPixelRecHit::cluster ( ) const
inline
float SiPixelRecHit::clusterProbability ( unsigned int  flags = 0) const

Definition at line 10 of file SiPixelRecHit.cc.

References hasFilledProb(), probabilityQ(), and probabilityXY().

Referenced by SiPixelPhase1RecHits::analyze(), SiPixelHitEfficiencySource::analyze(), SiPixelTrackResidualSource::analyze(), SiPixelErrorEstimation::analyze(), TrackerDpgAnalysis::analyze(), reco::modules::TrackerTrackHitFilter::checkStoN(), ApeEstimator::fillHitVariables(), and FilterScrapingPixelProbability::filter().

11 {
12  if (!hasFilledProb()) {
13  return 1;
14  }
15  else if (flags == 1) {
16  return probabilityXY() * probabilityQ();
17  }
18  else if (flags == 2) {
19  return probabilityQ();
20  }
21  else {
22  return probabilityXY();
23  }
24 }
bool hasFilledProb() const
std::vector< Variable::Flags > flags
Definition: MVATrainer.cc:135
float probabilityXY() const
Definition: SiPixelRecHit.h:96
float probabilityQ() const
Definition: SiPixelRecHit.h:99
virtual int SiPixelRecHit::dimension ( ) const
inlineoverridevirtual

Implements BaseTrackerRecHit.

Definition at line 53 of file SiPixelRecHit.h.

53 {return 2;}
virtual void SiPixelRecHit::getKfComponents ( KfComponentsHolder holder) const
inlineoverridevirtual

Implements BaseTrackerRecHit.

Definition at line 54 of file SiPixelRecHit.h.

References BaseTrackerRecHit::getKfComponents2D().

54 { getKfComponents2D(holder); }
void getKfComponents2D(KfComponentsHolder &holder) const
bool SiPixelRecHit::hasBadPixels ( ) const
inline
bool SiPixelRecHit::hasFilledProb ( ) const
inline
bool SiPixelRecHit::isOnEdge ( ) const
inline
virtual bool SiPixelRecHit::isPixel ( ) const
inlineoverridevirtual

Reimplemented from BaseTrackerRecHit.

Definition at line 40 of file SiPixelRecHit.h.

40 { return true;}
float SiPixelRecHit::probabilityQ ( ) const
inline
float SiPixelRecHit::probabilityX ( ) const
inline
float SiPixelRecHit::probabilityXY ( ) const
inline
float SiPixelRecHit::probabilityY ( ) const
inline
int SiPixelRecHit::qBin ( ) const
inline
SiPixelRecHitQuality::QualWordType SiPixelRecHit::rawQualityWord ( ) const
inline

Definition at line 81 of file SiPixelRecHit.h.

References BaseTrackerRecHit::qualWord_.

Referenced by HIPAlignmentAlgorithm::run().

81  {
82  return qualWord_ ;
83  }
unsigned int qualWord_
void SiPixelRecHit::setClusterRef ( ClusterRef const &  ref)
inline

Definition at line 51 of file SiPixelRecHit.h.

References TrackerSingleRecHit::setClusterPixelRef().

51 {setClusterPixelRef(ref);}
void setClusterPixelRef(ClusterPixelRef const &ref)
bool SiPixelRecHit::spansTwoROCs ( ) const
inline