forked from bartvdbraak/blender
svn merge -r39878:39890 https://svn.blender.org/svnroot/bf-blender/trunk/blender
This commit is contained in:
commit
58227c1016
@ -88,7 +88,7 @@ typedef unsigned long uintptr_t;
|
|||||||
#define _UINTPTR_T_DEFINED
|
#define _UINTPTR_T_DEFINED
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#elif defined(__linux__) || defined(__NetBSD__)
|
#elif defined(__linux__) || defined(__NetBSD__) || defined(__OpenBSD__)
|
||||||
|
|
||||||
/* Linux-i386, Linux-Alpha, Linux-ppc */
|
/* Linux-i386, Linux-Alpha, Linux-ppc */
|
||||||
#include <stdint.h>
|
#include <stdint.h>
|
||||||
|
@ -89,7 +89,7 @@ typedef unsigned long uintptr_t;
|
|||||||
#define _UINTPTR_T_DEFINED
|
#define _UINTPTR_T_DEFINED
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#elif defined(__linux__) || defined(__NetBSD__)
|
#elif defined(__linux__) || defined(__NetBSD__) || defined(__OpenBSD__)
|
||||||
|
|
||||||
/* Linux-i386, Linux-Alpha, Linux-ppc */
|
/* Linux-i386, Linux-Alpha, Linux-ppc */
|
||||||
#include <stdint.h>
|
#include <stdint.h>
|
||||||
|
@ -1023,46 +1023,70 @@ static void layerInterp_shapekey(void **sources, float *weights,
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* note, these numbered comments below are copied from trunk,
|
||||||
|
* while _most_ match, some at the end need adding and are out of sync */
|
||||||
|
|
||||||
static const LayerTypeInfo LAYERTYPEINFO[CD_NUMTYPES] = {
|
static const LayerTypeInfo LAYERTYPEINFO[CD_NUMTYPES] = {
|
||||||
|
/* 0: CD_MVERT */
|
||||||
{sizeof(MVert), "MVert", 1, NULL, NULL, NULL, NULL, NULL, NULL},
|
{sizeof(MVert), "MVert", 1, NULL, NULL, NULL, NULL, NULL, NULL},
|
||||||
|
/* 1: CD_MSTICKY */
|
||||||
{sizeof(MSticky), "MSticky", 1, NULL, NULL, NULL, layerInterp_msticky, NULL,
|
{sizeof(MSticky), "MSticky", 1, NULL, NULL, NULL, layerInterp_msticky, NULL,
|
||||||
NULL},
|
NULL},
|
||||||
|
/* 2: CD_MDEFORMVERT */
|
||||||
{sizeof(MDeformVert), "MDeformVert", 1, NULL, layerCopy_mdeformvert,
|
{sizeof(MDeformVert), "MDeformVert", 1, NULL, layerCopy_mdeformvert,
|
||||||
layerFree_mdeformvert, layerInterp_mdeformvert, NULL, NULL},
|
layerFree_mdeformvert, layerInterp_mdeformvert, NULL, NULL},
|
||||||
|
/* 3: CD_MEDGE */
|
||||||
{sizeof(MEdge), "MEdge", 1, NULL, NULL, NULL, NULL, NULL, NULL},
|
{sizeof(MEdge), "MEdge", 1, NULL, NULL, NULL, NULL, NULL, NULL},
|
||||||
|
/* 4: CD_MFACE */
|
||||||
{sizeof(MFace), "MFace", 1, NULL, NULL, NULL, NULL, NULL, NULL},
|
{sizeof(MFace), "MFace", 1, NULL, NULL, NULL, NULL, NULL, NULL},
|
||||||
|
/* 5: CD_MTFACE */
|
||||||
{sizeof(MTFace), "MTFace", 1, "UVTex", layerCopy_tface, NULL,
|
{sizeof(MTFace), "MTFace", 1, "UVTex", layerCopy_tface, NULL,
|
||||||
layerInterp_tface, layerSwap_tface, layerDefault_tface},
|
layerInterp_tface, layerSwap_tface, layerDefault_tface},
|
||||||
|
/* 6: CD_MCOL */
|
||||||
/* 4 MCol structs per face */
|
/* 4 MCol structs per face */
|
||||||
{sizeof(MCol)*4, "MCol", 4, "Col", NULL, NULL, layerInterp_mcol,
|
{sizeof(MCol)*4, "MCol", 4, "Col", NULL, NULL, layerInterp_mcol,
|
||||||
layerSwap_mcol, layerDefault_mcol},
|
layerSwap_mcol, layerDefault_mcol},
|
||||||
|
/* 7: CD_ORIGINDEX */
|
||||||
{sizeof(int), "", 0, NULL, NULL, NULL, NULL, NULL, NULL},
|
{sizeof(int), "", 0, NULL, NULL, NULL, NULL, NULL, NULL},
|
||||||
|
/* 8: CD_NORMAL */
|
||||||
/* 3 floats per normal vector */
|
/* 3 floats per normal vector */
|
||||||
{sizeof(float)*3, "vec3f", 1, NULL, NULL, NULL, NULL, NULL, NULL},
|
{sizeof(float)*3, "vec3f", 1, NULL, NULL, NULL, NULL, NULL, NULL},
|
||||||
|
/* 9: CD_FLAGS */
|
||||||
{sizeof(int), "", 0, NULL, NULL, NULL, NULL, NULL, NULL},
|
{sizeof(int), "", 0, NULL, NULL, NULL, NULL, NULL, NULL},
|
||||||
|
/* 10: CD_PROP_FLT */
|
||||||
{sizeof(MFloatProperty), "MFloatProperty",1,"Float", layerCopy_propFloat,NULL,NULL,NULL},
|
{sizeof(MFloatProperty), "MFloatProperty",1,"Float", layerCopy_propFloat,NULL,NULL,NULL},
|
||||||
|
/* 11: CD_PROP_INT */
|
||||||
{sizeof(MIntProperty), "MIntProperty",1,"Int",layerCopy_propInt,NULL,NULL,NULL},
|
{sizeof(MIntProperty), "MIntProperty",1,"Int",layerCopy_propInt,NULL,NULL,NULL},
|
||||||
|
/* 12: CD_PROP_STR */
|
||||||
{sizeof(MStringProperty), "MStringProperty",1,"String",layerCopy_propString,NULL,NULL,NULL},
|
{sizeof(MStringProperty), "MStringProperty",1,"String",layerCopy_propString,NULL,NULL,NULL},
|
||||||
|
/* 13: CD_ORIGSPACE */
|
||||||
{sizeof(OrigSpaceFace), "OrigSpaceFace", 1, "UVTex", layerCopy_origspace_face, NULL,
|
{sizeof(OrigSpaceFace), "OrigSpaceFace", 1, "UVTex", layerCopy_origspace_face, NULL,
|
||||||
layerInterp_origspace_face, layerSwap_origspace_face, layerDefault_origspace_face},
|
layerInterp_origspace_face, layerSwap_origspace_face, layerDefault_origspace_face},
|
||||||
|
/* 14: CD_ORCO */
|
||||||
{sizeof(float)*3, "", 0, NULL, NULL, NULL, NULL, NULL, NULL},
|
{sizeof(float)*3, "", 0, NULL, NULL, NULL, NULL, NULL, NULL},
|
||||||
|
/* 15: CD_MTEXPOLY */
|
||||||
{sizeof(MTexPoly), "MTexPoly", 1, "Face Texture", NULL, NULL, NULL, NULL, NULL},
|
{sizeof(MTexPoly), "MTexPoly", 1, "Face Texture", NULL, NULL, NULL, NULL, NULL},
|
||||||
|
/* 16: CD_MLOOPUV */
|
||||||
{sizeof(MLoopUV), "MLoopUV", 1, "UV coord", NULL, NULL, layerInterp_mloopuv, NULL, NULL,
|
{sizeof(MLoopUV), "MLoopUV", 1, "UV coord", NULL, NULL, layerInterp_mloopuv, NULL, NULL,
|
||||||
layerEqual_mloopuv, layerMultiply_mloopuv, layerInitMinMax_mloopuv,
|
layerEqual_mloopuv, layerMultiply_mloopuv, layerInitMinMax_mloopuv,
|
||||||
layerAdd_mloopuv, layerDoMinMax_mloopuv, layerCopyValue_mloopuv},
|
layerAdd_mloopuv, layerDoMinMax_mloopuv, layerCopyValue_mloopuv},
|
||||||
|
/* 17: CD_MLOOPCOL */
|
||||||
{sizeof(MLoopCol), "MLoopCol", 1, "Col", NULL, NULL, layerInterp_mloopcol, NULL,
|
{sizeof(MLoopCol), "MLoopCol", 1, "Col", NULL, NULL, layerInterp_mloopcol, NULL,
|
||||||
layerDefault_mloopcol, layerEqual_mloopcol, layerMultiply_mloopcol, layerInitMinMax_mloopcol,
|
layerDefault_mloopcol, layerEqual_mloopcol, layerMultiply_mloopcol, layerInitMinMax_mloopcol,
|
||||||
layerAdd_mloopcol, layerDoMinMax_mloopcol, layerCopyValue_mloopcol},
|
layerAdd_mloopcol, layerDoMinMax_mloopcol, layerCopyValue_mloopcol},
|
||||||
{sizeof(float)*4*4, "", 0, NULL, NULL, NULL, NULL, NULL, NULL},
|
{sizeof(float)*4*4, "", 0, NULL, NULL, NULL, NULL, NULL, NULL},
|
||||||
|
/* 19: CD_MDISPS */
|
||||||
{sizeof(MDisps), "MDisps", 1, NULL, layerCopy_mdisps,
|
{sizeof(MDisps), "MDisps", 1, NULL, layerCopy_mdisps,
|
||||||
layerFree_mdisps, layerInterp_mdisps, layerSwap_mdisps, NULL,
|
layerFree_mdisps, layerInterp_mdisps, layerSwap_mdisps, NULL,
|
||||||
NULL, NULL, NULL, NULL, NULL, NULL,
|
NULL, NULL, NULL, NULL, NULL, NULL,
|
||||||
layerRead_mdisps, layerWrite_mdisps, layerFilesize_mdisps, layerValidate_mdisps},
|
layerRead_mdisps, layerWrite_mdisps, layerFilesize_mdisps, layerValidate_mdisps},
|
||||||
|
/* 20: CD_WEIGHT_MCOL */
|
||||||
{sizeof(MCol)*4, "MCol", 4, "WeightCol", NULL, NULL, layerInterp_mcol,
|
{sizeof(MCol)*4, "MCol", 4, "WeightCol", NULL, NULL, layerInterp_mcol,
|
||||||
layerSwap_mcol, layerDefault_mcol},
|
layerSwap_mcol, layerDefault_mcol},
|
||||||
{sizeof(MPoly), "MPoly", 1, "NGon Face", NULL, NULL, NULL, NULL, NULL},
|
{sizeof(MPoly), "MPoly", 1, "NGon Face", NULL, NULL, NULL, NULL, NULL},
|
||||||
{sizeof(MLoop), "MLoop", 1, "NGon Face-Vertex", NULL, NULL, NULL, NULL, NULL},
|
{sizeof(MLoop), "MLoop", 1, "NGon Face-Vertex", NULL, NULL, NULL, NULL, NULL},
|
||||||
{sizeof(float)*3, "", 0, "ClothOrco", NULL, NULL, layerInterp_shapekey},
|
{sizeof(float)*3, "", 0, "ClothOrco", NULL, NULL, layerInterp_shapekey},
|
||||||
|
/* 21: CD_ID_MCOL */
|
||||||
{sizeof(MCol)*4, "MCol", 4, "IDCol", NULL, NULL, layerInterp_mcol,
|
{sizeof(MCol)*4, "MCol", 4, "IDCol", NULL, NULL, layerInterp_mcol,
|
||||||
layerSwap_mcol, layerDefault_mcol},
|
layerSwap_mcol, layerDefault_mcol},
|
||||||
{sizeof(MCol)*4, "MCol", 4, "TextureCol", NULL, NULL, layerInterp_mcol,
|
{sizeof(MCol)*4, "MCol", 4, "TextureCol", NULL, NULL, layerInterp_mcol,
|
||||||
|
@ -83,7 +83,7 @@ typedef unsigned long uintptr_t;
|
|||||||
#define _UINTPTR_T_DEFINED
|
#define _UINTPTR_T_DEFINED
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#elif defined(__linux__) || defined(__NetBSD__)
|
#elif defined(__linux__) || defined(__NetBSD__) || defined(__OpenBSD__)
|
||||||
|
|
||||||
/* Linux-i386, Linux-Alpha, Linux-ppc */
|
/* Linux-i386, Linux-Alpha, Linux-ppc */
|
||||||
#include <stdint.h>
|
#include <stdint.h>
|
||||||
|
@ -770,7 +770,11 @@ void ui_draw_but_HISTOGRAM(ARegion *ar, uiBut *but, uiWidgetColors *UNUSED(wcol)
|
|||||||
glColor4f(0.f, 0.f, 0.f, 0.3f);
|
glColor4f(0.f, 0.f, 0.f, 0.3f);
|
||||||
uiSetRoundBox(15);
|
uiSetRoundBox(15);
|
||||||
uiDrawBox(GL_POLYGON, rect.xmin-1, rect.ymin-1, rect.xmax+1, rect.ymax+1, 3.0f);
|
uiDrawBox(GL_POLYGON, rect.xmin-1, rect.ymin-1, rect.xmax+1, rect.ymax+1, 3.0f);
|
||||||
|
|
||||||
|
/* need scissor test, histogram can draw outside of boundary */
|
||||||
|
glGetIntegerv(GL_VIEWPORT, scissor);
|
||||||
|
glScissor(ar->winrct.xmin + (rect.xmin-1), ar->winrct.ymin+(rect.ymin-1), (rect.xmax+1)-(rect.xmin-1), (rect.ymax+1)-(rect.ymin-1));
|
||||||
|
|
||||||
glColor4f(1.f, 1.f, 1.f, 0.08f);
|
glColor4f(1.f, 1.f, 1.f, 0.08f);
|
||||||
/* draw grid lines here */
|
/* draw grid lines here */
|
||||||
for (i=1; i<4; i++) {
|
for (i=1; i<4; i++) {
|
||||||
@ -778,10 +782,6 @@ void ui_draw_but_HISTOGRAM(ARegion *ar, uiBut *but, uiWidgetColors *UNUSED(wcol)
|
|||||||
fdrawline(rect.xmin+(i/4.f)*w, rect.ymin, rect.xmin+(i/4.f)*w, rect.ymax);
|
fdrawline(rect.xmin+(i/4.f)*w, rect.ymin, rect.xmin+(i/4.f)*w, rect.ymax);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* need scissor test, histogram can draw outside of boundary */
|
|
||||||
glGetIntegerv(GL_VIEWPORT, scissor);
|
|
||||||
glScissor(ar->winrct.xmin + (rect.xmin-1), ar->winrct.ymin+(rect.ymin-1), (rect.xmax+1)-(rect.xmin-1), (rect.ymax+1)-(rect.ymin-1));
|
|
||||||
|
|
||||||
if (hist->mode == HISTO_MODE_LUMA)
|
if (hist->mode == HISTO_MODE_LUMA)
|
||||||
histogram_draw_one(1.0, 1.0, 1.0, 0.75, rect.xmin, rect.ymin, w, h, hist->data_luma, res);
|
histogram_draw_one(1.0, 1.0, 1.0, 0.75, rect.xmin, rect.ymin, w, h, hist->data_luma, res);
|
||||||
else {
|
else {
|
||||||
|
@ -1414,6 +1414,8 @@ static int forcefield_toggle_exec(bContext *C, wmOperator *UNUSED(op))
|
|||||||
else
|
else
|
||||||
ob->pd->forcefield = 0;
|
ob->pd->forcefield = 0;
|
||||||
|
|
||||||
|
WM_event_add_notifier(C, NC_OBJECT|ND_DRAW, NULL);
|
||||||
|
|
||||||
return OPERATOR_FINISHED;
|
return OPERATOR_FINISHED;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -184,7 +184,11 @@ static void rna_DomainFluidSettings_memory_estimate_get(PointerRNA *ptr, char *v
|
|||||||
|
|
||||||
static int rna_DomainFluidSettings_memory_estimate_length(PointerRNA *ptr)
|
static int rna_DomainFluidSettings_memory_estimate_length(PointerRNA *ptr)
|
||||||
{
|
{
|
||||||
return 32;
|
#ifdef DISABLE_ELBEEM
|
||||||
|
return 0;
|
||||||
|
#else
|
||||||
|
return 31;
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
static char *rna_FluidSettings_path(PointerRNA *ptr)
|
static char *rna_FluidSettings_path(PointerRNA *ptr)
|
||||||
|
@ -208,77 +208,34 @@ PyObject *PyC_Object_GetAttrStringArgs(PyObject *o, Py_ssize_t n, ...)
|
|||||||
return item;
|
return item;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* returns the exception string as a new PyUnicode object, depends on external StringIO module */
|
/* returns the exception string as a new PyUnicode object, depends on external traceback module */
|
||||||
PyObject *PyC_ExceptionBuffer(void)
|
PyObject *PyC_ExceptionBuffer(void)
|
||||||
{
|
{
|
||||||
PyObject *stdout_backup = PySys_GetObject("stdout"); /* borrowed */
|
PyObject *traceback_mod= NULL;
|
||||||
PyObject *stderr_backup = PySys_GetObject("stderr"); /* borrowed */
|
PyObject *format_tb_func= NULL;
|
||||||
PyObject *string_io = NULL;
|
PyObject *ret= NULL;
|
||||||
PyObject *string_io_buf = NULL;
|
|
||||||
PyObject *string_io_mod= NULL;
|
if(! (traceback_mod= PyImport_ImportModule("traceback")) ) {
|
||||||
PyObject *string_io_getvalue= NULL;
|
|
||||||
|
|
||||||
PyObject *error_type, *error_value, *error_traceback;
|
|
||||||
|
|
||||||
if (!PyErr_Occurred())
|
|
||||||
return NULL;
|
|
||||||
|
|
||||||
PyErr_Fetch(&error_type, &error_value, &error_traceback);
|
|
||||||
|
|
||||||
PyErr_Clear();
|
|
||||||
|
|
||||||
/* import io
|
|
||||||
* string_io = io.StringIO()
|
|
||||||
*/
|
|
||||||
|
|
||||||
if(! (string_io_mod= PyImport_ImportModule("io")) ) {
|
|
||||||
goto error_cleanup;
|
goto error_cleanup;
|
||||||
}
|
}
|
||||||
else if (! (string_io = PyObject_CallMethod(string_io_mod, (char *)"StringIO", NULL))) {
|
else if (! (format_tb_func= PyObject_GetAttrString(traceback_mod, "format_exc"))) {
|
||||||
goto error_cleanup;
|
goto error_cleanup;
|
||||||
}
|
}
|
||||||
else if (! (string_io_getvalue= PyObject_GetAttrString(string_io, "getvalue"))) {
|
|
||||||
goto error_cleanup;
|
ret= PyObject_CallObject(format_tb_func, NULL);
|
||||||
|
|
||||||
|
if(ret == Py_None) {
|
||||||
|
Py_DECREF(ret);
|
||||||
|
ret= NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
Py_INCREF(stdout_backup); // since these were borrowed we dont want them freed when replaced.
|
|
||||||
Py_INCREF(stderr_backup);
|
|
||||||
|
|
||||||
PySys_SetObject("stdout", string_io); // both of these are free'd when restoring
|
|
||||||
PySys_SetObject("stderr", string_io);
|
|
||||||
|
|
||||||
PyErr_Restore(error_type, error_value, error_traceback);
|
|
||||||
PyErr_Print(); /* print the error */
|
|
||||||
PyErr_Clear();
|
|
||||||
|
|
||||||
string_io_buf = PyObject_CallObject(string_io_getvalue, NULL);
|
|
||||||
|
|
||||||
PySys_SetObject("stdout", stdout_backup);
|
|
||||||
PySys_SetObject("stderr", stderr_backup);
|
|
||||||
|
|
||||||
Py_DECREF(stdout_backup); /* now sys owns the ref again */
|
|
||||||
Py_DECREF(stderr_backup);
|
|
||||||
|
|
||||||
Py_DECREF(string_io_mod);
|
|
||||||
Py_DECREF(string_io_getvalue);
|
|
||||||
Py_DECREF(string_io); /* free the original reference */
|
|
||||||
|
|
||||||
PyErr_Clear();
|
|
||||||
return string_io_buf;
|
|
||||||
|
|
||||||
|
|
||||||
error_cleanup:
|
error_cleanup:
|
||||||
/* could not import the module so print the error and close */
|
/* could not import the module so print the error and close */
|
||||||
Py_XDECREF(string_io_mod);
|
Py_XDECREF(traceback_mod);
|
||||||
Py_XDECREF(string_io);
|
Py_XDECREF(format_tb_func);
|
||||||
|
|
||||||
PyErr_Restore(error_type, error_value, error_traceback);
|
|
||||||
PyErr_Print(); /* print the error */
|
|
||||||
PyErr_Clear();
|
|
||||||
|
|
||||||
return NULL;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
return ret;
|
||||||
|
}
|
||||||
|
|
||||||
/* string conversion, escape non-unicode chars, coerce must be set to NULL */
|
/* string conversion, escape non-unicode chars, coerce must be set to NULL */
|
||||||
const char *PyC_UnicodeAsByte(PyObject *py_str, PyObject **coerce)
|
const char *PyC_UnicodeAsByte(PyObject *py_str, PyObject **coerce)
|
||||||
|
@ -4631,28 +4631,28 @@ static PyObject *pyrna_func_call(BPy_FunctionRNA *self, PyObject *args, PyObject
|
|||||||
/* note: tp_base member is set to &PyType_Type on init */
|
/* note: tp_base member is set to &PyType_Type on init */
|
||||||
PyTypeObject pyrna_struct_meta_idprop_Type= {
|
PyTypeObject pyrna_struct_meta_idprop_Type= {
|
||||||
PyVarObject_HEAD_INIT(NULL, 0)
|
PyVarObject_HEAD_INIT(NULL, 0)
|
||||||
"bpy_struct_meta_idprop", /* tp_name */
|
"bpy_struct_meta_idprop", /* tp_name */
|
||||||
sizeof(PyHeapTypeObject), /* tp_basicsize */ // XXX, would be PyTypeObject, but subtypes of Type must be PyHeapTypeObject's
|
sizeof(PyHeapTypeObject), /* tp_basicsize */ // XXX, would be PyTypeObject, but subtypes of Type must be PyHeapTypeObject's
|
||||||
0, /* tp_itemsize */
|
0, /* tp_itemsize */
|
||||||
/* methods */
|
/* methods */
|
||||||
NULL, /* tp_dealloc */
|
NULL, /* tp_dealloc */
|
||||||
NULL, /* printfunc tp_print; */
|
NULL, /* printfunc tp_print; */
|
||||||
NULL, /* getattrfunc tp_getattr; */
|
NULL, /* getattrfunc tp_getattr; */
|
||||||
NULL, /* setattrfunc tp_setattr; */
|
NULL, /* setattrfunc tp_setattr; */
|
||||||
NULL, /* tp_compare */ /* deprecated in python 3.0! */
|
NULL, /* tp_compare */ /* deprecated in python 3.0! */
|
||||||
NULL, /* tp_repr */
|
NULL, /* tp_repr */
|
||||||
|
|
||||||
/* Method suites for standard classes */
|
/* Method suites for standard classes */
|
||||||
NULL, /* PyNumberMethods *tp_as_number; */
|
NULL, /* PyNumberMethods *tp_as_number; */
|
||||||
NULL, /* PySequenceMethods *tp_as_sequence; */
|
NULL, /* PySequenceMethods *tp_as_sequence; */
|
||||||
NULL, /* PyMappingMethods *tp_as_mapping; */
|
NULL, /* PyMappingMethods *tp_as_mapping; */
|
||||||
|
|
||||||
/* More standard operations (here for binary compatibility) */
|
/* More standard operations (here for binary compatibility) */
|
||||||
NULL, /* hashfunc tp_hash; */
|
NULL, /* hashfunc tp_hash; */
|
||||||
NULL, /* ternaryfunc tp_call; */
|
NULL, /* ternaryfunc tp_call; */
|
||||||
NULL, /* reprfunc tp_str; */
|
NULL, /* reprfunc tp_str; */
|
||||||
NULL /*(getattrofunc) pyrna_struct_meta_idprop_getattro*/, /* getattrofunc tp_getattro; */
|
NULL /*(getattrofunc) pyrna_struct_meta_idprop_getattro*/, /* getattrofunc tp_getattro; */
|
||||||
(setattrofunc) pyrna_struct_meta_idprop_setattro, /* setattrofunc tp_setattro; */
|
(setattrofunc) pyrna_struct_meta_idprop_setattro, /* setattrofunc tp_setattro; */
|
||||||
|
|
||||||
/* Functions to access object as input/output buffer */
|
/* Functions to access object as input/output buffer */
|
||||||
NULL, /* PyBufferProcs *tp_as_buffer; */
|
NULL, /* PyBufferProcs *tp_as_buffer; */
|
||||||
@ -4660,7 +4660,7 @@ PyTypeObject pyrna_struct_meta_idprop_Type= {
|
|||||||
/*** Flags to define presence of optional/expanded features ***/
|
/*** Flags to define presence of optional/expanded features ***/
|
||||||
Py_TPFLAGS_DEFAULT | Py_TPFLAGS_BASETYPE, /* long tp_flags; */
|
Py_TPFLAGS_DEFAULT | Py_TPFLAGS_BASETYPE, /* long tp_flags; */
|
||||||
|
|
||||||
NULL, /* char *tp_doc; Documentation string */
|
NULL, /* char *tp_doc; Documentation string */
|
||||||
/*** Assigned meaning in release 2.0 ***/
|
/*** Assigned meaning in release 2.0 ***/
|
||||||
/* call function for all accessible objects */
|
/* call function for all accessible objects */
|
||||||
NULL, /* traverseproc tp_traverse; */
|
NULL, /* traverseproc tp_traverse; */
|
||||||
@ -4670,7 +4670,7 @@ PyTypeObject pyrna_struct_meta_idprop_Type= {
|
|||||||
|
|
||||||
/*** Assigned meaning in release 2.1 ***/
|
/*** Assigned meaning in release 2.1 ***/
|
||||||
/*** rich comparisons ***/
|
/*** rich comparisons ***/
|
||||||
NULL, /* richcmpfunc tp_richcompare; */
|
NULL, /* richcmpfunc tp_richcompare; */
|
||||||
|
|
||||||
/*** weak reference enabler ***/
|
/*** weak reference enabler ***/
|
||||||
0, /* long tp_weaklistoffset; */
|
0, /* long tp_weaklistoffset; */
|
||||||
@ -4681,9 +4681,9 @@ PyTypeObject pyrna_struct_meta_idprop_Type= {
|
|||||||
NULL, /* iternextfunc tp_iternext; */
|
NULL, /* iternextfunc tp_iternext; */
|
||||||
|
|
||||||
/*** Attribute descriptor and subclassing stuff ***/
|
/*** Attribute descriptor and subclassing stuff ***/
|
||||||
NULL, /* struct PyMethodDef *tp_methods; */
|
NULL, /* struct PyMethodDef *tp_methods; */
|
||||||
NULL, /* struct PyMemberDef *tp_members; */
|
NULL, /* struct PyMemberDef *tp_members; */
|
||||||
NULL, /* struct PyGetSetDef *tp_getset; */
|
NULL, /* struct PyGetSetDef *tp_getset; */
|
||||||
NULL, /* struct _typeobject *tp_base; */
|
NULL, /* struct _typeobject *tp_base; */
|
||||||
NULL, /* PyObject *tp_dict; */
|
NULL, /* PyObject *tp_dict; */
|
||||||
NULL, /* descrgetfunc tp_descr_get; */
|
NULL, /* descrgetfunc tp_descr_get; */
|
||||||
@ -4691,7 +4691,7 @@ PyTypeObject pyrna_struct_meta_idprop_Type= {
|
|||||||
0, /* long tp_dictoffset; */
|
0, /* long tp_dictoffset; */
|
||||||
NULL, /* initproc tp_init; */
|
NULL, /* initproc tp_init; */
|
||||||
NULL, /* allocfunc tp_alloc; */
|
NULL, /* allocfunc tp_alloc; */
|
||||||
NULL, /* newfunc tp_new; */
|
NULL, /* newfunc tp_new; */
|
||||||
/* Low-level free-memory routine */
|
/* Low-level free-memory routine */
|
||||||
NULL, /* freefunc tp_free; */
|
NULL, /* freefunc tp_free; */
|
||||||
/* For PyObject_IS_GC */
|
/* For PyObject_IS_GC */
|
||||||
@ -4709,45 +4709,45 @@ PyTypeObject pyrna_struct_meta_idprop_Type= {
|
|||||||
/*-----------------------BPy_StructRNA method def------------------------------*/
|
/*-----------------------BPy_StructRNA method def------------------------------*/
|
||||||
PyTypeObject pyrna_struct_Type= {
|
PyTypeObject pyrna_struct_Type= {
|
||||||
PyVarObject_HEAD_INIT(NULL, 0)
|
PyVarObject_HEAD_INIT(NULL, 0)
|
||||||
"bpy_struct", /* tp_name */
|
"bpy_struct", /* tp_name */
|
||||||
sizeof(BPy_StructRNA), /* tp_basicsize */
|
sizeof(BPy_StructRNA), /* tp_basicsize */
|
||||||
0, /* tp_itemsize */
|
0, /* tp_itemsize */
|
||||||
/* methods */
|
/* methods */
|
||||||
(destructor) pyrna_struct_dealloc,/* tp_dealloc */
|
(destructor) pyrna_struct_dealloc,/* tp_dealloc */
|
||||||
NULL, /* printfunc tp_print; */
|
NULL, /* printfunc tp_print; */
|
||||||
NULL, /* getattrfunc tp_getattr; */
|
NULL, /* getattrfunc tp_getattr; */
|
||||||
NULL, /* setattrfunc tp_setattr; */
|
NULL, /* setattrfunc tp_setattr; */
|
||||||
NULL, /* tp_compare */ /* DEPRECATED in python 3.0! */
|
NULL, /* tp_compare */ /* DEPRECATED in python 3.0! */
|
||||||
(reprfunc) pyrna_struct_repr, /* tp_repr */
|
(reprfunc) pyrna_struct_repr, /* tp_repr */
|
||||||
|
|
||||||
/* Method suites for standard classes */
|
/* Method suites for standard classes */
|
||||||
|
|
||||||
NULL, /* PyNumberMethods *tp_as_number; */
|
NULL, /* PyNumberMethods *tp_as_number; */
|
||||||
&pyrna_struct_as_sequence, /* PySequenceMethods *tp_as_sequence; */
|
&pyrna_struct_as_sequence, /* PySequenceMethods *tp_as_sequence; */
|
||||||
&pyrna_struct_as_mapping, /* PyMappingMethods *tp_as_mapping; */
|
&pyrna_struct_as_mapping, /* PyMappingMethods *tp_as_mapping; */
|
||||||
|
|
||||||
/* More standard operations (here for binary compatibility) */
|
/* More standard operations (here for binary compatibility) */
|
||||||
|
|
||||||
(hashfunc) pyrna_struct_hash, /* hashfunc tp_hash; */
|
(hashfunc) pyrna_struct_hash, /* hashfunc tp_hash; */
|
||||||
NULL, /* ternaryfunc tp_call; */
|
NULL, /* ternaryfunc tp_call; */
|
||||||
(reprfunc) pyrna_struct_str, /* reprfunc tp_str; */
|
(reprfunc) pyrna_struct_str, /* reprfunc tp_str; */
|
||||||
(getattrofunc) pyrna_struct_getattro, /* getattrofunc tp_getattro; */
|
(getattrofunc) pyrna_struct_getattro, /* getattrofunc tp_getattro; */
|
||||||
(setattrofunc) pyrna_struct_setattro, /* setattrofunc tp_setattro; */
|
(setattrofunc) pyrna_struct_setattro, /* setattrofunc tp_setattro; */
|
||||||
|
|
||||||
/* Functions to access object as input/output buffer */
|
/* Functions to access object as input/output buffer */
|
||||||
NULL, /* PyBufferProcs *tp_as_buffer; */
|
NULL, /* PyBufferProcs *tp_as_buffer; */
|
||||||
|
|
||||||
/*** Flags to define presence of optional/expanded features ***/
|
/*** Flags to define presence of optional/expanded features ***/
|
||||||
Py_TPFLAGS_DEFAULT | Py_TPFLAGS_BASETYPE | Py_TPFLAGS_HAVE_GC, /* long tp_flags; */
|
Py_TPFLAGS_DEFAULT | Py_TPFLAGS_BASETYPE | Py_TPFLAGS_HAVE_GC, /* long tp_flags; */
|
||||||
|
|
||||||
NULL, /* char *tp_doc; Documentation string */
|
NULL, /* char *tp_doc; Documentation string */
|
||||||
/*** Assigned meaning in release 2.0 ***/
|
/*** Assigned meaning in release 2.0 ***/
|
||||||
/* call function for all accessible objects */
|
/* call function for all accessible objects */
|
||||||
#ifdef USE_PYRNA_STRUCT_REFERENCE
|
#ifdef USE_PYRNA_STRUCT_REFERENCE
|
||||||
(traverseproc) pyrna_struct_traverse, /* traverseproc tp_traverse; */
|
(traverseproc) pyrna_struct_traverse, /* traverseproc tp_traverse; */
|
||||||
|
|
||||||
/* delete references to contained objects */
|
/* delete references to contained objects */
|
||||||
(inquiry)pyrna_struct_clear, /* inquiry tp_clear; */
|
(inquiry)pyrna_struct_clear, /* inquiry tp_clear; */
|
||||||
#else
|
#else
|
||||||
NULL, /* traverseproc tp_traverse; */
|
NULL, /* traverseproc tp_traverse; */
|
||||||
|
|
||||||
@ -4757,11 +4757,11 @@ PyTypeObject pyrna_struct_Type= {
|
|||||||
|
|
||||||
/*** Assigned meaning in release 2.1 ***/
|
/*** Assigned meaning in release 2.1 ***/
|
||||||
/*** rich comparisons ***/
|
/*** rich comparisons ***/
|
||||||
(richcmpfunc)pyrna_struct_richcmp, /* richcmpfunc tp_richcompare; */
|
(richcmpfunc)pyrna_struct_richcmp, /* richcmpfunc tp_richcompare; */
|
||||||
|
|
||||||
/*** weak reference enabler ***/
|
/*** weak reference enabler ***/
|
||||||
#ifdef USE_WEAKREFS
|
#ifdef USE_WEAKREFS
|
||||||
offsetof(BPy_StructRNA, in_weakreflist), /* long tp_weaklistoffset; */
|
offsetof(BPy_StructRNA, in_weakreflist), /* long tp_weaklistoffset; */
|
||||||
#else
|
#else
|
||||||
0,
|
0,
|
||||||
#endif
|
#endif
|
||||||
@ -4771,9 +4771,9 @@ PyTypeObject pyrna_struct_Type= {
|
|||||||
NULL, /* iternextfunc tp_iternext; */
|
NULL, /* iternextfunc tp_iternext; */
|
||||||
|
|
||||||
/*** Attribute descriptor and subclassing stuff ***/
|
/*** Attribute descriptor and subclassing stuff ***/
|
||||||
pyrna_struct_methods, /* struct PyMethodDef *tp_methods; */
|
pyrna_struct_methods, /* struct PyMethodDef *tp_methods; */
|
||||||
NULL, /* struct PyMemberDef *tp_members; */
|
NULL, /* struct PyMemberDef *tp_members; */
|
||||||
pyrna_struct_getseters, /* struct PyGetSetDef *tp_getset; */
|
pyrna_struct_getseters, /* struct PyGetSetDef *tp_getset; */
|
||||||
NULL, /* struct _typeobject *tp_base; */
|
NULL, /* struct _typeobject *tp_base; */
|
||||||
NULL, /* PyObject *tp_dict; */
|
NULL, /* PyObject *tp_dict; */
|
||||||
NULL, /* descrgetfunc tp_descr_get; */
|
NULL, /* descrgetfunc tp_descr_get; */
|
||||||
@ -4781,7 +4781,7 @@ PyTypeObject pyrna_struct_Type= {
|
|||||||
0, /* long tp_dictoffset; */
|
0, /* long tp_dictoffset; */
|
||||||
NULL, /* initproc tp_init; */
|
NULL, /* initproc tp_init; */
|
||||||
NULL, /* allocfunc tp_alloc; */
|
NULL, /* allocfunc tp_alloc; */
|
||||||
pyrna_struct_new, /* newfunc tp_new; */
|
pyrna_struct_new, /* newfunc tp_new; */
|
||||||
/* Low-level free-memory routine */
|
/* Low-level free-memory routine */
|
||||||
NULL, /* freefunc tp_free; */
|
NULL, /* freefunc tp_free; */
|
||||||
/* For PyObject_IS_GC */
|
/* For PyObject_IS_GC */
|
||||||
@ -4798,32 +4798,32 @@ PyTypeObject pyrna_struct_Type= {
|
|||||||
/*-----------------------BPy_PropertyRNA method def------------------------------*/
|
/*-----------------------BPy_PropertyRNA method def------------------------------*/
|
||||||
PyTypeObject pyrna_prop_Type= {
|
PyTypeObject pyrna_prop_Type= {
|
||||||
PyVarObject_HEAD_INIT(NULL, 0)
|
PyVarObject_HEAD_INIT(NULL, 0)
|
||||||
"bpy_prop", /* tp_name */
|
"bpy_prop", /* tp_name */
|
||||||
sizeof(BPy_PropertyRNA), /* tp_basicsize */
|
sizeof(BPy_PropertyRNA), /* tp_basicsize */
|
||||||
0, /* tp_itemsize */
|
0, /* tp_itemsize */
|
||||||
/* methods */
|
/* methods */
|
||||||
(destructor) pyrna_prop_dealloc, /* tp_dealloc */
|
(destructor) pyrna_prop_dealloc, /* tp_dealloc */
|
||||||
NULL, /* printfunc tp_print; */
|
NULL, /* printfunc tp_print; */
|
||||||
NULL, /* getattrfunc tp_getattr; */
|
NULL, /* getattrfunc tp_getattr; */
|
||||||
NULL, /* setattrfunc tp_setattr; */
|
NULL, /* setattrfunc tp_setattr; */
|
||||||
NULL, /* tp_compare */ /* DEPRECATED in python 3.0! */
|
NULL, /* tp_compare */ /* DEPRECATED in python 3.0! */
|
||||||
(reprfunc) pyrna_prop_repr, /* tp_repr */
|
(reprfunc) pyrna_prop_repr, /* tp_repr */
|
||||||
|
|
||||||
/* Method suites for standard classes */
|
/* Method suites for standard classes */
|
||||||
|
|
||||||
NULL, /* PyNumberMethods *tp_as_number; */
|
NULL, /* PyNumberMethods *tp_as_number; */
|
||||||
NULL, /* PySequenceMethods *tp_as_sequence; */
|
NULL, /* PySequenceMethods *tp_as_sequence; */
|
||||||
NULL, /* PyMappingMethods *tp_as_mapping; */
|
NULL, /* PyMappingMethods *tp_as_mapping; */
|
||||||
|
|
||||||
/* More standard operations (here for binary compatibility) */
|
/* More standard operations (here for binary compatibility) */
|
||||||
|
|
||||||
(hashfunc) pyrna_prop_hash, /* hashfunc tp_hash; */
|
(hashfunc) pyrna_prop_hash, /* hashfunc tp_hash; */
|
||||||
NULL, /* ternaryfunc tp_call; */
|
NULL, /* ternaryfunc tp_call; */
|
||||||
(reprfunc) pyrna_prop_str, /* reprfunc tp_str; */
|
(reprfunc) pyrna_prop_str, /* reprfunc tp_str; */
|
||||||
|
|
||||||
/* will only use these if this is a subtype of a py class */
|
/* will only use these if this is a subtype of a py class */
|
||||||
NULL, /* getattrofunc tp_getattro; */
|
NULL, /* getattrofunc tp_getattro; */
|
||||||
NULL, /* setattrofunc tp_setattro; */
|
NULL, /* setattrofunc tp_setattro; */
|
||||||
|
|
||||||
/* Functions to access object as input/output buffer */
|
/* Functions to access object as input/output buffer */
|
||||||
NULL, /* PyBufferProcs *tp_as_buffer; */
|
NULL, /* PyBufferProcs *tp_as_buffer; */
|
||||||
@ -4831,7 +4831,7 @@ PyTypeObject pyrna_prop_Type= {
|
|||||||
/*** Flags to define presence of optional/expanded features ***/
|
/*** Flags to define presence of optional/expanded features ***/
|
||||||
Py_TPFLAGS_DEFAULT | Py_TPFLAGS_BASETYPE, /* long tp_flags; */
|
Py_TPFLAGS_DEFAULT | Py_TPFLAGS_BASETYPE, /* long tp_flags; */
|
||||||
|
|
||||||
NULL, /* char *tp_doc; Documentation string */
|
NULL, /* char *tp_doc; Documentation string */
|
||||||
/*** Assigned meaning in release 2.0 ***/
|
/*** Assigned meaning in release 2.0 ***/
|
||||||
/* call function for all accessible objects */
|
/* call function for all accessible objects */
|
||||||
NULL, /* traverseproc tp_traverse; */
|
NULL, /* traverseproc tp_traverse; */
|
||||||
@ -4852,11 +4852,11 @@ PyTypeObject pyrna_prop_Type= {
|
|||||||
|
|
||||||
/*** Added in release 2.2 ***/
|
/*** Added in release 2.2 ***/
|
||||||
/* Iterators */
|
/* Iterators */
|
||||||
NULL, /* getiterfunc tp_iter; */
|
NULL, /* getiterfunc tp_iter; */
|
||||||
NULL, /* iternextfunc tp_iternext; */
|
NULL, /* iternextfunc tp_iternext; */
|
||||||
|
|
||||||
/*** Attribute descriptor and subclassing stuff ***/
|
/*** Attribute descriptor and subclassing stuff ***/
|
||||||
pyrna_prop_methods, /* struct PyMethodDef *tp_methods; */
|
pyrna_prop_methods, /* struct PyMethodDef *tp_methods; */
|
||||||
NULL, /* struct PyMemberDef *tp_members; */
|
NULL, /* struct PyMemberDef *tp_members; */
|
||||||
pyrna_prop_getseters, /* struct PyGetSetDef *tp_getset; */
|
pyrna_prop_getseters, /* struct PyGetSetDef *tp_getset; */
|
||||||
NULL, /* struct _typeobject *tp_base; */
|
NULL, /* struct _typeobject *tp_base; */
|
||||||
@ -4866,7 +4866,7 @@ PyTypeObject pyrna_prop_Type= {
|
|||||||
0, /* long tp_dictoffset; */
|
0, /* long tp_dictoffset; */
|
||||||
NULL, /* initproc tp_init; */
|
NULL, /* initproc tp_init; */
|
||||||
NULL, /* allocfunc tp_alloc; */
|
NULL, /* allocfunc tp_alloc; */
|
||||||
pyrna_prop_new, /* newfunc tp_new; */
|
pyrna_prop_new, /* newfunc tp_new; */
|
||||||
/* Low-level free-memory routine */
|
/* Low-level free-memory routine */
|
||||||
NULL, /* freefunc tp_free; */
|
NULL, /* freefunc tp_free; */
|
||||||
/* For PyObject_IS_GC */
|
/* For PyObject_IS_GC */
|
||||||
@ -4888,34 +4888,34 @@ PyTypeObject pyrna_prop_array_Type= {
|
|||||||
/* methods */
|
/* methods */
|
||||||
(destructor)pyrna_prop_array_dealloc, /* tp_dealloc */
|
(destructor)pyrna_prop_array_dealloc, /* tp_dealloc */
|
||||||
NULL, /* printfunc tp_print; */
|
NULL, /* printfunc tp_print; */
|
||||||
NULL, /* getattrfunc tp_getattr; */
|
NULL, /* getattrfunc tp_getattr; */
|
||||||
NULL, /* setattrfunc tp_setattr; */
|
NULL, /* setattrfunc tp_setattr; */
|
||||||
NULL, /* tp_compare */ /* DEPRECATED in python 3.0! */
|
NULL, /* tp_compare */ /* DEPRECATED in python 3.0! */
|
||||||
NULL,/* subclassed */ /* tp_repr */
|
NULL,/* subclassed */ /* tp_repr */
|
||||||
|
|
||||||
/* Method suites for standard classes */
|
/* Method suites for standard classes */
|
||||||
|
|
||||||
&pyrna_prop_array_as_number, /* PyNumberMethods *tp_as_number; */
|
&pyrna_prop_array_as_number, /* PyNumberMethods *tp_as_number; */
|
||||||
&pyrna_prop_array_as_sequence, /* PySequenceMethods *tp_as_sequence; */
|
&pyrna_prop_array_as_sequence, /* PySequenceMethods *tp_as_sequence; */
|
||||||
&pyrna_prop_array_as_mapping, /* PyMappingMethods *tp_as_mapping; */
|
&pyrna_prop_array_as_mapping, /* PyMappingMethods *tp_as_mapping; */
|
||||||
|
|
||||||
/* More standard operations (here for binary compatibility) */
|
/* More standard operations (here for binary compatibility) */
|
||||||
|
|
||||||
NULL, /* hashfunc tp_hash; */
|
NULL, /* hashfunc tp_hash; */
|
||||||
NULL, /* ternaryfunc tp_call; */
|
NULL, /* ternaryfunc tp_call; */
|
||||||
NULL, /* reprfunc tp_str; */
|
NULL, /* reprfunc tp_str; */
|
||||||
|
|
||||||
/* will only use these if this is a subtype of a py class */
|
/* will only use these if this is a subtype of a py class */
|
||||||
(getattrofunc) pyrna_prop_array_getattro, /* getattrofunc tp_getattro; */
|
(getattrofunc) pyrna_prop_array_getattro, /* getattrofunc tp_getattro; */
|
||||||
NULL, /* setattrofunc tp_setattro; */
|
NULL, /* setattrofunc tp_setattro; */
|
||||||
|
|
||||||
/* Functions to access object as input/output buffer */
|
/* Functions to access object as input/output buffer */
|
||||||
NULL, /* PyBufferProcs *tp_as_buffer; */
|
NULL, /* PyBufferProcs *tp_as_buffer; */
|
||||||
|
|
||||||
/*** Flags to define presence of optional/expanded features ***/
|
/*** Flags to define presence of optional/expanded features ***/
|
||||||
Py_TPFLAGS_DEFAULT | Py_TPFLAGS_BASETYPE, /* long tp_flags; */
|
Py_TPFLAGS_DEFAULT | Py_TPFLAGS_BASETYPE, /* long tp_flags; */
|
||||||
|
|
||||||
NULL, /* char *tp_doc; Documentation string */
|
NULL, /* char *tp_doc; Documentation string */
|
||||||
/*** Assigned meaning in release 2.0 ***/
|
/*** Assigned meaning in release 2.0 ***/
|
||||||
/* call function for all accessible objects */
|
/* call function for all accessible objects */
|
||||||
NULL, /* traverseproc tp_traverse; */
|
NULL, /* traverseproc tp_traverse; */
|
||||||
@ -4925,7 +4925,7 @@ PyTypeObject pyrna_prop_array_Type= {
|
|||||||
|
|
||||||
/*** Assigned meaning in release 2.1 ***/
|
/*** Assigned meaning in release 2.1 ***/
|
||||||
/*** rich comparisons ***/
|
/*** rich comparisons ***/
|
||||||
NULL, /* subclassed */ /* richcmpfunc tp_richcompare; */
|
NULL, /* subclassed */ /* richcmpfunc tp_richcompare; */
|
||||||
|
|
||||||
/*** weak reference enabler ***/
|
/*** weak reference enabler ***/
|
||||||
#ifdef USE_WEAKREFS
|
#ifdef USE_WEAKREFS
|
||||||
@ -4939,22 +4939,22 @@ PyTypeObject pyrna_prop_array_Type= {
|
|||||||
NULL, /* iternextfunc tp_iternext; */
|
NULL, /* iternextfunc tp_iternext; */
|
||||||
|
|
||||||
/*** Attribute descriptor and subclassing stuff ***/
|
/*** Attribute descriptor and subclassing stuff ***/
|
||||||
pyrna_prop_array_methods, /* struct PyMethodDef *tp_methods; */
|
pyrna_prop_array_methods, /* struct PyMethodDef *tp_methods; */
|
||||||
NULL, /* struct PyMemberDef *tp_members; */
|
NULL, /* struct PyMemberDef *tp_members; */
|
||||||
NULL /*pyrna_prop_getseters*/, /* struct PyGetSetDef *tp_getset; */
|
NULL /*pyrna_prop_getseters*/, /* struct PyGetSetDef *tp_getset; */
|
||||||
&pyrna_prop_Type, /* struct _typeobject *tp_base; */
|
&pyrna_prop_Type, /* struct _typeobject *tp_base; */
|
||||||
NULL, /* PyObject *tp_dict; */
|
NULL, /* PyObject *tp_dict; */
|
||||||
NULL, /* descrgetfunc tp_descr_get; */
|
NULL, /* descrgetfunc tp_descr_get; */
|
||||||
NULL, /* descrsetfunc tp_descr_set; */
|
NULL, /* descrsetfunc tp_descr_set; */
|
||||||
0, /* long tp_dictoffset; */
|
0, /* long tp_dictoffset; */
|
||||||
NULL, /* initproc tp_init; */
|
NULL, /* initproc tp_init; */
|
||||||
NULL, /* allocfunc tp_alloc; */
|
NULL, /* allocfunc tp_alloc; */
|
||||||
NULL, /* newfunc tp_new; */
|
NULL, /* newfunc tp_new; */
|
||||||
/* Low-level free-memory routine */
|
/* Low-level free-memory routine */
|
||||||
NULL, /* freefunc tp_free; */
|
NULL, /* freefunc tp_free; */
|
||||||
/* For PyObject_IS_GC */
|
/* For PyObject_IS_GC */
|
||||||
NULL, /* inquiry tp_is_gc; */
|
NULL, /* inquiry tp_is_gc; */
|
||||||
NULL, /* PyObject *tp_bases; */
|
NULL, /* PyObject *tp_bases; */
|
||||||
/* method resolution order */
|
/* method resolution order */
|
||||||
NULL, /* PyObject *tp_mro; */
|
NULL, /* PyObject *tp_mro; */
|
||||||
NULL, /* PyObject *tp_cache; */
|
NULL, /* PyObject *tp_cache; */
|
||||||
@ -4965,32 +4965,32 @@ PyTypeObject pyrna_prop_array_Type= {
|
|||||||
|
|
||||||
PyTypeObject pyrna_prop_collection_Type= {
|
PyTypeObject pyrna_prop_collection_Type= {
|
||||||
PyVarObject_HEAD_INIT(NULL, 0)
|
PyVarObject_HEAD_INIT(NULL, 0)
|
||||||
"bpy_prop_collection", /* tp_name */
|
"bpy_prop_collection", /* tp_name */
|
||||||
sizeof(BPy_PropertyRNA), /* tp_basicsize */
|
sizeof(BPy_PropertyRNA), /* tp_basicsize */
|
||||||
0, /* tp_itemsize */
|
0, /* tp_itemsize */
|
||||||
/* methods */
|
/* methods */
|
||||||
(destructor)pyrna_prop_dealloc, /* tp_dealloc */
|
(destructor)pyrna_prop_dealloc, /* tp_dealloc */
|
||||||
NULL, /* printfunc tp_print; */
|
NULL, /* printfunc tp_print; */
|
||||||
NULL, /* getattrfunc tp_getattr; */
|
NULL, /* getattrfunc tp_getattr; */
|
||||||
NULL, /* setattrfunc tp_setattr; */
|
NULL, /* setattrfunc tp_setattr; */
|
||||||
NULL, /* tp_compare */ /* DEPRECATED in python 3.0! */
|
NULL, /* tp_compare */ /* DEPRECATED in python 3.0! */
|
||||||
NULL, /* subclassed */ /* tp_repr */
|
NULL, /* subclassed */ /* tp_repr */
|
||||||
|
|
||||||
/* Method suites for standard classes */
|
/* Method suites for standard classes */
|
||||||
|
|
||||||
&pyrna_prop_collection_as_number, /* PyNumberMethods *tp_as_number; */
|
&pyrna_prop_collection_as_number, /* PyNumberMethods *tp_as_number; */
|
||||||
&pyrna_prop_collection_as_sequence, /* PySequenceMethods *tp_as_sequence; */
|
&pyrna_prop_collection_as_sequence, /* PySequenceMethods *tp_as_sequence; */
|
||||||
&pyrna_prop_collection_as_mapping, /* PyMappingMethods *tp_as_mapping; */
|
&pyrna_prop_collection_as_mapping, /* PyMappingMethods *tp_as_mapping; */
|
||||||
|
|
||||||
/* More standard operations (here for binary compatibility) */
|
/* More standard operations (here for binary compatibility) */
|
||||||
|
|
||||||
NULL, /* hashfunc tp_hash; */
|
NULL, /* hashfunc tp_hash; */
|
||||||
NULL, /* ternaryfunc tp_call; */
|
NULL, /* ternaryfunc tp_call; */
|
||||||
NULL, /* reprfunc tp_str; */
|
NULL, /* reprfunc tp_str; */
|
||||||
|
|
||||||
/* will only use these if this is a subtype of a py class */
|
/* will only use these if this is a subtype of a py class */
|
||||||
(getattrofunc) pyrna_prop_collection_getattro, /* getattrofunc tp_getattro; */
|
(getattrofunc) pyrna_prop_collection_getattro, /* getattrofunc tp_getattro; */
|
||||||
(setattrofunc) pyrna_prop_collection_setattro, /* setattrofunc tp_setattro; */
|
(setattrofunc) pyrna_prop_collection_setattro, /* setattrofunc tp_setattro; */
|
||||||
|
|
||||||
/* Functions to access object as input/output buffer */
|
/* Functions to access object as input/output buffer */
|
||||||
NULL, /* PyBufferProcs *tp_as_buffer; */
|
NULL, /* PyBufferProcs *tp_as_buffer; */
|
||||||
@ -4998,7 +4998,7 @@ PyTypeObject pyrna_prop_collection_Type= {
|
|||||||
/*** Flags to define presence of optional/expanded features ***/
|
/*** Flags to define presence of optional/expanded features ***/
|
||||||
Py_TPFLAGS_DEFAULT | Py_TPFLAGS_BASETYPE, /* long tp_flags; */
|
Py_TPFLAGS_DEFAULT | Py_TPFLAGS_BASETYPE, /* long tp_flags; */
|
||||||
|
|
||||||
NULL, /* char *tp_doc; Documentation string */
|
NULL, /* char *tp_doc; Documentation string */
|
||||||
/*** Assigned meaning in release 2.0 ***/
|
/*** Assigned meaning in release 2.0 ***/
|
||||||
/* call function for all accessible objects */
|
/* call function for all accessible objects */
|
||||||
NULL, /* traverseproc tp_traverse; */
|
NULL, /* traverseproc tp_traverse; */
|
||||||
@ -5012,33 +5012,33 @@ PyTypeObject pyrna_prop_collection_Type= {
|
|||||||
|
|
||||||
/*** weak reference enabler ***/
|
/*** weak reference enabler ***/
|
||||||
#ifdef USE_WEAKREFS
|
#ifdef USE_WEAKREFS
|
||||||
offsetof(BPy_PropertyRNA, in_weakreflist), /* long tp_weaklistoffset; */
|
offsetof(BPy_PropertyRNA, in_weakreflist), /* long tp_weaklistoffset; */
|
||||||
#else
|
#else
|
||||||
0,
|
0,
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/*** Added in release 2.2 ***/
|
/*** Added in release 2.2 ***/
|
||||||
/* Iterators */
|
/* Iterators */
|
||||||
(getiterfunc)pyrna_prop_collection_iter, /* getiterfunc tp_iter; */
|
(getiterfunc)pyrna_prop_collection_iter, /* getiterfunc tp_iter; */
|
||||||
NULL, /* iternextfunc tp_iternext; */
|
NULL, /* iternextfunc tp_iternext; */
|
||||||
|
|
||||||
/*** Attribute descriptor and subclassing stuff ***/
|
/*** Attribute descriptor and subclassing stuff ***/
|
||||||
pyrna_prop_collection_methods, /* struct PyMethodDef *tp_methods; */
|
pyrna_prop_collection_methods, /* struct PyMethodDef *tp_methods; */
|
||||||
NULL, /* struct PyMemberDef *tp_members; */
|
NULL, /* struct PyMemberDef *tp_members; */
|
||||||
NULL /*pyrna_prop_getseters*/, /* struct PyGetSetDef *tp_getset; */
|
NULL /*pyrna_prop_getseters*/, /* struct PyGetSetDef *tp_getset; */
|
||||||
&pyrna_prop_Type, /* struct _typeobject *tp_base; */
|
&pyrna_prop_Type, /* struct _typeobject *tp_base; */
|
||||||
NULL, /* PyObject *tp_dict; */
|
NULL, /* PyObject *tp_dict; */
|
||||||
NULL, /* descrgetfunc tp_descr_get; */
|
NULL, /* descrgetfunc tp_descr_get; */
|
||||||
NULL, /* descrsetfunc tp_descr_set; */
|
NULL, /* descrsetfunc tp_descr_set; */
|
||||||
0, /* long tp_dictoffset; */
|
0, /* long tp_dictoffset; */
|
||||||
NULL, /* initproc tp_init; */
|
NULL, /* initproc tp_init; */
|
||||||
NULL, /* allocfunc tp_alloc; */
|
NULL, /* allocfunc tp_alloc; */
|
||||||
NULL, /* newfunc tp_new; */
|
NULL, /* newfunc tp_new; */
|
||||||
/* Low-level free-memory routine */
|
/* Low-level free-memory routine */
|
||||||
NULL, /* freefunc tp_free; */
|
NULL, /* freefunc tp_free; */
|
||||||
/* For PyObject_IS_GC */
|
/* For PyObject_IS_GC */
|
||||||
NULL, /* inquiry tp_is_gc; */
|
NULL, /* inquiry tp_is_gc; */
|
||||||
NULL, /* PyObject *tp_bases; */
|
NULL, /* PyObject *tp_bases; */
|
||||||
/* method resolution order */
|
/* method resolution order */
|
||||||
NULL, /* PyObject *tp_mro; */
|
NULL, /* PyObject *tp_mro; */
|
||||||
NULL, /* PyObject *tp_cache; */
|
NULL, /* PyObject *tp_cache; */
|
||||||
@ -5050,32 +5050,32 @@ PyTypeObject pyrna_prop_collection_Type= {
|
|||||||
/* only for add/remove/move methods */
|
/* only for add/remove/move methods */
|
||||||
static PyTypeObject pyrna_prop_collection_idprop_Type= {
|
static PyTypeObject pyrna_prop_collection_idprop_Type= {
|
||||||
PyVarObject_HEAD_INIT(NULL, 0)
|
PyVarObject_HEAD_INIT(NULL, 0)
|
||||||
"bpy_prop_collection_idprop", /* tp_name */
|
"bpy_prop_collection_idprop", /* tp_name */
|
||||||
sizeof(BPy_PropertyRNA), /* tp_basicsize */
|
sizeof(BPy_PropertyRNA), /* tp_basicsize */
|
||||||
0, /* tp_itemsize */
|
0, /* tp_itemsize */
|
||||||
/* methods */
|
/* methods */
|
||||||
(destructor)pyrna_prop_dealloc, /* tp_dealloc */
|
(destructor)pyrna_prop_dealloc, /* tp_dealloc */
|
||||||
NULL, /* printfunc tp_print; */
|
NULL, /* printfunc tp_print; */
|
||||||
NULL, /* getattrfunc tp_getattr; */
|
NULL, /* getattrfunc tp_getattr; */
|
||||||
NULL, /* setattrfunc tp_setattr; */
|
NULL, /* setattrfunc tp_setattr; */
|
||||||
NULL, /* tp_compare */ /* DEPRECATED in python 3.0! */
|
NULL, /* tp_compare */ /* DEPRECATED in python 3.0! */
|
||||||
NULL, /* subclassed */ /* tp_repr */
|
NULL, /* subclassed */ /* tp_repr */
|
||||||
|
|
||||||
/* Method suites for standard classes */
|
/* Method suites for standard classes */
|
||||||
|
|
||||||
NULL, /* PyNumberMethods *tp_as_number; */
|
NULL, /* PyNumberMethods *tp_as_number; */
|
||||||
NULL, /* PySequenceMethods *tp_as_sequence; */
|
NULL, /* PySequenceMethods *tp_as_sequence; */
|
||||||
NULL, /* PyMappingMethods *tp_as_mapping; */
|
NULL, /* PyMappingMethods *tp_as_mapping; */
|
||||||
|
|
||||||
/* More standard operations (here for binary compatibility) */
|
/* More standard operations (here for binary compatibility) */
|
||||||
|
|
||||||
NULL, /* hashfunc tp_hash; */
|
NULL, /* hashfunc tp_hash; */
|
||||||
NULL, /* ternaryfunc tp_call; */
|
NULL, /* ternaryfunc tp_call; */
|
||||||
NULL, /* reprfunc tp_str; */
|
NULL, /* reprfunc tp_str; */
|
||||||
|
|
||||||
/* will only use these if this is a subtype of a py class */
|
/* will only use these if this is a subtype of a py class */
|
||||||
NULL, /* getattrofunc tp_getattro; */
|
NULL, /* getattrofunc tp_getattro; */
|
||||||
NULL, /* setattrofunc tp_setattro; */
|
NULL, /* setattrofunc tp_setattro; */
|
||||||
|
|
||||||
/* Functions to access object as input/output buffer */
|
/* Functions to access object as input/output buffer */
|
||||||
NULL, /* PyBufferProcs *tp_as_buffer; */
|
NULL, /* PyBufferProcs *tp_as_buffer; */
|
||||||
@ -5083,7 +5083,7 @@ static PyTypeObject pyrna_prop_collection_idprop_Type= {
|
|||||||
/*** Flags to define presence of optional/expanded features ***/
|
/*** Flags to define presence of optional/expanded features ***/
|
||||||
Py_TPFLAGS_DEFAULT | Py_TPFLAGS_BASETYPE, /* long tp_flags; */
|
Py_TPFLAGS_DEFAULT | Py_TPFLAGS_BASETYPE, /* long tp_flags; */
|
||||||
|
|
||||||
NULL, /* char *tp_doc; Documentation string */
|
NULL, /* char *tp_doc; Documentation string */
|
||||||
/*** Assigned meaning in release 2.0 ***/
|
/*** Assigned meaning in release 2.0 ***/
|
||||||
/* call function for all accessible objects */
|
/* call function for all accessible objects */
|
||||||
NULL, /* traverseproc tp_traverse; */
|
NULL, /* traverseproc tp_traverse; */
|
||||||
@ -5097,33 +5097,33 @@ static PyTypeObject pyrna_prop_collection_idprop_Type= {
|
|||||||
|
|
||||||
/*** weak reference enabler ***/
|
/*** weak reference enabler ***/
|
||||||
#ifdef USE_WEAKREFS
|
#ifdef USE_WEAKREFS
|
||||||
offsetof(BPy_PropertyRNA, in_weakreflist), /* long tp_weaklistoffset; */
|
offsetof(BPy_PropertyRNA, in_weakreflist), /* long tp_weaklistoffset; */
|
||||||
#else
|
#else
|
||||||
0,
|
0,
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/*** Added in release 2.2 ***/
|
/*** Added in release 2.2 ***/
|
||||||
/* Iterators */
|
/* Iterators */
|
||||||
NULL, /* getiterfunc tp_iter; */
|
NULL, /* getiterfunc tp_iter; */
|
||||||
NULL, /* iternextfunc tp_iternext; */
|
NULL, /* iternextfunc tp_iternext; */
|
||||||
|
|
||||||
/*** Attribute descriptor and subclassing stuff ***/
|
/*** Attribute descriptor and subclassing stuff ***/
|
||||||
pyrna_prop_collection_idprop_methods, /* struct PyMethodDef *tp_methods; */
|
pyrna_prop_collection_idprop_methods, /* struct PyMethodDef *tp_methods; */
|
||||||
NULL, /* struct PyMemberDef *tp_members; */
|
NULL, /* struct PyMemberDef *tp_members; */
|
||||||
NULL /*pyrna_prop_getseters*/, /* struct PyGetSetDef *tp_getset; */
|
NULL /*pyrna_prop_getseters*/, /* struct PyGetSetDef *tp_getset; */
|
||||||
&pyrna_prop_collection_Type, /* struct _typeobject *tp_base; */
|
&pyrna_prop_collection_Type,/* struct _typeobject *tp_base; */
|
||||||
NULL, /* PyObject *tp_dict; */
|
NULL, /* PyObject *tp_dict; */
|
||||||
NULL, /* descrgetfunc tp_descr_get; */
|
NULL, /* descrgetfunc tp_descr_get; */
|
||||||
NULL, /* descrsetfunc tp_descr_set; */
|
NULL, /* descrsetfunc tp_descr_set; */
|
||||||
0, /* long tp_dictoffset; */
|
0, /* long tp_dictoffset; */
|
||||||
NULL, /* initproc tp_init; */
|
NULL, /* initproc tp_init; */
|
||||||
NULL, /* allocfunc tp_alloc; */
|
NULL, /* allocfunc tp_alloc; */
|
||||||
NULL, /* newfunc tp_new; */
|
NULL, /* newfunc tp_new; */
|
||||||
/* Low-level free-memory routine */
|
/* Low-level free-memory routine */
|
||||||
NULL, /* freefunc tp_free; */
|
NULL, /* freefunc tp_free; */
|
||||||
/* For PyObject_IS_GC */
|
/* For PyObject_IS_GC */
|
||||||
NULL, /* inquiry tp_is_gc; */
|
NULL, /* inquiry tp_is_gc; */
|
||||||
NULL, /* PyObject *tp_bases; */
|
NULL, /* PyObject *tp_bases; */
|
||||||
/* method resolution order */
|
/* method resolution order */
|
||||||
NULL, /* PyObject *tp_mro; */
|
NULL, /* PyObject *tp_mro; */
|
||||||
NULL, /* PyObject *tp_cache; */
|
NULL, /* PyObject *tp_cache; */
|
||||||
@ -5135,32 +5135,32 @@ static PyTypeObject pyrna_prop_collection_idprop_Type= {
|
|||||||
/*-----------------------BPy_PropertyRNA method def------------------------------*/
|
/*-----------------------BPy_PropertyRNA method def------------------------------*/
|
||||||
PyTypeObject pyrna_func_Type= {
|
PyTypeObject pyrna_func_Type= {
|
||||||
PyVarObject_HEAD_INIT(NULL, 0)
|
PyVarObject_HEAD_INIT(NULL, 0)
|
||||||
"bpy_func", /* tp_name */
|
"bpy_func", /* tp_name */
|
||||||
sizeof(BPy_FunctionRNA), /* tp_basicsize */
|
sizeof(BPy_FunctionRNA), /* tp_basicsize */
|
||||||
0, /* tp_itemsize */
|
0, /* tp_itemsize */
|
||||||
/* methods */
|
/* methods */
|
||||||
NULL, /* tp_dealloc */
|
NULL, /* tp_dealloc */
|
||||||
NULL, /* printfunc tp_print; */
|
NULL, /* printfunc tp_print; */
|
||||||
NULL, /* getattrfunc tp_getattr; */
|
NULL, /* getattrfunc tp_getattr; */
|
||||||
NULL, /* setattrfunc tp_setattr; */
|
NULL, /* setattrfunc tp_setattr; */
|
||||||
NULL, /* tp_compare */ /* DEPRECATED in python 3.0! */
|
NULL, /* tp_compare */ /* DEPRECATED in python 3.0! */
|
||||||
(reprfunc) pyrna_func_repr, /* tp_repr */
|
(reprfunc) pyrna_func_repr, /* tp_repr */
|
||||||
|
|
||||||
/* Method suites for standard classes */
|
/* Method suites for standard classes */
|
||||||
|
|
||||||
NULL, /* PyNumberMethods *tp_as_number; */
|
NULL, /* PyNumberMethods *tp_as_number; */
|
||||||
NULL, /* PySequenceMethods *tp_as_sequence; */
|
NULL, /* PySequenceMethods *tp_as_sequence; */
|
||||||
NULL, /* PyMappingMethods *tp_as_mapping; */
|
NULL, /* PyMappingMethods *tp_as_mapping; */
|
||||||
|
|
||||||
/* More standard operations (here for binary compatibility) */
|
/* More standard operations (here for binary compatibility) */
|
||||||
|
|
||||||
NULL, /* hashfunc tp_hash; */
|
NULL, /* hashfunc tp_hash; */
|
||||||
(ternaryfunc)pyrna_func_call, /* ternaryfunc tp_call; */
|
(ternaryfunc)pyrna_func_call, /* ternaryfunc tp_call; */
|
||||||
NULL, /* reprfunc tp_str; */
|
NULL, /* reprfunc tp_str; */
|
||||||
|
|
||||||
/* will only use these if this is a subtype of a py class */
|
/* will only use these if this is a subtype of a py class */
|
||||||
NULL, /* getattrofunc tp_getattro; */
|
NULL, /* getattrofunc tp_getattro; */
|
||||||
NULL, /* setattrofunc tp_setattro; */
|
NULL, /* setattrofunc tp_setattro; */
|
||||||
|
|
||||||
/* Functions to access object as input/output buffer */
|
/* Functions to access object as input/output buffer */
|
||||||
NULL, /* PyBufferProcs *tp_as_buffer; */
|
NULL, /* PyBufferProcs *tp_as_buffer; */
|
||||||
@ -5168,7 +5168,7 @@ PyTypeObject pyrna_func_Type= {
|
|||||||
/*** Flags to define presence of optional/expanded features ***/
|
/*** Flags to define presence of optional/expanded features ***/
|
||||||
Py_TPFLAGS_DEFAULT, /* long tp_flags; */
|
Py_TPFLAGS_DEFAULT, /* long tp_flags; */
|
||||||
|
|
||||||
NULL, /* char *tp_doc; Documentation string */
|
NULL, /* char *tp_doc; Documentation string */
|
||||||
/*** Assigned meaning in release 2.0 ***/
|
/*** Assigned meaning in release 2.0 ***/
|
||||||
/* call function for all accessible objects */
|
/* call function for all accessible objects */
|
||||||
NULL, /* traverseproc tp_traverse; */
|
NULL, /* traverseproc tp_traverse; */
|
||||||
@ -5178,7 +5178,7 @@ PyTypeObject pyrna_func_Type= {
|
|||||||
|
|
||||||
/*** Assigned meaning in release 2.1 ***/
|
/*** Assigned meaning in release 2.1 ***/
|
||||||
/*** rich comparisons ***/
|
/*** rich comparisons ***/
|
||||||
NULL, /* richcmpfunc tp_richcompare; */
|
NULL, /* richcmpfunc tp_richcompare; */
|
||||||
|
|
||||||
/*** weak reference enabler ***/
|
/*** weak reference enabler ***/
|
||||||
#ifdef USE_WEAKREFS
|
#ifdef USE_WEAKREFS
|
||||||
@ -5189,13 +5189,13 @@ PyTypeObject pyrna_func_Type= {
|
|||||||
|
|
||||||
/*** Added in release 2.2 ***/
|
/*** Added in release 2.2 ***/
|
||||||
/* Iterators */
|
/* Iterators */
|
||||||
NULL, /* getiterfunc tp_iter; */
|
NULL, /* getiterfunc tp_iter; */
|
||||||
NULL, /* iternextfunc tp_iternext; */
|
NULL, /* iternextfunc tp_iternext; */
|
||||||
|
|
||||||
/*** Attribute descriptor and subclassing stuff ***/
|
/*** Attribute descriptor and subclassing stuff ***/
|
||||||
NULL, /* struct PyMethodDef *tp_methods; */
|
NULL, /* struct PyMethodDef *tp_methods; */
|
||||||
NULL, /* struct PyMemberDef *tp_members; */
|
NULL, /* struct PyMemberDef *tp_members; */
|
||||||
NULL, /* struct PyGetSetDef *tp_getset; */
|
NULL, /* struct PyGetSetDef *tp_getset; */
|
||||||
NULL, /* struct _typeobject *tp_base; */
|
NULL, /* struct _typeobject *tp_base; */
|
||||||
NULL, /* PyObject *tp_dict; */
|
NULL, /* PyObject *tp_dict; */
|
||||||
NULL, /* descrgetfunc tp_descr_get; */
|
NULL, /* descrgetfunc tp_descr_get; */
|
||||||
@ -5203,7 +5203,7 @@ PyTypeObject pyrna_func_Type= {
|
|||||||
0, /* long tp_dictoffset; */
|
0, /* long tp_dictoffset; */
|
||||||
NULL, /* initproc tp_init; */
|
NULL, /* initproc tp_init; */
|
||||||
NULL, /* allocfunc tp_alloc; */
|
NULL, /* allocfunc tp_alloc; */
|
||||||
NULL, /* newfunc tp_new; */
|
NULL, /* newfunc tp_new; */
|
||||||
/* Low-level free-memory routine */
|
/* Low-level free-memory routine */
|
||||||
NULL, /* freefunc tp_free; */
|
NULL, /* freefunc tp_free; */
|
||||||
/* For PyObject_IS_GC */
|
/* For PyObject_IS_GC */
|
||||||
@ -5231,32 +5231,32 @@ static PyObject *pyrna_prop_collection_iter_next(BPy_PropertyCollectionIterRNA *
|
|||||||
|
|
||||||
PyTypeObject pyrna_prop_collection_iter_Type= {
|
PyTypeObject pyrna_prop_collection_iter_Type= {
|
||||||
PyVarObject_HEAD_INIT(NULL, 0)
|
PyVarObject_HEAD_INIT(NULL, 0)
|
||||||
"bpy_prop_collection_iter", /* tp_name */
|
"bpy_prop_collection_iter", /* tp_name */
|
||||||
sizeof(BPy_PropertyCollectionIterRNA), /* tp_basicsize */
|
sizeof(BPy_PropertyCollectionIterRNA), /* tp_basicsize */
|
||||||
0, /* tp_itemsize */
|
0, /* tp_itemsize */
|
||||||
/* methods */
|
/* methods */
|
||||||
(destructor)pyrna_prop_collection_iter_dealloc, /* tp_dealloc */
|
(destructor)pyrna_prop_collection_iter_dealloc, /* tp_dealloc */
|
||||||
NULL, /* printfunc tp_print; */
|
NULL, /* printfunc tp_print; */
|
||||||
NULL, /* getattrfunc tp_getattr; */
|
NULL, /* getattrfunc tp_getattr; */
|
||||||
NULL, /* setattrfunc tp_setattr; */
|
NULL, /* setattrfunc tp_setattr; */
|
||||||
NULL, /* tp_compare */ /* DEPRECATED in python 3.0! */
|
NULL, /* tp_compare */ /* DEPRECATED in python 3.0! */
|
||||||
NULL,/* subclassed */ /* tp_repr */
|
NULL,/* subclassed */ /* tp_repr */
|
||||||
|
|
||||||
/* Method suites for standard classes */
|
/* Method suites for standard classes */
|
||||||
|
|
||||||
NULL, /* PyNumberMethods *tp_as_number; */
|
NULL, /* PyNumberMethods *tp_as_number; */
|
||||||
NULL, /* PySequenceMethods *tp_as_sequence; */
|
NULL, /* PySequenceMethods *tp_as_sequence; */
|
||||||
NULL, /* PyMappingMethods *tp_as_mapping; */
|
NULL, /* PyMappingMethods *tp_as_mapping; */
|
||||||
|
|
||||||
/* More standard operations (here for binary compatibility) */
|
/* More standard operations (here for binary compatibility) */
|
||||||
|
|
||||||
NULL, /* hashfunc tp_hash; */
|
NULL, /* hashfunc tp_hash; */
|
||||||
NULL, /* ternaryfunc tp_call; */
|
NULL, /* ternaryfunc tp_call; */
|
||||||
NULL, /* reprfunc tp_str; */
|
NULL, /* reprfunc tp_str; */
|
||||||
|
|
||||||
/* will only use these if this is a subtype of a py class */
|
/* will only use these if this is a subtype of a py class */
|
||||||
PyObject_GenericGetAttr, /* getattrofunc tp_getattro; */
|
PyObject_GenericGetAttr, /* getattrofunc tp_getattro; */
|
||||||
NULL, /* setattrofunc tp_setattro; */
|
NULL, /* setattrofunc tp_setattro; */
|
||||||
|
|
||||||
/* Functions to access object as input/output buffer */
|
/* Functions to access object as input/output buffer */
|
||||||
NULL, /* PyBufferProcs *tp_as_buffer; */
|
NULL, /* PyBufferProcs *tp_as_buffer; */
|
||||||
@ -5264,7 +5264,7 @@ PyTypeObject pyrna_prop_collection_iter_Type= {
|
|||||||
/*** Flags to define presence of optional/expanded features ***/
|
/*** Flags to define presence of optional/expanded features ***/
|
||||||
Py_TPFLAGS_DEFAULT, /* long tp_flags; */
|
Py_TPFLAGS_DEFAULT, /* long tp_flags; */
|
||||||
|
|
||||||
NULL, /* char *tp_doc; Documentation string */
|
NULL, /* char *tp_doc; Documentation string */
|
||||||
/*** Assigned meaning in release 2.0 ***/
|
/*** Assigned meaning in release 2.0 ***/
|
||||||
/* call function for all accessible objects */
|
/* call function for all accessible objects */
|
||||||
NULL, /* traverseproc tp_traverse; */
|
NULL, /* traverseproc tp_traverse; */
|
||||||
@ -5278,19 +5278,19 @@ PyTypeObject pyrna_prop_collection_iter_Type= {
|
|||||||
|
|
||||||
/*** weak reference enabler ***/
|
/*** weak reference enabler ***/
|
||||||
#ifdef USE_WEAKREFS
|
#ifdef USE_WEAKREFS
|
||||||
offsetof(BPy_PropertyCollectionIterRNA, in_weakreflist), /* long tp_weaklistoffset; */
|
offsetof(BPy_PropertyCollectionIterRNA, in_weakreflist), /* long tp_weaklistoffset; */
|
||||||
#else
|
#else
|
||||||
0,
|
0,
|
||||||
#endif
|
#endif
|
||||||
/*** Added in release 2.2 ***/
|
/*** Added in release 2.2 ***/
|
||||||
/* Iterators */
|
/* Iterators */
|
||||||
PyObject_SelfIter, /* getiterfunc tp_iter; */
|
PyObject_SelfIter, /* getiterfunc tp_iter; */
|
||||||
(iternextfunc) pyrna_prop_collection_iter_next, /* iternextfunc tp_iternext; */
|
(iternextfunc) pyrna_prop_collection_iter_next, /* iternextfunc tp_iternext; */
|
||||||
|
|
||||||
/*** Attribute descriptor and subclassing stuff ***/
|
/*** Attribute descriptor and subclassing stuff ***/
|
||||||
NULL, /* struct PyMethodDef *tp_methods; */
|
NULL, /* struct PyMethodDef *tp_methods; */
|
||||||
NULL, /* struct PyMemberDef *tp_members; */
|
NULL, /* struct PyMemberDef *tp_members; */
|
||||||
NULL, /* struct PyGetSetDef *tp_getset; */
|
NULL, /* struct PyGetSetDef *tp_getset; */
|
||||||
NULL, /* struct _typeobject *tp_base; */
|
NULL, /* struct _typeobject *tp_base; */
|
||||||
NULL, /* PyObject *tp_dict; */
|
NULL, /* PyObject *tp_dict; */
|
||||||
NULL, /* descrgetfunc tp_descr_get; */
|
NULL, /* descrgetfunc tp_descr_get; */
|
||||||
@ -5298,12 +5298,12 @@ PyTypeObject pyrna_prop_collection_iter_Type= {
|
|||||||
0, /* long tp_dictoffset; */
|
0, /* long tp_dictoffset; */
|
||||||
NULL, /* initproc tp_init; */
|
NULL, /* initproc tp_init; */
|
||||||
NULL, /* allocfunc tp_alloc; */
|
NULL, /* allocfunc tp_alloc; */
|
||||||
NULL, /* newfunc tp_new; */
|
NULL, /* newfunc tp_new; */
|
||||||
/* Low-level free-memory routine */
|
/* Low-level free-memory routine */
|
||||||
NULL, /* freefunc tp_free; */
|
NULL, /* freefunc tp_free; */
|
||||||
/* For PyObject_IS_GC */
|
/* For PyObject_IS_GC */
|
||||||
NULL, /* inquiry tp_is_gc; */
|
NULL, /* inquiry tp_is_gc; */
|
||||||
NULL, /* PyObject *tp_bases; */
|
NULL, /* PyObject *tp_bases; */
|
||||||
/* method resolution order */
|
/* method resolution order */
|
||||||
NULL, /* PyObject *tp_mro; */
|
NULL, /* PyObject *tp_mro; */
|
||||||
NULL, /* PyObject *tp_cache; */
|
NULL, /* PyObject *tp_cache; */
|
||||||
|
@ -51,197 +51,195 @@
|
|||||||
/**
|
/**
|
||||||
Base Class for Blender specific inputdevices. Blender specific inputdevices are used when the gameengine is running in embedded mode instead of standalone mode.
|
Base Class for Blender specific inputdevices. Blender specific inputdevices are used when the gameengine is running in embedded mode instead of standalone mode.
|
||||||
*/
|
*/
|
||||||
class BL_BlenderInputDevice : public SCA_IInputDevice
|
class BL_BlenderInputDevice : public SCA_IInputDevice
|
||||||
{
|
{
|
||||||
// this map is Blender specific: a conversion between blender and ketsji enums
|
// this map is Blender specific: a conversion between blender and ketsji enums
|
||||||
std::map<int,KX_EnumInputs> m_reverseKeyTranslateTable;
|
std::map<int,KX_EnumInputs> m_reverseKeyTranslateTable;
|
||||||
public:
|
public:
|
||||||
BL_BlenderInputDevice()
|
BL_BlenderInputDevice()
|
||||||
{
|
{
|
||||||
|
|
||||||
/* The reverse table. In order to not confuse ourselves, we */
|
|
||||||
/* immediately convert all events that come in to KX codes. */
|
|
||||||
m_reverseKeyTranslateTable[LEFTMOUSE ] = KX_LEFTMOUSE ;
|
|
||||||
m_reverseKeyTranslateTable[MIDDLEMOUSE ] = KX_MIDDLEMOUSE ;
|
|
||||||
m_reverseKeyTranslateTable[RIGHTMOUSE ] = KX_RIGHTMOUSE ;
|
|
||||||
m_reverseKeyTranslateTable[WHEELUPMOUSE ] = KX_WHEELUPMOUSE ;
|
|
||||||
m_reverseKeyTranslateTable[WHEELDOWNMOUSE ] = KX_WHEELDOWNMOUSE ;
|
|
||||||
m_reverseKeyTranslateTable[MOUSEX ] = KX_MOUSEX ;
|
|
||||||
m_reverseKeyTranslateTable[MOUSEY ] = KX_MOUSEY ;
|
|
||||||
|
|
||||||
// TIMERS
|
|
||||||
|
|
||||||
m_reverseKeyTranslateTable[TIMER0 ] = KX_TIMER0 ;
|
/* The reverse table. In order to not confuse ourselves, we */
|
||||||
m_reverseKeyTranslateTable[TIMER1 ] = KX_TIMER1 ;
|
/* immediately convert all events that come in to KX codes. */
|
||||||
m_reverseKeyTranslateTable[TIMER2 ] = KX_TIMER2 ;
|
m_reverseKeyTranslateTable[LEFTMOUSE ] = KX_LEFTMOUSE;
|
||||||
|
m_reverseKeyTranslateTable[MIDDLEMOUSE ] = KX_MIDDLEMOUSE;
|
||||||
// SYSTEM
|
m_reverseKeyTranslateTable[RIGHTMOUSE ] = KX_RIGHTMOUSE;
|
||||||
#if 0
|
m_reverseKeyTranslateTable[WHEELUPMOUSE ] = KX_WHEELUPMOUSE;
|
||||||
/* **** XXX **** */
|
m_reverseKeyTranslateTable[WHEELDOWNMOUSE ] = KX_WHEELDOWNMOUSE;
|
||||||
m_reverseKeyTranslateTable[KEYBD ] = KX_KEYBD ;
|
m_reverseKeyTranslateTable[MOUSEX ] = KX_MOUSEX;
|
||||||
m_reverseKeyTranslateTable[RAWKEYBD ] = KX_RAWKEYBD ;
|
m_reverseKeyTranslateTable[MOUSEY ] = KX_MOUSEY;
|
||||||
m_reverseKeyTranslateTable[REDRAW ] = KX_REDRAW ;
|
|
||||||
m_reverseKeyTranslateTable[INPUTCHANGE ] = KX_INPUTCHANGE ;
|
// TIMERS
|
||||||
m_reverseKeyTranslateTable[QFULL ] = KX_QFULL ;
|
|
||||||
m_reverseKeyTranslateTable[WINFREEZE ] = KX_WINFREEZE ;
|
m_reverseKeyTranslateTable[TIMER0 ] = KX_TIMER0;
|
||||||
m_reverseKeyTranslateTable[WINTHAW ] = KX_WINTHAW ;
|
m_reverseKeyTranslateTable[TIMER1 ] = KX_TIMER1;
|
||||||
m_reverseKeyTranslateTable[WINCLOSE ] = KX_WINCLOSE ;
|
m_reverseKeyTranslateTable[TIMER2 ] = KX_TIMER2;
|
||||||
m_reverseKeyTranslateTable[WINQUIT ] = KX_WINQUIT ;
|
|
||||||
m_reverseKeyTranslateTable[Q_FIRSTTIME ] = KX_Q_FIRSTTIME ;
|
// SYSTEM
|
||||||
/* **** XXX **** */
|
#if 0
|
||||||
#endif
|
/* **** XXX **** */
|
||||||
// standard keyboard
|
m_reverseKeyTranslateTable[KEYBD ] = KX_KEYBD;
|
||||||
|
m_reverseKeyTranslateTable[RAWKEYBD ] = KX_RAWKEYBD;
|
||||||
m_reverseKeyTranslateTable[AKEY ] = KX_AKEY ;
|
m_reverseKeyTranslateTable[REDRAW ] = KX_REDRAW;
|
||||||
m_reverseKeyTranslateTable[BKEY ] = KX_BKEY ;
|
m_reverseKeyTranslateTable[INPUTCHANGE ] = KX_INPUTCHANGE;
|
||||||
m_reverseKeyTranslateTable[CKEY ] = KX_CKEY ;
|
m_reverseKeyTranslateTable[QFULL ] = KX_QFULL;
|
||||||
m_reverseKeyTranslateTable[DKEY ] = KX_DKEY ;
|
m_reverseKeyTranslateTable[WINFREEZE ] = KX_WINFREEZE;
|
||||||
m_reverseKeyTranslateTable[EKEY ] = KX_EKEY ;
|
m_reverseKeyTranslateTable[WINTHAW ] = KX_WINTHAW;
|
||||||
m_reverseKeyTranslateTable[FKEY ] = KX_FKEY ;
|
m_reverseKeyTranslateTable[WINCLOSE ] = KX_WINCLOSE;
|
||||||
m_reverseKeyTranslateTable[GKEY ] = KX_GKEY ;
|
m_reverseKeyTranslateTable[WINQUIT ] = KX_WINQUIT;
|
||||||
//XXX clean up
|
m_reverseKeyTranslateTable[Q_FIRSTTIME ] = KX_Q_FIRSTTIME;
|
||||||
|
/* **** XXX **** */
|
||||||
|
#endif
|
||||||
|
// standard keyboard
|
||||||
|
|
||||||
|
m_reverseKeyTranslateTable[AKEY ] = KX_AKEY;
|
||||||
|
m_reverseKeyTranslateTable[BKEY ] = KX_BKEY;
|
||||||
|
m_reverseKeyTranslateTable[CKEY ] = KX_CKEY;
|
||||||
|
m_reverseKeyTranslateTable[DKEY ] = KX_DKEY;
|
||||||
|
m_reverseKeyTranslateTable[EKEY ] = KX_EKEY;
|
||||||
|
m_reverseKeyTranslateTable[FKEY ] = KX_FKEY;
|
||||||
|
m_reverseKeyTranslateTable[GKEY ] = KX_GKEY;
|
||||||
|
//XXX clean up
|
||||||
#ifdef WIN32
|
#ifdef WIN32
|
||||||
#define HKEY 'h'
|
#define HKEY 'h'
|
||||||
#endif
|
#endif
|
||||||
m_reverseKeyTranslateTable[HKEY ] = KX_HKEY ;
|
m_reverseKeyTranslateTable[HKEY ] = KX_HKEY;
|
||||||
//XXX clean up
|
//XXX clean up
|
||||||
#ifdef WIN32
|
#ifdef WIN32
|
||||||
#undef HKEY
|
#undef HKEY
|
||||||
#endif
|
#endif
|
||||||
m_reverseKeyTranslateTable[IKEY ] = KX_IKEY ;
|
m_reverseKeyTranslateTable[IKEY ] = KX_IKEY;
|
||||||
m_reverseKeyTranslateTable[JKEY ] = KX_JKEY ;
|
m_reverseKeyTranslateTable[JKEY ] = KX_JKEY;
|
||||||
m_reverseKeyTranslateTable[KKEY ] = KX_KKEY ;
|
m_reverseKeyTranslateTable[KKEY ] = KX_KKEY;
|
||||||
m_reverseKeyTranslateTable[LKEY ] = KX_LKEY ;
|
m_reverseKeyTranslateTable[LKEY ] = KX_LKEY;
|
||||||
m_reverseKeyTranslateTable[MKEY ] = KX_MKEY ;
|
m_reverseKeyTranslateTable[MKEY ] = KX_MKEY;
|
||||||
m_reverseKeyTranslateTable[NKEY ] = KX_NKEY ;
|
m_reverseKeyTranslateTable[NKEY ] = KX_NKEY;
|
||||||
m_reverseKeyTranslateTable[OKEY ] = KX_OKEY ;
|
m_reverseKeyTranslateTable[OKEY ] = KX_OKEY;
|
||||||
m_reverseKeyTranslateTable[PKEY ] = KX_PKEY ;
|
m_reverseKeyTranslateTable[PKEY ] = KX_PKEY;
|
||||||
m_reverseKeyTranslateTable[QKEY ] = KX_QKEY ;
|
m_reverseKeyTranslateTable[QKEY ] = KX_QKEY;
|
||||||
m_reverseKeyTranslateTable[RKEY ] = KX_RKEY ;
|
m_reverseKeyTranslateTable[RKEY ] = KX_RKEY;
|
||||||
m_reverseKeyTranslateTable[SKEY ] = KX_SKEY ;
|
m_reverseKeyTranslateTable[SKEY ] = KX_SKEY;
|
||||||
m_reverseKeyTranslateTable[TKEY ] = KX_TKEY ;
|
m_reverseKeyTranslateTable[TKEY ] = KX_TKEY;
|
||||||
m_reverseKeyTranslateTable[UKEY ] = KX_UKEY ;
|
m_reverseKeyTranslateTable[UKEY ] = KX_UKEY;
|
||||||
m_reverseKeyTranslateTable[VKEY ] = KX_VKEY ;
|
m_reverseKeyTranslateTable[VKEY ] = KX_VKEY;
|
||||||
m_reverseKeyTranslateTable[WKEY ] = KX_WKEY ;
|
m_reverseKeyTranslateTable[WKEY ] = KX_WKEY;
|
||||||
m_reverseKeyTranslateTable[XKEY ] = KX_XKEY ;
|
m_reverseKeyTranslateTable[XKEY ] = KX_XKEY;
|
||||||
m_reverseKeyTranslateTable[YKEY ] = KX_YKEY ;
|
m_reverseKeyTranslateTable[YKEY ] = KX_YKEY;
|
||||||
m_reverseKeyTranslateTable[ZKEY ] = KX_ZKEY ;
|
m_reverseKeyTranslateTable[ZKEY ] = KX_ZKEY;
|
||||||
|
|
||||||
m_reverseKeyTranslateTable[ZEROKEY ] = KX_ZEROKEY ;
|
|
||||||
m_reverseKeyTranslateTable[ONEKEY ] = KX_ONEKEY ;
|
|
||||||
m_reverseKeyTranslateTable[TWOKEY ] = KX_TWOKEY ;
|
|
||||||
m_reverseKeyTranslateTable[THREEKEY ] = KX_THREEKEY ;
|
|
||||||
m_reverseKeyTranslateTable[FOURKEY ] = KX_FOURKEY ;
|
|
||||||
m_reverseKeyTranslateTable[FIVEKEY ] = KX_FIVEKEY ;
|
|
||||||
m_reverseKeyTranslateTable[SIXKEY ] = KX_SIXKEY ;
|
|
||||||
m_reverseKeyTranslateTable[SEVENKEY ] = KX_SEVENKEY ;
|
|
||||||
m_reverseKeyTranslateTable[EIGHTKEY ] = KX_EIGHTKEY ;
|
|
||||||
m_reverseKeyTranslateTable[NINEKEY ] = KX_NINEKEY ;
|
|
||||||
|
|
||||||
m_reverseKeyTranslateTable[CAPSLOCKKEY ] = KX_CAPSLOCKKEY ;
|
|
||||||
|
|
||||||
m_reverseKeyTranslateTable[LEFTCTRLKEY ] = KX_LEFTCTRLKEY ;
|
|
||||||
m_reverseKeyTranslateTable[LEFTALTKEY ] = KX_LEFTALTKEY ;
|
|
||||||
m_reverseKeyTranslateTable[RIGHTALTKEY ] = KX_RIGHTALTKEY ;
|
|
||||||
m_reverseKeyTranslateTable[RIGHTCTRLKEY ] = KX_RIGHTCTRLKEY ;
|
|
||||||
m_reverseKeyTranslateTable[RIGHTSHIFTKEY ] = KX_RIGHTSHIFTKEY ;
|
|
||||||
m_reverseKeyTranslateTable[LEFTSHIFTKEY ] = KX_LEFTSHIFTKEY ;
|
|
||||||
|
|
||||||
m_reverseKeyTranslateTable[ESCKEY ] = KX_ESCKEY ;
|
|
||||||
m_reverseKeyTranslateTable[TABKEY ] = KX_TABKEY ;
|
|
||||||
m_reverseKeyTranslateTable[RETKEY ] = KX_RETKEY ;
|
|
||||||
m_reverseKeyTranslateTable[SPACEKEY ] = KX_SPACEKEY ;
|
|
||||||
m_reverseKeyTranslateTable[LINEFEEDKEY ] = KX_LINEFEEDKEY ;
|
|
||||||
m_reverseKeyTranslateTable[BACKSPACEKEY ] = KX_BACKSPACEKEY ;
|
|
||||||
m_reverseKeyTranslateTable[DELKEY ] = KX_DELKEY ;
|
|
||||||
m_reverseKeyTranslateTable[SEMICOLONKEY ] = KX_SEMICOLONKEY ;
|
|
||||||
m_reverseKeyTranslateTable[PERIODKEY ] = KX_PERIODKEY ;
|
|
||||||
m_reverseKeyTranslateTable[COMMAKEY ] = KX_COMMAKEY ;
|
|
||||||
m_reverseKeyTranslateTable[QUOTEKEY ] = KX_QUOTEKEY ;
|
|
||||||
m_reverseKeyTranslateTable[ACCENTGRAVEKEY ] = KX_ACCENTGRAVEKEY ;
|
|
||||||
m_reverseKeyTranslateTable[MINUSKEY ] = KX_MINUSKEY ;
|
|
||||||
m_reverseKeyTranslateTable[SLASHKEY ] = KX_SLASHKEY ;
|
|
||||||
m_reverseKeyTranslateTable[BACKSLASHKEY ] = KX_BACKSLASHKEY ;
|
|
||||||
m_reverseKeyTranslateTable[EQUALKEY ] = KX_EQUALKEY ;
|
|
||||||
m_reverseKeyTranslateTable[LEFTBRACKETKEY ] = KX_LEFTBRACKETKEY ;
|
|
||||||
m_reverseKeyTranslateTable[RIGHTBRACKETKEY ] = KX_RIGHTBRACKETKEY ;
|
|
||||||
|
|
||||||
m_reverseKeyTranslateTable[LEFTARROWKEY ] = KX_LEFTARROWKEY ;
|
|
||||||
m_reverseKeyTranslateTable[DOWNARROWKEY ] = KX_DOWNARROWKEY ;
|
|
||||||
m_reverseKeyTranslateTable[RIGHTARROWKEY ] = KX_RIGHTARROWKEY ;
|
|
||||||
m_reverseKeyTranslateTable[UPARROWKEY ] = KX_UPARROWKEY ;
|
|
||||||
|
|
||||||
m_reverseKeyTranslateTable[PAD2 ] = KX_PAD2 ;
|
|
||||||
m_reverseKeyTranslateTable[PAD4 ] = KX_PAD4 ;
|
|
||||||
m_reverseKeyTranslateTable[PAD6 ] = KX_PAD6 ;
|
|
||||||
m_reverseKeyTranslateTable[PAD8 ] = KX_PAD8 ;
|
|
||||||
|
|
||||||
m_reverseKeyTranslateTable[PAD1 ] = KX_PAD1 ;
|
|
||||||
m_reverseKeyTranslateTable[PAD3 ] = KX_PAD3 ;
|
|
||||||
m_reverseKeyTranslateTable[PAD5 ] = KX_PAD5 ;
|
|
||||||
m_reverseKeyTranslateTable[PAD7 ] = KX_PAD7 ;
|
|
||||||
m_reverseKeyTranslateTable[PAD9 ] = KX_PAD9 ;
|
|
||||||
|
|
||||||
m_reverseKeyTranslateTable[PADPERIOD ] = KX_PADPERIOD ;
|
m_reverseKeyTranslateTable[ZEROKEY ] = KX_ZEROKEY;
|
||||||
m_reverseKeyTranslateTable[PADSLASHKEY ] = KX_PADSLASHKEY ;
|
m_reverseKeyTranslateTable[ONEKEY ] = KX_ONEKEY;
|
||||||
m_reverseKeyTranslateTable[PADASTERKEY ] = KX_PADASTERKEY ;
|
m_reverseKeyTranslateTable[TWOKEY ] = KX_TWOKEY;
|
||||||
|
m_reverseKeyTranslateTable[THREEKEY ] = KX_THREEKEY;
|
||||||
|
m_reverseKeyTranslateTable[FOURKEY ] = KX_FOURKEY;
|
||||||
m_reverseKeyTranslateTable[PAD0 ] = KX_PAD0 ;
|
m_reverseKeyTranslateTable[FIVEKEY ] = KX_FIVEKEY;
|
||||||
m_reverseKeyTranslateTable[PADMINUS ] = KX_PADMINUS ;
|
m_reverseKeyTranslateTable[SIXKEY ] = KX_SIXKEY;
|
||||||
m_reverseKeyTranslateTable[PADENTER ] = KX_PADENTER ;
|
m_reverseKeyTranslateTable[SEVENKEY ] = KX_SEVENKEY;
|
||||||
m_reverseKeyTranslateTable[PADPLUSKEY ] = KX_PADPLUSKEY ;
|
m_reverseKeyTranslateTable[EIGHTKEY ] = KX_EIGHTKEY;
|
||||||
|
m_reverseKeyTranslateTable[NINEKEY ] = KX_NINEKEY;
|
||||||
|
|
||||||
m_reverseKeyTranslateTable[F1KEY ] = KX_F1KEY ;
|
|
||||||
m_reverseKeyTranslateTable[F2KEY ] = KX_F2KEY ;
|
|
||||||
m_reverseKeyTranslateTable[F3KEY ] = KX_F3KEY ;
|
|
||||||
m_reverseKeyTranslateTable[F4KEY ] = KX_F4KEY ;
|
|
||||||
m_reverseKeyTranslateTable[F5KEY ] = KX_F5KEY ;
|
|
||||||
m_reverseKeyTranslateTable[F6KEY ] = KX_F6KEY ;
|
|
||||||
m_reverseKeyTranslateTable[F7KEY ] = KX_F7KEY ;
|
|
||||||
m_reverseKeyTranslateTable[F8KEY ] = KX_F8KEY ;
|
|
||||||
m_reverseKeyTranslateTable[F9KEY ] = KX_F9KEY ;
|
|
||||||
m_reverseKeyTranslateTable[F10KEY ] = KX_F10KEY ;
|
|
||||||
m_reverseKeyTranslateTable[F11KEY ] = KX_F11KEY ;
|
|
||||||
m_reverseKeyTranslateTable[F12KEY ] = KX_F12KEY ;
|
|
||||||
m_reverseKeyTranslateTable[F13KEY ] = KX_F13KEY ;
|
|
||||||
m_reverseKeyTranslateTable[F14KEY ] = KX_F14KEY ;
|
|
||||||
m_reverseKeyTranslateTable[F15KEY ] = KX_F15KEY ;
|
|
||||||
m_reverseKeyTranslateTable[F16KEY ] = KX_F16KEY ;
|
|
||||||
m_reverseKeyTranslateTable[F17KEY ] = KX_F17KEY ;
|
|
||||||
m_reverseKeyTranslateTable[F18KEY ] = KX_F18KEY ;
|
|
||||||
m_reverseKeyTranslateTable[F19KEY ] = KX_F19KEY ;
|
|
||||||
|
|
||||||
m_reverseKeyTranslateTable[PAUSEKEY ] = KX_PAUSEKEY ;
|
|
||||||
m_reverseKeyTranslateTable[INSERTKEY ] = KX_INSERTKEY ;
|
|
||||||
m_reverseKeyTranslateTable[HOMEKEY ] = KX_HOMEKEY ;
|
|
||||||
m_reverseKeyTranslateTable[PAGEUPKEY ] = KX_PAGEUPKEY ;
|
|
||||||
m_reverseKeyTranslateTable[PAGEDOWNKEY ] = KX_PAGEDOWNKEY ;
|
|
||||||
m_reverseKeyTranslateTable[ENDKEY ] = KX_ENDKEY ;
|
|
||||||
|
|
||||||
|
m_reverseKeyTranslateTable[CAPSLOCKKEY ] = KX_CAPSLOCKKEY;
|
||||||
}
|
|
||||||
|
m_reverseKeyTranslateTable[LEFTCTRLKEY ] = KX_LEFTCTRLKEY;
|
||||||
|
m_reverseKeyTranslateTable[LEFTALTKEY ] = KX_LEFTALTKEY;
|
||||||
|
m_reverseKeyTranslateTable[RIGHTALTKEY ] = KX_RIGHTALTKEY;
|
||||||
|
m_reverseKeyTranslateTable[RIGHTCTRLKEY ] = KX_RIGHTCTRLKEY;
|
||||||
|
m_reverseKeyTranslateTable[RIGHTSHIFTKEY ] = KX_RIGHTSHIFTKEY;
|
||||||
|
m_reverseKeyTranslateTable[LEFTSHIFTKEY ] = KX_LEFTSHIFTKEY;
|
||||||
|
|
||||||
|
m_reverseKeyTranslateTable[ESCKEY ] = KX_ESCKEY;
|
||||||
|
m_reverseKeyTranslateTable[TABKEY ] = KX_TABKEY;
|
||||||
|
m_reverseKeyTranslateTable[RETKEY ] = KX_RETKEY;
|
||||||
|
m_reverseKeyTranslateTable[SPACEKEY ] = KX_SPACEKEY;
|
||||||
|
m_reverseKeyTranslateTable[LINEFEEDKEY ] = KX_LINEFEEDKEY;
|
||||||
|
m_reverseKeyTranslateTable[BACKSPACEKEY ] = KX_BACKSPACEKEY;
|
||||||
|
m_reverseKeyTranslateTable[DELKEY ] = KX_DELKEY;
|
||||||
|
m_reverseKeyTranslateTable[SEMICOLONKEY ] = KX_SEMICOLONKEY;
|
||||||
|
m_reverseKeyTranslateTable[PERIODKEY ] = KX_PERIODKEY;
|
||||||
|
m_reverseKeyTranslateTable[COMMAKEY ] = KX_COMMAKEY;
|
||||||
|
m_reverseKeyTranslateTable[QUOTEKEY ] = KX_QUOTEKEY;
|
||||||
|
m_reverseKeyTranslateTable[ACCENTGRAVEKEY ] = KX_ACCENTGRAVEKEY;
|
||||||
|
m_reverseKeyTranslateTable[MINUSKEY ] = KX_MINUSKEY;
|
||||||
|
m_reverseKeyTranslateTable[SLASHKEY ] = KX_SLASHKEY;
|
||||||
|
m_reverseKeyTranslateTable[BACKSLASHKEY ] = KX_BACKSLASHKEY;
|
||||||
|
m_reverseKeyTranslateTable[EQUALKEY ] = KX_EQUALKEY;
|
||||||
|
m_reverseKeyTranslateTable[LEFTBRACKETKEY ] = KX_LEFTBRACKETKEY;
|
||||||
|
m_reverseKeyTranslateTable[RIGHTBRACKETKEY ] = KX_RIGHTBRACKETKEY;
|
||||||
|
|
||||||
|
m_reverseKeyTranslateTable[LEFTARROWKEY ] = KX_LEFTARROWKEY;
|
||||||
|
m_reverseKeyTranslateTable[DOWNARROWKEY ] = KX_DOWNARROWKEY;
|
||||||
|
m_reverseKeyTranslateTable[RIGHTARROWKEY ] = KX_RIGHTARROWKEY;
|
||||||
|
m_reverseKeyTranslateTable[UPARROWKEY ] = KX_UPARROWKEY;
|
||||||
|
|
||||||
|
m_reverseKeyTranslateTable[PAD2 ] = KX_PAD2;
|
||||||
|
m_reverseKeyTranslateTable[PAD4 ] = KX_PAD4;
|
||||||
|
m_reverseKeyTranslateTable[PAD6 ] = KX_PAD6;
|
||||||
|
m_reverseKeyTranslateTable[PAD8 ] = KX_PAD8;
|
||||||
|
|
||||||
|
m_reverseKeyTranslateTable[PAD1 ] = KX_PAD1;
|
||||||
|
m_reverseKeyTranslateTable[PAD3 ] = KX_PAD3;
|
||||||
|
m_reverseKeyTranslateTable[PAD5 ] = KX_PAD5;
|
||||||
|
m_reverseKeyTranslateTable[PAD7 ] = KX_PAD7;
|
||||||
|
m_reverseKeyTranslateTable[PAD9 ] = KX_PAD9;
|
||||||
|
|
||||||
|
m_reverseKeyTranslateTable[PADPERIOD ] = KX_PADPERIOD;
|
||||||
|
m_reverseKeyTranslateTable[PADSLASHKEY ] = KX_PADSLASHKEY;
|
||||||
|
m_reverseKeyTranslateTable[PADASTERKEY ] = KX_PADASTERKEY;
|
||||||
|
|
||||||
|
|
||||||
|
m_reverseKeyTranslateTable[PAD0 ] = KX_PAD0;
|
||||||
|
m_reverseKeyTranslateTable[PADMINUS ] = KX_PADMINUS;
|
||||||
|
m_reverseKeyTranslateTable[PADENTER ] = KX_PADENTER;
|
||||||
|
m_reverseKeyTranslateTable[PADPLUSKEY ] = KX_PADPLUSKEY;
|
||||||
|
|
||||||
|
|
||||||
|
m_reverseKeyTranslateTable[F1KEY ] = KX_F1KEY;
|
||||||
|
m_reverseKeyTranslateTable[F2KEY ] = KX_F2KEY;
|
||||||
|
m_reverseKeyTranslateTable[F3KEY ] = KX_F3KEY;
|
||||||
|
m_reverseKeyTranslateTable[F4KEY ] = KX_F4KEY;
|
||||||
|
m_reverseKeyTranslateTable[F5KEY ] = KX_F5KEY;
|
||||||
|
m_reverseKeyTranslateTable[F6KEY ] = KX_F6KEY;
|
||||||
|
m_reverseKeyTranslateTable[F7KEY ] = KX_F7KEY;
|
||||||
|
m_reverseKeyTranslateTable[F8KEY ] = KX_F8KEY;
|
||||||
|
m_reverseKeyTranslateTable[F9KEY ] = KX_F9KEY;
|
||||||
|
m_reverseKeyTranslateTable[F10KEY ] = KX_F10KEY;
|
||||||
|
m_reverseKeyTranslateTable[F11KEY ] = KX_F11KEY;
|
||||||
|
m_reverseKeyTranslateTable[F12KEY ] = KX_F12KEY;
|
||||||
|
m_reverseKeyTranslateTable[F13KEY ] = KX_F13KEY;
|
||||||
|
m_reverseKeyTranslateTable[F14KEY ] = KX_F14KEY;
|
||||||
|
m_reverseKeyTranslateTable[F15KEY ] = KX_F15KEY;
|
||||||
|
m_reverseKeyTranslateTable[F16KEY ] = KX_F16KEY;
|
||||||
|
m_reverseKeyTranslateTable[F17KEY ] = KX_F17KEY;
|
||||||
|
m_reverseKeyTranslateTable[F18KEY ] = KX_F18KEY;
|
||||||
|
m_reverseKeyTranslateTable[F19KEY ] = KX_F19KEY;
|
||||||
|
|
||||||
|
m_reverseKeyTranslateTable[PAUSEKEY ] = KX_PAUSEKEY;
|
||||||
|
m_reverseKeyTranslateTable[INSERTKEY ] = KX_INSERTKEY;
|
||||||
|
m_reverseKeyTranslateTable[HOMEKEY ] = KX_HOMEKEY;
|
||||||
|
m_reverseKeyTranslateTable[PAGEUPKEY ] = KX_PAGEUPKEY;
|
||||||
|
m_reverseKeyTranslateTable[PAGEDOWNKEY ] = KX_PAGEDOWNKEY;
|
||||||
|
m_reverseKeyTranslateTable[ENDKEY ] = KX_ENDKEY;
|
||||||
|
}
|
||||||
|
|
||||||
virtual ~BL_BlenderInputDevice()
|
virtual ~BL_BlenderInputDevice()
|
||||||
{
|
{
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
KX_EnumInputs ToNative(unsigned short incode) {
|
KX_EnumInputs ToNative(unsigned short incode) {
|
||||||
return m_reverseKeyTranslateTable[incode];
|
return m_reverseKeyTranslateTable[incode];
|
||||||
}
|
}
|
||||||
|
|
||||||
virtual bool IsPressed(SCA_IInputDevice::KX_EnumInputs inputcode)=0;
|
virtual bool IsPressed(SCA_IInputDevice::KX_EnumInputs inputcode)=0;
|
||||||
// virtual const SCA_InputEvent& GetEventValue(SCA_IInputDevice::KX_EnumInputs inputcode)=0;
|
// virtual const SCA_InputEvent& GetEventValue(SCA_IInputDevice::KX_EnumInputs inputcode)=0;
|
||||||
virtual bool ConvertBlenderEvent(unsigned short incode,short val)=0;
|
virtual bool ConvertBlenderEvent(unsigned short incode,short val)=0;
|
||||||
|
|
||||||
|
|
||||||
#ifdef WITH_CXX_GUARDEDALLOC
|
#ifdef WITH_CXX_GUARDEDALLOC
|
||||||
public:
|
public:
|
||||||
void *operator new(size_t num_bytes) { return MEM_mallocN(num_bytes, "GE:BL_BlenderInputDevice"); }
|
void *operator new(size_t num_bytes) { return MEM_mallocN(num_bytes, "GE:BL_BlenderInputDevice"); }
|
||||||
void operator delete(void *mem) { MEM_freeN(mem); }
|
void operator delete(void *mem) { MEM_freeN(mem); }
|
||||||
#endif
|
#endif
|
||||||
};
|
};
|
||||||
#endif //__KX_BLENDERINPUTDEVICE
|
#endif //__KX_BLENDERINPUTDEVICE
|
||||||
|
|
||||||
|
@ -88,7 +88,7 @@ protected:
|
|||||||
// --
|
// --
|
||||||
int m_tvtot;
|
int m_tvtot;
|
||||||
BL_DeformableGameObject* m_gameobj;
|
BL_DeformableGameObject* m_gameobj;
|
||||||
double m_lastDeformUpdate;
|
double m_lastDeformUpdate;
|
||||||
|
|
||||||
|
|
||||||
#ifdef WITH_CXX_GUARDEDALLOC
|
#ifdef WITH_CXX_GUARDEDALLOC
|
||||||
|
@ -46,8 +46,8 @@ class BL_ShapeDeformer : public BL_SkinDeformer
|
|||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
BL_ShapeDeformer(BL_DeformableGameObject *gameobj,
|
BL_ShapeDeformer(BL_DeformableGameObject *gameobj,
|
||||||
Object *bmeshobj,
|
Object *bmeshobj,
|
||||||
RAS_MeshObject *mesh);
|
RAS_MeshObject *mesh);
|
||||||
|
|
||||||
/* this second constructor is needed for making a mesh deformable on the fly. */
|
/* this second constructor is needed for making a mesh deformable on the fly. */
|
||||||
BL_ShapeDeformer(BL_DeformableGameObject *gameobj,
|
BL_ShapeDeformer(BL_DeformableGameObject *gameobj,
|
||||||
|
@ -679,7 +679,7 @@ void KX_BlenderSceneConverter::ResetPhysicsObjectsAnimationIpo(bool clearIpo)
|
|||||||
MEM_freeN( tmpicu );
|
MEM_freeN( tmpicu );
|
||||||
localDel_ipoCurve( tmpicu );
|
localDel_ipoCurve( tmpicu );
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} else
|
} else
|
||||||
{ ipo = NULL; // XXX add_ipo(blenderObject->id.name+2, ID_OB);
|
{ ipo = NULL; // XXX add_ipo(blenderObject->id.name+2, ID_OB);
|
||||||
blenderObject->ipo = ipo;
|
blenderObject->ipo = ipo;
|
||||||
|
@ -942,7 +942,7 @@ void BL_ConvertActuators(char* maggiename,
|
|||||||
case ACT_2DFILTER:
|
case ACT_2DFILTER:
|
||||||
{
|
{
|
||||||
bTwoDFilterActuator *_2dfilter = (bTwoDFilterActuator*) bact->data;
|
bTwoDFilterActuator *_2dfilter = (bTwoDFilterActuator*) bact->data;
|
||||||
SCA_2DFilterActuator *tmp = NULL;
|
SCA_2DFilterActuator *tmp = NULL;
|
||||||
|
|
||||||
RAS_2DFilterManager::RAS_2DFILTER_MODE filtermode;
|
RAS_2DFilterManager::RAS_2DFILTER_MODE filtermode;
|
||||||
switch(_2dfilter->type)
|
switch(_2dfilter->type)
|
||||||
|
@ -52,19 +52,19 @@ private:
|
|||||||
|
|
||||||
public:
|
public:
|
||||||
|
|
||||||
SCA_2DFilterActuator(
|
SCA_2DFilterActuator(
|
||||||
class SCA_IObject* gameobj,
|
class SCA_IObject* gameobj,
|
||||||
RAS_2DFilterManager::RAS_2DFILTER_MODE type,
|
RAS_2DFilterManager::RAS_2DFILTER_MODE type,
|
||||||
short flag,
|
short flag,
|
||||||
float float_arg,
|
float float_arg,
|
||||||
int int_arg,
|
int int_arg,
|
||||||
RAS_IRasterizer* rasterizer,
|
RAS_IRasterizer* rasterizer,
|
||||||
SCA_IScene* scene);
|
SCA_IScene* scene);
|
||||||
|
|
||||||
void SetShaderText(const char *text);
|
void SetShaderText(const char *text);
|
||||||
virtual ~SCA_2DFilterActuator();
|
virtual ~SCA_2DFilterActuator();
|
||||||
virtual bool Update();
|
virtual bool Update();
|
||||||
|
|
||||||
virtual CValue* GetReplica();
|
virtual CValue* GetReplica();
|
||||||
};
|
};
|
||||||
#endif
|
#endif
|
||||||
|
@ -34,7 +34,7 @@
|
|||||||
|
|
||||||
#ifndef KX_PYTHONCONTROLLER_H
|
#ifndef KX_PYTHONCONTROLLER_H
|
||||||
#define KX_PYTHONCONTROLLER_H
|
#define KX_PYTHONCONTROLLER_H
|
||||||
|
|
||||||
#include "SCA_IController.h"
|
#include "SCA_IController.h"
|
||||||
#include "SCA_LogicManager.h"
|
#include "SCA_LogicManager.h"
|
||||||
#include "BoolValue.h"
|
#include "BoolValue.h"
|
||||||
|
@ -207,10 +207,10 @@ bool SCA_RandomActuator::Update()
|
|||||||
sensible values. The termination condition states two
|
sensible values. The termination condition states two
|
||||||
things:
|
things:
|
||||||
1. s >= 0 is not allowed: to prevent the distro from
|
1. s >= 0 is not allowed: to prevent the distro from
|
||||||
getting a bias towards high values. This is a small
|
getting a bias towards high values. This is a small
|
||||||
correction, really, and might also be left out.
|
correction, really, and might also be left out.
|
||||||
2. s == 0 is not allowed: to prevent a division by zero
|
2. s == 0 is not allowed: to prevent a division by zero
|
||||||
when renormalising the drawn value to the desired
|
when renormalising the drawn value to the desired
|
||||||
distribution shape. As a side effect, the distro will
|
distribution shape. As a side effect, the distro will
|
||||||
never yield the exact mean.
|
never yield the exact mean.
|
||||||
I am not sure whether this is consistent, since the error
|
I am not sure whether this is consistent, since the error
|
||||||
|
@ -192,7 +192,7 @@ static LRESULT CALLBACK screenSaverWindowProc(HWND hwnd, UINT uMsg, WPARAM wPara
|
|||||||
LONG dx = scr_save_mouse_pos.x - pt.x;
|
LONG dx = scr_save_mouse_pos.x - pt.x;
|
||||||
LONG dy = scr_save_mouse_pos.y - pt.y;
|
LONG dy = scr_save_mouse_pos.y - pt.y;
|
||||||
if (abs(dx) > SCR_SAVE_MOUSE_MOVE_THRESHOLD
|
if (abs(dx) > SCR_SAVE_MOUSE_MOVE_THRESHOLD
|
||||||
|| abs(dy) > SCR_SAVE_MOUSE_MOVE_THRESHOLD)
|
|| abs(dy) > SCR_SAVE_MOUSE_MOVE_THRESHOLD)
|
||||||
{
|
{
|
||||||
close = TRUE;
|
close = TRUE;
|
||||||
}
|
}
|
||||||
|
@ -43,7 +43,7 @@ class KX_NetworkEventManager : public SCA_EventManager
|
|||||||
|
|
||||||
public:
|
public:
|
||||||
KX_NetworkEventManager(class SCA_LogicManager* logicmgr,
|
KX_NetworkEventManager(class SCA_LogicManager* logicmgr,
|
||||||
class NG_NetworkDeviceInterface *ndi);
|
class NG_NetworkDeviceInterface *ndi);
|
||||||
virtual ~KX_NetworkEventManager ();
|
virtual ~KX_NetworkEventManager ();
|
||||||
|
|
||||||
virtual void NextFrame();
|
virtual void NextFrame();
|
||||||
@ -51,7 +51,7 @@ public:
|
|||||||
|
|
||||||
SCA_LogicManager* GetLogicManager() { return m_logicmgr; }
|
SCA_LogicManager* GetLogicManager() { return m_logicmgr; }
|
||||||
class NG_NetworkDeviceInterface* GetNetworkDevice() {
|
class NG_NetworkDeviceInterface* GetNetworkDevice() {
|
||||||
return m_ndi; }
|
return m_ndi; }
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif //KX_NETWORK_EVENTMANAGER_H
|
#endif //KX_NETWORK_EVENTMANAGER_H
|
||||||
|
@ -111,7 +111,7 @@ KX_GameObject::KX_GameObject(
|
|||||||
m_pHitObject(NULL),
|
m_pHitObject(NULL),
|
||||||
m_actionManager(NULL),
|
m_actionManager(NULL),
|
||||||
m_isDeformable(false)
|
m_isDeformable(false)
|
||||||
#ifdef WITH_PYTHON
|
#ifdef WITH_PYTHON
|
||||||
, m_attr_dict(NULL)
|
, m_attr_dict(NULL)
|
||||||
#endif
|
#endif
|
||||||
{
|
{
|
||||||
|
@ -237,9 +237,9 @@ bool KX_ObjectActuator::Update()
|
|||||||
if (m_current_linear_factor > 1.0)
|
if (m_current_linear_factor > 1.0)
|
||||||
m_current_linear_factor = 1.0;
|
m_current_linear_factor = 1.0;
|
||||||
linV = m_current_linear_factor * m_linear_velocity;
|
linV = m_current_linear_factor * m_linear_velocity;
|
||||||
parent->setLinearVelocity(linV,(m_bitLocalFlag.LinearVelocity) != 0);
|
parent->setLinearVelocity(linV,(m_bitLocalFlag.LinearVelocity) != 0);
|
||||||
} else {
|
} else {
|
||||||
parent->setLinearVelocity(m_linear_velocity,(m_bitLocalFlag.LinearVelocity) != 0);
|
parent->setLinearVelocity(m_linear_velocity,(m_bitLocalFlag.LinearVelocity) != 0);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -260,7 +260,7 @@ bool KX_ObjectActuator::Update()
|
|||||||
if (m_current_angular_factor > 1.0)
|
if (m_current_angular_factor > 1.0)
|
||||||
m_current_angular_factor = 1.0;
|
m_current_angular_factor = 1.0;
|
||||||
angV = m_current_angular_factor * m_angular_velocity;
|
angV = m_current_angular_factor * m_angular_velocity;
|
||||||
parent->setAngularVelocity(angV,(m_bitLocalFlag.AngularVelocity) != 0);
|
parent->setAngularVelocity(angV,(m_bitLocalFlag.AngularVelocity) != 0);
|
||||||
} else {
|
} else {
|
||||||
parent->setAngularVelocity(m_angular_velocity,(m_bitLocalFlag.AngularVelocity) != 0);
|
parent->setAngularVelocity(m_angular_velocity,(m_bitLocalFlag.AngularVelocity) != 0);
|
||||||
}
|
}
|
||||||
|
@ -51,6 +51,6 @@ void KX_OrientationInterpolator::Execute(float currentTime) const {
|
|||||||
MT_Scalar ss = si*sh;
|
MT_Scalar ss = si*sh;
|
||||||
|
|
||||||
m_target.setValue(cj*ch, sj*sc-cs, sj*cc+ss,
|
m_target.setValue(cj*ch, sj*sc-cs, sj*cc+ss,
|
||||||
cj*sh, sj*ss+cc, sj*cs-sc,
|
cj*sh, sj*ss+cc, sj*cs-sc,
|
||||||
-sj, cj*si, cj*ci);
|
-sj, cj*si, cj*ci);
|
||||||
}
|
}
|
||||||
|
@ -187,7 +187,7 @@ void KX_PolygonMaterial::DefaultActivate(RAS_IRasterizer* rasty, TCachingInfo& c
|
|||||||
rasty->SetCullFace(true);
|
rasty->SetCullFace(true);
|
||||||
|
|
||||||
if ((m_drawingmode & RAS_IRasterizer::KX_LINES) ||
|
if ((m_drawingmode & RAS_IRasterizer::KX_LINES) ||
|
||||||
(rasty->GetDrawingMode() <= RAS_IRasterizer::KX_WIREFRAME))
|
(rasty->GetDrawingMode() <= RAS_IRasterizer::KX_WIREFRAME))
|
||||||
rasty->SetLines(true);
|
rasty->SetLines(true);
|
||||||
else
|
else
|
||||||
rasty->SetLines(false);
|
rasty->SetLines(false);
|
||||||
|
@ -57,7 +57,7 @@ class KX_TrackToActuator : public SCA_IActuator
|
|||||||
|
|
||||||
public:
|
public:
|
||||||
KX_TrackToActuator(SCA_IObject* gameobj, SCA_IObject *ob, int time,
|
KX_TrackToActuator(SCA_IObject* gameobj, SCA_IObject *ob, int time,
|
||||||
bool threedee,int trackflag,int upflag);
|
bool threedee,int trackflag,int upflag);
|
||||||
virtual ~KX_TrackToActuator();
|
virtual ~KX_TrackToActuator();
|
||||||
virtual CValue* GetReplica() {
|
virtual CValue* GetReplica() {
|
||||||
KX_TrackToActuator* replica = new KX_TrackToActuator(*this);
|
KX_TrackToActuator* replica = new KX_TrackToActuator(*this);
|
||||||
|
@ -52,8 +52,8 @@ public:
|
|||||||
virtual void NextFrame();
|
virtual void NextFrame();
|
||||||
|
|
||||||
bool Connect(char *address, unsigned int port, char *password,
|
bool Connect(char *address, unsigned int port, char *password,
|
||||||
unsigned int localport, unsigned int timeout) {
|
unsigned int localport, unsigned int timeout) {
|
||||||
return true;}
|
return true;}
|
||||||
bool Disconnect(void) {return true;}
|
bool Disconnect(void) {return true;}
|
||||||
|
|
||||||
virtual void SendNetworkMessage(class NG_NetworkMessage* msg);
|
virtual void SendNetworkMessage(class NG_NetworkMessage* msg);
|
||||||
|
@ -64,7 +64,7 @@ public:
|
|||||||
bool IsOnline(void) { return m_online; }
|
bool IsOnline(void) { return m_online; }
|
||||||
|
|
||||||
virtual bool Connect(char *address, unsigned int port, char *password,
|
virtual bool Connect(char *address, unsigned int port, char *password,
|
||||||
unsigned int localport, unsigned int timeout)=0;
|
unsigned int localport, unsigned int timeout)=0;
|
||||||
virtual bool Disconnect(void)=0;
|
virtual bool Disconnect(void)=0;
|
||||||
|
|
||||||
virtual void SendNetworkMessage(NG_NetworkMessage* msg)=0;
|
virtual void SendNetworkMessage(NG_NetworkMessage* msg)=0;
|
||||||
|
@ -216,12 +216,12 @@ struct CcdConstructionInfo
|
|||||||
///more advanced collision filtering should be done in btCollisionDispatcher::NeedsCollision
|
///more advanced collision filtering should be done in btCollisionDispatcher::NeedsCollision
|
||||||
enum CollisionFilterGroups
|
enum CollisionFilterGroups
|
||||||
{
|
{
|
||||||
DefaultFilter = 1,
|
DefaultFilter = 1,
|
||||||
StaticFilter = 2,
|
StaticFilter = 2,
|
||||||
KinematicFilter = 4,
|
KinematicFilter = 4,
|
||||||
DebrisFilter = 8,
|
DebrisFilter = 8,
|
||||||
SensorFilter = 16,
|
SensorFilter = 16,
|
||||||
AllFilter = DefaultFilter | StaticFilter | KinematicFilter | DebrisFilter | SensorFilter,
|
AllFilter = DefaultFilter | StaticFilter | KinematicFilter | DebrisFilter | SensorFilter,
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
@ -2564,8 +2564,8 @@ int CcdPhysicsEnvironment::createConstraint(class PHY_IPhysicsController* ctrl
|
|||||||
btPlaneSpace1( axisInA, axis1, axis2 );
|
btPlaneSpace1( axisInA, axis1, axis2 );
|
||||||
|
|
||||||
frameInA.getBasis().setValue( axisInA.x(), axis1.x(), axis2.x(),
|
frameInA.getBasis().setValue( axisInA.x(), axis1.x(), axis2.x(),
|
||||||
axisInA.y(), axis1.y(), axis2.y(),
|
axisInA.y(), axis1.y(), axis2.y(),
|
||||||
axisInA.z(), axis1.z(), axis2.z() );
|
axisInA.z(), axis1.z(), axis2.z() );
|
||||||
|
|
||||||
frameInA.setOrigin( pivotInA );
|
frameInA.setOrigin( pivotInA );
|
||||||
|
|
||||||
|
@ -164,7 +164,7 @@ protected:
|
|||||||
|
|
||||||
virtual float getConstraintParam(int constraintId,int param);
|
virtual float getConstraintParam(int constraintId,int param);
|
||||||
|
|
||||||
virtual void removeConstraint(int constraintid);
|
virtual void removeConstraint(int constraintid);
|
||||||
|
|
||||||
virtual float getAppliedImpulse(int constraintid);
|
virtual float getAppliedImpulse(int constraintid);
|
||||||
|
|
||||||
|
@ -306,8 +306,8 @@ void RAS_2DFilterManager::SetupTextures(bool depth, bool luminance)
|
|||||||
if(depth){
|
if(depth){
|
||||||
glGenTextures(1, (GLuint*)&texname[1]);
|
glGenTextures(1, (GLuint*)&texname[1]);
|
||||||
glBindTexture(GL_TEXTURE_2D, texname[1]);
|
glBindTexture(GL_TEXTURE_2D, texname[1]);
|
||||||
glTexImage2D(GL_TEXTURE_2D, 0, GL_DEPTH_COMPONENT32, texturewidth,textureheight,
|
glTexImage2D(GL_TEXTURE_2D, 0, GL_DEPTH_COMPONENT32, texturewidth,textureheight,
|
||||||
0, GL_DEPTH_COMPONENT, GL_UNSIGNED_BYTE,NULL);
|
0, GL_DEPTH_COMPONENT, GL_UNSIGNED_BYTE,NULL);
|
||||||
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_COMPARE_MODE,
|
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_COMPARE_MODE,
|
||||||
GL_NONE);
|
GL_NONE);
|
||||||
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR);
|
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR);
|
||||||
@ -433,6 +433,9 @@ void RAS_2DFilterManager::RenderFilters(RAS_ICanvas* canvas)
|
|||||||
glCopyTexImage2D(GL_TEXTURE_2D,0,GL_LUMINANCE16, 0, 0, texturewidth,textureheight, 0);
|
glCopyTexImage2D(GL_TEXTURE_2D,0,GL_LUMINANCE16, 0, 0, texturewidth,textureheight, 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// reverting to texunit 0, without this we get bug [#28462]
|
||||||
|
glActiveTextureARB(GL_TEXTURE0);
|
||||||
|
|
||||||
glViewport(0,0, texturewidth, textureheight);
|
glViewport(0,0, texturewidth, textureheight);
|
||||||
|
|
||||||
glDisable(GL_DEPTH_TEST);
|
glDisable(GL_DEPTH_TEST);
|
||||||
|
@ -49,19 +49,19 @@ struct RAS_CameraData
|
|||||||
float m_focallength;
|
float m_focallength;
|
||||||
|
|
||||||
RAS_CameraData(float lens = 35.0, float scale = 6.0, float clipstart = 0.1, float clipend = 5000.0, bool perspective = true,
|
RAS_CameraData(float lens = 35.0, float scale = 6.0, float clipstart = 0.1, float clipend = 5000.0, bool perspective = true,
|
||||||
float focallength = 3.0, bool viewport = false, int viewportleft = 0, int viewportbottom = 0,
|
float focallength = 3.0, bool viewport = false, int viewportleft = 0, int viewportbottom = 0,
|
||||||
int viewportright = 0, int viewporttop = 0) :
|
int viewportright = 0, int viewporttop = 0) :
|
||||||
m_lens(lens),
|
m_lens(lens),
|
||||||
m_scale(scale),
|
m_scale(scale),
|
||||||
m_clipstart(clipstart),
|
m_clipstart(clipstart),
|
||||||
m_clipend(clipend),
|
m_clipend(clipend),
|
||||||
m_perspective(perspective),
|
m_perspective(perspective),
|
||||||
m_viewport(viewport),
|
m_viewport(viewport),
|
||||||
m_viewportleft(viewportleft),
|
m_viewportleft(viewportleft),
|
||||||
m_viewportbottom(viewportbottom),
|
m_viewportbottom(viewportbottom),
|
||||||
m_viewportright(viewportright),
|
m_viewportright(viewportright),
|
||||||
m_viewporttop(viewporttop),
|
m_viewporttop(viewporttop),
|
||||||
m_focallength(focallength)
|
m_focallength(focallength)
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
@ -38,17 +38,17 @@ uniform vec2 bgl_TextureCoordinateOffset[9];
|
|||||||
|
|
||||||
void main(void)
|
void main(void)
|
||||||
{
|
{
|
||||||
vec4 sample[9];
|
vec4 sample[9];
|
||||||
|
|
||||||
for (int i = 0; i < 9; i++)
|
for (int i = 0; i < 9; i++)
|
||||||
{
|
{
|
||||||
sample[i] = texture2D(bgl_RenderedTexture,
|
sample[i] = texture2D(bgl_RenderedTexture,
|
||||||
gl_TexCoord[0].st + bgl_TextureCoordinateOffset[i]);
|
gl_TexCoord[0].st + bgl_TextureCoordinateOffset[i]);
|
||||||
}
|
}
|
||||||
|
|
||||||
gl_FragColor = (sample[0] + (2.0*sample[1]) + sample[2] +
|
gl_FragColor = (sample[0] + (2.0*sample[1]) + sample[2] +
|
||||||
(2.0*sample[3]) + sample[4] + (2.0*sample[5]) +
|
(2.0*sample[3]) + sample[4] + (2.0*sample[5]) +
|
||||||
sample[6] + (2.0*sample[7]) + sample[8]) / 13.0;
|
sample[6] + (2.0*sample[7]) + sample[8]) / 13.0;
|
||||||
}
|
}
|
||||||
);
|
);
|
||||||
#endif
|
#endif
|
||||||
|
@ -38,17 +38,17 @@ uniform vec2 bgl_TextureCoordinateOffset[9];
|
|||||||
|
|
||||||
void main(void)
|
void main(void)
|
||||||
{
|
{
|
||||||
vec4 sample[9];
|
vec4 sample[9];
|
||||||
vec4 maxValue = vec4(0.0);
|
vec4 maxValue = vec4(0.0);
|
||||||
|
|
||||||
for (int i = 0; i < 9; i++)
|
for (int i = 0; i < 9; i++)
|
||||||
{
|
{
|
||||||
sample[i] = texture2D(bgl_RenderedTexture,
|
sample[i] = texture2D(bgl_RenderedTexture,
|
||||||
gl_TexCoord[0].st + bgl_TextureCoordinateOffset[i]);
|
gl_TexCoord[0].st + bgl_TextureCoordinateOffset[i]);
|
||||||
maxValue = max(sample[i], maxValue);
|
maxValue = max(sample[i], maxValue);
|
||||||
}
|
}
|
||||||
|
|
||||||
gl_FragColor = maxValue;
|
gl_FragColor = maxValue;
|
||||||
}
|
}
|
||||||
);
|
);
|
||||||
#endif
|
#endif
|
||||||
|
@ -33,22 +33,22 @@
|
|||||||
#define __RAS_EROSION2DFILTER
|
#define __RAS_EROSION2DFILTER
|
||||||
|
|
||||||
const char * ErosionFragmentShader=STRINGIFY(
|
const char * ErosionFragmentShader=STRINGIFY(
|
||||||
uniform sampler2D bgl_RenderedTexture;
|
uniform sampler2D bgl_RenderedTexture;
|
||||||
uniform vec2 bgl_TextureCoordinateOffset[9];
|
uniform vec2 bgl_TextureCoordinateOffset[9];
|
||||||
|
|
||||||
void main(void)
|
void main(void)
|
||||||
{
|
{
|
||||||
vec4 sample[9];
|
vec4 sample[9];
|
||||||
vec4 minValue = vec4(1.0);
|
vec4 minValue = vec4(1.0);
|
||||||
|
|
||||||
for (int i = 0; i < 9; i++)
|
for (int i = 0; i < 9; i++)
|
||||||
{
|
{
|
||||||
sample[i] = texture2D(bgl_RenderedTexture,
|
sample[i] = texture2D(bgl_RenderedTexture,
|
||||||
gl_TexCoord[0].st + bgl_TextureCoordinateOffset[i]);
|
gl_TexCoord[0].st + bgl_TextureCoordinateOffset[i]);
|
||||||
minValue = min(sample[i], minValue);
|
minValue = min(sample[i], minValue);
|
||||||
}
|
}
|
||||||
|
|
||||||
gl_FragColor = minValue;
|
gl_FragColor = minValue;
|
||||||
}
|
}
|
||||||
);
|
);
|
||||||
#endif
|
#endif
|
||||||
|
@ -38,18 +38,18 @@ uniform vec2 bgl_TextureCoordinateOffset[9];
|
|||||||
|
|
||||||
void main(void)
|
void main(void)
|
||||||
{
|
{
|
||||||
vec4 sample[9];
|
vec4 sample[9];
|
||||||
|
|
||||||
for (int i = 0; i < 9; i++)
|
for (int i = 0; i < 9; i++)
|
||||||
{
|
{
|
||||||
sample[i] = texture2D(bgl_RenderedTexture,
|
sample[i] = texture2D(bgl_RenderedTexture,
|
||||||
gl_TexCoord[0].st + bgl_TextureCoordinateOffset[i]);
|
gl_TexCoord[0].st + bgl_TextureCoordinateOffset[i]);
|
||||||
}
|
}
|
||||||
|
|
||||||
gl_FragColor = (sample[4] * 8.0) -
|
gl_FragColor = (sample[4] * 8.0) -
|
||||||
(sample[0] + sample[1] + sample[2] +
|
(sample[0] + sample[1] + sample[2] +
|
||||||
sample[3] + sample[5] +
|
sample[3] + sample[5] +
|
||||||
sample[6] + sample[7] + sample[8]);
|
sample[6] + sample[7] + sample[8]);
|
||||||
gl_FragColor = vec4(gl_FragColor.rgb, 1.0);
|
gl_FragColor = vec4(gl_FragColor.rgb, 1.0);
|
||||||
}
|
}
|
||||||
);
|
);
|
||||||
|
@ -38,23 +38,23 @@ uniform vec2 bgl_TextureCoordinateOffset[9];
|
|||||||
|
|
||||||
void main(void)
|
void main(void)
|
||||||
{
|
{
|
||||||
vec4 sample[9];
|
vec4 sample[9];
|
||||||
|
|
||||||
for (int i = 0; i < 9; i++)
|
for (int i = 0; i < 9; i++)
|
||||||
{
|
{
|
||||||
sample[i] = texture2D(bgl_RenderedTexture,
|
sample[i] = texture2D(bgl_RenderedTexture,
|
||||||
gl_TexCoord[0].st + bgl_TextureCoordinateOffset[i]);
|
gl_TexCoord[0].st + bgl_TextureCoordinateOffset[i]);
|
||||||
}
|
}
|
||||||
|
|
||||||
vec4 horizEdge = sample[2] + sample[5] + sample[8] -
|
vec4 horizEdge = sample[2] + sample[5] + sample[8] -
|
||||||
(sample[0] + sample[3] + sample[6]);
|
(sample[0] + sample[3] + sample[6]);
|
||||||
|
|
||||||
vec4 vertEdge = sample[0] + sample[1] + sample[2] -
|
vec4 vertEdge = sample[0] + sample[1] + sample[2] -
|
||||||
(sample[6] + sample[7] + sample[8]);
|
(sample[6] + sample[7] + sample[8]);
|
||||||
|
|
||||||
gl_FragColor.rgb = sqrt((horizEdge.rgb * horizEdge.rgb) +
|
gl_FragColor.rgb = sqrt((horizEdge.rgb * horizEdge.rgb) +
|
||||||
(vertEdge.rgb * vertEdge.rgb));
|
(vertEdge.rgb * vertEdge.rgb));
|
||||||
gl_FragColor.a = 1.0;
|
gl_FragColor.a = 1.0;
|
||||||
}
|
}
|
||||||
|
|
||||||
);
|
);
|
||||||
|
@ -38,18 +38,18 @@ uniform vec2 bgl_TextureCoordinateOffset[9];
|
|||||||
|
|
||||||
void main(void)
|
void main(void)
|
||||||
{
|
{
|
||||||
vec4 sample[9];
|
vec4 sample[9];
|
||||||
|
|
||||||
for (int i = 0; i < 9; i++)
|
for (int i = 0; i < 9; i++)
|
||||||
{
|
{
|
||||||
sample[i] = texture2D(bgl_RenderedTexture,
|
sample[i] = texture2D(bgl_RenderedTexture,
|
||||||
gl_TexCoord[0].st + bgl_TextureCoordinateOffset[i]);
|
gl_TexCoord[0].st + bgl_TextureCoordinateOffset[i]);
|
||||||
}
|
}
|
||||||
|
|
||||||
gl_FragColor = (sample[4] * 9.0) -
|
gl_FragColor = (sample[4] * 9.0) -
|
||||||
(sample[0] + sample[1] + sample[2] +
|
(sample[0] + sample[1] + sample[2] +
|
||||||
sample[3] + sample[5] +
|
sample[3] + sample[5] +
|
||||||
sample[6] + sample[7] + sample[8]);
|
sample[6] + sample[7] + sample[8]);
|
||||||
}
|
}
|
||||||
);
|
);
|
||||||
#endif
|
#endif
|
||||||
|
@ -38,23 +38,23 @@ uniform vec2 bgl_TextureCoordinateOffset[9];
|
|||||||
|
|
||||||
void main(void)
|
void main(void)
|
||||||
{
|
{
|
||||||
vec4 sample[9];
|
vec4 sample[9];
|
||||||
|
|
||||||
for (int i = 0; i < 9; i++)
|
for (int i = 0; i < 9; i++)
|
||||||
{
|
{
|
||||||
sample[i] = texture2D(bgl_RenderedTexture,
|
sample[i] = texture2D(bgl_RenderedTexture,
|
||||||
gl_TexCoord[0].st + bgl_TextureCoordinateOffset[i]);
|
gl_TexCoord[0].st + bgl_TextureCoordinateOffset[i]);
|
||||||
}
|
}
|
||||||
|
|
||||||
vec4 horizEdge = sample[2] + (2.0*sample[5]) + sample[8] -
|
vec4 horizEdge = sample[2] + (2.0*sample[5]) + sample[8] -
|
||||||
(sample[0] + (2.0*sample[3]) + sample[6]);
|
(sample[0] + (2.0*sample[3]) + sample[6]);
|
||||||
|
|
||||||
vec4 vertEdge = sample[0] + (2.0*sample[1]) + sample[2] -
|
vec4 vertEdge = sample[0] + (2.0*sample[1]) + sample[2] -
|
||||||
(sample[6] + (2.0*sample[7]) + sample[8]);
|
(sample[6] + (2.0*sample[7]) + sample[8]);
|
||||||
|
|
||||||
gl_FragColor.rgb = sqrt((horizEdge.rgb * horizEdge.rgb) +
|
gl_FragColor.rgb = sqrt((horizEdge.rgb * horizEdge.rgb) +
|
||||||
(vertEdge.rgb * vertEdge.rgb));
|
(vertEdge.rgb * vertEdge.rgb));
|
||||||
gl_FragColor.a = 1.0;
|
gl_FragColor.a = 1.0;
|
||||||
}
|
}
|
||||||
);
|
);
|
||||||
#endif
|
#endif
|
||||||
|
@ -134,88 +134,88 @@ public:
|
|||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
SG_DList()
|
SG_DList()
|
||||||
{
|
{
|
||||||
m_flink = m_blink = this;
|
m_flink = m_blink = this;
|
||||||
}
|
}
|
||||||
SG_DList(const SG_DList& other)
|
SG_DList(const SG_DList& other)
|
||||||
{
|
{
|
||||||
m_flink = m_blink = this;
|
m_flink = m_blink = this;
|
||||||
}
|
}
|
||||||
virtual ~SG_DList()
|
virtual ~SG_DList()
|
||||||
{
|
{
|
||||||
Delink();
|
Delink();
|
||||||
}
|
}
|
||||||
|
|
||||||
inline bool Empty() // Check for empty queue
|
inline bool Empty() // Check for empty queue
|
||||||
{
|
{
|
||||||
return ( m_flink == this );
|
return ( m_flink == this );
|
||||||
}
|
}
|
||||||
bool AddBack( SG_DList *item ) // Add to the back
|
bool AddBack( SG_DList *item ) // Add to the back
|
||||||
{
|
{
|
||||||
if (!item->Empty())
|
if (!item->Empty())
|
||||||
return false;
|
return false;
|
||||||
item->m_blink = m_blink;
|
item->m_blink = m_blink;
|
||||||
item->m_flink = this;
|
item->m_flink = this;
|
||||||
m_blink->m_flink = item;
|
m_blink->m_flink = item;
|
||||||
m_blink = item;
|
m_blink = item;
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
bool AddFront( SG_DList *item ) // Add to the back
|
bool AddFront( SG_DList *item ) // Add to the back
|
||||||
{
|
{
|
||||||
if (!item->Empty())
|
if (!item->Empty())
|
||||||
return false;
|
return false;
|
||||||
item->m_flink = m_flink;
|
item->m_flink = m_flink;
|
||||||
item->m_blink = this;
|
item->m_blink = this;
|
||||||
m_flink->m_blink = item;
|
m_flink->m_blink = item;
|
||||||
m_flink = item;
|
m_flink = item;
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
SG_DList *Remove() // Remove from the front
|
SG_DList *Remove() // Remove from the front
|
||||||
{
|
{
|
||||||
if (Empty())
|
if (Empty())
|
||||||
{
|
{
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
SG_DList* item = m_flink;
|
SG_DList* item = m_flink;
|
||||||
m_flink = item->m_flink;
|
m_flink = item->m_flink;
|
||||||
m_flink->m_blink = this;
|
m_flink->m_blink = this;
|
||||||
item->m_flink = item->m_blink = item;
|
item->m_flink = item->m_blink = item;
|
||||||
return item;
|
return item;
|
||||||
}
|
}
|
||||||
bool Delink() // Remove from the middle
|
bool Delink() // Remove from the middle
|
||||||
{
|
{
|
||||||
if (Empty())
|
if (Empty())
|
||||||
return false;
|
return false;
|
||||||
m_blink->m_flink = m_flink;
|
m_blink->m_flink = m_flink;
|
||||||
m_flink->m_blink = m_blink;
|
m_flink->m_blink = m_blink;
|
||||||
m_flink = m_blink = this;
|
m_flink = m_blink = this;
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
inline SG_DList *Peek() // Look at front without removing
|
inline SG_DList *Peek() // Look at front without removing
|
||||||
{
|
{
|
||||||
return m_flink;
|
return m_flink;
|
||||||
}
|
}
|
||||||
inline SG_DList *Back() // Look at front without removing
|
inline SG_DList *Back() // Look at front without removing
|
||||||
{
|
{
|
||||||
return m_blink;
|
return m_blink;
|
||||||
}
|
}
|
||||||
inline SG_DList *Self()
|
inline SG_DList *Self()
|
||||||
{
|
{
|
||||||
return this;
|
return this;
|
||||||
}
|
}
|
||||||
inline const SG_DList *Peek() const // Look at front without removing
|
inline const SG_DList *Peek() const // Look at front without removing
|
||||||
{
|
{
|
||||||
return (const SG_DList*)m_flink;
|
return (const SG_DList*)m_flink;
|
||||||
}
|
}
|
||||||
inline const SG_DList *Back() const // Look at front without removing
|
inline const SG_DList *Back() const // Look at front without removing
|
||||||
{
|
{
|
||||||
return (const SG_DList*)m_blink;
|
return (const SG_DList*)m_blink;
|
||||||
}
|
}
|
||||||
inline const SG_DList *Self() const
|
inline const SG_DList *Self() const
|
||||||
{
|
{
|
||||||
return this;
|
return this;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
#ifdef WITH_CXX_GUARDEDALLOC
|
#ifdef WITH_CXX_GUARDEDALLOC
|
||||||
|
@ -194,7 +194,7 @@ public:
|
|||||||
/**
|
/**
|
||||||
* Clear the array of pointers to controllers associated with
|
* Clear the array of pointers to controllers associated with
|
||||||
* this node. This does not delete the controllers themselves!
|
* this node. This does not delete the controllers themselves!
|
||||||
* This should be used very carefully to avoid memory
|
* This should be used very carefully to avoid memory
|
||||||
* leaks.
|
* leaks.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
@ -91,73 +91,73 @@ public:
|
|||||||
};
|
};
|
||||||
|
|
||||||
SG_QList() : SG_DList()
|
SG_QList() : SG_DList()
|
||||||
{
|
{
|
||||||
m_fqlink = m_bqlink = this;
|
m_fqlink = m_bqlink = this;
|
||||||
}
|
}
|
||||||
SG_QList(const SG_QList& other) : SG_DList()
|
SG_QList(const SG_QList& other) : SG_DList()
|
||||||
{
|
{
|
||||||
m_fqlink = m_bqlink = this;
|
m_fqlink = m_bqlink = this;
|
||||||
}
|
}
|
||||||
virtual ~SG_QList()
|
virtual ~SG_QList()
|
||||||
{
|
{
|
||||||
QDelink();
|
QDelink();
|
||||||
}
|
}
|
||||||
|
|
||||||
inline bool QEmpty() // Check for empty queue
|
inline bool QEmpty() // Check for empty queue
|
||||||
{
|
{
|
||||||
return ( m_fqlink == this );
|
return ( m_fqlink == this );
|
||||||
}
|
}
|
||||||
bool QAddBack( SG_QList *item ) // Add to the back
|
bool QAddBack( SG_QList *item ) // Add to the back
|
||||||
{
|
{
|
||||||
if (!item->QEmpty())
|
if (!item->QEmpty())
|
||||||
return false;
|
return false;
|
||||||
item->m_bqlink = m_bqlink;
|
item->m_bqlink = m_bqlink;
|
||||||
item->m_fqlink = this;
|
item->m_fqlink = this;
|
||||||
m_bqlink->m_fqlink = item;
|
m_bqlink->m_fqlink = item;
|
||||||
m_bqlink = item;
|
m_bqlink = item;
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
bool QAddFront( SG_QList *item ) // Add to the back
|
bool QAddFront( SG_QList *item ) // Add to the back
|
||||||
{
|
{
|
||||||
if (!item->Empty())
|
if (!item->Empty())
|
||||||
return false;
|
return false;
|
||||||
item->m_fqlink = m_fqlink;
|
item->m_fqlink = m_fqlink;
|
||||||
item->m_bqlink = this;
|
item->m_bqlink = this;
|
||||||
m_fqlink->m_bqlink = item;
|
m_fqlink->m_bqlink = item;
|
||||||
m_fqlink = item;
|
m_fqlink = item;
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
SG_QList *QRemove() // Remove from the front
|
SG_QList *QRemove() // Remove from the front
|
||||||
{
|
{
|
||||||
if (QEmpty())
|
if (QEmpty())
|
||||||
{
|
{
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
SG_QList* item = m_fqlink;
|
SG_QList* item = m_fqlink;
|
||||||
m_fqlink = item->m_fqlink;
|
m_fqlink = item->m_fqlink;
|
||||||
m_fqlink->m_bqlink = this;
|
m_fqlink->m_bqlink = this;
|
||||||
item->m_fqlink = item->m_bqlink = item;
|
item->m_fqlink = item->m_bqlink = item;
|
||||||
return item;
|
return item;
|
||||||
}
|
}
|
||||||
bool QDelink() // Remove from the middle
|
bool QDelink() // Remove from the middle
|
||||||
{
|
{
|
||||||
if (QEmpty())
|
if (QEmpty())
|
||||||
return false;
|
return false;
|
||||||
m_bqlink->m_fqlink = m_fqlink;
|
m_bqlink->m_fqlink = m_fqlink;
|
||||||
m_fqlink->m_bqlink = m_bqlink;
|
m_fqlink->m_bqlink = m_bqlink;
|
||||||
m_fqlink = m_bqlink = this;
|
m_fqlink = m_bqlink = this;
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
inline SG_QList *QPeek() // Look at front without removing
|
inline SG_QList *QPeek() // Look at front without removing
|
||||||
{
|
{
|
||||||
return m_fqlink;
|
return m_fqlink;
|
||||||
}
|
}
|
||||||
inline SG_QList *QBack() // Look at front without removing
|
inline SG_QList *QBack() // Look at front without removing
|
||||||
{
|
{
|
||||||
return m_bqlink;
|
return m_bqlink;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
#ifdef WITH_CXX_GUARDEDALLOC
|
#ifdef WITH_CXX_GUARDEDALLOC
|
||||||
public:
|
public:
|
||||||
void *operator new(size_t num_bytes) { return MEM_mallocN(num_bytes, "GE:SG_QList"); }
|
void *operator new(size_t num_bytes) { return MEM_mallocN(num_bytes, "GE:SG_QList"); }
|
||||||
|
@ -115,7 +115,7 @@ UpdateSpatialData(
|
|||||||
const SG_Spatial *parent,
|
const SG_Spatial *parent,
|
||||||
double time,
|
double time,
|
||||||
bool& parentUpdated
|
bool& parentUpdated
|
||||||
){
|
){
|
||||||
bool bComputesWorldTransform = false;
|
bool bComputesWorldTransform = false;
|
||||||
|
|
||||||
// update spatial controllers
|
// update spatial controllers
|
||||||
|
@ -122,11 +122,11 @@ public:
|
|||||||
desc = m_description;
|
desc = m_description;
|
||||||
}
|
}
|
||||||
|
|
||||||
void registerDesc(void)
|
void registerDesc(void)
|
||||||
{
|
{
|
||||||
if (std::find(m_expDescs.begin(), m_expDescs.end(), this) == m_expDescs.end())
|
if (std::find(m_expDescs.begin(), m_expDescs.end(), this) == m_expDescs.end())
|
||||||
m_expDescs.push_back(this);
|
m_expDescs.push_back(this);
|
||||||
}
|
}
|
||||||
// list of exception descriptions
|
// list of exception descriptions
|
||||||
static std::vector<ExpDesc*> m_expDescs;
|
static std::vector<ExpDesc*> m_expDescs;
|
||||||
|
|
||||||
|
@ -375,7 +375,7 @@ void Image_dealloc (PyImage * self)
|
|||||||
if (self->m_image->m_exports > 0)
|
if (self->m_image->m_exports > 0)
|
||||||
{
|
{
|
||||||
PyErr_SetString(PyExc_SystemError,
|
PyErr_SetString(PyExc_SystemError,
|
||||||
"deallocated Image object has exported buffers");
|
"deallocated Image object has exported buffers");
|
||||||
PyErr_Print();
|
PyErr_Print();
|
||||||
}
|
}
|
||||||
// if release requires deleting of object, do it
|
// if release requires deleting of object, do it
|
||||||
|
@ -328,11 +328,11 @@ static int ImageRender_init (PyObject * pySelf, PyObject * args, PyObject * kwds
|
|||||||
// get background color
|
// get background color
|
||||||
PyObject * getBackground (PyImage * self, void * closure)
|
PyObject * getBackground (PyImage * self, void * closure)
|
||||||
{
|
{
|
||||||
return Py_BuildValue("[BBBB]",
|
return Py_BuildValue("[BBBB]",
|
||||||
getImageRender(self)->getBackground(0),
|
getImageRender(self)->getBackground(0),
|
||||||
getImageRender(self)->getBackground(1),
|
getImageRender(self)->getBackground(1),
|
||||||
getImageRender(self)->getBackground(2),
|
getImageRender(self)->getBackground(2),
|
||||||
getImageRender(self)->getBackground(3));
|
getImageRender(self)->getBackground(3));
|
||||||
}
|
}
|
||||||
|
|
||||||
// set color
|
// set color
|
||||||
|
Loading…
Reference in New Issue
Block a user