ssSetUserData

Задайте пользовательские данные

Синтаксис

void ssSetUserData(SimStruct *S, void *data)

Аргументы

S

SimStruct, представляющий блок S-Function.

data

Пользовательские данные.

Описание

Сохраняет указатель на место памяти, содержащее пользовательские данные S-функции. Чтобы избежать утечек памяти, S-функция должна освободить это место памяти во время вызова mdlTerminate.

S-функция, содержащая пользовательские данные, должна выполнить следующие шаги.

  1. Выделите память для пользовательских данных с помощью настроенной структуры для хранения более сложных данных.

  2. Установите SS_OPTION_CALL_TERMINATE_ON_EXIT опция в mdlInitializeSizes, для обеспечения Simulink® двигатель всегда вызывает mdlTerminate функция.

  3. Сохраните указатель на место памяти в пользовательских данных с помощью вызова ssSetUserData.

  4. В mdlTerminate, использовать ssGetUserData чтобы извлечь указатель на место памяти и освободить память.

Смотрите Создание параметров во время выполнения из нескольких параметров S-функции для примера, который использует пользовательские данные в сочетании с параметрами во время выполнения.

Примечание

Вы не можете получить доступ к пользовательским данным из файла Target Language Compiler (TLC). Используйте векторы DWork вместо пользовательских данных, если вам нужно записать TLC-файл, чтобы встроить S-функцию во время генерации кода с Simulink Coder™. Для примера, использующего векторы DWork, смотрите sfcndemo_sfun_rtwdwork.

Языки

C, C++

Пример

Смотрите S-функцию sfun_runtime4.c используется в sfcndemo_runtime.

См. также

ssGetUserData

Представлено до R2006a