File indexing completed on 2025-08-05 08:10:06
0001
0002
0003
0004
0005
0006
0007
0008
0009 #include "Acts/Plugins/Python/Utilities.hpp"
0010 #include "Acts/Utilities/TypeTraits.hpp"
0011 #include "ActsExamples/EventData/Index.hpp"
0012 #include "ActsExamples/Vertexing/AdaptiveMultiVertexFinderAlgorithm.hpp"
0013 #include "ActsExamples/Vertexing/IterativeVertexFinderAlgorithm.hpp"
0014 #include "ActsExamples/Vertexing/SingleSeedVertexFinderAlgorithm.hpp"
0015 #include "ActsExamples/Vertexing/VertexFitterAlgorithm.hpp"
0016
0017 #include <memory>
0018
0019 #include <pybind11/pybind11.h>
0020 #include <pybind11/stl.h>
0021
0022 namespace py = pybind11;
0023
0024 using namespace ActsExamples;
0025 using namespace Acts;
0026
0027 namespace Acts::Python {
0028
0029 void addVertexing(Context& ctx) {
0030 using Seeder = ActsExamples::AdaptiveMultiVertexFinderAlgorithm::SeedFinder;
0031 auto mex = ctx.get("examples");
0032 auto& m = ctx.get("main");
0033
0034 py::enum_<Seeder>(m, "VertexSeedFinder")
0035 .value("GaussianSeeder", Seeder::GaussianSeeder)
0036 .value("AdaptiveGridSeeder", Seeder::AdaptiveGridSeeder);
0037
0038 ACTS_PYTHON_DECLARE_ALGORITHM(
0039 ActsExamples::AdaptiveMultiVertexFinderAlgorithm, mex,
0040 "AdaptiveMultiVertexFinderAlgorithm", inputTrackParameters,
0041 outputProtoVertices, outputVertices, seedFinder, useTime, bField);
0042
0043 ACTS_PYTHON_DECLARE_ALGORITHM(ActsExamples::IterativeVertexFinderAlgorithm,
0044 mex, "IterativeVertexFinderAlgorithm",
0045 inputTrackParameters, outputProtoVertices,
0046 outputVertices, bField);
0047
0048 ACTS_PYTHON_DECLARE_ALGORITHM(ActsExamples::VertexFitterAlgorithm, mex,
0049 "VertexFitterAlgorithm", inputTrackParameters,
0050 inputProtoVertices, outputVertices, bField,
0051 doConstrainedFit, constraintPos, constraintCov);
0052
0053 ACTS_PYTHON_DECLARE_ALGORITHM(ActsExamples::SingleSeedVertexFinderAlgorithm,
0054 mex, "SingleSeedVertexFinderAlgorithm",
0055 inputSpacepoints, outputVertices);
0056 }
0057
0058 }