Найти - Пользователи
Полная версия: SWIG и указатели на функции
Начало » Python для новичков » SWIG и указатели на функции
1
Обедающий философ
Здравствуйте!

У меня есть указатели на сишные функции, я могу передавать их в другие сишные функции, но, к сожалению, не нашёл, как их вызывать непосредственно из питона. Можно ли это сделать и ежели да, то как? Интересует также вопрос, есть ли какие-то подводные камни, ежели функция суть метод класса.

Заранее благодарен.
doza_and
swig вообще все незнакомое в указатели заворачивает и это тоже завернет.
Если функция суть метод класса - то это вовсе не указатель на функцию в общем случае.
А вызвать просто - передаете указатель на это нечто в сишный код и он его нормально вызовет.

ps.
если используете несколько динамических библиотек с разными опциями сборки, то в этом месте легко может навернуться именно потому что это не просто указатель.
Обедающий философ
doza_and
А вызвать просто - передаете указатель на это нечто в сишный код и он его нормально вызовет.
Ну так я могу, а мне бы хотелось напрямую.

doza_and
если используете несколько динамических библиотек с разными опциями сборки, то в этом месте легко может навернуться именно потому что это не просто указатель.
Ну скажем так, я хочу сделать нечто вроде плагинной системы. Я хелло ворлд написал, из С++ плагины работают, и даже из питона таким образом работают, теперь я хочу попробовать плагины тоже в свиг заворачивать и через питон передавать “основной” сишной библиотеке. Хотя, наверное, можно обойтись без этого (равно как и без вызова указателей), но с этим было бы веселее. Скажем, у плагина помимо стандартного интерфейса могут быть ещё какие-то потроха, и так к ним можно было бы обращаться из питона.
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB