HikoGUI
A low latency retained GUI
Loading...
Searching...
No Matches
Public Types | Static Public Member Functions
hi::v1::array_intrinsic< float, 4 > Struct Reference

Public Types

using value_type = float
 
using register_type = __m128
 
using array_type = std::array<float, 4>
 

Static Public Member Functions

static hi_force_inline register_type L (array_type a) noexcept
 Load an array into a register.
 
static hi_force_inline array_type S (register_type a) noexcept
 Store a register into an array.
 
static hi_force_inline array_type convert (std::array< half, 4 > a) noexcept
 
static hi_force_inline array_type undefined () noexcept
 
static hi_force_inline array_type set (float a, float b, float c, float d) noexcept
 
static hi_force_inline array_type set (float a) noexcept
 
static hi_force_inline array_type set_zero () noexcept
 
static hi_force_inline array_type set_all_ones () noexcept
 
static hi_force_inline array_type set_one () noexcept
 
template<size_t I>
static hi_force_inline float get (array_type a) noexcept
 
static hi_force_inline array_type broadcast (float a) noexcept
 
static hi_force_inline array_type broadcast (array_type a) noexcept
 
static hi_force_inline array_type set_mask (std::size_t mask) noexcept
 
static hi_force_inline std::size_t get_mask (array_type a) noexcept
 Store a register as a mask-integer.
 
static hi_force_inline array_type neg (array_type a) noexcept
 
template<std::size_t Mask>
hi_force_inline static constexpr array_type neg_mask (array_type a) noexcept
 
static hi_force_inline array_type inv (array_type a) noexcept
 
static hi_force_inline array_type rcp (array_type a) noexcept
 
static hi_force_inline array_type sqrt (array_type a) noexcept
 
static hi_force_inline array_type rsqrt (array_type a) noexcept
 
static hi_force_inline array_type round (array_type a) noexcept
 
static hi_force_inline array_type add (array_type a, array_type b) noexcept
 
static hi_force_inline array_type sub (array_type a, array_type b) noexcept
 
template<std::size_t Mask>
hi_force_inline static constexpr array_type addsub_mask (array_type a, array_type b) noexcept
 
static hi_force_inline array_type mul (array_type a, array_type b) noexcept
 
static hi_force_inline array_type div (array_type a, array_type b) noexcept
 
static hi_force_inline array_type eq (array_type a, array_type b) noexcept
 
static hi_force_inline array_type ne (array_type a, array_type b) noexcept
 
static hi_force_inline array_type lt (array_type a, array_type b) noexcept
 
static hi_force_inline array_type gt (array_type a, array_type b) noexcept
 
static hi_force_inline array_type le (array_type a, array_type b) noexcept
 
static hi_force_inline array_type ge (array_type a, array_type b) noexcept
 
static hi_force_inline bool test (array_type a, array_type b) noexcept
 
static hi_force_inline array_type max (array_type a, array_type b) noexcept
 
static hi_force_inline array_type min (array_type a, array_type b) noexcept
 
static hi_force_inline array_type clamp (array_type v, array_type lo, array_type hi) noexcept
 
static hi_force_inline array_type _or (array_type a, array_type b) noexcept
 
static hi_force_inline array_type _and (array_type a, array_type b) noexcept
 
static hi_force_inline array_type _xor (array_type a, array_type b) noexcept
 
static hi_force_inline array_type andnot (array_type a, array_type b) noexcept
 
static hi_force_inline array_type sll (array_type a, unsigned int b) noexcept
 
static hi_force_inline array_type srl (array_type a, unsigned int b) noexcept
 
static hi_force_inline array_type sra (array_type a, unsigned int b) noexcept
 
static hi_force_inline array_type hadd (array_type a, array_type b) noexcept
 
static hi_force_inline array_type hsub (array_type a, array_type b) noexcept
 
template<int... Indices>
static constexpr unsigned int _make_indices_imm () noexcept
 
template<int... Indices>
static hi_force_inline array_type shuffle (array_type a) noexcept
 
template<size_t Mask>
static hi_force_inline array_type blend (array_type a, array_type b) noexcept
 
static hi_force_inline std::array< array_type, 4 > transpose (array_type a, array_type b, array_type c, array_type d)
 
static hi_force_inline array_type sum (array_type a) noexcept
 
template<size_t Mask>
static hi_force_inline array_type dot (array_type a, array_type b) noexcept
 

Member Function Documentation

◆ get_mask()

static hi_force_inline std::size_t hi::v1::array_intrinsic< float, 4 >::get_mask ( array_type a)
inlinestaticnoexcept

Store a register as a mask-integer.

◆ L()

static hi_force_inline register_type hi::v1::array_intrinsic< float, 4 >::L ( array_type a)
inlinestaticnoexcept

Load an array into a register.

◆ S()

static hi_force_inline array_type hi::v1::array_intrinsic< float, 4 >::S ( register_type a)
inlinestaticnoexcept

Store a register into an array.


The documentation for this struct was generated from the following file: