2013-07-21 2 views
0

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

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

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

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

+0

Тег PCL предназначен для языка управления принтером, а не для облачной библиотеки точек. Retag с облачной облачной библиотекой – Bull

+0

О, спасибо. На самом деле PCL также является облачной библиотекой точек (duh). Акронимы не являются собственностью или товарными знаками. Сожалею. Исправлена. –

+0

нет возражений против вас, используя слово PCL, если вы не используете его как тег. Сравните http://stackoverflow.com/questions/tagged/pcl и http://stackoverflow.com/questions/tagged/point-cloud-library. Вы должны пометить облачную библиотеку. Стыдно, что люди облачной библиотеки облаков были достаточно глупы, чтобы называть свой продукт PCL, когда PCL для принтеров очень много лет около 30 лет. Во всяком случае, PCL для принтеров люди заявили о теге в Stack Overflow. – Bull

ответ

0

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

Смежные вопросы