mdlSetInputPortDimensionInfo

Установите размерности сигналов, принятых входным портом

Необходимый

Нет

Языки

C, C++

Синтаксис

#define MDL_SET_INPUT_PORT_DIMENSION_INFO
void mdlSetInputPortDimensionInfo(SimStruct *S, int_T port,
  const DimsInfo_T *dimsInfo)

Аргументы

S

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

порт

Индекс порта.

dimsInfo

Структура, которая задает размерности сигнала, поддержанные портом.

Смотрите ssSetInputPortDimensionInfo для описания этой структуры.

Описание

Механизм Simulink® вызывает этот метод во время распространения размерности с размерностями кандидата dimsInfo для port. В S-функциях MEX C, если предложенные размерности приемлемы, метод устанавливает размерности фактического порта, с помощью ssSetInputPortDimensionInfo. Если они недопустимы, метод генерирует ошибку через ssSetErrorStatus.

Этот метод только допустим для моделирования. S-функция MEX C должна заключить метод в оператор #if defined(MATLAB_MEX_FILE).

Примечание

Этот метод может установить размерности любого другого порта ввода или вывода, размерности которого выводят от размерностей port.

По умолчанию механизм вызывает этот метод, только если это может полностью определить размерность port от порта, до которого это соединяется. Для S-функций MEX C, если механизм не может полностью определить размерность от подключения порта, это вызывает mdlSetDefaultPortDimensionInfo. Если S-функция может полностью определить размерность порта от частичной информации, установите опцию SS_OPTION_ALLOW_PARTIAL_DIMENSIONS_CALL в mdlInitializeSizes, с помощью ssSetOptions. Если эта опция установлена, механизм вызывает mdlSetInputPortDimensionInfo, даже если это может только частично определить размерность входного порта от возможности соединения.

Механизм вызывает этот метод, пока всем входным портам с наследованными размерностями не задали их размерности.

Пример

Смотрите sfun_matadd.c для примера того, как использовать эту функцию.

Представлено до R2006a

Была ли эта тема полезной?