Получение указателя C GObject от объекта Python - PullRequest
1 голос
/ 12 января 2012

Я работаю с pywebkitgtk, который является связыванием кода, поэтому существует множество подклассов GObject.Привязка не завершена, и я использую ctypes для дополнительной работы.

Но теперь мне нужно использовать объект, полученный в Python, в качестве аргумента для вызова библиотеки ctypes,Понятно, что это не сработает, и передача адреса памяти объекта Python тоже не является победителем.Как получить ссылку на память для GObject, поддерживающего объект Python?

Вот пример чего-то, что не работает, но может дать вам представление о том, о чем я говорю.

>>> import ctypes
>>> libwebkit = ctypes.CDLL('libwebkit-1.0.so')
>>> import webkit
>>> webview = webkit.WebView()
>>> libwebkit.webkit_web_view_get_zoom_level(webview) #yes, I know the binding exposes this
ArgumentError: argument 1: <type 'exceptions.TypeError'>: Don't know how to convert parameter 1

Опять же, это просто пример, чтобы проиллюстрировать эту мысль - я хочу, чтобы ссылки на память для объектов gobjects использовались с ctypes.

...