Этот пример показывает модель, вызывающую функции через Simulink® и Stateflow®. slexPrinterExample модель имеет три компьютерных клиента, совместно использующие принтер. Каждый компьютер создает задания печати путем вызывания функции Simulink addPrintJob.
В этом примере диаграмма Stateflow связывается с моделью:
Определение и экспорт графической функции, которая вызвана Simulink.
Вызывание функции Simulink, которая задана в Simulink.
open_system('slexPrinterExample');

Каждый компьютерный клиент вызывает сервер принтера с вызовом функции Simulink, addPrintJob. Вызовы функции addPrintJob графическая функция Stateflow queuePrintJob, чтобы добавить задание печати в рабочую нагрузку. График обрабатывает работу и вызывает функцию Simulink printerInk к образцовому использованию чернил принтера.
Функциональный printerInk задан в Функциональном блоке Simulink в верхнем уровне модели. Функциональный интерфейс printerInk(work) задает один входной параметр. Функция Simulink, printerInk, также взаимодействует с моделью с сигнальными линиями через импорт ink и выходной порт ink'. Busy состояния совпадает с функциональной подписью для printerInk(work) путем передачи одного входного параметра.
open_system('slexPrinterExample/Queueing and Processing Incoming Jobs')

В графике Queuing и Processing Incoming Jobs, выбраны свойства Export Chart Level Functions и Treat Exported Functions как Глобально Видимый. Эти свойства позволяют функции Simulink addPrintJob, чтобы вызвать графическую функцию графика, queuePrintJob.