jrlMathTools::Vector4D< T > Struct Template Reference

Generic 4D vector. More...

#include <jrl/mathtools/vector4.hh>

List of all members.

Public Member Functions

 Vector4D ()
 Default constructor: all fields are set to zero.
 Vector4D (const T &x, const T &y, const T &z, const T &w=1.)
Vector4D< T > operator= (const Vector4D< T > &v)
 Assignement operator.
Vector4D< T > operator= (const Vector3D< T > &v)
 Assignement operator from vector3d.
Vector4D< T > operator- ()
 Unary operator -.
T & operator[] (unsigned i)
 Array operator.
const T & operator[] (unsigned i) const
 Array operator.
T & operator() (unsigned i)
 Array operator.
operator() (unsigned i) const
 Array operator.
bool operator== (const Vector4D< T > &v) const
 Binary operator ==.
Vector4D< T > operator+ (const Vector4D< T > &v) const
 Binary operator +.
Vector4D< T > operator- (const Vector4D< T > &v) const
 Binary operator -.
void operator+= (const Vector4D< T > &v)
 Binary operator +=.
void operator-= (const Vector4D< T > &v)
 Binary operator -=.
Vector4D< T > operator* (const T &t) const
 Binary operator *.
Vector4D< T > operator/ (const T &t) const
 Binary operator /.
void operator*= (const T &t)
 Binary operator *=.
void operator/= (const T &t)
 Binary operator /=.
void normalize ()
 Normalize.
norm () const
 Get the norm.
normsquared () const
 Get the norm squared.
std::ostream & display (std::ostream &os) const

Public Attributes

m_x
m_y
m_z
m_w

Detailed Description

template<typename T>
struct jrlMathTools::Vector4D< T >

Generic 4D vector.


Constructor & Destructor Documentation

template<typename T>
jrlMathTools::Vector4D< T >::Vector4D ( ) [inline]

Default constructor: all fields are set to zero.

template<typename T>
jrlMathTools::Vector4D< T >::Vector4D ( const T &  x,
const T &  y,
const T &  z,
const T &  w = 1. 
) [inline, explicit]

Member Function Documentation

template<typename T>
std::ostream& jrlMathTools::Vector4D< T >::display ( std::ostream &  os) const [inline]
template<typename T>
T& jrlMathTools::Vector4D< T >::operator() ( unsigned  i) [inline]

Array operator.

template<typename T>
T jrlMathTools::Vector4D< T >::operator() ( unsigned  i) const [inline]

Array operator.

template<typename T>
Vector4D<T> jrlMathTools::Vector4D< T >::operator* ( const T &  t) const [inline]
template<typename T>
void jrlMathTools::Vector4D< T >::operator*= ( const T &  t) [inline]
template<typename T>
Vector4D<T> jrlMathTools::Vector4D< T >::operator+ ( const Vector4D< T > &  v) const [inline]
template<typename T>
void jrlMathTools::Vector4D< T >::operator+= ( const Vector4D< T > &  v) [inline]
template<typename T>
Vector4D<T> jrlMathTools::Vector4D< T >::operator- ( const Vector4D< T > &  v) const [inline]
template<typename T>
void jrlMathTools::Vector4D< T >::operator-= ( const Vector4D< T > &  v) [inline]
template<typename T>
Vector4D<T> jrlMathTools::Vector4D< T >::operator/ ( const T &  t) const [inline]
template<typename T>
void jrlMathTools::Vector4D< T >::operator/= ( const T &  t) [inline]
template<typename T>
Vector4D<T> jrlMathTools::Vector4D< T >::operator= ( const Vector4D< T > &  v) [inline]
template<typename T>
bool jrlMathTools::Vector4D< T >::operator== ( const Vector4D< T > &  v) const [inline]
template<typename T>
T& jrlMathTools::Vector4D< T >::operator[] ( unsigned  i) [inline]
template<typename T>
const T& jrlMathTools::Vector4D< T >::operator[] ( unsigned  i) const [inline]

Member Data Documentation

 All Classes Namespaces Files Functions Variables Typedefs Defines