// Copyright Epic Games, Inc. All Rights Reserved. // This file is automatically generated. Changes to this file may be overwritten. namespace Epic.OnlineServices.Auth { /// /// Intermediate data needed to complete the and login flows, returned by . /// The data inside should be exposed to the user for entry on a secondary device. /// All data must be copied out before the completion of this callback. /// public struct PinGrantInfo { /// /// Code the user must input on an external device to activate the login /// public Utf8String UserCode { get; set; } /// /// The end-user verification URI. Users can be asked to manually type this into their browser. /// public Utf8String VerificationURI { get; set; } /// /// Time the user has, in seconds, to complete the process or else timeout /// public int ExpiresIn { get; set; } /// /// A verification URI that includes the user code. Useful for non-textual transmission. /// public Utf8String VerificationURIComplete { get; set; } internal void Set(ref PinGrantInfoInternal other) { UserCode = other.UserCode; VerificationURI = other.VerificationURI; ExpiresIn = other.ExpiresIn; VerificationURIComplete = other.VerificationURIComplete; } } [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] internal struct PinGrantInfoInternal : IGettable, ISettable, System.IDisposable { private int m_ApiVersion; private System.IntPtr m_UserCode; private System.IntPtr m_VerificationURI; private int m_ExpiresIn; private System.IntPtr m_VerificationURIComplete; public Utf8String UserCode { get { Utf8String value; Helper.Get(m_UserCode, out value); return value; } set { Helper.Set(value, ref m_UserCode); } } public Utf8String VerificationURI { get { Utf8String value; Helper.Get(m_VerificationURI, out value); return value; } set { Helper.Set(value, ref m_VerificationURI); } } public int ExpiresIn { get { return m_ExpiresIn; } set { m_ExpiresIn = value; } } public Utf8String VerificationURIComplete { get { Utf8String value; Helper.Get(m_VerificationURIComplete, out value); return value; } set { Helper.Set(value, ref m_VerificationURIComplete); } } public void Set(ref PinGrantInfo other) { m_ApiVersion = AuthInterface.PingrantinfoApiLatest; UserCode = other.UserCode; VerificationURI = other.VerificationURI; ExpiresIn = other.ExpiresIn; VerificationURIComplete = other.VerificationURIComplete; } public void Set(ref PinGrantInfo? other) { if (other.HasValue) { m_ApiVersion = AuthInterface.PingrantinfoApiLatest; UserCode = other.Value.UserCode; VerificationURI = other.Value.VerificationURI; ExpiresIn = other.Value.ExpiresIn; VerificationURIComplete = other.Value.VerificationURIComplete; } } public void Dispose() { Helper.Dispose(ref m_UserCode); Helper.Dispose(ref m_VerificationURI); Helper.Dispose(ref m_VerificationURIComplete); } public void Get(out PinGrantInfo output) { output = new PinGrantInfo(); output.Set(ref this); } } }