// Copyright Epic Games, Inc. All Rights Reserved. // This file is automatically generated. Changes to this file may be overwritten. namespace Epic.OnlineServices.UserInfo { /// /// Contains information about a single external user info. /// public struct ExternalUserInfo { /// /// The type of the external account /// public ExternalAccountType AccountType { get; set; } /// /// The ID of the external account. Can be null /// public Utf8String AccountId { get; set; } /// /// The display name of the external account (un-sanitized). Can be null /// public Utf8String DisplayName { get; set; } /// /// The display name of the external account (sanitized). Can be null /// public Utf8String DisplayNameSanitized { get; set; } internal void Set(ref ExternalUserInfoInternal other) { AccountType = other.AccountType; AccountId = other.AccountId; DisplayName = other.DisplayName; DisplayNameSanitized = other.DisplayNameSanitized; } } [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] internal struct ExternalUserInfoInternal : IGettable, ISettable, System.IDisposable { private int m_ApiVersion; private ExternalAccountType m_AccountType; private System.IntPtr m_AccountId; private System.IntPtr m_DisplayName; private System.IntPtr m_DisplayNameSanitized; public ExternalAccountType AccountType { get { return m_AccountType; } set { m_AccountType = value; } } public Utf8String AccountId { get { Utf8String value; Helper.Get(m_AccountId, out value); return value; } set { Helper.Set(value, ref m_AccountId); } } public Utf8String DisplayName { get { Utf8String value; Helper.Get(m_DisplayName, out value); return value; } set { Helper.Set(value, ref m_DisplayName); } } public Utf8String DisplayNameSanitized { get { Utf8String value; Helper.Get(m_DisplayNameSanitized, out value); return value; } set { Helper.Set(value, ref m_DisplayNameSanitized); } } public void Set(ref ExternalUserInfo other) { m_ApiVersion = UserInfoInterface.ExternaluserinfoApiLatest; AccountType = other.AccountType; AccountId = other.AccountId; DisplayName = other.DisplayName; DisplayNameSanitized = other.DisplayNameSanitized; } public void Set(ref ExternalUserInfo? other) { if (other.HasValue) { m_ApiVersion = UserInfoInterface.ExternaluserinfoApiLatest; AccountType = other.Value.AccountType; AccountId = other.Value.AccountId; DisplayName = other.Value.DisplayName; DisplayNameSanitized = other.Value.DisplayNameSanitized; } } public void Dispose() { Helper.Dispose(ref m_AccountId); Helper.Dispose(ref m_DisplayName); Helper.Dispose(ref m_DisplayNameSanitized); } public void Get(out ExternalUserInfo output) { output = new ExternalUserInfo(); output.Set(ref this); } } }