13 #ifndef __UT_VectorTypes__
14 #define __UT_VectorTypes__
23 #define UT_VECTORTYPES_HAVE_FPREAL 1
165 template< typename FT, template<typename>
class V >
173 template<
typename FT,
template<
typename>
class V >
174 inline const V<double>
181 template<
typename FT,
template<
typename>
class V >
182 inline const V<float>
189 #if (SYS_SIZEOF_FPREAL == 4)
190 #define UT_R_FROM_D(VAL) UTconvertToR(VAL)
191 #define UT_R_FROM_F(VAL) (VAL)
192 #define UT_D_FROM_R(VAL) UTconvertToD(VAL)
193 #define UT_F_FROM_R(VAL) (VAL)
194 #elif (SYS_SIZEOF_FPREAL == 8)
195 #define UT_R_FROM_F(VAL) UTconvertToR(VAL)
196 #define UT_R_FROM_D(VAL) (VAL)
197 #define UT_F_FROM_R(VAL) UTconvertToF(VAL)
198 #define UT_D_FROM_R(VAL) (VAL)
200 #error Missing FPREAL type
205 static inline const char *UT_TypeShortName();
245 template <
typename T>
UT_Vector2T< int64 > UT_Vector2I
UT_Matrix4T< double > UT_DMatrix4
UT_Matrix4T< fpreal64 > UT_Matrix4D
UT_Matrix3T< double > UT_DMatrix3
UT_Vector3T< fpreal16 > UT_Vector3H
const V< double > UTconvertToD(const V< FT > &v)
*get result *(waiting if necessary)*A common idiom is to fire a bunch of sub tasks at the and then *wait for them to all complete We provide a helper class
UT_Vector3T< int32 > UT_Vector3i
UT_Vector2T< float > UT_Vector2
const char * UT_TypeShortName< int64 >()
UT_Vector2T< fpreal64 > UT_Vector2D
UT_Vector3T< float > UT_Vector3
UT_Vector4T< int64 > UT_Vector4I
UT_Vector3T< int64 > UT_Vector3I
UT_Matrix3T< fpreal > UT_Matrix3R
UT_Matrix4T< float > UT_Matrix4
const char * UT_TypeShortName< fpreal32 >()
UT_Vector4T< fpreal > UT_Vector4R
UT_Vector4T< int32 > UT_Vector4i
UT_Vector4T< float > UT_Vector4
UT_Matrix2T< fpreal > UT_Matrix2R
UT_QuaternionT< fpreal > UT_QuaternionR
UT_Matrix3T< float > UT_Matrix3
UT_Vector4T< fpreal16 > UT_Vector4H
UT_Matrix2T< double > UT_DMatrix2
UT_QuaternionT< fpreal16 > UT_QuaternionH
const char * UT_TypeShortName< int32 >()
UT_Matrix2T< float > UT_Matrix2
typename UT_TypePromoteT< T >::PreciseType UT_PreciseT
UT_Matrix4T< fpreal32 > UT_Matrix4F
#define SYS_DECLARE_IS_POD(T)
Declare a type as POD.
UT_Vector2T< fpreal16 > UT_Vector2H
UT_Matrix3T< fpreal32 > UT_Matrix3F
UT_Vector3T< fpreal64 > UT_Vector3D
UT_QuaternionT< fpreal32 > UT_QuaternionF
UT_QuaternionT< fpreal64 > UT_QuaternionD
UT_QuaternionT< float > UT_Quaternion
UT_Matrix2T< fpreal64 > UT_Matrix2D
UT_Vector3T< fpreal32 > UT_Vector3F
const char * UT_TypeShortName< fpreal16 >()
const V< fpreal > UTconvertToR(const V< FT > &v)
UT_Vector2T< fpreal32 > UT_Vector2F
UT_Vector2T< fpreal > UT_Vector2R
UT_Vector4T< fpreal32 > UT_Vector4F
UT_Vector3T< fpreal > UT_Vector3R
const char * UT_TypeShortName< fpreal64 >()
UT_Matrix4T< fpreal > UT_Matrix4R
UT_Vector4T< fpreal64 > UT_Vector4D
UT_Matrix2T< fpreal32 > UT_Matrix2F
UT_Vector2T< int32 > UT_Vector2i
const V< float > UTconvertToF(const V< FT > &v)
UT_Matrix3T< fpreal64 > UT_Matrix3D