Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2025-10-22 07:52:44

0001 // This file is part of the ACTS project.
0002 //
0003 // Copyright (C) 2016 CERN for the benefit of the ACTS project
0004 //
0005 // This Source Code Form is subject to the terms of the Mozilla Public
0006 // License, v. 2.0. If a copy of the MPL was not distributed with this
0007 // file, You can obtain one at https://mozilla.org/MPL/2.0/.
0008 
0009 #include "ActsExamples/EventData/Cluster.hpp"
0010 #include "ActsExamples/Framework/BufferedReader.hpp"
0011 #include "ActsExamples/Io/Csv/CsvGnnGraphReader.hpp"
0012 #include "ActsExamples/Io/Csv/CsvMeasurementReader.hpp"
0013 #include "ActsExamples/Io/Csv/CsvMuonSegmentReader.hpp"
0014 #include "ActsExamples/Io/Csv/CsvMuonSpacePointReader.hpp"
0015 #include "ActsExamples/Io/Csv/CsvParticleReader.hpp"
0016 #include "ActsExamples/Io/Csv/CsvSimHitReader.hpp"
0017 #include "ActsExamples/Io/Csv/CsvSpacePointReader.hpp"
0018 #include "ActsExamples/Io/Csv/CsvTrackParameterReader.hpp"
0019 #include "ActsExamples/TrackFinding/ITrackParamsLookupReader.hpp"
0020 #include "ActsPython/Utilities/Helpers.hpp"
0021 #include "ActsPython/Utilities/Macros.hpp"
0022 
0023 #include <pybind11/pybind11.h>
0024 #include <pybind11/stl.h>
0025 
0026 namespace py = pybind11;
0027 using namespace pybind11::literals;
0028 
0029 using namespace ActsExamples;
0030 
0031 namespace ActsPython {
0032 
0033 void addInput(Context& ctx) {
0034   auto mex = ctx.get("examples");
0035 
0036   // Buffered reader
0037   ACTS_PYTHON_DECLARE_READER(BufferedReader, mex, "BufferedReader",
0038                              upstreamReader, selectionSeed, bufferSize);
0039 
0040   ACTS_PYTHON_DECLARE_READER(CsvParticleReader, mex, "CsvParticleReader",
0041                              inputDir, inputStem, outputParticles);
0042 
0043   ACTS_PYTHON_DECLARE_READER(CsvMeasurementReader, mex, "CsvMeasurementReader",
0044                              inputDir, outputMeasurements,
0045                              outputMeasurementSimHitsMap, outputClusters,
0046                              outputMeasurementParticlesMap, inputSimHits);
0047 
0048   ACTS_PYTHON_DECLARE_READER(CsvSimHitReader, mex, "CsvSimHitReader", inputDir,
0049                              inputStem, outputSimHits);
0050   ACTS_PYTHON_DECLARE_READER(CsvMuonSegmentReader, mex, "CsvMuonSegmentReader",
0051                              inputDir, inputStem, outputSegments);
0052   ACTS_PYTHON_DECLARE_READER(CsvMuonSpacePointReader, mex,
0053                              "CsvMuonSpacePointReader", inputDir, inputStem,
0054                              outputSpacePoints);
0055 
0056   ACTS_PYTHON_DECLARE_READER(CsvSpacePointReader, mex, "CsvSpacePointReader",
0057                              inputDir, inputStem, inputCollection,
0058                              outputSpacePoints, extendCollection);
0059 
0060   ACTS_PYTHON_DECLARE_READER(CsvTrackParameterReader, mex,
0061                              "CsvTrackParameterReader", inputDir, inputStem,
0062                              outputTrackParameters, beamspot);
0063 
0064   ACTS_PYTHON_DECLARE_READER(CsvGnnGraphReader, mex, "CsvGnnGraphReader",
0065                              inputDir, inputStem, outputGraph);
0066 
0067   py::class_<ITrackParamsLookupReader,
0068              std::shared_ptr<ITrackParamsLookupReader>>(
0069       mex, "ITrackParamsLookupReader");
0070 }
0071 
0072 }  // namespace ActsPython