Public Member Functions | Static Public Member Functions | Private Member Functions | Private Attributes

Vectormath::Aos::Vector3 Class Reference

#include <vectormath_aos.h>

List of all members.

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  )  [inline, explicit]

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

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

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  )  [inline, explicit]
Vectormath::Aos::Vector3::Vector3 ( float  scalar  )  [inline, explicit]
Vectormath::Aos::Vector3::Vector3 (  )  [inline]

Definition at line 391 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  )  [inline, explicit]
Vectormath::Aos::Vector3::Vector3 ( float  scalar  )  [inline, explicit]
Vectormath::Aos::Vector3::Vector3 ( const floatInVec scalar  )  [inline, explicit]

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

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

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 (  )  [inline, private]
float Vectormath::Aos::Vector3::getElem ( int  idx  )  const [inline]
const floatInVec 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::getX (  )  const [inline]

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

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

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

float Vectormath::Aos::Vector3::getY (  )  const [inline]
const floatInVec Vectormath::Aos::Vector3::getY (  )  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]
float 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]
const Vector3 Vectormath::Aos::Vector3::operator* ( const floatInVec scalar  )  const [inline]

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

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

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

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.

Vector3& Vectormath::Aos::Vector3::operator*= ( float  scalar  )  [inline]
const Vector3 Vectormath::Aos::Vector3::operator+ ( const Vector3 vec  )  const [inline]
const Point3 Vectormath::Aos::Vector3::operator+ ( const Point3 pnt  )  const [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 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.

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]
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 [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 [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 Vector3 vec  )  const [inline]
Vector3& Vectormath::Aos::Vector3::operator-= ( const Vector3 vec  )  [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.

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.

const Vector3 Vectormath::Aos::Vector3::operator/ ( float  scalar  )  const [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/= ( 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 Vector3 vec  )  [inline]

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

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

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

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

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

void Vectormath::Aos::Vector3::set128 ( vec_float4  vec  )  [inline, private]

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

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

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

Vector3& Vectormath::Aos::Vector3::setY ( float  y  )  [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 ( 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 (  )  [inline, static]
static const Vector3 Vectormath::Aos::Vector3::xAxis (  )  [inline, static]
const Vector3 Vectormath::Aos::Vector3::xAxis (  )  [inline, static]

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

static const Vector3 Vectormath::Aos::Vector3::yAxis (  )  [inline, static]
static const Vector3 Vectormath::Aos::Vector3::yAxis (  )  [inline, static]
const Vector3 Vectormath::Aos::Vector3::yAxis (  )  [inline, static]

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

static const Vector3 Vectormath::Aos::Vector3::zAxis (  )  [inline, static]
const Vector3 Vectormath::Aos::Vector3::zAxis (  )  [inline, static]

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

static const Vector3 Vectormath::Aos::Vector3::zAxis (  )  [inline, static]

Member Data Documentation

float Vectormath::Aos::Vector3::d [private]

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

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

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

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

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


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