70 }
else if (
meth ==
"dist") {
72 }
else if (
meth ==
"momdr") {
74 }
else if (
meth ==
"posdr") {
77 throw cms::Exception(
"BadParameterName") <<
meth <<
" TrackAssociatorByPostionImpl::Method name not recognized.";
88 thePutToken{produces<reco::TrackToTrackingParticleAssociator>()},
89 theQminCut{iConfig.getParameter<
double>(
"QminCut")},
90 theQCut{iConfig.getParameter<
double>(
"QCut")},
91 thePositionMinimumDistance{iConfig.getParameter<
double>(
"positionMinimumDistance")},
93 theMinIfNoMatch{iConfig.getParameter<
bool>(
"MinIfNoMatch")},
94 theConsiderAllSimHits{iConfig.getParameter<
bool>(
"ConsiderAllSimHits")} {}
105 std::make_unique<TrackAssociatorByPositionImpl>(
iEvent.productGetter(),
static TrackAssociatorByPositionImpl::Method parseMethodName(const std::string &meth)
TrackAssociatorByHitsImpl::SimHitTPAssociationList SimHitTPAssociationList
T getParameter(std::string const &) const
edm::ESGetToken< Propagator, TrackingComponentsRecord > thePropagatorToken
T const & getData(const ESGetToken< T, R > &iToken) const noexcept(false)
bool theConsiderAllSimHits
edm::EDPutTokenT< reco::TrackToTrackingParticleAssociator > thePutToken
edm::EDGetTokenT< SimHitTPAssociationList > theSimHitTpMapToken
edm::ESGetToken< GlobalTrackingGeometry, GlobalTrackingGeometryRecord > theGeometryToken
double thePositionMinimumDistance
void addDefault(ParameterSetDescription const &psetDescription)
void produce(edm::StreamID, edm::Event &, const edm::EventSetup &) const override
static void fillDescriptions(edm::ConfigurationDescriptions &descriptions)
TrackAssociatorByPositionImpl::Method theMethod
#define DEFINE_FWK_MODULE(type)
~TrackAssociatorByPositionProducer() override=default
TrackAssociatorByPositionProducer(const edm::ParameterSet &)
std::vector< SimHitTPPair > SimHitTPAssociationList