SH4ZAM! 0.1.0
Fast math library for the Sega Dreamcast's SH4 CPU
Loading...
Searching...
No Matches
shz Namespace Reference

Data Structures

struct  mat4x4
 
struct  quat
 
struct  sincos
 
struct  vec2
 
struct  vec3
 
struct  vec4
 
struct  vecN
 
struct  xmtrx
 

Typedefs

using mat4x4_t
 
using quat_t
 
using sincos_t
 
using vec2_t
 
using vec3_t
 
using vec4_t
 
Aliasing Types

Types which may break C/C++'s strict aliasing rules

using alias_int16_t
 
using alias_uint16_t
 
using alias_int32_t
 
using alias_uint32_t
 
using alias_float_t
 
using alias_int64_t
 
using alias_uint64_t
 
using alias_double_t
 

Functions

void * memcpy128 (void *dst, const void *src, size_t bytes) noexcept
 
constexpr float deg_to_rad (float deg) noexcept
 
constexpr float rad_to_deg (float rad) noexcept
 
template<typename CRTP, typename C, size_t R>
CRTP operator+ (vecN< CRTP, C, R > lhs, vecN< CRTP, C, R > rhs) noexcept
 
template<typename CRTP, typename C, size_t R>
CRTP operator- (vecN< CRTP, C, R > lhs, vecN< CRTP, C, R > rhs) noexcept
 
template<typename CRTP, typename C, size_t R>
CRTP operator* (vecN< CRTP, C, R > lhs, vecN< CRTP, C, R > rhs) noexcept
 
template<typename CRTP, typename C, size_t R>
CRTP operator/ (vecN< CRTP, C, R > lhs, vecN< CRTP, C, R > rhs) noexcept
 
template<typename CRTP, typename C, size_t R>
CRTP operator* (vecN< CRTP, C, R > lhs, float rhs) noexcept
 
template<typename CRTP, typename C, size_t R>
CRTP operator* (float lhs, vecN< CRTP, C, R > rhs) noexcept
 
template<typename CRTP, typename C, size_t R>
CRTP operator/ (vecN< CRTP, C, R > lhs, float rhs) noexcept
 
template<typename CRTP, typename C, size_t R>
CRTP operator/ (float lhs, vecN< CRTP, C, R > rhs) noexcept
 
Hyperbolic Functions

Trigonometric functions for hyperbolas

float sinhf (float x) noexcept
 
float coshf (float x) noexcept
 
float tanhf (float x) noexcept
 
float cschf (float x) noexcept
 
float sechf (float x) noexcept
 
float cothf (float x) noexcept
 
Inverse Hyperbolic Functions

Inverse trigonometric functions for hyperbolas

float asinhf (float x) noexcept
 
float acoshf (float x) noexcept
 
float atanhf (float x) noexcept
 
float acschf (float x) noexcept
 
float asechf (float x) noexcept
 
float acothf (float x) noexcept
 

Variables

constexpr auto circle_matrix
 
constexpr auto dcache_alloc_line
 
constexpr auto memcpy
 
constexpr auto memcpy1
 
constexpr auto memcpy2
 
constexpr auto memcpy4
 
constexpr auto memcpy8
 
constexpr auto memset8
 
constexpr auto memcpy32
 
constexpr auto memcpy64
 
constexpr auto memcpy2_16
 
constexpr auto memset2_16
 
constexpr auto memcpy4_16
 
constexpr auto memswap32_1
 
constexpr auto memswap32_1_xmtrx
 
constexpr auto sq_memcpy32
 
constexpr auto sq_memcpy32_xmtrx
 
constexpr auto sq_memcpy32_1
 
constexpr auto sq_memcpy32_1_xmtrx
 
constexpr float fipr_max_error
 
constexpr float pi_f
 
constexpr float pi_f_2
 
constexpr float pi_f_4
 
constexpr float fsca_rad_factor
 
constexpr float fsca_deg_factor
 
Comparisons

Routines for comparing and classifying floating-point values.

constexpr auto fminf
 
constexpr auto fmaxf
 
constexpr auto equalf
 
constexpr auto equalf_abs
 
constexpr auto equalf_rel
 
Rounding

Routines for rounding floats.

constexpr auto floorf
 
constexpr auto ceilf
 
constexpr auto roundf
 
constexpr auto truncf
 
constexpr auto remainderf
 
constexpr auto fmodf
 
constexpr auto remquof
 
Mapping

Routines for mapping a number to another range.

constexpr auto clampf
 
constexpr auto normalizef
 
constexpr auto normalizef_fsrra
 
constexpr auto remapf
 
constexpr auto remapf_fsrra
 
constexpr auto wrapf
 
constexpr auto wrapf_fsrra
 
constexpr auto fractf
 
constexpr auto signf
 
constexpr auto saturatef
 
FSRRA

Routines built around fast reciprocal square root.

constexpr auto inv_sqrtf_fsrra
 
constexpr auto inv_sqrtf
 
constexpr auto sqrtf_fsrra
 
constexpr auto sqrtf
 
constexpr auto invf_fsrra
 
constexpr auto invf
 
constexpr auto divf_fsrra
 
constexpr auto divf
 
FIPR

Routines built around fast 4D dot product.

constexpr auto dot6f
 
constexpr auto dot8f
 
constexpr auto mag_sqr3f
 
constexpr auto mag_sqr4f
 
Transcendental

Routines for accelerating transcendental functions.

constexpr auto pow2f
 
constexpr auto powf
 
constexpr auto pow10f
 
constexpr auto log2f
 
constexpr auto logf
 
constexpr auto log10f
 
constexpr auto expf
 
Sine/Cosine pairs

Routines operating on pairs of sine and cosine values.

constexpr auto sincosu16
 
constexpr auto sincosf
 
constexpr auto sincosf_deg
 
constexpr auto sincos_tanf
 
constexpr auto sincos_secf
 
constexpr auto sincos_cscf
 
constexpr auto sincos_cotf
 
One-off Trig Functions

Routines for calculating results of single trig functions.

constexpr auto sinf
 
constexpr auto sinf_deg
 
constexpr auto cosf
 
constexpr auto cosf_deg
 
constexpr auto tanf
 
constexpr auto tanf_deg
 
constexpr auto secf
 
constexpr auto secf_deg
 
constexpr auto cscf
 
constexpr auto cscf_deg
 
constexpr auto cotf
 
constexpr auto cotf_deg
 
Inverse Trig Functions

Routines for calculating results of inverse trig functions.

constexpr auto atanf_unit
 
constexpr auto atanf_q1
 
constexpr auto atanf
 
constexpr auto atan2f
 
constexpr auto asinf
 
constexpr auto acosf
 
constexpr auto asecf
 
constexpr auto acscf
 
constexpr auto acotf
 

Miscellaneous

Fast versions of miscellaneous FP routines.

constexpr auto fabsf
 
constexpr auto copysignf
 
constexpr auto fmaf
 
constexpr auto fdimf
 
constexpr auto hypotf
 
constexpr auto lerpf
 
constexpr auto barycentric_lerpf
 
constexpr auto quadratic_roots
 
constexpr auto randf
 
constexpr auto randf_range
 
constexpr auto stepf
 
constexpr auto smoothstepf
 
constexpr auto smoothstepf_safe
 
float cbrtf (float x) noexcept
 

Detailed Description

Namespace enclosing the SH4ZAM C++ API.

Typedef Documentation

◆ alias_int16_t

int16_t type whose value may be aliased as another type.

Definition at line 29 of file shz_cdefs.hpp.

◆ alias_uint16_t

uint16_t type whose value may be aliased as another type.

Definition at line 31 of file shz_cdefs.hpp.

◆ alias_int32_t

int32_t type whose value may be aliased as another type.

Definition at line 33 of file shz_cdefs.hpp.

◆ alias_uint32_t

uint32_t type whose value may be aliased as another type.

Definition at line 35 of file shz_cdefs.hpp.

◆ alias_float_t

float type whose value may be aliased as another type.

Definition at line 37 of file shz_cdefs.hpp.

◆ alias_int64_t

int64_t type whose value may be aliased as another type.

Definition at line 39 of file shz_cdefs.hpp.

◆ alias_uint64_t

uint64_t type whose value may be aliased as another type.

Definition at line 41 of file shz_cdefs.hpp.

◆ alias_double_t

double type whose value may be aliased as another type.

Definition at line 43 of file shz_cdefs.hpp.

◆ mat4x4_t

Alternate mat4x4 C++ alias for those who like POSIX style.

Definition at line 482 of file shz_matrix.hpp.

◆ quat_t

using shz::quat_t

Alternate C++ alias for quat, for those who like POSIX style.

Definition at line 262 of file shz_quat.hpp.

◆ sincos_t

C++ alias for sincos for those who like POSIX-style typenames.

Definition at line 82 of file shz_trig.hpp.

◆ vec2_t

using shz::vec2_t

C++ alias for vec2 for those who like POSIX-style.

Definition at line 435 of file shz_vector.hpp.

◆ vec3_t

using shz::vec3_t

C++ alias for vec3 for those who like POSIX-style.

Definition at line 536 of file shz_vector.hpp.

◆ vec4_t

using shz::vec4_t

C++ alias for vec4 for those who like POSIX-style.s.

Definition at line 607 of file shz_vector.hpp.

Function Documentation

◆ memcpy128()

void * shz::memcpy128 ( void * dst,
const void * src,
size_t bytes )
inlinenoexcept

C++ wrapper around shz_memcpy128().

Definition at line 29 of file shz_mem.hpp.

29 {
30 return shz_memcpy128(dst, src, bytes);
31 }
void * shz_memcpy128(void *SHZ_RESTRICT dst, const void *SHZ_RESTRICT src, size_t bytes) SHZ_NOEXCEPT
Specialized memcpy() variant for copying multiples of 128 bytes.

◆ cbrtf()

float shz::cbrtf ( float x)
noexcept

C++ wrapper for shz_cbrtf().

Definition at line 98 of file shz_scalar.hpp.

98{ return shz_cbrtf(x); }
float shz_cbrtf(float x) SHZ_NOEXCEPT
Replacement for the <math.h> routine, cbrtf().

◆ deg_to_rad()

float shz::deg_to_rad ( float deg)
constexprnoexcept

Converts degrees to radians.

Definition at line 33 of file shz_trig.hpp.

33{ return SHZ_DEG_TO_RAD(deg); }
#define SHZ_DEG_TO_RAD(deg)
Converts the given angle in degrees to radians.
Definition shz_trig.h:40

◆ rad_to_deg()

float shz::rad_to_deg ( float rad)
constexprnoexcept

Converts radians to degrees.

Definition at line 35 of file shz_trig.hpp.

35{ return SHZ_RAD_TO_DEG(rad); }
#define SHZ_RAD_TO_DEG(rad)
Converts the given angle in radians to degrees.
Definition shz_trig.h:42

◆ sinhf()

float shz::sinhf ( float x)
noexcept

C++ wrapper around shz_sinhf().

Definition at line 171 of file shz_trig.hpp.

171{ return shz_sinhf(x); }
float shz_sinhf(float x) SHZ_NOEXCEPT
Fast hyperbolic sine function.

◆ coshf()

float shz::coshf ( float x)
noexcept

C++ wrapper around shz_coshf().

Definition at line 173 of file shz_trig.hpp.

173{ return shz_coshf(x); }
float shz_coshf(float x) SHZ_NOEXCEPT
Fast hyperbolic cosine function.

◆ tanhf()

float shz::tanhf ( float x)
noexcept

C++ wrapper around shz_tanhf().

Definition at line 175 of file shz_trig.hpp.

175{ return shz_tanhf(x); }
float shz_tanhf(float x) SHZ_NOEXCEPT
Fast hyperbolic tangent function.

◆ cschf()

float shz::cschf ( float x)
noexcept

C++ wrapper around shz_cschf().

Definition at line 177 of file shz_trig.hpp.

177{ return shz_cschf(x); }
float shz_cschf(float x) SHZ_NOEXCEPT
Fast hyperbolic cosecant function.

◆ sechf()

float shz::sechf ( float x)
noexcept

C++ wrapper around shz_sechf().

Definition at line 179 of file shz_trig.hpp.

179{ return shz_sechf(x); }
float shz_sechf(float x) SHZ_NOEXCEPT
Fast hyperbolic secant function.

◆ cothf()

float shz::cothf ( float x)
noexcept

C++ wrapper around shz_cothf().

Definition at line 181 of file shz_trig.hpp.

181{ return shz_cothf(x); }
float shz_cothf(float x) SHZ_NOEXCEPT
Fast hyperbolic cotangent function.

◆ asinhf()

float shz::asinhf ( float x)
noexcept

C++ wrapper around shz_asinhf().

Definition at line 191 of file shz_trig.hpp.

191{ return shz_asinhf(x); }
float shz_asinhf(float x) SHZ_NOEXCEPT
Fast hyperbolic arcsine function.

◆ acoshf()

float shz::acoshf ( float x)
noexcept

C++ wrapper around shz_acoshf().

Definition at line 193 of file shz_trig.hpp.

193{ return shz_acoshf(x); }
float shz_acoshf(float x) SHZ_NOEXCEPT
Fast hyperbolic arccosine function.

◆ atanhf()

float shz::atanhf ( float x)
noexcept

C++ wrapper around shz_atanhf().

Definition at line 195 of file shz_trig.hpp.

195{ return shz_atanhf(x); }
float shz_atanhf(float x) SHZ_NOEXCEPT
Fast hyperbolic arctangent function.

◆ acschf()

float shz::acschf ( float x)
noexcept

C++ wrapper around shz_acscf().

Definition at line 197 of file shz_trig.hpp.

197{ return shz_acschf(x); }
float shz_acschf(float x) SHZ_NOEXCEPT
Fast hyperbolic arccosecant function.

◆ asechf()

float shz::asechf ( float x)
noexcept

C++ wrapper around shz_asechf().

Definition at line 199 of file shz_trig.hpp.

199{ return shz_asechf(x); }
float shz_asechf(float x) SHZ_NOEXCEPT
Fast hyperbolic arcsecant function.

◆ acothf()

float shz::acothf ( float x)
noexcept

C++ wrapper around shz_acothf().

Definition at line 201 of file shz_trig.hpp.

201{ return shz_acothf(x); }
float shz_acothf(float x) SHZ_NOEXCEPT
Fast hyperbolic arccotangent function.

◆ operator+()

template<typename CRTP, typename C, size_t R>
CRTP shz::operator+ ( vecN< CRTP, C, R > lhs,
vecN< CRTP, C, R > rhs )
noexcept

Overloaded addition operator, adding two vectors together and returning the result.

Definition at line 339 of file shz_vector.hpp.

339 {
340 return shz_vec_add(lhs, rhs);
341}
#define shz_vec_add(vec1, vec2)
C type-generic vector addition.
Definition shz_vector.h:743

◆ operator-()

template<typename CRTP, typename C, size_t R>
CRTP shz::operator- ( vecN< CRTP, C, R > lhs,
vecN< CRTP, C, R > rhs )
noexcept

Overloaded subtraction operator, subtracting one vector from another, returning the result.

Definition at line 345 of file shz_vector.hpp.

345 {
346 return shz_vec_sub(lhs, rhs);
347}
#define shz_vec_sub(vec1, vec2)
C type-generic vector subtraction.
Definition shz_vector.h:750

◆ operator*() [1/3]

template<typename CRTP, typename C, size_t R>
CRTP shz::operator* ( vecN< CRTP, C, R > lhs,
vecN< CRTP, C, R > rhs )
noexcept

Overloaded multiplication operator, performing element-wise multiplication between two vectors, returning the resultant vector.

Definition at line 351 of file shz_vector.hpp.

351 {
352 return shz_vec_mul(lhs, rhs);
353}
#define shz_vec_mul(vec1, vec2)
C type-generic vector multiplication.
Definition shz_vector.h:757

◆ operator/() [1/3]

template<typename CRTP, typename C, size_t R>
CRTP shz::operator/ ( vecN< CRTP, C, R > lhs,
vecN< CRTP, C, R > rhs )
noexcept

Overloaded division operator, returning the resulting vector from component-wise dividing the elements of lhs by rhs.

Definition at line 357 of file shz_vector.hpp.

357 {
358 return shz_vec_div(lhs, rhs);
359}
#define shz_vec_div(vec1, vec2)
C type-generic vector division.
Definition shz_vector.h:764

◆ operator*() [2/3]

template<typename CRTP, typename C, size_t R>
CRTP shz::operator* ( vecN< CRTP, C, R > lhs,
float rhs )
noexcept

Overloaded multiplication operator for scaling a vector by a scalar and returning the resulting vector.

Definition at line 363 of file shz_vector.hpp.

363 {
364 return shz_vec_scale(lhs, rhs);
365}
#define shz_vec_scale(vec, factor)
C type-generic vector scaling.
Definition shz_vector.h:771

◆ operator*() [3/3]

template<typename CRTP, typename C, size_t R>
CRTP shz::operator* ( float lhs,
vecN< CRTP, C, R > rhs )
noexcept

Reverse overloaded multiplication operator for scaling a vector by a scalar and returning the resulting vector.

Definition at line 369 of file shz_vector.hpp.

369 {
370 return shz_vec_scale(rhs, lhs);
371}

◆ operator/() [2/3]

template<typename CRTP, typename C, size_t R>
CRTP shz::operator/ ( vecN< CRTP, C, R > lhs,
float rhs )
noexcept

Overloaded division operator for component-wise dividing each element of the given vector by the given scalar.

Definition at line 375 of file shz_vector.hpp.

375 {
376 return shz_vec_scale(lhs, shz::invf(rhs));
377}
constexpr auto invf
C++ alias for shz_invf().

◆ operator/() [3/3]

template<typename CRTP, typename C, size_t R>
CRTP shz::operator/ ( float lhs,
vecN< CRTP, C, R > rhs )
noexcept

Reverse overloaded division operator for component-wise dividing each element of the given vector by the given scalar.

Definition at line 381 of file shz_vector.hpp.

381 {
382 return shz_vec_div(CRTP(lhs), rhs);
383}

Variable Documentation

◆ circle_matrix

auto shz::circle_matrix
constexpr

C++ wrapper around shz_circle_matrix.

Definition at line 17 of file shz_circle.hpp.

◆ dcache_alloc_line

auto shz::dcache_alloc_line
constexpr

Definition at line 17 of file shz_mem.hpp.

◆ memcpy

auto shz::memcpy
constexpr

Definition at line 19 of file shz_mem.hpp.

◆ memcpy1

auto shz::memcpy1
constexpr

Definition at line 20 of file shz_mem.hpp.

◆ memcpy2

auto shz::memcpy2
constexpr

Definition at line 21 of file shz_mem.hpp.

◆ memcpy4

auto shz::memcpy4
constexpr

Definition at line 22 of file shz_mem.hpp.

◆ memcpy8

auto shz::memcpy8
constexpr

Definition at line 23 of file shz_mem.hpp.

◆ memset8

auto shz::memset8
constexpr

Definition at line 24 of file shz_mem.hpp.

◆ memcpy32

auto shz::memcpy32
constexpr

Definition at line 25 of file shz_mem.hpp.

◆ memcpy64

auto shz::memcpy64
constexpr

Definition at line 26 of file shz_mem.hpp.

◆ memcpy2_16

auto shz::memcpy2_16
constexpr

Definition at line 33 of file shz_mem.hpp.

◆ memset2_16

auto shz::memset2_16
constexpr

Definition at line 34 of file shz_mem.hpp.

◆ memcpy4_16

auto shz::memcpy4_16
constexpr

Definition at line 35 of file shz_mem.hpp.

◆ memswap32_1

auto shz::memswap32_1
constexpr

Definition at line 37 of file shz_mem.hpp.

◆ memswap32_1_xmtrx

auto shz::memswap32_1_xmtrx
constexpr

Definition at line 38 of file shz_mem.hpp.

◆ sq_memcpy32

auto shz::sq_memcpy32
constexpr

Definition at line 40 of file shz_mem.hpp.

◆ sq_memcpy32_xmtrx

auto shz::sq_memcpy32_xmtrx
constexpr

Definition at line 41 of file shz_mem.hpp.

◆ sq_memcpy32_1

auto shz::sq_memcpy32_1
constexpr

Definition at line 42 of file shz_mem.hpp.

◆ sq_memcpy32_1_xmtrx

auto shz::sq_memcpy32_1_xmtrx
constexpr

Definition at line 43 of file shz_mem.hpp.

◆ fipr_max_error

float shz::fipr_max_error
constexpr

Definition at line 19 of file shz_scalar.hpp.

◆ fminf

auto shz::fminf
constexpr

C++ alias for shz_fminf()

Definition at line 26 of file shz_scalar.hpp.

◆ fmaxf

auto shz::fmaxf
constexpr

C++ alias for shz_fmaxf()

Definition at line 28 of file shz_scalar.hpp.

◆ equalf

auto shz::equalf
constexpr

C++ alias for shz_equalf()

Definition at line 30 of file shz_scalar.hpp.

◆ equalf_abs

auto shz::equalf_abs
constexpr

C++ alias for shz_equalf_abs()

Definition at line 32 of file shz_scalar.hpp.

◆ equalf_rel

auto shz::equalf_rel
constexpr

C++ alias for shz_equalf_rel()

Definition at line 34 of file shz_scalar.hpp.

◆ floorf

auto shz::floorf
constexpr

C++ alias for shz_floorf().

Definition at line 42 of file shz_scalar.hpp.

◆ ceilf

auto shz::ceilf
constexpr

C++ alias for shz_ceilf().

Definition at line 44 of file shz_scalar.hpp.

◆ roundf

auto shz::roundf
constexpr

C++ alias for shz_roundf().

Definition at line 46 of file shz_scalar.hpp.

◆ truncf

auto shz::truncf
constexpr

C++ alias for shz_truncf().

Definition at line 48 of file shz_scalar.hpp.

◆ remainderf

auto shz::remainderf
constexpr

C++ alias for shz_remainderf().

Definition at line 50 of file shz_scalar.hpp.

◆ fmodf

auto shz::fmodf
constexpr

C++ alias for shz_fmodf().

Definition at line 52 of file shz_scalar.hpp.

◆ remquof

auto shz::remquof
constexpr

C++ alias for shz_remquof().

Definition at line 54 of file shz_scalar.hpp.

◆ clampf

auto shz::clampf
constexpr

C++ alias for shz_clampf().

Definition at line 62 of file shz_scalar.hpp.

◆ normalizef

auto shz::normalizef
constexpr

C++ alias for shz_normalizef().

Definition at line 64 of file shz_scalar.hpp.

◆ normalizef_fsrra

auto shz::normalizef_fsrra
constexpr

C++ alias for shz_normalizef_fsrra().

Definition at line 66 of file shz_scalar.hpp.

◆ remapf

auto shz::remapf
constexpr

C++ alias for shz_remapf().

Definition at line 68 of file shz_scalar.hpp.

◆ remapf_fsrra

auto shz::remapf_fsrra
constexpr

C++ alias for shz_remapf_fsrra().

Definition at line 70 of file shz_scalar.hpp.

◆ wrapf

auto shz::wrapf
constexpr

C++ alias for shz_wrapf().

Definition at line 72 of file shz_scalar.hpp.

◆ wrapf_fsrra

auto shz::wrapf_fsrra
constexpr

C++ alias for shz_wrapf_fsrra().

Definition at line 74 of file shz_scalar.hpp.

◆ fractf

auto shz::fractf
constexpr

C++ alias for shz_fractf().

Definition at line 76 of file shz_scalar.hpp.

◆ signf

auto shz::signf
constexpr

C++ alias for shz_signf().

Definition at line 78 of file shz_scalar.hpp.

◆ saturatef

auto shz::saturatef
constexpr

C++ alias for shz_saturatef().

Definition at line 80 of file shz_scalar.hpp.

◆ fabsf

auto shz::fabsf
constexpr

C++ alias for shz_fabsf().

Definition at line 88 of file shz_scalar.hpp.

◆ copysignf

auto shz::copysignf
constexpr

C++ alias for shz_copysignf().

Definition at line 90 of file shz_scalar.hpp.

◆ fmaf

auto shz::fmaf
constexpr

C++ alias for shz_fmacf().

Definition at line 92 of file shz_scalar.hpp.

◆ fdimf

auto shz::fdimf
constexpr

C++ alias for shz_fdimf().

Definition at line 94 of file shz_scalar.hpp.

◆ hypotf

auto shz::hypotf
constexpr

C++ alias for shz_hypotf().

Definition at line 96 of file shz_scalar.hpp.

◆ lerpf

auto shz::lerpf
constexpr

C++ alias for shz_lerpf().

Definition at line 100 of file shz_scalar.hpp.

◆ barycentric_lerpf

auto shz::barycentric_lerpf
constexpr

C++ alias for shz_barycentric_lerpf().

Definition at line 102 of file shz_scalar.hpp.

◆ quadratic_roots

auto shz::quadratic_roots
constexpr

C++ alias for shz_quadratic_roots().

Definition at line 104 of file shz_scalar.hpp.

◆ randf

auto shz::randf
constexpr

C++ alias for shz_randf().

Definition at line 106 of file shz_scalar.hpp.

◆ randf_range

auto shz::randf_range
constexpr

C++ alias for shz_randf_range()

Definition at line 108 of file shz_scalar.hpp.

◆ stepf

auto shz::stepf
constexpr

C++ alias for shz_stepf()

Definition at line 110 of file shz_scalar.hpp.

◆ smoothstepf

auto shz::smoothstepf
constexpr

C++ alias for shz_smoothstepf()

Definition at line 112 of file shz_scalar.hpp.

◆ smoothstepf_safe

auto shz::smoothstepf_safe
constexpr

C++ alias for shz_smoothstepf_safe()

Definition at line 114 of file shz_scalar.hpp.

◆ inv_sqrtf_fsrra

auto shz::inv_sqrtf_fsrra
constexpr

C++ alias for shz_inv_sqrtf_fsrra().

Definition at line 123 of file shz_scalar.hpp.

◆ inv_sqrtf

auto shz::inv_sqrtf
constexpr

C++ alias for shz_inv_sqrtf().

Definition at line 125 of file shz_scalar.hpp.

◆ sqrtf_fsrra

auto shz::sqrtf_fsrra
constexpr

C++ alias for shz_sqrtf_fsrra().

Definition at line 127 of file shz_scalar.hpp.

◆ sqrtf

auto shz::sqrtf
constexpr

C++ alias for shz_sqrtf().

Definition at line 129 of file shz_scalar.hpp.

◆ invf_fsrra

auto shz::invf_fsrra
constexpr

C++ alias for shz_invf_fsrra().

Definition at line 131 of file shz_scalar.hpp.

◆ invf

auto shz::invf
constexpr

C++ alias for shz_invf().

Definition at line 133 of file shz_scalar.hpp.

◆ divf_fsrra

auto shz::divf_fsrra
constexpr

C++ alias for shz_divf_fsrra().

Definition at line 135 of file shz_scalar.hpp.

◆ divf

auto shz::divf
constexpr

C++ alias for shz_divf().

Definition at line 137 of file shz_scalar.hpp.

◆ dot6f

auto shz::dot6f
constexpr

C++ alias for shz_dot6f().

Definition at line 145 of file shz_scalar.hpp.

◆ dot8f

auto shz::dot8f
constexpr

C++ alias for shz_dot8f().

Definition at line 147 of file shz_scalar.hpp.

◆ mag_sqr3f

auto shz::mag_sqr3f
constexpr

C++ alias for shz_mag_sqr3f().

Definition at line 149 of file shz_scalar.hpp.

◆ mag_sqr4f

auto shz::mag_sqr4f
constexpr

C++ alias for shz_mag_sqr4f().

Definition at line 151 of file shz_scalar.hpp.

◆ pow2f

auto shz::pow2f
constexpr

C++ alias for shz_pow2f().

Definition at line 159 of file shz_scalar.hpp.

◆ powf

auto shz::powf
constexpr

C++ alias for shz_powf().

Definition at line 161 of file shz_scalar.hpp.

◆ pow10f

auto shz::pow10f
constexpr

C++ alias for shz_pow10f().

Definition at line 163 of file shz_scalar.hpp.

◆ log2f

auto shz::log2f
constexpr

C++ alias for shz_log2f().

Definition at line 165 of file shz_scalar.hpp.

◆ logf

auto shz::logf
constexpr

C++ alias for shz_logf().

Definition at line 167 of file shz_scalar.hpp.

◆ log10f

auto shz::log10f
constexpr

C++ alias for shz_log10f().

Definition at line 169 of file shz_scalar.hpp.

◆ expf

auto shz::expf
constexpr

Definition at line 171 of file shz_scalar.hpp.

◆ pi_f

float shz::pi_f
constexpr

Floating-point constant approximation for Pi.

Definition at line 22 of file shz_trig.hpp.

◆ pi_f_2

float shz::pi_f_2
constexpr

Floating-point constant approximation for Pi/2.

Definition at line 24 of file shz_trig.hpp.

◆ pi_f_4

float shz::pi_f_4
constexpr

Floating-point constant approximation for Pi/4.

Definition at line 26 of file shz_trig.hpp.

◆ fsca_rad_factor

float shz::fsca_rad_factor
constexpr

Scaling factor used to scale the input to FSCA from radians.

Definition at line 28 of file shz_trig.hpp.

◆ fsca_deg_factor

float shz::fsca_deg_factor
constexpr

Scaling factor used to scale the input to FSCA from degrees.

Definition at line 30 of file shz_trig.hpp.

◆ sincosu16

auto shz::sincosu16
constexpr

C++ wrapper around shz_sincosu16().

Definition at line 90 of file shz_trig.hpp.

◆ sincosf

auto shz::sincosf
constexpr

C++ wrapper around shz_sincosf().

Definition at line 92 of file shz_trig.hpp.

◆ sincosf_deg

auto shz::sincosf_deg
constexpr

C++ wrapper around shz_sincosf_deg().

Definition at line 94 of file shz_trig.hpp.

◆ sincos_tanf

auto shz::sincos_tanf
constexpr

C++ wrapper around shz_sincos_tanf().

Definition at line 96 of file shz_trig.hpp.

◆ sincos_secf

auto shz::sincos_secf
constexpr

C++ wrapper around shz_sincos_secf().

Definition at line 98 of file shz_trig.hpp.

◆ sincos_cscf

auto shz::sincos_cscf
constexpr

C++ wrapper around shz_sincos_cscf().

Definition at line 100 of file shz_trig.hpp.

◆ sincos_cotf

auto shz::sincos_cotf
constexpr

C++ wrapper around shz_sincos_cotf().

Definition at line 102 of file shz_trig.hpp.

◆ sinf

auto shz::sinf
constexpr

C++ wrapper around shz_sinf().

Definition at line 112 of file shz_trig.hpp.

◆ sinf_deg

auto shz::sinf_deg
constexpr

C++ wrapper around shz_sinf_deg().

Definition at line 114 of file shz_trig.hpp.

◆ cosf

auto shz::cosf
constexpr

C++ wrapper around shz_cosf().

Definition at line 116 of file shz_trig.hpp.

◆ cosf_deg

auto shz::cosf_deg
constexpr

C++ wrapper around shz_cosf_deg().

Definition at line 118 of file shz_trig.hpp.

◆ tanf

auto shz::tanf
constexpr

C++ wrapper around shz_tanf().

Definition at line 120 of file shz_trig.hpp.

◆ tanf_deg

auto shz::tanf_deg
constexpr

C++ wrapper around shz_tanf_deg().

Definition at line 122 of file shz_trig.hpp.

◆ secf

auto shz::secf
constexpr

C++ wrapper around shz_secf().

Definition at line 124 of file shz_trig.hpp.

◆ secf_deg

auto shz::secf_deg
constexpr

C++ wrapper around shz_secf_deg().

Definition at line 126 of file shz_trig.hpp.

◆ cscf

auto shz::cscf
constexpr

C++ wrapper around shz_cscf().

Definition at line 128 of file shz_trig.hpp.

◆ cscf_deg

auto shz::cscf_deg
constexpr

C++ wrapper around shz_cscf_deg().

Definition at line 130 of file shz_trig.hpp.

◆ cotf

auto shz::cotf
constexpr

C++ wrapper around shz_cotf().

Definition at line 132 of file shz_trig.hpp.

◆ cotf_deg

auto shz::cotf_deg
constexpr

C++ wrapper around shz_cotf_deg().

Definition at line 134 of file shz_trig.hpp.

◆ atanf_unit

auto shz::atanf_unit
constexpr

C++ wrapper around shz_atanf_unit().

Definition at line 144 of file shz_trig.hpp.

◆ atanf_q1

auto shz::atanf_q1
constexpr

C++ wrapper around shz_atanf_q1().

Definition at line 146 of file shz_trig.hpp.

◆ atanf

auto shz::atanf
constexpr

C++ wrapper around shz_atanf().

Definition at line 148 of file shz_trig.hpp.

◆ atan2f

auto shz::atan2f
constexpr

C++ wrapper around shz_atan2f().

Definition at line 150 of file shz_trig.hpp.

◆ asinf

auto shz::asinf
constexpr

C++ wrapper around shz_asinf().

Definition at line 152 of file shz_trig.hpp.

◆ acosf

auto shz::acosf
constexpr

C++ wrapper around shz_acosf().

Definition at line 154 of file shz_trig.hpp.

◆ asecf

auto shz::asecf
constexpr

C++ wrapper around shz_asecf().

Definition at line 156 of file shz_trig.hpp.

◆ acscf

auto shz::acscf
constexpr

C++ wrapper around shz_acscf().

Definition at line 158 of file shz_trig.hpp.

◆ acotf

auto shz::acotf
constexpr

C++ wrapper around shz_acotf().

Definition at line 160 of file shz_trig.hpp.