diff options
author | Campbell Barton <ideasman42@gmail.com> | 2009-04-21 03:17:52 +0400 |
---|---|---|
committer | Campbell Barton <ideasman42@gmail.com> | 2009-04-21 03:17:52 +0400 |
commit | 217bbb7800679899302ddb058f9ceea1d00c7ce1 (patch) | |
tree | 05cef2f2d94dc0af0cbf027c233f5d35ff782eee /source/gameengine/Converter | |
parent | 2d0d06f642b661b084657c05ebb0c664f998a937 (diff) |
BGE Python API
Separate getting a normal attribute and getting __dict__, was having to do too a check for __dict__ on each class (multiple times per getattro call from python) when its not used that often.
Diffstat (limited to 'source/gameengine/Converter')
4 files changed, 10 insertions, 0 deletions
diff --git a/source/gameengine/Converter/BL_ActionActuator.cpp b/source/gameengine/Converter/BL_ActionActuator.cpp index 7515f3f5f91..3002005ae3f 100644 --- a/source/gameengine/Converter/BL_ActionActuator.cpp +++ b/source/gameengine/Converter/BL_ActionActuator.cpp @@ -1020,6 +1020,10 @@ PyObject* BL_ActionActuator::py_getattro(PyObject *attr) { py_getattro_up(SCA_IActuator); } +PyObject* BL_ActionActuator::py_getattro_dict() { + py_getattro_dict_up(SCA_IActuator); +} + int BL_ActionActuator::py_setattro(PyObject *attr, PyObject* value) { py_setattro_up(SCA_IActuator); } diff --git a/source/gameengine/Converter/BL_ActionActuator.h b/source/gameengine/Converter/BL_ActionActuator.h index 6ae7f716b4b..b3c15c08f50 100644 --- a/source/gameengine/Converter/BL_ActionActuator.h +++ b/source/gameengine/Converter/BL_ActionActuator.h @@ -114,6 +114,7 @@ public: KX_PYMETHOD_DOC(BL_ActionActuator,setChannel); virtual PyObject* py_getattro(PyObject* attr); + virtual PyObject* py_getattro_dict(); virtual int py_setattro(PyObject* attr, PyObject* value); static PyObject* pyattr_get_action(void *self_v, const KX_PYATTRIBUTE_DEF *attrdef); diff --git a/source/gameengine/Converter/BL_ShapeActionActuator.cpp b/source/gameengine/Converter/BL_ShapeActionActuator.cpp index 62bc99bb437..a447ffb8aa9 100644 --- a/source/gameengine/Converter/BL_ShapeActionActuator.cpp +++ b/source/gameengine/Converter/BL_ShapeActionActuator.cpp @@ -489,6 +489,10 @@ PyObject* BL_ShapeActionActuator::py_getattro(PyObject* attr) { py_getattro_up(SCA_IActuator); } +PyObject* BL_ShapeActionActuator::py_getattro_dict() { + py_getattro_dict_up(SCA_IActuator); +} + int BL_ShapeActionActuator::py_setattro(PyObject *attr, PyObject* value) { py_setattro_up(SCA_IActuator); } diff --git a/source/gameengine/Converter/BL_ShapeActionActuator.h b/source/gameengine/Converter/BL_ShapeActionActuator.h index 3bc35ac9495..d268eef6d23 100644 --- a/source/gameengine/Converter/BL_ShapeActionActuator.h +++ b/source/gameengine/Converter/BL_ShapeActionActuator.h @@ -107,6 +107,7 @@ public: KX_PYMETHOD_DOC_VARARGS(BL_ShapeActionActuator,SetType); virtual PyObject* py_getattro(PyObject* attr); + virtual PyObject* py_getattro_dict(); virtual int py_setattro(PyObject* attr, PyObject* value); static PyObject* pyattr_get_action(void *self_v, const KX_PYATTRIBUTE_DEF *attrdef); |