Запись настраиваемого параметра информации в
файлmodel
.rtw
int_T ssWriteRTWParameters(SimStruct *S, int_T nParams, int_T paramType, const char_T *paramName, const char_T *stringInfo, ...)
S
SimStruct, представляющий блок 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++