Bullet Collision Detection & Physics Library
Classes | Functions | Variables
Vectormath::Aos Namespace Reference

Classes

class  Vector3
 
class  Vector4
 
class  Point3
 
class  Quat
 
class  Matrix3
 
class  Matrix4
 
class  Transform3
 

Functions

const Matrix3 transpose (const Matrix3 &mat)
 
const Matrix3 inverse (const Matrix3 &mat)
 
float determinant (const Matrix3 &mat)
 
const Matrix3 absPerElem (const Matrix3 &mat)
 
const Matrix3 operator* (float scalar, const Matrix3 &mat)
 
const Matrix3 mulPerElem (const Matrix3 &mat0, const Matrix3 &mat1)
 
const Matrix3 appendScale (const Matrix3 &mat, const Vector3 &scaleVec)
 
const Matrix3 prependScale (const Vector3 &scaleVec, const Matrix3 &mat)
 
const Matrix3 select (const Matrix3 &mat0, const Matrix3 &mat1, bool select1)
 
const Matrix4 transpose (const Matrix4 &mat)
 
const Matrix4 inverse (const Matrix4 &mat)
 
const Matrix4 affineInverse (const Matrix4 &mat)
 
const Matrix4 orthoInverse (const Matrix4 &mat)
 
float determinant (const Matrix4 &mat)
 
const Matrix4 absPerElem (const Matrix4 &mat)
 
const Matrix4 operator* (float scalar, const Matrix4 &mat)
 
const Matrix4 mulPerElem (const Matrix4 &mat0, const Matrix4 &mat1)
 
const Matrix4 appendScale (const Matrix4 &mat, const Vector3 &scaleVec)
 
const Matrix4 prependScale (const Vector3 &scaleVec, const Matrix4 &mat)
 
const Matrix4 select (const Matrix4 &mat0, const Matrix4 &mat1, bool select1)
 
const Transform3 inverse (const Transform3 &tfrm)
 
const Transform3 orthoInverse (const Transform3 &tfrm)
 
const Transform3 absPerElem (const Transform3 &tfrm)
 
const Transform3 mulPerElem (const Transform3 &tfrm0, const Transform3 &tfrm1)
 
const Transform3 appendScale (const Transform3 &tfrm, const Vector3 &scaleVec)
 
const Transform3 prependScale (const Vector3 &scaleVec, const Transform3 &tfrm)
 
const Transform3 select (const Transform3 &tfrm0, const Transform3 &tfrm1, bool select1)
 
const Matrix3 outer (const Vector3 &tfrm0, const Vector3 &tfrm1)
 
const Matrix4 outer (const Vector4 &tfrm0, const Vector4 &tfrm1)
 
const Vector3 rowMul (const Vector3 &vec, const Matrix3 &mat)
 
const Matrix3 crossMatrix (const Vector3 &vec)
 
const Matrix3 crossMatrixMul (const Vector3 &vec, const Matrix3 &mat)
 
const Quat lerp (float t, const Quat &quat0, const Quat &quat1)
 
const Quat slerp (float t, const Quat &unitQuat0, const Quat &unitQuat1)
 
const Quat squad (float t, const Quat &unitQuat0, const Quat &unitQuat1, const Quat &unitQuat2, const Quat &unitQuat3)
 
void loadXYZW (Quat &quat, const float *fptr)
 
void storeXYZW (const Quat &quat, float *fptr)
 
const Quat operator* (float scalar, const Quat &quat)
 
float dot (const Quat &quat0, const Quat &quat1)
 
float norm (const Quat &quat)
 
float length (const Quat &quat)
 
const Quat normalize (const Quat &quat)
 
const Vector3 rotate (const Quat &quat, const Vector3 &vec)
 
const Quat conj (const Quat &quat)
 
const Quat select (const Quat &quat0, const Quat &quat1, bool select1)
 
const Vector3 lerp (float t, const Vector3 &vec0, const Vector3 &vec1)
 
const Vector3 slerp (float t, const Vector3 &unitVec0, const Vector3 &unitVec1)
 
void loadXYZ (Vector3 &vec, const float *fptr)
 
void storeXYZ (const Vector3 &vec, float *fptr)
 
void loadHalfFloats (Vector3 &vec, const unsigned short *hfptr)
 
void storeHalfFloats (const Vector3 &vec, unsigned short *hfptr)
 
const Vector3 operator* (float scalar, const Vector3 &vec)
 
const Vector3 mulPerElem (const Vector3 &vec0, const Vector3 &vec1)
 
const Vector3 divPerElem (const Vector3 &vec0, const Vector3 &vec1)
 
const Vector3 recipPerElem (const Vector3 &vec)
 
const Vector3 sqrtPerElem (const Vector3 &vec)
 
const Vector3 rsqrtPerElem (const Vector3 &vec)
 
const Vector3 absPerElem (const Vector3 &vec)
 
const Vector3 copySignPerElem (const Vector3 &vec0, const Vector3 &vec1)
 
const Vector3 maxPerElem (const Vector3 &vec0, const Vector3 &vec1)
 
float maxElem (const Vector3 &vec)
 
const Vector3 minPerElem (const Vector3 &vec0, const Vector3 &vec1)
 
float minElem (const Vector3 &vec)
 
float sum (const Vector3 &vec)
 
float dot (const Vector3 &vec0, const Vector3 &vec1)
 
float lengthSqr (const Vector3 &vec)
 
float length (const Vector3 &vec)
 
const Vector3 normalize (const Vector3 &vec)
 
const Vector3 cross (const Vector3 &vec0, const Vector3 &vec1)
 
const Vector3 select (const Vector3 &vec0, const Vector3 &vec1, bool select1)
 
const Vector4 lerp (float t, const Vector4 &vec0, const Vector4 &vec1)
 
const Vector4 slerp (float t, const Vector4 &unitVec0, const Vector4 &unitVec1)
 
void loadXYZW (Vector4 &vec, const float *fptr)
 
void storeXYZW (const Vector4 &vec, float *fptr)
 
void loadHalfFloats (Vector4 &vec, const unsigned short *hfptr)
 
void storeHalfFloats (const Vector4 &vec, unsigned short *hfptr)
 
const Vector4 operator* (float scalar, const Vector4 &vec)
 
const Vector4 mulPerElem (const Vector4 &vec0, const Vector4 &vec1)
 
const Vector4 divPerElem (const Vector4 &vec0, const Vector4 &vec1)
 
const Vector4 recipPerElem (const Vector4 &vec)
 
const Vector4 sqrtPerElem (const Vector4 &vec)
 
const Vector4 rsqrtPerElem (const Vector4 &vec)
 
const Vector4 absPerElem (const Vector4 &vec)
 
const Vector4 copySignPerElem (const Vector4 &vec0, const Vector4 &vec1)
 
const Vector4 maxPerElem (const Vector4 &vec0, const Vector4 &vec1)
 
float maxElem (const Vector4 &vec)
 
const Vector4 minPerElem (const Vector4 &vec0, const Vector4 &vec1)
 
float minElem (const Vector4 &vec)
 
float sum (const Vector4 &vec)
 
float dot (const Vector4 &vec0, const Vector4 &vec1)
 
float lengthSqr (const Vector4 &vec)
 
float length (const Vector4 &vec)
 
const Vector4 normalize (const Vector4 &vec)
 
const Vector4 select (const Vector4 &vec0, const Vector4 &vec1, bool select1)
 
const Point3 lerp (float t, const Point3 &pnt0, const Point3 &pnt1)
 
void loadXYZ (Point3 &pnt, const float *fptr)
 
void storeXYZ (const Point3 &pnt, float *fptr)
 
void loadHalfFloats (Point3 &vec, const unsigned short *hfptr)
 
void storeHalfFloats (const Point3 &vec, unsigned short *hfptr)
 
const Point3 mulPerElem (const Point3 &pnt0, const Point3 &pnt1)
 
const Point3 divPerElem (const Point3 &pnt0, const Point3 &pnt1)
 
const Point3 recipPerElem (const Point3 &pnt)
 
const Point3 sqrtPerElem (const Point3 &pnt)
 
const Point3 rsqrtPerElem (const Point3 &pnt)
 
const Point3 absPerElem (const Point3 &pnt)
 
const Point3 copySignPerElem (const Point3 &pnt0, const Point3 &pnt1)
 
const Point3 maxPerElem (const Point3 &pnt0, const Point3 &pnt1)
 
float maxElem (const Point3 &pnt)
 
const Point3 minPerElem (const Point3 &pnt0, const Point3 &pnt1)
 
float minElem (const Point3 &pnt)
 
float sum (const Point3 &pnt)
 
const Point3 scale (const Point3 &pnt, float scaleVal)
 
const Point3 scale (const Point3 &pnt, const Vector3 &scaleVec)
 
float projection (const Point3 &pnt, const Vector3 &unitVec)
 
float distSqrFromOrigin (const Point3 &pnt)
 
float distFromOrigin (const Point3 &pnt)
 
float distSqr (const Point3 &pnt0, const Point3 &pnt1)
 
float dist (const Point3 &pnt0, const Point3 &pnt1)
 
const Point3 select (const Point3 &pnt0, const Point3 &pnt1, bool select1)
 
const Matrix3 operator* (const floatInVec &scalar, const Matrix3 &mat)
 
const Matrix3 select (const Matrix3 &mat0, const Matrix3 &mat1, const boolInVec &select1)
 
const Matrix4 operator* (const floatInVec &scalar, const Matrix4 &mat)
 
const Matrix4 select (const Matrix4 &mat0, const Matrix4 &mat1, const boolInVec &select1)
 
const Transform3 select (const Transform3 &tfrm0, const Transform3 &tfrm1, const boolInVec &select1)
 
const Quat lerp (const floatInVec &t, const Quat &quat0, const Quat &quat1)
 
const Quat slerp (const floatInVec &t, const Quat &unitQuat0, const Quat &unitQuat1)
 
const Quat squad (const floatInVec &t, const Quat &unitQuat0, const Quat &unitQuat1, const Quat &unitQuat2, const Quat &unitQuat3)
 
const Quat operator* (const floatInVec &scalar, const Quat &quat)
 
const Vector3 lerp (const floatInVec &t, const Vector3 &vec0, const Vector3 &vec1)
 
const Vector3 slerp (const floatInVec &t, const Vector3 &unitVec0, const Vector3 &unitVec1)
 
void storeXYZ (const Vector3 &vec, __m128 *quad)
 
void loadXYZArray (Vector3 &vec0, Vector3 &vec1, Vector3 &vec2, Vector3 &vec3, const __m128 *threeQuads)
 
void storeXYZArray (const Vector3 &vec0, const Vector3 &vec1, const Vector3 &vec2, const Vector3 &vec3, __m128 *threeQuads)
 
const Vector3 operator* (const floatInVec &scalar, const Vector3 &vec)
 
const Vector3 normalizeApprox (const Vector3 &vec)
 
const Vector4 select (const Vector4 &vec0, const Vector4 &vec1, const boolInVec &select1)
 
const Vector4 lerp (const floatInVec &t, const Vector4 &vec0, const Vector4 &vec1)
 
const Vector4 slerp (const floatInVec &t, const Vector4 &unitVec0, const Vector4 &unitVec1)
 
const Vector4 operator* (const floatInVec &scalar, const Vector4 &vec)
 
const Vector4 normalizeApprox (const Vector4 &vec)
 
const Point3 lerp (const floatInVec &t, const Point3 &pnt0, const Point3 &pnt1)
 
void storeXYZ (const Point3 &pnt, __m128 *quad)
 
void loadXYZArray (Point3 &pnt0, Point3 &pnt1, Point3 &pnt2, Point3 &pnt3, const __m128 *threeQuads)
 
void storeXYZArray (const Point3 &pnt0, const Point3 &pnt1, const Point3 &pnt2, const Point3 &pnt3, __m128 *threeQuads)
 
const Point3 scale (const Point3 &pnt, const floatInVec &scaleVal)
 
const Point3 select (const Point3 &pnt0, const Point3 &pnt1, const boolInVec &select1)
 
 VM_ATTRIBUTE_ALIGNED_CLASS16 (class) VecIdx
 
const Vector3 select (const Vector3 &vec0, const Vector3 &vec1, const boolInVec &select1)
 
void storeHalfFloats (const Vector3 &vec0, const Vector3 &vec1, const Vector3 &vec2, const Vector3 &vec3, const Vector3 &vec4, const Vector3 &vec5, const Vector3 &vec6, const Vector3 &vec7, vec_ushort8 *threeQuads)
 
void storeHalfFloats (const Vector4 &vec0, const Vector4 &vec1, const Vector4 &vec2, const Vector4 &vec3, vec_ushort8 *twoQuads)
 
void storeHalfFloats (const Point3 &pnt0, const Point3 &pnt1, const Point3 &pnt2, const Point3 &pnt3, const Point3 &pnt4, const Point3 &pnt5, const Point3 &pnt6, const Point3 &pnt7, vec_ushort8 *threeQuads)
 
const Quat select (const Quat &quat0, const Quat &quat1, const boolInVec &select1)
 

Variables

static VM_ATTRIBUTE_ALIGN16
const unsigned int 
_vmathPNPN [4] = {0x00000000, 0x80000000, 0x00000000, 0x80000000}
 
static VM_ATTRIBUTE_ALIGN16
const unsigned int 
_vmathNPNP [4] = {0x80000000, 0x00000000, 0x80000000, 0x00000000}
 
static VM_ATTRIBUTE_ALIGN16
const float 
_vmathZERONE [4] = {1.0f, 0.0f, 0.0f, 1.0f}
 

Function Documentation

const Matrix3 Vectormath::Aos::absPerElem ( const Matrix3 &  mat)
inline

Definition at line 233 of file neon/mat_aos.h.

const Vector3 Vectormath::Aos::absPerElem ( const Vector3 &  vec)
inline

Definition at line 378 of file neon/vec_aos.h.

const Matrix4 Vectormath::Aos::absPerElem ( const Matrix4 &  mat)
inline

Definition at line 760 of file neon/mat_aos.h.

const Vector4 Vectormath::Aos::absPerElem ( const Vector4 &  vec)
inline

Definition at line 905 of file neon/vec_aos.h.

const Transform3 Vectormath::Aos::absPerElem ( const Transform3 &  tfrm)
inline

Definition at line 1285 of file neon/mat_aos.h.

const Point3 Vectormath::Aos::absPerElem ( const Point3 &  pnt)
inline

Definition at line 1301 of file neon/vec_aos.h.

const Matrix4 Vectormath::Aos::affineInverse ( const Matrix4 &  mat)
inline

Definition at line 666 of file neon/mat_aos.h.

const Matrix3 Vectormath::Aos::appendScale ( const Matrix3 &  mat,
const Vector3 &  scaleVec 
)
inline

Definition at line 391 of file neon/mat_aos.h.

const Matrix4 Vectormath::Aos::appendScale ( const Matrix4 &  mat,
const Vector3 &  scaleVec 
)
inline

Definition at line 994 of file neon/mat_aos.h.

const Transform3 Vectormath::Aos::appendScale ( const Transform3 &  tfrm,
const Vector3 &  scaleVec 
)
inline

Definition at line 1451 of file neon/mat_aos.h.

const Quat Vectormath::Aos::conj ( const Quat &  quat)
inline

Definition at line 380 of file neon/quat_aos.h.

const Vector3 Vectormath::Aos::copySignPerElem ( const Vector3 &  vec0,
const Vector3 &  vec1 
)
inline

Definition at line 387 of file neon/vec_aos.h.

const Vector4 Vectormath::Aos::copySignPerElem ( const Vector4 &  vec0,
const Vector4 &  vec1 
)
inline

Definition at line 915 of file neon/vec_aos.h.

const Point3 Vectormath::Aos::copySignPerElem ( const Point3 &  pnt0,
const Point3 &  pnt1 
)
inline

Definition at line 1310 of file neon/vec_aos.h.

const Vector3 Vectormath::Aos::cross ( const Vector3 &  vec0,
const Vector3 &  vec1 
)
inline

Definition at line 473 of file neon/vec_aos.h.

const Matrix3 Vectormath::Aos::crossMatrix ( const Vector3 &  vec)
inline

Definition at line 1613 of file neon/mat_aos.h.

const Matrix3 Vectormath::Aos::crossMatrixMul ( const Vector3 &  vec,
const Matrix3 &  mat 
)
inline

Definition at line 1622 of file neon/mat_aos.h.

const floatInVec Vectormath::Aos::determinant ( const Matrix3 &  mat)
inline

Definition at line 189 of file neon/mat_aos.h.

const floatInVec Vectormath::Aos::determinant ( const Matrix4 &  mat)
inline

Definition at line 686 of file neon/mat_aos.h.

const floatInVec Vectormath::Aos::dist ( const Point3 &  pnt0,
const Point3 &  pnt1 
)
inline

Definition at line 1395 of file neon/vec_aos.h.

const floatInVec Vectormath::Aos::distFromOrigin ( const Point3 &  pnt)
inline

Definition at line 1385 of file neon/vec_aos.h.

const floatInVec Vectormath::Aos::distSqr ( const Point3 &  pnt0,
const Point3 &  pnt1 
)
inline

Definition at line 1390 of file neon/vec_aos.h.

const floatInVec Vectormath::Aos::distSqrFromOrigin ( const Point3 &  pnt)
inline

Definition at line 1380 of file neon/vec_aos.h.

const Vector3 Vectormath::Aos::divPerElem ( const Vector3 &  vec0,
const Vector3 &  vec1 
)
inline

Definition at line 342 of file neon/vec_aos.h.

const Vector4 Vectormath::Aos::divPerElem ( const Vector4 &  vec0,
const Vector4 &  vec1 
)
inline

Definition at line 865 of file neon/vec_aos.h.

const Point3 Vectormath::Aos::divPerElem ( const Point3 &  pnt0,
const Point3 &  pnt1 
)
inline

Definition at line 1265 of file neon/vec_aos.h.

const floatInVec Vectormath::Aos::dot ( const Quat &  quat0,
const Quat &  quat1 
)
inline

Definition at line 268 of file neon/quat_aos.h.

const floatInVec Vectormath::Aos::dot ( const Vector3 &  vec0,
const Vector3 &  vec1 
)
inline

Definition at line 438 of file neon/vec_aos.h.

const floatInVec Vectormath::Aos::dot ( const Vector4 &  vec0,
const Vector4 &  vec1 
)
inline

Definition at line 972 of file neon/vec_aos.h.

const Matrix3 Vectormath::Aos::inverse ( const Matrix3 &  mat)
inline

Definition at line 174 of file neon/mat_aos.h.

const Matrix4 Vectormath::Aos::inverse ( const Matrix4 &  mat)
inline

Definition at line 597 of file neon/mat_aos.h.

const Transform3 Vectormath::Aos::inverse ( const Transform3 &  tfrm)
inline

Definition at line 1252 of file neon/mat_aos.h.

const floatInVec Vectormath::Aos::length ( const Quat &  quat)
inline

Definition at line 288 of file neon/quat_aos.h.

const floatInVec Vectormath::Aos::length ( const Vector3 &  vec)
inline

Definition at line 456 of file neon/vec_aos.h.

const floatInVec Vectormath::Aos::length ( const Vector4 &  vec)
inline

Definition at line 992 of file neon/vec_aos.h.

const floatInVec Vectormath::Aos::lengthSqr ( const Vector3 &  vec)
inline

Definition at line 447 of file neon/vec_aos.h.

const floatInVec Vectormath::Aos::lengthSqr ( const Vector4 &  vec)
inline

Definition at line 982 of file neon/vec_aos.h.

const Quat Vectormath::Aos::lerp ( float  t,
const Quat &  quat0,
const Quat &  quat1 
)
inline

Definition at line 73 of file neon/quat_aos.h.

const Vector3 Vectormath::Aos::lerp ( float  t,
const Vector3 &  vec0,
const Vector3 &  vec1 
)
inline

Definition at line 79 of file neon/vec_aos.h.

const Quat Vectormath::Aos::lerp ( const floatInVec &  t,
const Quat &  quat0,
const Quat &  quat1 
)
inline

Definition at line 115 of file sse/quat_aos.h.

const Vector3 Vectormath::Aos::lerp ( const floatInVec &  t,
const Vector3 &  vec0,
const Vector3 &  vec1 
)
inline

Definition at line 299 of file sse/vec_aos.h.

const Vector4 Vectormath::Aos::lerp ( float  t,
const Vector4 &  vec0,
const Vector4 &  vec1 
)
inline

Definition at line 579 of file neon/vec_aos.h.

const Vector4 Vectormath::Aos::lerp ( const floatInVec &  t,
const Vector4 &  vec0,
const Vector4 &  vec1 
)
inline

Definition at line 789 of file sse/vec_aos.h.

const Point3 Vectormath::Aos::lerp ( float  t,
const Point3 &  pnt0,
const Point3 &  pnt1 
)
inline

Definition at line 1062 of file neon/vec_aos.h.

const Point3 Vectormath::Aos::lerp ( const floatInVec &  t,
const Point3 &  pnt0,
const Point3 &  pnt1 
)
inline

Definition at line 1165 of file sse/vec_aos.h.

void Vectormath::Aos::loadHalfFloats ( Vector3 &  vec,
const unsigned short *  hfptr 
)
inline

Definition at line 112 of file neon/vec_aos.h.

void Vectormath::Aos::loadHalfFloats ( Vector4 &  vec,
const unsigned short *  hfptr 
)
inline

Definition at line 613 of file neon/vec_aos.h.

void Vectormath::Aos::loadHalfFloats ( Point3 &  vec,
const unsigned short *  hfptr 
)
inline

Definition at line 1079 of file neon/vec_aos.h.

void Vectormath::Aos::loadXYZ ( Vector3 &  vec,
const float *  fptr 
)
inline

Definition at line 100 of file neon/vec_aos.h.

void Vectormath::Aos::loadXYZ ( Point3 &  pnt,
const float *  fptr 
)
inline

Definition at line 1067 of file neon/vec_aos.h.

void Vectormath::Aos::loadXYZArray ( Vector3 &  vec0,
Vector3 &  vec1,
Vector3 &  vec2,
Vector3 &  vec3,
const __m128 *  threeQuads 
)
inline

Definition at line 387 of file sse/vec_aos.h.

void Vectormath::Aos::loadXYZArray ( Point3 &  pnt0,
Point3 &  pnt1,
Point3 &  pnt2,
Point3 &  pnt3,
const __m128 *  threeQuads 
)
inline

Definition at line 1183 of file sse/vec_aos.h.

void Vectormath::Aos::loadXYZW ( Quat &  quat,
const float *  fptr 
)
inline

Definition at line 109 of file neon/quat_aos.h.

void Vectormath::Aos::loadXYZW ( Vector4 &  vec,
const float *  fptr 
)
inline

Definition at line 600 of file neon/vec_aos.h.

const floatInVec Vectormath::Aos::maxElem ( const Vector3 &  vec)
inline

Definition at line 405 of file neon/vec_aos.h.

const floatInVec Vectormath::Aos::maxElem ( const Vector4 &  vec)
inline

Definition at line 935 of file neon/vec_aos.h.

const floatInVec Vectormath::Aos::maxElem ( const Point3 &  pnt)
inline

Definition at line 1328 of file neon/vec_aos.h.

const Vector3 Vectormath::Aos::maxPerElem ( const Vector3 &  vec0,
const Vector3 &  vec1 
)
inline

Definition at line 396 of file neon/vec_aos.h.

const Vector4 Vectormath::Aos::maxPerElem ( const Vector4 &  vec0,
const Vector4 &  vec1 
)
inline

Definition at line 925 of file neon/vec_aos.h.

const Point3 Vectormath::Aos::maxPerElem ( const Point3 &  pnt0,
const Point3 &  pnt1 
)
inline

Definition at line 1319 of file neon/vec_aos.h.

const floatInVec Vectormath::Aos::minElem ( const Vector3 &  vec)
inline

Definition at line 422 of file neon/vec_aos.h.

const floatInVec Vectormath::Aos::minElem ( const Vector4 &  vec)
inline

Definition at line 954 of file neon/vec_aos.h.

const floatInVec Vectormath::Aos::minElem ( const Point3 &  pnt)
inline

Definition at line 1345 of file neon/vec_aos.h.

const Vector3 Vectormath::Aos::minPerElem ( const Vector3 &  vec0,
const Vector3 &  vec1 
)
inline

Definition at line 413 of file neon/vec_aos.h.

const Vector4 Vectormath::Aos::minPerElem ( const Vector4 &  vec0,
const Vector4 &  vec1 
)
inline

Definition at line 944 of file neon/vec_aos.h.

const Point3 Vectormath::Aos::minPerElem ( const Point3 &  pnt0,
const Point3 &  pnt1 
)
inline

Definition at line 1336 of file neon/vec_aos.h.

const Matrix3 Vectormath::Aos::mulPerElem ( const Matrix3 &  mat0,
const Matrix3 &  mat1 
)
inline

Definition at line 286 of file neon/mat_aos.h.

const Vector3 Vectormath::Aos::mulPerElem ( const Vector3 &  vec0,
const Vector3 &  vec1 
)
inline

Definition at line 333 of file neon/vec_aos.h.

const Matrix4 Vectormath::Aos::mulPerElem ( const Matrix4 &  mat0,
const Matrix4 &  mat1 
)
inline

Definition at line 853 of file neon/mat_aos.h.

const Vector4 Vectormath::Aos::mulPerElem ( const Vector4 &  vec0,
const Vector4 &  vec1 
)
inline

Definition at line 855 of file neon/vec_aos.h.

const Point3 Vectormath::Aos::mulPerElem ( const Point3 &  pnt0,
const Point3 &  pnt1 
)
inline

Definition at line 1256 of file neon/vec_aos.h.

const Transform3 Vectormath::Aos::mulPerElem ( const Transform3 &  tfrm0,
const Transform3 &  tfrm1 
)
inline

Definition at line 1329 of file neon/mat_aos.h.

const floatInVec Vectormath::Aos::norm ( const Quat &  quat)
inline

Definition at line 278 of file neon/quat_aos.h.

const Quat Vectormath::Aos::normalize ( const Quat &  quat)
inline

Definition at line 293 of file neon/quat_aos.h.

const Vector3 Vectormath::Aos::normalize ( const Vector3 &  vec)
inline

Definition at line 461 of file neon/vec_aos.h.

const Vector4 Vectormath::Aos::normalize ( const Vector4 &  vec)
inline

Definition at line 997 of file neon/vec_aos.h.

const Vector3 Vectormath::Aos::normalizeApprox ( const Vector3 &  vec)
inline

Definition at line 664 of file sse/vec_aos.h.

const Vector4 Vectormath::Aos::normalizeApprox ( const Vector4 &  vec)
inline

Definition at line 1096 of file sse/vec_aos.h.

const Matrix3 Vectormath::Aos::operator* ( float  scalar,
const Matrix3 &  mat 
)
inline

Definition at line 257 of file neon/mat_aos.h.

const Quat Vectormath::Aos::operator* ( float  scalar,
const Quat &  quat 
)
inline

Definition at line 263 of file neon/quat_aos.h.

const Vector3 Vectormath::Aos::operator* ( float  scalar,
const Vector3 &  vec 
)
inline

Definition at line 328 of file neon/vec_aos.h.

const Matrix3 Vectormath::Aos::operator* ( const floatInVec &  scalar,
const Matrix3 &  mat 
)
inline

Definition at line 351 of file sse/mat_aos.h.

const Quat Vectormath::Aos::operator* ( const floatInVec &  scalar,
const Quat &  quat 
)
inline

Definition at line 353 of file sse/quat_aos.h.

const Vector3 Vectormath::Aos::operator* ( const floatInVec &  scalar,
const Vector3 &  vec 
)
inline

Definition at line 590 of file sse/vec_aos.h.

const Matrix4 Vectormath::Aos::operator* ( float  scalar,
const Matrix4 &  mat 
)
inline

Definition at line 786 of file neon/mat_aos.h.

const Vector4 Vectormath::Aos::operator* ( float  scalar,
const Vector4 &  vec 
)
inline

Definition at line 850 of file neon/vec_aos.h.

const Vector4 Vectormath::Aos::operator* ( const floatInVec &  scalar,
const Vector4 &  vec 
)
inline

Definition at line 1017 of file sse/vec_aos.h.

const Matrix4 Vectormath::Aos::operator* ( const floatInVec &  scalar,
const Matrix4 &  mat 
)
inline

Definition at line 1033 of file sse/mat_aos.h.

const Matrix4 Vectormath::Aos::orthoInverse ( const Matrix4 &  mat)
inline

Definition at line 676 of file neon/mat_aos.h.

const Transform3 Vectormath::Aos::orthoInverse ( const Transform3 &  tfrm)
inline

Definition at line 1271 of file neon/mat_aos.h.

const Matrix3 Vectormath::Aos::outer ( const Vector3 &  tfrm0,
const Vector3 &  tfrm1 
)
inline

Definition at line 1585 of file neon/mat_aos.h.

const Matrix4 Vectormath::Aos::outer ( const Vector4 &  tfrm0,
const Vector4 &  tfrm1 
)
inline

Definition at line 1594 of file neon/mat_aos.h.

const Matrix3 Vectormath::Aos::prependScale ( const Vector3 &  scaleVec,
const Matrix3 &  mat 
)
inline

Definition at line 400 of file neon/mat_aos.h.

const Matrix4 Vectormath::Aos::prependScale ( const Vector3 &  scaleVec,
const Matrix4 &  mat 
)
inline

Definition at line 1004 of file neon/mat_aos.h.

const Transform3 Vectormath::Aos::prependScale ( const Vector3 &  scaleVec,
const Transform3 &  tfrm 
)
inline

Definition at line 1461 of file neon/mat_aos.h.

const floatInVec Vectormath::Aos::projection ( const Point3 &  pnt,
const Vector3 &  unitVec 
)
inline

Definition at line 1371 of file neon/vec_aos.h.

const Vector3 Vectormath::Aos::recipPerElem ( const Vector3 &  vec)
inline

Definition at line 351 of file neon/vec_aos.h.

const Vector4 Vectormath::Aos::recipPerElem ( const Vector4 &  vec)
inline

Definition at line 875 of file neon/vec_aos.h.

const Point3 Vectormath::Aos::recipPerElem ( const Point3 &  pnt)
inline

Definition at line 1274 of file neon/vec_aos.h.

const Vector3 Vectormath::Aos::rotate ( const Quat &  quat,
const Vector3 &  vec 
)
inline

Definition at line 366 of file neon/quat_aos.h.

const Vector3 Vectormath::Aos::rowMul ( const Vector3 &  vec,
const Matrix3 &  mat 
)
inline

Definition at line 1604 of file neon/mat_aos.h.

const Vector3 Vectormath::Aos::rsqrtPerElem ( const Vector3 &  vec)
inline

Definition at line 369 of file neon/vec_aos.h.

const Vector4 Vectormath::Aos::rsqrtPerElem ( const Vector4 &  vec)
inline

Definition at line 895 of file neon/vec_aos.h.

const Point3 Vectormath::Aos::rsqrtPerElem ( const Point3 &  pnt)
inline

Definition at line 1292 of file neon/vec_aos.h.

const Point3 Vectormath::Aos::scale ( const Point3 &  pnt,
float  scaleVal 
)
inline

Definition at line 1361 of file neon/vec_aos.h.

const Point3 Vectormath::Aos::scale ( const Point3 &  pnt,
const Vector3 &  scaleVec 
)
inline

Definition at line 1366 of file neon/vec_aos.h.

const Point3 Vectormath::Aos::scale ( const Point3 &  pnt,
const floatInVec &  scaleVal 
)
inline

Definition at line 1387 of file sse/vec_aos.h.

const Quat Vectormath::Aos::select ( const Quat &  quat0,
const Quat &  quat1,
bool  select1 
)
inline

Definition at line 385 of file neon/quat_aos.h.

const Matrix3 Vectormath::Aos::select ( const Matrix3 &  mat0,
const Matrix3 &  mat1,
bool  select1 
)
inline

Definition at line 409 of file neon/mat_aos.h.

const Vector3 Vectormath::Aos::select ( const Vector3 &  vec0,
const Vector3 &  vec1,
bool  select1 
)
inline

Definition at line 482 of file neon/vec_aos.h.

const Matrix3 Vectormath::Aos::select ( const Matrix3 &  mat0,
const Matrix3 &  mat1,
const boolInVec &  select1 
)
inline

Definition at line 578 of file sse/mat_aos.h.

const Vector4 Vectormath::Aos::select ( const Vector4 &  vec0,
const Vector4 &  vec1,
const boolInVec &  select1 
)
inline

Definition at line 685 of file sse/vec_aos.h.

const Vector3 Vectormath::Aos::select ( const Vector3 &  vec0,
const Vector3 &  vec1,
const boolInVec &  select1 
)
inline
const Vector4 Vectormath::Aos::select ( const Vector4 &  vec0,
const Vector4 &  vec1,
bool  select1 
)
inline

Definition at line 1010 of file neon/vec_aos.h.

const Matrix4 Vectormath::Aos::select ( const Matrix4 &  mat0,
const Matrix4 &  mat1,
bool  select1 
)
inline

Definition at line 1086 of file neon/mat_aos.h.

const Point3 Vectormath::Aos::select ( const Point3 &  pnt0,
const Point3 &  pnt1,
bool  select1 
)
inline

Definition at line 1400 of file neon/vec_aos.h.

const Point3 Vectormath::Aos::select ( const Point3 &  pnt0,
const Point3 &  pnt1,
const boolInVec &  select1 
)
inline

Definition at line 1427 of file sse/vec_aos.h.

const Transform3 Vectormath::Aos::select ( const Transform3 &  tfrm0,
const Transform3 &  tfrm1,
bool  select1 
)
inline

Definition at line 1481 of file neon/mat_aos.h.

const Matrix4 Vectormath::Aos::select ( const Matrix4 &  mat0,
const Matrix4 &  mat1,
const boolInVec &  select1 
)
inline

Definition at line 1483 of file sse/mat_aos.h.

const Quat Vectormath::Aos::select ( const Quat &  quat0,
const Quat &  quat1,
const boolInVec &  select1 
)
inline
const Transform3 Vectormath::Aos::select ( const Transform3 &  tfrm0,
const Transform3 &  tfrm1,
const boolInVec &  select1 
)
inline

Definition at line 1997 of file sse/mat_aos.h.

const Quat Vectormath::Aos::slerp ( float  t,
const Quat &  unitQuat0,
const Quat &  unitQuat1 
)
inline

Definition at line 78 of file neon/quat_aos.h.

const Vector3 Vectormath::Aos::slerp ( float  t,
const Vector3 &  unitVec0,
const Vector3 &  unitVec1 
)
inline

Definition at line 84 of file neon/vec_aos.h.

const Quat Vectormath::Aos::slerp ( const floatInVec &  t,
const Quat &  unitQuat0,
const Quat &  unitQuat1 
)
inline

Definition at line 125 of file sse/quat_aos.h.

const Vector3 Vectormath::Aos::slerp ( const floatInVec &  t,
const Vector3 &  unitVec0,
const Vector3 &  unitVec1 
)
inline

Definition at line 309 of file sse/vec_aos.h.

const Vector4 Vectormath::Aos::slerp ( float  t,
const Vector4 &  unitVec0,
const Vector4 &  unitVec1 
)
inline

Definition at line 584 of file neon/vec_aos.h.

const Vector4 Vectormath::Aos::slerp ( const floatInVec &  t,
const Vector4 &  unitVec0,
const Vector4 &  unitVec1 
)
inline

Definition at line 799 of file sse/vec_aos.h.

const Vector3 Vectormath::Aos::sqrtPerElem ( const Vector3 &  vec)
inline

Definition at line 360 of file neon/vec_aos.h.

const Vector4 Vectormath::Aos::sqrtPerElem ( const Vector4 &  vec)
inline

Definition at line 885 of file neon/vec_aos.h.

const Point3 Vectormath::Aos::sqrtPerElem ( const Point3 &  pnt)
inline

Definition at line 1283 of file neon/vec_aos.h.

const Quat Vectormath::Aos::squad ( float  t,
const Quat &  unitQuat0,
const Quat &  unitQuat1,
const Quat &  unitQuat2,
const Quat &  unitQuat3 
)
inline

Definition at line 101 of file neon/quat_aos.h.

const Quat Vectormath::Aos::squad ( const floatInVec &  t,
const Quat &  unitQuat0,
const Quat &  unitQuat1,
const Quat &  unitQuat2,
const Quat &  unitQuat3 
)
inline

Definition at line 153 of file sse/quat_aos.h.

void Vectormath::Aos::storeHalfFloats ( const Vector3 &  vec,
unsigned short *  hfptr 
)
inline

Definition at line 145 of file neon/vec_aos.h.

void Vectormath::Aos::storeHalfFloats ( const Vector4 &  vec,
unsigned short *  hfptr 
)
inline

Definition at line 646 of file neon/vec_aos.h.

void Vectormath::Aos::storeHalfFloats ( const Vector3 &  vec0,
const Vector3 &  vec1,
const Vector3 &  vec2,
const Vector3 &  vec3,
const Vector3 &  vec4,
const Vector3 &  vec5,
const Vector3 &  vec6,
const Vector3 &  vec7,
vec_ushort8 threeQuads 
)
inline
void Vectormath::Aos::storeHalfFloats ( const Vector4 &  vec0,
const Vector4 &  vec1,
const Vector4 &  vec2,
const Vector4 &  vec3,
vec_ushort8 twoQuads 
)
inline
void Vectormath::Aos::storeHalfFloats ( const Point3 &  vec,
unsigned short *  hfptr 
)
inline

Definition at line 1112 of file neon/vec_aos.h.

void Vectormath::Aos::storeHalfFloats ( const Point3 &  pnt0,
const Point3 &  pnt1,
const Point3 &  pnt2,
const Point3 &  pnt3,
const Point3 &  pnt4,
const Point3 &  pnt5,
const Point3 &  pnt6,
const Point3 &  pnt7,
vec_ushort8 threeQuads 
)
inline
void Vectormath::Aos::storeXYZ ( const Vector3 &  vec,
float *  fptr 
)
inline

Definition at line 105 of file neon/vec_aos.h.

void Vectormath::Aos::storeXYZ ( const Vector3 &  vec,
__m128 *  quad 
)
inline

Definition at line 364 of file sse/vec_aos.h.

void Vectormath::Aos::storeXYZ ( const Point3 &  pnt,
float *  fptr 
)
inline

Definition at line 1072 of file neon/vec_aos.h.

void Vectormath::Aos::storeXYZ ( const Point3 &  pnt,
__m128 *  quad 
)
inline

Definition at line 1175 of file sse/vec_aos.h.

void Vectormath::Aos::storeXYZArray ( const Vector3 &  vec0,
const Vector3 &  vec1,
const Vector3 &  vec2,
const Vector3 &  vec3,
__m128 *  threeQuads 
)
inline

Definition at line 396 of file sse/vec_aos.h.

void Vectormath::Aos::storeXYZArray ( const Point3 &  pnt0,
const Point3 &  pnt1,
const Point3 &  pnt2,
const Point3 &  pnt3,
__m128 *  threeQuads 
)
inline

Definition at line 1192 of file sse/vec_aos.h.

void Vectormath::Aos::storeXYZW ( const Quat &  quat,
float *  fptr 
)
inline

Definition at line 114 of file neon/quat_aos.h.

void Vectormath::Aos::storeXYZW ( const Vector4 &  vec,
float *  fptr 
)
inline

Definition at line 605 of file neon/vec_aos.h.

const floatInVec Vectormath::Aos::sum ( const Vector3 &  vec)
inline

Definition at line 430 of file neon/vec_aos.h.

const floatInVec Vectormath::Aos::sum ( const Vector4 &  vec)
inline

Definition at line 963 of file neon/vec_aos.h.

const floatInVec Vectormath::Aos::sum ( const Point3 &  pnt)
inline

Definition at line 1353 of file neon/vec_aos.h.

const Matrix3 Vectormath::Aos::transpose ( const Matrix3 &  mat)
inline

Definition at line 165 of file neon/mat_aos.h.

const Matrix4 Vectormath::Aos::transpose ( const Matrix4 &  mat)
inline

Definition at line 587 of file neon/mat_aos.h.

Vectormath::Aos::VM_ATTRIBUTE_ALIGNED_CLASS16 ( class  )

Definition at line 45 of file vecidx_aos.h.

Variable Documentation

VM_ATTRIBUTE_ALIGN16 const unsigned int Vectormath::Aos::_vmathNPNP[4] = {0x80000000, 0x00000000, 0x80000000, 0x00000000}
static

Definition at line 791 of file sse/mat_aos.h.

VM_ATTRIBUTE_ALIGN16 const unsigned int Vectormath::Aos::_vmathPNPN[4] = {0x00000000, 0x80000000, 0x00000000, 0x80000000}
static

Definition at line 790 of file sse/mat_aos.h.

VM_ATTRIBUTE_ALIGN16 const float Vectormath::Aos::_vmathZERONE[4] = {1.0f, 0.0f, 0.0f, 1.0f}
static

Definition at line 792 of file sse/mat_aos.h.