HDK
|
#include <VM_Math.h>
Public Member Functions | |
VM_DECL_vIvIvI (bor, d[n]=a[n]|b[n]) VM_DECL_vIvIuI(bor | |
Bitwise operations. More... | |
VM_DECL_WP (uint8, wpoint,::wpoint< uint8 >(d[n], a[n], b, c, e+0.5F)) | |
VM_DECL_WP (uint16, wpoint,::wpoint< uint16 >(d[n], a[n], b, c, e+0.5F)) | |
VM_DECL_IWP (fpreal32, iwpoint,::iwpoint< fpreal32 >(d[n], a[n], 1.0F/b, e)) | |
VM_Math::iwpoint(d,a,b,e) := d[i] = (fpreal32)(a[i]-e)/b;. More... | |
VM_DECL_IWP (uint8, iwpoint,::iwpoint< uint8 >(d[n], a[n], 1.0F/b, e)) | |
VM_DECL_IWP (uint16, iwpoint,::iwpoint< uint16 >(d[n], a[n], 1.0F/b, e)) | |
VM_DECL_vFuF (set, d[n]=a) VM_SIV set(int32 *d | |
VM_Math::set(d, a) := d[i] = a. More... | |
int exint num | for (exint n=0;n< num;n++) d[n] |
VM_SIV | set (fpreal32 *d, const fpreal32 *a, exint num, const uint32 *disabled) |
VM_Math::set(d, a, disabled) := d[i] = disabled[i] ? d[i] : a[i]. More... | |
VM_SIV | set (int32 *d, const int32 *a, exint num, const uint32 *disabled) |
VM_SIV | set (fpreal32 *d, fpreal32 a, exint num, const uint32 *disabled) |
VM_SIV | set (int32 *d, int32 a, exint num, const uint32 *disabled) |
VM_SIMDFUNC (static void setSIMD(int32 *d, int32 a, exint num, const uint32 *disabled)) VM_SIV swap(fpreal32 *a | |
else | swapSISD (a, b, num) |
VM_SIV | swap (fpreal64 *a, fpreal64 *b, exint num) |
template<typename T > | |
VM_SIV | swapSISD (T *a, T *b, exint num) |
VM_SIV | lerp (fpreal32 *d, const fpreal32 *a, const fpreal32 *b, const fpreal32 *t, exint num) |
VM_Math::lerp(d, a, b, t) := d[i] = a[i] + (b[i]-a[i])*t[i]. More... | |
VM_SIV | lerp (fpreal32 *d, const fpreal32 *a, const fpreal32 *b, fpreal32 t, exint num) |
Static Public Member Functions | |
static bool | isSIMD () |
static void | mulRowVec44 (fpreal32 *v4, const fpreal32 m1[4][4], exint nv, const uint32 *enable_flags=0) |
static void | mulRowVec34 (fpreal32 *v3, const fpreal32 m1[4][4], exint nv, const uint32 *enable_flags=0) |
static void | mulColVec44 (fpreal32 *v4, const fpreal32 m1[4][4], exint nv, const uint32 *enable_flags=0) |
static void | mulColVec34 (fpreal32 *v3, const fpreal32 m1[4][4], exint nv, const uint32 *enable_flags=0) |
static void | mulRowVec44_3 (fpreal32 *v4, const fpreal32 m1[4][4], exint nv, const uint32 *enable_flags=0) |
Multiplication, but treating the matrix as a 3x3 (i.e. no translate) More... | |
static void | mulRowVec34_3 (fpreal32 *v3, const fpreal32 m1[4][4], exint nv, const uint32 *enable_flags=0) |
static void | mulColVec44_3 (fpreal32 *v4, const fpreal32 m1[4][4], exint nv, const uint32 *enable_flags=0) |
static void | mulColVec34_3 (fpreal32 *v3, const fpreal32 m1[4][4], exint nv, const uint32 *enable_flags=0) |
static void | vadd4u4 (fpreal32 *v4, const fpreal32 a[4], exint nv, const uint32 *enable_flags=0) |
static void | vsub4u4 (fpreal32 *v4, const fpreal32 a[4], exint nv, const uint32 *enable_flags=0) |
static void | vmul4u4 (fpreal32 *v4, const fpreal32 a[4], exint nv, const uint32 *enable_flags=0) |
static void | forceSIMD (bool onoff) |
Public Attributes | |
d [n] | |
int | a |
fpreal32 * | b |
fpreal32 exint | num |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
Vector Functions. The following methods assume that the values coming in are "vectors". The mnemonics are: 3 - Vector3 or Matrix3 4 - Vector4 or Matrix4 The enable_flags are an array corresponding 1-1 to the vectors to be processed. Unlike typical flags, the vector will be processed if the flag is set to 0. This is to match the VEX style calling. If the VEX processor mask flag changes, the mask type here should change too.
|
static |
Multiplication, but treating the matrix as a 3x3 (i.e. no translate)
|
static |
VM_Math::iwpoint(d,a,b,e) := d[i] = (fpreal32)(a[i]-e)/b;.
Bitwise operations.
The fast operations assume that any non-zero return value is interpreted as true. Standard operations always set the result to either 0 or 1.
VM_Math::lt(d, a, b) := d[i] = a[i] < b[i] VM_Math::lt(d, a, b) := d[i] = a[i] < b VM_Math::fastlt(d, a, b) := d[i] = a[i] < b[i] VM_Math::fastlt(d, a, b) := d[i] = a[i] < b
VM_Math::VM_SIMDFUNC | ( | static void | setSIMDint32 *d, int32 a, exint num,const uint32 *disabled | ) |
|
static |
|
static |