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.

port

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

dimsInfo

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

Посмотрите ssSetInputPortDimensionInfo описание этой структуры.

Описание

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

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

Примечание

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

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

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

Пример

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

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