// Copyright Epic Games, Inc. All Rights Reserved. // This file is automatically generated. Changes to this file may be overwritten. namespace Epic.OnlineServices.Sessions { /// /// Output parameters for the function. /// public struct SessionInviteReceivedCallbackInfo : ICallbackInfo { /// /// Context that was passed into /// public object ClientData { get; set; } /// /// The Product User ID of the user who received the invite /// public ProductUserId LocalUserId { get; set; } /// /// The Product User ID of the user who sent the invitation /// public ProductUserId TargetUserId { get; set; } /// /// Invite ID used to retrieve the actual session details /// public Utf8String InviteId { get; set; } public Result? GetResultCode() { return null; } internal void Set(ref SessionInviteReceivedCallbackInfoInternal other) { ClientData = other.ClientData; LocalUserId = other.LocalUserId; TargetUserId = other.TargetUserId; InviteId = other.InviteId; } } [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] internal struct SessionInviteReceivedCallbackInfoInternal : ICallbackInfoInternal, IGettable, ISettable, System.IDisposable { private System.IntPtr m_ClientData; private System.IntPtr m_LocalUserId; private System.IntPtr m_TargetUserId; private System.IntPtr m_InviteId; 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 ProductUserId LocalUserId { get { ProductUserId value; Helper.Get(m_LocalUserId, out value); return value; } set { Helper.Set(value, ref m_LocalUserId); } } public ProductUserId TargetUserId { get { ProductUserId value; Helper.Get(m_TargetUserId, out value); return value; } set { Helper.Set(value, ref m_TargetUserId); } } public Utf8String InviteId { get { Utf8String value; Helper.Get(m_InviteId, out value); return value; } set { Helper.Set(value, ref m_InviteId); } } public void Set(ref SessionInviteReceivedCallbackInfo other) { ClientData = other.ClientData; LocalUserId = other.LocalUserId; TargetUserId = other.TargetUserId; InviteId = other.InviteId; } public void Set(ref SessionInviteReceivedCallbackInfo? other) { if (other.HasValue) { ClientData = other.Value.ClientData; LocalUserId = other.Value.LocalUserId; TargetUserId = other.Value.TargetUserId; InviteId = other.Value.InviteId; } } public void Dispose() { Helper.Dispose(ref m_ClientData); Helper.Dispose(ref m_LocalUserId); Helper.Dispose(ref m_TargetUserId); Helper.Dispose(ref m_InviteId); } public void Get(out SessionInviteReceivedCallbackInfo output) { output = new SessionInviteReceivedCallbackInfo(); output.Set(ref this); } } }