FastLED 3.9.15
Loading...
Searching...
No Matches
s16x16x4.h File Reference

Detailed Description

SIMD 4-wide s16x16 fixed-point vector type.

Definition in file s16x16x4.h.

+ Include dependency graph for s16x16x4.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  fl::fl::add_pointer< T >
 
struct  fl::fl::add_pointer< T & >
 
struct  fl::fl::add_pointer< T && >
 
struct  fl::fl::add_rvalue_reference< T >
 
struct  fl::fl::add_rvalue_reference< T & >
 
class  fl::fl::aligned_ptr< T, N >
 
struct  fl::fl::alignment_of< T >
 
struct  fl::fl::callable_traits< R(*)(Args...)>
 
struct  fl::fl::callable_traits< R(Args...)>
 
struct  fl::fl::callable_traits< R(C::*)(Args...) const >
 
struct  fl::fl::callable_traits< R(C::*)(Args...)>
 
struct  fl::fl::callable_traits< T, typename enable_if< is_member_function_pointer< decltype(&T::operator())>::value >::type >
 
struct  fl::fl::choose_by_rank< T, U >
 
struct  fl::fl::choose_by_signedness< T, U >
 
struct  fl::fl::choose_by_size< T, U >
 
struct  fl::fl::common_type< T, U >
 
struct  fl::fl::common_type_impl< T, U, typename >
 
struct  fl::fl::common_type_impl< double, float >
 
struct  fl::fl::common_type_impl< double, long double >
 
struct  fl::fl::common_type_impl< double, T, typename enable_if<(is_integral< T >::value||is_floating_point< T >::value) &&!is_same< T, double >::value >::type >
 
struct  fl::fl::common_type_impl< float, double >
 
struct  fl::fl::common_type_impl< float, long double >
 
struct  fl::fl::common_type_impl< float, T, typename enable_if<(is_integral< T >::value||is_floating_point< T >::value) &&!is_same< T, float >::value >::type >
 
struct  fl::fl::common_type_impl< i8, u8, void >
 
struct  fl::fl::common_type_impl< long double, double >
 
struct  fl::fl::common_type_impl< long double, float >
 
struct  fl::fl::common_type_impl< T, double, typename enable_if<(is_integral< T >::value||is_floating_point< T >::value) &&!is_same< T, double >::value >::type >
 
struct  fl::fl::common_type_impl< T, float, typename enable_if<(is_integral< T >::value||is_floating_point< T >::value) &&!is_same< T, float >::value >::type >
 
struct  fl::fl::common_type_impl< T, T >
 
struct  fl::fl::common_type_impl< T, U, typename enable_if< is_integral< T >::value &&is_integral< U >::value &&!is_same< T, U >::value &&!((is_same< T, i8 >::value &&is_same< U, u8 >::value)||(is_same< T, u8 >::value &&is_same< U, i8 >::value))>::type >
 
struct  fl::fl::common_type_impl< u8, i8, void >
 
struct  fl::fl::conditional< B, T, F >
 
struct  fl::fl::conditional< false, T, F >
 
struct  fl::fl::contains_type< T >
 
struct  fl::fl::contains_type< T, U, Rest... >
 
struct  fl::fl::decay< T >
 
union  fl::fl::detail::max_align_with_ld
 
union  fl::fl::detail::max_align_without_ld
 
struct  fl::fl::enable_if< Condition, T >
 
struct  fl::fl::enable_if< true, T >
 
struct  fl::fl::has_member_swap< T >
 
struct  fl::fl::has_member_swap< T >::helper< U, M >
 
struct  fl::fl::identity< T >
 
struct  fl::fl::index_sequence< Is >
 
struct  fl::fl::int_cast_detail::cast_target< T, Size, IsSigned >
 
struct  fl::fl::int_cast_detail::cast_target< T, 1, false >
 
struct  fl::fl::int_cast_detail::cast_target< T, 1, true >
 
struct  fl::fl::int_cast_detail::cast_target< T, 2, false >
 
struct  fl::fl::int_cast_detail::cast_target< T, 2, true >
 
struct  fl::fl::int_cast_detail::cast_target< T, 4, false >
 
struct  fl::fl::int_cast_detail::cast_target< T, 4, true >
 
struct  fl::fl::int_cast_detail::cast_target< T, 8, false >
 
struct  fl::fl::int_cast_detail::cast_target< T, 8, true >
 
struct  fl::fl::integer_promotion_impl< T, U >
 
struct  fl::fl::integral_constant< T, v >
 
struct  fl::fl::is_arithmetic< T >
 
struct  fl::fl::is_arithmetic< const T >
 
struct  fl::fl::is_arithmetic< T & >
 
struct  fl::fl::is_arithmetic< volatile T >
 
struct  fl::fl::is_array< T >
 
struct  fl::fl::is_array< T[]>
 
struct  fl::fl::is_array< T[N]>
 
struct  fl::fl::is_base_of< Base, Derived >
 
struct  fl::fl::is_base_of_v_helper< Base, Derived >
 
struct  fl::fl::is_char_type< T >
 
struct  fl::fl::is_char_type< char >
 
struct  fl::fl::is_char_type< const T >
 
struct  fl::fl::is_char_type< signed char >
 
struct  fl::fl::is_char_type< T & >
 
struct  fl::fl::is_char_type< unsigned char >
 
struct  fl::fl::is_char_type< volatile T >
 
struct  fl::fl::is_const< T >
 
struct  fl::fl::is_const< const T >
 
struct  fl::fl::is_enum< T >
 
struct  fl::fl::is_fixed_point< T >
 
struct  fl::fl::is_floating_point< T >
 
struct  fl::fl::is_floating_point< const T >
 
struct  fl::fl::is_floating_point< double >
 
struct  fl::fl::is_floating_point< float >
 
struct  fl::fl::is_floating_point< long double >
 
struct  fl::fl::is_floating_point< T & >
 
struct  fl::fl::is_floating_point< volatile T >
 
struct  fl::fl::is_function< T >
 
struct  fl::fl::is_function< Ret(Args...) const >
 
struct  fl::fl::is_function< Ret(Args...) const volatile >
 
struct  fl::fl::is_function< Ret(Args...) volatile >
 
struct  fl::fl::is_function< Ret(Args...)>
 
struct  fl::fl::is_integral< T >
 
struct  fl::fl::is_integral< bool >
 
struct  fl::fl::is_integral< char >
 
struct  fl::fl::is_integral< const T >
 
struct  fl::fl::is_integral< int >
 
struct  fl::fl::is_integral< long >
 
struct  fl::fl::is_integral< long long >
 
struct  fl::fl::is_integral< short >
 
struct  fl::fl::is_integral< signed char >
 
struct  fl::fl::is_integral< T & >
 
struct  fl::fl::is_integral< unsigned char >
 
struct  fl::fl::is_integral< unsigned int >
 
struct  fl::fl::is_integral< unsigned long >
 
struct  fl::fl::is_integral< unsigned long long >
 
struct  fl::fl::is_integral< unsigned short >
 
struct  fl::fl::is_integral< volatile T >
 
struct  fl::fl::is_lvalue_reference< T >
 
struct  fl::fl::is_lvalue_reference< T & >
 
struct  fl::fl::is_member_function_pointer< T >
 
struct  fl::fl::is_member_function_pointer< Ret(C::*)(A...) const >
 
struct  fl::fl::is_member_function_pointer< Ret(C::*)(A...)>
 
struct  fl::fl::is_multi_byte_integer< T >
 
struct  fl::fl::is_pod< T >
 
struct  fl::fl::is_pod< bool >
 
struct  fl::fl::is_pod< char >
 
struct  fl::fl::is_pod< double >
 
struct  fl::fl::is_pod< float >
 
struct  fl::fl::is_pod< int >
 
struct  fl::fl::is_pod< long >
 
struct  fl::fl::is_pod< long double >
 
struct  fl::fl::is_pod< long long >
 
struct  fl::fl::is_pod< short >
 
struct  fl::fl::is_pod< signed char >
 
struct  fl::fl::is_pod< unsigned char >
 
struct  fl::fl::is_pod< unsigned int >
 
struct  fl::fl::is_pod< unsigned long >
 
struct  fl::fl::is_pod< unsigned long long >
 
struct  fl::fl::is_pod< unsigned short >
 
struct  fl::fl::is_pod_v_helper< T >
 
struct  fl::fl::is_pointer< T >
 
struct  fl::fl::is_pointer< T * >
 
struct  fl::fl::is_pointer< T *const >
 
struct  fl::fl::is_pointer< T *const volatile >
 
struct  fl::fl::is_pointer< T *volatile >
 
struct  fl::fl::is_reference< T >
 
struct  fl::fl::is_rvalue_reference< T >
 
struct  fl::fl::is_rvalue_reference< T && >
 
struct  fl::fl::is_same< T, U >
 
struct  fl::fl::is_same< T, T >
 
struct  fl::fl::is_same_v_helper< T, U >
 
struct  fl::fl::is_signed< T >
 
struct  fl::fl::is_signed< char >
 
struct  fl::fl::is_signed< const T >
 
struct  fl::fl::is_signed< const volatile T >
 
struct  fl::fl::is_signed< double >
 
struct  fl::fl::is_signed< float >
 
struct  fl::fl::is_signed< int >
 
struct  fl::fl::is_signed< long >
 
struct  fl::fl::is_signed< long double >
 
struct  fl::fl::is_signed< long long >
 
struct  fl::fl::is_signed< short >
 
struct  fl::fl::is_signed< signed char >
 
struct  fl::fl::is_signed< volatile T >
 
struct  fl::fl::is_trivially_copyable< T >
 
struct  fl::fl::is_trivially_copyable_v_helper< T >
 
struct  fl::fl::is_void< T >
 
struct  fl::fl::is_void< void >
 
struct  fl::fl::make_index_sequence_impl< N, Is >
 
struct  fl::fl::make_index_sequence_impl< 0, Is... >
 
struct  fl::fl::make_unsigned< T, Enable >
 
struct  fl::fl::make_unsigned< T, typename enable_if< is_integral< T >::value &&!is_same< typename remove_cv< T >::type, bool >::value >::type >
 
struct  fl::fl::make_unsigned_detail::unsigned_by_size< 1 >
 
struct  fl::fl::make_unsigned_detail::unsigned_by_size< 2 >
 
struct  fl::fl::make_unsigned_detail::unsigned_by_size< 4 >
 
struct  fl::fl::make_unsigned_detail::unsigned_by_size< 8 >
 
struct  fl::fl::max_align< T, Rest... >
 
struct  fl::fl::max_align<>
 
struct  fl::fl::max_align_selector< UseLD >
 
struct  fl::fl::max_align_selector< false >
 
struct  fl::fl::max_size< T, Rest... >
 
struct  fl::fl::max_size<>
 
struct  fl::fl::remove_const< T >
 
struct  fl::fl::remove_const< const T >
 
struct  fl::fl::remove_cv< T >
 
struct  fl::fl::remove_cv< const T >
 
struct  fl::fl::remove_cv< const volatile T >
 
struct  fl::fl::remove_cv< volatile T >
 
struct  fl::fl::remove_extent< T >
 
struct  fl::fl::remove_extent< T[]>
 
struct  fl::fl::remove_extent< T[N]>
 
struct  fl::fl::remove_pointer< T >
 
struct  fl::fl::remove_pointer< T * >
 
struct  fl::fl::remove_pointer< T *const >
 
struct  fl::fl::remove_pointer< T *const volatile >
 
struct  fl::fl::remove_pointer< T *volatile >
 
struct  fl::fl::remove_reference< T >
 
struct  fl::fl::remove_reference< T & >
 
struct  fl::fl::remove_reference< T && >
 
class  fl::fl::s0x32
 
struct  fl::fl::s0x32::RawTag
 
struct  fl::fl::s0x32x4
 4-wide s0x32 vector (normalized values [-1, 1]) Backed by 128-bit SIMD register (4× i32 in Q31 format) More...
 
struct  fl::fl::static_assert_failure< true >
 
struct  fl::fl::swap_impl< T, false >
 
struct  fl::fl::swap_impl< T, true >
 
struct  fl::fl::type_rank< T >
 
struct  fl::fl::type_rank< bool >
 
struct  fl::fl::type_rank< char >
 
struct  fl::fl::type_rank< double >
 
struct  fl::fl::type_rank< float >
 
struct  fl::fl::type_rank< int >
 
struct  fl::fl::type_rank< long >
 
struct  fl::fl::type_rank< long double >
 
struct  fl::fl::type_rank< long long >
 
struct  fl::fl::type_rank< short >
 
struct  fl::fl::type_rank< signed char >
 
struct  fl::fl::type_rank< unsigned char >
 
struct  fl::fl::type_rank< unsigned int >
 
struct  fl::fl::type_rank< unsigned long >
 
struct  fl::fl::type_rank< unsigned long long >
 
struct  fl::fl::type_rank< unsigned short >
 
struct  fl::fl::underlying_type< T >
 
struct  fl::s16x16x4
 4-wide s16x16 vector (general fixed-point) Backed by 128-bit SIMD register (4× i32 in Q16 format) More...
 

Namespaces

namespace  fl
 Base definition for an LED controller.
 
namespace  fl::fl
 
namespace  fl::fl::detail
 
namespace  fl::fl::int_cast_detail
 
namespace  fl::fl::make_unsigned_detail
 
namespace  fl::fl::simd
 

Macros

#define AVR_DISALLOWED
 
#define FASTLED_DEFINE_POD_COMPARISON_OPERATOR(CLASS, OP)
 
#define FASTLED_DEPRECATED(msg)
 
#define FASTLED_DEPRECATED_CLASS(msg)
 
#define FASTLED_FORCE_INLINE   __attribute__((always_inline)) inline
 
#define FASTLED_REGISTER   register
 
#define FASTLED_UNUSED(x)
 
#define FL_ALIGN
 
#define FL_ALIGN_AS(T)
 
#define FL_ALIGN_AS_T(expr)
 
#define FL_ALIGN_BYTES   1
 
#define FL_ALIGN_MAX   alignas(max_align_t)
 
#define FL_ALIGNAS(N)
 
#define FL_ALLOW_PLATFORM_PRAGMA   /* platform-specific pragma — lint escape hatch */
 
#define FL_ALWAYS_INLINE   __attribute__((always_inline)) static inline
 
#define FL_ASSUME_ALIGNED(ptr, N)
 
#define FL_BEGIN_OPTIMIZE_FOR_EXACT_TIMING   /* nothing */
 
#define FL_BUILTIN_MEMCPY(dest, src, n)
 
#define FL_BUILTIN_MEMSET(dest, val, n)
 
#define FL_CONSTEXPR14   inline
 
#define FL_CONSTRUCTOR
 
#define FL_DEPRECATED(msg)
 
#define FL_DEPRECATED_CLASS(msg)
 
#define FL_DIAGNOSTIC_IGNORE_C14_EXTENSIONS   FL_DISABLE_WARNING_C14_EXTENSIONS
 
#define FL_DIAGNOSTIC_POP   FL_DISABLE_WARNING_POP
 
#define FL_DIAGNOSTIC_PUSH   FL_DISABLE_WARNING_PUSH
 
#define FL_DISABLE_FORMAT_TRUNCATION
 
#define FL_DISABLE_WARNING(warning)
 
#define FL_DISABLE_WARNING_C14_EXTENSIONS
 
#define FL_DISABLE_WARNING_C17_EXTENSIONS
 
#define FL_DISABLE_WARNING_CLASS_MEMACCESS
 
#define FL_DISABLE_WARNING_DEPRECATED_REGISTER
 
#define FL_DISABLE_WARNING_FLOAT_CONVERSION
 
#define FL_DISABLE_WARNING_GLOBAL_CONSTRUCTORS
 
#define FL_DISABLE_WARNING_IMPLICIT_INT_CONVERSION
 
#define FL_DISABLE_WARNING_MAYBE_UNINITIALIZED
 
#define FL_DISABLE_WARNING_MAYBE_UNINITIALIZED
 
#define FL_DISABLE_WARNING_NULL_DEREFERENCE
 
#define FL_DISABLE_WARNING_POP
 
#define FL_DISABLE_WARNING_PUSH
 
#define FL_DISABLE_WARNING_RETURN_TYPE
 
#define FL_DISABLE_WARNING_SELF_ASSIGN
 
#define FL_DISABLE_WARNING_SELF_ASSIGN_OVERLOADED
 
#define FL_DISABLE_WARNING_SHORTEN_64_TO_32
 
#define FL_DISABLE_WARNING_SIGN_CONVERSION
 
#define FL_DISABLE_WARNING_SUBOBJECT_LINKAGE
 
#define FL_DISABLE_WARNING_UNUSED_PARAMETER
 
#define FL_DISABLE_WARNING_VOLATILE
 
#define FL_END_OPTIMIZE_FOR_EXACT_TIMING   /* nothing */
 
#define FL_EXTERN_C
 
#define FL_EXTERN_C_BEGIN
 
#define FL_EXTERN_C_END
 
#define FL_FALLTHROUGH   /* fallthrough */
 
#define FL_FAST_MATH_BEGIN   /* nothing */
 
#define FL_FAST_MATH_END   /* nothing */
 
#define FL_FUNCTION   __func__
 
#define FL_HAS_INCLUDE(x)
 
#define FL_HAS_SANITIZER_LSAN   0
 
#define FL_INLINE_CONSTEXPR   inline constexpr
 
#define FL_IRAM
 
#define FL_KEEP_ALIVE
 
#define FL_LIKELY(x)
 
#define FL_LINK_WEAK   __attribute__((weak))
 
#define FL_MACRO_CONCAT(a, b)
 
#define FL_MACRO_CONCAT_(a, b)
 
#define FL_MAYBE_UNUSED
 
#define FL_NO_INLINE
 
#define FL_NO_INLINE_IF_AVR
 
#define FL_NO_UNIQUE_ADDRESS
 
#define FL_NODISCARD
 
#define FL_NOEXCEPT
 
#define FL_NORETURN
 
#define FL_OFFSETOF(type, member)
 
#define FL_OPTIMIZATION_LEVEL_O0_BEGIN   /* nothing */
 
#define FL_OPTIMIZATION_LEVEL_O0_END   /* nothing */
 
#define FL_OPTIMIZATION_LEVEL_O3_BEGIN   /* nothing */
 
#define FL_OPTIMIZATION_LEVEL_O3_END   /* nothing */
 
#define FL_OPTIMIZE_FUNCTION
 
#define FL_OPTIMIZE_O2
 
#define FL_PRETTY_FUNCTION   __func__
 
#define FL_RESTRICT_PARAM   restrict
 
#define FL_RUN_ONCE(code)
 
#define FL_STATIC_ASSERT(...)
 
#define FL_STATIC_ASSERT_EXPR(...)
 
#define FL_STATIC_ASSERT_EXPR_1(expression)
 
#define FL_STATIC_ASSERT_EXPR_10(a, b, c, d, e, f, g, h, i, message)
 
#define FL_STATIC_ASSERT_EXPR_11(a, b, c, d, e, f, g, h, i, j, message)
 
#define FL_STATIC_ASSERT_EXPR_12(a, b, c, d, e, f, g, h, i, j, k, message)
 
#define FL_STATIC_ASSERT_EXPR_13(a, b, c, d, e, f, g, h, i, j, k, l, message)
 
#define FL_STATIC_ASSERT_EXPR_14(a, b, c, d, e, f, g, h, i, j, k, l, m, message)
 
#define FL_STATIC_ASSERT_EXPR_15(a, b, c, d, e, f, g, h, i, j, k, l, m, n, message)
 
#define FL_STATIC_ASSERT_EXPR_16(a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, message)
 
#define FL_STATIC_ASSERT_EXPR_2(expression, message)
 
#define FL_STATIC_ASSERT_EXPR_3(a, b, message)
 
#define FL_STATIC_ASSERT_EXPR_4(a, b, c, message)
 
#define FL_STATIC_ASSERT_EXPR_5(a, b, c, d, message)
 
#define FL_STATIC_ASSERT_EXPR_6(a, b, c, d, e, message)
 
#define FL_STATIC_ASSERT_EXPR_7(a, b, c, d, e, f, message)
 
#define FL_STATIC_ASSERT_EXPR_8(a, b, c, d, e, f, g, message)
 
#define FL_STATIC_ASSERT_EXPR_9(a, b, c, d, e, f, g, h, message)
 
#define FL_STATIC_ASSERT_IMPL(expression)
 
#define FL_STATIC_ASSERT_JOIN(a, b)
 
#define FL_STATIC_ASSERT_JOIN_IMPL(a, b)
 
#define FL_STATIC_ASSERT_NAME   FL_STATIC_ASSERT_JOIN(fl_static_assert_, __LINE__)
 
#define FL_STATIC_ASSERT_SELECT(_1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16, NAME, ...)
 
#define FL_STRING_CONCAT(a, b)
 
#define FL_STRINGIFY(x)
 
#define FL_STRINGIFY2(x)
 
#define FL_TIMING_OPT_LEVEL   2
 
#define FL_UNIQUE_IDENTIFIER   FL_MACRO_CONCAT(_fl_uid_, __LINE__)
 
#define FL_UNIQUE_KEY   FL_STRING_CONCAT(__FILE__ ":", FL_STRINGIFY(__LINE__))
 
#define FL_UNLIKELY(x)
 
#define FL_UNROLL(N)
 
#define FL_UNUSED(x)
 
#define FL_UNUSED_FUNCTION   __attribute__((unused))
 
#define OVERRIDE_IF_NOT_AVR   override
 
#define VIRTUAL_IF_NOT_AVR   virtual
 

Typedefs

typedef u16 fl::accum124
 no direct ANSI counterpart. 12 bits int, 4 bits fraction
 
typedef u16 fl::fl::accum124
 no direct ANSI counterpart. 12 bits int, 4 bits fraction
 
typedef u32 fl::accum1616
 ANSI: signed _Accum. 16 bits int, 16 bits fraction.
 
typedef u32 fl::fl::accum1616
 ANSI: signed _Accum. 16 bits int, 16 bits fraction.
 
typedef u16 fl::accum88
 ANSI: unsigned short _Accum. 8 bits int, 8 bits fraction.
 
typedef u16 fl::fl::accum88
 ANSI: unsigned short _Accum. 8 bits int, 8 bits fraction.
 
template<typename T>
using fl::fl::add_pointer_t = typename add_pointer<T>::type
 
template<bool B>
using fl::fl::bool_constant = integral_constant<bool, B>
 
template<typename T, typename U>
using fl::fl::common_type_t = typename common_type<T, U>::type
 
template<bool B, typename T, typename F>
using fl::fl::conditional_t = typename conditional<B, T, F>::type
 
template<typename T>
using fl::fl::decay_t = typename decay<T>::type
 
template<bool Condition, typename T = void>
using fl::fl::enable_if_t = typename enable_if<Condition, T>::type
 
using fl::fl::false_type = integral_constant<bool, false>
 
typedef u16 fl::fl::fract16
 ANSI: unsigned _Fract.
 
typedef u16 fl::fract16
 ANSI: unsigned _Fract.
 
typedef u32 fl::fl::fract32
 ANSI: unsigned long _Fract. 32 bits int, 32 bits fraction.
 
typedef u32 fl::fract32
 ANSI: unsigned long _Fract. 32 bits int, 32 bits fraction.
 
typedef u8 fl::fl::fract8
 Fixed-Point Fractional Types.
 
typedef u8 fl::fract8
 Fixed-Point Fractional Types.
 
typedef fl::i64 fl::i64
 
typedef signed char fl::fl::i8
 
typedef fl::i16 fl::int16_t
 
typedef fl::i32 fl::int32_t
 
typedef signed char fl::int8_t
 
typedef fl::iptr fl::intptr_t
 
template<typename Base, typename Derived>
using fl::fl::is_derived = enable_if_t<is_base_of<Base, Derived>::value>
 
template<fl::size N>
using fl::fl::make_index_sequence = typename make_index_sequence_impl<N>::type
 
typedef max_align_selector<(sizeof(longdouble)>sizeof(double))>::type fl::fl::max_align_t
 
typedef decltype(nullptr) fl::fl::nullptr_t
 
typedef long fl::fl::ptrdiff_t
 
typedef fl::ptrdiff fl::ptrdiff_t
 
template<typename T>
using fl::fl::remove_cv_t = typename remove_cv<T>::type
 
template<typename T>
using fl::fl::remove_pointer_t = typename remove_pointer<T>::type
 
template<typename T>
using fl::fl::remove_reference_t = typename remove_reference<T>::type
 
typedef i32 fl::fl::saccum114
 no direct ANSI counterpart. 1 bit int, 14 bits fraction
 
typedef i32 fl::saccum114
 no direct ANSI counterpart. 1 bit int, 14 bits fraction
 
typedef i32 fl::fl::saccum1516
 ANSI: signed _Accum. 15 bits int, 16 bits fraction.
 
typedef i32 fl::saccum1516
 ANSI: signed _Accum. 15 bits int, 16 bits fraction.
 
typedef i16 fl::fl::saccum78
 ANSI: signed short _Accum. 7 bits int, 8 bits fraction.
 
typedef i16 fl::saccum78
 ANSI: signed short _Accum. 7 bits int, 8 bits fraction.
 
typedef i16 fl::fl::sfract15
 ANSI: signed _Fract.
 
typedef i16 fl::sfract15
 ANSI: signed _Fract.
 
typedef i32 fl::fl::sfract31
 ANSI: signed long _Fract. 31 bits int, 1 bit fraction.
 
typedef i32 fl::sfract31
 ANSI: signed long _Fract. 31 bits int, 1 bit fraction.
 
typedef i8 fl::fl::sfract7
 ANSI: signed short _Fract.
 
typedef i8 fl::sfract7
 ANSI: signed short _Fract.
 
using fl::fl::simd::simd_f32x4 = platforms::simd_f32x4
 
using fl::fl::simd::simd_u16x16 = platforms::simd_u16x16
 
using fl::fl::simd::simd_u16x8 = platforms::simd_u16x8
 
using fl::fl::simd::simd_u32x4 = platforms::simd_u32x4
 
using fl::fl::simd::simd_u8x16 = platforms::simd_u8x16
 
using fl::fl::simd::simd_u8x32 = platforms::simd_u8x32
 
typedef __SIZE_TYPE__ fl::fl::size_t
 
typedef fl::size fl::size_t
 
using fl::fl::true_type = integral_constant<bool, true>
 
typedef fl::u64 fl::u64
 
typedef unsigned char fl::fl::u8
 
typedef unsigned int fl::fl::uint
 
typedef fl::u16 fl::uint16_t
 
typedef fl::u32 fl::uint32_t
 
typedef unsigned char fl::uint8_t
 
typedef fl::uptr fl::uintptr_t
 
template<typename T>
using fl::fl::underlying_type_t = typename underlying_type<T>::type
 

Functions

template<fl::size_t N, typename T>
const T * fl::fl::assume_aligned (const T *ptr) FL_NOEXCEPT
 
template<fl::size_t N, typename T>
T * fl::fl::assume_aligned (T *ptr) FL_NOEXCEPT
 
template<typename T>
add_rvalue_reference< T >::type fl::fl::declval () FL_NOEXCEPT
 
template<typename T>
constexpr T && fl::fl::forward (typename remove_reference< T >::type &&t) FL_NOEXCEPT
 
template<typename T>
constexpr T && fl::fl::forward (typename remove_reference< T >::type &t) FL_NOEXCEPT
 
template<typename T>
constexpr remove_reference< T >::type && fl::fl::move (T &&t) FL_NOEXCEPT
 
template<typename T>
void fl::fl::swap (T &a, T &b) FL_NOEXCEPT
 
template<typename T>
void fl::fl::swap_by_copy (T &a, T &b) FL_NOEXCEPT
 

Class Documentation

◆ fl::fl::add_pointer

struct fl::fl::add_pointer
+ Inheritance diagram for fl::fl::add_pointer< T >:
Class Members
typedef T * type T *

◆ fl::fl::add_pointer< T & >

struct fl::fl::add_pointer< T & >
+ Inheritance diagram for fl::fl::add_pointer< T & >:
+ Collaboration diagram for fl::fl::add_pointer< T & >:
Class Members
typedef T * type
typedef T * type T *

◆ fl::fl::add_pointer< T && >

struct fl::fl::add_pointer< T && >
+ Inheritance diagram for fl::fl::add_pointer< T && >:
+ Collaboration diagram for fl::fl::add_pointer< T && >:
Class Members
typedef T * type
typedef T * type T *

◆ fl::fl::add_rvalue_reference

struct fl::fl::add_rvalue_reference
+ Inheritance diagram for fl::fl::add_rvalue_reference< T >:
Class Members
typedef T && type T&&

◆ fl::fl::add_rvalue_reference< T & >

struct fl::fl::add_rvalue_reference< T & >
+ Inheritance diagram for fl::fl::add_rvalue_reference< T & >:
+ Collaboration diagram for fl::fl::add_rvalue_reference< T & >:
Class Members
typedef T && type
typedef T & type T&

◆ fl::fl::choose_by_rank

struct fl::fl::choose_by_rank
Class Members
typedef typename value > value), T, typename value > value), U, void >::type >::type type

◆ fl::fl::choose_by_size

struct fl::fl::choose_by_size
Class Members
typedef typename conditional<(sizeof(T) > sizeof(U)), T, typename conditional<(sizeof(U) > sizeof(T)), U, void >::type >::type type

◆ fl::fl::common_type

struct fl::fl::common_type
Class Members
typedef typename type type typename common_type_impl<T, U>::type

◆ fl::fl::common_type_impl

struct fl::fl::common_type_impl
+ Inheritance diagram for fl::fl::common_type_impl< T, U, typename >:
Class Members
typedef T type T

◆ fl::fl::common_type_impl< double, float >

struct fl::fl::common_type_impl< double, float >
+ Inheritance diagram for fl::fl::common_type_impl< double, float >:
+ Collaboration diagram for fl::fl::common_type_impl< double, float >:
Class Members
typedef double type
typedef double type double

◆ fl::fl::common_type_impl< double, long double >

struct fl::fl::common_type_impl< double, long double >
+ Inheritance diagram for fl::fl::common_type_impl< double, long double >:
+ Collaboration diagram for fl::fl::common_type_impl< double, long double >:
Class Members
typedef double type
typedef long double type long double

◆ fl::fl::common_type_impl< double, T, typename enable_if<(is_integral< T >::value||is_floating_point< T >::value) &&!is_same< T, double >::value >::type >

struct fl::fl::common_type_impl< double, T, typename enable_if<(is_integral< T >::value||is_floating_point< T >::value) &&!is_same< T, double >::value >::type >
+ Inheritance diagram for fl::fl::common_type_impl< double, T, typename enable_if<(is_integral< T >::value||is_floating_point< T >::value) &&!is_same< T, double >::value >::type >:
+ Collaboration diagram for fl::fl::common_type_impl< double, T, typename enable_if<(is_integral< T >::value||is_floating_point< T >::value) &&!is_same< T, double >::value >::type >:
Class Members
typedef double type
typedef double type double

◆ fl::fl::common_type_impl< float, double >

struct fl::fl::common_type_impl< float, double >
+ Inheritance diagram for fl::fl::common_type_impl< float, double >:
+ Collaboration diagram for fl::fl::common_type_impl< float, double >:
Class Members
typedef float type
typedef double type double

◆ fl::fl::common_type_impl< float, long double >

struct fl::fl::common_type_impl< float, long double >
+ Inheritance diagram for fl::fl::common_type_impl< float, long double >:
+ Collaboration diagram for fl::fl::common_type_impl< float, long double >:
Class Members
typedef float type
typedef long double type long double

◆ fl::fl::common_type_impl< float, T, typename enable_if<(is_integral< T >::value||is_floating_point< T >::value) &&!is_same< T, float >::value >::type >

struct fl::fl::common_type_impl< float, T, typename enable_if<(is_integral< T >::value||is_floating_point< T >::value) &&!is_same< T, float >::value >::type >
+ Inheritance diagram for fl::fl::common_type_impl< float, T, typename enable_if<(is_integral< T >::value||is_floating_point< T >::value) &&!is_same< T, float >::value >::type >:
+ Collaboration diagram for fl::fl::common_type_impl< float, T, typename enable_if<(is_integral< T >::value||is_floating_point< T >::value) &&!is_same< T, float >::value >::type >:
Class Members
typedef float type
typedef float type float

◆ fl::fl::common_type_impl< i8, u8, void >

struct fl::fl::common_type_impl< i8, u8, void >
+ Inheritance diagram for fl::fl::common_type_impl< i8, u8, void >:
+ Collaboration diagram for fl::fl::common_type_impl< i8, u8, void >:
Class Members
typedef i8 type

◆ fl::fl::common_type_impl< long double, double >

struct fl::fl::common_type_impl< long double, double >
+ Inheritance diagram for fl::fl::common_type_impl< long double, double >:
+ Collaboration diagram for fl::fl::common_type_impl< long double, double >:
Class Members
typedef long double type
typedef long double type long double

◆ fl::fl::common_type_impl< long double, float >

struct fl::fl::common_type_impl< long double, float >
+ Inheritance diagram for fl::fl::common_type_impl< long double, float >:
+ Collaboration diagram for fl::fl::common_type_impl< long double, float >:
Class Members
typedef long double type
typedef long double type long double

◆ fl::fl::common_type_impl< T, double, typename enable_if<(is_integral< T >::value||is_floating_point< T >::value) &&!is_same< T, double >::value >::type >

struct fl::fl::common_type_impl< T, double, typename enable_if<(is_integral< T >::value||is_floating_point< T >::value) &&!is_same< T, double >::value >::type >
+ Inheritance diagram for fl::fl::common_type_impl< T, double, typename enable_if<(is_integral< T >::value||is_floating_point< T >::value) &&!is_same< T, double >::value >::type >:
+ Collaboration diagram for fl::fl::common_type_impl< T, double, typename enable_if<(is_integral< T >::value||is_floating_point< T >::value) &&!is_same< T, double >::value >::type >:
Class Members
typedef T type
typedef double type double

◆ fl::fl::common_type_impl< T, float, typename enable_if<(is_integral< T >::value||is_floating_point< T >::value) &&!is_same< T, float >::value >::type >

struct fl::fl::common_type_impl< T, float, typename enable_if<(is_integral< T >::value||is_floating_point< T >::value) &&!is_same< T, float >::value >::type >
+ Inheritance diagram for fl::fl::common_type_impl< T, float, typename enable_if<(is_integral< T >::value||is_floating_point< T >::value) &&!is_same< T, float >::value >::type >:
+ Collaboration diagram for fl::fl::common_type_impl< T, float, typename enable_if<(is_integral< T >::value||is_floating_point< T >::value) &&!is_same< T, float >::value >::type >:
Class Members
typedef T type
typedef float type float

◆ fl::fl::common_type_impl< T, T >

struct fl::fl::common_type_impl< T, T >
+ Inheritance diagram for fl::fl::common_type_impl< T, T >:
+ Collaboration diagram for fl::fl::common_type_impl< T, T >:
Class Members
typedef T type
typedef T type T

◆ fl::fl::common_type_impl< T, U, typename enable_if< is_integral< T >::value &&is_integral< U >::value &&!is_same< T, U >::value &&!((is_same< T, i8 >::value &&is_same< U, u8 >::value)||(is_same< T, u8 >::value &&is_same< U, i8 >::value))>::type >

struct fl::fl::common_type_impl< T, U, typename enable_if< is_integral< T >::value &&is_integral< U >::value &&!is_same< T, U >::value &&!((is_same< T, i8 >::value &&is_same< U, u8 >::value)||(is_same< T, u8 >::value &&is_same< U, i8 >::value))>::type >
+ Inheritance diagram for fl::fl::common_type_impl< T, U, typename enable_if< is_integral< T >::value &&is_integral< U >::value &&!is_same< T, U >::value &&!((is_same< T, i8 >::value &&is_same< U, u8 >::value)||(is_same< T, u8 >::value &&is_same< U, i8 >::value))>::type >:
+ Collaboration diagram for fl::fl::common_type_impl< T, U, typename enable_if< is_integral< T >::value &&is_integral< U >::value &&!is_same< T, U >::value &&!((is_same< T, i8 >::value &&is_same< U, u8 >::value)||(is_same< T, u8 >::value &&is_same< U, i8 >::value))>::type >:
Class Members
typedef T type
typedef typename type type typename integer_promotion_impl<T, U>::type

◆ fl::fl::common_type_impl< u8, i8, void >

struct fl::fl::common_type_impl< u8, i8, void >
+ Inheritance diagram for fl::fl::common_type_impl< u8, i8, void >:
+ Collaboration diagram for fl::fl::common_type_impl< u8, i8, void >:
Class Members
typedef u8 type

◆ fl::fl::conditional

struct fl::fl::conditional
+ Inheritance diagram for fl::fl::conditional< B, T, F >:
Class Members
typedef T type T

◆ fl::fl::conditional< false, T, F >

struct fl::fl::conditional< false, T, F >
+ Inheritance diagram for fl::fl::conditional< false, T, F >:
+ Collaboration diagram for fl::fl::conditional< false, T, F >:
Class Members
typedef T type
typedef F type F

◆ fl::fl::detail::max_align_with_ld

union fl::fl::detail::max_align_with_ld
Class Members
long double ld
long long ll
void * p

◆ fl::fl::detail::max_align_without_ld

union fl::fl::detail::max_align_without_ld
Class Members
double d
long long ll
void * p

◆ fl::fl::enable_if

struct fl::fl::enable_if
+ Inheritance diagram for fl::fl::enable_if< Condition, T >:

◆ fl::fl::enable_if< true, T >

struct fl::fl::enable_if< true, T >
+ Inheritance diagram for fl::fl::enable_if< true, T >:
+ Collaboration diagram for fl::fl::enable_if< true, T >:
Class Members
typedef T type T

◆ fl::fl::has_member_swap::helper

struct fl::fl::has_member_swap::helper

◆ fl::fl::identity

struct fl::fl::identity
Class Members
typedef T type T

◆ fl::fl::int_cast_detail::cast_target

struct fl::fl::int_cast_detail::cast_target
+ Inheritance diagram for fl::fl::int_cast_detail::cast_target< T, Size, IsSigned >:
Class Members
typedef typename type >::type >::type >::type, typename type >::type >::type >::type >::type type

◆ fl::fl::int_cast_detail::cast_target< T, 1, false >

struct fl::fl::int_cast_detail::cast_target< T, 1, false >
+ Inheritance diagram for fl::fl::int_cast_detail::cast_target< T, 1, false >:
+ Collaboration diagram for fl::fl::int_cast_detail::cast_target< T, 1, false >:
Class Members
typedef typename type >::type >::type >::type, typename type >::type >::type >::type >::type type
typedef u16 type fl::u16

◆ fl::fl::int_cast_detail::cast_target< T, 1, true >

struct fl::fl::int_cast_detail::cast_target< T, 1, true >
+ Inheritance diagram for fl::fl::int_cast_detail::cast_target< T, 1, true >:
+ Collaboration diagram for fl::fl::int_cast_detail::cast_target< T, 1, true >:
Class Members
typedef typename type >::type >::type >::type, typename type >::type >::type >::type >::type type
typedef i8 type fl::i8

◆ fl::fl::int_cast_detail::cast_target< T, 2, false >

struct fl::fl::int_cast_detail::cast_target< T, 2, false >
+ Inheritance diagram for fl::fl::int_cast_detail::cast_target< T, 2, false >:
+ Collaboration diagram for fl::fl::int_cast_detail::cast_target< T, 2, false >:
Class Members
typedef typename type >::type >::type >::type, typename type >::type >::type >::type >::type type
typedef u16 type fl::u16

◆ fl::fl::int_cast_detail::cast_target< T, 2, true >

struct fl::fl::int_cast_detail::cast_target< T, 2, true >
+ Inheritance diagram for fl::fl::int_cast_detail::cast_target< T, 2, true >:
+ Collaboration diagram for fl::fl::int_cast_detail::cast_target< T, 2, true >:
Class Members
typedef typename type >::type >::type >::type, typename type >::type >::type >::type >::type type
typedef i16 type fl::i16

◆ fl::fl::int_cast_detail::cast_target< T, 4, false >

struct fl::fl::int_cast_detail::cast_target< T, 4, false >
+ Inheritance diagram for fl::fl::int_cast_detail::cast_target< T, 4, false >:
+ Collaboration diagram for fl::fl::int_cast_detail::cast_target< T, 4, false >:
Class Members
typedef typename type >::type >::type >::type, typename type >::type >::type >::type >::type type
typedef u32 type fl::u32

◆ fl::fl::int_cast_detail::cast_target< T, 4, true >

struct fl::fl::int_cast_detail::cast_target< T, 4, true >
+ Inheritance diagram for fl::fl::int_cast_detail::cast_target< T, 4, true >:
+ Collaboration diagram for fl::fl::int_cast_detail::cast_target< T, 4, true >:
Class Members
typedef typename type >::type >::type >::type, typename type >::type >::type >::type >::type type
typedef i32 type fl::i32

◆ fl::fl::int_cast_detail::cast_target< T, 8, false >

struct fl::fl::int_cast_detail::cast_target< T, 8, false >
+ Inheritance diagram for fl::fl::int_cast_detail::cast_target< T, 8, false >:
+ Collaboration diagram for fl::fl::int_cast_detail::cast_target< T, 8, false >:
Class Members
typedef typename type >::type >::type >::type, typename type >::type >::type >::type >::type type
typedef u64 type fl::u64

◆ fl::fl::int_cast_detail::cast_target< T, 8, true >

struct fl::fl::int_cast_detail::cast_target< T, 8, true >
+ Inheritance diagram for fl::fl::int_cast_detail::cast_target< T, 8, true >:
+ Collaboration diagram for fl::fl::int_cast_detail::cast_target< T, 8, true >:
Class Members
typedef typename type >::type >::type >::type, typename type >::type >::type >::type >::type type
typedef i64 type fl::i64

◆ fl::fl::make_index_sequence_impl

struct fl::fl::make_index_sequence_impl
+ Inheritance diagram for fl::fl::make_index_sequence_impl< N, Is >:

◆ fl::fl::make_index_sequence_impl< 0, Is... >

struct fl::fl::make_index_sequence_impl< 0, Is... >
+ Inheritance diagram for fl::fl::make_index_sequence_impl< 0, Is... >:
+ Collaboration diagram for fl::fl::make_index_sequence_impl< 0, Is... >:
Class Members
typedef index_sequence< Is... > type index_sequence<Is...>

◆ fl::fl::make_unsigned_detail::unsigned_by_size< 1 >

struct fl::fl::make_unsigned_detail::unsigned_by_size< 1 >
+ Inheritance diagram for fl::fl::make_unsigned_detail::unsigned_by_size< 1 >:
+ Collaboration diagram for fl::fl::make_unsigned_detail::unsigned_by_size< 1 >:
Class Members
typedef unsigned char type unsigned char

◆ fl::fl::make_unsigned_detail::unsigned_by_size< 2 >

struct fl::fl::make_unsigned_detail::unsigned_by_size< 2 >
+ Inheritance diagram for fl::fl::make_unsigned_detail::unsigned_by_size< 2 >:
+ Collaboration diagram for fl::fl::make_unsigned_detail::unsigned_by_size< 2 >:
Class Members
typedef unsigned short type unsigned short

◆ fl::fl::make_unsigned_detail::unsigned_by_size< 4 >

struct fl::fl::make_unsigned_detail::unsigned_by_size< 4 >
+ Inheritance diagram for fl::fl::make_unsigned_detail::unsigned_by_size< 4 >:
+ Collaboration diagram for fl::fl::make_unsigned_detail::unsigned_by_size< 4 >:
Class Members
typedef unsigned int type unsigned int

◆ fl::fl::make_unsigned_detail::unsigned_by_size< 8 >

struct fl::fl::make_unsigned_detail::unsigned_by_size< 8 >
+ Inheritance diagram for fl::fl::make_unsigned_detail::unsigned_by_size< 8 >:
+ Collaboration diagram for fl::fl::make_unsigned_detail::unsigned_by_size< 8 >:
Class Members
typedef unsigned long long type unsigned long long

◆ fl::fl::max_align_selector

struct fl::fl::max_align_selector
+ Inheritance diagram for fl::fl::max_align_selector< UseLD >:
Class Members
typedef max_align_with_ld type

◆ fl::fl::max_align_selector< false >

struct fl::fl::max_align_selector< false >
+ Inheritance diagram for fl::fl::max_align_selector< false >:
+ Collaboration diagram for fl::fl::max_align_selector< false >:
Class Members
typedef max_align_with_ld type
typedef max_align_without_ld type

◆ fl::fl::remove_const

struct fl::fl::remove_const
+ Inheritance diagram for fl::fl::remove_const< T >:
Class Members
typedef T type T

◆ fl::fl::remove_const< const T >

struct fl::fl::remove_const< const T >
+ Inheritance diagram for fl::fl::remove_const< const T >:
+ Collaboration diagram for fl::fl::remove_const< const T >:
Class Members
typedef T type
typedef T type T

◆ fl::fl::remove_cv

struct fl::fl::remove_cv
+ Inheritance diagram for fl::fl::remove_cv< T >:
Class Members
typedef T type T

◆ fl::fl::remove_cv< const T >

struct fl::fl::remove_cv< const T >
+ Inheritance diagram for fl::fl::remove_cv< const T >:
+ Collaboration diagram for fl::fl::remove_cv< const T >:
Class Members
typedef T type
typedef T type T

◆ fl::fl::remove_cv< const volatile T >

struct fl::fl::remove_cv< const volatile T >
+ Inheritance diagram for fl::fl::remove_cv< const volatile T >:
+ Collaboration diagram for fl::fl::remove_cv< const volatile T >:
Class Members
typedef const volatile T type
typedef T type T

◆ fl::fl::remove_cv< volatile T >

struct fl::fl::remove_cv< volatile T >
+ Inheritance diagram for fl::fl::remove_cv< volatile T >:
+ Collaboration diagram for fl::fl::remove_cv< volatile T >:
Class Members
typedef T type
typedef T type T

◆ fl::fl::remove_extent

struct fl::fl::remove_extent
+ Inheritance diagram for fl::fl::remove_extent< T >:
Class Members
typedef T type T

◆ fl::fl::remove_extent< T[]>

struct fl::fl::remove_extent< T[]>
+ Inheritance diagram for fl::fl::remove_extent< T[]>:
+ Collaboration diagram for fl::fl::remove_extent< T[]>:
Class Members
typedef T type
typedef T type T

◆ fl::fl::remove_extent< T[N]>

struct fl::fl::remove_extent< T[N]>
+ Inheritance diagram for fl::fl::remove_extent< T[N]>:
+ Collaboration diagram for fl::fl::remove_extent< T[N]>:
Class Members
typedef T type
typedef T type T

◆ fl::fl::remove_pointer

struct fl::fl::remove_pointer
+ Inheritance diagram for fl::fl::remove_pointer< T >:
Class Members
typedef T type T

◆ fl::fl::remove_pointer< T * >

struct fl::fl::remove_pointer< T * >
+ Inheritance diagram for fl::fl::remove_pointer< T * >:
+ Collaboration diagram for fl::fl::remove_pointer< T * >:
Class Members
typedef T type
typedef T type T

◆ fl::fl::remove_pointer< T *const >

struct fl::fl::remove_pointer< T *const >
+ Inheritance diagram for fl::fl::remove_pointer< T *const >:
+ Collaboration diagram for fl::fl::remove_pointer< T *const >:
Class Members
typedef T type
typedef T type T

◆ fl::fl::remove_pointer< T *const volatile >

struct fl::fl::remove_pointer< T *const volatile >
+ Inheritance diagram for fl::fl::remove_pointer< T *const volatile >:
+ Collaboration diagram for fl::fl::remove_pointer< T *const volatile >:
Class Members
typedef T type
typedef T type T

◆ fl::fl::remove_pointer< T *volatile >

struct fl::fl::remove_pointer< T *volatile >
+ Inheritance diagram for fl::fl::remove_pointer< T *volatile >:
+ Collaboration diagram for fl::fl::remove_pointer< T *volatile >:
Class Members
typedef T type
typedef T type T

◆ fl::fl::remove_reference

struct fl::fl::remove_reference
+ Inheritance diagram for fl::fl::remove_reference< T >:
Class Members
typedef T type T

◆ fl::fl::remove_reference< T & >

struct fl::fl::remove_reference< T & >
+ Inheritance diagram for fl::fl::remove_reference< T & >:
+ Collaboration diagram for fl::fl::remove_reference< T & >:
Class Members
typedef T type
typedef T type T

◆ fl::fl::remove_reference< T && >

struct fl::fl::remove_reference< T && >
+ Inheritance diagram for fl::fl::remove_reference< T && >:
+ Collaboration diagram for fl::fl::remove_reference< T && >:
Class Members
typedef T type
typedef T type T

◆ fl::fl::s0x32::RawTag

struct fl::fl::s0x32::RawTag

◆ fl::fl::static_assert_failure< true >

struct fl::fl::static_assert_failure< true >
+ Inheritance diagram for fl::fl::static_assert_failure< true >:
+ Collaboration diagram for fl::fl::static_assert_failure< true >:

◆ fl::fl::underlying_type

struct fl::fl::underlying_type
Class Members
typedef int type int