Vector4< T > Class Template Reference

Represents a four dimensions vector for both CPU and GPU. More...

General Functions

_FCT_CPU_GPU_ int size () const
 
_FCT_CPU_GPU_ Vector4 ()
 
_FCT_CPU_GPU_ Vector4 (const T &t)
 
_FCT_CPU_GPU_ Vector4 (const T *tp)
 
_FCT_CPU_GPU_ Vector4 (const T v0, const T v1, const T v2, const T v3)
 
_FCT_CPU_GPU_ Vector4 (const Vector4< T > &v)
 
_FCT_CPU_GPU_ Vector4 (const Vector4< T > &v, const T d)
 
_FCT_CPU_GPU_ const T * ptr () const
 
_FCT_CPU_GPU_ Vector4< T > & setValues (const T *b)
 
_FCT_CPU_GPU_ T & operator[] (int i)
 
_FCT_CPU_GPU_ const T & operator[] (int i) const
 
_FCT_CPU_GPU_ float norm ()
 returns the norm of the vector More...
 
_FCT_CPU_GPU_ float square ()
 returns the squared norm of the vector More...
 
_FCT_CPU_GPU_ float sum ()
 returns the sum of the vector More...
 

Static Functions

static _FCT_CPU_GPU_ float dot (const Vector4< T > &a, const Vector4< T > &b)
 returns the dot product of two vector More...
 
static _FCT_CPU_GPU_ float distance (const Vector4< T > &a, const Vector4< T > &b)
 returns the distance between two vector More...
 

Friends

_FCT_CPU_GPU_ friend Vector4< T > & operator+= (Vector4< T > &itself, T d)
 
_FCT_CPU_GPU_ friend Vector4< T > & operator+= (Vector4< T > &itself, const Vector4< T > &b)
 
_FCT_CPU_GPU_ friend Vector4< T > & operator-= (Vector4< T > &itself, T d)
 
_FCT_CPU_GPU_ friend Vector4< T > & operator-= (Vector4< T > &itself, const Vector4< T > &b)
 
_FCT_CPU_GPU_ friend Vector4< T > & operator*= (Vector4< T > &itself, T d)
 
_FCT_CPU_GPU_ friend Vector4< T > & operator*= (Vector4< T > &itself, const Vector4< T > &b)
 
_FCT_CPU_GPU_ friend Vector4< T > & operator*= (Vector4< T > &itself, const Matrix4f &b)
 
_FCT_CPU_GPU_ friend Vector4< T > & operator/= (Vector4< T > &itself, T d)
 
_FCT_CPU_GPU_ friend Vector4< T > & operator/= (Vector4< T > &itself, const Vector4< T > &b)
 
_FCT_CPU_GPU_ friend Vector4< T > operator- (const Vector4< T > &b)
 
_FCT_CPU_GPU_ friend Vector4< T > operator+ (const Vector4< T > &a, const Vector4< T > &b)
 
_FCT_CPU_GPU_ friend Vector4< T > operator- (const Vector4< T > &a, const Vector4< T > &b)
 
_FCT_CPU_GPU_ friend Vector4< T > operator* (const Vector4< T > &a, T b)
 
_FCT_CPU_GPU_ friend Vector4< T > operator* (T a, const Vector4< T > &b)
 
_FCT_CPU_GPU_ friend Vector4< T > operator* (const Vector4< T > &a, const Vector4< T > &b)
 
_FCT_CPU_GPU_ friend Vector4< T > operator* (const Vector4< T > &a, const Matrix4f &b)
 
_FCT_CPU_GPU_ friend Vector4< T > operator/ (const Vector4< T > &a, T b)
 
_FCT_CPU_GPU_ friend Vector4< T > operator/ (const Vector4< T > &a, const Vector4< T > &b)
 

Detailed Description

template<typename T>
class sl::Vector4< T >

Represents a four dimensions vector for both CPU and GPU.

Constructor and Destructor

_FCT_CPU_GPU_ Vector4 ( )
inline
_FCT_CPU_GPU_ Vector4 ( const T &  t)
inline
_FCT_CPU_GPU_ Vector4 ( const T *  tp)
inline
_FCT_CPU_GPU_ Vector4 ( const T  v0,
const T  v1,
const T  v2,
const T  v3 
)
inline
_FCT_CPU_GPU_ Vector4 ( const Vector4< T > &  v)
inline
_FCT_CPU_GPU_ Vector4 ( const Vector4< T > &  v,
const T  d 
)
inline

Functions

_FCT_CPU_GPU_ int size ( ) const
inline
_FCT_CPU_GPU_ const T* ptr ( ) const
inline
_FCT_CPU_GPU_ Vector4<T>& setValues ( const T *  b)
inline
_FCT_CPU_GPU_ T& operator[] ( int  i)
inline
_FCT_CPU_GPU_ const T& operator[] ( int  i) const
inline
_FCT_CPU_GPU_ float norm ( )
inline

returns the norm of the vector

_FCT_CPU_GPU_ float square ( )
inline

returns the squared norm of the vector

_FCT_CPU_GPU_ float sum ( )
inline

returns the sum of the vector

static _FCT_CPU_GPU_ float dot ( const Vector4< T > &  a,
const Vector4< T > &  b 
)
inlinestatic

returns the dot product of two vector

static _FCT_CPU_GPU_ float distance ( const Vector4< T > &  a,
const Vector4< T > &  b 
)
inlinestatic

returns the distance between two vector

Friends And Related Function Documentation

_FCT_CPU_GPU_ friend Vector4<T>& operator+= ( Vector4< T > &  itself,
d 
)
friend
_FCT_CPU_GPU_ friend Vector4<T>& operator+= ( Vector4< T > &  itself,
const Vector4< T > &  b 
)
friend
_FCT_CPU_GPU_ friend Vector4<T>& operator-= ( Vector4< T > &  itself,
d 
)
friend
_FCT_CPU_GPU_ friend Vector4<T>& operator-= ( Vector4< T > &  itself,
const Vector4< T > &  b 
)
friend
_FCT_CPU_GPU_ friend Vector4<T>& operator*= ( Vector4< T > &  itself,
d 
)
friend
_FCT_CPU_GPU_ friend Vector4<T>& operator*= ( Vector4< T > &  itself,
const Vector4< T > &  b 
)
friend
_FCT_CPU_GPU_ friend Vector4<T>& operator*= ( Vector4< T > &  itself,
const Matrix4f b 
)
friend
_FCT_CPU_GPU_ friend Vector4<T>& operator/= ( Vector4< T > &  itself,
d 
)
friend
_FCT_CPU_GPU_ friend Vector4<T>& operator/= ( Vector4< T > &  itself,
const Vector4< T > &  b 
)
friend
_FCT_CPU_GPU_ friend Vector4<T> operator- ( const Vector4< T > &  b)
friend
_FCT_CPU_GPU_ friend Vector4<T> operator+ ( const Vector4< T > &  a,
const Vector4< T > &  b 
)
friend
_FCT_CPU_GPU_ friend Vector4<T> operator- ( const Vector4< T > &  a,
const Vector4< T > &  b 
)
friend
_FCT_CPU_GPU_ friend Vector4<T> operator* ( const Vector4< T > &  a,
b 
)
friend
_FCT_CPU_GPU_ friend Vector4<T> operator* ( a,
const Vector4< T > &  b 
)
friend
_FCT_CPU_GPU_ friend Vector4<T> operator* ( const Vector4< T > &  a,
const Vector4< T > &  b 
)
friend
_FCT_CPU_GPU_ friend Vector4<T> operator* ( const Vector4< T > &  a,
const Matrix4f b 
)
friend
_FCT_CPU_GPU_ friend Vector4<T> operator/ ( const Vector4< T > &  a,
b 
)
friend
_FCT_CPU_GPU_ friend Vector4<T> operator/ ( const Vector4< T > &  a,
const Vector4< T > &  b 
)
friend