По умолчанию MATLAB® Coder™ использует предопределенные типы данных в сгенерированном коде. Можно использовать настраиваемые имена типов данных путем импорта пользовательских определений типов из внешних файлов заголовков. Затем можно использовать свои собственные определения типов в сгенерированном коде C/C + +. Если у вас есть существующий унаследованный код, можно интегрировать этот код в сгенерированный код C/C + +. Можно импортировать заголовочный файл с помощью приложения MATLAB Coder или интерфейса командной строки.
Чтобы импортировать пользовательские типы из внешних файлов заголовков:
Откройте приложение MATLAB Coder и перейдите к странице Generate Code.
Нажмите More Settings.
На вкладке Code Appearance выберите Enable custom data type replacement.
Задайте свои пользовательские имена для типов данных в Enable custom data type replacement таблице и нажмите Enter.
Установите флажок Import custom types from external header files.
В Header files текстовом поле введите разделенный точкой с запятой список имен файлов внешних заголовков и нажмите Enter. Для примера, myHeader1.h;myHeader2.h;myHeader3.h
.
Используйте ReplacementTypes.IsExtern
и ReplacementTypes.HeaderFiles
свойства в coder.EmbeddedCodeConfig
объект, когда вы генерируете код при помощи codegen
.
Создайте объект строения кода для генерации статической библиотеки.
cfg = coder.config('lib','ecoder',true);
Задайте пользовательские имена для типов данных. Для примера, double
называется как Custom_Double
и int8
называется как Custom_Int8
в коде.
cfg.EnableCustomReplacementTypes = true; cfg.ReplacementTypes.double = "Custom_Double"; cfg.ReplacementTypes.int8 = "Custom_Int8";
Задайте свойства строения для импорта файлов внешних заголовков.
% Include single header file cfg.ReplacementTypes.IsExtern = true; cfg.ReplacementTypes.HeaderFiles = "myHeader.h"; cfg.CustomInclude = 'C:\myFiles'; % Include path of the header file
% Include multiple header files cfg.ReplacementTypes.IsExtern = true; cfg.ReplacementTypes.HeaderFiles = "myHeader1.h;myHeader2.h;myHeader3.h"; cfg.CustomInclude = '"C:\Program Files\MATLAB\myFiles"'; % Include path of the header files
Для получения дополнительной информации о CustomInclude
, см. «Настройка сборки при помощи объекта строения».
Сгенерируйте код при помощи codegen
и -config
опция.
codegen myAdd.m -args {1,int8(1)} -config cfg -report