Задайте размещение массивов S-функции
void ssSetArrayLayoutForCodeGen(SimStruct *S, SSArrayLayout arrayLayout)
SimStruct, представляющий Блок s-function.
Размещение массивов S-функции.
Задайте размещение массивов пользовательской S-функции. Используйте этот макрос в mdlInitializeSizes, чтобы установить размещение массивов S-функции. Если SSArrayLayout, заданный для S-функции, отличается от значения, заданного для образцового размещения параметра конфигурации Массивов (Simulink Coder), Simulink® Coder™ сообщает об ошибке. Можно выключить ошибку путем изменения Внешней совместимости функций для главной строкой генерации кода (Simulink Coder) к warning или none.
SSArrayLayout перечислимого типа задает множество значений, которое может иметь arrayLayout.
Значение размещения массивов | Поддерживаемое большинство |
|---|---|
| Незаданный |
| Главный столбцом |
| Главный строкой |
| Главный столбцом или главный строкой |
По умолчанию SSArrayLayout установлен в SS_UNSET.
Установите SSArrayLayout как SS_ALL, если ваша S-функция не затронута размещением массивов. Сгенерированный код не влияет на производительность кэша.
При выполнении главных строкой моделирований в Акселераторе и Быстрых Режимах Accelerator, Симулинк использует файлы MEX S-функции вместо того, чтобы встроить S-функцию при помощи Компилятора выходного языка (TLC).
C, C++
Задайте S-функцию для главной столбцом генерации кода:
static void mdlInitializeSizes(SimStruct *S)
{
ssSetArrayLayoutForCodeGen(S, SS_COLUMN_MAJOR);
}Задайте S-функцию для главной строкой генерации кода:
static void mdlInitializeSizes(SimStruct *S)
{
ssSetArrayLayoutForCodeGen(S, SS_ROW_MAJOR);
}Задайте S-функцию для главной столбцом или главной строкой генерации кода:
static void mdlInitializeSizes(SimStruct *S)
{
ssSetArrayLayoutForCodeGen(S, SS_ALL);
}Сгенерируйте главный строкой код для S-функций (Simulink Coder)