forked from bartvdbraak/blender
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.
This commit is contained in:
parent
2d0d06f642
commit
217bbb7800
@ -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);
|
||||
}
|
||||
|
@ -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);
|
||||
|
@ -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);
|
||||
}
|
||||
|
@ -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);
|
||||
|
@ -273,6 +273,10 @@ PyObject* CListValue::py_getattro(PyObject* attr) {
|
||||
py_getattro_up(CValue);
|
||||
}
|
||||
|
||||
PyObject* CListValue::py_getattro_dict() {
|
||||
py_getattro_dict_up(CValue);
|
||||
}
|
||||
|
||||
|
||||
//////////////////////////////////////////////////////////////////////
|
||||
// Construction/Destruction
|
||||
|
@ -60,6 +60,7 @@ public:
|
||||
bool CheckEqual(CValue* first,CValue* second);
|
||||
|
||||
virtual PyObject* py_getattro(PyObject* attr);
|
||||
virtual PyObject* py_getattro_dict();
|
||||
virtual PyObject* py_repr(void) {
|
||||
PyObject *py_proxy= this->GetProxy();
|
||||
PyObject *py_list= PySequence_List(py_proxy);
|
||||
|
@ -143,7 +143,13 @@ PyObject *PyObjectPlus::py_base_getattro(PyObject * self, PyObject *attr)
|
||||
PyErr_SetString(PyExc_RuntimeError, BGE_PROXY_ERROR_MSG);
|
||||
return NULL;
|
||||
}
|
||||
return self_plus->py_getattro(attr);
|
||||
|
||||
PyObject *ret= self_plus->py_getattro(attr);
|
||||
|
||||
if(ret==NULL && (strcmp(PyString_AsString(attr), "__dict__")==0))
|
||||
ret= self_plus->py_getattro_dict();
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
||||
/* This should be the entry in Type since it takes the C++ class from PyObjectPlus_Proxy */
|
||||
@ -177,9 +183,6 @@ PyObject *PyObjectPlus::py_getattro(PyObject* attr)
|
||||
{
|
||||
PyObject *descr = PyDict_GetItem(Type.tp_dict, attr); \
|
||||
if (descr == NULL) {
|
||||
if (strcmp(PyString_AsString(attr), "__dict__")==0) {
|
||||
return py_getattr_dict(NULL, Type.tp_dict); /* no Attributes yet */
|
||||
}
|
||||
PyErr_Format(PyExc_AttributeError, "attribute \"%s\" not found", PyString_AsString(attr));
|
||||
return NULL;
|
||||
} else {
|
||||
@ -196,6 +199,10 @@ PyObject *PyObjectPlus::py_getattro(PyObject* attr)
|
||||
}
|
||||
}
|
||||
|
||||
PyObject* PyObjectPlus::py_getattro_dict() {
|
||||
return py_getattr_dict(NULL, Type.tp_dict);
|
||||
}
|
||||
|
||||
int PyObjectPlus::py_delattro(PyObject* attr)
|
||||
{
|
||||
PyErr_SetString(PyExc_AttributeError, "attribute cant be deleted");
|
||||
|
@ -130,16 +130,12 @@ typedef struct {
|
||||
} \
|
||||
} else { \
|
||||
PyErr_Clear(); \
|
||||
PyObject *rvalue= Parent::py_getattro(attr); \
|
||||
\
|
||||
if (strcmp(PyString_AsString(attr), "__dict__")==0) { \
|
||||
return py_getattr_dict(rvalue, Type.tp_dict); \
|
||||
} \
|
||||
\
|
||||
return rvalue; \
|
||||
return Parent::py_getattro(attr); \
|
||||
} \
|
||||
return NULL;
|
||||
|
||||
#define py_getattro_dict_up(Parent) \
|
||||
return py_getattr_dict(Parent::py_getattro_dict(), Type.tp_dict);
|
||||
|
||||
/*
|
||||
* nonzero values are an error for setattr
|
||||
@ -434,6 +430,7 @@ public:
|
||||
/* These are all virtual python methods that are defined in each class
|
||||
* Our own fake subclassing calls these on each class, then calls the parent */
|
||||
virtual PyObject* py_getattro(PyObject *attr);
|
||||
virtual PyObject* py_getattro_dict();
|
||||
virtual int py_delattro(PyObject *attr);
|
||||
virtual int py_setattro(PyObject *attr, PyObject *value);
|
||||
virtual PyObject* py_repr(void);
|
||||
|
@ -612,6 +612,10 @@ PyObject* CValue::py_getattro(PyObject *attr)
|
||||
py_getattro_up(PyObjectPlus);
|
||||
}
|
||||
|
||||
PyObject* CValue::py_getattro_dict() {
|
||||
py_getattro_dict_up(PyObjectPlus);
|
||||
}
|
||||
|
||||
CValue* CValue::ConvertPythonToValue(PyObject* pyobj)
|
||||
{
|
||||
|
||||
|
@ -225,6 +225,7 @@ public:
|
||||
|
||||
|
||||
virtual PyObject* py_getattro(PyObject *attr);
|
||||
virtual PyObject* py_getattro_dict();
|
||||
virtual PyObject* ConvertValueToPython() {
|
||||
return NULL;
|
||||
}
|
||||
|
@ -157,6 +157,10 @@ PyObject* SCA_2DFilterActuator::py_getattro(PyObject *attr)
|
||||
py_getattro_up(SCA_IActuator);
|
||||
}
|
||||
|
||||
PyObject* SCA_2DFilterActuator::py_getattro_dict() {
|
||||
py_getattro_dict_up(SCA_IActuator);
|
||||
}
|
||||
|
||||
int SCA_2DFilterActuator::py_setattro(PyObject *attr, PyObject* value)
|
||||
{
|
||||
py_setattro_up(SCA_IActuator);
|
||||
|
@ -71,6 +71,7 @@ public:
|
||||
/* --------------------------------------------------------------------- */
|
||||
|
||||
virtual PyObject* py_getattro(PyObject *attr);
|
||||
virtual PyObject* py_getattro_dict();
|
||||
virtual int py_setattro(PyObject *attr, PyObject* value);
|
||||
|
||||
};
|
||||
|
@ -145,4 +145,8 @@ PyObject* SCA_ANDController::py_getattro(PyObject *attr) {
|
||||
py_getattro_up(SCA_IController);
|
||||
}
|
||||
|
||||
PyObject* SCA_ANDController::py_getattro_dict() {
|
||||
py_getattro_dict_up(SCA_IController);
|
||||
}
|
||||
|
||||
/* eof */
|
||||
|
@ -49,6 +49,7 @@ public:
|
||||
/* --------------------------------------------------------------------- */
|
||||
|
||||
virtual PyObject* py_getattro(PyObject *attr);
|
||||
virtual PyObject* py_getattro_dict();
|
||||
|
||||
};
|
||||
|
||||
|
@ -165,6 +165,10 @@ PyObject* SCA_ActuatorSensor::py_getattro(PyObject *attr) {
|
||||
py_getattro_up(SCA_ISensor);
|
||||
}
|
||||
|
||||
PyObject* SCA_ActuatorSensor::py_getattro_dict() {
|
||||
py_getattro_dict_up(SCA_ISensor);
|
||||
}
|
||||
|
||||
int SCA_ActuatorSensor::py_setattro(PyObject *attr, PyObject *value) {
|
||||
py_setattro_up(SCA_ISensor);
|
||||
}
|
||||
|
@ -62,6 +62,7 @@ public:
|
||||
/* --------------------------------------------------------------------- */
|
||||
|
||||
virtual PyObject* py_getattro(PyObject *attr);
|
||||
virtual PyObject* py_getattro_dict();
|
||||
virtual int py_setattro(PyObject *attr, PyObject *value);
|
||||
|
||||
/* 3. setProperty */
|
||||
|
@ -143,4 +143,8 @@ PyObject* SCA_AlwaysSensor::py_getattro(PyObject *attr) {
|
||||
py_getattro_up(SCA_ISensor);
|
||||
}
|
||||
|
||||
PyObject* SCA_AlwaysSensor::py_getattro_dict() {
|
||||
py_getattro_dict_up(SCA_ISensor);
|
||||
}
|
||||
|
||||
/* eof */
|
||||
|
@ -53,7 +53,7 @@ public:
|
||||
/* --------------------------------------------------------------------- */
|
||||
|
||||
virtual PyObject* py_getattro(PyObject *attr);
|
||||
|
||||
virtual PyObject* py_getattro_dict();
|
||||
|
||||
};
|
||||
|
||||
|
@ -182,6 +182,10 @@ PyObject* SCA_DelaySensor::py_getattro(PyObject *attr) {
|
||||
py_getattro_up(SCA_ISensor);
|
||||
}
|
||||
|
||||
PyObject* SCA_DelaySensor::py_getattro_dict() {
|
||||
py_getattro_dict_up(SCA_ISensor);
|
||||
}
|
||||
|
||||
int SCA_DelaySensor::py_setattro(PyObject *attr, PyObject *value) {
|
||||
py_setattro_up(SCA_ISensor);
|
||||
}
|
||||
|
@ -61,6 +61,7 @@ public:
|
||||
/* --------------------------------------------------------------------- */
|
||||
|
||||
virtual PyObject* py_getattro(PyObject *attr);
|
||||
virtual PyObject* py_getattro_dict();
|
||||
virtual int py_setattro(PyObject *attr, PyObject *value);
|
||||
|
||||
/* setProperty */
|
||||
|
@ -60,6 +60,7 @@ public:
|
||||
/* --------------------------------------------------------------------- */
|
||||
|
||||
// virtual PyObject* py_getattro(PyObject *attr);
|
||||
// virtual PyObject* py_getattro_dict();
|
||||
|
||||
};
|
||||
|
||||
|
@ -278,12 +278,15 @@ int SCA_ILogicBrick::CheckProperty(void *self, const PyAttributeDef *attrdef)
|
||||
return 0;
|
||||
}
|
||||
|
||||
PyObject*
|
||||
SCA_ILogicBrick::py_getattro(PyObject *attr)
|
||||
PyObject* SCA_ILogicBrick::py_getattro(PyObject *attr)
|
||||
{
|
||||
py_getattro_up(CValue);
|
||||
}
|
||||
|
||||
PyObject* SCA_ILogicBrick::py_getattro_dict() {
|
||||
py_getattro_dict_up(CValue);
|
||||
}
|
||||
|
||||
int SCA_ILogicBrick::py_setattro(PyObject *attr, PyObject *value)
|
||||
{
|
||||
py_setattro_up(CValue);
|
||||
|
@ -80,6 +80,7 @@ public:
|
||||
virtual bool LessComparedTo(SCA_ILogicBrick* other);
|
||||
|
||||
virtual PyObject* py_getattro(PyObject *attr);
|
||||
virtual PyObject* py_getattro_dict();
|
||||
virtual int py_setattro(PyObject *attr, PyObject *value);
|
||||
|
||||
static class SCA_LogicManager* m_sCurrentLogicManager;
|
||||
|
@ -418,3 +418,6 @@ PyObject* SCA_IObject::py_getattro(PyObject *attr) {
|
||||
py_getattro_up(CValue);
|
||||
}
|
||||
|
||||
PyObject* SCA_IObject::py_getattro_dict() {
|
||||
py_getattro_dict_up(CValue);
|
||||
}
|
||||
|
@ -146,6 +146,7 @@ public:
|
||||
|
||||
// here come the python forwarded methods
|
||||
virtual PyObject* py_getattro(PyObject *attr);
|
||||
virtual PyObject* py_getattro_dict();
|
||||
|
||||
virtual int GetGameObjectType() {return -1;}
|
||||
|
||||
|
@ -459,12 +459,15 @@ PyAttributeDef SCA_ISensor::Attributes[] = {
|
||||
{ NULL } //Sentinel
|
||||
};
|
||||
|
||||
PyObject*
|
||||
SCA_ISensor::py_getattro(PyObject *attr)
|
||||
PyObject* SCA_ISensor::py_getattro(PyObject *attr)
|
||||
{
|
||||
py_getattro_up(SCA_ILogicBrick);
|
||||
}
|
||||
|
||||
PyObject* SCA_ISensor::py_getattro_dict() {
|
||||
py_getattro_dict_up(SCA_ILogicBrick);
|
||||
}
|
||||
|
||||
int SCA_ISensor::py_setattro(PyObject *attr, PyObject *value)
|
||||
{
|
||||
py_setattro_up(SCA_ILogicBrick);
|
||||
|
@ -137,6 +137,7 @@ public:
|
||||
/* Python functions: */
|
||||
|
||||
virtual PyObject* py_getattro(PyObject *attr);
|
||||
virtual PyObject* py_getattro_dict();
|
||||
virtual int py_setattro(PyObject *attr, PyObject *value);
|
||||
|
||||
//Deprecated functions ----->
|
||||
|
@ -339,6 +339,10 @@ PyObject* SCA_JoystickSensor::py_getattro(PyObject *attr)
|
||||
py_getattro_up(SCA_ISensor);
|
||||
}
|
||||
|
||||
PyObject* SCA_JoystickSensor::py_getattro_dict() {
|
||||
py_getattro_dict_up(SCA_ISensor);
|
||||
}
|
||||
|
||||
int SCA_JoystickSensor::py_setattro(PyObject *attr, PyObject *value)
|
||||
{
|
||||
py_setattro_up(SCA_ISensor);
|
||||
|
@ -123,6 +123,7 @@ public:
|
||||
/* --------------------------------------------------------------------- */
|
||||
|
||||
virtual PyObject* py_getattro(PyObject *attr);
|
||||
virtual PyObject* py_getattro_dict();
|
||||
virtual int py_setattro(PyObject *attr, PyObject *value);
|
||||
|
||||
/* Joystick Index */
|
||||
|
@ -664,12 +664,15 @@ PyAttributeDef SCA_KeyboardSensor::Attributes[] = {
|
||||
{ NULL } //Sentinel
|
||||
};
|
||||
|
||||
PyObject*
|
||||
SCA_KeyboardSensor::py_getattro(PyObject *attr)
|
||||
PyObject* SCA_KeyboardSensor::py_getattro(PyObject *attr)
|
||||
{
|
||||
py_getattro_up(SCA_ISensor);
|
||||
}
|
||||
|
||||
PyObject* SCA_KeyboardSensor::py_getattro_dict() {
|
||||
py_getattro_dict_up(SCA_ISensor);
|
||||
}
|
||||
|
||||
int SCA_KeyboardSensor::py_setattro(PyObject *attr, PyObject *value)
|
||||
{
|
||||
py_setattro_up(SCA_ISensor);
|
||||
|
@ -111,6 +111,7 @@ public:
|
||||
/* --------------------------------------------------------------------- */
|
||||
|
||||
virtual PyObject* py_getattro(PyObject *attr);
|
||||
virtual PyObject* py_getattro_dict();
|
||||
virtual int py_setattro(PyObject *attr, PyObject *value);
|
||||
|
||||
//Deprecated functions ----->
|
||||
|
@ -342,6 +342,10 @@ PyObject* SCA_MouseSensor::py_getattro(PyObject *attr)
|
||||
py_getattro_up(SCA_ISensor);
|
||||
}
|
||||
|
||||
PyObject* SCA_MouseSensor::py_getattro_dict() {
|
||||
py_getattro_dict_up(SCA_ISensor);
|
||||
}
|
||||
|
||||
int SCA_MouseSensor::py_setattro(PyObject *attr, PyObject *value)
|
||||
{
|
||||
py_setattro_up(SCA_ISensor);
|
||||
|
@ -110,6 +110,7 @@ class SCA_MouseSensor : public SCA_ISensor
|
||||
/* --------------------------------------------------------------------- */
|
||||
|
||||
virtual PyObject* py_getattro(PyObject *attr);
|
||||
virtual PyObject* py_getattro_dict();
|
||||
virtual int py_setattro(PyObject *attr, PyObject *value);
|
||||
|
||||
//Deprecated functions ----->
|
||||
|
@ -145,4 +145,8 @@ PyObject* SCA_NANDController::py_getattro(PyObject *attr) {
|
||||
py_getattro_up(SCA_IController);
|
||||
}
|
||||
|
||||
PyObject* SCA_NANDController::py_getattro_dict() {
|
||||
py_getattro_dict_up(SCA_IController);
|
||||
}
|
||||
|
||||
/* eof */
|
||||
|
@ -49,6 +49,7 @@ public:
|
||||
/* --------------------------------------------------------------------- */
|
||||
|
||||
virtual PyObject* py_getattro(PyObject *attr);
|
||||
virtual PyObject* py_getattro_dict();
|
||||
|
||||
};
|
||||
|
||||
|
@ -145,4 +145,8 @@ PyObject* SCA_NORController::py_getattro(PyObject *attr) {
|
||||
py_getattro_up(SCA_IController);
|
||||
}
|
||||
|
||||
PyObject* SCA_NORController::py_getattro_dict() {
|
||||
py_getattro_dict_up(SCA_IController);
|
||||
}
|
||||
|
||||
/* eof */
|
||||
|
@ -49,6 +49,7 @@ public:
|
||||
/* --------------------------------------------------------------------- */
|
||||
|
||||
virtual PyObject* py_getattro(PyObject *attr);
|
||||
virtual PyObject* py_getattro_dict();
|
||||
|
||||
};
|
||||
|
||||
|
@ -138,4 +138,8 @@ PyObject* SCA_ORController::py_getattro(PyObject *attr) {
|
||||
py_getattro_up(SCA_IController);
|
||||
}
|
||||
|
||||
PyObject* SCA_ORController::py_getattro_dict() {
|
||||
py_getattro_dict_up(SCA_IController);
|
||||
}
|
||||
|
||||
/* eof */
|
||||
|
@ -50,6 +50,7 @@ public:
|
||||
/* --------------------------------------------------------------------- */
|
||||
|
||||
virtual PyObject* py_getattro(PyObject *attr);
|
||||
virtual PyObject* py_getattro_dict();
|
||||
};
|
||||
|
||||
#endif //__KX_ORCONTROLLER
|
||||
|
@ -279,6 +279,10 @@ PyObject* SCA_PropertyActuator::py_getattro(PyObject *attr) {
|
||||
py_getattro_up(SCA_IActuator);
|
||||
}
|
||||
|
||||
PyObject* SCA_PropertyActuator::py_getattro_dict() {
|
||||
py_getattro_dict_up(SCA_IActuator);
|
||||
}
|
||||
|
||||
int SCA_PropertyActuator::py_setattro(PyObject *attr, PyObject *value) {
|
||||
py_setattro_up(SCA_IActuator);
|
||||
}
|
||||
|
@ -87,6 +87,7 @@ public:
|
||||
/* --------------------------------------------------------------------- */
|
||||
|
||||
virtual PyObject* py_getattro(PyObject *attr);
|
||||
virtual PyObject* py_getattro_dict();
|
||||
virtual int py_setattro(PyObject *attr, PyObject *value);
|
||||
|
||||
// python wrapped methods
|
||||
|
@ -356,6 +356,10 @@ PyObject* SCA_PropertySensor::py_getattro(PyObject *attr) {
|
||||
py_getattro_up(SCA_ISensor);
|
||||
}
|
||||
|
||||
PyObject* SCA_PropertySensor::py_getattro_dict() {
|
||||
py_getattro_dict_up(SCA_ISensor);
|
||||
}
|
||||
|
||||
int SCA_PropertySensor::py_setattro(PyObject *attr, PyObject *value) {
|
||||
py_setattro_up(SCA_ISensor);
|
||||
}
|
||||
|
@ -90,6 +90,7 @@ public:
|
||||
/* --------------------------------------------------------------------- */
|
||||
|
||||
virtual PyObject* py_getattro(PyObject *attr);
|
||||
virtual PyObject* py_getattro_dict();
|
||||
virtual int py_setattro(PyObject *attr, PyObject *value);
|
||||
|
||||
/* 1. getType */
|
||||
|
@ -395,6 +395,10 @@ PyObject* SCA_RandomActuator::py_getattro(PyObject *attr) {
|
||||
py_getattro_up(SCA_IActuator);
|
||||
}
|
||||
|
||||
PyObject* SCA_RandomActuator::py_getattro_dict() {
|
||||
py_getattro_dict_up(SCA_IActuator);
|
||||
}
|
||||
|
||||
int SCA_RandomActuator::py_setattro(PyObject *attr, PyObject *value)
|
||||
{
|
||||
py_setattro_up(SCA_IActuator);
|
||||
|
@ -97,6 +97,7 @@ class SCA_RandomActuator : public SCA_IActuator
|
||||
/* --------------------------------------------------------------------- */
|
||||
|
||||
virtual PyObject* py_getattro(PyObject *attr);
|
||||
virtual PyObject* py_getattro_dict();
|
||||
virtual int py_setattro(PyObject *attr, PyObject *value);
|
||||
|
||||
static PyObject* pyattr_get_seed(void *self, const struct KX_PYATTRIBUTE_DEF *attrdef);
|
||||
|
@ -170,6 +170,10 @@ PyObject* SCA_RandomSensor::py_getattro(PyObject *attr) {
|
||||
py_getattro_up(SCA_ISensor);
|
||||
}
|
||||
|
||||
PyObject* SCA_RandomSensor::py_getattro_dict() {
|
||||
py_getattro_dict_up(SCA_ISensor);
|
||||
}
|
||||
|
||||
int SCA_RandomSensor::py_setattro(PyObject *attr, PyObject *value)
|
||||
{
|
||||
py_setattro_up(SCA_ISensor);
|
||||
|
@ -61,6 +61,7 @@ public:
|
||||
/* --------------------------------------------------------------------- */
|
||||
|
||||
virtual PyObject* py_getattro(PyObject *attr);
|
||||
virtual PyObject* py_getattro_dict();
|
||||
virtual int py_setattro(PyObject *attr, PyObject *value);
|
||||
|
||||
/* 1. setSeed */
|
||||
|
@ -149,4 +149,8 @@ PyObject* SCA_XNORController::py_getattro(PyObject *attr) {
|
||||
py_getattro_up(SCA_IController);
|
||||
}
|
||||
|
||||
PyObject* SCA_XNORController::py_getattro_dict() {
|
||||
py_getattro_dict_up(SCA_IController);
|
||||
}
|
||||
|
||||
/* eof */
|
||||
|
@ -49,6 +49,7 @@ public:
|
||||
/* --------------------------------------------------------------------- */
|
||||
|
||||
virtual PyObject* py_getattro(PyObject *attr);
|
||||
virtual PyObject* py_getattro_dict();
|
||||
|
||||
};
|
||||
|
||||
|
@ -149,4 +149,8 @@ PyObject* SCA_XORController::py_getattro(PyObject *attr) {
|
||||
py_getattro_up(SCA_IController);
|
||||
}
|
||||
|
||||
PyObject* SCA_XORController::py_getattro_dict() {
|
||||
py_getattro_dict_up(SCA_IController);
|
||||
}
|
||||
|
||||
/* eof */
|
||||
|
@ -49,6 +49,7 @@ public:
|
||||
/* --------------------------------------------------------------------- */
|
||||
|
||||
virtual PyObject* py_getattro(PyObject *attr);
|
||||
virtual PyObject* py_getattro_dict();
|
||||
|
||||
};
|
||||
|
||||
|
@ -734,6 +734,10 @@ PyObject* BL_Shader::py_getattro(PyObject *attr)
|
||||
py_getattro_up(PyObjectPlus);
|
||||
}
|
||||
|
||||
PyObject* BL_Shader::py_getattro_dict() {
|
||||
py_getattro_dict_up(PyObjectPlus);
|
||||
}
|
||||
|
||||
|
||||
PyMethodDef BL_Shader::Methods[] =
|
||||
{
|
||||
|
@ -203,6 +203,7 @@ public:
|
||||
|
||||
// Python interface
|
||||
virtual PyObject* py_getattro(PyObject *attr);
|
||||
virtual PyObject* py_getattro_dict();
|
||||
virtual PyObject* py_repr(void) { return PyString_FromFormat("BL_Shader\n\tvertex shader:%s\n\n\tfragment shader%s\n\n", vertProg, fragProg); }
|
||||
|
||||
// -----------------------------------
|
||||
|
@ -157,6 +157,10 @@ PyObject* KX_NetworkMessageActuator::py_getattro(PyObject *attr) {
|
||||
py_getattro_up(SCA_IActuator);
|
||||
}
|
||||
|
||||
PyObject* KX_NetworkMessageActuator::py_getattro_dict() {
|
||||
py_getattro_dict_up(SCA_IActuator);
|
||||
}
|
||||
|
||||
int KX_NetworkMessageActuator::py_setattro(PyObject *attr, PyObject *value) {
|
||||
py_setattro_up(SCA_IActuator);
|
||||
}
|
||||
|
@ -62,6 +62,7 @@ public:
|
||||
/* ------------------------------------------------------------ */
|
||||
|
||||
virtual PyObject* py_getattro(PyObject *attr);
|
||||
virtual PyObject* py_getattro_dict();
|
||||
virtual int py_setattro(PyObject *attr, PyObject *value);
|
||||
|
||||
// Deprecated ----->
|
||||
|
@ -227,6 +227,10 @@ PyObject* KX_NetworkMessageSensor::py_getattro(PyObject *attr) {
|
||||
py_getattro_up(SCA_ISensor);
|
||||
}
|
||||
|
||||
PyObject* KX_NetworkMessageSensor::py_getattro_dict() {
|
||||
py_getattro_dict_up(SCA_ISensor);
|
||||
}
|
||||
|
||||
int KX_NetworkMessageSensor::py_setattro(PyObject *attr, PyObject *value) {
|
||||
return SCA_ISensor::py_setattro(attr, value);
|
||||
}
|
||||
|
@ -73,6 +73,7 @@ public:
|
||||
/* ------------------------------------------------------------- */
|
||||
|
||||
virtual PyObject* py_getattro(PyObject *attr);
|
||||
virtual PyObject* py_getattro_dict();
|
||||
virtual int py_setattro(PyObject *attr, PyObject *value);
|
||||
|
||||
// Deprecated ----->
|
||||
|
@ -784,6 +784,10 @@ PyObject* KX_BlenderMaterial::py_getattro(PyObject *attr)
|
||||
py_getattro_up(PyObjectPlus);
|
||||
}
|
||||
|
||||
PyObject* KX_BlenderMaterial::py_getattro_dict() {
|
||||
py_getattro_dict_up(PyObjectPlus);
|
||||
}
|
||||
|
||||
int KX_BlenderMaterial::py_setattro(PyObject *attr, PyObject *pyvalue)
|
||||
{
|
||||
return PyObjectPlus::py_setattro(attr, pyvalue);
|
||||
|
@ -83,6 +83,7 @@ public:
|
||||
|
||||
// --------------------------------
|
||||
virtual PyObject* py_getattro(PyObject *attr);
|
||||
virtual PyObject* py_getattro_dict();
|
||||
virtual int py_setattro(PyObject *attr, PyObject *pyvalue);
|
||||
virtual PyObject* py_repr(void) { return PyString_FromString(mMaterial->matname.ReadPtr()); }
|
||||
|
||||
|
@ -220,6 +220,10 @@ PyObject* KX_CDActuator::py_getattro(PyObject *attr)
|
||||
py_getattro_up(SCA_IActuator);
|
||||
}
|
||||
|
||||
PyObject* KX_CDActuator::py_getattro_dict() {
|
||||
py_getattro_dict_up(SCA_IActuator);
|
||||
}
|
||||
|
||||
int KX_CDActuator::py_setattro(PyObject *attr, PyObject *value)
|
||||
{
|
||||
py_setattro_up(SCA_IActuator);
|
||||
|
@ -82,6 +82,7 @@ public:
|
||||
/* -------------------------------------------------------------------- */
|
||||
|
||||
virtual PyObject* py_getattro(PyObject *attr);
|
||||
virtual PyObject* py_getattro_dict();
|
||||
virtual int py_setattro(PyObject *attr, PyObject *value);
|
||||
|
||||
// Deprecated ----->
|
||||
|
@ -544,6 +544,10 @@ PyObject* KX_Camera::py_getattro(PyObject *attr)
|
||||
py_getattro_up(KX_GameObject);
|
||||
}
|
||||
|
||||
PyObject* KX_Camera::py_getattro_dict() {
|
||||
py_getattro_dict_up(KX_GameObject);
|
||||
}
|
||||
|
||||
int KX_Camera::py_setattro(PyObject *attr, PyObject *value)
|
||||
{
|
||||
py_setattro_up(KX_GameObject);
|
||||
|
@ -278,6 +278,7 @@ public:
|
||||
KX_PYMETHOD_DOC_NOARGS(KX_Camera, setOnTop);
|
||||
|
||||
virtual PyObject* py_getattro(PyObject *attr); /* lens, near, far, projection_matrix */
|
||||
virtual PyObject* py_getattro_dict();
|
||||
virtual int py_setattro(PyObject *attr, PyObject *pyvalue);
|
||||
|
||||
static PyObject* pyattr_get_perspective(void *self_v, const KX_PYATTRIBUTE_DEF *attrdef);
|
||||
|
@ -425,6 +425,10 @@ PyObject* KX_CameraActuator::py_getattro(PyObject *attr) {
|
||||
py_getattro_up(SCA_IActuator);
|
||||
}
|
||||
|
||||
PyObject* KX_CameraActuator::py_getattro_dict() {
|
||||
py_getattro_dict_up(SCA_IActuator);
|
||||
}
|
||||
|
||||
int KX_CameraActuator::py_setattro(PyObject *attr, PyObject* value) {
|
||||
py_setattro_up(SCA_IActuator);
|
||||
}
|
||||
|
@ -121,6 +121,7 @@ private :
|
||||
/* --------------------------------------------------------------------- */
|
||||
|
||||
virtual PyObject* py_getattro(PyObject *attr);
|
||||
virtual PyObject* py_getattro_dict();
|
||||
virtual int py_setattro(PyObject *attr, PyObject* value);
|
||||
|
||||
/* set object to look at */
|
||||
|
@ -640,6 +640,10 @@ PyObject* KX_ConstraintActuator::py_getattro(PyObject *attr)
|
||||
py_getattro_up(SCA_IActuator);
|
||||
}
|
||||
|
||||
PyObject* KX_ConstraintActuator::py_getattro_dict() {
|
||||
py_getattro_dict_up(SCA_IActuator);
|
||||
}
|
||||
|
||||
int KX_ConstraintActuator::py_setattro(PyObject *attr, PyObject* value)
|
||||
{
|
||||
py_setattro_up(SCA_IActuator);
|
||||
|
@ -144,6 +144,7 @@ protected:
|
||||
/* --------------------------------------------------------------------- */
|
||||
|
||||
virtual PyObject* py_getattro(PyObject *attr);
|
||||
virtual PyObject* py_getattro_dict();
|
||||
virtual int py_setattro(PyObject *attr, PyObject* value);
|
||||
|
||||
static int pyattr_check_direction(void *self, const struct KX_PYATTRIBUTE_DEF *attrdef);
|
||||
|
@ -87,12 +87,16 @@ PyParentObject KX_ConstraintWrapper::Parents[] = {
|
||||
NULL
|
||||
};
|
||||
|
||||
PyObject* KX_ConstraintWrapper::py_getattro(PyObject *attr)
|
||||
//here you can search for existing data members (like mass,friction etc.)
|
||||
PyObject* KX_ConstraintWrapper::py_getattro(PyObject *attr)
|
||||
{
|
||||
//here you can search for existing data members (like mass,friction etc.)
|
||||
py_getattro_up(PyObjectPlus);
|
||||
}
|
||||
|
||||
PyObject* KX_ConstraintWrapper::py_getattro_dict() {
|
||||
py_getattro_dict_up(PyObjectPlus);
|
||||
}
|
||||
|
||||
int KX_ConstraintWrapper::py_setattro(PyObject *attr,PyObject* pyobj)
|
||||
{
|
||||
int result = 1;
|
||||
|
@ -36,6 +36,7 @@ class KX_ConstraintWrapper : public PyObjectPlus
|
||||
{
|
||||
Py_Header;
|
||||
virtual PyObject* py_getattro(PyObject *attr);
|
||||
virtual PyObject* py_getattro_dict();
|
||||
virtual int py_setattro(PyObject *attr, PyObject *value);
|
||||
public:
|
||||
KX_ConstraintWrapper(PHY_ConstraintType ctype,int constraintId,class PHY_IPhysicsEnvironment* physenv,PyTypeObject *T = &Type);
|
||||
|
@ -253,12 +253,15 @@ PyAttributeDef KX_GameActuator::Attributes[] = {
|
||||
{ NULL } //Sentinel
|
||||
};
|
||||
|
||||
PyObject*
|
||||
KX_GameActuator::py_getattro(PyObject *attr)
|
||||
PyObject* KX_GameActuator::py_getattro(PyObject *attr)
|
||||
{
|
||||
py_getattro_up(SCA_IActuator);
|
||||
}
|
||||
|
||||
PyObject* KX_GameActuator::py_getattro_dict() {
|
||||
py_getattro_dict_up(SCA_IActuator);
|
||||
}
|
||||
|
||||
int KX_GameActuator::py_setattro(PyObject *attr, PyObject *value)
|
||||
{
|
||||
py_setattro_up(SCA_IActuator);
|
||||
|
@ -78,6 +78,7 @@ protected:
|
||||
/* --------------------------------------------------------------------- */
|
||||
|
||||
virtual PyObject* py_getattro(PyObject *attr);
|
||||
virtual PyObject* py_getattro_dict();
|
||||
virtual int py_setattro(PyObject *attr, PyObject *value);
|
||||
|
||||
// Deprecated functions ----->
|
||||
|
@ -1153,8 +1153,6 @@ PyAttributeDef KX_GameObject::Attributes[] = {
|
||||
KX_PYATTRIBUTE_RW_FUNCTION("localScaling", KX_GameObject, pyattr_get_localScaling, pyattr_set_localScaling),
|
||||
KX_PYATTRIBUTE_RO_FUNCTION("worldScaling", KX_GameObject, pyattr_get_worldScaling),
|
||||
|
||||
KX_PYATTRIBUTE_RO_FUNCTION("__dict__", KX_GameObject, pyattr_get_dir_dict),
|
||||
|
||||
/* Experemental, dont rely on these yet */
|
||||
KX_PYATTRIBUTE_RO_FUNCTION("sensors", KX_GameObject, pyattr_get_sensors),
|
||||
KX_PYATTRIBUTE_RO_FUNCTION("controllers", KX_GameObject, pyattr_get_controllers),
|
||||
@ -1703,37 +1701,6 @@ PyObject* KX_GameObject::pyattr_get_actuators(void *self_v, const KX_PYATTRIBUTE
|
||||
return resultlist;
|
||||
}
|
||||
|
||||
/* __dict__ only for the purpose of giving useful dir() results */
|
||||
PyObject* KX_GameObject::pyattr_get_dir_dict(void *self_v, const KX_PYATTRIBUTE_DEF *attrdef)
|
||||
{
|
||||
KX_GameObject* self= static_cast<KX_GameObject*>(self_v);
|
||||
PyObject *dict_str = PyString_FromString("__dict__");
|
||||
PyObject *dict= py_getattr_dict(self->SCA_IObject::py_getattro(dict_str), Type.tp_dict);
|
||||
Py_DECREF(dict_str);
|
||||
|
||||
if(dict==NULL)
|
||||
return NULL;
|
||||
|
||||
/* Not super fast getting as a list then making into dict keys but its only for dir() */
|
||||
PyObject *list= self->ConvertKeysToPython();
|
||||
if(list)
|
||||
{
|
||||
int i;
|
||||
for(i=0; i<PyList_Size(list); i++)
|
||||
PyDict_SetItem(dict, PyList_GET_ITEM(list, i), Py_None);
|
||||
}
|
||||
else
|
||||
PyErr_Clear();
|
||||
|
||||
Py_DECREF(list);
|
||||
|
||||
/* Add m_attr_dict if we have it */
|
||||
if(self->m_attr_dict)
|
||||
PyDict_Update(dict, self->m_attr_dict);
|
||||
|
||||
return dict;
|
||||
}
|
||||
|
||||
/* We need these because the macros have a return in them */
|
||||
PyObject* KX_GameObject::py_getattro__internal(PyObject *attr)
|
||||
{
|
||||
@ -1772,6 +1739,35 @@ PyObject* KX_GameObject::py_getattro(PyObject *attr)
|
||||
return object;
|
||||
}
|
||||
|
||||
PyObject* KX_GameObject::py_getattro_dict() {
|
||||
//py_getattro_dict_up(SCA_IObject);
|
||||
PyObject *dict= py_getattr_dict(SCA_IObject::py_getattro_dict(), Type.tp_dict);
|
||||
if(dict==NULL)
|
||||
return NULL;
|
||||
|
||||
/* normally just return this but KX_GameObject has some more items */
|
||||
|
||||
|
||||
/* Not super fast getting as a list then making into dict keys but its only for dir() */
|
||||
PyObject *list= ConvertKeysToPython();
|
||||
if(list)
|
||||
{
|
||||
int i;
|
||||
for(i=0; i<PyList_Size(list); i++)
|
||||
PyDict_SetItem(dict, PyList_GET_ITEM(list, i), Py_None);
|
||||
}
|
||||
else
|
||||
PyErr_Clear();
|
||||
|
||||
Py_DECREF(list);
|
||||
|
||||
/* Add m_attr_dict if we have it */
|
||||
if(m_attr_dict)
|
||||
PyDict_Update(dict, m_attr_dict);
|
||||
|
||||
return dict;
|
||||
}
|
||||
|
||||
int KX_GameObject::py_setattro(PyObject *attr, PyObject *value) // py_setattro method
|
||||
{
|
||||
int ret;
|
||||
|
@ -816,6 +816,7 @@ public:
|
||||
*/
|
||||
|
||||
virtual PyObject* py_getattro(PyObject *attr);
|
||||
virtual PyObject* py_getattro_dict();
|
||||
virtual int py_setattro(PyObject *attr, PyObject *value); // py_setattro method
|
||||
virtual int py_delattro(PyObject *attr);
|
||||
virtual PyObject* py_repr(void)
|
||||
@ -904,9 +905,6 @@ public:
|
||||
static int pyattr_set_state(void *self_v, const KX_PYATTRIBUTE_DEF *attrdef, PyObject *value);
|
||||
static PyObject* pyattr_get_meshes(void* self_v, const KX_PYATTRIBUTE_DEF *attrdef);
|
||||
|
||||
/* for dir(), python3 uses __dir__() */
|
||||
static PyObject* pyattr_get_dir_dict(void *self_v, const KX_PYATTRIBUTE_DEF *attrdef);
|
||||
|
||||
/* Experemental! */
|
||||
static PyObject* pyattr_get_sensors(void *self_v, const KX_PYATTRIBUTE_DEF *attrdef);
|
||||
static PyObject* pyattr_get_controllers(void *self_v, const KX_PYATTRIBUTE_DEF *attrdef);
|
||||
|
@ -477,6 +477,10 @@ PyObject* KX_IpoActuator::py_getattro(PyObject *attr) {
|
||||
py_getattro_up(SCA_IActuator);
|
||||
}
|
||||
|
||||
PyObject* KX_IpoActuator::py_getattro_dict() {
|
||||
py_getattro_dict_up(SCA_IActuator);
|
||||
}
|
||||
|
||||
int KX_IpoActuator::py_setattro(PyObject *attr, PyObject *value) // py_setattro method
|
||||
{
|
||||
py_setattro_up(SCA_IActuator);
|
||||
|
@ -142,6 +142,7 @@ public:
|
||||
/* --------------------------------------------------------------------- */
|
||||
|
||||
virtual PyObject* py_getattro(PyObject *attr);
|
||||
virtual PyObject* py_getattro_dict();
|
||||
virtual int py_setattro(PyObject *attr, PyObject *value);
|
||||
|
||||
//KX_PYMETHOD_DOC
|
||||
|
@ -216,6 +216,10 @@ PyObject* KX_LightObject::py_getattro(PyObject *attr)
|
||||
py_getattro_up(KX_GameObject);
|
||||
}
|
||||
|
||||
PyObject* KX_LightObject::py_getattro_dict() {
|
||||
py_getattro_dict_up(KX_GameObject);
|
||||
}
|
||||
|
||||
|
||||
int KX_LightObject::py_setattro(PyObject *attr, PyObject *pyvalue)
|
||||
{
|
||||
|
@ -63,6 +63,7 @@ public:
|
||||
void Update();
|
||||
|
||||
virtual PyObject* py_getattro(PyObject *attr); /* lens, near, far, projection_matrix */
|
||||
virtual PyObject* py_getattro_dict();
|
||||
virtual int py_setattro(PyObject *attr, PyObject *pyvalue);
|
||||
|
||||
virtual bool IsLight(void) { return true; }
|
||||
|
@ -108,6 +108,10 @@ PyObject* KX_MeshProxy::py_getattro(PyObject *attr)
|
||||
py_getattro_up(SCA_IObject);
|
||||
}
|
||||
|
||||
PyObject* KX_MeshProxy::py_getattro_dict() {
|
||||
py_getattro_dict_up(SCA_IObject);
|
||||
}
|
||||
|
||||
int KX_MeshProxy::py_setattro(PyObject *attr, PyObject* value)
|
||||
{
|
||||
py_setattro_up(SCA_IObject);
|
||||
|
@ -58,6 +58,7 @@ public:
|
||||
|
||||
// stuff for python integration
|
||||
virtual PyObject* py_getattro(PyObject *attr);
|
||||
virtual PyObject* py_getattro_dict();
|
||||
virtual int py_setattro(PyObject *attr, PyObject* value);
|
||||
|
||||
KX_PYMETHOD(KX_MeshProxy,GetNumMaterials); // Deprecated
|
||||
|
@ -387,6 +387,10 @@ PyObject* KX_MouseFocusSensor::py_getattro(PyObject *attr) {
|
||||
py_getattro_up(SCA_MouseSensor);
|
||||
}
|
||||
|
||||
PyObject* KX_MouseFocusSensor::py_getattro_dict() {
|
||||
py_getattro_dict_up(SCA_MouseSensor);
|
||||
}
|
||||
|
||||
|
||||
const char KX_MouseFocusSensor::GetHitObject_doc[] =
|
||||
"getHitObject()\n"
|
||||
|
@ -89,7 +89,8 @@ class KX_MouseFocusSensor : public SCA_MouseSensor
|
||||
/* --------------------------------------------------------------------- */
|
||||
/* Python interface ---------------------------------------------------- */
|
||||
/* --------------------------------------------------------------------- */
|
||||
virtual PyObject* py_getattro(PyObject *attr);
|
||||
virtual PyObject* py_getattro(PyObject *attr);
|
||||
virtual PyObject* py_getattro_dict();
|
||||
|
||||
KX_PYMETHOD_DOC_NOARGS(KX_MouseFocusSensor,GetRayTarget);
|
||||
KX_PYMETHOD_DOC_NOARGS(KX_MouseFocusSensor,GetRaySource);
|
||||
|
@ -334,6 +334,10 @@ PyObject* KX_NearSensor::py_getattro(PyObject *attr)
|
||||
py_getattro_up(KX_TouchSensor);
|
||||
}
|
||||
|
||||
PyObject* KX_NearSensor::py_getattro_dict() {
|
||||
py_getattro_dict_up(KX_TouchSensor);
|
||||
}
|
||||
|
||||
int KX_NearSensor::py_setattro(PyObject*attr, PyObject* value)
|
||||
{
|
||||
py_setattro_up(KX_TouchSensor);
|
||||
|
@ -83,6 +83,7 @@ public:
|
||||
/* Python interface ---------------------------------------------------- */
|
||||
/* --------------------------------------------------------------------- */
|
||||
virtual PyObject* py_getattro(PyObject *attr);
|
||||
virtual PyObject* py_getattro_dict();
|
||||
virtual int py_setattro(PyObject *attr, PyObject* value);
|
||||
|
||||
//No methods
|
||||
|
@ -340,6 +340,10 @@ PyObject* KX_ObjectActuator::py_getattro(PyObject *attr) {
|
||||
py_getattro_up(SCA_IActuator);
|
||||
};
|
||||
|
||||
PyObject* KX_ObjectActuator::py_getattro_dict() {
|
||||
py_getattro_dict_up(SCA_IActuator);
|
||||
}
|
||||
|
||||
/* 1. set ------------------------------------------------------------------ */
|
||||
/* Removed! */
|
||||
|
||||
|
@ -154,6 +154,7 @@ public:
|
||||
/* --------------------------------------------------------------------- */
|
||||
|
||||
virtual PyObject* py_getattro(PyObject *attr);
|
||||
virtual PyObject* py_getattro_dict();
|
||||
|
||||
KX_PYMETHOD_NOARGS(KX_ObjectActuator,GetForce);
|
||||
KX_PYMETHOD_VARARGS(KX_ObjectActuator,SetForce);
|
||||
|
@ -211,6 +211,10 @@ PyObject* KX_ParentActuator::py_getattro(PyObject *attr) {
|
||||
py_getattro_up(SCA_IActuator);
|
||||
}
|
||||
|
||||
PyObject* KX_ParentActuator::py_getattro_dict() {
|
||||
py_getattro_dict_up(SCA_IActuator);
|
||||
}
|
||||
|
||||
int KX_ParentActuator::py_setattro(PyObject *attr, PyObject* value) {
|
||||
py_setattro_up(SCA_IActuator);
|
||||
}
|
||||
|
@ -77,6 +77,7 @@ class KX_ParentActuator : public SCA_IActuator
|
||||
/* --------------------------------------------------------------------- */
|
||||
|
||||
virtual PyObject* py_getattro(PyObject *attr);
|
||||
virtual PyObject* py_getattro_dict();
|
||||
virtual int py_setattro(PyObject *attr, PyObject* value);
|
||||
|
||||
/* These are used to get and set m_ob */
|
||||
|
@ -136,11 +136,14 @@ PyParentObject KX_PhysicsObjectWrapper::Parents[] = {
|
||||
NULL
|
||||
};
|
||||
|
||||
PyObject* KX_PhysicsObjectWrapper::py_getattro(PyObject *attr)
|
||||
PyObject* KX_PhysicsObjectWrapper::py_getattro(PyObject *attr)
|
||||
{
|
||||
py_getattro_up(PyObjectPlus);
|
||||
}
|
||||
|
||||
PyObject* KX_PhysicsObjectWrapper::py_getattro_dict() {
|
||||
py_getattro_dict_up(PyObjectPlus);
|
||||
}
|
||||
|
||||
int KX_PhysicsObjectWrapper::py_setattro(PyObject *attr,PyObject *pyobj)
|
||||
{
|
||||
|
@ -37,6 +37,7 @@ class KX_PhysicsObjectWrapper : public PyObjectPlus
|
||||
Py_Header;
|
||||
|
||||
virtual PyObject* py_getattro(PyObject *attr);
|
||||
virtual PyObject* py_getattro_dict();
|
||||
virtual int py_setattro(PyObject *attr, PyObject *value);
|
||||
public:
|
||||
KX_PhysicsObjectWrapper(class PHY_IPhysicsController* ctrl,class PHY_IPhysicsEnvironment* physenv,PyTypeObject *T = &Type);
|
||||
|
@ -159,6 +159,10 @@ PyObject* KX_PolyProxy::py_getattro(PyObject *attr)
|
||||
py_getattro_up(SCA_IObject);
|
||||
}
|
||||
|
||||
PyObject* KX_PolyProxy::py_getattro_dict() {
|
||||
py_getattro_dict_up(SCA_IObject);
|
||||
}
|
||||
|
||||
KX_PolyProxy::KX_PolyProxy(const RAS_MeshObject*mesh, RAS_Polygon* polygon)
|
||||
: m_polygon(polygon),
|
||||
m_mesh((RAS_MeshObject*)mesh)
|
||||
|
@ -54,6 +54,7 @@ public:
|
||||
|
||||
// stuff for python integration
|
||||
virtual PyObject* py_getattro(PyObject *attr);
|
||||
virtual PyObject* py_getattro_dict();
|
||||
|
||||
KX_PYMETHOD_DOC_NOARGS(KX_PolyProxy,getMaterialIndex)
|
||||
KX_PYMETHOD_DOC_NOARGS(KX_PolyProxy,getNumVertex)
|
||||
|
@ -237,6 +237,10 @@ PyObject* KX_PolygonMaterial::py_getattro(PyObject *attr)
|
||||
py_getattro_up(PyObjectPlus);
|
||||
}
|
||||
|
||||
PyObject* KX_PolygonMaterial::py_getattro_dict() {
|
||||
py_getattro_dict_up(PyObjectPlus);
|
||||
}
|
||||
|
||||
int KX_PolygonMaterial::py_setattro(PyObject *attr, PyObject *value)
|
||||
{
|
||||
py_setattro_up(PyObjectPlus);
|
||||
|
@ -117,6 +117,7 @@ public:
|
||||
KX_PYMETHOD_DOC(KX_PolygonMaterial, loadProgram);
|
||||
|
||||
virtual PyObject* py_getattro(PyObject *attr);
|
||||
virtual PyObject* py_getattro_dict();
|
||||
virtual int py_setattro(PyObject *attr, PyObject *pyvalue);
|
||||
virtual PyObject* py_repr(void) { return PyString_FromString(m_material ? ((ID *)m_material)->name+2 : ""); }
|
||||
|
||||
|
@ -304,6 +304,10 @@ PyObject* KX_RadarSensor::py_getattro(PyObject *attr)
|
||||
py_getattro_up(KX_NearSensor);
|
||||
}
|
||||
|
||||
PyObject* KX_RadarSensor::py_getattro_dict() {
|
||||
py_getattro_dict_up(KX_NearSensor);
|
||||
}
|
||||
|
||||
int KX_RadarSensor::py_setattro(PyObject *attr, PyObject* value)
|
||||
{
|
||||
py_setattro_up(KX_NearSensor);
|
||||
|
@ -90,6 +90,7 @@ public:
|
||||
};
|
||||
|
||||
virtual PyObject* py_getattro(PyObject *attr);
|
||||
virtual PyObject* py_getattro_dict();
|
||||
virtual int py_setattro(PyObject *attr, PyObject* value);
|
||||
|
||||
//Deprecated ----->
|
||||
|
@ -449,6 +449,10 @@ PyObject* KX_RaySensor::py_getattro(PyObject *attr) {
|
||||
py_getattro_up(SCA_ISensor);
|
||||
}
|
||||
|
||||
PyObject* KX_RaySensor::py_getattro_dict() {
|
||||
py_getattro_dict_up(SCA_ISensor);
|
||||
}
|
||||
|
||||
int KX_RaySensor::py_setattro(PyObject *attr, PyObject *value) {
|
||||
py_setattro_up(SCA_ISensor);
|
||||
}
|
||||
|
@ -87,6 +87,7 @@ public:
|
||||
|
||||
|
||||
virtual PyObject* py_getattro(PyObject *attr);
|
||||
virtual PyObject* py_getattro_dict();
|
||||
virtual int py_setattro(PyObject *attr, PyObject *value);
|
||||
|
||||
// Deprecated ----->
|
||||
|
@ -260,6 +260,10 @@ PyObject* KX_SCA_AddObjectActuator::py_getattro(PyObject *attr)
|
||||
py_getattro_up(SCA_IActuator);
|
||||
}
|
||||
|
||||
PyObject* KX_SCA_AddObjectActuator::py_getattro_dict() {
|
||||
py_getattro_dict_up(SCA_IActuator);
|
||||
}
|
||||
|
||||
int KX_SCA_AddObjectActuator::py_setattro(PyObject *attr, PyObject* value)
|
||||
{
|
||||
py_setattro_up(SCA_IActuator);
|
||||
|
@ -111,6 +111,7 @@ public:
|
||||
Update();
|
||||
|
||||
virtual PyObject* py_getattro(PyObject *attr);
|
||||
virtual PyObject* py_getattro_dict();
|
||||
virtual int py_setattro(PyObject *attr, PyObject* value);
|
||||
|
||||
SCA_IObject*
|
||||
|
@ -97,6 +97,10 @@ PyObject* KX_SCA_DynamicActuator::py_getattro(PyObject *attr)
|
||||
py_getattro_up(SCA_IActuator);
|
||||
}
|
||||
|
||||
PyObject* KX_SCA_DynamicActuator::py_getattro_dict() {
|
||||
py_getattro_dict_up(SCA_IActuator);
|
||||
}
|
||||
|
||||
int KX_SCA_DynamicActuator::py_setattro(PyObject *attr, PyObject* value)
|
||||
{
|
||||
py_setattro_up(SCA_IActuator);
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user