45#ifndef _INCLUDED_Field3D_Traits_H_
46#define _INCLUDED_Field3D_Traits_H_
90#ifdef FIELD3D_VERSION_NS
97typedef Imath::Vec3<float16_t>
vec16_t;
98typedef Imath::Vec3<float32_t>
vec32_t;
99typedef Imath::Vec3<float64_t>
vec64_t;
100typedef Imath::Vec3<int32_t>
veci32_t;
172template <
class Data_T>
269 return typeid(T).
name();
281template <
class Field_T>
290 m_name = Field_T::staticClassName();
305template <
typename Field_T>
314 typedef typename Field_T::NestedType NestedType;
315 typedef typename NestedType::value_type value_type;
317 m_name = Field_T::staticClassName();
319 std::string(
"<") + NestedType::staticClassName() +
"<" +
330#define FIELD3D_DECL_DATATYPENAME(typeName) \
332 inline std::string DataTypeTraits<typeName>::name() \
334 return std::string(#typeName); \
Contains the Log class which can be used to redirect output to an arbitrary destination.
FIELD3D_NAMESPACE_OPENtypedef ::half half
OgDataType
Enumerates the various uses for Ogawa-level groups.
#define FIELD3D_DECL_DATATYPENAME(typeName)
Contains typedefs for the commonly used types in Field3D.
static const int k_dataDims
Dimensions of the given data type. i.e. 3 for V3f, 1 for float.
#define FIELD3D_NAMESPACE_HEADER_CLOSE
static std::string name()
static DataTypeEnum typeEnum()
Used to return a string for the name of a nested templated field.
Used to return a string for the name of a templated field.