exponenta event banner

ssSetArrayLayoutForCodeGen

Укажите макет массива S-функции

Синтаксис

void ssSetArrayLayoutForCodeGen(SimStruct *S, SSArrayLayout arrayLayout)

Аргументы

S

SimStruct представляет S-функциональный блок.

arrayLayout

Структура массива S-функции.

Описание

Укажите макет массива определяемой пользователем S-функции. Использовать этот макрос в mdlInitializeSizes для установки формата массива S-функции. Если SSArrayLayout указанная для S-функции отличается от значения, указанного для параметра конфигурации модели Array layout (Simulink Coder), Simulink ® Coder™ сообщает об ошибке. Можно отключить ошибку, изменив совместимость внешних функций для генерации основного кода строки (Simulink Coder) наwarning или none.

Перечисляемый тип SSArrayLayout определяет набор значений, arrayLayout может иметь.

Значение компоновки массива

Поддерживается большинством

SS_UNSET

Неуказанный

SS_COLUMN_MAJOR

Колонна-мажор

SS_ROW_MAJOR

Ряд-мажор

SS_ALL

Столбец-мажор или строка-мажор

По умолчанию SSArrayLayout имеет значение SS_UNSET.

Набор SSArrayLayout как SS_ALL если на S-функцию не влияет компоновка массива. Созданный код не влияет на производительность кэша.

При выполнении основных имитаций строк в режимах Accelerator и Rapid Accelerator Simulink использует 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);
}

Представлен в R2018b