CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
TkCloner.h
Go to the documentation of this file.
1 #ifndef TKClonerRecHit_H
2 #define TKClonerRecHit_H
3 
6 
7 class SiPixelRecHit;
8 class SiStripRecHit2D;
9 class SiStripRecHit1D;
10 class SiStripMatchedRecHit2D;
11 class ProjectedSiStripRecHit2D;
12 
13 class TkCloner {
14 public:
16  return hit.clone(*this, tsos);
17  }
18 
19 #ifdef NO_DICT
21  return hit->canImproveWithTrack() ? hit->cloneSH(*this, tsos) : hit;
22  // return hit->cloneSH(*this, tsos);
23  }
24 #endif
25 
26  virtual SiPixelRecHit * operator()(SiPixelRecHit const & hit, TrajectoryStateOnSurface const& tsos) const=0;
27  virtual SiStripRecHit2D * operator()(SiStripRecHit2D const & hit, TrajectoryStateOnSurface const& tsos) const=0;
28  virtual SiStripRecHit1D * operator()(SiStripRecHit1D const & hit, TrajectoryStateOnSurface const& tsos) const=0;
29  virtual SiStripMatchedRecHit2D * operator()(SiStripMatchedRecHit2D const & hit, TrajectoryStateOnSurface const& tsos) const=0;
30  virtual ProjectedSiStripRecHit2D * operator()(ProjectedSiStripRecHit2D const & hit, TrajectoryStateOnSurface const& tsos) const=0;
31 
32 #ifdef NO_DICT
33  virtual TrackingRecHit::ConstRecHitPointer makeShared(SiPixelRecHit const & hit, TrajectoryStateOnSurface const& tsos) const=0;
34  virtual TrackingRecHit::ConstRecHitPointer makeShared(SiStripRecHit2D const & hit, TrajectoryStateOnSurface const& tsos) const=0;
35  virtual TrackingRecHit::ConstRecHitPointer makeShared(SiStripRecHit1D const & hit, TrajectoryStateOnSurface const& tsos) const=0;
36  virtual TrackingRecHit::ConstRecHitPointer makeShared(SiStripMatchedRecHit2D const & hit, TrajectoryStateOnSurface const& tsos) const=0;
37  virtual TrackingRecHit::ConstRecHitPointer makeShared(ProjectedSiStripRecHit2D const & hit, TrajectoryStateOnSurface const& tsos) const=0;
38 #endif
39 
40 };
41 #endif
TrackingRecHit TrajectoryStateOnSurface const &tsos const
Definition: TkCloner.h:15
TrackingRecHit * operator() CMS_THREAD_SAFE(TrackingRecHit const &hit
std::shared_ptr< TrackingRecHit const > ConstRecHitPointer
virtual SiPixelRecHit * operator()(SiPixelRecHit const &hit, TrajectoryStateOnSurface const &tsos) const =0
#define CMS_THREAD_SAFE
Pixel Reconstructed Hit.