Установите размерности сигналов, принятых портом выхода
Нет
C, C++
#define MDL_SET_OUTPUT_PORT_DIMENSION_INFO
void mdlSetOutputPortDimensionInfo(SimStruct *S, int_T port,
const DimsInfo_T *dimsInfo)
S
SimStruct, представляющий блок S-Function.
port
Индекс порта.
dimsInfo
Структура, которая задает размерности сигнала, поддерживаемые port
.
Посмотрите ssSetInputPortDimensionInfo
описание этой структуры.
Simulink® engine вызывает этот метод с потенциальными размерностями dimsInfo
для port
. В C MEX S-функциях, если предложенные размерности приемлемы, метод устанавливает фактические размерности портов, используя
. Если они неприемлемы, метод генерирует ошибку через ssSetOutputPortDimensionInfo
. Этот метод действителен только для симуляции. S-функции MEX на C должны заключать метод в ssSetErrorStatus
#if defined(MATLAB_MEX_FILE)
оператор.
Примечание
Этот метод может задать размерности любого другого входного или выходного порта, размеры которого получают из размерностей port
.
По умолчанию механизм вызывает этот метод только, если он может полностью определить размерность port
от порта, к которому он подключен. В C MEX S-функциях, если двигатель не может полностью определить размерность от связности портов, он вызывает mdlSetDefaultPortDimensionInfo
. Если S-функция может полностью определить размерность порта из частичной информации, установите опцию SS_OPTION_ALLOW_PARTIAL_DIMENSIONS_CALL
в mdlInitializeSizes
, использование ssSetOptions
. Если эта опция установлена, механизм вызывает mdlSetOutputPortDimensionInfo
даже если он может только частично определить размерность выходного порта от связности.
Механизм вызывает этот метод, пока не будут заданы размеры всех выходных портов с унаследованными размерностями.
См. sfun_matadd.c
для примера использования этой функции.