Множественное наследование библиотеки точек облака с ограничением одиночного наследования

API плагина C ++, в котором я работаю, достаточно плох, без обработки STL / исключений, но также запрещает множественное наследование. Другими словами, я могу создать его, если не возражаю против того, чтобы мой плагин аварийно завершал работу хост-приложения при запуске, или я могу сойти с одного, и он будет падать при первом прямом экземпляре множественного наследования в PCL (из которых только один экземпляр) в моем коде плагина, но это все, что требуется, и да, это обязательный экземпляр).

Я предполагаю, что любые множественные наследования, используемые в библиотеках PCL, изолированы (так как они, кажется, часто используют эту функцию), но как только я использую что-то с этим напрямую — вылетает.

Кажется, вариантов очень мало. Я могу попытаться найти другую библиотеку для сцепления поверхности облака точек с лицензией на коммерческое использование (ха!) Или написать отдельный исполняемый файл, используя PCL, который вызывается из плагина для выполнения работы и передачи результатов обратно плагину (ужасная платформа) зависимое, а не комплексное решение). Весь этот бизнес становится отвратительным. Так много времени и усилий было потрачено на исследования, подготовку, изучение, корректировку проектов, тщательную настройку, чтобы убедиться, что они не будут работать в таких условиях.

Если у вас есть альтернативный вариант библиотеки BSD, упомянуть это было бы здорово. Если вы думаете, что я должен пойти на запуск приложения на основе CL / DOS, чтобы выполнить обработку, было бы здорово услышать аргументы также. Я поддерживаю как Windows, так и MacOS X.

0

Решение

Собирается внешний исполняемый маршрут. Я могу сохранить облако точек в формате pcd из приложения, запустить исполняемый файл для загрузки и обработать файл для вывода результатов в формате obj для использования приложением. Это все еще ужасное решение, но, по крайней мере, оно работает.

0

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector