51 run->SetName(options.simulation.engine.c_str());
52 run->SetRunId(options.general.run_id);
53 run->SetStoreTraj(options.simulation.store_trajectory);
54 run->SetMaterials(options.simulation.material_filename.c_str());
55 auto fairField = std::make_unique<R3BFieldConst>();
56 run->SetField(fairField.release());
70 const auto& options =
options_.detectors;
72 const auto& cave_options = options.cave;
73 if (cave_options.enable)
75 auto cave = std::make_unique<R3BCave>(cave_options.name.c_str());
76 cave->SetGeometryFileName(cave_options.geo_file.c_str());
77 run->AddModule(cave.release());
80 const auto& neuland_options = options.neuland;
81 if (neuland_options.enable)
84 const auto& location = neuland_options.location;
85 auto const neulandGeoTrans = TGeoTranslation{ location.x(), location.y(), location.z() };
86 auto neuland = std::make_unique<R3BNeuland>(neuland_options.num_of_dp, neulandGeoTrans);
87 if (neuland_options.enable_auto_geo_build)
89 neuland->EnableAutoGeoBuild();
91 run->AddModule(neuland.release());