[ctypes-users] passing File object
Brought to you by:
theller
From: Vaibhav.bhawsar <bha...@gm...> - 2008-10-25 22:31:44
|
Hello i sent this earlier but got no response- any help would be great. I have come across some posts regarding this but am unable to grasp this concept- any help would be appreciated. I have generated a python wrapper (_gl2ps) for C library called gl2ps. this process is also mentioned on the ctypes wiki. i now have a generated function "gl2psBeginPage" and one of the argtypes is POINTER(FILE) class __sFILE(Structure): pass FILE = __sFILE gl2psBeginPage = _libraries['/usr/local/lib/libgl2ps.dylib'].gl2psBeginPage gl2psBeginPage.restype = GLint gl2psBeginPage.argtypes = [STRING, STRING, POINTER(GLint), GLint, GLint, GLint, GLint, GLint, POINTER(GL2PSrgba), GLint, GLint, GLint, GLint, POINTER(FILE), STRING] In python i import this generated py file and am trying to pass an open file object to function gl2psBeginPage(...) * ff* = open('out.eps',"w") _gl2ps.gl2psBeginPage("test", "gl2psTestSimple", None, _gl2ps.GL2PS_EPS, _gl2ps.GL2PS_SIMPLE_SORT, _gl2ps.GL2PS_DRAW_BACKGROUND | _gl2ps.GL2PS_USE_CURRENT_VIEWPORT, GL_RGBA, 0, None, 0, 0, 0, buffsize, *ff*, "out.eps") I get this error: ctypes.ArgumentError: argument 14: <type 'exceptions.TypeError'>: expected LP___ sFILE instance instead of file I am a little confused about how i should pass this file object (ff). Does it have something to do with using in_dll? Thanks in advance! -- Vaibhav |