22 algoVerbosity_(conf.getParameter<
int>(
"algo_verbosity")),
23 minPt_(conf.getParameter<double>(
"minPt")),
24 minAbsEta_(conf.getParameter<double>(
"minAbsEta")),
25 maxAbsEta_(conf.getParameter<double>(
"maxAbsEta")),
26 endcapScalings_(conf.getParameter<
std::
vector<double>>(
"endcapScalings")),
27 quality_(conf.getParameter<
int>(
"quality")),
28 qualityIsMask_(conf.getParameter<
bool>(
"qualityIsMask")),
29 applyQuality_(conf.getParameter<
bool>(
"applyQuality")) {}
33 std::vector<TICLSeedingRegion> &
result) {
34 auto l1TrkEms =
ev.getHandle(l1TkEmsToken_);
37 for (
size_t indx = 0; indx < (*l1TrkEms).size(); indx++) {
38 const auto &l1TrkEm = (*l1TrkEms)[indx];
39 double offlinePt = this->tkEmOfflineEt(l1TrkEm.pt());
40 bool passQuality(
false);
44 passQuality = (l1TrkEm.hwQual() & quality_);
46 passQuality = (l1TrkEm.hwQual() == quality_);
52 if ((offlinePt < minPt_) || (
std::abs(l1TrkEm.eta()) < minAbsEta_) || (
std::abs(l1TrkEm.eta()) > maxAbsEta_) ||
57 int iSide =
int(l1TrkEm.eta() > 0);
58 result.emplace_back(
GlobalPoint(l1TrkEm.p4().X(), l1TrkEm.p4().Y(), l1TrkEm.p4().Z()),
66 return a.directionAtOrigin.perp2() >
b.directionAtOrigin.perp2();
71 return (endcapScalings_.at(0) +
et * endcapScalings_.at(1) +
et *
et * endcapScalings_.at(2));
76 desc.add<
double>(
"minPt", 10);
77 desc.add<
double>(
"minAbsEta", 1.479);
78 desc.add<
double>(
"maxAbsEta", 4.0);
79 desc.add<std::vector<double>>(
"endcapScalings", {3.17445, 1.13219, 0.0});
80 desc.add<
int>(
"quality", 5);
81 desc.add<
bool>(
"qualityIsMask",
false);
82 desc.add<
bool>(
"applyQuality",
false);
Global3DPoint GlobalPoint
static void fillPSetDescription(edm::ParameterSetDescription &desc)
Abs< T >::type abs(const T &t)
SeedingRegionByL1(const edm::ParameterSet &conf, edm::ConsumesCollector &sumes)
void makeRegions(const edm::Event &ev, const edm::EventSetup &es, std::vector< TICLSeedingRegion > &result) override
double tkEmOfflineEt(double et) const
static void fillPSetDescription(edm::ParameterSetDescription &desc)
Global3DVector GlobalVector