RecoTracker
TkTrackingRegions
plugins
GlobalTrackingRegionProducer.h
Go to the documentation of this file.
1
#ifndef RecoTracker_TkTrackingRegions_GlobalTrackingRegionProducer_H
2
#define RecoTracker_TkTrackingRegions_GlobalTrackingRegionProducer_H
3
4
#include "
RecoTracker/TkTrackingRegions/interface/TrackingRegionProducer.h
"
5
#include "
RecoTracker/TkTrackingRegions/interface/GlobalTrackingRegion.h
"
6
#include "
FWCore/ParameterSet/interface/ParameterSet.h
"
7
#include "
FWCore/ParameterSet/interface/ParameterSetDescription.h
"
8
#include "
FWCore/ParameterSet/interface/ConfigurationDescriptions.h
"
9
#include "
FWCore/Framework/interface/ConsumesCollector.h
"
10
11
class
GlobalTrackingRegionProducer
:
public
TrackingRegionProducer
{
12
public
:
13
GlobalTrackingRegionProducer
(
const
edm::ParameterSet
&
cfg
,
edm::ConsumesCollector
&& iC) {
14
edm::ParameterSet
regionPSet =
cfg
.getParameter<
edm::ParameterSet
>(
"RegionPSet"
);
15
16
thePtMin
= regionPSet.
getParameter
<
double
>(
"ptMin"
);
17
theOriginRadius
= regionPSet.
getParameter
<
double
>(
"originRadius"
);
18
theOriginHalfLength
= regionPSet.
getParameter
<
double
>(
"originHalfLength"
);
19
double
xPos = regionPSet.
getParameter
<
double
>(
"originXPos"
);
20
double
yPos = regionPSet.
getParameter
<
double
>(
"originYPos"
);
21
double
zPos = regionPSet.
getParameter
<
double
>(
"originZPos"
);
22
thePrecise
= regionPSet.
getParameter
<
bool
>(
"precise"
);
23
theOrigin
=
GlobalPoint
(xPos, yPos, zPos);
24
}
25
26
~GlobalTrackingRegionProducer
()
override
{}
27
28
static
void
fillDescriptions
(
edm::ConfigurationDescriptions
& descriptions) {
29
edm::ParameterSetDescription
desc
;
30
31
desc
.add<
bool
>(
"precise"
,
true
);
32
desc
.add<
bool
>(
"useMultipleScattering"
,
false
);
33
desc
.add<
double
>(
"originHalfLength"
, 21.2);
34
desc
.add<
double
>(
"originRadius"
, 0.2);
35
desc
.add<
double
>(
"originXPos"
, 0.0);
36
desc
.add<
double
>(
"originYPos"
, 0.0);
37
desc
.add<
double
>(
"originZPos"
, 0.0);
38
desc
.add<
double
>(
"ptMin"
, 0.9);
39
40
// Only for backwards-compatibility
41
edm::ParameterSetDescription
descRegion;
42
descRegion.
add
<
edm::ParameterSetDescription
>(
"RegionPSet"
,
desc
);
43
44
descriptions.
add
(
"globalTrackingRegion"
, descRegion);
45
}
46
47
std::vector<std::unique_ptr<TrackingRegion> >
regions
(
const
edm::Event
&,
const
edm::EventSetup
&)
const override
{
48
std::vector<std::unique_ptr<TrackingRegion> >
result
;
49
result
.push_back(
50
std::make_unique<GlobalTrackingRegion>(
thePtMin
,
theOrigin
,
theOriginRadius
,
theOriginHalfLength
,
thePrecise
));
51
return
result
;
52
}
53
54
private
:
55
double
thePtMin
;
56
GlobalPoint
theOrigin
;
57
double
theOriginRadius
;
58
double
theOriginHalfLength
;
59
bool
thePrecise
;
60
};
61
62
#endif
ConfigurationDescriptions.h
GlobalTrackingRegion.h
edm::ParameterSetDescription::add
ParameterDescriptionBase * add(U const &iLabel, T const &value)
Definition:
ParameterSetDescription.h:95
edm::ParameterSetDescription
Definition:
ParameterSetDescription.h:52
GlobalTrackingRegionProducer::~GlobalTrackingRegionProducer
~GlobalTrackingRegionProducer() override
Definition:
GlobalTrackingRegionProducer.h:26
GlobalTrackingRegionProducer::fillDescriptions
static void fillDescriptions(edm::ConfigurationDescriptions &descriptions)
Definition:
GlobalTrackingRegionProducer.h:28
TrackingRegionProducer.h
GlobalTrackingRegionProducer::thePrecise
bool thePrecise
Definition:
GlobalTrackingRegionProducer.h:59
GlobalTrackingRegionProducer::thePtMin
double thePtMin
Definition:
GlobalTrackingRegionProducer.h:55
edm::ConfigurationDescriptions::add
void add(std::string const &label, ParameterSetDescription const &psetDescription)
Definition:
ConfigurationDescriptions.cc:57
GlobalPoint
Global3DPoint GlobalPoint
Definition:
GlobalPoint.h:10
Point3DBase< float, GlobalTag >
ParameterSetDescription.h
edm::ConfigurationDescriptions
Definition:
ConfigurationDescriptions.h:28
edm::ParameterSet
Definition:
ParameterSet.h:47
edm::EventSetup
Definition:
EventSetup.h:58
looper.cfg
cfg
Definition:
looper.py:297
GlobalTrackingRegionProducer::regions
std::vector< std::unique_ptr< TrackingRegion > > regions(const edm::Event &, const edm::EventSetup &) const override
Definition:
GlobalTrackingRegionProducer.h:47
GlobalTrackingRegionProducer::theOrigin
GlobalPoint theOrigin
Definition:
GlobalTrackingRegionProducer.h:56
submitPVResolutionJobs.desc
string desc
Definition:
submitPVResolutionJobs.py:251
GlobalTrackingRegionProducer::GlobalTrackingRegionProducer
GlobalTrackingRegionProducer(const edm::ParameterSet &cfg, edm::ConsumesCollector &&iC)
Definition:
GlobalTrackingRegionProducer.h:13
GlobalTrackingRegionProducer::theOriginRadius
double theOriginRadius
Definition:
GlobalTrackingRegionProducer.h:57
TrackingRegionProducer
Definition:
TrackingRegionProducer.h:12
edm::ParameterSet::getParameter
T getParameter(std::string const &) const
Definition:
ParameterSet.h:303
GlobalTrackingRegionProducer::theOriginHalfLength
double theOriginHalfLength
Definition:
GlobalTrackingRegionProducer.h:58
GlobalTrackingRegionProducer
Definition:
GlobalTrackingRegionProducer.h:11
mps_fire.result
result
Definition:
mps_fire.py:311
ConsumesCollector.h
ParameterSet.h
edm::Event
Definition:
Event.h:73
edm::ConsumesCollector
Definition:
ConsumesCollector.h:45
Generated for CMSSW Reference Manual by
1.8.16