Обзор API Stateflow

Каков API Stateflow?

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

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

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

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

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

API Stateflow состоит из объектов, которые представляют фактические объекты Stateflow. Например, объект API состояния типа представляет состояние Stateflow, объект API Соединения типа представляет соединение Stateflow.

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

Примечание

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

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

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

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

Правила включения задают иерархию Stateflow и иерархию объектов API Stateflow. Например, графики могут содержать состояния, но состояния не могут содержать графики. Иерархия объектов Stateflow появляется в разделе Hierarchy of Stateflow Objects. Иерархия API Stateflow состоит из этих слоев включения:

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

  • Модель — Объекты Модели типа доступны через Корневой объект Stateflow. Объекты модели эквивалентны моделям Simulink с точки зрения диаграммы Stateflow. Объекты модели могут содержать объекты Графика типа, Данных, События и сообщения.

  • График — В любом Объекте модели (модель) там может быть любым количеством объектов диаграммы. В каждом объекте Графика типа могут быть объекты состояния типа, Функции, Поля, Примечания, Данных, События, сообщения, Перехода и Соединения. Эти объекты представляют компоненты диаграммы Stateflow.

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

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

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

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

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

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

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

rt = sfroot

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

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

Что такое свойства объектов API и методы?

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

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

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

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

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

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

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

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

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

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

| | |

Похожие темы