EICrecon
JANA based reconstruction for the EPIC detector
Loading...
Searching...
No Matches
ACTSGeo_service.h
Go to the documentation of this file.
1// SPDX-License-Identifier: LGPL-3.0-or-later
2// Copyright (C) 2022 Whitney Armstrong, Wouter Deconinck, Dmitry Romanov
3
4#pragma once
5
6#include <DD4hep/Detector.h>
7#include <JANA/JApplicationFwd.h>
8#include <JANA/JServiceFwd.h>
9#include <spdlog/logger.h>
10#include <memory>
11#include <mutex>
12
14
15class ACTSGeo_service : public JService {
16public:
17 ACTSGeo_service(JApplication* app) : m_app(app) {}
19
20 virtual std::shared_ptr<const ActsGeometryProvider> actsGeoProvider();
21
22protected:
23private:
24 ACTSGeo_service() = default;
25 void acquire_services(JServiceLocator*) override;
26
27 std::once_flag m_init_flag;
28 JApplication* m_app = nullptr;
29 const dd4hep::Detector* m_dd4hepGeo = nullptr;
30 std::shared_ptr<ActsGeometryProvider> m_acts_provider;
31
32 // General acts log
33 std::shared_ptr<spdlog::logger> m_log;
34};
Definition ACTSGeo_service.h:15
virtual ~ACTSGeo_service()
ACTSGeo_service(JApplication *app)
Definition ACTSGeo_service.h:17
virtual std::shared_ptr< const ActsGeometryProvider > actsGeoProvider()
Definition ACTSGeo_service.cc:32
Definition ActsGeometryProvider.h:39