Эта тема основы продвигается, чтобы взять, чтобы опубликовать интерфейс MATLAB® к библиотеке C++. Для примеров см.:
Рассмотрите ограничения к поддержке MATLAB библиотек C++. Эта информация говорит вам, если возможно опубликовать интерфейс к вашей библиотеке.
Определите функциональность, которую вы хотите от библиотеки.
Можно использовать примеры библиотеки в качестве руководства.
Некоторые библиотеки содержат сотни классов и функций. Чтобы включать всю функциональность в интерфейс, исследуйте конструкторов и методы в файле определения (см. шаг 6) для недостающей информации. Путем идентификации определенной функциональности можно ограничить осциллограф шага определения.
Идентифицируйте и найдите требуемый заголовок и файлы библиотеки, включая зависимости.
Некоторые библиотеки написаны в C с оберткой для C++. Вам нужен зависимый C заголовочные файлы и библиотеки, чтобы создать интерфейс.
StartMatlab. Рассмотрите использование редактора Live Script, чтобы выполнить команды публикации и зарегистрировать процесс. Live Script:
Записывает функциональность, исключенную из интерфейса.
Обеспечивает место, чтобы зарегистрировать информацию вне среды MATLAB, такой как информация о загрузке и системные команды.
Сгенерируйте .mlx
файл определения с помощью clibgen.generateLibraryDefinition
. В качестве альтернативы вызовите clibgen.buildInterface
как описано в Сборке С одним шагом.
Исследуйте файл определения на функциональность, которую вы определили на шаге 2. При необходимости задайте отсутствующие значения для этой функциональности.
Создайте интерфейс с помощью build
на файле определения библиотеки. Обязательно добавьте, что интерфейсная папка к пути MATLAB путем щелчка по ссылке в сборке обменивается сообщениями или путем вызова addpath
.
Протестируйте команды MATLAB. Если вы используете класс библиотеки или функцию, вы не можете изменить определение библиотеки, если вы не перезапускаете MATLAB и восстанавливаете библиотеку.
Группируйте интерфейс .dll
MATLAB/
.so
/.dylib
файл библиотеки для распределения, использование Создает и Тулбоксы Доли.
Если ваша библиотека не содержит указатели или другие построения, которые требуют определения, вы не должны создавать файл определения. Вызовите clibgen.buildInterface
непосредственно на заголовке C++ и файлах библиотеки. После создания интерфейса выполните шаги, чтобы протестировать команды и группировать интерфейс.
build
| clibgen.buildInterface
| clibgen.generateLibraryDefinition