From: Zerg <zer...@ma...> - 2007-03-20 08:07:50
|
Hi! I have to bind to Python such structure struct tagTNKIinfo { unsigned char nkiclass; __int64 uid; unsigned char OIDcipher; unsigned char OIDsign; } Swig generate accessor functions normally. But in trying to access the field 'uid' an exception appears. I've looked at 'get_uid' function code and I think that trable somwhere here, because this code return pointer instead of Python Integer. resultobj = SWIG_NewPointerObj((__int64 *)memcpy((__int64 *)malloc(sizeof(__int64)),&result,sizeof(__int64)), SWIGTYPE_p___int64, SWIG_POINTER_OWN | 0 ); I want to replace this code with Python C API call 'PyLong_FromLongLong', but don't know how to do it. May be te desision is to generate some typemap for this field.. %typemap(memberout) __int64 { PyObject *o; o = PyLong_FromLongLong(*$1); $result = SWIG_AppendOutput($result,o); } May be there are others desisions. Thanks. -- View this message in context: http://www.nabble.com/__int64-in-struct-tf3432167.html#a9567880 Sent from the swig-user mailing list archive at Nabble.com. |