// Copyright Epic Games, Inc. All Rights Reserved. // This file is automatically generated. Changes to this file may be overwritten. namespace Epic.OnlineServices.Achievements { /// /// Input parameters for the function. /// public struct UnlockAchievementsOptions { /// /// The Product User ID for the user whose achievements we want to unlock. /// public ProductUserId UserId { get; set; } /// /// An array of Achievement IDs to unlock. /// public Utf8String[] AchievementIds { get; set; } } [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] internal struct UnlockAchievementsOptionsInternal : ISettable, System.IDisposable { private int m_ApiVersion; private System.IntPtr m_UserId; private System.IntPtr m_AchievementIds; private uint m_AchievementsCount; public ProductUserId UserId { set { Helper.Set(value, ref m_UserId); } } public Utf8String[] AchievementIds { set { Helper.Set(value, ref m_AchievementIds, true, out m_AchievementsCount); } } public void Set(ref UnlockAchievementsOptions other) { m_ApiVersion = AchievementsInterface.UnlockachievementsApiLatest; UserId = other.UserId; AchievementIds = other.AchievementIds; } public void Set(ref UnlockAchievementsOptions? other) { if (other.HasValue) { m_ApiVersion = AchievementsInterface.UnlockachievementsApiLatest; UserId = other.Value.UserId; AchievementIds = other.Value.AchievementIds; } } public void Dispose() { Helper.Dispose(ref m_UserId); Helper.Dispose(ref m_AchievementIds); } } }