Получите количество размерностей для элемента шины
int_T ssGetBusElementNumDimensions(SimStruct* S, int_T busTypeID, int_T elemIdx)
SSimStruct, который представляет Блок s-function
busTypeIDИдентификатор типа данных шины, который представляет сигнал шины
elemIdxОснованный на нуле индекс элемента шины
int_T
Получите количество размерностей для элемента шины, который вы указываете. Используйте возвращенное значение, чтобы циклично выполниться по каждой размерности в массиве размерностей что ssGetBusElementDimensions возвращается.
C, C++
static void mdlOutputs(SimStruct *S, int_T tid)
{
DTypeId dType = ssGetOutputPortDataType(S, 0);
const void *u = ssGetInputPortSignal(S, 0);
int numElems = ssGetNumBusElements(S, dType);
int i;
for(i=0; i<numElems; i++) {
int_T numDims = ssGetBusElementNumDimensions(S, dType, i);
const int_T *dims = ssGetBusElementDimensions(S, dType, i);
int width = 1;
int j;
/* Compute width of the bus element */
for(j=0; j<numDims; j++) {
width *= dims[j];
}
}
}