// Copyright Epic Games, Inc. All Rights Reserved.
// This file is automatically generated. Changes to this file may be overwritten.
namespace Epic.OnlineServices.P2P
{
///
/// Information related to the current state of the packet queues. It is possible for the current size
/// to be larger than the maximum size if the maximum size changes or if the maximum queue size is
/// set to .
///
public class PacketQueueInfo : ISettable
{
///
/// The maximum size in bytes of the incoming packet queue
///
public ulong IncomingPacketQueueMaxSizeBytes { get; set; }
///
/// The current size in bytes of the incoming packet queue
///
public ulong IncomingPacketQueueCurrentSizeBytes { get; set; }
///
/// The current number of queued packets in the incoming packet queue
///
public ulong IncomingPacketQueueCurrentPacketCount { get; set; }
///
/// The maximum size in bytes of the outgoing packet queue
///
public ulong OutgoingPacketQueueMaxSizeBytes { get; set; }
///
/// The current size in bytes of the outgoing packet queue
///
public ulong OutgoingPacketQueueCurrentSizeBytes { get; set; }
///
/// The current amount of queued packets in the outgoing packet queue
///
public ulong OutgoingPacketQueueCurrentPacketCount { get; set; }
internal void Set(PacketQueueInfoInternal? other)
{
if (other != null)
{
IncomingPacketQueueMaxSizeBytes = other.Value.IncomingPacketQueueMaxSizeBytes;
IncomingPacketQueueCurrentSizeBytes = other.Value.IncomingPacketQueueCurrentSizeBytes;
IncomingPacketQueueCurrentPacketCount = other.Value.IncomingPacketQueueCurrentPacketCount;
OutgoingPacketQueueMaxSizeBytes = other.Value.OutgoingPacketQueueMaxSizeBytes;
OutgoingPacketQueueCurrentSizeBytes = other.Value.OutgoingPacketQueueCurrentSizeBytes;
OutgoingPacketQueueCurrentPacketCount = other.Value.OutgoingPacketQueueCurrentPacketCount;
}
}
public void Set(object other)
{
Set(other as PacketQueueInfoInternal?);
}
}
[System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)]
internal struct PacketQueueInfoInternal : ISettable, System.IDisposable
{
private ulong m_IncomingPacketQueueMaxSizeBytes;
private ulong m_IncomingPacketQueueCurrentSizeBytes;
private ulong m_IncomingPacketQueueCurrentPacketCount;
private ulong m_OutgoingPacketQueueMaxSizeBytes;
private ulong m_OutgoingPacketQueueCurrentSizeBytes;
private ulong m_OutgoingPacketQueueCurrentPacketCount;
public ulong IncomingPacketQueueMaxSizeBytes
{
get
{
return m_IncomingPacketQueueMaxSizeBytes;
}
set
{
m_IncomingPacketQueueMaxSizeBytes = value;
}
}
public ulong IncomingPacketQueueCurrentSizeBytes
{
get
{
return m_IncomingPacketQueueCurrentSizeBytes;
}
set
{
m_IncomingPacketQueueCurrentSizeBytes = value;
}
}
public ulong IncomingPacketQueueCurrentPacketCount
{
get
{
return m_IncomingPacketQueueCurrentPacketCount;
}
set
{
m_IncomingPacketQueueCurrentPacketCount = value;
}
}
public ulong OutgoingPacketQueueMaxSizeBytes
{
get
{
return m_OutgoingPacketQueueMaxSizeBytes;
}
set
{
m_OutgoingPacketQueueMaxSizeBytes = value;
}
}
public ulong OutgoingPacketQueueCurrentSizeBytes
{
get
{
return m_OutgoingPacketQueueCurrentSizeBytes;
}
set
{
m_OutgoingPacketQueueCurrentSizeBytes = value;
}
}
public ulong OutgoingPacketQueueCurrentPacketCount
{
get
{
return m_OutgoingPacketQueueCurrentPacketCount;
}
set
{
m_OutgoingPacketQueueCurrentPacketCount = value;
}
}
public void Set(PacketQueueInfo other)
{
if (other != null)
{
IncomingPacketQueueMaxSizeBytes = other.IncomingPacketQueueMaxSizeBytes;
IncomingPacketQueueCurrentSizeBytes = other.IncomingPacketQueueCurrentSizeBytes;
IncomingPacketQueueCurrentPacketCount = other.IncomingPacketQueueCurrentPacketCount;
OutgoingPacketQueueMaxSizeBytes = other.OutgoingPacketQueueMaxSizeBytes;
OutgoingPacketQueueCurrentSizeBytes = other.OutgoingPacketQueueCurrentSizeBytes;
OutgoingPacketQueueCurrentPacketCount = other.OutgoingPacketQueueCurrentPacketCount;
}
}
public void Set(object other)
{
Set(other as PacketQueueInfo);
}
public void Dispose()
{
}
}
}