raklib\server\Session::addToQueue PHP Метод

addToQueue() приватный Метод

private addToQueue ( EncapsulatedPacket $pk, integer $flags = RakLib::PRIORITY_NORMAL )
$pk raklib\protocol\EncapsulatedPacket
$flags integer
    private function addToQueue(EncapsulatedPacket $pk, $flags = RakLib::PRIORITY_NORMAL)
    {
        $priority = $flags & 0b111;
        if ($pk->needACK and $pk->messageIndex !== null) {
            $this->needACK[$pk->identifierACK][$pk->messageIndex] = $pk->messageIndex;
        }
        if ($priority === RakLib::PRIORITY_IMMEDIATE) {
            //Skip queues
            $packet = new DATA_PACKET_0();
            $packet->seqNumber = $this->sendSeqNumber++;
            if ($pk->needACK) {
                $packet->packets[] = clone $pk;
                $pk->needACK = false;
            } else {
                $packet->packets[] = $pk->toBinary();
            }
            $this->sendPacket($packet);
            $packet->sendTime = microtime(true);
            $this->recoveryQueue[$packet->seqNumber] = $packet;
            return;
        }
        $length = $this->sendQueue->length();
        if ($length + $pk->getTotalLength() > $this->mtuSize) {
            $this->sendQueue();
        }
        if ($pk->needACK) {
            $this->sendQueue->packets[] = clone $pk;
            $pk->needACK = false;
        } else {
            $this->sendQueue->packets[] = $pk->toBinary();
        }
    }