// Copyright Epic Games, Inc. All Rights Reserved. // This file is automatically generated. Changes to this file may be overwritten. namespace Epic.OnlineServices.AntiCheatCommon { public struct LogEventOptions { /// /// Optional client who this event is primarily associated with. If not applicable, use 0. /// public System.IntPtr ClientHandle { get; set; } /// /// Unique event identifier previously configured in RegisterEvent /// public uint EventId { get; set; } /// /// Set of parameter types previously configured in RegisterEvent, and their values /// public LogEventParamPair[] Params { get; set; } } [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] internal struct LogEventOptionsInternal : ISettable, System.IDisposable { private int m_ApiVersion; private System.IntPtr m_ClientHandle; private uint m_EventId; private uint m_ParamsCount; private System.IntPtr m_Params; public System.IntPtr ClientHandle { set { m_ClientHandle = value; } } public uint EventId { set { m_EventId = value; } } public LogEventParamPair[] Params { set { Helper.Set(ref value, ref m_Params, out m_ParamsCount); } } public void Set(ref LogEventOptions other) { m_ApiVersion = AntiCheatCommonInterface.LogeventApiLatest; ClientHandle = other.ClientHandle; EventId = other.EventId; Params = other.Params; } public void Set(ref LogEventOptions? other) { if (other.HasValue) { m_ApiVersion = AntiCheatCommonInterface.LogeventApiLatest; ClientHandle = other.Value.ClientHandle; EventId = other.Value.EventId; Params = other.Value.Params; } } public void Dispose() { Helper.Dispose(ref m_ClientHandle); Helper.Dispose(ref m_Params); } } }