Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2025-07-02 08:55:46

0001 // SPDX-License-Identifier: LGPL-3.0-or-later
0002 // Copyright (C) 2022 Whitney Armstrong
0003 
0004 #include <cmath>
0005 // Gaudi
0006 #include "Gaudi/Property.h"
0007 #include "Gaudi/Algorithm.h"
0008 #include "GaudiKernel/ToolHandle.h"
0009 
0010 #include <k4FWCore/DataHandle.h>
0011 #include <k4Interface/IGeoSvc.h>
0012 #include "ActsExamples/EventData/ProtoTrack.hpp"
0013 #include "ActsExamples/EventData/Track.hpp"
0014 
0015 #include "Math/Vector3D.h"
0016 
0017 #include "edm4eic/TrackerHitCollection.h"
0018 
0019 namespace Jug::Reco {
0020 
0021 /** Hough transform proto track finder.
0022  *
0023  *  \ingroup tracking
0024  */
0025 class HoughTransformProtoTracks : public Gaudi::Algorithm {
0026 private:
0027   mutable DataHandle<edm4eic::TrackerHitCollection> m_inputTrackerHits{"inputTrackerHits", Gaudi::DataHandle::Reader, this};
0028   mutable DataHandle<ActsExamples::ProtoTrackContainer> m_outputProtoTracks{"outputProtoTracks", Gaudi::DataHandle::Writer, this};
0029 
0030 public:
0031   HoughTransformProtoTracks(const std::string& name, ISvcLocator* svcLoc) : Gaudi::Algorithm(name, svcLoc) {
0032     declareProperty("inputTrackerHits", m_inputTrackerHits, "tracker hits whose indices are used in proto-tracks");
0033     declareProperty("outputProtoTracks", m_outputProtoTracks, "grouped hit indicies");
0034   }
0035 
0036   StatusCode initialize() override {
0037     if (Gaudi::Algorithm::initialize().isFailure())
0038       return StatusCode::FAILURE;
0039     return StatusCode::SUCCESS;
0040   }
0041 
0042   StatusCode execute(const EventContext&) const override {
0043     // input collection
0044     //const edm4eic::TrackerHitCollection* hits = m_inputTrackerHits.get();
0045     // Create output collections
0046     //auto proto_tracks = m_outputProtoTracks.createAndPut();
0047 
0048     return StatusCode::SUCCESS;
0049   }
0050 };
0051 // NOLINTNEXTLINE(cppcoreguidelines-avoid-non-const-global-variables)
0052 DECLARE_COMPONENT(HoughTransformProtoTracks)
0053 
0054 } // namespace Jug::Reco