11 #ifndef __VEX_PodTypes__
12 #define __VEX_PodTypes__
48 static constexpr
int bitsize = 32;
64 static constexpr
int bitsize = 64;
87 for (; a !=
b; ++
a, ++disabled)
88 *a = *disabled ? *a : val;
91 template <>
inline void
97 template <>
inline void
104 template <
typename T>
106 VEXpodCopy(
const T *a,
const T *b, T *dest)
113 template <
typename T>
115 VEXpodCopy(
const T *a,
const T *b, T *dest,
const uint32 *disabled)
118 for (; a !=
b; ++
a, ++dest, ++disabled)
119 *dest = *disabled ? *dest : *a;
144 inline namespace Literal {
int32 * VEXpodCopy< int32 >(const int32 *a, const int32 *b, int32 *dest, const uint32 *disabled)
UT_Matrix4T< fpreal64 > UT_Matrix4D
void VEXpodFill(fpreal32 *a, const fpreal32 *b, const fpreal32 &val, const uint32 *disabled)
OIIO_UTIL_API bool copy(string_view from, string_view to, std::string &err)
UT_Vector2T< fpreal64 > UT_Vector2D
constexpr VEX_Precision VEX_64
GLboolean GLboolean GLboolean GLboolean a
typename VEX_PrecisionResolver< P >::vec3_type VEXvec3
UT_QuaternionT< fpreal32 > UT_QuaternionF
fpreal32 * VEXpodCopy< fpreal32 >(const fpreal32 *a, const fpreal32 *b, fpreal32 *dest, const uint32 *disabled)
typename VEX_PrecisionResolver< P >::quat_type VEXquaternion
typename VEX_PrecisionResolver< P >::float_type VEXfloat
UT_QuaternionT< fpreal64 > UT_QuaternionD
UT_Matrix4T< fpreal32 > UT_Matrix4F
constexpr VEX_Precision VEX_32
typename VEX_PrecisionResolver< P >::mat4_type VEXmat4
UT_Matrix3T< fpreal32 > UT_Matrix3F
UT_Vector3T< fpreal64 > UT_Vector3D
GLboolean GLboolean GLboolean b
UT_Matrix2T< fpreal64 > UT_Matrix2D
UT_Vector3T< fpreal32 > UT_Vector3F
typename VEX_PrecisionResolver< P >::mat2_type VEXmat2
UT_Vector2T< fpreal32 > UT_Vector2F
typename VEX_PrecisionResolver< P >::vec2_type VEXvec2
UT_Vector4T< fpreal32 > UT_Vector4F
VM_SIV set(fpreal32 *d, const fpreal32 *a, exint num, const uint32 *disabled)
VM_Math::set(d, a, disabled) := d[i] = disabled[i] ? d[i] : a[i].
typename VEX_PrecisionResolver< P >::vec4_type VEXvec4
typename VEX_PrecisionResolver< P >::int_type VEXint
UT_Vector4T< fpreal64 > UT_Vector4D
UT_Matrix2T< fpreal32 > UT_Matrix2F
typename VEX_PrecisionResolver< P >::mat3_type VEXmat3
void VEXpodFill< fpreal32 >(fpreal32 *a, fpreal32 *b, const fpreal32 &v)
UT_Matrix3T< fpreal64 > UT_Matrix3D