namespace QCRPG.Framework;

public class OutgoingPacketData : PacketData, IDeepCopyable<OutgoingPacketData>
{
	public OutgoingPacketData(byte[] bytes, bool performHexAsciiConversion = false)
		: base(bytes, performHexAsciiConversion)
	{
	}

	public OutgoingPacketData(byte[] bytes, int length, bool performHexAsciiConversion = false)
		: base(bytes, length, performHexAsciiConversion)
	{
	}

	public OutgoingPacketData(PacketDataType type, byte b)
		: base(type, b)
	{
	}

	public OutgoingPacketData(PacketDataType type, byte[] bytes)
		: base(type, bytes)
	{
	}

	public OutgoingPacketData(PacketDataType type, string s)
		: base(type, s)
	{
	}

	public new virtual OutgoingPacketData DeepCopy()
	{
		OutgoingPacketData outgoingPacketData = new OutgoingPacketData(type, bytes);
		outgoingPacketData.suppressRawByteLogging = suppressRawByteLogging;
		outgoingPacketData.skipReceiveEnqueue = skipReceiveEnqueue;
		return outgoingPacketData;
	}
}
