OSG::VecStorage4< ValueTypeT > Class Template Reference

#include <OSGVector.h>

Inheritance diagram for OSG::VecStorage4< ValueTypeT >:

OSG::PointInterface< ValueTypeT, VecStorage4< ValueTypeT > > OSG::VectorInterface< ValueTypeT, VecStorage4< ValueTypeT > > OSG::Color4< ValueTypeT > List of all members.

Public Member Functions

Constructor


 VecStorage4 (void)
Destructor


 ~VecStorage4 (void)
Access


void setValues (const ValueTypeT rVal1, const ValueTypeT rVal2, const ValueTypeT rVal3, const ValueTypeT rVal4)
void getSeparateValues (ValueTypeT &rVal1, ValueTypeT &rVal2, ValueTypeT &rVal3, ValueTypeT &rVal4) const
ValueTypeT x (void) const
ValueTypeT y (void) const
ValueTypeT z (void) const
ValueTypeT w (void) const

Static Public Attributes

static const UInt32 _uiSize = 4
 Storage size.

Protected Attributes

ValueTypeT _values [_uiSize]
 Value store.

Private Member Functions

 VecStorage4 (const VecStorage4 &source)
 prohibit default function (move to 'public' if needed)
void operator= (const VecStorage4 &source)
 prohibit default function (move to 'public' if needed)

Detailed Description

template<class ValueTypeT>
class OSG::VecStorage4< ValueTypeT >

Vector storage holding 4 elements, for details about how vectors, points and matrices are actually build see BaseMath.

Definition at line 266 of file OSGVector.h.


Constructor & Destructor Documentation

template<class ValueTypeT>
OSG::VecStorage4< ValueTypeT >::VecStorage4 ( void   )  [inline]

Definition at line 263 of file OSGVector.inl.

References OSG::VecStorage4< ValueTypeT >::_uiSize, and OSG::VecStorage4< ValueTypeT >::_values.

00264 {
00265     for(UInt32 i = 0; i < _uiSize; i++)
00266     {
00267         _values[i] = TypeTraits<ValueTypeT>::getZeroElement();
00268     }
00269 }

template<class ValueTypeT>
OSG::VecStorage4< ValueTypeT >::~VecStorage4 ( void   )  [inline]

Definition at line 273 of file OSGVector.inl.

00274 {
00275 }

template<class ValueTypeT>
OSG::VecStorage4< ValueTypeT >::VecStorage4 ( const VecStorage4< ValueTypeT > &  source  )  [private]


Member Function Documentation

template<class ValueTypeT>
void OSG::VecStorage4< ValueTypeT >::setValues ( const ValueTypeT  rVal1,
const ValueTypeT  rVal2,
const ValueTypeT  rVal3,
const ValueTypeT  rVal4 
) [inline]

template<class ValueTypeT>
void OSG::VecStorage4< ValueTypeT >::getSeparateValues ( ValueTypeT &  rVal1,
ValueTypeT &  rVal2,
ValueTypeT &  rVal3,
ValueTypeT &  rVal4 
) const [inline]

Definition at line 292 of file OSGVector.inl.

References OSG::VecStorage4< ValueTypeT >::_values.

00296 {
00297     rVal1 = _values[0];
00298     rVal2 = _values[1];
00299     rVal3 = _values[2];
00300     rVal4 = _values[3];
00301 }

template<class ValueTypeT>
ValueTypeT OSG::VecStorage4< ValueTypeT >::x ( void   )  const [inline]

Definition at line 305 of file OSGVector.inl.

References OSG::VecStorage4< ValueTypeT >::_values.

00306 {
00307     return _values[0];
00308 }

template<class ValueTypeT>
ValueTypeT OSG::VecStorage4< ValueTypeT >::y ( void   )  const [inline]

Definition at line 312 of file OSGVector.inl.

References OSG::VecStorage4< ValueTypeT >::_values.

00313 {
00314     return _values[1];
00315 }

template<class ValueTypeT>
ValueTypeT OSG::VecStorage4< ValueTypeT >::z ( void   )  const [inline]

Definition at line 319 of file OSGVector.inl.

References OSG::VecStorage4< ValueTypeT >::_values.

00320 {
00321     return _values[2];
00322 }

template<class ValueTypeT>
ValueTypeT OSG::VecStorage4< ValueTypeT >::w ( void   )  const [inline]

Definition at line 326 of file OSGVector.inl.

References OSG::VecStorage4< ValueTypeT >::_values.

00327 {
00328     return _values[3];
00329 }

template<class ValueTypeT>
void OSG::VecStorage4< ValueTypeT >::operator= ( const VecStorage4< ValueTypeT > &  source  )  [private]


Member Data Documentation

template<class ValueTypeT>
VecStorage4::VectorSizeE OSG::VecStorage4< ValueTypeT >::_uiSize = 4 [static]

Definition at line 272 of file OSGVector.h.

Referenced by OSG::VecStorage4< ValueTypeT >::VecStorage4().

template<class ValueTypeT>
ValueTypeT OSG::VecStorage4< ValueTypeT >::_values[iSize] [protected]


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