aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorvidon2004-10-21 09:43:27 +0000
committervidon2004-10-21 09:43:27 +0000
commitedecde03d204d275e82900f97bda51fa4273bddc (patch)
tree046059ff87eecc131ead18c3c3541525fd0177ed
parent9e3bcf9b08b290a615643e2023d8d3090c4471d2 (diff)
downloadivycpy-edecde03d204d275e82900f97bda51fa4273bddc.zip
ivycpy-edecde03d204d275e82900f97bda51fa4273bddc.tar.gz
ivycpy-edecde03d204d275e82900f97bda51fa4273bddc.tar.bz2
ivycpy-edecde03d204d275e82900f97bda51fa4273bddc.tar.xz
Les callbacks ne renvoient plus un tuple associé au ivyclientptr mais l'identifiant du ptr
Nettoyage
-rw-r--r--ivycpy.i163
1 files changed, 40 insertions, 123 deletions
diff --git a/ivycpy.i b/ivycpy.i
index 1b44c5c..8430952 100644
--- a/ivycpy.i
+++ b/ivycpy.i
@@ -263,7 +263,7 @@ pytkIvyApplicationCallback(IvyClientPtr app, void *user_data,
IvyApplicationEvent event)
{
PyObject *func, *arglist;
- PyObject *result, *ivyclienttuple;
+ PyObject *result, *eventobj;
PyObject *resultobj;
static void *descr = 0;
#ifdef __DEBUG__
@@ -282,19 +282,15 @@ pytkIvyApplicationCallback(IvyClientPtr app, void *user_data,
descr = SWIG_TypeQuery("IvyClientPtr");
resultobj = SWIG_NewPointerObj((void *) app, descr, 0);
- result = Py_BuildValue("i", (int) event);
- ivyclienttuple=PyTuple_New(3);
- PyTuple_SetItem(ivyclienttuple, 0, resultobj);
- PyTuple_SetItem(ivyclienttuple, 1, PyString_FromString(IvyGetApplicationName(app)));
- PyTuple_SetItem(ivyclienttuple, 2, PyString_FromString(IvyGetApplicationHost(app)));
- /* PyTuple_SetItem(ivyclienttuple, 3, PyString_FromString(IvyGetApplicationMessages(app)));*/
+ eventobj = Py_BuildValue("i", (int) event);
arglist = PyTuple_New(2);
- PyTuple_SetItem(arglist,0,ivyclienttuple);
- PyTuple_SetItem(arglist,1,result);
+ PyTuple_SetItem(arglist,0,resultobj);
+ PyTuple_SetItem(arglist,1,eventobj);
result = PyEval_CallObject(func,arglist);
- printf("-pytkIvyApplicationCallback Fin\n");
Py_DECREF(arglist);
+ Py_DECREF(eventobj);
+ Py_DECREF(resultobj);
}
static void
@@ -302,7 +298,7 @@ pyIvyApplicationCallback(IvyClientPtr app, void *user_data,
IvyApplicationEvent event)
{
PyObject *func, *arglist;
- PyObject *result, *ivyclienttuple;
+ PyObject *result, *eventobj;
PyObject *resultobj;
static void *descr = 0;
@@ -320,26 +316,21 @@ pyIvyApplicationCallback(IvyClientPtr app, void *user_data,
/* la signature python doit etre proc(n) elle ne retourne rien */
descr = SWIG_TypeQuery("IvyClientPtr");
resultobj = SWIG_NewPointerObj((void *) app, descr, 0);
- result = Py_BuildValue("i", (int) event);
- ivyclienttuple=PyTuple_New(3);
- PyTuple_SetItem(ivyclienttuple, 0, resultobj);
- PyTuple_SetItem(ivyclienttuple, 1, PyString_FromString(IvyGetApplicationName(app)));
- PyTuple_SetItem(ivyclienttuple, 2, PyString_FromString(IvyGetApplicationHost(app)));
-/* PyTuple_SetItem(ivyclienttuple, 2, PyInt_FromLong((long) app->app_port)); */
-
+ eventobj = Py_BuildValue("i", (int) event);
arglist = PyTuple_New(2);
- PyTuple_SetItem(arglist,0,ivyclienttuple);
- PyTuple_SetItem(arglist,1,result);
+ PyTuple_SetItem(arglist,0,resultobj);
+ PyTuple_SetItem(arglist,1,eventobj);
result = PyEval_CallObject(func,arglist);
- printf("-pyIvyApplicationCallback Fin\n");
Py_DECREF(arglist);
+ Py_DECREF(eventobj);
+ Py_DECREF(resultobj);
}
static void
pytkIvyDieCallback(IvyClientPtr app, void *user_data, int id)
{
PyObject *func, *arglist;
- PyObject *result, *ivyclienttuple;
+ PyObject *result, *idobj;
PyObject *resultobj;
static void *descr = 0;
@@ -360,26 +351,22 @@ pytkIvyDieCallback(IvyClientPtr app, void *user_data, int id)
descr = SWIG_TypeQuery("IvyClientPtr");
resultobj = SWIG_NewPointerObj((void *) app, descr, 0);
- result = Py_BuildValue("i", (int) id);
- ivyclienttuple=PyTuple_New(3);
- PyTuple_SetItem(ivyclienttuple, 0, resultobj);
- PyTuple_SetItem(ivyclienttuple, 1, PyString_FromString(IvyGetApplicationName(app)));
- PyTuple_SetItem(ivyclienttuple, 2, PyString_FromString(IvyGetApplicationHost(app)));
-/* PyTuple_SetItem(ivyclienttuple, 2, PyInt_FromLong((long) app->app_port)); */
+ idobj = Py_BuildValue("i", (int) id);
arglist = PyTuple_New(2);
- PyTuple_SetItem(arglist,0,ivyclienttuple);
- PyTuple_SetItem(arglist,1,result);
+ PyTuple_SetItem(arglist,0,resultobj);
+ PyTuple_SetItem(arglist,1,idobj);
result = PyEval_CallObject(func,arglist);
Py_DECREF(arglist);
-
+ Py_DECREF(resultobj);
+ Py_DECREF(idobj);
}
static void
pyIvyDieCallback(IvyClientPtr app, void *user_data, int id)
{
PyObject *func, *arglist;
- PyObject *result, *ivyclienttuple;
+ PyObject *result, *idobj;
PyObject *resultobj;
static void *descr = 0;
@@ -398,76 +385,27 @@ pyIvyDieCallback(IvyClientPtr app, void *user_data, int id)
descr = SWIG_TypeQuery("IvyClientPtr");
resultobj = SWIG_NewPointerObj((void *) app, descr, 0);
- result = Py_BuildValue("i", (int) id);
- ivyclienttuple=PyTuple_New(3);
- PyTuple_SetItem(ivyclienttuple, 0, resultobj);
- PyTuple_SetItem(ivyclienttuple, 1, PyString_FromString(IvyGetApplicationName(app)));
- PyTuple_SetItem(ivyclienttuple, 2, PyString_FromString(IvyGetApplicationHost(app)));
-/* PyTuple_SetItem(ivyclienttuple, 2, PyInt_FromLong((long) app->app_port)); */
+ idobj = Py_BuildValue("i", (int) id);
arglist = PyTuple_New(2);
- PyTuple_SetItem(arglist,0,ivyclienttuple);
- PyTuple_SetItem(arglist,1,result);
+ PyTuple_SetItem(arglist,0,resultobj);
+ PyTuple_SetItem(arglist,1,idobj);
result = PyEval_CallObject(func,arglist);
Py_DECREF(arglist);
+ Py_DECREF(resultobj);
+ Py_DECREF(idobj);
}
-/* callback fixe (ce sera tjs le même) appellé par pyIvyBindMsg */
-/* static void */
-/* pytkMsgCallback( IvyClientPtr app, void *user_data, int argc, char **argv ) */
-/* { */
-/* PyObject *func; */
-/* PyObject *result, *ivyclienttuple; */
-/* PyObject *resultobj; */
-/* PyObject *pyargv ; */
-/* int i ; */
-/* static void *descr = 0; */
-
-/* #ifdef __DEBUG__ */
-/* printf("-pytkMsgCallback\n"); */
-/* #endif */
-
-/* func = (PyObject *) user_data; */
-
-/* /\* cette verif est inutile ; elle a deja ete faite lors de */
-/* l'enregistrement du callback *\/ */
-/* if (!PyCallable_Check(func)) { */
-/* PyErr_SetString(PyExc_TypeError, "Need a callable object!"); */
-/* return ; */
-/* }; */
-/* /\* user_data->func ; *\/ */
-/* /\* la signature python doit etre proc(*arg)) */
-/* elle ne retourne rien *\/ */
-/* descr = SWIG_TypeQuery("IvyClientPtr"); */
-/* resultobj = SWIG_NewPointerObj((void *) app, descr, 0); */
-/* ivyclienttuple=PyTuple_New(3); */
-/* PyTuple_SetItem(ivyclienttuple, 0, resultobj); */
-/* PyTuple_SetItem(ivyclienttuple, 1, PyString_FromString(IvyGetApplicationName(app))); */
-/* PyTuple_SetItem(ivyclienttuple, 2, PyString_FromString(IvyGetApplicationHost(app))); */
-/* /\* PyTuple_SetItem(ivyclienttuple, 2, PyInt_FromLong((long) app->app_port))); *\/ */
-
-/* pyargv = PyTuple_New(argc); */
-/* PyTuple_SetItem(pyargv,0, ivyclienttuple); */
-/* for (i = 1; i < argc+1; i++) { */
-/* PyTuple_SetItem(pyargv,i,PyString_FromString(argv[i])); */
-/* } */
-/* /\* this codes is useless; the tuple (pyargv) is directly passed */
-/* to the Python call back */
-/* *\/ */
-
-/* result = PyEval_CallObject(func, pyargv) ; */
-/* Py_DECREF(ivyclienttuple) */
-/* Py_DECREF(pyargv); */
-/* } */
+
static void
pytkMsgCallback( IvyClientPtr app, void *user_data, int argc, char **argv )
{
PyObject *pyargv ;
int i ;
PyObject *func;
- PyObject *result, *ivyclienttuple;
+ PyObject *result;
PyObject *resultobj;
static void *descr = 0;
@@ -488,14 +426,8 @@ pytkMsgCallback( IvyClientPtr app, void *user_data, int argc, char **argv )
elle ne retourne rien */
descr = SWIG_TypeQuery("IvyClientPtr");
resultobj = SWIG_NewPointerObj((void *) app, descr, 0);
- ivyclienttuple=PyTuple_New(3);
- PyTuple_SetItem(ivyclienttuple, 0, resultobj);
- PyTuple_SetItem(ivyclienttuple, 1, PyString_FromString(IvyGetApplicationName(app)));
- PyTuple_SetItem(ivyclienttuple, 2, PyString_FromString(IvyGetApplicationHost(app)));
-/* PyTuple_SetItem(ivyclienttuple, 2, PyInt_FromLong((long) app->app_port)); */
-
pyargv = PyTuple_New(argc+1);
- PyTuple_SetItem(pyargv,0,ivyclienttuple);
+ PyTuple_SetItem(pyargv,0,resultobj);
for (i = 1; i < argc+1; i++) {
PyTuple_SetItem(pyargv,i,PyString_FromString(argv[i]));
}
@@ -507,7 +439,7 @@ pytkMsgCallback( IvyClientPtr app, void *user_data, int argc, char **argv )
result = PyEval_CallObject(func, pyargv) ;
Py_DECREF(pyargv);
- Py_DECREF(ivyclienttuple);
+ Py_DECREF(resultobj);
}
static void
@@ -516,7 +448,7 @@ pyMsgCallback( IvyClientPtr app, void *user_data, int argc, char **argv )
PyObject *pyargv ;
int i ;
PyObject *func;
- PyObject *result, *ivyclienttuple;
+ PyObject *result;
PyObject *resultobj;
static void *descr = 0;
@@ -537,14 +469,8 @@ pyMsgCallback( IvyClientPtr app, void *user_data, int argc, char **argv )
elle ne retourne rien */
descr = SWIG_TypeQuery("IvyClientPtr");
resultobj = SWIG_NewPointerObj((void *) app, descr, 0);
- ivyclienttuple=PyTuple_New(3);
- PyTuple_SetItem(ivyclienttuple, 0, resultobj);
- PyTuple_SetItem(ivyclienttuple, 1, PyString_FromString(IvyGetApplicationName(app)));
- PyTuple_SetItem(ivyclienttuple, 2, PyString_FromString(IvyGetApplicationHost(app)));
-/* PyTuple_SetItem(ivyclienttuple, 2, PyInt_FromLong((long) app->app_port)); */
-
pyargv = PyTuple_New(argc+1);
- PyTuple_SetItem(pyargv,0,ivyclienttuple);
+ PyTuple_SetItem(pyargv,0,resultobj);
for (i = 1; i < argc+1; i++) {
PyTuple_SetItem(pyargv,i,PyString_FromString(argv[i]));
}
@@ -556,7 +482,7 @@ pyMsgCallback( IvyClientPtr app, void *user_data, int argc, char **argv )
result = PyEval_CallObject(func, pyargv) ;
Py_DECREF(pyargv);
- Py_DECREF(ivyclienttuple);
+ Py_DECREF(resultobj);
}
/* jeu de 2 callback fixes (mode tk ou sans (ce sera tjs le même) appellé par
@@ -565,7 +491,7 @@ static void
pytkMsgDirectCallback( IvyClientPtr app, void *user_data, int id, char *msg )
{
PyObject *func, *arglist;
- PyObject *result, *ivyclienttuple;
+ PyObject *result;
PyObject *resultobj;
static void *descr = 0;
@@ -585,25 +511,21 @@ pytkMsgDirectCallback( IvyClientPtr app, void *user_data, int id, char *msg )
/* la signature python doit etre proc(arg))
elle ne retourne rien */
descr = SWIG_TypeQuery("IvyClientPtr");
- resultobj = SWIG_NewPointerObj((void *) app, descr, 0);
- ivyclienttuple=PyTuple_New(3);
- PyTuple_SetItem(ivyclienttuple, 0, resultobj);
- PyTuple_SetItem(ivyclienttuple, 1, PyString_FromString(IvyGetApplicationName(app)));
- PyTuple_SetItem(ivyclienttuple, 2, PyString_FromString(IvyGetApplicationHost(app)));
+ resultobj= SWIG_NewPointerObj((void *) app, descr, 0);
arglist = PyTuple_New(2);
- PyTuple_SetItem(arglist,0,ivyclienttuple);
+ PyTuple_SetItem(arglist,0,resultobj);
PyTuple_SetItem(arglist,1,PyString_FromString(msg));
result = PyEval_CallObject(func,arglist);
Py_DECREF(arglist);
- Py_DECREF(ivyclienttuple);
+ Py_DECREF(resultobj);
}
static void
pyMsgDirectCallback( IvyClientPtr app, void *user_data, int id, char *msg )
{
PyObject *func, *arglist;
- PyObject *result, *ivyclienttuple;
+ PyObject *result;
PyObject *resultobj;
static void *descr = 0;
@@ -619,21 +541,17 @@ pyMsgDirectCallback( IvyClientPtr app, void *user_data, int id, char *msg )
return ;
};
/* user_data->func ; */
- /* la signature python doit etre proc(arg)
+ /* la signature python doit etre proc(arg))
elle ne retourne rien */
descr = SWIG_TypeQuery("IvyClientPtr");
- resultobj = SWIG_NewPointerObj((void *) app, descr, 0);
- ivyclienttuple=PyTuple_New(3);
- PyTuple_SetItem(ivyclienttuple, 0, resultobj);
- PyTuple_SetItem(ivyclienttuple, 1, PyString_FromString(IvyGetApplicationName(app)));
- PyTuple_SetItem(ivyclienttuple, 2, PyString_FromString(IvyGetApplicationHost(app)));
+ resultobj= SWIG_NewPointerObj((void *) app, descr, 0);
arglist = PyTuple_New(2);
- PyTuple_SetItem(arglist,0,ivyclienttuple);
+ PyTuple_SetItem(arglist,0,resultobj);
PyTuple_SetItem(arglist,1,PyString_FromString(msg));
result = PyEval_CallObject(func,arglist);
Py_DECREF(arglist);
- Py_DECREF(ivyclienttuple);
+ Py_DECREF(resultobj);
}
/* facade to IvyBindMsg avoiding vararg problem */
@@ -868,7 +786,6 @@ pyIvyMainLoop()
while (MainLoop) {
pyChannelDefferedDelete();
- printf("-pyIvyMainLoop\n");
rdset = open_fds;
exset = open_fds;
Py_BEGIN_ALLOW_THREADS