26 #include "Math/GenVector/VectorUtil.h"
27 #include "Math/GenVector/PxPyPzE4D.h"
53 edm::LogVerbatim(
"HITRegionalPixelSeedGenerator") <<
"Enter the HITRegionalPixelSeedGenerator";
70 std::vector<std::unique_ptr<TrackingRegion> >
result;
82 reco::VertexCollection::const_iterator ci = vertCollection.begin();
84 if (!vertCollection.empty()) {
94 reco::TrackCollection::const_iterator itr = tracks->begin();
95 for (; itr != tracks->end(); itr++) {
96 GlobalVector ptrVec((itr)->px(), (itr)->py(), (itr)->pz());
97 globalVector = ptrVec;
99 result.push_back(std::make_unique<RectangularEtaPhiTrackingRegion>(globalVector,
114 std::vector<edm::Ref<reco::IsolatedPixelTrackCandidateCollection> > isoPixTrackRefs;
119 reco::VertexCollection::const_iterator ci = vertCollection.begin();
121 if (!vertCollection.empty()) {
128 if (isoPixTrackRefs.empty())
131 for (uint32_t
p = 0;
p < isoPixTrackRefs.size();
p++) {
133 (isoPixTrackRefs[
p]->
track())->py(),
134 (isoPixTrackRefs[
p]->
track())->pz());
135 globalVector = ptrVec;
137 result.push_back(std::make_unique<RectangularEtaPhiTrackingRegion>(globalVector,
152 reco::VertexCollection::const_iterator ci = vertCollection.begin();
153 if (!vertCollection.empty()) {
163 for (l1extra::L1JetParticleCollection::const_iterator iJet = jets->begin(); iJet != jets->end(); iJet++) {
164 GlobalVector jetVector(iJet->p4().x(), iJet->p4().y(), iJet->p4().z());
167 result.push_back(std::make_unique<RectangularEtaPhiTrackingRegion>(
178 if (!vertCollection.empty()) {
185 result.push_back(std::make_unique<RectangularEtaPhiTrackingRegion>(
Log< level::Info, true > LogVerbatim
edm::EDGetTokenT< reco::VertexCollection > token_vertex
edm::EDGetTokenT< l1extra::L1JetParticleCollection > token_l1jet
const edm::ParameterSet m_regionPSet
Sin< T >::type sin(const T &t)
Global3DPoint GlobalPoint
std::vector< Track > TrackCollection
collection of Tracks
edm::EDGetTokenT< trigger::TriggerFilterObjectWithRefs > token_isoTrack
std::vector< Vertex > VertexCollection
collection of Vertex objects
auto const & tracks
cannot be loose
Exp< T >::type exp(const T &t)
const float deltaL1JetPhi
const float deltaL1JetEta
const float deltaTrackPhi
bool getData(T &iHolder) const
Handle< PROD > getHandle(EDGetTokenT< PROD > token) const
HITRegionalPixelSeedGenerator(const edm::ParameterSet &conf, edm::ConsumesCollector &&iC)
Cos< T >::type cos(const T &t)
std::vector< std::unique_ptr< TrackingRegion > > regions(const edm::Event &e, const edm::EventSetup &es) const override
bool get(ProductID const &oid, Handle< PROD > &result) const
~HITRegionalPixelSeedGenerator() override=default
const edm::ESGetToken< MultipleScatteringParametrisationMaker, TrackerMultipleScatteringRecord > token_msmaker
T getParameter(std::string const &) const
edm::EDGetTokenT< reco::TrackCollection > token_trks
const float deltaTrackEta
#define DEFINE_EDM_PLUGIN(factory, type, name)
const edm::ESGetToken< MagneticField, IdealMagneticFieldRecord > token_bfield