// Copyright Epic Games, Inc. All Rights Reserved. // This file is automatically generated. Changes to this file may be overwritten. namespace Epic.OnlineServices.Ecom { /// /// Input parameters for the function. /// public struct RedeemEntitlementsOptions { /// /// The Epic Account ID of the user who is redeeming Entitlements /// public EpicAccountId LocalUserId { get; set; } /// /// The array of Entitlements to redeem /// public Utf8String[] EntitlementIds { get; set; } } [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] internal struct RedeemEntitlementsOptionsInternal : ISettable, System.IDisposable { private int m_ApiVersion; private System.IntPtr m_LocalUserId; private uint m_EntitlementIdCount; private System.IntPtr m_EntitlementIds; public EpicAccountId LocalUserId { set { Helper.Set(value, ref m_LocalUserId); } } public Utf8String[] EntitlementIds { set { Helper.Set(value, ref m_EntitlementIds, out m_EntitlementIdCount); } } public void Set(ref RedeemEntitlementsOptions other) { m_ApiVersion = EcomInterface.RedeementitlementsApiLatest; LocalUserId = other.LocalUserId; EntitlementIds = other.EntitlementIds; } public void Set(ref RedeemEntitlementsOptions? other) { if (other.HasValue) { m_ApiVersion = EcomInterface.RedeementitlementsApiLatest; LocalUserId = other.Value.LocalUserId; EntitlementIds = other.Value.EntitlementIds; } } public void Dispose() { Helper.Dispose(ref m_LocalUserId); Helper.Dispose(ref m_EntitlementIds); } } }