postEntry

Класс: 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