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

#include <vectormath_aos.h>

Public Member Functions

 Vector3 ()
 
 Vector3 (const Vector3 &vec)
 
 Vector3 (float x, float y, float z)
 
 Vector3 (const Point3 &pnt)
 
 Vector3 (float scalar)
 
Vector3operator= (const Vector3 &vec)
 
Vector3setX (float x)
 
Vector3setY (float y)
 
Vector3setZ (float z)
 
float getX () const
 
float getY () const
 
float getZ () const
 
Vector3setElem (int idx, float value)
 
float getElem (int idx) const
 
float & operator[] (int idx)
 
float operator[] (int idx) const
 
const Vector3 operator+ (const Vector3 &vec) const
 
const Vector3 operator- (const Vector3 &vec) const
 
const Point3 operator+ (const Point3 &pnt) const
 
const Vector3 operator* (float scalar) const
 
const Vector3 operator/ (float scalar) const
 
Vector3operator+= (const Vector3 &vec)
 
Vector3operator-= (const Vector3 &vec)
 
Vector3operator*= (float scalar)
 
Vector3operator/= (float scalar)
 
const Vector3 operator- () const
 
 Vector3 ()
 
 Vector3 (const Vector3 &vec)
 
 Vector3 (float x, float y, float z)
 
 Vector3 (const Point3 &pnt)
 
 Vector3 (float scalar)
 
Vector3operator= (const Vector3 &vec)
 
Vector3setX (float x)
 
Vector3setY (float y)
 
Vector3setZ (float z)
 
float getX () const
 
float getY () const
 
float getZ () const
 
Vector3setElem (int idx, float value)
 
float getElem (int idx) const
 
float & operator[] (int idx)
 
float operator[] (int idx) const
 
const Vector3 operator+ (const Vector3 &vec) const
 
const Vector3 operator- (const Vector3 &vec) const
 
const Point3 operator+ (const Point3 &pnt) const
 
const Vector3 operator* (float scalar) const
 
const Vector3 operator/ (float scalar) const
 
Vector3operator+= (const Vector3 &vec)
 
Vector3operator-= (const Vector3 &vec)
 
Vector3operator*= (float scalar)
 
Vector3operator/= (float scalar)
 
const Vector3 operator- () const
 
 Vector3 ()
 
 Vector3 (const Vector3 &vec)
 
 Vector3 (float x, float y, float z)
 
 Vector3 (const floatInVec &x, const floatInVec &y, const floatInVec &z)
 
 Vector3 (const Point3 &pnt)
 
 Vector3 (float scalar)
 
 Vector3 (const floatInVec &scalar)
 
 Vector3 (__m128 vf4)
 
__m128 get128 () const
 
Vector3operator= (const Vector3 &vec)
 
Vector3setX (float x)
 
Vector3setY (float y)
 
Vector3setZ (float z)
 
Vector3setX (const floatInVec &x)
 
Vector3setY (const floatInVec &y)
 
Vector3setZ (const floatInVec &z)
 
const floatInVec getX () const
 
const floatInVec getY () const
 
const floatInVec getZ () const
 
Vector3setElem (int idx, float value)
 
Vector3setElem (int idx, const floatInVec &value)
 
const floatInVec getElem (int idx) const
 
VecIdx operator[] (int idx)
 
const floatInVec operator[] (int idx) const
 
const Vector3 operator+ (const Vector3 &vec) const
 
const Vector3 operator- (const Vector3 &vec) const
 
const Point3 operator+ (const Point3 &pnt) const
 
const Vector3 operator* (float scalar) const
 
const Vector3 operator/ (float scalar) const
 
const Vector3 operator* (const floatInVec &scalar) const
 
const Vector3 operator/ (const floatInVec &scalar) const
 
Vector3operator+= (const Vector3 &vec)
 
Vector3operator-= (const Vector3 &vec)
 
Vector3operator*= (float scalar)
 
Vector3operator/= (float scalar)
 
Vector3operator*= (const floatInVec &scalar)
 
Vector3operator/= (const floatInVec &scalar)
 
const Vector3 operator- () const
 

Static Public Member Functions

static const Vector3 xAxis ()
 
static const Vector3 yAxis ()
 
static const Vector3 zAxis ()
 
static const Vector3 xAxis ()
 
static const Vector3 yAxis ()
 
static const Vector3 zAxis ()
 
static const Vector3 xAxis ()
 
static const Vector3 yAxis ()
 
static const Vector3 zAxis ()
 

Private Member Functions

void set128 (vec_float4 vec)
 
vec_float4get128Ref ()
 

Private Attributes

float mX
 
float mY
 
float mZ
 
float d
 
__m128 mVec128
 

Detailed Description

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

Constructor & Destructor Documentation

Vectormath::Aos::Vector3::Vector3 ( )
inline

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

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

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

Vectormath::Aos::Vector3::Vector3 ( float  x,
float  y,
float  z 
)
inline

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

Vectormath::Aos::Vector3::Vector3 ( const Point3 pnt)
inlineexplicit

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

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

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

Vectormath::Aos::Vector3::Vector3 ( )
inline

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

Vectormath::Aos::Vector3::Vector3 ( const Vector3 vec)
inline
Vectormath::Aos::Vector3::Vector3 ( float  x,
float  y,
float  z 
)
inline
Vectormath::Aos::Vector3::Vector3 ( const Point3 pnt)
inlineexplicit
Vectormath::Aos::Vector3::Vector3 ( float  scalar)
inlineexplicit
Vectormath::Aos::Vector3::Vector3 ( )
inline

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

Vectormath::Aos::Vector3::Vector3 ( const Vector3 vec)
inline
Vectormath::Aos::Vector3::Vector3 ( float  x,
float  y,
float  z 
)
inline
Vectormath::Aos::Vector3::Vector3 ( const floatInVec x,
const floatInVec y,
const floatInVec z 
)
inline

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

Vectormath::Aos::Vector3::Vector3 ( const Point3 pnt)
inlineexplicit
Vectormath::Aos::Vector3::Vector3 ( float  scalar)
inlineexplicit
Vectormath::Aos::Vector3::Vector3 ( const floatInVec scalar)
inlineexplicit

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

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

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

Member Function Documentation

__m128 Vectormath::Aos::Vector3::get128 ( ) const
inline

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

vec_float4& Vectormath::Aos::Vector3::get128Ref ( )
inlineprivate
float Vectormath::Aos::Vector3::getElem ( int  idx) const
inline
const floatInVec Vectormath::Aos::Vector3::getElem ( int  idx) const
inline

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

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

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

const floatInVec Vectormath::Aos::Vector3::getX ( ) const
inline
float Vectormath::Aos::Vector3::getY ( ) const
inline
const floatInVec Vectormath::Aos::Vector3::getY ( ) const
inline

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

const floatInVec Vectormath::Aos::Vector3::getY ( ) const
inline
float Vectormath::Aos::Vector3::getZ ( ) const
inline
const floatInVec Vectormath::Aos::Vector3::getZ ( ) const
inline

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

const floatInVec Vectormath::Aos::Vector3::getZ ( ) const
inline
const Vector3 Vectormath::Aos::Vector3::operator* ( float  scalar) const
inline
const Vector3 Vectormath::Aos::Vector3::operator* ( float  scalar) const
inline

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

const Vector3 Vectormath::Aos::Vector3::operator* ( float  scalar) const
inline
const Vector3 Vectormath::Aos::Vector3::operator* ( const floatInVec scalar) const
inline

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

Vector3& Vectormath::Aos::Vector3::operator*= ( float  scalar)
inline
Vector3 & Vectormath::Aos::Vector3::operator*= ( float  scalar)
inline

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

Vector3& Vectormath::Aos::Vector3::operator*= ( float  scalar)
inline
Vector3 & Vectormath::Aos::Vector3::operator*= ( const floatInVec scalar)
inline

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

const Vector3 Vectormath::Aos::Vector3::operator+ ( const Vector3 vec) const
inline
const Vector3 Vectormath::Aos::Vector3::operator+ ( const Vector3 vec) const
inline

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

const Point3 Vectormath::Aos::Vector3::operator+ ( const Point3 pnt) const
inline
const Point3 Vectormath::Aos::Vector3::operator+ ( const Point3 pnt) const
inline

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

const Vector3 Vectormath::Aos::Vector3::operator+ ( const Vector3 vec) const
inline
const Point3 Vectormath::Aos::Vector3::operator+ ( const Point3 pnt) const
inline
Vector3& Vectormath::Aos::Vector3::operator+= ( const Vector3 vec)
inline
Vector3 & Vectormath::Aos::Vector3::operator+= ( const Vector3 vec)
inline

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

Vector3& Vectormath::Aos::Vector3::operator+= ( const Vector3 vec)
inline
const Vector3 Vectormath::Aos::Vector3::operator- ( const Vector3 vec) const
inline
const Vector3 Vectormath::Aos::Vector3::operator- ( const Vector3 vec) const
inline

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

const Vector3 Vectormath::Aos::Vector3::operator- ( ) const
inline
const Vector3 Vectormath::Aos::Vector3::operator- ( ) const
inline

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

const Vector3 Vectormath::Aos::Vector3::operator- ( const Vector3 vec) const
inline
const Vector3 Vectormath::Aos::Vector3::operator- ( ) const
inline
Vector3& Vectormath::Aos::Vector3::operator-= ( const Vector3 vec)
inline
Vector3 & Vectormath::Aos::Vector3::operator-= ( const Vector3 vec)
inline

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

Vector3& Vectormath::Aos::Vector3::operator-= ( const Vector3 vec)
inline
const Vector3 Vectormath::Aos::Vector3::operator/ ( float  scalar) const
inline
const Vector3 Vectormath::Aos::Vector3::operator/ ( float  scalar) const
inline

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

const Vector3 Vectormath::Aos::Vector3::operator/ ( float  scalar) const
inline
const Vector3 Vectormath::Aos::Vector3::operator/ ( const floatInVec scalar) const
inline

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

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

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

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

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

Vector3& Vectormath::Aos::Vector3::operator= ( const Vector3 vec)
inline
Vector3 & Vectormath::Aos::Vector3::operator= ( const Vector3 vec)
inline

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

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

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

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

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

VecIdx Vectormath::Aos::Vector3::operator[] ( int  idx)
inline
const floatInVec Vectormath::Aos::Vector3::operator[] ( int  idx) const
inline
void Vectormath::Aos::Vector3::set128 ( vec_float4  vec)
inlineprivate

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

Vector3& Vectormath::Aos::Vector3::setElem ( int  idx,
float  value 
)
inline
Vector3 & Vectormath::Aos::Vector3::setElem ( int  idx,
float  value 
)
inline

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

Vector3& Vectormath::Aos::Vector3::setElem ( int  idx,
float  value 
)
inline
Vector3 & Vectormath::Aos::Vector3::setElem ( int  idx,
const floatInVec value 
)
inline

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

Vector3& Vectormath::Aos::Vector3::setX ( float  x)
inline
Vector3 & Vectormath::Aos::Vector3::setX ( float  x)
inline

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

Vector3& Vectormath::Aos::Vector3::setX ( float  x)
inline
Vector3 & Vectormath::Aos::Vector3::setX ( const floatInVec x)
inline

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

Vector3& Vectormath::Aos::Vector3::setY ( float  y)
inline
Vector3 & Vectormath::Aos::Vector3::setY ( float  y)
inline

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

Vector3& Vectormath::Aos::Vector3::setY ( float  y)
inline
Vector3 & Vectormath::Aos::Vector3::setY ( const floatInVec y)
inline

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

Vector3& Vectormath::Aos::Vector3::setZ ( float  z)
inline
Vector3 & Vectormath::Aos::Vector3::setZ ( float  z)
inline

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

Vector3& Vectormath::Aos::Vector3::setZ ( float  z)
inline
Vector3 & Vectormath::Aos::Vector3::setZ ( const floatInVec z)
inline

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

static const Vector3 Vectormath::Aos::Vector3::xAxis ( )
inlinestatic
const Vector3 Vectormath::Aos::Vector3::xAxis ( )
inlinestatic

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

static const Vector3 Vectormath::Aos::Vector3::xAxis ( )
inlinestatic
static const Vector3 Vectormath::Aos::Vector3::yAxis ( )
inlinestatic
const Vector3 Vectormath::Aos::Vector3::yAxis ( )
inlinestatic

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

static const Vector3 Vectormath::Aos::Vector3::yAxis ( )
inlinestatic
static const Vector3 Vectormath::Aos::Vector3::zAxis ( )
inlinestatic
const Vector3 Vectormath::Aos::Vector3::zAxis ( )
inlinestatic

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

static const Vector3 Vectormath::Aos::Vector3::zAxis ( )
inlinestatic

Member Data Documentation

float Vectormath::Aos::Vector3::d
private

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

__m128 Vectormath::Aos::Vector3::mVec128
private

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

float Vectormath::Aos::Vector3::mX
private

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

float Vectormath::Aos::Vector3::mY
private

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

float Vectormath::Aos::Vector3::mZ
private

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


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