Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGermano Cavalcante <germano.costa@ig.com.br>2021-02-17 16:48:08 +0300
committerGermano Cavalcante <germano.costa@ig.com.br>2021-02-17 18:27:19 +0300
commit4430e8a00810ca8df2fa20029c4cb8078e8cdbe6 (patch)
treeacea8dc3d311f94c7cd5eabd36371bc76ec06b3f /source/blender/python/generic
parentec8c09f2aafdc7c13bb27c0f74e9def83c0400c7 (diff)
Python: gpu module: add new submodules and types
This commit extends the gpu python API with: ``` gpu.types.Buffer #"__init__", "to_list" gpu.types.GPUTexture #"__init__", "clear", "read", "format" gpu.types.GPUFrameBuffer #"__init__", "bind", "clear", "is_bound", "viewport", ("__enter__", "__exit__" with "GPUFrameBufferStackContext") gpu.types.GPUUniformBuf #"__init__", "update" gpu.state #"blend_set", "blend_get", "depth_test_set", "depth_test_get", "depth_mask_set", "depth_mask_get", "viewport_set", "viewport_get", "line_width_set", "line_width_get", "point_size_set", "color_mask_set", "face_culling_set", "front_facing_set", "program_point_size_set" ``` Add these methods to existing objects: ``` gpu.types.GPUShader #"uniform_sample", "uniform_buffer" ``` Maniphest Tasks: T80481 Differential Revision: https://developer.blender.org/D8826
Diffstat (limited to 'source/blender/python/generic')
-rw-r--r--source/blender/python/generic/py_capi_utils.c11
-rw-r--r--source/blender/python/generic/py_capi_utils.h2
2 files changed, 13 insertions, 0 deletions
diff --git a/source/blender/python/generic/py_capi_utils.c b/source/blender/python/generic/py_capi_utils.c
index c7ce264f2f9..351ba884d49 100644
--- a/source/blender/python/generic/py_capi_utils.c
+++ b/source/blender/python/generic/py_capi_utils.c
@@ -282,6 +282,17 @@ int PyC_ParseStringEnum(PyObject *o, void *p)
return 0;
}
+const char *PyC_StringEnum_FindIDFromValue(const struct PyC_StringEnumItems *items,
+ const int value)
+{
+ for (int i = 0; items[i].id; i++) {
+ if (items[i].value == value) {
+ return items[i].id;
+ }
+ }
+ return NULL;
+}
+
/* silly function, we dont use arg. just check its compatible with __deepcopy__ */
int PyC_CheckArgs_DeepCopy(PyObject *args)
{
diff --git a/source/blender/python/generic/py_capi_utils.h b/source/blender/python/generic/py_capi_utils.h
index aacc5dd7bea..842e1482c06 100644
--- a/source/blender/python/generic/py_capi_utils.h
+++ b/source/blender/python/generic/py_capi_utils.h
@@ -140,6 +140,8 @@ struct PyC_StringEnum {
};
int PyC_ParseStringEnum(PyObject *o, void *p);
+const char *PyC_StringEnum_FindIDFromValue(const struct PyC_StringEnumItems *items,
+ const int value);
int PyC_CheckArgs_DeepCopy(PyObject *args);