18 #include <boost/program_options.hpp>
59 auto contextDecorators = geometry.second;
61 for (
auto cdr : contextDecorators) {
67 auto randomNumberSvc =
68 std::make_shared<FW::RandomNumbers>(randomNumberSvcCfg);
82 typename std::decay_t<decltype(bField)>::element_type;
85 using field_map_type = decltype(fieldMap);
87 std::optional<std::variant<Acts::EigenStepper<field_map_type>,
93 if (vm[
"prop-stepper"].
template as<int>() == 0) {
95 }
else if (vm[
"prop-stepper"].
template as<int>() == 1) {
97 }
else if (vm[
"prop-stepper"].
template as<int>() == 2) {
98 var_stepper = Acts::AtlasStepper<field_map_type>{std::move(fieldMap)};
104 using Stepper = std::decay_t<decltype(stepper)>;
111 pAlgConfig.randomNumberSvc = randomNumberSvc;
114 pAlgConfig, logLevel));
122 std::string outputDir = vm[
"output-dir"].template as<std::string>();
123 auto psCollection = vm[
"prop-step-collection"].as<std::string>();
125 if (vm[
"output-root"].
template as<bool>()) {
128 pstepWriterRootConfig.
collection = psCollection;
131 sequencer.
addWriter(std::make_shared<FW::RootPropagationStepsWriter>(
132 pstepWriterRootConfig));
135 if (vm[
"output-obj"].
template as<bool>()) {
137 using ObjPropagationStepsWriter =
142 pstepWriterObjConfig.collection = psCollection;
143 pstepWriterObjConfig.outputDir = outputDir;
145 std::make_shared<ObjPropagationStepsWriter>(pstepWriterObjConfig));
148 return sequencer.
run();