SOFA API  59c939c2
Open source framework for multi-physics simuation
sofa::defaulttype::StdVectorTypes< TCoord, TDeriv, TReal > Class Template Reference

#include <VecTypes.h>

Inheritance diagram for sofa::defaulttype::StdVectorTypes< TCoord, TDeriv, TReal >:

Classes

struct  Impl
 default implementation for size >= 3 More...
 
struct  Impl< 1, T >
 specialization for size == 1 More...
 
struct  Impl< 2, T >
 specialization for size == 2 More...
 

Static Public Member Functions

static const CPosgetCPos (const Coord &c)
 
static void setCPos (Coord &c, const CPos &v)
 
static const DPosgetDPos (const Deriv &d)
 
static void setDPos (Deriv &d, const DPos &v)
 
template<typename T >
static void set (Coord &c, T x, T y, T z)
 
template<typename T >
static void get (T &x, T &y, T &z, const Coord &c)
 
static Deriv randomDeriv (Real minMagnitude, Real maxMagnitude)
 Return a Deriv with random value. Each entry with magnitude smaller than the given value. More...
 
static Deriv coordDifference (const Coord &c1, const Coord &c2)
 
template<typename T >
static void add (Coord &c, T x, T y, T z)
 
static const char * Name ()
 
static Coord interpolate (const helper::vector< Coord > &ancestors, const helper::vector< Real > &coefs)
 

Function details

template<class TCoord, class TDeriv, class TReal = typename TCoord::value_type>
template<typename T >
static void sofa::defaulttype::StdVectorTypes< TCoord, TDeriv, TReal >::add ( Coord c,
x,
y,
z 
)
inlinestatic
template<class TCoord, class TDeriv, class TReal = typename TCoord::value_type>
static Deriv sofa::defaulttype::StdVectorTypes< TCoord, TDeriv, TReal >::coordDifference ( const Coord c1,
const Coord c2 
)
inlinestatic
template<class TCoord, class TDeriv, class TReal = typename TCoord::value_type>
template<typename T >
static void sofa::defaulttype::StdVectorTypes< TCoord, TDeriv, TReal >::get ( T &  x,
T &  y,
T &  z,
const Coord c 
)
inlinestatic
template<class TCoord, class TDeriv, class TReal = typename TCoord::value_type>
static const CPos& sofa::defaulttype::StdVectorTypes< TCoord, TDeriv, TReal >::getCPos ( const Coord c)
inlinestatic
template<class TCoord, class TDeriv, class TReal = typename TCoord::value_type>
static const DPos& sofa::defaulttype::StdVectorTypes< TCoord, TDeriv, TReal >::getDPos ( const Deriv d)
inlinestatic
template<class TCoord, class TDeriv, class TReal = typename TCoord::value_type>
static Coord sofa::defaulttype::StdVectorTypes< TCoord, TDeriv, TReal >::interpolate ( const helper::vector< Coord > &  ancestors,
const helper::vector< Real > &  coefs 
)
inlinestatic
const char * sofa::defaulttype::Vec6fTypes::Name ( )
inlinestatic
template<class TCoord, class TDeriv, class TReal = typename TCoord::value_type>
static Deriv sofa::defaulttype::StdVectorTypes< TCoord, TDeriv, TReal >::randomDeriv ( Real  minMagnitude,
Real  maxMagnitude 
)
inlinestatic

Return a Deriv with random value. Each entry with magnitude smaller than the given value.

template<class TCoord, class TDeriv, class TReal = typename TCoord::value_type>
template<typename T >
static void sofa::defaulttype::StdVectorTypes< TCoord, TDeriv, TReal >::set ( Coord c,
x,
y,
z 
)
inlinestatic
template<class TCoord, class TDeriv, class TReal = typename TCoord::value_type>
static void sofa::defaulttype::StdVectorTypes< TCoord, TDeriv, TReal >::setCPos ( Coord c,
const CPos v 
)
inlinestatic
template<class TCoord, class TDeriv, class TReal = typename TCoord::value_type>
static void sofa::defaulttype::StdVectorTypes< TCoord, TDeriv, TReal >::setDPos ( Deriv d,
const DPos v 
)
inlinestatic

Enum details

template<class TCoord, class TDeriv, class TReal = typename TCoord::value_type>
anonymous enum
Enumerator
spatial_dimensions 
template<class TCoord, class TDeriv, class TReal = typename TCoord::value_type>
anonymous enum
Enumerator
coord_total_size 
template<class TCoord, class TDeriv, class TReal = typename TCoord::value_type>
anonymous enum
Enumerator
deriv_total_size