.. role:: blue :class: blue .. версия ядра: 118061 Вспомогательные методы конвертеров ================================== .. _Auxiliary_Converter_Methods: Для получения сведений о поддерживаемых форматах и загруженных плагинах C3D Converter предусмотрен ряд вспомогательных методов. **Получение списка поддерживаемых форматов** Получить список поддерживаемых форматов можно как через интерфейс :blue:`IConverter3D`, так и с помощью отдельной API-функции. Список включает как обменные форматы, доступные по стандартной лицензии [cnv], так и форматы, подключаемые через плагины. Через интерфейс :blue:`IConverter3D` для этого предназначены методы: .. code-block:: cpp virtual std::vector GetSupportedImportFormats(); .. code-block:: cpp virtual std::vector GetSupportedImportForeignFormats(); Метод :blue:`GetSupportedImportFormats`\() возвращает список поддерживаемых форматов с учётом лицензионного ключа и наличия формат-специфичных библиотек конвертера. Если какой-либо плагин не поддерживает получение списка форматов, то его форматы не будут включены в результат. Метод :blue:`GetSupportedImportForeignFormats`\() возвращает список форматов, поддерживаемых для импорта через :blue:`ImportForeign`\(). Список будет пустым, если метод :blue:`LoadForeignReader`\() не вызывался или завершился неуспешно. Если какой-либо плагин не поддерживает получение списка форматов, то его форматы не будут включены в результат. Для получения списка поддерживаемых форматов также предусмотрена отдельная API-функция: .. code-block:: cpp CONV_FUNC( std::vector ) GetSupportedFormats(); Функция :blue:`GetSupportedFormats`\() возвращает список поддерживаемых форматов с учётом лицензионного ключа и наличия формат-специфичных библиотек конвертера. Если какой-либо плагин не поддерживает получение списка форматов, то его форматы не будут включены в результат. Структура :blue:`FormatInfo` содержит краткие сведения о формате: его название и список поддерживаемых расширений файлов. .. про FormatInfo больше ничего не надо? **Получение сведений о загруженных плагинах** Для получения сведений о загруженных и активированных плагинах используется функция: .. code-block:: cpp CONV_FUNC( std::vector ) GetLoadedPluginsVersions(); Функция :blue:`GetLoadedPluginsVersions`\() возвращает версии загруженных плагинов. Значение версии определяется реализацией конкретного плагина. Если плагин не сообщает свою версию, то вместо неё используется строка "n/a". Структура :blue:`PluginVersionInfo` содержит полный путь к плагину и версию плагина. Версии плагинов различаются для разных форматов. Для механических форматов (*catia*, *creo*, *nx*, *sw*, *se*) и *ifc* используется единая версия плагина, например 22.0.29.0. Партнёрские плагины строительных форматов (*nwd*, *rvt*, *rvm*, *sp*) имеют собственные схемы нумерации версий, например 1.4.0.0, поскольку развивались независимо.