Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2024-06-29 07:05:59

0001 // Created by Dmitry Romanov
0002 // Subject to the terms in the LICENSE file found in the top-level directory.
0003 // Original header from Gaudi algorithm
0004 // SPDX-License-Identifier: LGPL-3.0-or-later
0005 // Copyright (C) 2022 Whitney Armstrong, Sylvester Joosten, Wouter Deconinck, Shujie Li
0006 // TODO refactor header when license is clear
0007 
0008 #pragma once
0009 
0010 #include <DD4hep/Detector.h>
0011 #include <DDRec/CellIDPositionConverter.h>
0012 #include <edm4eic/Measurement2DCollection.h>
0013 #include <edm4eic/TrackerHitCollection.h>
0014 #include <spdlog/logger.h>
0015 #include <memory>
0016 
0017 #include "ActsGeometryProvider.h"
0018 
0019 namespace eicrecon {
0020 
0021     class TrackerMeasurementFromHits {
0022     public:
0023         void init(const dd4hep::Detector* detector,
0024                   const dd4hep::rec::CellIDPositionConverter* converter,
0025                   std::shared_ptr<const ActsGeometryProvider> acts_context,
0026                   std::shared_ptr<spdlog::logger> logger);
0027 
0028         std::unique_ptr<edm4eic::Measurement2DCollection> produce(const edm4eic::TrackerHitCollection& trk_hits);
0029 
0030     private:
0031         std::shared_ptr<spdlog::logger> m_log;
0032 
0033         /// Geometry and Cell ID position converter
0034         const dd4hep::Detector* m_dd4hepGeo;
0035         const dd4hep::rec::CellIDPositionConverter* m_converter;
0036 
0037         std::shared_ptr<const ActsGeometryProvider> m_acts_context;
0038 
0039         /// Detector-specific information
0040         int m_detid_b0tracker;
0041     };
0042 
0043 }