2020-07-16 23:18:19 +01:00
|
|
|
#pragma once
|
|
|
|
|
|
|
|
|
|
#include <QObject>
|
|
|
|
|
|
|
|
|
|
#include "mcdatastream.h"
|
|
|
|
|
#include "packets.h"
|
|
|
|
|
|
|
|
|
|
class QTcpSocket;
|
|
|
|
|
class QByteArray;
|
|
|
|
|
|
|
|
|
|
class Server;
|
|
|
|
|
|
|
|
|
|
class ClosedClient : public QObject
|
|
|
|
|
{
|
|
|
|
|
Q_OBJECT
|
|
|
|
|
|
|
|
|
|
public:
|
2020-07-18 00:24:47 +02:00
|
|
|
explicit ClosedClient(std::unique_ptr<QTcpSocket> &&socket, Server &server);
|
|
|
|
|
~ClosedClient() override;
|
2020-07-16 23:18:19 +01:00
|
|
|
|
|
|
|
|
private slots:
|
|
|
|
|
void readyRead();
|
|
|
|
|
|
|
|
|
|
private:
|
|
|
|
|
void readPacket(packets::closed::serverbound::PacketType type, const QByteArray &buffer);
|
|
|
|
|
|
2020-07-18 00:24:47 +02:00
|
|
|
std::unique_ptr<QTcpSocket> m_socket;
|
2020-07-16 23:18:19 +01:00
|
|
|
Server &m_server;
|
|
|
|
|
|
|
|
|
|
McDataStream m_dataStream;
|
|
|
|
|
|
|
|
|
|
qint32 m_packetSize{};
|
|
|
|
|
};
|