Tag: c ++

SWIG C ++ Python полиморфизм и многопоточность

Я интегрирую сторонний пакет C ++ в приложение python с помощью SWIG . Пакет подключается к проприетарному API через сеть и получает обновления. Общий поток состоит в том, что python создает экземпляр объекта C ++, вызывает его функции, чтобы настроить его, а затем ждет обновлений. Я реализовал механизм обратного вызова для обновлений с использованием функции […]

Boost.Python: захватить аргумент

Если у меня есть функция, которая овладевает одним из аргументов, существуют ли политики вызовов, которые я должен использовать, когда я выставляю эту функцию с помощью Boost.Python? void func(MyClass* obj) { // Code that takes possession of `obj` }

Расширение NumPy C с неизвестным массивом длины SWIG

Я хотел бы обернуть функцию C с помощью SWIG. Функция принимает пару массивов (той же длины), что и вход, и возвращает еще три массива. Однако предсказать длину возвращаемых массивов заранее невозможно, и они динамически выделяются в функции. Можно ли обернуть такую ​​функцию с помощью SWIG (используя numpy.i), и если да, то как? Утверждение упрощенной функции […]

SWIG передает поток от python до C ++

C ++ У меня есть класс logger в C ++. Этот регистратор сильно используется в моей библиотеке. Регистратор позволяет установить стандартный поток STL для использования в качестве выходного потока. питон Библиотека Python, использующая «выше SWIG-обернутую библиотеку C ++», использует стандартную запись python с помощью StreamHandler. Что-то вроде: logger = logging.getLogger("base_logger") #create and set console handler […]

Обтекание динамического массива C ++ с помощью Python + ctypes, segfault

Я хотел бы обернуть небольшой код на C ++, выделяющий массив ctypes, и что-то не так с сохранением адреса в объекте c_void_p. (Примечание: указатели намеренно отбрасываются в void* , потому что позже я хочу сделать выделение таким же образом для массивов объектов C ++.) Функции C (++), которые должны быть обернуты: void* test_alloc() { const […]

Запустить объект python в C ++

У меня просто вопрос о запуске объекта python в C ++. Позвольте мне объяснить, что я хочу сделать в следующем примере. int main () { // as you know, the python object has its member variables etc, and // I want it to be initialized only once py = python_object(); while (1) { // here, […]

Boost :: Python, статические фабрики и наследование

Поэтому у меня может быть довольно уникальный случай использования, но я думаю, что он должен работать. Но он работает неправильно. В принципе, у меня есть класс, который использует статический заводский метод (create), который возвращает shared_ptr для вновь созданного экземпляра класса. Этот класс также имеет виртуальную функцию, которую я бы хотел переопределить с помощью python и […]

Перетащите список python в unsigned char *

Редактировать: Привет всем! В настоящее время я пытаюсь получить доступ к C ++-функциям из Python, и я столкнулся с проблемой, когда пытаюсь передать список Python в качестве аргумента функции. вот определение функции C ++, к которому я пытаюсь получить доступ (используется для отправки команды на считыватель ПК / SC): SRpdu *SendAPDU(unsigned int uiAPDU, //Command unsigned […]

Parser для параметров командной строки в Java / C / C ++ / Python / shell

Я ищу библиотеку для анализа параметров командной строки, которые будут работать одинаково в Java, C / C ++, Python и (желательно) оболочке. Под «идентичным» я подразумеваю, что (1) имеют точно такие же правила для анализа параметров на всех трех языках, (2) используют одни и те же файлы конфигурации или имеют аналогичный API для указания параметров, […]

Подключение к потоку данных с помощью Python

Мне нужно подключиться к потоку данных, написанному на C ++, с моей текущей программой на Python, любыми советами или ресурсами по подключению?

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