// Copyright Epic Games, Inc. All Rights Reserved. // This file is automatically generated. Changes to this file may be overwritten. namespace Epic.OnlineServices.Lobby { /// /// Contains information about lobby and lobby member data /// public class AttributeData : ISettable { /// /// Name of the lobby attribute /// public string Key { get; set; } public AttributeDataValue Value { get; set; } internal void Set(AttributeDataInternal? other) { if (other != null) { Key = other.Value.Key; Value = other.Value.Value; } } public void Set(object other) { Set(other as AttributeDataInternal?); } } [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] internal struct AttributeDataInternal : ISettable, System.IDisposable { private int m_ApiVersion; private System.IntPtr m_Key; private AttributeDataValueInternal m_Value; public string Key { get { string value; Helper.TryMarshalGet(m_Key, out value); return value; } set { Helper.TryMarshalSet(ref m_Key, value); } } public AttributeDataValue Value { get { AttributeDataValue value; Helper.TryMarshalGet(m_Value, out value); return value; } set { Helper.TryMarshalSet(ref m_Value, value); } } public void Set(AttributeData other) { if (other != null) { m_ApiVersion = LobbyInterface.AttributedataApiLatest; Key = other.Key; Value = other.Value; } } public void Set(object other) { Set(other as AttributeData); } public void Dispose() { Helper.TryMarshalDispose(ref m_Key); Helper.TryMarshalDispose(ref m_Value); } } }