// Copyright Epic Games, Inc. All Rights Reserved.
// This file is automatically generated. Changes to this file may be overwritten.
namespace Epic.OnlineServices.Achievements
{
///
/// Contains information about a collection of stat threshold data.
///
/// The threshold will depend on the stat aggregate type:
/// LATEST (Tracks the latest value)
/// MAX (Tracks the maximum value)
/// MIN (Tracks the minimum value)
/// SUM (Generates a rolling sum of the value)
///
///
public class StatThresholds : ISettable
{
///
/// The name of the stat.
///
public string Name { get; set; }
///
/// The value that the stat must surpass to satisfy the requirement for unlocking an achievement.
///
public int Threshold { get; set; }
internal void Set(StatThresholdsInternal? other)
{
if (other != null)
{
Name = other.Value.Name;
Threshold = other.Value.Threshold;
}
}
public void Set(object other)
{
Set(other as StatThresholdsInternal?);
}
}
[System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)]
internal struct StatThresholdsInternal : ISettable, System.IDisposable
{
private int m_ApiVersion;
private System.IntPtr m_Name;
private int m_Threshold;
public string Name
{
get
{
string value;
Helper.TryMarshalGet(m_Name, out value);
return value;
}
set
{
Helper.TryMarshalSet(ref m_Name, value);
}
}
public int Threshold
{
get
{
return m_Threshold;
}
set
{
m_Threshold = value;
}
}
public void Set(StatThresholds other)
{
if (other != null)
{
m_ApiVersion = AchievementsInterface.StatthresholdsApiLatest;
Name = other.Name;
Threshold = other.Threshold;
}
}
public void Set(object other)
{
Set(other as StatThresholds);
}
public void Dispose()
{
Helper.TryMarshalDispose(ref m_Name);
}
}
}