Main Page
Namespaces
Classes
Package Documentation
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Properties
Friends
Macros
Pages
DataFormats
TrackerRecHit2D
interface
SiStripMatchedRecHit2D.h
Go to the documentation of this file.
1
#ifndef SiStripMatchedRecHit2D_H
2
#define SiStripMatchedRecHit2D_H
3
4
#include "
DataFormats/TrackerRecHit2D/interface/SiStripRecHit2D.h
"
5
6
class
SiStripMatchedRecHit2D
GCC11_FINAL
:
public
BaseTrackerRecHit
{
7
public
:
8
typedef
BaseTrackerRecHit
Base
;
9
10
SiStripMatchedRecHit2D
(){}
11
~SiStripMatchedRecHit2D
(){}
12
13
SiStripMatchedRecHit2D
(
const
LocalPoint
&
pos
,
const
LocalError
& err,
const
DetId
&
id
,
14
const
SiStripRecHit2D
* rMono,
const
SiStripRecHit2D
* rStereo):
15
BaseTrackerRecHit
(pos, err, id, trackerHitRTTI::
match
),
clusterMono_
(rMono->omniClusterRef()),
clusterStereo_
(rStereo->omniClusterRef()){}
16
17
// by value, as they will not exists anymore...
18
SiStripRecHit2D
stereoHit
()
const
{
return
SiStripRecHit2D
(
stereoId
(),
stereoClusterRef
()) ;}
19
SiStripRecHit2D
monoHit
()
const
{
return
SiStripRecHit2D
(
monoId
(),
monoClusterRef
());}
20
21
unsigned
int
stereoId
()
const
{
return
rawId
()+1;}
22
unsigned
int
monoId
()
const
{
return
rawId
()+2;}
23
24
// (to be improved)
25
virtual
OmniClusterRef
const
&
firstClusterRef
()
const
{
return
monoClusterRef
();}
26
27
28
OmniClusterRef
const
&
stereoClusterRef
()
const
{
return
clusterStereo_
;}
29
OmniClusterRef
const
&
monoClusterRef
()
const
{
return
clusterMono_
;}
30
// Non const variants needed for cluster re-keying
31
OmniClusterRef
&
stereoClusterRef
() {
return
clusterStereo_
;}
32
OmniClusterRef
&
monoClusterRef
() {
return
clusterMono_
;}
33
34
SiStripCluster
const
&
stereoCluster
()
const
{
35
return
stereoClusterRef
().
stripCluster
();
36
}
37
SiStripCluster
const
&
monoCluster
()
const
{
38
return
monoClusterRef
().
stripCluster
();
39
}
40
41
42
virtual
SiStripMatchedRecHit2D
*
clone
()
const
{
return
new
SiStripMatchedRecHit2D
( *
this
);}
43
44
virtual
int
dimension
()
const
{
return
2;}
45
virtual
void
getKfComponents
(
KfComponentsHolder
& holder )
const
{
getKfComponents2D
(holder); }
46
47
48
49
virtual
bool
sharesInput
(
const
TrackingRecHit
* other,
SharedInputType
what)
const
;
50
51
bool
sharesInput
(
TrackerSingleRecHit
const
& other)
const
;
52
53
virtual
std::vector<const TrackingRecHit*>
recHits
()
const
;
54
55
virtual
std::vector<TrackingRecHit*>
recHits
();
56
57
private
:
58
OmniClusterRef
clusterMono_
,
clusterStereo_
;
59
};
60
61
62
inline
63
bool
sharesClusters
(
SiStripMatchedRecHit2D
const
& h1,
SiStripMatchedRecHit2D
const
& h2,
64
TrackingRecHit::SharedInputType
what) {
65
bool
mono = h1.
monoClusterRef
()== h2.
monoClusterRef
();
66
bool
stereo = h1.
stereoClusterRef
()== h2.
stereoClusterRef
();
67
68
return
(what==
TrackingRecHit::all
) ? (mono&&stereo) : (mono||stereo);
69
70
}
71
72
#endif
TrackingRecHit::SharedInputType
SharedInputType
definition of equality via shared input
Definition:
TrackingRecHit.h:30
SiStripMatchedRecHit2D::stereoClusterRef
OmniClusterRef & stereoClusterRef()
Definition:
SiStripMatchedRecHit2D.h:31
SiStripMatchedRecHit2D::recHits
virtual std::vector< const TrackingRecHit * > recHits() const
Access to component RecHits (if any)
Definition:
SiStripMatchedRecHit2D.cc:34
SiStripMatchedRecHit2D::stereoId
unsigned int stereoId() const
Definition:
SiStripMatchedRecHit2D.h:21
pos
Definition:
Histograms.cc:19
SiStripMatchedRecHit2D::dimension
virtual int dimension() const
Definition:
SiStripMatchedRecHit2D.h:44
SiStripMatchedRecHit2D::SiStripMatchedRecHit2D
SiStripMatchedRecHit2D(const LocalPoint &pos, const LocalError &err, const DetId &id, const SiStripRecHit2D *rMono, const SiStripRecHit2D *rStereo)
Definition:
SiStripMatchedRecHit2D.h:13
SiStripMatchedRecHit2D::monoCluster
SiStripCluster const & monoCluster() const
Definition:
SiStripMatchedRecHit2D.h:37
SiStripRecHit2D
Definition:
SiStripRecHit2D.h:7
SiStripMatchedRecHit2D::stereoClusterRef
OmniClusterRef const & stereoClusterRef() const
Definition:
SiStripMatchedRecHit2D.h:28
TrackingRecHit
Definition:
TrackingRecHit.h:11
SiStripMatchedRecHit2D::sharesInput
virtual bool sharesInput(const TrackingRecHit *other, SharedInputType what) const
Definition:
SiStripMatchedRecHit2D.cc:6
TrackingRecHit::all
Definition:
TrackingRecHit.h:30
SiStripRecHit2D.h
SiStripMatchedRecHit2D
Definition:
SiStripMatchedRecHit2D.h:6
SiStripMatchedRecHit2D::Base
BaseTrackerRecHit Base
Definition:
SiStripMatchedRecHit2D.h:8
OmniClusterRef::stripCluster
SiStripCluster const & stripCluster() const
Definition:
OmniClusterRef.h:41
SiStripCluster
Definition:
SiStripCluster.h:9
GCC11_FINAL
#define GCC11_FINAL
Definition:
GCC11Compatibility.h:32
BaseTrackerRecHit::getKfComponents2D
void getKfComponents2D(KfComponentsHolder &holder) const
Definition:
BaseTrackerRecHit.cc:58
SiStripMatchedRecHit2D::~SiStripMatchedRecHit2D
~SiStripMatchedRecHit2D()
Definition:
SiStripMatchedRecHit2D.h:11
SiStripMatchedRecHit2D::SiStripMatchedRecHit2D
SiStripMatchedRecHit2D()
Definition:
SiStripMatchedRecHit2D.h:10
SiStripMatchedRecHit2D::monoClusterRef
OmniClusterRef const & monoClusterRef() const
Definition:
SiStripMatchedRecHit2D.h:29
SiStripMatchedRecHit2D::clusterMono_
OmniClusterRef clusterMono_
Definition:
SiStripMatchedRecHit2D.h:58
DetId
Definition:
DetId.h:20
SiStripMatchedRecHit2D::getKfComponents
virtual void getKfComponents(KfComponentsHolder &holder) const
Definition:
SiStripMatchedRecHit2D.h:45
SiStripMatchedRecHit2D::stereoHit
SiStripRecHit2D stereoHit() const
Definition:
SiStripMatchedRecHit2D.h:18
LocalError
Definition:
LocalError.h:12
BaseTrackerRecHit
Definition:
BaseTrackerRecHit.h:21
OmniClusterRef
Definition:
OmniClusterRef.h:12
SiStripMatchedRecHit2D::firstClusterRef
virtual OmniClusterRef const & firstClusterRef() const
Definition:
SiStripMatchedRecHit2D.h:25
SiStripMatchedRecHit2D::monoClusterRef
OmniClusterRef & monoClusterRef()
Definition:
SiStripMatchedRecHit2D.h:32
SiStripMatchedRecHit2D::monoHit
SiStripRecHit2D monoHit() const
Definition:
SiStripMatchedRecHit2D.h:19
Point3DBase< float, LocalTag >
SiStripMatchedRecHit2D::stereoCluster
SiStripCluster const & stereoCluster() const
Definition:
SiStripMatchedRecHit2D.h:34
match
std::pair< typename Association::data_type::first_type, double > match(Reference key, Association association, bool bestMatchByMaxValue)
Generic matching function.
Definition:
Utils.h:6
KfComponentsHolder
Definition:
KfComponentsHolder.h:13
SiStripMatchedRecHit2D::monoId
unsigned int monoId() const
Definition:
SiStripMatchedRecHit2D.h:22
TrackerSingleRecHit
Definition:
TrackerSingleRecHit.h:12
SiStripMatchedRecHit2D::clone
virtual SiStripMatchedRecHit2D * clone() const
Definition:
SiStripMatchedRecHit2D.h:42
TrackingRecHit::rawId
id_type rawId() const
Definition:
TrackingRecHit.h:61
sharesClusters
bool sharesClusters(SiStripMatchedRecHit2D const &h1, SiStripMatchedRecHit2D const &h2, TrackingRecHit::SharedInputType what)
Definition:
SiStripMatchedRecHit2D.h:63
SiStripMatchedRecHit2D::clusterStereo_
OmniClusterRef clusterStereo_
Definition:
SiStripMatchedRecHit2D.h:58
Generated for CMSSW Reference Manual by
1.8.5