Выберите упаковку для сгенерированного интерфейса кода C or C++.
Генерация кода Category:> Интерфейс
Значение по умолчанию:
Nonreusable function
если параметр Language устанавливается на C
; C++ class
если Language установлен в C++
C++ class
Сгенерируйте интерфейс класса C++ к типовому кодексу. Сгенерированный интерфейс инкапсулирует требуемые данные модели в атрибуты класса C++ и функции точки входа модели в методы класса C++.
Nonreusable function
Сгенерируйте код одноразового использования. Структуры данных модели статически выделены и получены доступ функциями точки входа модели непосредственно в типовом кодексе.
Reusable function
Сгенерируйте допускающий повторное использование, код мультиэкземпляра, который повторно используем, можно следующим образом:
Для основанной на GRT модели, сгенерированного
исходный файл содержит функцию выделения, которая динамически выделяет данные модели для каждого экземпляра модели. Для основанной на ERT модели можно использовать параметр Use dynamic memory allocation for model initialization, чтобы управлять, сгенерирована ли функция выделения.model
C
Сгенерированный код передает структуру данных модели реального времени в, ссылкой, в качестве аргумента к
и другие функции точки входа модели.model
шаг
Структура данных модели реального времени экспортируется с
заголовочный файл.model
H
Для основанной на ERT модели можно использовать параметр Pass root-level I/O as, чтобы управлять, как аргументы ввода и вывода корневого уровня передаются допускающим повторное использование функциям точки входа модели. Они могут быть включены в структуру данных модели реального времени, которая передается функциям, передала в качестве отдельных аргументов или передала как ссылки на входную структуру и структуру output.
Точки входа экспортируются с
. Чтобы вызвать функции точки входа из рукописного кода, добавьте model
H#include model.h
директива к коду.
Когда вы выбираете Reusable function
, генератор кода генерирует указатель на объект модели реального времени (
).model
M
Когда вы выбираете Reusable function
, генератор кода может сгенерировать код, который компилирует, но не повторно используем. Например, если сигнал, структура DWork или данные о параметре имеют класс памяти кроме Auto
, структуры глобальных данных сгенерированы.
Значение C++ class
доступно, только если параметр Language устанавливается на C++
.
Выбор Reusable function
или C++ class
включает параметру Multi-instance code error diagnostic.
Для основанного на ERT системного конечного файла, выбор Reusable function
включает параметрам Pass root-level I/O as и Use dynamic memory allocation for model initialization.
Чтобы включить параметру Classic call interface, выберите Nonreusable function
.
Для основанного на ERT системного конечного файла, выбор C++ class
включает следующие управления конфигурацией модели для настройки интерфейса класса модели:
Кнопка Configure C++ Class Interface
Подпанель Data Member Visibility/Access Control
Параметры Generate destructor и Use dynamic memory allocation for model block instantiation
Для основанного на ERT системного конечного файла можно выбрать Reusable function
со статическим ert_main.c
модуль, если вы делаете следующее:
Установите параметр Pass root-level I/O as на Part of model data structure
.
Выберите параметр Use dynamic memory allocation for model initialization.
Для основанного на ERT системного конечного файла вы не можете выбрать Reusable function
если вы:
Настройка model_step
прототип функции
Выбор параметров блоков подсистемы Function with separate data
Используя подсистему это
Имеет несколько портов тот источник доли
Имеет порт, который используется несколькими экземплярами подсистемы и имеет различные шаги расчета, типы данных, сложность, состояние системы координат или размерности через экземпляры
Вывел отмеченный как глобальный сигнал
Поскольку каждый экземпляр содержит идентичные блоки с различными именами или установками параметров
Выбор Reusable function
не изменяет код, сгенерированный для подсистем вызова функций.
Параметр: CodeInterfacePackaging |
Ввод: символьный вектор |
Значение: 'C++ class' | 'Nonreusable function' | 'Reusable function' |
Значение по умолчанию: 'Nonreusable function' если TargetLang установлен в 'C' ; 'C++ class' если TargetLang установлен в 'C++' |
Приложение | Установка |
---|---|
Отладка | Никакой удар |
Трассируемость | Никакой удар |
Эффективность | Reusable function или C++ class |
Меры безопасности | Никакой удар |