DataFormats
TrackerRecHit2D
interface
TkCloner.h
Go to the documentation of this file.
1
#ifndef TKClonerRecHit_H
2
#define TKClonerRecHit_H
3
4
#include <memory>
5
#include "
DataFormats/TrackingRecHit/interface/TrackingRecHit.h
"
6
#include "
FWCore/Utilities/interface/thread_safety_macros.h
"
7
8
class
SiPixelRecHit
;
9
class
SiStripRecHit2D
;
10
class
SiStripRecHit1D
;
11
class
SiStripMatchedRecHit2D
;
12
class
ProjectedSiStripRecHit2D
;
13
class
Phase2TrackerRecHit1D
;
14
15
class
TkCloner
{
16
public
:
17
TrackingRecHit
*
operator
()
CMS_THREAD_SAFE
(
TrackingRecHit
const
&
hit
,
TrajectoryStateOnSurface
const
&
tsos
)
const
{
18
return
hit
.clone_(*
this
,
tsos
);
19
}
20
21
virtual
~TkCloner
() {}
22
#ifndef __GCCXML__
23
TrackingRecHit::ConstRecHitPointer
makeShared
(
TrackingRecHit::ConstRecHitPointer
const
&
hit
,
24
TrajectoryStateOnSurface
const
&
tsos
)
const
{
25
return
hit
->canImproveWithTrack() ?
hit
->cloneSH_(*
this
,
tsos
) :
hit
;
26
// return hit->cloneSH(*this, tsos);
27
}
28
#endif
29
30
virtual
std::unique_ptr<SiPixelRecHit>
operator()
(
SiPixelRecHit
const
&
hit
,
31
TrajectoryStateOnSurface
const
&
tsos
)
const
= 0;
32
virtual
std::unique_ptr<SiStripRecHit2D>
operator()
(
SiStripRecHit2D
const
&
hit
,
33
TrajectoryStateOnSurface
const
&
tsos
)
const
= 0;
34
virtual
std::unique_ptr<SiStripRecHit1D>
operator()
(
SiStripRecHit1D
const
&
hit
,
35
TrajectoryStateOnSurface
const
&
tsos
)
const
= 0;
36
virtual
std::unique_ptr<SiStripMatchedRecHit2D>
operator()
(
SiStripMatchedRecHit2D
const
&
hit
,
37
TrajectoryStateOnSurface
const
&
tsos
)
const
= 0;
38
virtual
std::unique_ptr<ProjectedSiStripRecHit2D>
operator()
(
ProjectedSiStripRecHit2D
const
&
hit
,
39
TrajectoryStateOnSurface
const
&
tsos
)
const
= 0;
40
virtual
std::unique_ptr<Phase2TrackerRecHit1D>
operator()
(
Phase2TrackerRecHit1D
const
&
hit
,
41
TrajectoryStateOnSurface
const
&
tsos
)
const
= 0;
42
43
#ifndef __GCCXML__
44
virtual
TrackingRecHit::ConstRecHitPointer
makeShared
(
SiPixelRecHit
const
&
hit
,
45
TrajectoryStateOnSurface
const
&
tsos
)
const
= 0;
46
virtual
TrackingRecHit::ConstRecHitPointer
makeShared
(
SiStripRecHit2D
const
&
hit
,
47
TrajectoryStateOnSurface
const
&
tsos
)
const
= 0;
48
virtual
TrackingRecHit::ConstRecHitPointer
makeShared
(
SiStripRecHit1D
const
&
hit
,
49
TrajectoryStateOnSurface
const
&
tsos
)
const
= 0;
50
virtual
TrackingRecHit::ConstRecHitPointer
makeShared
(
SiStripMatchedRecHit2D
const
&
hit
,
51
TrajectoryStateOnSurface
const
&
tsos
)
const
= 0;
52
virtual
TrackingRecHit::ConstRecHitPointer
makeShared
(
ProjectedSiStripRecHit2D
const
&
hit
,
53
TrajectoryStateOnSurface
const
&
tsos
)
const
= 0;
54
virtual
TrackingRecHit::ConstRecHitPointer
makeShared
(
Phase2TrackerRecHit1D
const
&
hit
,
55
TrajectoryStateOnSurface
const
&
tsos
)
const
= 0;
56
#endif
57
};
58
#endif
SiStripRecHit2D
Definition:
SiStripRecHit2D.h:7
TkCloner::operator
TrackingRecHit * operator()(TrackingRecHit const &hit
watchdog.const
const
Definition:
watchdog.py:83
ProjectedSiStripRecHit2D
Definition:
ProjectedSiStripRecHit2D.h:8
SiPixelRecHit
Our base class.
Definition:
SiPixelRecHit.h:23
TrajectoryStateOnSurface
Definition:
TrajectoryStateOnSurface.h:16
TrackingRecHit.h
TkCloner
Definition:
TkCloner.h:15
CMS_THREAD_SAFE
#define CMS_THREAD_SAFE
Definition:
thread_safety_macros.h:4
TkCloner::~TkCloner
virtual ~TkCloner()
Definition:
TkCloner.h:21
TkCloner::operator()
virtual std::unique_ptr< SiPixelRecHit > operator()(SiPixelRecHit const &hit, TrajectoryStateOnSurface const &tsos) const =0
thread_safety_macros.h
TkCloner::tsos
TrackingRecHit TrajectoryStateOnSurface const &const tsos
Definition:
TkCloner.h:17
TrackingRecHit::ConstRecHitPointer
std::shared_ptr< TrackingRecHit const > ConstRecHitPointer
Definition:
TrackingRecHit.h:25
TkCloner::makeShared
TrackingRecHit::ConstRecHitPointer makeShared(TrackingRecHit::ConstRecHitPointer const &hit, TrajectoryStateOnSurface const &tsos) const
Definition:
TkCloner.h:23
SiStripRecHit1D
Definition:
SiStripRecHit1D.h:8
TrackingRecHit
Definition:
TrackingRecHit.h:21
SiStripMatchedRecHit2D
Definition:
SiStripMatchedRecHit2D.h:8
hit
Definition:
SiStripHitEffFromCalibTree.cc:88
Phase2TrackerRecHit1D
Definition:
Phase2TrackerRecHit1D.h:10
Generated for CMSSW Reference Manual by
1.8.16