У меня есть приложение, работающее на linux 2.6, которое фактически управляет роботом. Я написал инфраструктуру и API c ++, чтобы позволить пользователю написать «Mainl oop» на c ++ для робота. Подпись функции - RobotRunL oop (const Robot & robot). Класс Robot предоставляет все необходимые API. Текущая система после компиляции устанавливает среду, а затем вызывает RobotRunL oop. Я хотел бы иметь возможность написать "mainl oop" в python вместо c ++. Таким образом, в основном запуск c ++ вызывает python mainl oop, который затем будет использовать предоставленный API для обратного вызова в c ++ для управления роботом.
Я предполагаю, что могу сделать аналогичный RobotRunL oop в python с похожим объектом робота, который содержит привязки к API c ++. Я хотел бы иметь возможность скомпилировать это в двоичный файл, который я затем смогу запустить на роботе идентично чистой версии c ++.
Мотивация для этого - возможность экспериментировать с моделями машинного обучения и приближаться к более легко экспериментальным способом. Запуск чего-либо с помощью TensorFlow или аналогичного пакета на C ++ Infra будет конечной целью
Возможно ли это вообще? Что если код python использует другие пакеты? я использую Cython или Pybind11 (ни один, кажется, не делает то, что я хочу)?
Спасибо за помощь