// Copyright Epic Games, Inc. All Rights Reserved. // This file is automatically generated. Changes to this file may be overwritten. namespace Epic.OnlineServices.Leaderboards { /// /// Contains information about a single leaderboard definition /// public struct Definition { /// /// Unique ID to identify leaderboard. /// public Utf8String LeaderboardId { get; set; } /// /// Name of stat used to rank leaderboard. /// public Utf8String StatName { get; set; } /// /// Aggregation used to sort leaderboard. /// public LeaderboardAggregation Aggregation { get; set; } /// /// The POSIX timestamp for the start time, or . /// public System.DateTimeOffset? StartTime { get; set; } /// /// The POSIX timestamp for the end time, or . /// public System.DateTimeOffset? EndTime { get; set; } internal void Set(ref DefinitionInternal other) { LeaderboardId = other.LeaderboardId; StatName = other.StatName; Aggregation = other.Aggregation; StartTime = other.StartTime; EndTime = other.EndTime; } } [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] internal struct DefinitionInternal : IGettable, ISettable, System.IDisposable { private int m_ApiVersion; private System.IntPtr m_LeaderboardId; private System.IntPtr m_StatName; private LeaderboardAggregation m_Aggregation; private long m_StartTime; private long m_EndTime; public Utf8String LeaderboardId { get { Utf8String value; Helper.Get(m_LeaderboardId, out value); return value; } set { Helper.Set(value, ref m_LeaderboardId); } } public Utf8String StatName { get { Utf8String value; Helper.Get(m_StatName, out value); return value; } set { Helper.Set(value, ref m_StatName); } } public LeaderboardAggregation Aggregation { get { return m_Aggregation; } set { m_Aggregation = value; } } public System.DateTimeOffset? StartTime { get { System.DateTimeOffset? value; Helper.Get(m_StartTime, out value); return value; } set { Helper.Set(value, ref m_StartTime); } } public System.DateTimeOffset? EndTime { get { System.DateTimeOffset? value; Helper.Get(m_EndTime, out value); return value; } set { Helper.Set(value, ref m_EndTime); } } public void Set(ref Definition other) { m_ApiVersion = LeaderboardsInterface.DefinitionApiLatest; LeaderboardId = other.LeaderboardId; StatName = other.StatName; Aggregation = other.Aggregation; StartTime = other.StartTime; EndTime = other.EndTime; } public void Set(ref Definition? other) { if (other.HasValue) { m_ApiVersion = LeaderboardsInterface.DefinitionApiLatest; LeaderboardId = other.Value.LeaderboardId; StatName = other.Value.StatName; Aggregation = other.Value.Aggregation; StartTime = other.Value.StartTime; EndTime = other.Value.EndTime; } } public void Dispose() { Helper.Dispose(ref m_LeaderboardId); Helper.Dispose(ref m_StatName); } public void Get(out Definition output) { output = new Definition(); output.Set(ref this); } } }