// Copyright Epic Games, Inc. All Rights Reserved. // This file is automatically generated. Changes to this file may be overwritten. namespace Epic.OnlineServices.AntiCheatCommon { /// /// Structure containing details about a new message that must be dispatched to a connected client/peer. /// public struct OnMessageToClientCallbackInfo : ICallbackInfo { /// /// Caller-specified context data /// public object ClientData { get; set; } /// /// The identifier of the client/peer that this message must be delivered to. See the RegisterClient and RegisterPeer functions. /// public System.IntPtr ClientHandle { get; set; } /// /// The message data that must be sent to the client /// public System.ArraySegment MessageData { get; set; } public Result? GetResultCode() { return null; } internal void Set(ref OnMessageToClientCallbackInfoInternal other) { ClientData = other.ClientData; ClientHandle = other.ClientHandle; MessageData = other.MessageData; } } [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] internal struct OnMessageToClientCallbackInfoInternal : ICallbackInfoInternal, IGettable, ISettable, System.IDisposable { private System.IntPtr m_ClientData; private System.IntPtr m_ClientHandle; private System.IntPtr m_MessageData; private uint m_MessageDataSizeBytes; public object ClientData { get { object value; Helper.Get(m_ClientData, out value); return value; } set { Helper.Set(value, ref m_ClientData); } } public System.IntPtr ClientDataAddress { get { return m_ClientData; } } public System.IntPtr ClientHandle { get { return m_ClientHandle; } set { m_ClientHandle = value; } } public System.ArraySegment MessageData { get { System.ArraySegment value; Helper.Get(m_MessageData, out value, m_MessageDataSizeBytes); return value; } set { Helper.Set(value, ref m_MessageData, out m_MessageDataSizeBytes); } } public void Set(ref OnMessageToClientCallbackInfo other) { ClientData = other.ClientData; ClientHandle = other.ClientHandle; MessageData = other.MessageData; } public void Set(ref OnMessageToClientCallbackInfo? other) { if (other.HasValue) { ClientData = other.Value.ClientData; ClientHandle = other.Value.ClientHandle; MessageData = other.Value.MessageData; } } public void Dispose() { Helper.Dispose(ref m_ClientData); Helper.Dispose(ref m_ClientHandle); Helper.Dispose(ref m_MessageData); } public void Get(out OnMessageToClientCallbackInfo output) { output = new OnMessageToClientCallbackInfo(); output.Set(ref this); } } }