Обзор API Stateflow

Прикладной программный интерфейс (API) Stateflow® является инструментом, который вы используете, чтобы создать или изменить диаграммы Stateflow посредством команд MATLAB®. Путем размещения команд API Stateflow в скрипт MATLAB можно автоматизировать процессы редактирования графика в одной команде.

Приложения для API Stateflow включают:

  • Создание скрипта, который выполняет общие графические редактирования и упрощает редактирование диаграмм Stateflow

  • Создание скрипта, который создает повторяющуюся "основную" диаграмму Stateflow

  • Создание скрипта, который представляет специализированный отчет модели

API Stateflow состоит из объектов, которые представляют графические и неграфические объекты диаграммы Stateflow. Например, объект API типа State и Transition представляйте состояния и переходы в диаграмме Stateflow. Соответствие между объектами API и объектами в графике двунаправлено. Когда вы изменяете свойство объекта API или вызываете один из его методов, вы влияете на соответствующий объект в диаграмме Stateflow. Когда вы используете редактора Stateflow, чтобы выполнить операцию на объекте в графике, вы влияете на соответствующий объект API.

Примечание

Вы не можете отменить операцию в редакторе Stateflow, что вы выполняете использование API Stateflow. Если вы выполняете операцию редактирования через API, отмену и восстанавливаете кнопки, отключены от отмены и восстановления любых предшествующих операций.

Иерархия объектов API Stateflow

Объекты API Stateflow содержат или содержатся в других объектах API. Например, если A состояния содержит B состояния в диаграмме Stateflow, затем объект API для A состояния содержит объект API для B состояния. Правила включения задают иерархию Stateflow и иерархию объектов API Stateflow. Например, графики могут содержать состояния, но состояния не могут содержать графики. Для получения дополнительной информации см. Обзор Объектов Stateflow.

Эта схема показывает иерархию API Stateflow объектов.

Иерархия API Stateflow состоит из этих слоев включения:

  • КореньRoot объект является родительским элементом всех объектов API Stateflow. Это - заполнитель наверху иерархии API Stateflow, чтобы отличить объекты Stateflow от объектов модели Simulink®. Вы автоматически создаете Root возразите, когда вы загрузите модель Simulink, содержащую диаграмму Stateflow, или вызовете функциональный sfnew создать модель с диаграммой Stateflow.

  • Машина — машина Stateflow содержит все графики в модели Simulink. Machine объекты эквивалентны моделям Simulink с точки зрения Stateflow. Весь Machine объекты содержатся в Root объект. Machine объекты могут содержать Chart объекты, которые представляют диаграммы Stateflow, таблицы переходов состояний и блоки таблицы истинности.

  • График — В любом Machine объект там может быть любым количеством Chart объекты. Каждый объект типа Chart может содержать объекты, которые представляют состояния, переходы, соединения, поля, функции, аннотации, данные, события и сообщения. Эти объекты представляют компоненты диаграммы Stateflow.

  • Состояния, Функции и Поля — Вложенный в объектах типа Stateфункция, и Box, могут быть другие объекты, которые представляют состояния, переходы, соединения, поля, функции, аннотации, данные, события и сообщения. Уровни вложения могут продолжиться неопределенно.

Иерархическая схема показывает два типов объектов, которые существуют за пределами иерархии включения Stateflow:

  • Редактор — Хотя не часть иерархии включения Stateflow, объект типа Editor обеспечивает доступ к чисто графическим аспектам объектов типа Chart. Для каждого Chart объект, существует Editor объект, который обеспечивает доступ к API к редактору Stateflow. Для получения дополнительной информации смотрите, Изменяют Graphical Properties Вашего Графика.

  • Буфер обменаClipboard объект имеет два метода, copy и pasteTo, то использование буфер обмена как район сосредоточения войск, чтобы реализовать копию и функциональность вставки в API Stateflow. Для получения дополнительной информации см. Копию и Вставку Объекты Stateflow.

Получите указатель на объектах API Stateflow

Вы управляете объектами Stateflow путем управления объектами API Stateflow, которые представляют их. Вы управляете объектами API Stateflow через переменную MATLAB, названную указателем.

Первый указатель, в котором вы нуждаетесь в API Stateflow, является указателем на Root объект, который является родительским элементом всех объектов в API Stateflow. В этой команде, функциональном sfroot возвращает указатель на Root объект:

rt = sfroot

Если у вас есть Root указатель на объект, можно найти указатель на Объект модели для машины Stateflow, с которой вы хотите работать. Если у вас есть указатель на Machine объект, можно найти указатель на Chart объект для графика вы хотите отредактировать. Позже, когда вы создаете объекты или находите существующие объекты в диаграмме Stateflow, вы получаете указатель на объект, который можно использовать, чтобы управлять фактическим объектом в редакторе Stateflow.

Чтобы изучить, как использовать указатели на объект API, чтобы создать и отредактировать диаграммы Stateflow, смотрите, Создают Графики при помощи API Stateflow.

Доступ к свойствам объектов API и методам

Если вы получаете указатели на объекты API Stateflow, можно управлять объектами Stateflow, что они представляют через свойства и методы, которыми обладает каждый объект Stateflow API. Вы получаете доступ к свойствам и методам объекта через указатель на объект.

Свойства объектов API

Свойства API соответствуют значениям, которые вы обычно устанавливаете для объекта через пользовательский интерфейс редактора Stateflow. Например, можно сменить положение перехода путем изменения Position свойство Transition объект, который представляет переход. В редакторе Stateflow можно перетащить нажатие кнопки источник, конец или среднюю точку перехода, чтобы сменить его положение.

Методы объекта API

Методы API похожи на функции для создания, открытия, изменения или удаления объектов, которым они принадлежат. Они предоставляют услуги, которые обычно предоставляются редактором Stateflow. Например, можно удалить переход в редакторе Stateflow путем вызова delete метод Transition объект, который представляет переход. Удаление перехода в редакторе Stateflow обычно делается путем выбора перехода и нажатия клавиши DELETE.

Общие свойства API и методы

Объекты API Stateflow имеют некоторую общую собственность и методы. Например, все объекты API имеют Id и Description свойство. Все объекты API имеют get и set метод для просмотра или изменения свойств объекта, соответственно. Большинство объектов API также имеет delete метод.

Уникальные свойства API и методы

Каждый объект API также имеет свойства и методы, уникальные для его типа. Например, State объект имеет Position свойство, содержащее пространственные координаты для состояния, это представляет в редакторе Stateflow. Data объект, однако, не имеет никакого Position свойство.

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

| | |

Похожие темы