// Copyright Epic Games, Inc. All Rights Reserved. // This file is automatically generated. Changes to this file may be overwritten. namespace Epic.OnlineServices.Lobby { /// /// Input parameters for the function. /// public struct LeaveLobbyOptions { /// /// The Product User ID of the local user leaving the lobby /// public ProductUserId LocalUserId { get; set; } /// /// The ID of the lobby /// public Utf8String LobbyId { get; set; } } [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] internal struct LeaveLobbyOptionsInternal : ISettable, System.IDisposable { private int m_ApiVersion; private System.IntPtr m_LocalUserId; private System.IntPtr m_LobbyId; public ProductUserId LocalUserId { set { Helper.Set(value, ref m_LocalUserId); } } public Utf8String LobbyId { set { Helper.Set(value, ref m_LobbyId); } } public void Set(ref LeaveLobbyOptions other) { m_ApiVersion = LobbyInterface.LeavelobbyApiLatest; LocalUserId = other.LocalUserId; LobbyId = other.LobbyId; } public void Set(ref LeaveLobbyOptions? other) { if (other.HasValue) { m_ApiVersion = LobbyInterface.LeavelobbyApiLatest; LocalUserId = other.Value.LocalUserId; LobbyId = other.Value.LobbyId; } } public void Dispose() { Helper.Dispose(ref m_LocalUserId); Helper.Dispose(ref m_LobbyId); } } }