19 if (iName ==
"oppositeToMomentum")
21 if (iName ==
"alongMomentum")
23 if (iName ==
"anyDirection")
30 : mfToken_(setWhatProduced(this, p.getParameter<std::
string>(
"ComponentName"))
33 mass_(p.getParameter<double>(
"Mass")),
34 maxDPhi_(p.getParameter<double>(
"MaxDPhi")),
35 ptMin_(p.getParameter<double>(
"ptMin")),
36 dir_(stringToDirection(p.getParameter<std::
string>(
"PropagationDirection"))),
37 useRK_(p.getParameter<bool>(
"useRungeKutta")),
38 useOldAnalPropLogic_(p.getParameter<bool>(
"useOldAnalPropLogic")) {}
45 return std::make_unique<PropagatorWithMaterial>(
54 desc.
add<
double>(
"Mass");
55 desc.
add<
double>(
"MaxDPhi");
56 desc.
add<
bool>(
"useRungeKutta");
57 desc.
add<
bool>(
"useOldAnalPropLogic",
true);
58 desc.
add<
double>(
"ptMin", -1.0);
static void fillDescriptions(edm::ConfigurationDescriptions &descriptions)
const bool useOldAnalPropLogic_
std::unique_ptr< Propagator > produce(const TrackingComponentsRecord &)
const PropagationDirection dir_
ptMin_(conf.getParameter< double >("ptMin"))
void addDefault(ParameterSetDescription const &psetDescription)
ProductT const & get(ESGetToken< ProductT, DepRecordT > const &iToken) const
ParameterDescriptionBase * add(U const &iLabel, T const &value)
PropagatorWithMaterialESProducer(const edm::ParameterSet &p)
const edm::ESGetToken< MagneticField, IdealMagneticFieldRecord > mfToken_