Main Page
Namespaces
Classes
Package Documentation
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Properties
Friends
Macros
Pages
src
RecoTracker
TkSeedingLayers
src
HitExtractorSTRP.h
Go to the documentation of this file.
1
#ifndef RecoTracker_TkSeedingLayers_HitExtractorSTRP_H
2
#define RecoTracker_TkSeedingLayers_HitExtractorSTRP_H
3
4
#include "
RecoTracker/TkSeedingLayers/interface/SeedingLayer.h
"
5
#include "
FWCore/Utilities/interface/InputTag.h
"
6
#include "
HitExtractor.h
"
7
8
#include "
DataFormats/TrackerRecHit2D/interface/SiStripRecHit2D.h
"
9
#include "
DataFormats/TrackerRecHit2D/interface/SiStripMatchedRecHit2DCollection.h
"
10
#include "
DataFormats/TrackerRecHit2D/interface/SiStripRecHit2DCollection.h
"
11
12
#include <vector>
13
#include <tuple>
14
class
DetLayer
;
15
16
namespace
edm {
17
template
<
typename
T>
class
ContainerMask
;
18
}
19
20
namespace
ctfseeding {
21
22
class
HitExtractorSTRP
:
public
HitExtractor
{
23
24
public
:
25
typedef
SiStripRecHit2D::ClusterRef
SiStripClusterRef
;
26
27
HitExtractorSTRP
(
GeomDetEnumerators::SubDetector
subdet,
SeedingLayer::Side
& side,
int
idLayer);
28
virtual
~HitExtractorSTRP
(){}
29
30
virtual
HitExtractor::Hits
hits
(
const
TransientTrackingRecHitBuilder
&ttrhBuilder,
const
edm::Event
& ,
const
edm::EventSetup
& )
const
;
31
virtual
HitExtractorSTRP
*
clone
()
const
{
return
new
HitExtractorSTRP
(*
this
); }
32
33
void
useMatchedHits
(
const
edm::InputTag
&
m
,
edm::ConsumesCollector
& iC) {
hasMatchedHits
=
true
;
theMatchedHits
= iC.
consumes
<
SiStripMatchedRecHit2DCollection
>(
m
); }
34
void
useRPhiHits
(
const
edm::InputTag
&
m
,
edm::ConsumesCollector
& iC) {
hasRPhiHits
=
true
;
theRPhiHits
= iC.
consumes
<
SiStripRecHit2DCollection
>(
m
); }
35
void
useStereoHits
(
const
edm::InputTag
&
m
,
edm::ConsumesCollector
& iC) {
hasStereoHits
=
true
;
theStereoHits
= iC.
consumes
<
SiStripRecHit2DCollection
>(
m
); }
36
void
useRingSelector
(
int
minRing,
int
maxRing);
37
void
useSimpleRphiHitsCleaner
(
bool
use) {
hasSimpleRphiHitsCleaner
= use;}
38
39
void
cleanedOfClusters
(
const
TransientTrackingRecHitBuilder
& ttrhBuilder,
const
edm::Event
& ev,
HitExtractor::Hits
&
hits
,
bool
matched,
unsigned
int
cleanFrom=0)
const
;
40
41
bool
skipThis
(
const
TransientTrackingRecHitBuilder
& ttrhBuilder,
TransientTrackingRecHit::ConstRecHitPointer
& ptr,
edm::Handle
<
edm::ContainerMask
<
edmNew::DetSetVector<SiStripCluster>
> > & stripClusterMask,
42
TransientTrackingRecHit::ConstRecHitPointer
& replaceMe)
const
;
43
44
bool
skipThis
(
OmniClusterRef
const
& clus,
edm::Handle
<
edm::ContainerMask
<
edmNew::DetSetVector<SiStripCluster>
> > & stripClusterMask)
const
;
45
46
void
project
(
const
TransientTrackingRecHitBuilder
& ttrhBuilder,
47
TransientTrackingRecHit::ConstRecHitPointer
& ptr,
48
const
SiStripRecHit2D *
hit
,
49
TransientTrackingRecHit::ConstRecHitPointer
& replaceMe)
const
;
50
void
setNoProjection
()
const
{
failProjection
=
true
;};
51
void
setMinAbsZ
(
double
minZToSet) {
minAbsZ
=minZToSet;}
52
53
bool
useRingSelector
()
const
{
return
hasRingSelector
; }
54
std::tuple<int, int>
getMinMaxRing
()
const
{
return
std::make_tuple(
theMinRing
,
theMaxRing
); }
55
private
:
56
bool
ringRange
(
int
ring
)
const
;
57
58
typedef
edm::ContainerMask<edmNew::DetSetVector<SiStripCluster>
>
SkipClustersCollection
;
59
void
useSkipClusters_
(
const
edm::InputTag
&
m
,
edm::ConsumesCollector
& iC)
override
;
60
private
:
61
const
GeomDetEnumerators::SubDetector
theLayerSubDet
;
62
SeedingLayer::Side
theSide
;
63
mutable
const
SeedingLayer
*
theSLayer
;
64
int
theIdLayer
;
65
double
minAbsZ
;
66
int
theMinRing
,
theMaxRing
;
67
edm::EDGetTokenT<SkipClustersCollection>
theSkipClusters
;
68
edm::EDGetTokenT<SiStripMatchedRecHit2DCollection>
theMatchedHits
;
69
edm::EDGetTokenT<SiStripRecHit2DCollection>
theRPhiHits
;
70
edm::EDGetTokenT<SiStripRecHit2DCollection>
theStereoHits
;
71
bool
hasMatchedHits
;
72
bool
hasRPhiHits
;
73
bool
hasStereoHits
;
74
bool
hasRingSelector
;
75
bool
hasSimpleRphiHitsCleaner
;
76
mutable
bool
failProjection
;
77
};
78
79
}
80
#endif
SiStripRecHit2DCollection.h
edm::ConsumesCollector::consumes
EDGetTokenT< ProductType > consumes(edm::InputTag const &tag)
Definition:
ConsumesCollector.h:41
ctfseeding::HitExtractorSTRP::HitExtractorSTRP
HitExtractorSTRP(GeomDetEnumerators::SubDetector subdet, SeedingLayer::Side &side, int idLayer)
Definition:
HitExtractorSTRP.cc:25
ctfseeding::HitExtractorSTRP::hasSimpleRphiHitsCleaner
bool hasSimpleRphiHitsCleaner
Definition:
HitExtractorSTRP.h:75
ctfseeding::HitExtractorSTRP::hits
virtual HitExtractor::Hits hits(const TransientTrackingRecHitBuilder &ttrhBuilder, const edm::Event &, const edm::EventSetup &) const
Definition:
HitExtractorSTRP.cc:136
edm::ContainerMask
Definition:
ContainerMask.h:35
ConstReferenceCountingPointer< TransientTrackingRecHit >
ctfseeding::HitExtractorSTRP::theMaxRing
int theMaxRing
Definition:
HitExtractorSTRP.h:66
ctfseeding::HitExtractorSTRP::ringRange
bool ringRange(int ring) const
Definition:
HitExtractorSTRP.cc:43
ctfseeding::HitExtractorSTRP::useStereoHits
void useStereoHits(const edm::InputTag &m, edm::ConsumesCollector &iC)
Definition:
HitExtractorSTRP.h:35
HitExtractor.h
ctfseeding::HitExtractorSTRP::useMatchedHits
void useMatchedHits(const edm::InputTag &m, edm::ConsumesCollector &iC)
Definition:
HitExtractorSTRP.h:33
ctfseeding::HitExtractorSTRP::cleanedOfClusters
void cleanedOfClusters(const TransientTrackingRecHitBuilder &ttrhBuilder, const edm::Event &ev, HitExtractor::Hits &hits, bool matched, unsigned int cleanFrom=0) const
Definition:
HitExtractorSTRP.cc:100
ctfseeding::HitExtractor
Definition:
HitExtractor.h:18
ctfseeding::HitExtractorSTRP::theSide
SeedingLayer::Side theSide
Definition:
HitExtractorSTRP.h:62
edm::Handle
Definition:
AssociativeIterator.h:47
TransientTrackingRecHitBuilder
Definition:
TransientTrackingRecHitBuilder.h:6
SiStripRecHit2D.h
edm::EDGetTokenT
Definition:
EDGetToken.h:32
ctfseeding::SeedingLayer
Definition:
SeedingLayer.h:18
ctfseeding::HitExtractorSTRP::theMatchedHits
edm::EDGetTokenT< SiStripMatchedRecHit2DCollection > theMatchedHits
Definition:
HitExtractorSTRP.h:68
ContainerMask
ctfseeding::HitExtractorSTRP::hasRPhiHits
bool hasRPhiHits
Definition:
HitExtractorSTRP.h:72
ctfseeding::HitExtractorSTRP::theLayerSubDet
const GeomDetEnumerators::SubDetector theLayerSubDet
Definition:
HitExtractorSTRP.h:61
GeomDetEnumerators::SubDetector
SubDetector
Definition:
GeomDetEnumerators.h:11
ctfseeding::HitExtractorSTRP::theStereoHits
edm::EDGetTokenT< SiStripRecHit2DCollection > theStereoHits
Definition:
HitExtractorSTRP.h:70
ctfseeding::HitExtractorSTRP::minAbsZ
double minAbsZ
Definition:
HitExtractorSTRP.h:65
ctfseeding::HitExtractorSTRP::hasStereoHits
bool hasStereoHits
Definition:
HitExtractorSTRP.h:73
ctfseeding::HitExtractorSTRP::theMinRing
int theMinRing
Definition:
HitExtractorSTRP.h:66
edmNew::DetSetVector
Definition:
DetSetNew.h:12
ctfseeding::HitExtractorSTRP::useRPhiHits
void useRPhiHits(const edm::InputTag &m, edm::ConsumesCollector &iC)
Definition:
HitExtractorSTRP.h:34
edm::EventSetup
Definition:
EventSetup.h:44
DetLayer
Definition:
DetLayer.h:24
ctfseeding::HitExtractorSTRP::hasMatchedHits
bool hasMatchedHits
Definition:
HitExtractorSTRP.h:71
ctfseeding::HitExtractorSTRP::setNoProjection
void setNoProjection() const
Definition:
HitExtractorSTRP.h:50
relativeConstraints.ring
tuple ring
Definition:
relativeConstraints.py:67
ctfseeding::HitExtractorSTRP::theSLayer
const SeedingLayer * theSLayer
Definition:
HitExtractorSTRP.h:63
ctfseeding::HitExtractorSTRP::SkipClustersCollection
edm::ContainerMask< edmNew::DetSetVector< SiStripCluster > > SkipClustersCollection
Definition:
HitExtractorSTRP.h:58
ctfseeding::HitExtractorSTRP
Definition:
HitExtractorSTRP.h:22
m
int m
Definition:
DTDataIntegrityTask.cc:31
ctfseeding::HitExtractorSTRP::useRingSelector
bool useRingSelector() const
Definition:
HitExtractorSTRP.h:53
ctfseeding::HitExtractorSTRP::clone
virtual HitExtractorSTRP * clone() const
Definition:
HitExtractorSTRP.h:31
ctfseeding::HitExtractorSTRP::useSimpleRphiHitsCleaner
void useSimpleRphiHitsCleaner(bool use)
Definition:
HitExtractorSTRP.h:37
ctfseeding::HitExtractorSTRP::theRPhiHits
edm::EDGetTokenT< SiStripRecHit2DCollection > theRPhiHits
Definition:
HitExtractorSTRP.h:69
OmniClusterRef
Definition:
OmniClusterRef.h:12
SeedingLayer.h
ctfseeding::HitExtractorSTRP::skipThis
bool skipThis(const TransientTrackingRecHitBuilder &ttrhBuilder, TransientTrackingRecHit::ConstRecHitPointer &ptr, edm::Handle< edm::ContainerMask< edmNew::DetSetVector< SiStripCluster > > > &stripClusterMask, TransientTrackingRecHit::ConstRecHitPointer &replaceMe) const
Definition:
HitExtractorSTRP.cc:70
hit
Definition:
SiStripHitEffFromCalibTree.cc:85
edm::InputTag
Definition:
InputTag.h:17
ctfseeding::HitExtractorSTRP::project
void project(const TransientTrackingRecHitBuilder &ttrhBuilder, TransientTrackingRecHit::ConstRecHitPointer &ptr, const SiStripRecHit2D *hit, TransientTrackingRecHit::ConstRecHitPointer &replaceMe) const
Definition:
HitExtractorSTRP.cc:58
InputTag.h
ctfseeding::HitExtractorSTRP::theIdLayer
int theIdLayer
Definition:
HitExtractorSTRP.h:64
ctfseeding::HitExtractorSTRP::SiStripClusterRef
SiStripRecHit2D::ClusterRef SiStripClusterRef
Definition:
HitExtractorSTRP.h:25
ctfseeding::HitExtractorSTRP::setMinAbsZ
void setMinAbsZ(double minZToSet)
Definition:
HitExtractorSTRP.h:51
ctfseeding::HitExtractorSTRP::~HitExtractorSTRP
virtual ~HitExtractorSTRP()
Definition:
HitExtractorSTRP.h:28
edm::Event
Definition:
Event.h:62
ctfseeding::HitExtractorSTRP::useSkipClusters_
void useSkipClusters_(const edm::InputTag &m, edm::ConsumesCollector &iC) override
Definition:
HitExtractorSTRP.cc:32
ctfseeding::HitExtractorSTRP::getMinMaxRing
std::tuple< int, int > getMinMaxRing() const
Definition:
HitExtractorSTRP.h:54
ctfseeding::SeedingLayer::Side
Side
Definition:
SeedingLayer.h:20
ctfseeding::HitExtractorSTRP::failProjection
bool failProjection
Definition:
HitExtractorSTRP.h:76
ctfseeding::HitExtractorSTRP::hasRingSelector
bool hasRingSelector
Definition:
HitExtractorSTRP.h:74
ctfseeding::HitExtractorSTRP::theSkipClusters
edm::EDGetTokenT< SkipClustersCollection > theSkipClusters
Definition:
HitExtractorSTRP.h:67
SiStripMatchedRecHit2DCollection.h
edm::ConsumesCollector
Definition:
ConsumesCollector.h:32
ctfseeding::HitExtractor::Hits
std::vector< TransientTrackingRecHit::ConstRecHitPointer > Hits
Definition:
HitExtractor.h:20
Generated for CMSSW Reference Manual by
1.8.5