Back to home page

EIC code displayed by LXR

 
 

    


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

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 "GaudiAlg/GaudiAlgorithm.h"
0008 #include "GaudiAlg/GaudiTool.h"
0009 #include "GaudiAlg/Transformer.h"
0010 #include "GaudiKernel/ToolHandle.h"
0011 
0012 #include "JugBase/DataHandle.h"
0013 #include "JugBase/IGeoSvc.h"
0014 #include "JugTrack/ProtoTrack.hpp"
0015 #include "JugTrack/Track.hpp"
0016 
0017 #include "Math/Vector3D.h"
0018 
0019 #include "edm4eic/TrackerHitCollection.h"
0020 
0021 namespace Jug::Reco {
0022 
0023 /** Hough transform proto track finder.
0024  *
0025  *  \ingroup tracking
0026  */
0027 class HoughTransformProtoTracks : public GaudiAlgorithm {
0028 private:
0029   DataHandle<edm4eic::TrackerHitCollection> m_inputTrackerHits{"inputTrackerHits", Gaudi::DataHandle::Reader, this};
0030   DataHandle<Jug::ProtoTrackContainer> m_outputProtoTracks{"outputProtoTracks", Gaudi::DataHandle::Writer, this};
0031 
0032 public:
0033   HoughTransformProtoTracks(const std::string& name, ISvcLocator* svcLoc) : GaudiAlgorithm(name, svcLoc) {
0034     declareProperty("inputTrackerHits", m_inputTrackerHits, "tracker hits whose indices are used in proto-tracks");
0035     declareProperty("outputProtoTracks", m_outputProtoTracks, "grouped hit indicies");
0036   }
0037 
0038   StatusCode initialize() override {
0039     if (GaudiAlgorithm::initialize().isFailure())
0040       return StatusCode::FAILURE;
0041     return StatusCode::SUCCESS;
0042   }
0043 
0044   StatusCode execute() override {
0045     // input collection
0046     //const edm4eic::TrackerHitCollection* hits = m_inputTrackerHits.get();
0047     // Create output collections
0048     //auto proto_tracks = m_outputProtoTracks.createAndPut();
0049 
0050     return StatusCode::SUCCESS;
0051   }
0052 };
0053 // NOLINTNEXTLINE(cppcoreguidelines-avoid-non-const-global-variables)
0054 DECLARE_COMPONENT(HoughTransformProtoTracks)
0055 
0056 } // namespace Jug::Reco