CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
TrackerSingleRecHit.h
Go to the documentation of this file.
1 #ifndef TrackerSingleRecHit_H
2 #define TrackerSingleRecHit_H
3 
4 
7 
8 
9 /* a Hit composed by a "single" measurement
10  * it has a reference to a cluster and a local position&error
11  */
13 public:
14 
16 
18 
19 
23 
24 
25  // no position (as in persistent)
27  OmniClusterRef const& clus) :
28  Base(id, trackerHitRTTI::single), cluster_(clus){}
29 
31  DetId id,
32  OmniClusterRef const& clus) : Base(p,e,id, trackerHitRTTI::single), cluster_(clus){}
33 
35  DetId id,
36  ClusterPixelRef const& clus) : Base(p,e,id, trackerHitRTTI::single), cluster_(clus){}
37 
39  DetId id,
40  ClusterStripRef const& clus) : Base(p,e,id, trackerHitRTTI::single), cluster_(clus){}
41 
43  DetId id,
44  ClusterRegionalRef const& clus) : Base(p,e,id, trackerHitRTTI::single), cluster_(clus){}
45 
46  // used by trackMerger (to be improved)
48 
49  OmniClusterRef const & omniClusterRef() const { return cluster_;}
50  OmniClusterRef const & omniCluster() const { return cluster_;}
51  // for rekeying...
54 
56  return cluster_.cluster_pixel();
57  }
58 
60  return cluster_.cluster_strip();
61  }
62 
64  return cluster_.cluster_regional();
65  }
66 
67  SiStripCluster const & stripCluster() const {
68  return cluster_.stripCluster();
69  }
70 
71  // void setClusterRef(const & OmniClusterRef ref) { cluster_ =ref;}
75 
76 
77 
78  virtual bool sharesInput( const TrackingRecHit* other, SharedInputType what) const GCC11_FINAL;
79 
80 
81  bool sharesInput(TrackerSingleRecHit const & other) const {
82  return cluster_== other.cluster_;
83  }
84 
85  bool sameCluster( OmniClusterRef const & oh) const {
86  return oh == cluster_;
87  }
88 
89  virtual std::vector<const TrackingRecHit*> recHits() const;
90  virtual std::vector<TrackingRecHit*> recHits();
91 
92 private:
93 
94  // new game
96 
97 };
98 
99 #endif
SharedInputType
definition of equality via shared input
ClusterStripRef cluster_strip() const
void setClusterStripRef(ClusterStripRef const &ref)
ClusterRegionalRef cluster_regional() const
OmniClusterRef & omniCluster()
void setClusterRegionalRef(ClusterRegionalRef const &ref)
ClusterRegionalRef cluster_regional() const
bool sharesInput(TrackerSingleRecHit const &other) const
ClusterPixelRef cluster_pixel() const
TrackerSingleRecHit(const LocalPoint &p, const LocalError &e, DetId id, OmniClusterRef const &clus)
SiStripCluster const & stripCluster() const
TrackerSingleRecHit(const LocalPoint &p, const LocalError &e, DetId id, ClusterRegionalRef const &clus)
#define GCC11_FINAL
ClusterStripRef cluster_strip() const
TrackerSingleRecHit(DetId id, OmniClusterRef const &clus)
OmniClusterRef const & omniCluster() const
Definition: DetId.h:20
OmniClusterRef const & omniClusterRef() const
TrackerSingleRecHit(const LocalPoint &p, const LocalError &e, DetId id, ClusterStripRef const &clus)
BaseTrackerRecHit Base
virtual std::vector< const TrackingRecHit * > recHits() const
Access to component RecHits (if any)
SiStripCluster const & stripCluster() const
string const
Definition: compareJSON.py:14
bool sameCluster(OmniClusterRef const &oh) const
OmniClusterRef::ClusterRegionalRef ClusterRegionalRef
virtual bool sharesInput(const TrackingRecHit *other, SharedInputType what) const GCC11_FINAL
virtual OmniClusterRef const & firstClusterRef() const GCC11_FINAL
ClusterPixelRef cluster_pixel() const
void setClusterPixelRef(ClusterPixelRef const &ref)
OmniClusterRef & omniClusterRef()
TrackerSingleRecHit(const LocalPoint &p, const LocalError &e, DetId id, ClusterPixelRef const &clus)
OmniClusterRef::ClusterPixelRef ClusterPixelRef
OmniClusterRef::ClusterStripRef ClusterStripRef
Our base class.
Definition: SiPixelRecHit.h:22