CMS 3D CMS Logo

Phase2TrackerRecHit1D.h
Go to the documentation of this file.
1 #ifndef DATAFORMATS_TRACKERRECHIT2D_PHASE2TRACKERRECHIT1D_H
2 #define DATAFORMATS_TRACKERRECHIT2D_PHASE2TRACKERRECHIT1D_H
3 
5 
7 
8 #include "TkCloner.h"
9 
11 public:
13 
15 
16  ~Phase2TrackerRecHit1D() override {}
17 
18  Phase2TrackerRecHit1D(const LocalPoint& pos, const LocalError& err, GeomDet const& idet, CluRef const& clus)
19  : TrackerSingleRecHit(pos, err, idet, clus) {}
20 
21  Phase2TrackerRecHit1D* clone() const override { return new Phase2TrackerRecHit1D(*this); }
22  RecHitPointer cloneSH() const override { return std::make_shared<Phase2TrackerRecHit1D>(*this); }
23 
24  CluRef cluster() const { return cluster_phase2OT(); }
25  void setClusterRef(CluRef const& ref) { setClusterPhase2Ref(ref); }
26 
27  bool isPhase2() const override { return true; }
28  //FIXME::check dimension of this!!
29  int dimension() const override { return 2; }
30  void getKfComponents(KfComponentsHolder& holder) const override { getKfComponents2D(holder); }
31 
32  bool canImproveWithTrack() const override { return true; }
33 
34 private:
35  // double dispatch
36  Phase2TrackerRecHit1D* clone_(TkCloner const& cloner, TrajectoryStateOnSurface const& tsos) const override {
37  return cloner(*this, tsos).release();
38  }
39  RecHitPointer cloneSH_(TkCloner const& cloner, TrajectoryStateOnSurface const& tsos) const override {
40  return cloner.makeShared(*this, tsos);
41  }
42 };
43 
45 
46 #endif
GeomDet
Definition: GeomDet.h:27
Phase2TrackerRecHit1D::getKfComponents
void getKfComponents(KfComponentsHolder &holder) const override
Definition: Phase2TrackerRecHit1D.h:30
Phase2TrackerRecHit1D::clone_
Phase2TrackerRecHit1D * clone_(TkCloner const &cloner, TrajectoryStateOnSurface const &tsos) const override
Definition: Phase2TrackerRecHit1D.h:36
Phase2TrackerRecHit1D::clone
Phase2TrackerRecHit1D * clone() const override
Definition: Phase2TrackerRecHit1D.h:21
Phase2TrackerRecHit1D::CluRef
OmniClusterRef::Phase2Cluster1DRef CluRef
Definition: Phase2TrackerRecHit1D.h:12
pos
Definition: PixelAliasList.h:18
Phase2TrackerRecHit1D::cloneSH
RecHitPointer cloneSH() const override
Definition: Phase2TrackerRecHit1D.h:22
Phase2TrackerRecHit1D::isPhase2
bool isPhase2() const override
Definition: Phase2TrackerRecHit1D.h:27
Phase2TrackerRecHit1D::Phase2TrackerRecHit1D
Phase2TrackerRecHit1D()
Definition: Phase2TrackerRecHit1D.h:14
TrackingRecHit::RecHitPointer
std::shared_ptr< TrackingRecHit const > RecHitPointer
Definition: TrackingRecHit.h:24
Phase2TrackerRecHit1D::~Phase2TrackerRecHit1D
~Phase2TrackerRecHit1D() override
Definition: Phase2TrackerRecHit1D.h:16
Phase2TrackerRecHit1D::cloneSH_
RecHitPointer cloneSH_(TkCloner const &cloner, TrajectoryStateOnSurface const &tsos) const override
Definition: Phase2TrackerRecHit1D.h:39
edm::Ref
Definition: AssociativeIterator.h:58
TrajectoryStateOnSurface
Definition: TrajectoryStateOnSurface.h:16
Phase2TrackerRecHit1D::cluster
CluRef cluster() const
Definition: Phase2TrackerRecHit1D.h:24
TkCloner
Definition: TkCloner.h:15
Phase2TrackerRecHit1D::setClusterRef
void setClusterRef(CluRef const &ref)
Definition: Phase2TrackerRecHit1D.h:25
Point3DBase< float, LocalTag >
runTheMatrix.err
err
Definition: runTheMatrix.py:288
LocalError
Definition: LocalError.h:12
Phase2TrackerRecHit1D::dimension
int dimension() const override
Definition: Phase2TrackerRecHit1D.h:29
TkCloner.h
TrackerSingleRecHit::setClusterPhase2Ref
void setClusterPhase2Ref(ClusterPhase2Ref const &ref)
Definition: TrackerSingleRecHit.h:66
TkCloner::makeShared
TrackingRecHit::ConstRecHitPointer makeShared(TrackingRecHit::ConstRecHitPointer const &hit, TrajectoryStateOnSurface const &tsos) const
Definition: TkCloner.h:23
Phase2TrackerRecHit1D::Phase2TrackerRecHit1D
Phase2TrackerRecHit1D(const LocalPoint &pos, const LocalError &err, GeomDet const &idet, CluRef const &clus)
Definition: Phase2TrackerRecHit1D.h:18
KfComponentsHolder
Definition: KfComponentsHolder.h:13
Phase2TrackerRecHit1D::canImproveWithTrack
bool canImproveWithTrack() const override
Definition: Phase2TrackerRecHit1D.h:32
Phase2TrackerRecHit1DCollectionNew
edmNew::DetSetVector< Phase2TrackerRecHit1D > Phase2TrackerRecHit1DCollectionNew
Definition: Phase2TrackerRecHit1D.h:44
edmNew::DetSetVector
Definition: DetSetNew.h:13
TrackerSingleRecHit
Definition: TrackerSingleRecHit.h:11
TrackerSingleRecHit::cluster_phase2OT
ClusterPhase2Ref cluster_phase2OT() const
Definition: TrackerSingleRecHit.h:51
BaseTrackerRecHit::getKfComponents2D
void getKfComponents2D(KfComponentsHolder &holder) const
Definition: BaseTrackerRecHit.cc:54
TrackerSingleRecHit.h
DetSetVectorNew.h
Phase2TrackerRecHit1D
Definition: Phase2TrackerRecHit1D.h:10