Запись настраиваемого параметра информации в файлmodel.rtw
int_T ssWriteRTWParameters(SimStruct *S, int_T nParams, int_T paramType, const char_T *paramName, const char_T *stringInfo, ...)
SSimStruct, представляющий блок S-Function.
nParamsКоличество настраиваемых параметров.
paramTypeТип параметра (см. Parameter Type-Specific Аргументов).
paramNameИмя параметра.
stringInfoОбщая информация о параметре, например, как он был выведен.
...Остальные аргументы зависят от типа параметра (см. «Аргументы типа параметра»).
Система координат int_T (1 или 0) или boolean_T (true или false), указывающий на успех или отказ функции.
Используйте эту функцию в mdlRTW чтобы записать настраиваемый параметр информацию в этой S-функцииmodel файл. Ваша S-функция должна записать параметры в том же порядке, в котором они объявлены в начале S-функции..rtw
Примечание
Эта функция предназначена для совместимости с S-функциями, которые не используют параметры во время выполнения и будут устаревать в будущих релизах. Рекомендуется использовать параметры во время выполнения (см., Создают и обновляют параметры во время выполнения S-функции). Если вы используете параметры во время выполнения, вам не нужно использовать эту функцию.
В этом разделе перечислены аргументы в зависимости от параметра, требуемые для каждого типа параметра.
SSWRITE_VALUE_VECT (векторный параметр)
| Аргумент | Описание |
|---|---|
const real_T *valueVect | Указатель на массив вектора значений |
int_T vectLen | Длина вектора |
SSWRITE_VALUE_2DMAT (матричный параметр)
| Аргумент | Описание |
|---|---|
const real_T *valueMat | Указатель на массив элементов матрицы |
int_T nRows | Количество строк в матрице |
int_T nCols | Количество столбцов в матрице |
SSWRITE_VALUE_DTYPE_2DMAT
| Аргумент | Описание |
|---|---|
const real_T *valueMat | Указатель на массив элементов матрицы |
int_T nRows | Количество строк в матрице |
int_T nCols | Количество столбцов в матрице |
int_T dtInfo | Тип данных элементов матрицы (см. «Определение типа данных» «Информация») |
SSWRITE_VALUE_DTYPE_ML_VECT
| Аргумент | Описание |
|---|---|
const void *rValueVect | Действительный компонент комплексного вектора |
const void *iValueVect | Мнимый компонент комплексного вектора |
int_T vectLen | Длина вектора |
int_T dtInfo | Тип данных вектора (см. «Определение типа данных») |
SSWRITE_VALUE_DTYPE_ML_2DMAT
| Аргумент | Описание |
|---|---|
const void *rValueMat | X |
const void *iValueMat | Мнимый компонент комплексной матрицы |
int_T nRows | Количество строк в матрице |
int_T nCols | Количество столбцов в матрице |
int_T dtInfo | Тип данных матрицы |
Вы получаете тип данных аргумента значения, переданного в ssWriteRTW макросы с использованием
DTINFO(dTypeId, isComplex)
где dTypeId может быть любым из enum значения в DTypeID (SS_DOUBLE, SS_SINGLE, SS_INT8, SS_UINT8, SS_INT16, SS_UINT16, SS_INT32, SS_UINT32, SS_BOOLEAN), заданный в sl_types_def.h. The isComplex аргумент либо 0 или 1.
Для примера, DTINFO(SS_INT32,0) является некомплексным 32-битным целым числом со знаком.
Если isComplex==1массив значений принято таким образом, чтобы действительная и мнимая части были расположены чередующимся образом (т.е. Simulink® формат). Если вы предпочитаете передавать действительную и мнимую части как два отдельных массива, следует использовать макрос ssWriteRTWMxVectParam или ssWriteRTWMx2dMatParam.
C, C++