Упаковка интерфейса кода

Описание

Выберите упаковку для сгенерированного интерфейса C или Кода С++.

Генерация кода Category:> Интерфейс

Настройки

Значение по умолчанию: Nonreusable function, если Language установлен в C; C++ class, если Language установлен в C++

C++ class

Сгенерируйте интерфейс класса C++ к типовому кодексу. Сгенерированный интерфейс инкапсулирует требуемые данные модели в атрибуты класса C++ и образцовые функции точки входа в методы класса C++.

Nonreusable function

Сгенерируйте код одноразового использования. Структуры данных модели статически выделены и получены доступ образцовыми функциями точки входа непосредственно в типовом кодексе.

Reusable function

Сгенерируйте допускающий повторное использование, код мультиэкземпляра, который повторно используем, можно следующим образом:

  • Для основанной на GRT модели сгенерированный исходный файл model.c содержит функцию выделения, которая динамически выделяет данные модели для каждого экземпляра модели. Для основанной на ERT модели можно использовать опцию Use dynamic memory allocation for model initialization, чтобы управлять, сгенерирована ли функция выделения.

  • Сгенерированный код передает структуру данных модели реального времени в, ссылкой, в качестве аргумента к model_step и другим образцовым функциям точки входа.

  • Структура данных модели реального времени экспортируется с заголовочным файлом model.h.

Для основанной на ERT модели можно использовать параметр Pass root-level I/O as, чтобы управлять, как аргументы ввода и вывода корневого уровня передаются допускающим повторное использование образцовым функциям точки входа. Они могут быть включены в структуру данных модели реального времени, которая передается функциям, передала в качестве отдельных аргументов или передала как ссылки на входную структуру и выходную структуру.

Советы

  • Точки входа экспортируются с model.h. Чтобы вызвать функции точки входа из рукописного кода, добавьте директиву #include model.h в код.

  • Когда вы выбираете Reusable function, генератор кода генерирует указатель на объект модели реального времени (model_M).

  • Когда вы выбираете Reusable function, генератор кода может сгенерировать код, который компилирует, но не повторно используем. Например, если сигнал, структура DWork или данные о параметре имеют класс памяти кроме Auto, структуры глобальных данных сгенерированы.

Зависимости

  • C++ class значения доступен, только если параметр Language устанавливается на C++ на панели Code Generation.

  • Выбор 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, если вы делаете следующее:

    • Выберите значение Part of model data structure для Pass root-level I/O as.

    • Выберите опцию 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
Меры безопасностиНикакое влияние

Смотрите также

Похожие темы