From: Johnny P. <ele...@us...> - 2004-04-23 14:31:42
|
Update of /cvsroot/xpanda/Panda/Wrappers/Python In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv19649/Python Modified Files: build_pandamodule_linux.sh build_pvar_linux.sh pandamodule.i pandamodule_wrap.c varUtils.c Log Message: WIN32 and lots of new things Index: pandamodule_wrap.c =================================================================== RCS file: /cvsroot/xpanda/Panda/Wrappers/Python/pandamodule_wrap.c,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** pandamodule_wrap.c 15 Feb 2004 22:45:02 -0000 1.1 --- pandamodule_wrap.c 23 Apr 2004 14:31:32 -0000 1.2 *************** *** 642,645 **** --- 642,646 ---- extern ParamList GetModuleParameters(int ); extern void HELP(int ); + extern void HELPME(char *); extern void ExecuteMethod(int ,int ,void *); extern int Connect(int ,int ,int ,int ); *************** *** 1104,1108 **** arg2 = PyList_Size(obj1); ! arg3 = (char **) malloc((arg2+1)*sizeof(char *)); for (i = 0; i <arg2; i++) { --- 1105,1110 ---- arg2 = PyList_Size(obj1); ! if(arg2>0) arg3 = (char **) malloc((arg2+1)*sizeof(char *)); ! else arg3 = NULL; for (i = 0; i <arg2; i++) { *************** *** 1116,1120 **** arg3[i] = PyString_AsString(s); } ! arg3[i] = 0; } result = (int )OpenModule(arg1,arg2,arg3); --- 1118,1122 ---- arg3[i] = PyString_AsString(s); } ! if(arg2>0) arg3[i] = 0; } result = (int )OpenModule(arg1,arg2,arg3); *************** *** 1122,1126 **** resultobj = PyInt_FromLong((long)result); { ! if (arg3) free(arg3); } return resultobj; --- 1124,1130 ---- resultobj = PyInt_FromLong((long)result); { ! if(arg2>0) { ! if (arg3) free(arg3); ! } } return resultobj; *************** *** 1183,1186 **** --- 1187,1202 ---- + static PyObject *_wrap_HELPME(PyObject *self, PyObject *args) { + PyObject *resultobj; + char *arg1 ; + + if(!PyArg_ParseTuple(args,(char *)"s:HELPME",&arg1)) return NULL; + HELPME(arg1); + + Py_INCREF(Py_None); resultobj = Py_None; + return resultobj; + } + + static PyObject *_wrap_ExecuteMethod(PyObject *self, PyObject *args) { PyObject *resultobj; *************** *** 1536,1539 **** --- 1552,1556 ---- { (char *)"GetModuleParameters", _wrap_GetModuleParameters, METH_VARARGS }, { (char *)"HELP", _wrap_HELP, METH_VARARGS }, + { (char *)"HELPME", _wrap_HELPME, METH_VARARGS }, { (char *)"ExecuteMethod", _wrap_ExecuteMethod, METH_VARARGS }, { (char *)"Connect", _wrap_Connect, METH_VARARGS }, Index: build_pvar_linux.sh =================================================================== RCS file: /cvsroot/xpanda/Panda/Wrappers/Python/build_pvar_linux.sh,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** build_pvar_linux.sh 2 Mar 2004 13:00:54 -0000 1.1 --- build_pvar_linux.sh 23 Apr 2004 14:31:32 -0000 1.2 *************** *** 1 **** ! gcc -shared -D__LINUX__=1 -lPanda -I/usr/include/python2.2/ -o pvar.so pvar_wrap.c varUtils.c --- 1 ---- ! gcc -shared -D__LINUX__=1 -lPanda -I/usr/local/include/python2.3/ -o pvar.so pvar_wrap.c varUtils.c Index: build_pandamodule_linux.sh =================================================================== RCS file: /cvsroot/xpanda/Panda/Wrappers/Python/build_pandamodule_linux.sh,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** build_pandamodule_linux.sh 2 Mar 2004 13:00:54 -0000 1.1 --- build_pandamodule_linux.sh 23 Apr 2004 14:31:32 -0000 1.2 *************** *** 1 **** ! gcc -shared -D__LINUX__=1 -lPanda -I/usr/include/python2.2/ -o pmodule.so pandamodule_wrap.c --- 1 ---- ! gcc -shared -D__LINUX__=1 -lPanda -I/usr/local/include/python2.3/ -o pmodule.so pandamodule_wrap.c Index: varUtils.c =================================================================== RCS file: /cvsroot/xpanda/Panda/Wrappers/Python/varUtils.c,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** varUtils.c 2 Mar 2004 12:59:02 -0000 1.2 --- varUtils.c 23 Apr 2004 14:31:32 -0000 1.3 *************** *** 1,2 **** --- 1,26 ---- + /* + Copyright (c) 2004, Johnny Petrantoni. + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + + elementicaotici - by Johnny (Giovanni) Petrantoni, ITALY - Rome. + e-mail: jo...@la... + + */ + #ifdef __PYTHON_FRAMEWORK__ #include <Python/Python.h> Index: pandamodule.i =================================================================== RCS file: /cvsroot/xpanda/Panda/Wrappers/Python/pandamodule.i,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** pandamodule.i 15 Feb 2004 22:45:02 -0000 1.1 --- pandamodule.i 23 Apr 2004 14:31:32 -0000 1.2 *************** *** 13,17 **** $1 = PyList_Size($input); ! $2 = (char **) malloc(($1+1)*sizeof(char *)); for (i = 0; i <$1; i++) { --- 13,18 ---- $1 = PyList_Size($input); ! if($1>0) $2 = (char **) malloc(($1+1)*sizeof(char *)); ! else $2 = NULL; for (i = 0; i <$1; i++) { *************** *** 24,34 **** return NULL; } ! $2[i] = PyString_AsString(s); } ! $2[i] = 0; } %typemap(freearg) (int argc, char *argv[]) { ! if ($2) free($2); } --- 25,35 ---- return NULL; } ! $2[i] = PyString_AsString(s); } ! if($1>0) $2[i] = 0; } %typemap(freearg) (int argc, char *argv[]) { ! if($1>0) { if ($2) free($2); } } *************** *** 62,65 **** --- 63,68 ---- extern void HELP(int ID); + extern void HELPME(char *moduleName); + extern void ExecuteMethod(int ID,int inlet,void *VAR); |