[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [35267] trunk/blender/source: change return values from mathutils callbacks to match pythons ( -1 is error), so error macro's can be used in both.
Campbell Barton
ideasman42 at gmail.com
Mon Feb 28 19:42:41 CET 2011
Revision: 35267
http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=35267
Author: campbellbarton
Date: 2011-02-28 18:42:41 +0000 (Mon, 28 Feb 2011)
Log Message:
-----------
change return values from mathutils callbacks to match pythons (-1 is error), so error macro's can be used in both.
Modified Paths:
--------------
trunk/blender/source/blender/python/generic/mathutils.c
trunk/blender/source/blender/python/generic/mathutils.h
trunk/blender/source/blender/python/generic/mathutils_Color.c
trunk/blender/source/blender/python/generic/mathutils_Euler.c
trunk/blender/source/blender/python/generic/mathutils_Matrix.c
trunk/blender/source/blender/python/generic/mathutils_Quaternion.c
trunk/blender/source/blender/python/generic/mathutils_Vector.c
trunk/blender/source/blender/python/generic/mathutils_geometry.c
trunk/blender/source/blender/python/intern/bpy_rna.c
trunk/blender/source/gameengine/Ketsji/KX_GameObject.cpp
trunk/blender/source/gameengine/Ketsji/KX_ObjectActuator.cpp
trunk/blender/source/gameengine/Ketsji/KX_PyMath.h
Modified: trunk/blender/source/blender/python/generic/mathutils.c
===================================================================
--- trunk/blender/source/blender/python/generic/mathutils.c 2011-02-28 15:42:15 UTC (rev 35266)
+++ trunk/blender/source/blender/python/generic/mathutils.c 2011-02-28 18:42:41 UTC (rev 35267)
@@ -152,7 +152,7 @@
(QuaternionObject_Check(value) && (size= 4)) ||
(ColorObject_Check(value) && (size= 3))
) {
- if(!BaseMath_ReadCallback((BaseMathObject *)value)) {
+ if(BaseMath_ReadCallback((BaseMathObject *)value) == -1) {
return -1;
}
@@ -175,7 +175,7 @@
int mathutils_any_to_rotmat(float rmat[3][3], PyObject *value, const char *error_prefix)
{
if(EulerObject_Check(value)) {
- if(!BaseMath_ReadCallback((BaseMathObject *)value)) {
+ if(BaseMath_ReadCallback((BaseMathObject *)value) == -1) {
return -1;
}
else {
@@ -184,7 +184,7 @@
}
}
else if (QuaternionObject_Check(value)) {
- if(!BaseMath_ReadCallback((BaseMathObject *)value)) {
+ if(BaseMath_ReadCallback((BaseMathObject *)value) == -1) {
return -1;
}
else {
@@ -195,7 +195,7 @@
}
}
else if (MatrixObject_Check(value)) {
- if(!BaseMath_ReadCallback((BaseMathObject *)value)) {
+ if(BaseMath_ReadCallback((BaseMathObject *)value) == -1) {
return -1;
}
else if(((MatrixObject *)value)->col_size < 3 || ((MatrixObject *)value)->row_size < 3) {
@@ -274,45 +274,45 @@
int _BaseMathObject_ReadCallback(BaseMathObject *self)
{
Mathutils_Callback *cb= mathutils_callbacks[self->cb_type];
- if(cb->get(self, self->cb_subtype))
- return 1;
+ if(cb->get(self, self->cb_subtype) != -1)
+ return 0;
if(!PyErr_Occurred())
PyErr_Format(PyExc_RuntimeError, "%s user has become invalid", Py_TYPE(self)->tp_name);
- return 0;
+ return -1;
}
int _BaseMathObject_WriteCallback(BaseMathObject *self)
{
Mathutils_Callback *cb= mathutils_callbacks[self->cb_type];
- if(cb->set(self, self->cb_subtype))
- return 1;
+ if(cb->set(self, self->cb_subtype) != -1)
+ return 0;
if(!PyErr_Occurred())
PyErr_Format(PyExc_RuntimeError, "%s user has become invalid", Py_TYPE(self)->tp_name);
- return 0;
+ return -1;
}
int _BaseMathObject_ReadIndexCallback(BaseMathObject *self, int index)
{
Mathutils_Callback *cb= mathutils_callbacks[self->cb_type];
- if(cb->get_index(self, self->cb_subtype, index))
- return 1;
+ if(cb->get_index(self, self->cb_subtype, index) != -1)
+ return 0;
if(!PyErr_Occurred())
PyErr_Format(PyExc_RuntimeError, "%s user has become invalid", Py_TYPE(self)->tp_name);
- return 0;
+ return -1;
}
int _BaseMathObject_WriteIndexCallback(BaseMathObject *self, int index)
{
Mathutils_Callback *cb= mathutils_callbacks[self->cb_type];
- if(cb->set_index(self, self->cb_subtype, index))
- return 1;
+ if(cb->set_index(self, self->cb_subtype, index) != -1)
+ return 0;
if(!PyErr_Occurred())
PyErr_Format(PyExc_RuntimeError, "%s user has become invalid", Py_TYPE(self)->tp_name);
- return 0;
+ return -1;
}
/* BaseMathObject generic functions for all mathutils types */
Modified: trunk/blender/source/blender/python/generic/mathutils.h
===================================================================
--- trunk/blender/source/blender/python/generic/mathutils.h 2011-02-28 15:42:15 UTC (rev 35266)
+++ trunk/blender/source/blender/python/generic/mathutils.h 2011-02-28 18:42:41 UTC (rev 35267)
@@ -99,10 +99,10 @@
int _BaseMathObject_WriteIndexCallback(BaseMathObject *self, int index);
/* since this is called so often avoid where possible */
-#define BaseMath_ReadCallback(_self) (((_self)->cb_user ? _BaseMathObject_ReadCallback((BaseMathObject *)_self):1))
-#define BaseMath_WriteCallback(_self) (((_self)->cb_user ?_BaseMathObject_WriteCallback((BaseMathObject *)_self):1))
-#define BaseMath_ReadIndexCallback(_self, _index) (((_self)->cb_user ? _BaseMathObject_ReadIndexCallback((BaseMathObject *)_self, _index):1))
-#define BaseMath_WriteIndexCallback(_self, _index) (((_self)->cb_user ? _BaseMathObject_WriteIndexCallback((BaseMathObject *)_self, _index):1))
+#define BaseMath_ReadCallback(_self) (((_self)->cb_user ? _BaseMathObject_ReadCallback((BaseMathObject *)_self):0))
+#define BaseMath_WriteCallback(_self) (((_self)->cb_user ?_BaseMathObject_WriteCallback((BaseMathObject *)_self):0))
+#define BaseMath_ReadIndexCallback(_self, _index) (((_self)->cb_user ? _BaseMathObject_ReadIndexCallback((BaseMathObject *)_self, _index):0))
+#define BaseMath_WriteIndexCallback(_self, _index) (((_self)->cb_user ? _BaseMathObject_WriteIndexCallback((BaseMathObject *)_self, _index):0))
/* utility func */
int mathutils_array_parse(float *array, int array_min, int array_max, PyObject *value, const char *error_prefix);
Modified: trunk/blender/source/blender/python/generic/mathutils_Color.c
===================================================================
--- trunk/blender/source/blender/python/generic/mathutils_Color.c 2011-02-28 15:42:15 UTC (rev 35266)
+++ trunk/blender/source/blender/python/generic/mathutils_Color.c 2011-02-28 18:42:41 UTC (rev 35267)
@@ -97,7 +97,7 @@
;
static PyObject *Color_copy(ColorObject *self)
{
- if(!BaseMath_ReadCallback(self))
+ if(BaseMath_ReadCallback(self) == -1)
return NULL;
return newColorObject(self->col, Py_NEW, Py_TYPE(self));
@@ -110,7 +110,7 @@
{
PyObject *ret, *tuple;
- if(!BaseMath_ReadCallback(self))
+ if(BaseMath_ReadCallback(self) == -1)
return NULL;
tuple= Color_ToTupleExt(self, -1);
@@ -132,7 +132,7 @@
ColorObject *colA= (ColorObject*)a;
ColorObject *colB= (ColorObject*)b;
- if(!BaseMath_ReadCallback(colA) || !BaseMath_ReadCallback(colB))
+ if(BaseMath_ReadCallback(colA) == -1 || BaseMath_ReadCallback(colB) == -1)
return NULL;
ok= EXPP_VectorsAreEqual(colA->col, colB->col, COLOR_SIZE, 1) ? 0 : -1;
@@ -177,7 +177,7 @@
return NULL;
}
- if(!BaseMath_ReadIndexCallback(self, i))
+ if(BaseMath_ReadIndexCallback(self, i) == -1)
return NULL;
return PyFloat_FromDouble(self->col[i]);
@@ -203,7 +203,7 @@
self->col[i] = f;
- if(!BaseMath_WriteIndexCallback(self, i))
+ if(BaseMath_WriteIndexCallback(self, i) == -1)
return -1;
return 0;
@@ -215,7 +215,7 @@
PyObject *tuple;
int count;
- if(!BaseMath_ReadCallback(self))
+ if(BaseMath_ReadCallback(self) == -1)
return NULL;
CLAMP(begin, 0, COLOR_SIZE);
@@ -237,7 +237,7 @@
int i, size;
float col[COLOR_SIZE];
- if(!BaseMath_ReadCallback(self))
+ if(BaseMath_ReadCallback(self) == -1)
return -1;
CLAMP(begin, 0, COLOR_SIZE);
@@ -359,7 +359,7 @@
float hsv[3];
int i= GET_INT_FROM_POINTER(type);
- if(!BaseMath_ReadCallback(self))
+ if(BaseMath_ReadCallback(self) == -1)
return NULL;
rgb_to_hsv(self->col[0], self->col[1], self->col[2], &(hsv[0]), &(hsv[1]), &(hsv[2]));
@@ -378,7 +378,7 @@
return -1;
}
- if(!BaseMath_ReadCallback(self))
+ if(BaseMath_ReadCallback(self) == -1)
return -1;
rgb_to_hsv(self->col[0], self->col[1], self->col[2], &(hsv[0]), &(hsv[1]), &(hsv[2]));
@@ -386,7 +386,7 @@
hsv[i] = f;
hsv_to_rgb(hsv[0], hsv[1], hsv[2], &(self->col[0]), &(self->col[1]), &(self->col[2]));
- if(!BaseMath_WriteCallback(self))
+ if(BaseMath_WriteCallback(self) == -1)
return -1;
return 0;
@@ -398,7 +398,7 @@
float hsv[3];
PyObject *ret;
- if(!BaseMath_ReadCallback(self))
+ if(BaseMath_ReadCallback(self) == -1)
return NULL;
rgb_to_hsv(self->col[0], self->col[1], self->col[2], &(hsv[0]), &(hsv[1]), &(hsv[2]));
@@ -423,7 +423,7 @@
hsv_to_rgb(hsv[0], hsv[1], hsv[2], &(self->col[0]), &(self->col[1]), &(self->col[2]));
- if(!BaseMath_WriteCallback(self))
+ if(BaseMath_WriteCallback(self) == -1)
return -1;
return 0;
Modified: trunk/blender/source/blender/python/generic/mathutils_Euler.c
===================================================================
--- trunk/blender/source/blender/python/generic/mathutils_Euler.c 2011-02-28 15:42:15 UTC (rev 35266)
+++ trunk/blender/source/blender/python/generic/mathutils_Euler.c 2011-02-28 18:42:41 UTC (rev 35267)
@@ -138,7 +138,7 @@
{
float quat[4];
- if(!BaseMath_ReadCallback(self))
+ if(BaseMath_ReadCallback(self) == -1)
return NULL;
eulO_to_quat(quat, self->eul, self->order);
@@ -159,7 +159,7 @@
{
float mat[9];
- if(!BaseMath_ReadCallback(self))
+ if(BaseMath_ReadCallback(self) == -1)
return NULL;
eulO_to_mat3((float (*)[3])mat, self->eul, self->order);
@@ -177,7 +177,9 @@
{
zero_v3(self->eul);
- (void)BaseMath_WriteCallback(self);
+ if(BaseMath_WriteCallback(self) == -1)
+ return NULL;
+
Py_RETURN_NONE;
}
@@ -205,7 +207,7 @@
return NULL;
}
- if(!BaseMath_ReadCallback(self))
+ if(BaseMath_ReadCallback(self) == -1)
return NULL;
@@ -228,7 +230,7 @@
{
float self_rmat[3][3], other_rmat[3][3], rmat[3][3];
- if(!BaseMath_ReadCallback(self))
+ if(BaseMath_ReadCallback(self) == -1)
return NULL;
if(mathutils_any_to_rotmat(other_rmat, value, "euler.rotate(value)") == -1)
@@ -254,7 +256,7 @@
{
float teul[EULER_SIZE];
- if(!BaseMath_ReadCallback(self))
+ if(BaseMath_ReadCallback(self) == -1)
return NULL;
if(mathutils_array_parse(teul, EULER_SIZE, EULER_SIZE, value, "euler.make_compatible(other), invalid 'other' arg") == -1)
@@ -282,7 +284,7 @@
;
static PyObject *Euler_copy(EulerObject *self)
{
- if(!BaseMath_ReadCallback(self))
+ if(BaseMath_ReadCallback(self) == -1)
return NULL;
return newEulerObject(self->eul, self->order, Py_NEW, Py_TYPE(self));
@@ -295,7 +297,7 @@
{
PyObject *ret, *tuple;
- if(!BaseMath_ReadCallback(self))
+ if(BaseMath_ReadCallback(self) == -1)
return NULL;
tuple= Euler_ToTupleExt(self, -1);
@@ -315,7 +317,7 @@
EulerObject *eulA= (EulerObject*)a;
EulerObject *eulB= (EulerObject*)b;
- if(!BaseMath_ReadCallback(eulA) || !BaseMath_ReadCallback(eulB))
+ if(BaseMath_ReadCallback(eulA) == -1 || BaseMath_ReadCallback(eulB) == -1)
return NULL;
ok= ((eulA->order == eulB->order) && EXPP_VectorsAreEqual(eulA->eul, eulB->eul, EULER_SIZE, 1)) ? 0 : -1;
@@ -360,7 +362,7 @@
return NULL;
}
- if(!BaseMath_ReadIndexCallback(self, i))
+ if(BaseMath_ReadIndexCallback(self, i) == -1)
return NULL;
return PyFloat_FromDouble(self->eul[i]);
@@ -386,7 +388,7 @@
self->eul[i] = f;
- if(!BaseMath_WriteIndexCallback(self, i))
+ if(BaseMath_WriteIndexCallback(self, i) == -1)
return -1;
return 0;
@@ -398,7 +400,7 @@
PyObject *tuple;
int count;
- if(!BaseMath_ReadCallback(self))
+ if(BaseMath_ReadCallback(self) == -1)
return NULL;
@@ Diff output truncated at 10240 characters. @@
More information about the Bf-blender-cvs
mailing list