8 #ifndef _PYIMATH_FIXEDARRAY_TRAITS_H
9 #define _PYIMATH_FIXEDARRAY_TRAITS_H
23 static char PyFmtStr_int[2] = {
'i',
'\0'};
24 static char PyFmtStr_float[2] = {
'f',
'\0'};
25 static char PyFmtStr_double[2] = {
'd',
'\0'};
26 static char PyFmtStr_bool[2] = {
'?',
'\0'};
27 static char PyFmtStr_char[2] = {
'b',
'\0'};
28 static char PyFmtStr_short[2] = {
'h',
'\0'};
29 static char PyFmtStr_long[2] = {
'l',
'\0'};
30 static char PyFmtStr_longlong[2] = {
'q',
'\0'};
31 static char PyFmtStr_uchar[2] = {
'B',
'\0'};
32 static char PyFmtStr_ushort[2] = {
'H',
'\0'};
33 static char PyFmtStr_uint[2] = {
'I',
'\0'};
34 static char PyFmtStr_ulong[2] = {
'L',
'\0'};
35 static char PyFmtStr_ulonglong[2] = {
'Q',
'\0'};
36 static char PyFmtStr_half[2] = {
'e',
'\0'};
39 template <
typename T> constexpr
char*
PyFormat();
56 template <> constexpr
char* PyFormat<IMATH_NAMESPACE::Vec2<short> >() {
return PyFmtStr_short; }
57 template <> constexpr
char* PyFormat<IMATH_NAMESPACE::Vec2<int> >() {
return PyFmtStr_int; }
58 template <> constexpr
char* PyFormat<IMATH_NAMESPACE::Vec2<int64_t> >() {
return PyFmtStr_long; }
59 template <> constexpr
char* PyFormat<IMATH_NAMESPACE::Vec2<float> >() {
return PyFmtStr_float; }
60 template <> constexpr
char* PyFormat<IMATH_NAMESPACE::Vec2<double> >() {
return PyFmtStr_double; }
61 template <> constexpr
char* PyFormat<IMATH_NAMESPACE::Vec3<short> >() {
return PyFmtStr_short; }
62 template <> constexpr
char* PyFormat<IMATH_NAMESPACE::Vec3<int> >() {
return PyFmtStr_int; }
63 template <> constexpr
char* PyFormat<IMATH_NAMESPACE::Vec3<int64_t> >() {
return PyFmtStr_long; }
64 template <> constexpr
char* PyFormat<IMATH_NAMESPACE::Vec3<float> >() {
return PyFmtStr_float; }
65 template <> constexpr
char* PyFormat<IMATH_NAMESPACE::Vec3<double> >() {
return PyFmtStr_double; }
66 template <> constexpr
char* PyFormat<IMATH_NAMESPACE::Vec4<short> >() {
return PyFmtStr_short; }
67 template <> constexpr
char* PyFormat<IMATH_NAMESPACE::Vec4<int> >() {
return PyFmtStr_int; }
68 template <> constexpr
char* PyFormat<IMATH_NAMESPACE::Vec4<int64_t> >() {
return PyFmtStr_long; }
69 template <> constexpr
char* PyFormat<IMATH_NAMESPACE::Vec4<float> >() {
return PyFmtStr_float; }
70 template <> constexpr
char* PyFormat<IMATH_NAMESPACE::Vec4<double> >() {
return PyFmtStr_double; }
typedef int(APIENTRYP RE_PFNGLXSWAPINTERVALSGIPROC)(int)
constexpr char * PyFormat< half >()
GLsizei const GLfloat * value
constexpr char * PyFormat< char >()
constexpr char * PyFormat< short >()
constexpr char * PyFormat< long long >()
constexpr char * PyFormat< unsigned long long >()
static const Py_ssize_t value
static const Py_ssize_t value
constexpr char * PyFormat< unsigned int >()
constexpr char * PyFormat< unsigned long >()
IMATH_NAMESPACE::V2f IMATH_NAMESPACE::Box2i std::string this attribute is obsolete as of OpenEXR v3 float
static const Py_ssize_t value
constexpr char * PyFormat< double >()
constexpr char * PyFormat< int >()
constexpr char * PyFormat< unsigned char >()
constexpr char * PyFormat< float >()
constexpr char * PyFormat< long >()
constexpr char * PyFormat< unsigned short >()
constexpr char * PyFormat()
constexpr char * PyFormat< bool >()