постзапись

Класс: simevents. SimulationObserver
Пакет: simevents

Задайте поведение после того, как сущность вводит блок, который имеет устройство хранения данных сущности

Синтаксис

postEntry(obj,evSrc,evData)

Описание

postEntry(obj,evSrc,evData) используется, чтобы задать поведение после того, как сущность вводит блок, который имеет устройство хранения данных сущности. Наблюдатель симуляции использует этот метод в качестве коллбэка для уведомления о событии постзаписи и обеспечивает указатели на сущность, блок и его устройство хранения данных и событие.

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

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

Объект класса SimulationObserver

Обработайте к блочной системе хранения в который вводимая сущность. Указатель будет заполнен наблюдателем симуляции.

Список указателей для блока, устройства хранения данных и сущностей. Список будет заполнен наблюдателем симуляции.

Примеры

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

Задайте прослушиватель, чтобы выполниться, когда сущность введет запоминающий элемент, такой как очередь или сервер.

function postEntry(this, evSrc, evData)
            % Override to specify listener for entry into a storage (queue/server)

            entity = evData.CurrentEntity;

            if strcmp(evData.Block.BlockPath, [this.mModel '/Have Dinner'])
                
                % Identify which table the customer is going to
                tblId = this.occupyTable(entity);
                
                % Schedule motion for this customer to the appropriate
                % table
                target = this.cTablePos(tblId, :);
                this.scheduleMotion(entity, target);
                
                % Decrement the waiting statistic
                this.updateStats(this.mTxtWaiting, this.DECREMENT);
                
            elseif strcmp(evData.Block.BlockPath, [this.mModel '/Patron Leave'])
                % Schedule motion for this entity from its current position
                % to the exit position
                if isKey(this.mEntityGlyphs, num2str(entity.ID))
                    this.scheduleMotion(entity, this.cExitPos);
                end
                
                % Schedule for the entity dot to be destroyed when it has
                % completed its pending motion
                this.scheduleMotion(entity, [NaN, NaN]);
                
            end
        end

Введенный в R2016a