Update of
/cvsroot/playerstage/code/player/client_libs/libplayerc/bindings/python
In directory
sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv869/client_libs/libplayerc/bindings/python
Modified Files:
playerc.i
Log Message:
changed blackboard structure to have a group
Index: playerc.i
===================================================================
RCS file:
/cvsroot/playerstage/code/player/client_libs/libplayerc/bindings/python/playerc.i,v
retrieving revision 1.29
retrieving revision 1.30
diff -C2 -d -r1.29 -r1.30
*** playerc.i 22 Jan 2008 20:03:29 -0000 1.29
--- playerc.i 30 Jan 2008 02:06:46 -0000 1.30
***************
*** 428,439 ****
device->py_private = PyList_New(0);
}
!
dict = PyDict_New();
PyDict_SetItem(dict, PyString_FromString("key"),
PyString_FromString(entry.key));
PyDict_SetItem(dict, PyString_FromString("type"),
PyLong_FromLong(entry.type));
PyDict_SetItem(dict, PyString_FromString("subtype"),
PyLong_FromLong(entry.subtype));
PyDict_SetItem(dict, PyString_FromString("timestamp_sec"),
PyLong_FromLong(entry.timestamp_sec));
PyDict_SetItem(dict, PyString_FromString("timestamp_usec"),
PyLong_FromLong(entry.timestamp_usec));
!
switch(entry.subtype)
{
--- 428,441 ----
device->py_private = PyList_New(0);
}
!
dict = PyDict_New();
PyDict_SetItem(dict, PyString_FromString("key"),
PyString_FromString(entry.key));
+ PyDict_SetItem(dict, PyString_FromString("group_id"),
PyLong_FromLong(entry.group_id));
PyDict_SetItem(dict, PyString_FromString("type"),
PyLong_FromLong(entry.type));
PyDict_SetItem(dict, PyString_FromString("subtype"),
PyLong_FromLong(entry.subtype));
PyDict_SetItem(dict, PyString_FromString("timestamp_sec"),
PyLong_FromLong(entry.timestamp_sec));
PyDict_SetItem(dict, PyString_FromString("timestamp_usec"),
PyLong_FromLong(entry.timestamp_usec));
!
! data = NULL;
switch(entry.subtype)
{
***************
*** 463,469 ****
data = Py_None;
break;
-
}
!
PyDict_SetItem(dict, PyString_FromString("data"), data);
PyList_Append(device->py_private, dict);
--- 465,471 ----
data = Py_None;
break;
}
!
! assert(data != NULL);
PyDict_SetItem(dict, PyString_FromString("data"), data);
PyList_Append(device->py_private, dict);
***************
*** 475,482 ****
PyObject *list, *copy;
int i;
if (self->py_private == NULL)
{
! self->py_private = PyList_New(0);
! return (PyObject*)self->py_private;
}
--- 477,484 ----
PyObject *list, *copy;
int i;
+
if (self->py_private == NULL)
{
! return Py_BuildValue("[]");
}
***************
*** 493,516 ****
}
! PyObject * subscribe_to_key(const char *key)
{
! char *str;
! int i;
! double d;
PyObject *data, *dict;
! player_blackboard_entry_t *entry;
assert(self);
! int result = playerc_blackboard_subscribe_to_key(self, key, &entry);
! if (result != 0)
! {
! return NULL;
! }
! assert(entry);
! assert(entry->key);
dict = PyDict_New();
PyDict_SetItem(dict, PyString_FromString("key"),
PyString_FromString(entry->key));
PyDict_SetItem(dict, PyString_FromString("type"),
PyLong_FromLong(entry->type));
PyDict_SetItem(dict, PyString_FromString("subtype"),
PyLong_FromLong(entry->subtype));
--- 495,520 ----
}
! PyObject * subscribe_to_key(const char *key, int group_id)
{
! char *str;
! int i;
! double d;
PyObject *data, *dict;
! player_blackboard_entry_t *entry;
assert(self);
! int result = playerc_blackboard_subscribe_to_key(self, key, group_id,
&entry);
! if (result != 0)
! {
! return NULL;
! }
! assert(entry);
! assert(entry->key);
! assert(entry->key_count > 0);
dict = PyDict_New();
PyDict_SetItem(dict, PyString_FromString("key"),
PyString_FromString(entry->key));
+ PyDict_SetItem(dict, PyString_FromString("group_id"),
PyLong_FromLong(entry->group_id));
PyDict_SetItem(dict, PyString_FromString("type"),
PyLong_FromLong(entry->type));
PyDict_SetItem(dict, PyString_FromString("subtype"),
PyLong_FromLong(entry->subtype));
***************
*** 558,561 ****
--- 562,566 ----
{
PyObject *key;
+ PyObject *group_id;
PyObject *type;
PyObject *subtype;
***************
*** 578,581 ****
--- 583,587 ----
key = PyDict_GetItem(dict, PyString_FromString("key"));
+ group_id = PyDict_GetItem(dict, PyString_FromString("group_id"));
type = PyDict_GetItem(dict, PyString_FromString("type"));
subtype = PyDict_GetItem(dict, PyString_FromString("subtype"));
***************
*** 584,588 ****
data = PyDict_GetItem(dict, PyString_FromString("data"));
! if (key == NULL || type == NULL || subtype == NULL || timestamp_sec ==
NULL || timestamp_usec == NULL || data == NULL)
{
printf("Dictionary object missing keys.\n");
--- 590,594 ----
data = PyDict_GetItem(dict, PyString_FromString("data"));
! if (key == NULL || group_id == NULL || type == NULL || subtype == NULL
|| timestamp_sec == NULL || timestamp_usec == NULL || data == NULL)
{
printf("Dictionary object missing keys.\n");
***************
*** 592,595 ****
--- 598,602 ----
entry.key = PyString_AsString(key);
entry.key_count = strlen(entry.key) + 1;
+ entry.group_id = PyInt_AsLong(group_id);
entry.type = PyInt_AsLong(type);
entry.subtype = PyInt_AsLong(subtype);
***************
*** 640,643 ****
--- 647,651 ----
printf("key:%s\n", entry.key);
printf("key_count:%d\n", entry.key_count);
+ printf("group_id:%d\n", entry.group_id);
printf("data:%s\n", (char*)entry.data);
printf("data_count:%d\n", entry.data_count);
***************
*** 667,671 ****
return NULL;
}
!
device->on_blackboard_event =
playerc_blackboard_python_on_blackboard_event;
return device;
--- 675,679 ----
return NULL;
}
!
device->on_blackboard_event =
playerc_blackboard_python_on_blackboard_event;
return device;
-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2008.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
_______________________________________________
Playerstage-commit mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/playerstage-commit