timer

Класс: mATLAB.
Пакет: mATLAB

Действие события, когда таймер завершается

Синтаксис

[entity,events]=timer(obj,storage,entity,tag)
[entity,events,out1,...]=timer(obj,storage,entity,tag,in1,...)

Описание

[entity,events]=timer(obj,storage,entity,tag) задает действия события для того, когда запланированный таймер завершается.

[entity,events,out1,...]=timer(obj,storage,entity,tag,in1,...) задает такие действия события, когда блок имеет один или несколько портов входного сигнала и/или выходных портов сигнала.

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

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

Объект Discrete-event System.

Индекс запоминающего элемента.

Сущность для события таймера. Сущность имеет эти поля:

  • sys (MATLAB structure) — Это имеет эти поля:

    • id 'double') — ID сущности

    • priority 'double') — Приоритет сущности

  • data — Данные сущности

Тег события таймера выполняющегося в данного момента.

Любые вводы данных объекта. Эти входные параметры существуют только, когда объект имеет вводы данных.

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

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

Сущность с измененным значением.

События, которые будут запланированы после метода, возвращаются. Используйте matlab.DiscreteEventSystem методы класса создать события. Каждое событие имеет эти поля:

  • type Символьный вектор) — Тип события

  • delay 'double') — Задерживаются перед событием

  • priority 'double') — Приоритет события

  • Storage 'double') — Индекс запоминающего элемента

  • tag Символьный вектор) — Тег события

  • location (MATLAB structure) — Источник или целевое местоположение сущности

Выводы данных объекта. Необходимо задать эти выходные аргументы, когда объект имеет выводы данных.

Примеры

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

Передайте сущность, когда таймер завершится для объекта obj дискретной системы событий.

function [entity,events] = timer(obj,storage,entity,tag)
    % Check which timer of the entity has expired, and forward the
    % entity to the next location accordingly.
    switch tag
        case 'ServiceComplete'
            entity.done = 1;
            events = obj.eventForward('output', 1, 0);                    
        case 'Timeout'
            entity.done = 0; 
            events = obj.eventForward('storage', 2, 0);
    end
end

Введенный в R2016a