Параметризируйте функцию MATLAB так, чтобы она работала в MATLAB или в сгенерированном коде. Когда функция запускается в MATLAB, она вызывает функцию MATLAB myabsval. Сгенерированный код, однако, вызывает функцию библиотеки на C myabsval.
Написание функции MATLAB myabsval.
Сгенерируйте статическую библиотеку на C для myabsval, с использованием -args опция для задания размера, типа и сложности входного параметра.
codegen функция создает файл библиотеки
myabsval.lib и заголовочный файл
myabsval.h в папке
\codegen\lib\myabsval. (Расширение файла библиотеки может измениться в зависимости от вашей платформы.) Он генерирует функции
myabsval_initialize и
myabsval_terminate в той же папке.
Написание функции MATLAB для вызова сгенерированной функции библиотеки C с помощью coder.ceval.
Сгенерируйте MEX-функцию callmyabsval_mex. Предоставьте сгенерированный файл библиотеки в командной строке.
Вместо того, чтобы предоставлять библиотеку в командной строке, можно использовать, чтобы задать библиотеку в функции. Используйте эту опцию для предварительной настройки сборки. Добавьте эту линию к else блок:
Запуск MEX-функции callmyabsval_mex который вызывает функцию библиотеки myabsval.
Вызовите функцию MATLAB callmyabsval.
The
callmyabsval функция показывает желаемое поведение для выполнения в MATLAB и в генерации кода.