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