void SocketConnection::handle_error() { got_error_ = true; read_listener_.stop(); write_listener_.stop(); packet_received( PacketPtr() ); }
void AbstractStream::packetEnqueue(AVPacket *packet) { this->m_packetMutex.lock(); this->m_packets.enqueue(PacketPtr(packet, this->deletePacket)); this->m_packetQueueSize += packet->size; this->m_packetQueueNotEmpty.wakeAll(); this->m_packetMutex.unlock(); }
PacketPtr Packet::construct(uint8_t type) { switch (type) { case 0x00: /* reserved */ return PacketPtr(); case 0x01: /* route */ return PacketPtr(new RoutingPacket()); case 0x02: /* deliver */ return PacketPtr(new DeliverPacket()); case 0x03: /* user joined */ return PacketPtr(new UserJoinedPacket()); case 0x04: /* user left */ return PacketPtr(new UserLeftPacket()); case 0x05: /* session takeover */ return PacketPtr(new SessionTakeOverPacket()); } return PacketPtr(); }