Tag: swig

Доступ к указателям void в Python (с использованием SWIG или чего-то еще)

Я пытаюсь использовать SWIG для обтекания простой библиотеки, которая использует ioctl () для заполнения такой структуры, как: struct data { header* hdr; void* data; size_t len; }; data – указатель на буфер, len – длина этого буфера. Я не могу понять, как преобразовать данные в строку (или массив) Python. Кроме того, мне нужен способ освободить […]

Как я могу обернуть модель без признаков для использования с чертами Python?

Я хотел бы обернуть класс модели без признаков для использования с Python Traits. Моя цель – написать пользовательский интерфейс на основе признаков, чтобы манипулировать «внешним» классом модели. Внешний класс модели был сгенерирован SWIG, поэтому я не могу добавить enthought.traits.api.HasTraits в качестве предка (я думаю, хотя я могу ошибаться). Моя самая лучшая попытка from enthought.traits.api import […]

Расширение Numpy с помощью функции C

Я пытаюсь ускорить мой код в формате Numpy и решил, что хочу реализовать одну конкретную функцию, где мой код проводил большую часть времени в C. Я на самом деле новичок в C, но мне удалось написать функцию, которая нормализует каждую строку в матрице, чтобы суммировать ее. Я могу ее скомпилировать, и я проверил ее с […]

Wrap std :: вектор std :: векторов, C ++ SWIG Python

Я хочу обернуть вектор векторов C ++ в код Python с помощью SWIG. Можно ли обертывать вектор этого вектора векторов? std::vector<std::vector<MyClass*>>; В файле интерфейса MyApplication.i я добавил следующие строки: %include "std_vector.i" %{ #include <vector> %} namespace std { %template(VectorOfStructVector) vector<vector<MyClass*>>; } Но я получаю сообщение об ошибке при выполнении SWIG. Я могу обернуть этот тип […]

Swig downcasting from Base * to Derived *

У меня есть следующие классы c ++ (упрощенные), которые я подвергаю Python с помощью SWIG: struct Component { virtual void update(); } struct DerivedComponent : public Component { void update() { cout << "DerivedComponent::update()" << endl; } void speak() { cout << "DerivedComponent::speak()" << endl; } } class Entity { public: Component* component(const std::string& class_name) […]

setup.py: запустите build_ext перед чем-либо еще

Я работаю с setup.py, который создает целую кучу файлов интерфейса SWIG во время шага build_ext. Это нужно выполнить первым, потому что для последующих этапов сборки необходим полный список файлов python для правильной работы (например, копирование файлов python в каталог пакета, создание яйца, создание списка источников и т. Д.). Это то, что в настоящее время происходит […]

использование stdint с swig и numpy.i

Я разрабатываю модуль для использования c inline в коде Python на основе swig . Для этого я хотел бы сделать numpy массивы доступными в C До сих пор я использовал типы C, такие как unsigned short но я хотел бы использовать такие типы, как uint16_t из stdint.h чтобы сохранять любой компилятор, с которым сталкивается мой […]

Использование distutils, где файл интерфейса swig находится в папке src

У меня есть setup.py, который выглядит примерно так: from setuptools import setup, Extension import glob sources = glob.glob('src/*.cpp') + glob.glob('src/*.i') # this is ugly, but otherwise I get the wrapper included twice sources = [source for source in sources if '_wrap' not in source] setup( name = 'engine', ext_modules = [ Extension( '_engine', sources = […]

Доступ к массиву C struct к Python с помощью SWIG

Я пытаюсь позвонить в существующий код C из Python. C-код определяет структуру B которая содержит массив структур A s. Код C также определяет функцию, которая вставляет значения в структуру при вызове. Я могу получить доступ к переменной элемента массива, но это не список (или что-то, что поддерживает индексирование). Вместо этого я получаю объект, являющийся прокси-сервером […]

В компиляции SWIG: В заголовочном файле в интерфейсе не удается разрешить другие файлы заголовков.

В интерфейсе File. Я включил файл заголовка. В этом файле заголовка содержится много файлов заголовков, но из верхних древовидных баз. Но в Swig не удается распознать эти Eample: main.h #include<dir/second.h> #define PAGE 1 Swig не может разрешить этот каталог в файле заголовка

Interesting Posts

Формат Python timedelta более 24 часов для отображения только с часами?

Развертывание приложения с минимальным флягой в проблемах подключения докеров-серверов

Как сообщить Кондору отправлять задания только машинам в кластере, которые на них установлены «numpy»?

Ошибка импорта matplotlib.pyplot в jupyter (но не ipython)

Как установить lxml на Ubuntu

Глобальный обработчик ошибок для любого исключения

Как снова получить интерактивные сюжеты в Spyder / IPython / matplotlib?

перечисление всех функций в модуле python

Проблема с заменой параметра SQLite

Формат строки python, вызывающий функцию

Python: как читать (статический) файл изнутри пакета?

Использование Python для анализа файла для вложенных циклов

Наследование и внутренние классы в Python?

Как Python управляет int и long?

Показать все возможные группировки списка, учитывая только количество подписок (длины являются переменными)

Python - лучший язык программирования в мире.