ssSetArrayLayoutForCodeGen

Задайте размещение массивов S-функции

Синтаксис

void ssSetArrayLayoutForCodeGen(SimStruct *S, SSArrayLayout arrayLayout)

Аргументы

S

SimStruct, представляющий Блок s-function.

arrayLayout

Размещение массивов S-функции.

Описание

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

SSArrayLayout перечислимого типа задает множество значений, которое может иметь arrayLayout.

Значение размещения массивов

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

SS_UNSET

Незаданный

SS_COLUMN_MAJOR

Главный столбцом

SS_ROW_MAJOR

Главный строкой

SS_ALL

Главный столбцом или главный строкой

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

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

При выполнении главных строкой симуляций в Акселераторе и Быстрых Режимах 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