getSimulinkBlockHandle

Получите блочный указатель от блока path

Синтаксис

handle = getSimulinkBlockHandle(path)
handle = getSimulinkBlockHandle(path,true)

Описание

пример

handle = getSimulinkBlockHandle(path) возвращает числовой указатель блока, заданного path, если это существует в загруженной модели или библиотеке. Возвращает -1, если блок не найден. Ссылки библиотеки разрешены в случае необходимости.

Используйте числовой указатель, возвращенный getSimulinkBlockHandle, чтобы управлять блоком в последующих вызовах get_param или set_param. Этот подход более эффективен, чем совершение множественных звонков к этим функциям с помощью полного блока path. Не пытайтесь использовать количество одного только указателя (e. g., 5.007), потому что обычно необходимо задавать еще много цифр, чем отображения MATLAB®. Присвойте указатель на переменную и используйте то имя переменной, чтобы задать блок. Указатель применяется только к текущему сеансу работы с MATLAB.

Используйте getSimulinkBlockHandle, чтобы проверить, допустим ли блок path. Этот подход более эффективен, чем вызов get_param в операторе try.

пример

handle = getSimulinkBlockHandle(path,true) пытается загрузить модель или библиотеку, содержащую заданный блок path, и затем проверяет, существует ли блок. Никакая ошибка не возвращена, если модель или библиотека не найдены. Любые модели или библиотеки загрузили этот путь, остаются в памяти, даже если функция не находит блок с заданным путем.

Примеры

свернуть все

Получите указатель блока Pilot.

load_system('f14')
handle = getSimulinkBlockHandle('f14/Pilot')
handle =

  562.0004

Можно использовать указатель в последующих вызовах get_param или set_param.

Загрузите образцовый f14 при необходимости (путем определения true) и получите указатель блока Pilot.

handle = getSimulinkBlockHandle('f14/Pilot',true)
handle =

  562.0004

Можно использовать указатель в последующих вызовах get_param или set_param.

Проверьте, загружается ли образцовый f14 и содержит блок под названием Pilot. Допустимые указатели всегда больше, чем нуль. Если функция не находит блок, она возвращает -1.

valid_block_path = getSimulinkBlockHandle('f14/Pilot') > 0
valid_block_path =

     0

Модель содержит блок, но модель не загружается, таким образом, эта команда возвращает 0, потому что это не может найти блок.

Используя getSimulinkBlockHandle, чтобы проверить, допустим ли блок path, более эффективно, чем вызов get_param в операторе try.

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

свернуть все

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

Пример: 'f14/Pilot'

Типы данных: char

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

свернуть все

Числовой указатель блока, возвращенного как двойное или массив, удваивается. Допустимые указатели всегда больше, чем нуль. Если функция не находит блок, она возвращает -1. Если входной параметр path является массивом ячеек из символьных векторов, то вывод является числовым массивом указателей.

Типы данных: double

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

|

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

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