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:
authorCampbell Barton <ideasman42@gmail.com>2009-02-19 16:42:07 +0300
committerCampbell Barton <ideasman42@gmail.com>2009-02-19 16:42:07 +0300
commitcdec2b3d15ab0448e4df70496285ed95681e5972 (patch)
treef6d2d49a28c45d035c0c047c9488d687a75d459b /source/gameengine/Ketsji/KX_ParentActuator.cpp
parentc597863783e1001dca599e6dcbc28048f0ef4ce1 (diff)
BGE Python API
Use 'const char *' rather then the C++ 'STR_String' type for the attribute identifier of python attributes. Each attribute and method access from python was allocating and freeing the string. A simple test with getting an attribute a loop shows this speeds up attribute lookups a bit over 2x.
Diffstat (limited to 'source/gameengine/Ketsji/KX_ParentActuator.cpp')
-rw-r--r--source/gameengine/Ketsji/KX_ParentActuator.cpp8
1 files changed, 4 insertions, 4 deletions
diff --git a/source/gameengine/Ketsji/KX_ParentActuator.cpp b/source/gameengine/Ketsji/KX_ParentActuator.cpp
index c7ac52e571a..5a908186235 100644
--- a/source/gameengine/Ketsji/KX_ParentActuator.cpp
+++ b/source/gameengine/Ketsji/KX_ParentActuator.cpp
@@ -172,9 +172,9 @@ PyMethodDef KX_ParentActuator::Methods[] = {
{NULL,NULL} //Sentinel
};
-PyObject* KX_ParentActuator::_getattr(const STR_String& attr) {
+PyObject* KX_ParentActuator::_getattr(const char *attr) {
- if (attr == "object") {
+ if (!strcmp(attr, "object")) {
if (!m_ob) Py_RETURN_NONE;
else return m_ob->AddRef();
}
@@ -182,9 +182,9 @@ PyObject* KX_ParentActuator::_getattr(const STR_String& attr) {
_getattr_up(SCA_IActuator);
}
-int KX_ParentActuator::_setattr(const STR_String& attr, PyObject* value) {
+int KX_ParentActuator::_setattr(const char *attr, PyObject* value) {
- if (attr == "object") {
+ if (!strcmp(attr, "object")) {
KX_GameObject *gameobj;
if (!ConvertPythonToGameObject(value, &gameobj, true))