Запишите информацию о настраиваемом параметре в файл
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
Тип параметра (см. Параметр Специфичные для типа Аргументы).
paramName
Имя параметра.
stringInfo
Общая информация о параметре, такой как, как это было выведено.
...
Остающиеся аргументы зависят от типа параметра (см. Параметр Специфичные для типа Аргументы).
int_T
(1
или 0
) или boolean_T
(true
или false
) указание на успешность или неуспешность функции.
Используйте эту функцию в mdlRTW
, чтобы записать информацию о настраиваемом параметре в файл
этой S-функцииmodel.rtw
. Ваша S-функция должна выписать параметры в том же порядке, как они объявляются в начале S-функции.
Эта функция обеспечивается для совместимости с 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
) заданный в simstuc_types.h
. Аргументом isComplex
является или 0
или 1
.
Например, DTINFO(SS_INT32,0)
является некомплексным 32-битным целым числом со знаком.
Если isComplex==1
, массив значений принят, чтобы иметь действительные и мнимые части, расположенные чередованным способом (т.е. формат Simulink®). Если вы предпочитаете передавать действительные и мнимые части как два отдельных массива, необходимо использовать макро-ssWriteRTWMxVectParam
или ssWriteRTWMx2dMatParam
.
C, C++