Public Member Functions | Static Public Member Functions | Private Attributes

Vectormath::Aos::Quat Class Reference

#include <vectormath_aos.h>

List of all members.

Public Member Functions

 Quat ()
 Quat (const Quat &quat)
 Quat (float x, float y, float z, float w)
 Quat (float32x4_t fXYZW)
 Quat (const Vector3 &xyz, float w)
 Quat (const Vector4 &vec)
 Quat (const Matrix3 &rotMat)
 Quat (float scalar)
Quatoperator= (const Quat &quat)
QuatsetXYZ (const Vector3 &vec)
const Vector3 getXYZ () const
QuatsetX (float x)
QuatsetY (float y)
QuatsetZ (float z)
QuatsetW (float w)
float getX () const
float getY () const
float getZ () const
float getW () const
QuatsetElem (int idx, float value)
float getElem (int idx) const
float & operator[] (int idx)
float operator[] (int idx) const
const Quat operator+ (const Quat &quat) const
const Quat operator- (const Quat &quat) const
const Quat operator* (const Quat &quat) const
const Quat operator* (float scalar) const
const Quat operator/ (float scalar) const
Quatoperator+= (const Quat &quat)
Quatoperator-= (const Quat &quat)
Quatoperator*= (const Quat &quat)
Quatoperator*= (float scalar)
Quatoperator/= (float scalar)
const Quat operator- () const
 Quat ()
 Quat (const Quat &quat)
 Quat (float x, float y, float z, float w)
 Quat (const Vector3 &xyz, float w)
 Quat (const Vector4 &vec)
 Quat (const Matrix3 &rotMat)
 Quat (float scalar)
Quatoperator= (const Quat &quat)
QuatsetXYZ (const Vector3 &vec)
const Vector3 getXYZ () const
QuatsetX (float x)
QuatsetY (float y)
QuatsetZ (float z)
QuatsetW (float w)
float getX () const
float getY () const
float getZ () const
float getW () const
QuatsetElem (int idx, float value)
float getElem (int idx) const
float & operator[] (int idx)
float operator[] (int idx) const
const Quat operator+ (const Quat &quat) const
const Quat operator- (const Quat &quat) const
const Quat operator* (const Quat &quat) const
const Quat operator* (float scalar) const
const Quat operator/ (float scalar) const
Quatoperator+= (const Quat &quat)
Quatoperator-= (const Quat &quat)
Quatoperator*= (const Quat &quat)
Quatoperator*= (float scalar)
Quatoperator/= (float scalar)
const Quat operator- () const
 Quat ()
 Quat (const Quat &quat)
 Quat (float x, float y, float z, float w)
 Quat (const floatInVec &x, const floatInVec &y, const floatInVec &z, const floatInVec &w)
 Quat (const Vector3 &xyz, float w)
 Quat (const Vector3 &xyz, const floatInVec &w)
 Quat (const Vector4 &vec)
 Quat (const Matrix3 &rotMat)
 Quat (float scalar)
 Quat (const floatInVec &scalar)
 Quat (__m128 vf4)
__m128 get128 () const
void set128 (vec_float4 vec)
Quatoperator= (const Quat &quat)
QuatsetXYZ (const Vector3 &vec)
const Vector3 getXYZ () const
QuatsetX (float x)
QuatsetY (float y)
QuatsetZ (float z)
QuatsetW (float w)
QuatsetX (const floatInVec &x)
QuatsetY (const floatInVec &y)
QuatsetZ (const floatInVec &z)
QuatsetW (const floatInVec &w)
const floatInVec getX () const
const floatInVec getY () const
const floatInVec getZ () const
const floatInVec getW () const
QuatsetElem (int idx, float value)
QuatsetElem (int idx, const floatInVec &value)
const floatInVec getElem (int idx) const
VecIdx operator[] (int idx)
const floatInVec operator[] (int idx) const
const Quat operator+ (const Quat &quat) const
const Quat operator- (const Quat &quat) const
const Quat operator* (const Quat &quat) const
const Quat operator* (float scalar) const
const Quat operator/ (float scalar) const
const Quat operator* (const floatInVec &scalar) const
const Quat operator/ (const floatInVec &scalar) const
Quatoperator+= (const Quat &quat)
Quatoperator-= (const Quat &quat)
Quatoperator*= (const Quat &quat)
Quatoperator*= (float scalar)
Quatoperator/= (float scalar)
Quatoperator*= (const floatInVec &scalar)
Quatoperator/= (const floatInVec &scalar)
const Quat operator- () const

Static Public Member Functions

static const Quat identity ()
static const Quat rotation (const Vector3 &unitVec0, const Vector3 &unitVec1)
static const Quat rotation (float radians, const Vector3 &unitVec)
static const Quat rotationX (float radians)
static const Quat rotationY (float radians)
static const Quat rotationZ (float radians)
static const Quat identity ()
static const Quat rotation (const Vector3 &unitVec0, const Vector3 &unitVec1)
static const Quat rotation (float radians, const Vector3 &unitVec)
static const Quat rotationX (float radians)
static const Quat rotationY (float radians)
static const Quat rotationZ (float radians)
static const Quat identity ()
static const Quat rotation (const Vector3 &unitVec0, const Vector3 &unitVec1)
static const Quat rotation (float radians, const Vector3 &unitVec)
static const Quat rotation (const floatInVec &radians, const Vector3 &unitVec)
static const Quat rotationX (float radians)
static const Quat rotationY (float radians)
static const Quat rotationZ (float radians)
static const Quat rotationX (const floatInVec &radians)
static const Quat rotationY (const floatInVec &radians)
static const Quat rotationZ (const floatInVec &radians)

Private Attributes

float mX
float mY
float mZ
float mW
__m128 mVec128

Detailed Description

Definition at line 868 of file neon/vectormath_aos.h.


Constructor & Destructor Documentation

Vectormath::Aos::Quat::Quat (  )  [inline]

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

Vectormath::Aos::Quat::Quat ( const Quat quat  )  [inline]

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

Vectormath::Aos::Quat::Quat ( float  x,
float  y,
float  z,
float  w 
) [inline]

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

Vectormath::Aos::Quat::Quat ( float32x4_t  fXYZW  )  [inline]

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

Vectormath::Aos::Quat::Quat ( const Vector3 xyz,
float  w 
) [inline]

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

Vectormath::Aos::Quat::Quat ( const Vector4 vec  )  [inline, explicit]

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

Vectormath::Aos::Quat::Quat ( const Matrix3 rotMat  )  [inline, explicit]

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

Vectormath::Aos::Quat::Quat ( float  scalar  )  [inline, explicit]

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

Vectormath::Aos::Quat::Quat (  )  [inline]

Definition at line 876 of file scalar/vectormath_aos.h.

Vectormath::Aos::Quat::Quat ( const Quat quat  )  [inline]
Vectormath::Aos::Quat::Quat ( float  x,
float  y,
float  z,
float  w 
) [inline]
Vectormath::Aos::Quat::Quat ( const Vector3 xyz,
float  w 
) [inline]
Vectormath::Aos::Quat::Quat ( const Vector4 vec  )  [inline, explicit]
Vectormath::Aos::Quat::Quat ( const Matrix3 rotMat  )  [inline, explicit]
Vectormath::Aos::Quat::Quat ( float  scalar  )  [inline, explicit]
Vectormath::Aos::Quat::Quat (  )  [inline]

Definition at line 1326 of file sse/vectormath_aos.h.

Vectormath::Aos::Quat::Quat ( const Quat quat  )  [inline]
Vectormath::Aos::Quat::Quat ( float  x,
float  y,
float  z,
float  w 
) [inline]
Vectormath::Aos::Quat::Quat ( const floatInVec x,
const floatInVec y,
const floatInVec z,
const floatInVec w 
) [inline]

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

Vectormath::Aos::Quat::Quat ( const Vector3 xyz,
float  w 
) [inline]
Vectormath::Aos::Quat::Quat ( const Vector3 xyz,
const floatInVec w 
) [inline]

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

Vectormath::Aos::Quat::Quat ( const Vector4 vec  )  [inline, explicit]
Vectormath::Aos::Quat::Quat ( const Matrix3 rotMat  )  [inline, explicit]
Vectormath::Aos::Quat::Quat ( float  scalar  )  [inline, explicit]
Vectormath::Aos::Quat::Quat ( const floatInVec scalar  )  [inline, explicit]

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

Vectormath::Aos::Quat::Quat ( __m128  vf4  )  [inline, explicit]

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


Member Function Documentation

__m128 Vectormath::Aos::Quat::get128 (  )  const [inline]

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

const floatInVec Vectormath::Aos::Quat::getElem ( int  idx  )  const [inline]

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

float Vectormath::Aos::Quat::getElem ( int  idx  )  const [inline]
const floatInVec Vectormath::Aos::Quat::getElem ( int  idx  )  const [inline]
float Vectormath::Aos::Quat::getW (  )  const [inline]
const floatInVec Vectormath::Aos::Quat::getW (  )  const [inline]
const floatInVec Vectormath::Aos::Quat::getW (  )  const [inline]

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

const floatInVec Vectormath::Aos::Quat::getX (  )  const [inline]
float Vectormath::Aos::Quat::getX (  )  const [inline]
const floatInVec Vectormath::Aos::Quat::getX (  )  const [inline]

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

const Vector3 Vectormath::Aos::Quat::getXYZ (  )  const [inline]
const Vector3 Vectormath::Aos::Quat::getXYZ (  )  const [inline]
const Vector3 Vectormath::Aos::Quat::getXYZ (  )  const [inline]

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

const floatInVec Vectormath::Aos::Quat::getY (  )  const [inline]

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

const floatInVec Vectormath::Aos::Quat::getY (  )  const [inline]
float Vectormath::Aos::Quat::getY (  )  const [inline]
const floatInVec Vectormath::Aos::Quat::getZ (  )  const [inline]
float Vectormath::Aos::Quat::getZ (  )  const [inline]
const floatInVec Vectormath::Aos::Quat::getZ (  )  const [inline]

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

const Quat Vectormath::Aos::Quat::identity (  )  [inline, static]

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

static const Quat Vectormath::Aos::Quat::identity (  )  [inline, static]
static const Quat Vectormath::Aos::Quat::identity (  )  [inline, static]
const Quat Vectormath::Aos::Quat::operator* ( const Quat quat  )  const [inline]

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

const Quat Vectormath::Aos::Quat::operator* ( float  scalar  )  const [inline]

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

const Quat Vectormath::Aos::Quat::operator* ( const Quat quat  )  const [inline]
const Quat Vectormath::Aos::Quat::operator* ( float  scalar  )  const [inline]
const Quat Vectormath::Aos::Quat::operator* ( const floatInVec scalar  )  const [inline]

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

const Quat Vectormath::Aos::Quat::operator* ( const Quat quat  )  const [inline]
const Quat Vectormath::Aos::Quat::operator* ( float  scalar  )  const [inline]
Quat & Vectormath::Aos::Quat::operator*= ( const Quat quat  )  [inline]

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

Quat& Vectormath::Aos::Quat::operator*= ( const Quat quat  )  [inline]
Quat& Vectormath::Aos::Quat::operator*= ( float  scalar  )  [inline]
Quat & Vectormath::Aos::Quat::operator*= ( const floatInVec scalar  )  [inline]

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

Quat & Vectormath::Aos::Quat::operator*= ( float  scalar  )  [inline]

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

Quat& Vectormath::Aos::Quat::operator*= ( const Quat quat  )  [inline]
Quat& Vectormath::Aos::Quat::operator*= ( float  scalar  )  [inline]
const Quat Vectormath::Aos::Quat::operator+ ( const Quat quat  )  const [inline]

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

const Quat Vectormath::Aos::Quat::operator+ ( const Quat quat  )  const [inline]
const Quat Vectormath::Aos::Quat::operator+ ( const Quat quat  )  const [inline]
Quat & Vectormath::Aos::Quat::operator+= ( const Quat quat  )  [inline]

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

Quat& Vectormath::Aos::Quat::operator+= ( const Quat quat  )  [inline]
Quat& Vectormath::Aos::Quat::operator+= ( const Quat quat  )  [inline]
const Quat Vectormath::Aos::Quat::operator- ( const Quat quat  )  const [inline]

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

const Quat Vectormath::Aos::Quat::operator- ( const Quat quat  )  const [inline]
const Quat Vectormath::Aos::Quat::operator- ( const Quat quat  )  const [inline]
const Quat Vectormath::Aos::Quat::operator- (  )  const [inline]
const Quat Vectormath::Aos::Quat::operator- (  )  const [inline]

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

const Quat Vectormath::Aos::Quat::operator- (  )  const [inline]
Quat& Vectormath::Aos::Quat::operator-= ( const Quat quat  )  [inline]
Quat & Vectormath::Aos::Quat::operator-= ( const Quat quat  )  [inline]

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

Quat& Vectormath::Aos::Quat::operator-= ( const Quat quat  )  [inline]
const Quat Vectormath::Aos::Quat::operator/ ( float  scalar  )  const [inline]

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

const Quat Vectormath::Aos::Quat::operator/ ( float  scalar  )  const [inline]
const Quat Vectormath::Aos::Quat::operator/ ( const floatInVec scalar  )  const [inline]

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

const Quat Vectormath::Aos::Quat::operator/ ( float  scalar  )  const [inline]
Quat & Vectormath::Aos::Quat::operator/= ( float  scalar  )  [inline]

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

Quat & Vectormath::Aos::Quat::operator/= ( const floatInVec scalar  )  [inline]

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

Quat& Vectormath::Aos::Quat::operator/= ( float  scalar  )  [inline]
Quat& Vectormath::Aos::Quat::operator/= ( float  scalar  )  [inline]
Quat& Vectormath::Aos::Quat::operator= ( const Quat quat  )  [inline]
Quat& Vectormath::Aos::Quat::operator= ( const Quat quat  )  [inline]
Quat & Vectormath::Aos::Quat::operator= ( const Quat quat  )  [inline]

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

float Vectormath::Aos::Quat::operator[] ( int  idx  )  const [inline]
const floatInVec Vectormath::Aos::Quat::operator[] ( int  idx  )  const [inline]
VecIdx Vectormath::Aos::Quat::operator[] ( int  idx  )  [inline]
VecIdx Vectormath::Aos::Quat::operator[] ( int  idx  )  [inline]

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

float& Vectormath::Aos::Quat::operator[] ( int  idx  )  [inline]
const floatInVec Vectormath::Aos::Quat::operator[] ( int  idx  )  const [inline]

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

static const Quat Vectormath::Aos::Quat::rotation ( float  radians,
const Vector3 unitVec 
) [inline, static]
static const Quat Vectormath::Aos::Quat::rotation ( const Vector3 unitVec0,
const Vector3 unitVec1 
) [inline, static]
const Quat Vectormath::Aos::Quat::rotation ( const floatInVec radians,
const Vector3 unitVec 
) [inline, static]

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

static const Quat Vectormath::Aos::Quat::rotation ( float  radians,
const Vector3 unitVec 
) [inline, static]
const Quat Vectormath::Aos::Quat::rotation ( const Vector3 unitVec0,
const Vector3 unitVec1 
) [inline, static]

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

const Quat Vectormath::Aos::Quat::rotation ( float  radians,
const Vector3 unitVec 
) [inline, static]

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

static const Quat Vectormath::Aos::Quat::rotation ( const Vector3 unitVec0,
const Vector3 unitVec1 
) [inline, static]
static const Quat Vectormath::Aos::Quat::rotationX ( float  radians  )  [inline, static]
const Quat Vectormath::Aos::Quat::rotationX ( const floatInVec radians  )  [inline, static]

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

const Quat Vectormath::Aos::Quat::rotationX ( float  radians  )  [inline, static]

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

static const Quat Vectormath::Aos::Quat::rotationX ( float  radians  )  [inline, static]
static const Quat Vectormath::Aos::Quat::rotationY ( float  radians  )  [inline, static]
static const Quat Vectormath::Aos::Quat::rotationY ( float  radians  )  [inline, static]
const Quat Vectormath::Aos::Quat::rotationY ( float  radians  )  [inline, static]

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

const Quat Vectormath::Aos::Quat::rotationY ( const floatInVec radians  )  [inline, static]

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

const Quat Vectormath::Aos::Quat::rotationZ ( const floatInVec radians  )  [inline, static]

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

const Quat Vectormath::Aos::Quat::rotationZ ( float  radians  )  [inline, static]

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

static const Quat Vectormath::Aos::Quat::rotationZ ( float  radians  )  [inline, static]
static const Quat Vectormath::Aos::Quat::rotationZ ( float  radians  )  [inline, static]
void Vectormath::Aos::Quat::set128 ( vec_float4  vec  )  [inline]

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

Quat& Vectormath::Aos::Quat::setElem ( int  idx,
float  value 
) [inline]
Quat & Vectormath::Aos::Quat::setElem ( int  idx,
const floatInVec value 
) [inline]

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

Quat & Vectormath::Aos::Quat::setElem ( int  idx,
float  value 
) [inline]

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

Quat& Vectormath::Aos::Quat::setElem ( int  idx,
float  value 
) [inline]
Quat& Vectormath::Aos::Quat::setW ( float  w  )  [inline]
Quat & Vectormath::Aos::Quat::setW ( const floatInVec w  )  [inline]

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

Quat& Vectormath::Aos::Quat::setW ( float  w  )  [inline]
Quat & Vectormath::Aos::Quat::setW ( float  w  )  [inline]

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

Quat& Vectormath::Aos::Quat::setX ( float  x  )  [inline]
Quat & Vectormath::Aos::Quat::setX ( float  x  )  [inline]

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

Quat & Vectormath::Aos::Quat::setX ( const floatInVec x  )  [inline]

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

Quat& Vectormath::Aos::Quat::setX ( float  x  )  [inline]
Quat & Vectormath::Aos::Quat::setXYZ ( const Vector3 vec  )  [inline]

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

Quat& Vectormath::Aos::Quat::setXYZ ( const Vector3 vec  )  [inline]
Quat& Vectormath::Aos::Quat::setXYZ ( const Vector3 vec  )  [inline]
Quat& Vectormath::Aos::Quat::setY ( float  y  )  [inline]
Quat& Vectormath::Aos::Quat::setY ( float  y  )  [inline]
Quat & Vectormath::Aos::Quat::setY ( float  y  )  [inline]

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

Quat & Vectormath::Aos::Quat::setY ( const floatInVec y  )  [inline]

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

Quat & Vectormath::Aos::Quat::setZ ( float  z  )  [inline]

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

Quat& Vectormath::Aos::Quat::setZ ( float  z  )  [inline]
Quat& Vectormath::Aos::Quat::setZ ( float  z  )  [inline]
Quat & Vectormath::Aos::Quat::setZ ( const floatInVec z  )  [inline]

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


Member Data Documentation

Definition at line 1321 of file sse/vectormath_aos.h.

float Vectormath::Aos::Quat::mW [private]

Definition at line 879 of file neon/vectormath_aos.h.

float Vectormath::Aos::Quat::mX [private]

Definition at line 876 of file neon/vectormath_aos.h.

float Vectormath::Aos::Quat::mY [private]

Definition at line 877 of file neon/vectormath_aos.h.

float Vectormath::Aos::Quat::mZ [private]

Definition at line 878 of file neon/vectormath_aos.h.


The documentation for this class was generated from the following files: