Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2026-09-16 08:19:31

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 #pragma once
0010 
0011 #include "Acts/Utilities/Result.hpp"
0012 #include "Acts/Vertexing/Vertex.hpp"
0013 #include "Acts/Vertexing/VertexingOptions.hpp"
0014 
0015 namespace Acts {
0016 
0017 // Dummy track linearizer
0018 class DummyTrackLinearizer;
0019 
0020 /// @class DummyVertexFitter
0021 /// @brief Dummy vertex fitter class, only to be used
0022 /// for ensuring interfaces where a vertex fitter type is
0023 /// required but no fitter is actually needed
0024 template <typename linearizer_t = DummyTrackLinearizer>
0025 class DummyVertexFitter {
0026  public:
0027   /// Type alias for track linearizer used in vertex fitting
0028   using Linearizer_t = linearizer_t;
0029   /// Type alias for propagator (void for dummy implementation)
0030   using Propagator_t = void;
0031 
0032   // Do not allow an instance creation
0033   DummyVertexFitter() = delete;
0034 
0035   /// @brief Dummy fit method
0036   /// @return Error result as this is a dummy implementation that should not be used
0037   Result<Vertex> fit(const std::vector<InputTrack>&, const linearizer_t&,
0038                      const VertexingOptions&) const;
0039 };
0040 
0041 }  // namespace Acts