getSimulinkFunctionNamesImpl

Укажите имена функций Simulink, используемые в вашем Системном объекте

Синтаксис

names = getSimulinkFunctionNamesImpl(obj)

Описание

names = getSimulinkFunctionNamesImpl(obj) задает функцию Simulink® names, используемый в Системе object™ obj.

Если вы используете функцию Simulink в своем Системном объекте, можно только вызвать функцию Simulink от stepImpl, updateImpl или метода outputImpl.

Информация о классе

Этот метод является частью класса matlab.System.

Детали во время выполнения

getSimulinkFunctionNamesImpl вызывается Системой MATLAB во время образцовой компиляции, чтобы получить список функций Simulink, названных от Системного объекта. Simulink использует эту информацию, чтобы разрешить имена функций к функции Simulink, объявленной в Функциональном блоке Simulink. Если getSimulinkFunctionNamesImpl не возвращает имя функции, названной в методах Системного объекта, Simulink пытается разрешить функцию к функции на пути MATLAB.

Метод, создающий советы

Вам необходимо задать Access = protected для этого метода.

Входные параметры

развернуть все

Указатель системного объекта. Если ваш метод getSimulinkFunctionNamesImpl не использует объект, можно заменить этот вход на ~.

Пример: getSimulinkFunctionNamesImpl(~)

Выходные аргументы

развернуть все

Имена Simulink функционируют, вы хотите вызвать от своего Системного объекта.

Примеры

развернуть все

Зарегистрируйте три Simulink, которые вы хотите вызвать от своего Системного объекта. Имена функций Simulink должны совпадать с именем, указанным в Функциональном блоке Simulink.

methods (Access = protected)
  function names = getSimulinkFunctionNamesImpl(obj)
    names = ["setPosition", "doProcessing", "timesTwo"];
  end
end

Этот пример показывает два Simulink Functions, условно вызванный блоком MATLAB System с помощью ненастраиваемых свойств Системы object®.

Блок MATLAB System вызывает один из Simulink Functions в двух различных подсистемах, в зависимости от значения сигнала, прибывающего из блока Sine Wave. Если значение сигнала - меньше чем 10, блок MATLAB System вызывает Simulink Function timestwo_func в блоке SS1 Subsystem. Если значение больше, чем 10, оно вызывает timesthree_func в блоке SS2 Subsystem.

Имена функций заданы как ненастраиваемые свойства, переключаются от строки до функций с помощью функции str2func. Затем эти функции объявляются как свойства в методе getSimulinkFunctionNamesImpl.

Введенный в R2019a