PyAPI: Add PyC_Tuple_Pack_F64 utility
This commit is contained in:
parent
71d7d6cd8c
commit
31f2a6755d
Notes:
blender-bot
2023-02-14 06:04:13 +01:00
Referenced by issue #54504, Cycles Displacement node not automatically inserted in older files when linking Referenced by issue #54505, Difference in render
|
@ -146,6 +146,15 @@ PyObject *PyC_Tuple_PackArray_F32(const float *array, uint len)
|
|||
return tuple;
|
||||
}
|
||||
|
||||
PyObject *PyC_Tuple_PackArray_F64(const double *array, uint len)
|
||||
{
|
||||
PyObject *tuple = PyTuple_New(len);
|
||||
for (uint i = 0; i < len; i++) {
|
||||
PyTuple_SET_ITEM(tuple, i, PyFloat_FromDouble(array[i]));
|
||||
}
|
||||
return tuple;
|
||||
}
|
||||
|
||||
PyObject *PyC_Tuple_PackArray_I32(const int *array, uint len)
|
||||
{
|
||||
PyObject *tuple = PyTuple_New(len);
|
||||
|
|
|
@ -51,12 +51,15 @@ int PyC_AsArray(
|
|||
const PyTypeObject *type, const bool is_double, const char *error_prefix);
|
||||
|
||||
PyObject *PyC_Tuple_PackArray_F32(const float *array, uint len);
|
||||
PyObject *PyC_Tuple_PackArray_F64(const double *array, uint len);
|
||||
PyObject *PyC_Tuple_PackArray_I32(const int *array, uint len);
|
||||
PyObject *PyC_Tuple_PackArray_I32FromBool(const int *array, uint len);
|
||||
PyObject *PyC_Tuple_PackArray_Bool(const bool *array, uint len);
|
||||
|
||||
#define PyC_Tuple_Pack_F32(...) \
|
||||
PyC_Tuple_PackArray_F32(((const float []){__VA_ARGS__}), VA_NARGS_COUNT(__VA_ARGS__))
|
||||
#define PyC_Tuple_Pack_F64(...) \
|
||||
PyC_Tuple_PackArray_F64(((const double []){__VA_ARGS__}), VA_NARGS_COUNT(__VA_ARGS__))
|
||||
#define PyC_Tuple_Pack_I32(...) \
|
||||
PyC_Tuple_PackArray_I32(((const int []){__VA_ARGS__}), VA_NARGS_COUNT(__VA_ARGS__))
|
||||
#define PyC_Tuple_Pack_I32FromBool(...) \
|
||||
|
|
Loading…
Reference in New Issue