57 if (propDir ==
"oppositeToMomentum")
59 else if (propDir ==
"alongMomentum")
61 else if (propDir ==
"anyDirection")
65 <<
"Wrong fit direction (" << propDir <<
")chosen in BeamHaloPropagatorESProducer";
70 auto cc = setWhatProduced(
this, myname);
71 magToken_ = cc.consumes();
72 endcapToken_ = cc.consumes(
edm::ESInputTag(
""s, theEndCapTrackerPropagatorName));
73 crossToken_ = cc.consumes(
edm::ESInputTag(
""s, theCrossingTrackerPropagatorName));
79 LogDebug(
"BeamHaloPropagator") <<
"Creating a BeamHaloPropagator: " << myname
80 <<
"\n with EndCap Propagator: " << theEndCapTrackerPropagatorName
81 <<
"\n with Crossing Propagator: " << theCrossingTrackerPropagatorName;
83 return std::make_unique<BeamHaloPropagator>(
84 iRecord.
get(endcapToken_), iRecord.
get(crossToken_), &iRecord.
get(magToken_), thePropagationDirection);
~BeamHaloPropagatorESProducer() override
Destructor.
T getParameter(std::string const &) const
PropagationDirection thePropagationDirection
std::string theEndCapTrackerPropagatorName
std::string theCrossingTrackerPropagatorName
ParameterSet const & parameterSet(StableProvenance const &provenance, ProcessHistory const &history)
BeamHaloPropagatorESProducer(const edm::ParameterSet &)
Constructor.
std::unique_ptr< Propagator > produce(const TrackingComponentsRecord &)
edm::ESGetToken< Propagator, TrackingComponentsRecord > crossToken_
edm::ESGetToken< MagneticField, IdealMagneticFieldRecord > magToken_
#define DEFINE_FWK_EVENTSETUP_MODULE(type)
ProductT const & get(ESGetToken< ProductT, DepRecordT > const &iToken) const
edm::ESGetToken< Propagator, TrackingComponentsRecord > endcapToken_