File indexing completed on 2026-08-26 08:38:38
0001
0002
0003
0004
0005
0006
0007
0008
0009 #pragma once
0010
0011 #include "Acts/Geometry/GeometryModuleHelper.hpp"
0012
0013 namespace dd4hep {
0014 class Detector;
0015 }
0016
0017 namespace Acts {
0018 class TrackingGeometry;
0019 }
0020
0021 namespace ActsPlugins::DD4hep::detail {
0022 using BuildFunction = std::unique_ptr<Acts::TrackingGeometry> (*)(
0023 const dd4hep::Detector&, const Acts::Logger&);
0024 const ActsGeometryModuleV1* getGeometryModule(const char* module_abi_tag,
0025 BuildFunction buildFunc);
0026 }
0027
0028 #ifdef ACTS_GEOMETRY_MODULE_ABI_TAG
0029 #define ACTS_DEFINE_DD4HEP_GEOMETRY_MODULE(build_function) \
0030 ACTS_IMPL_GEOMETRY_MODULE_ENTRY( \
0031 ActsPlugins::DD4hep::detail::getGeometryModule( \
0032 ACTS_GEOMETRY_MODULE_ABI_TAG, (build_function)))
0033 #else
0034 #define ACTS_DEFINE_DD4HEP_GEOMETRY_MODULE(build_function) \
0035 static_assert(false, \
0036 "ACTS_GEOMETRY_MODULE_ABI_TAG must be provided via " \
0037 "CMake (use acts_add_dd4hep_geometry_module).")
0038 #endif