Зарегистрируйте пользовательский тип данных из Simulink.AliasType, Simulink.NumericType, или Simulink.Bus объект.
void ssRegisterTypeFromNamedObject(SimStruct *S, char *name, int* id)
SSimStruct, представляющий блок S-Function.
nameИмя Simulink® объект для назначения пользовательскому типу данных.
idЦелое число, значение которого является идентификатором типа числовых данных после вызова ssRegisterTypeFromNamedObject.
Использование в mdlInitializeSizes, для регистрации пользовательского типа данных из Simulink.AliasType, Simulink.NumericType, или Simulink.Bus объект с именем name.
Если регистрация прошла успешно, можно объявить параметры S-функции, векторы DWork или входные и выходные порты этого типа данных, используя соответствующий идентификатор типа числовых данных id. Если регистрация не была успешной, id установлено в INVALID_DTYPE_ID.
Примечание
Нельзя регистрировать пользовательский тип данных из Simulink.NumericType объект с неопределенным масштабированием.
C, C++
В следующем примере регистрируется пользовательский тип данных из Simulink.Numeric тип с именем mydouble. Затем он задает, что вектор DWork и первый выходной порт имеют этот тип данных.
int dtype; char *name = "mydouble"; ssRegisterTypeFromNamedObject(S, name, &dtype); ssSetDWorkDataType(S, 0, dtype); ssSetOutputPortDataType(S, 0, dtype);