Reference SIMD Acceleration Classes, Structs & Unions Classes, Structs & Unions B class bitmask<bits> Holds an unsigned integer wide enough to store bits bits. class bit<T> Boolean value stored as a mask of type T (all-ones for true, all-zeros for false). C class common_type_helper<T1, T2, N1, N2> Helper for std::common_type deduction between vectors and scalars. class common_type_helper<T1, T2, N, N> Same-width vectors share a vec<common, N> common type. class common_type_helper<T1, vec<T2, N2>, N1, N2> Scalar vs. vector of differing widths form a nested vec<vec<...>> . class common_type_helper<vec<T1, N2>, T2, N1, N2> Vector vs. scalar of differing widths form a nested vec<vec<...>> . class ::std:: common_type<kfr::complex<T1>, kfr::complex<T2>> common_type of two kfr::complex values. class ::std:: common_type<kfr::complex<T1>, kfr::vec<T2, N>> common_type of a kfr::complex and a kfr::vec. class ::std:: common_type<kfr::complex<T1>, T2> common_type of a kfr::complex and a scalar. class ::std:: common_type<kfr::vec<T1, N1>, kfr::vec<T2, N2>> class ::std:: common_type<kfr::vec<T1, N>, kfr::complex<T2>> common_type of a kfr::vec and a kfr::complex. class ::std:: common_type<kfr::vec<T1, N>, T2> class ::std:: common_type<T1, kfr::complex<T2>> common_type of a scalar and a kfr::complex. class ::std:: common_type<T1, kfr::vec<T2, N>> class compound_type_traits<kfr::vec_shape<T, N>> compound_type_traits specialization for vec_shape<T, N> . class compound_type_traits<kfr::vec<T, N>> compound_type_traits specialization for vec<T, N> . class compound_type_traits<std::complex<T>> Traits specialization for std::complex<T> enabling KFR's compound-type machinery. struct cones_t Tag type selecting all-ones initialization. class constants<T> Constants for the SIMD type T , inheriting from the scalar constants of its element type. class construct_common_type<CT, Tpl> Helper that maps a common-type result onto a single-argument template. class construct_common_type<CT, Tpl> struct czeros_t Tag type selecting zero-initialization. F struct f16 16-bit half-precision floating-point value stored as raw bits. struct from_lambda Tag type used to select the vec constructor that initializes elements from an index-based generator function. I struct i24 Signed 24-bit integer stored in three bytes (little-endian). class initialvalue<T> Used to determine the initial value for reduce functions. K N P class pkd_vec<T, N> Packed storage for a vector with no alignment padding. class platform<c> Trait structure describing the SIMD capabilities of a CPU instruction set. struct platform<cpu_t::avx> Platform traits for AVX. Doubles the native float vector size and alignment to 32 bytes and enables fast unaligned access. struct platform<cpu_t::avx2> Platform traits for AVX2. Extends AVX with 256-bit integer vectors. struct platform<cpu_t::avx512> Platform traits for AVX-512. Provides 512-bit vectors, 64-byte alignment, mask register support and an increased register count. struct platform<cpu_t::common> Platform traits for the common (baseline) x86 instruction set. struct platform<cpu_t::sse2> Platform traits for SSE2. Inherits the common baseline and reports the SSE2 register count. struct platform<cpu_t::sse3> Platform traits for SSE3. Equivalent to SSE2. struct platform<cpu_t::sse41> Platform traits for SSE4.1. Equivalent to SSSE3. struct platform<cpu_t::sse42> Platform traits for SSE4.2. Equivalent to SSE4.1. struct platform<cpu_t::ssse3> Platform traits for SSSE3. Equivalent to SSE3. class portable_vec<T, N> A portable vector type with fixed size and layout compatible with vec<T, N> . R S T U struct u24 Unsigned 24-bit integer stored in three bytes (little-endian). V class vec_halves<T, 1> Specialization of vec_halves for single-element vectors. class vec_halves<T, N> Splits a vec<T, N> into its two halves for recursive decomposition. class vec_of_complex<N> Helper that maps a scalar component type T to vec<complex<T>, N>. class vec_shape<T, N> Describes the shape of a SIMD vector of N elements of type T. class vec_template<N> Alias template producing vec<T, N> for a fixed N . class vec_vec_template<N1, N2> Alias template producing vec<vec<T, N1>, N2> for fixed N1 , N2 . class vec<T, 0> Rejected specialization for zero-sized vectors. class vec<T, N> SIMD vector type of T elements with default width vector_width . class vector_types_for_size_t_impl<vec_tpl, T, csizes_t<sizes...>> Specialization that expands the size list into a ctypes_t of vector types. class vector_types_for_size_t_impl<vec_tpl, T, sizes> Builds a type list of vector instantiations of vec_tpl for element type T over the test vector sizes. class vecvec_template<N1, N2> Alias template producing vec<vec<T, N1>, N2> for fixed N1 , N2 . Back to top