Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2026-05-27 07:23:57

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 #if DETRAY_ALGEBRA_ARRAY
0012 #include "algebra/array.hpp"
0013 #elif DETRAY_ALGEBRA_EIGEN
0014 #include "algebra/eigen.hpp"
0015 #elif DETRAY_ALGEBRA_FASTOR
0016 #include "algebra/fastor.hpp"
0017 #elif DETRAY_ALGEBRA_SMATRIX
0018 #include "algebra/smatrix.hpp"
0019 #elif DETRAY_ALGEBRA_VC_AOS || DETRAY_ALGEBRA_VC_SOA
0020 
0021 #if DETRAY_ALGEBRA_VC_AOS
0022 #include "algebra/vc_aos.hpp"
0023 #endif
0024 
0025 #if DETRAY_ALGEBRA_VC_SOA
0026 #include "algebra/vc_soa.hpp"
0027 #endif
0028 
0029 #else
0030 #error "No algebra plugin selected! Please link to one of the algebra plugins."
0031 #endif
0032 
0033 // Algebra-plugins include(s)
0034 #include "detray/algebra/common/boolean.hpp"
0035 #include "detray/algebra/common/math.hpp"
0036 #include "detray/algebra/utils/approximately_equal.hpp"
0037 #include "detray/algebra/utils/casts.hpp"
0038 #include "detray/algebra/utils/print.hpp"
0039 
0040 namespace detray {
0041 
0042 template <typename A>
0043 using dvalue = get_value_t<A>;
0044 
0045 template <typename A>
0046 using dbool = get_boolean_t<A>;
0047 
0048 template <typename A, typename T>
0049 using dsimd = get_simd_t<A, T>;
0050 
0051 template <typename A>
0052 using dindex_type = get_index_t<A>;
0053 
0054 template <typename A>
0055 using dscalar = get_scalar_t<A>;
0056 
0057 template <typename A>
0058 using dpoint2D = get_point2D_t<A>;
0059 
0060 template <typename A>
0061 using dpoint3D = get_point3D_t<A>;
0062 
0063 template <typename A>
0064 using dvector2D = get_vector2D_t<A>;
0065 
0066 template <typename A>
0067 using dvector3D = get_vector3D_t<A>;
0068 
0069 template <typename A>
0070 using dtransform3D = get_transform3D_t<A>;
0071 
0072 template <typename A, std::size_t R, std::size_t C>
0073 using dmatrix = get_matrix_t<A, R, C>;
0074 
0075 }  // namespace detray