Bullet Collision Detection & Physics Library
Public Member Functions | Static Public Member Functions | Private Attributes | List of all members
Vectormath::Aos::Quat Class Reference

#include <vectormath_aos.h>

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)
inlineexplicit

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

Vectormath::Aos::Quat::Quat ( const Matrix3 rotMat)
inlineexplicit

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

Vectormath::Aos::Quat::Quat ( float  scalar)
inlineexplicit

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)
inlineexplicit
Vectormath::Aos::Quat::Quat ( const Matrix3 rotMat)
inlineexplicit
Vectormath::Aos::Quat::Quat ( float  scalar)
inlineexplicit
Vectormath::Aos::Quat::Quat ( )
inline

Definition at line 1334 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)
inlineexplicit
Vectormath::Aos::Quat::Quat ( const Matrix3 rotMat)
inlineexplicit
Vectormath::Aos::Quat::Quat ( float  scalar)
inlineexplicit
Vectormath::Aos::Quat::Quat ( const floatInVec scalar)
inlineexplicit

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

Vectormath::Aos::Quat::Quat ( __m128  vf4)
inlineexplicit

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.

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

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

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

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

const floatInVec Vectormath::Aos::Quat::getW ( ) 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 floatInVec Vectormath::Aos::Quat::getX ( ) 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 Vector3 Vectormath::Aos::Quat::getXYZ ( ) const
inline
float Vectormath::Aos::Quat::getY ( ) const
inline
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::getZ ( ) const
inline
const floatInVec Vectormath::Aos::Quat::getZ ( ) const
inline

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

const floatInVec Vectormath::Aos::Quat::getZ ( ) const
inline
static const Quat Vectormath::Aos::Quat::identity ( )
inlinestatic
const Quat Vectormath::Aos::Quat::identity ( )
inlinestatic

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

static const Quat Vectormath::Aos::Quat::identity ( )
inlinestatic
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 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.

Quat& Vectormath::Aos::Quat::operator*= ( const Quat quat)
inline
Quat& Vectormath::Aos::Quat::operator*= ( float  scalar)
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*= ( 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
Quat & Vectormath::Aos::Quat::operator*= ( const floatInVec scalar)
inline

Definition at line 315 of file sse/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

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

const Quat Vectormath::Aos::Quat::operator+ ( const Quat quat) const
inline
Quat& Vectormath::Aos::Quat::operator+= ( const Quat quat)
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
const Quat Vectormath::Aos::Quat::operator- ( const Quat quat) const
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
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 Quat quat) const
inline
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
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.

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

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

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

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

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.

Quat& Vectormath::Aos::Quat::operator= ( const Quat quat)
inline
float& Vectormath::Aos::Quat::operator[] ( int  idx)
inline
float Vectormath::Aos::Quat::operator[] ( int  idx) const
inline
VecIdx Vectormath::Aos::Quat::operator[] ( int  idx)
inline

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

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

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

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

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

const Quat Vectormath::Aos::Quat::rotation ( float  radians,
const Vector3 unitVec 
)
inlinestatic

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

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

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

static const Quat Vectormath::Aos::Quat::rotationX ( float  radians)
inlinestatic
const Quat Vectormath::Aos::Quat::rotationX ( float  radians)
inlinestatic

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

static const Quat Vectormath::Aos::Quat::rotationX ( float  radians)
inlinestatic
const Quat Vectormath::Aos::Quat::rotationX ( const floatInVec radians)
inlinestatic

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

static const Quat Vectormath::Aos::Quat::rotationY ( float  radians)
inlinestatic
const Quat Vectormath::Aos::Quat::rotationY ( float  radians)
inlinestatic

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

static const Quat Vectormath::Aos::Quat::rotationY ( float  radians)
inlinestatic
const Quat Vectormath::Aos::Quat::rotationY ( const floatInVec radians)
inlinestatic

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

static const Quat Vectormath::Aos::Quat::rotationZ ( float  radians)
inlinestatic
const Quat Vectormath::Aos::Quat::rotationZ ( float  radians)
inlinestatic

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

static const Quat Vectormath::Aos::Quat::rotationZ ( float  radians)
inlinestatic
const Quat Vectormath::Aos::Quat::rotationZ ( const floatInVec radians)
inlinestatic

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

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,
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::setElem ( int  idx,
const floatInVec value 
)
inline

Definition at line 255 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::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::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 ( float  x)
inline
Quat & Vectormath::Aos::Quat::setX ( const floatInVec x)
inline

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

Quat& Vectormath::Aos::Quat::setXYZ ( const Vector3 vec)
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::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 ( float  y)
inline
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
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 ( const floatInVec z)
inline

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

Member Data Documentation

__m128 Vectormath::Aos::Quat::mVec128
private

Definition at line 1329 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: