EICrecon
JANA based reconstruction for the EPIC detector
Loading...
Searching...
No Matches
ActsGeo.h
Go to the documentation of this file.
1// Copyright (C) 2022, 2023, Christopher Dilks
2// Subject to the terms in the LICENSE file found in the top-level directory.
3
4// bind IRT and DD4hep geometries for the RICHes
5#pragma once
6
7#include <DD4hep/Detector.h>
8#include <edm4eic/TrackPoint.h>
9#include <spdlog/logger.h>
10#include <functional>
11#include <gsl/pointers>
12#include <memory>
13#include <string>
14#include <vector>
15
17
18namespace richgeo {
19class ActsGeo {
20public:
21 // constructor and destructor
22 ActsGeo(std::string detName_, gsl::not_null<const dd4hep::Detector*> det_,
23 std::shared_ptr<spdlog::logger> log_);
25
26 // generate list ACTS disc surfaces, for a given radiator
27 std::vector<eicrecon::SurfaceConfig> TrackingPlanes(int radiator, int numPlanes) const;
28
29 // generate a cut to remove any track points that should not be used
30 std::function<bool(edm4eic::TrackPoint)> TrackPointCut(int radiator) const;
31
32protected:
33 std::string m_detName;
34 gsl::not_null<const dd4hep::Detector*> m_det;
35 std::shared_ptr<spdlog::logger> m_log;
36
37private:
38};
39} // namespace richgeo
Definition ActsGeo.h:19
std::vector< eicrecon::SurfaceConfig > TrackingPlanes(int radiator, int numPlanes) const
Definition ActsGeo.cc:27
gsl::not_null< const dd4hep::Detector * > m_det
Definition ActsGeo.h:34
std::function< bool(edm4eic::TrackPoint)> TrackPointCut(int radiator) const
Definition ActsGeo.cc:135
std::string m_detName
Definition ActsGeo.h:33
std::shared_ptr< spdlog::logger > m_log
Definition ActsGeo.h:35
~ActsGeo()
Definition ActsGeo.h:24
Definition ActsGeo.h:18