ssSetSimStateCompliance

Задайте поведение S-функции Simulink при сохранении и восстановлении SimState модели, содержащей S-функцию.

Синтаксис

void ssSetSimStateCompliance(S, setting)

Аргументы

S

SimStruct, представляющий Блок s-function.

setting

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

  • SIM_STATE_COMPLIANCE_UNKNOWN (значение по умолчанию)

  • USE_DEFAULT_SIM_STATE

  • HAS_NO_SIM_STATE

  • DISALLOW_SIM_STATE

  • USE_CUSTOM_SIM_STATE

Описание

Эта функция позволяет вам задавать, как Simulink® должен обработать S-функцию во время сохранения и восстановления образцового состояния моделирования (SimState). Если S-функции не задают его SimStateCompliance, то Simulink принимает установку SIM_STATE_COMPLIANCE_UNKNOWN. Эта установка дает Simulink команду выдавать предупреждение и затем переключаться на USE_DEFAULT_SIM_STATE вместо SIM_STATE_COMPLIANCE_UNKNOWN. Если опция установлена в USE_DEFAULT_SIM_STATE и если S-функция не использует PWorks, то Simulink обрабатывает S-функцию как встроенный блок. Simulink сохраняет и восстанавливает те же данные как SimState (e. g., непрерывные состояния и работают векторы), как это было бы для встроенного блока.

Языки

C, C++

Пример

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

static void mdlInitializeSizes(SimStruct* S)
{
    ssSetNumSFcnParams(S, 2); /* two parameters */
    if (ssGetNumSFcnParams(S) != ssGetSFcnParamsCount(S)) 
			return;
    ssSetSFcnParamTunable(S, 0, false);
    ssSetSFcnParamTunable(S, 1, false);

    {
        boolean_T visibility = 0U;
        ssSimStateCompliance setting =
            GetSimSnapParameterSetting(S, &visibility);
        if (ssGetErrorStatus(S)) return;

        ssSetSimStateCompliance(S, setting);
        ssSetSimStateVisibility(S, visibility);
    }

См. полный исходный код (/toolbox/simulink/simdemos/simfeatures/src sfun_simstate.c) для примера того, как получить соответствие моделирования S-функции.

Смотрите также

ssSetSimStateVisibility

Представленный в R2009a

Была ли эта тема полезной?