CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
FastMatchedTrackerRecHit.h
Go to the documentation of this file.
1 #ifndef FastMatchedTrackerRecHit_H
2 #define FastMatchedTrackerRecHit_H
3 
6 
8 public:
10 
12 
14  const LocalError& err,
15  const GeomDet& idet,
16  const FastSingleTrackerRecHit& rMono,
17  const FastSingleTrackerRecHit& rStereo,
18  bool stereoHitFirst = false)
19  : FastTrackerRecHit(pos, err, idet, fastTrackerRecHitType::siStripMatched2D),
20  stereoHitFirst_(stereoHitFirst),
21  componentMono_(rMono),
22  componentStereo_(rStereo){};
23 
24  FastMatchedTrackerRecHit* clone() const override {
26  p->load();
27  return p;
28  }
29 
30  size_t nIds() const override { return 2; }
31  int32_t id(size_t i = 0) const override { return i == 0 ? monoHit().id() : stereoHit().id(); }
32  int32_t eventId(size_t i = 0) const override { return i == 0 ? monoHit().eventId() : stereoHit().eventId(); }
33 
34  size_t nSimTrackIds() const override {
36  }
37  int32_t simTrackId(size_t i) const override {
40  }
41  int32_t simTrackEventId(size_t i) const override {
44  }
45 
46  const FastSingleTrackerRecHit& monoHit() const { return componentMono_; }
50 
51  void setStereoLayerFirst(bool stereoHitFirst = true) { stereoHitFirst_ = stereoHitFirst; }
52  void setEventId(int32_t eventId) override {
53  componentMono_.setEventId(eventId);
55  }
56 
58  FastTrackerRecHit::setRecHitCombinationIndex(recHitCombinationIndex);
59  componentMono_.setRecHitCombinationIndex(recHitCombinationIndex);
60  componentStereo_.setRecHitCombinationIndex(recHitCombinationIndex);
61  }
62 
63 private:
67 };
68 
69 #endif
void setRecHitCombinationIndex(int32_t recHitCombinationIndex) override
size_t nSimTrackIds() const override
see addSimTrackId(int32_t simTrackId)
const FastSingleTrackerRecHit & firstHit() const
size_t nIds() const override
int32_t eventId(size_t i=0) const override
size_t nSimTrackIds() const override
see addSimTrackId(int32_t simTrackId)
void load()
helps making the hit postion and error persistent
void setEventId(int32_t eventId) override
int32_t id(size_t i=0) const override
virtual int32_t recHitCombinationIndex() const
FastMatchedTrackerRecHit * clone() const override
FastMatchedTrackerRecHit(const LocalPoint &pos, const LocalError &err, const GeomDet &idet, const FastSingleTrackerRecHit &rMono, const FastSingleTrackerRecHit &rStereo, bool stereoHitFirst=false)
const FastSingleTrackerRecHit & monoHit() const
void setEventId(int32_t eventId) override
int32_t simTrackId(size_t i) const override
FastSingleTrackerRecHit componentMono_
int32_t simTrackEventId(size_t i) const override
int32_t simTrackEventId(size_t i) const override
see addSimTrackId(int32_t simTrackId)
int32_t simTrackId(size_t i) const override
see addSimTrackId(int32_t simTrackId)
int32_t eventId(size_t i=0) const override
virtual void setRecHitCombinationIndex(int32_t recHitCombinationIndex)
int32_t id(size_t i=0) const override
void setStereoLayerFirst(bool stereoHitFirst=true)
const FastSingleTrackerRecHit & secondHit() const
FastSingleTrackerRecHit componentStereo_
const FastSingleTrackerRecHit & stereoHit() const