// Copyright Epic Games, Inc. All Rights Reserved. // This file is automatically generated. Changes to this file may be overwritten. namespace Epic.OnlineServices.Stats { /// /// Input parameters for the function. /// public struct IngestStatOptions { /// /// The Product User ID of the local user requesting the ingest. Set to null for dedicated server. /// public ProductUserId LocalUserId { get; set; } /// /// Stats to ingest. /// public IngestData[] Stats { get; set; } /// /// The Product User ID for the user whose stat is being ingested. /// public ProductUserId TargetUserId { get; set; } } [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] internal struct IngestStatOptionsInternal : ISettable, System.IDisposable { private int m_ApiVersion; private System.IntPtr m_LocalUserId; private System.IntPtr m_Stats; private uint m_StatsCount; private System.IntPtr m_TargetUserId; public ProductUserId LocalUserId { set { Helper.Set(value, ref m_LocalUserId); } } public IngestData[] Stats { set { Helper.Set(ref value, ref m_Stats, out m_StatsCount); } } public ProductUserId TargetUserId { set { Helper.Set(value, ref m_TargetUserId); } } public void Set(ref IngestStatOptions other) { m_ApiVersion = StatsInterface.IngeststatApiLatest; LocalUserId = other.LocalUserId; Stats = other.Stats; TargetUserId = other.TargetUserId; } public void Set(ref IngestStatOptions? other) { if (other.HasValue) { m_ApiVersion = StatsInterface.IngeststatApiLatest; LocalUserId = other.Value.LocalUserId; Stats = other.Value.Stats; TargetUserId = other.Value.TargetUserId; } } public void Dispose() { Helper.Dispose(ref m_LocalUserId); Helper.Dispose(ref m_Stats); Helper.Dispose(ref m_TargetUserId); } } }