7#include <DD4hep/Detector.h>
8#include <DDRec/CellIDPositionConverter.h>
9#include <JANA/JApplicationFwd.h>
10#include <JANA/JServiceFwd.h>
11#include <spdlog/logger.h>
12#include <gsl/pointers>
23 virtual gsl::not_null<const dd4hep::Detector*>
detector();
24 virtual gsl::not_null<const dd4hep::rec::CellIDPositionConverter*>
converter();
31 void acquire_services(JServiceLocator*)
override;
33 std::once_flag init_flag;
35 std::unique_ptr<const dd4hep::Detector> m_dd4hepGeo =
nullptr;
36 std::unique_ptr<const dd4hep::rec::CellIDPositionConverter> m_cellid_converter =
nullptr;
37 std::vector<std::string> m_xml_files;
40 static std::string resolveFileName(
const std::string& filename,
char* detector_path_env);
42 std::shared_ptr<spdlog::logger> m_log;
Definition DD4hep_service.h:18
virtual ~DD4hep_service()
Definition DD4hep_service.cc:45
DD4hep_service(JApplication *app)
Definition DD4hep_service.h:20
void Initialize()
Definition DD4hep_service.cc:85
virtual gsl::not_null< const dd4hep::Detector * > detector()
Definition DD4hep_service.cc:61
virtual gsl::not_null< const dd4hep::rec::CellIDPositionConverter * > converter()
Definition DD4hep_service.cc:72