Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2025-01-18 09:10:47

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/Definitions/Algebra.hpp"
0012 #include "Acts/Definitions/TrackParametrization.hpp"
0013 
0014 #include <cstdint>
0015 #include <iosfwd>
0016 
0017 namespace Acts {
0018 
0019 class Surface;
0020 
0021 namespace detail {
0022 
0023 /// Print bound track parameters content to the output stream.
0024 ///
0025 /// @param os The output stream
0026 /// @param surface Bound parameters reference surface
0027 /// @param params Bound parameters vector
0028 /// @param cov Optional bound parameters covariance matrix
0029 void printBoundParameters(std::ostream& os, const Surface& surface,
0030                           const BoundVector& params,
0031                           const BoundSquareMatrix* cov = nullptr);
0032 
0033 /// Print free track parameters content to the output stream.
0034 ///
0035 /// @param os The output stream
0036 /// @param params Free parameters vector
0037 /// @param cov Optional free parameters covariance matrix
0038 void printFreeParameters(std::ostream& os, const FreeVector& params,
0039                          const FreeMatrix* cov = nullptr);
0040 
0041 /// Print bound measurement content to the output stream.
0042 ///
0043 /// @param os The output stream
0044 /// @param size Size of the measurement space
0045 /// @param indices Which parameters are measured, must contain size elements
0046 /// @param params Parameters vector data, must contain size elements
0047 /// @param cov Optional Covariance matrix data, must contain sizexsize elements
0048 void printMeasurement(std::ostream& os, BoundIndices size,
0049                       const std::uint8_t* indices, const double* params,
0050                       const double* cov);
0051 
0052 /// Print free measurement content to the output stream.
0053 ///
0054 /// @param os The output stream
0055 /// @param size Size of the measurement space
0056 /// @param indices Which parameters are measured, must contain size elements
0057 /// @param params Parameters vector data, must contain size elements
0058 /// @param cov Optional Covariance matrix data, must contain sizexsize elements
0059 void printMeasurement(std::ostream& os, FreeIndices size,
0060                       const std::uint8_t* indices, const double* params,
0061                       const double* cov);
0062 
0063 }  // namespace detail
0064 }  // namespace Acts