SPVector Class Reference

#include <SPMatrix.h>

Inherited by Vertex, and VertexIndex.

List of all members.

Public Member Functions

 SPVector ()
 SPVector (const SPVector &v)
 SPVector (const __m128 &m)
 SPVector (const F32vec4 &m)
 SPVector (const float x, const float y, const float z, const float w=1.0f)
 SPVector (const float *arr)
 operator __m128 () const
 operator F32vec4 () const
SPVectoroperator= (const SPVector &a)
SPVectoroperator= (const SPVector3 &)
SPVectoroperator= (const F32vec4 &a)
SPVectoroperator= (const __m128 &a)
float & operator() (int i)
float & operator[] (int i)
float & operator[] (int i) const
SPVectoroperator*= (const SPMatrix &)
SPVectoroperator*= (const float)
SPVectoroperator|= (const SPVector &)
SPVectoroperator+= (const SPVector &)
SPVectoroperator-= (const SPVector &)
float Length ()
SPVectorNormalize ()
 SPVector ()
 SPVector (const __m128 &m)
 SPVector (const float x, const float y, const float z, const float w=1.0f)
SPVectoroperator*= (const SPMatrix &)
SPVectoroperator*= (const float)
SPVectoroperator+= (const SPVector &)
SPVectoroperator-= (const SPVector &)
SPVectorNormalize ()

Public Attributes

union {
   __m128   vec
   struct {
      float   x
      float   y
      float   z
      float   w
   } 
}; 
union {
   __m128   vec
   struct {
      float   x
      float   y
      float   z
      float   w
   } 
}; 

Friends

SPVector operator* (const SPVector &, const SPMatrix &)
float operator* (const SPVector &, const SPVector &)
SPVector operator% (const SPVector &, const SPVector &)
SPVector operator| (const SPVector &, const SPVector &)
SPVector operator* (const SPVector &, const float)
SPVector operator* (const float, const SPVector &)
SPVector operator+ (const SPVector &)
SPVector operator+ (const SPVector &, const SPVector &)
SPVector operator- (const SPVector &)
SPVector operator- (const SPVector &, const SPVector &)
SPVector operator~ (const SPVector &)
SPVector operator* (const SPVector &, const SPMatrix &)
float operator* (const SPVector &, const SPVector &)
SPVector operator- (const SPVector &, const SPVector &)
SPVector operator% (const SPVector &, const SPVector &)
SPVector operator| (const SPVector &, const SPVector &)


Constructor & Destructor Documentation

SPVector::SPVector (  )  [inline]

SPVector::SPVector ( const SPVector v  )  [inline]

SPVector::SPVector ( const __m128 &  m  )  [inline]

SPVector::SPVector ( const F32vec4 &  m  )  [inline]

SPVector::SPVector ( const float  x,
const float  y,
const float  z,
const float  w = 1.0f 
) [inline]

SPVector::SPVector ( const float *  arr  )  [inline]

SPVector::SPVector (  )  [inline]

SPVector::SPVector ( const __m128 &  m  )  [inline]

SPVector::SPVector ( const float  x,
const float  y,
const float  z,
const float  w = 1.0f 
) [inline]


Member Function Documentation

float SPVector::Length (  )  [inline]

SPVector& SPVector::Normalize (  ) 

SPVector & SPVector::Normalize (  )  [inline]

SPVector::operator __m128 (  )  const [inline]

SPVector::operator F32vec4 (  )  const [inline]

float& SPVector::operator() ( int  i  )  [inline]

SPVector& SPVector::operator*= ( const   float  ) 

SPVector& SPVector::operator*= ( const SPMatrix  ) 

SPVector & SPVector::operator*= ( const float  s  )  [inline]

SPVector & SPVector::operator*= ( const SPMatrix Mat  )  [inline]

SPVector& SPVector::operator+= ( const SPVector  ) 

SPVector & SPVector::operator+= ( const SPVector B  )  [inline]

SPVector& SPVector::operator-= ( const SPVector  ) 

SPVector & SPVector::operator-= ( const SPVector B  )  [inline]

SPVector& SPVector::operator= ( const __m128 &  a  )  [inline]

SPVector& SPVector::operator= ( const F32vec4 &  a  )  [inline]

SPVector & SPVector::operator= ( const SPVector3 a  )  [inline]

SPVector& SPVector::operator= ( const SPVector a  )  [inline]

float& SPVector::operator[] ( int  i  )  const [inline]

float& SPVector::operator[] ( int  i  )  [inline]

SPVector & SPVector::operator|= ( const SPVector B  )  [inline]


Friends And Related Function Documentation

SPVector operator% ( const SPVector A,
const SPVector B 
) [friend]

SPVector operator% ( const SPVector A,
const SPVector B 
) [friend]

float operator* ( const SPVector A,
const SPVector B 
) [friend]

SPVector operator* ( const SPVector Vec,
const SPMatrix Mat 
) [friend]

SPVector operator* ( const float  s,
const SPVector V 
) [friend]

SPVector operator* ( const SPVector V,
const float  s 
) [friend]

float operator* ( const SPVector A,
const SPVector B 
) [friend]

SPVector operator* ( const SPVector Vec,
const SPMatrix Mat 
) [friend]

SPVector operator+ ( const SPVector A,
const SPVector B 
) [friend]

SPVector operator+ ( const SPVector A  )  [friend]

SPVector operator- ( const SPVector A,
const SPVector B 
) [friend]

SPVector operator- ( const SPVector A,
const SPVector B 
) [friend]

SPVector operator- ( const SPVector A  )  [friend]

SPVector operator| ( const SPVector A,
const SPVector B 
) [friend]

SPVector operator| ( const SPVector A,
const SPVector B 
) [friend]

SPVector operator~ ( const SPVector V  )  [friend]


Member Data Documentation

union { ... }

union { ... }

__m128 SPVector::vec

float SPVector::w

float SPVector::x

float SPVector::y

float SPVector::z


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

Generated on Fri Nov 21 16:18:02 2008 for Raytracer by  doxygen 1.5.7.1