diff --git a/BidirectionalDictionary.cs.meta b/BidirectionalDictionary.cs.meta new file mode 100644 index 00000000..3ec7ec6e --- /dev/null +++ b/BidirectionalDictionary.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: cc6ca8a3d04a86643a1850637ea2149b +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Client.cs.meta b/Client.cs.meta new file mode 100644 index 00000000..e8dd8b5a --- /dev/null +++ b/Client.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: da6dd127548ffec44bac84a182dad080 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Common.cs.meta b/Common.cs.meta new file mode 100644 index 00000000..10e15f7d --- /dev/null +++ b/Common.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: c04a0117f9769fb4b81d8ef911740d95 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/DevAuthTool.meta b/DevAuthTool.meta new file mode 100644 index 00000000..d760ecca --- /dev/null +++ b/DevAuthTool.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 49a600a9a9638fb4e88fff9af13c2d3d +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK.meta b/EOSSDK.meta new file mode 100644 index 00000000..36519356 --- /dev/null +++ b/EOSSDK.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: ed34d0299171cfe40bcf917e23161e11 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Core/Config.cs b/EOSSDK/Core/Config.cs index 794f2d64..2ca826c7 100644 --- a/EOSSDK/Core/Config.cs +++ b/EOSSDK/Core/Config.cs @@ -1,32 +1,96 @@ // Copyright Epic Games, Inc. All Rights Reserved. -//#define PLATFORM_32BITS -//#define PLATFORM_64BITS +#if DEBUG + #define EOS_DEBUG +#endif + +#if UNITY_EDITOR + #define EOS_EDITOR +#endif -#if (UNITY_EDITOR_WIN || UNITY_STANDALONE_WIN) && UNITY_64 - #define PLATFORM_64BITS -#elif (UNITY_EDITOR_WIN || UNITY_STANDALONE_WIN) - #define PLATFORM_32BITS +#if UNITY_EDITOR || UNITY_STANDALONE || UNITY_PS4 || UNITY_XBOXONE || UNITY_SWITCH || UNITY_IOS || UNITY_ANDROID + #define EOS_UNITY #endif +#if UNITY_EDITOR_WIN || UNITY_STANDALONE_WIN || PLATFORM_64BITS || PLATFORM_32BITS + #if UNITY_EDITOR_WIN || UNITY_64 || PLATFORM_64BITS + #define EOS_PLATFORM_WINDOWS_64 + #else + #define EOS_PLATFORM_WINDOWS_32 + #endif + +#elif UNITY_EDITOR_OSX || UNITY_STANDALONE_OSX + #define EOS_PLATFORM_OSX + +#elif UNITY_EDITOR_LINUX || UNITY_STANDALONE_LINUX + #define EOS_PLATFORM_LINUX + +#elif UNITY_PS4 + #define EOS_PLATFORM_PS4 + +#elif UNITY_XBOXONE + #define EOS_PLATFORM_XBOXONE + +#elif UNITY_SWITCH + #define EOS_PLATFORM_SWITCH + +#elif UNITY_IOS || __IOS__ + #define EOS_PLATFORM_IOS + +#elif UNITY_ANDROID || __ANDROID__ + #define EOS_PLATFORM_ANDROID + +#endif + +using System.Runtime.InteropServices; + namespace Epic.OnlineServices { - internal static class Config + public static class Config { - public const string BinaryName = - #if (UNITY_EDITOR_OSX || UNITY_STANDALONE_OSX) - "libEOSSDK-Mac-Shipping" - #elif (UNITY_EDITOR_WIN || UNITY_STANDALONE_WIN) && PLATFORM_64BITS - "EOSSDK-Win64-Shipping" - #elif (UNITY_EDITOR_WIN || UNITY_STANDALONE_WIN) && PLATFORM_32BITS + public const string LibraryName = + #if EOS_PLATFORM_WINDOWS_32 && EOS_UNITY "EOSSDK-Win32-Shipping" - #elif PLATFORM_64BITS - "EOSSDK-Win64-Shipping.dll" - #elif PLATFORM_32BITS + #elif EOS_PLATFORM_WINDOWS_32 "EOSSDK-Win32-Shipping.dll" + + #elif EOS_PLATFORM_WINDOWS_64 && EOS_UNITY + "EOSSDK-Win64-Shipping" + #elif EOS_PLATFORM_WINDOWS_64 + "EOSSDK-Win64-Shipping.dll" + + #elif EOS_PLATFORM_OSX && EOS_UNITY + "libEOSSDK-Mac-Shipping" + #elif EOS_PLATFORM_OSX + "libEOSSDK-Mac-Shipping.dylib" + + #elif EOS_PLATFORM_LINUX && EOS_UNITY + "EOSSDK-Linux-Shipping" + #elif EOS_PLATFORM_LINUX + "EOSSDK-Linux-Shipping.so" + + #elif EOS_PLATFORM_IOS && EOS_UNITY && !EOS_EDITOR + "__Internal" + #elif EOS_PLATFORM_IOS && EOS_UNITY + "EOSSDK" + #elif EOS_PLATFORM_IOS + "EOSSDK.framework/EOSSDK" + + #elif EOS_PLATFORM_ANDROID + "EOSSDK" + #else - #error Unable to determine EOSSDK binary name. Ensure compilation symbols PLATFORM_32BITS and PLATFORM_64BITS have been set accordingly. + #error Unable to determine the name of the EOSSDK library. Ensure you have set the correct EOS compilation symbol for the current platform, such as EOS_PLATFORM_WINDOWS_32 or EOS_PLATFORM_WINDOWS_64, so that the correct EOSSDK library can be targeted. "EOSSDK-UnknownPlatform-Shipping" + + #endif + ; + + public const CallingConvention LibraryCallingConvention = + #if EOS_PLATFORM_WINDOWS_32 + CallingConvention.StdCall + #else + CallingConvention.Cdecl #endif ; } diff --git a/EOSSDK/Core/Helper.cs b/EOSSDK/Core/Helper.cs index c7cc11c5..4023211b 100644 --- a/EOSSDK/Core/Helper.cs +++ b/EOSSDK/Core/Helper.cs @@ -19,46 +19,54 @@ public AllocationException(string message) internal class ExternalAllocationException : AllocationException { public ExternalAllocationException(IntPtr address, Type type) - : base(string.Format("Attempting to allocate {0} over externally allocated memory at {1}", type, address.ToString("X"))) + : base(string.Format("Attempting to allocate '{0}' over externally allocated memory at {1}", type, address.ToString("X"))) { } } - internal class TypeAllocationException : AllocationException + internal class CachedTypeAllocationException : AllocationException { - public TypeAllocationException(IntPtr address, Type foundType, Type expectedType) - : base(string.Format("Found allocation of {0} but expected {1} at {2}", foundType, expectedType, address.ToString("X"))) + public CachedTypeAllocationException(IntPtr address, Type foundType, Type expectedType) + : base(string.Format("Cached allocation is '{0}' but expected '{1}' at {2}", foundType, expectedType, address.ToString("X"))) { } } - internal class ArrayAllocationException : AllocationException + internal class CachedArrayAllocationException : AllocationException { - public ArrayAllocationException(IntPtr address, int foundLength, int expectedLength) - : base(string.Format("Found array allocation with length {0} but expected {1} at {2}", foundLength, expectedLength, address.ToString("X"))) + public CachedArrayAllocationException(IntPtr address, int foundLength, int expectedLength) + : base(string.Format("Cached array allocation has length {0} but expected {1} at {2}", foundLength, expectedLength, address.ToString("X"))) + { + } + } + + internal class DynamicBindingException : Exception + { + public DynamicBindingException(string bindingName) + : base(string.Format("Failed to hook dynamic binding for '{0}'", bindingName)) { } } public static class Helper { - private class Allocation + internal class Allocation { - public object Data { get; private set; } + public int Size { get; private set; } + + public object CachedData { get; private set; } - public Allocation(object data) + public bool? IsCachedArrayElementAllocated { get; private set; } + + public Allocation(int size) { - Data = data; + Size = size; } - } - private class ArrayAllocation : Allocation - { - public bool IsElementAllocated { get; private set; } - - public ArrayAllocation(object data, bool isElementAllocated) : base(data) + public void SetCachedData(object data, bool? isCachedArrayElementAllocated = null) { - IsElementAllocated = isElementAllocated; + CachedData = data; + IsCachedArrayElementAllocated = isCachedArrayElementAllocated; } } @@ -90,36 +98,9 @@ public static int GetAllocationCount() return s_Allocations.Count; } - /// - /// Checks whether the given result indicates that the operation has completed. Some operations may callback with a result indicating that they will callback again. - /// - /// The result to check. - /// Whether the operation has completed or not. - public static bool IsOperationComplete(Result result) - { - int isOperationCompleteInt = EOS_EResult_IsOperationComplete(result); - - bool isOperationComplete; - TryMarshalGet(isOperationCompleteInt, out isOperationComplete); - return isOperationComplete; - } - - [DllImport(Config.BinaryName)] - private static extern int EOS_EResult_IsOperationComplete(Result result); - - /// - /// Converts a byte array into a hex string, e.g. "A56904FF". - /// - /// The byte array to convert. - /// A hex string, e.g. "A56904FF". - public static string ToHexString(byte[] byteArray) - { - return string.Join("", byteArray.Select(b => string.Format("{0:X2}", b)).ToArray()); - } - // These functions are the front end when changing SDK values into wrapper values. // They will either fetch or convert; whichever is most appropriate for the source and target types. - #region Marshal Getters +#region Marshal Getters internal static bool TryMarshalGet(T[] source, out uint target) { return TryConvert(source, out target); @@ -131,11 +112,22 @@ internal static bool TryMarshalGet(IntPtr source, out T target) return TryConvert(source, out target); } + internal static bool TryMarshalGet(TSource source, out TTarget target) + where TTarget : ISettable, new() + { + return TryConvert(source, out target); + } + internal static bool TryMarshalGet(int source, out bool target) { return TryConvert(source, out target); } + internal static bool TryMarshalGet(bool source, out int target) + { + return TryConvert(source, out target); + } + internal static bool TryMarshalGet(long source, out DateTimeOffset? target) { return TryConvert(source, out target); @@ -234,6 +226,19 @@ internal static bool TryMarshalGet(T source, out T target, TEnum curre return false; } + internal static bool TryMarshalGet(ISettable source, out TTarget target, TEnum currentEnum, TEnum comparisonEnum) + where TTarget : ISettable, new() + { + target = GetDefault(); + + if ((int)(object)currentEnum == (int)(object)comparisonEnum) + { + return TryConvert(source, out target); + } + + return false; + } + internal static bool TryMarshalGet(int source, out bool? target, TEnum currentEnum, TEnum comparisonEnum) { target = GetDefault(); @@ -278,6 +283,18 @@ internal static bool TryMarshalGet(IntPtr source, out T target, TEnum return false; } + internal static bool TryMarshalGet(IntPtr source, out IntPtr? target, TEnum currentEnum, TEnum comparisonEnum) + { + target = GetDefault(); + + if ((int)(object)currentEnum == (int)(object)comparisonEnum) + { + return TryMarshalGet(source, out target); + } + + return false; + } + internal static bool TryMarshalGet(IntPtr source, out string target, TEnum currentEnum, TEnum comparisonEnum) { target = GetDefault(); @@ -311,15 +328,6 @@ internal static bool TryMarshalGet(IntPtr source, out TPubli return false; } - internal static bool TryMarshalGet(TInternal source, out TPublic target) - where TInternal : struct - where TPublic : class, ISettable, new() - { - target = new TPublic(); - target.Set(source); - return true; - } - internal static bool TryMarshalGet(IntPtr callbackInfoAddress, out TCallbackInfo callbackInfo, out IntPtr clientDataAddress) where TCallbackInfoInternal : struct, ICallbackInfoInternal where TCallbackInfo : class, ISettable, new() @@ -339,11 +347,11 @@ internal static bool TryMarshalGet(IntPtr return false; } - #endregion +#endregion // These functions are the front end for changing wrapper values into SDK values. // They will either allocate or convert; whichever is most appropriate for the source and target types. - #region Marshal Setters +#region Marshal Setters internal static bool TryMarshalSet(ref T target, T source) { target = source; @@ -446,6 +454,23 @@ internal static bool TryMarshalSet(ref T target, T source, ref TEnum c return false; } + internal static bool TryMarshalSet(ref TTarget target, ISettable source, ref TEnum currentEnum, TEnum comparisonEnum, IDisposable disposable = null) + where TTarget : ISettable, new() + { + if (source != null) + { + TryMarshalDispose(ref disposable); + + if (TryConvert(source, out target)) + { + currentEnum = comparisonEnum; + return true; + } + } + + return false; + } + internal static bool TryMarshalSet(ref T target, T? source, ref TEnum currentEnum, TEnum comparisonEnum, IDisposable disposable = null) where T : struct { @@ -625,24 +650,27 @@ internal static bool TryMarshalCopy(IntPtr target, byte[] source) return false; } - internal static bool TryMarshalAllocate(ref IntPtr target, int length) + internal static bool TryMarshalAllocate(ref IntPtr target, int size, out Allocation allocation) { TryMarshalDispose(ref target); - target = Marshal.AllocHGlobal(length); + target = Marshal.AllocHGlobal(size); Marshal.WriteByte(target, 0, 0); + allocation = new Allocation(size); + s_Allocations.Add(target, allocation); + return true; } - internal static bool TryMarshalAllocate(ref IntPtr target, uint length) + internal static bool TryMarshalAllocate(ref IntPtr target, uint size, out Allocation allocation) { - return TryMarshalAllocate(ref target, (int)length); + return TryMarshalAllocate(ref target, (int)size, out allocation); } - #endregion +#endregion // These functions are the front end for disposing of unmanaged memory that this wrapper has allocated. - #region Marshal Disposers +#region Marshal Disposers internal static bool TryMarshalDispose(ref TDisposable disposable) where TDisposable : IDisposable { @@ -669,10 +697,10 @@ internal static bool TryMarshalDispose(ref IntPtr member, TEnum currentEn return false; } - #endregion +#endregion // These functions are exposed to the wrapper to generally streamline blocks of generated code. - #region Helpers +#region Helpers internal static T GetDefault() { return default(T); @@ -761,11 +789,11 @@ internal static bool TryGetStructCallback(ref IntPtr target, T source) { TryRelease(ref target); @@ -780,9 +808,14 @@ private static bool TryAllocate(ref IntPtr target, T source) return false; } - TryMarshalAllocate(ref target, Marshal.SizeOf(typeof(T))); + Allocation allocation; + if (!TryMarshalAllocate(ref target, Marshal.SizeOf(typeof(T)), out allocation)) + { + return false; + } + + allocation.SetCachedData(source); Marshal.StructureToPtr(source, target, false); - s_Allocations.Add(target, new Allocation(source)); return true; } @@ -853,8 +886,13 @@ private static bool TryAllocate(ref IntPtr target, T[] source, bool isElement } // Allocate the array - TryMarshalAllocate(ref target, source.Length * itemSize); - s_Allocations.Add(target, new ArrayAllocation(source, isElementAllocated)); + Allocation allocation; + if (!TryMarshalAllocate(ref target, source.Length * itemSize, out allocation)) + { + return false; + } + + allocation.SetCachedData(source, isElementAllocated); for (int itemIndex = 0; itemIndex < source.Length; ++itemIndex) { @@ -908,16 +946,21 @@ private static bool TryAllocateCacheOnly(ref IntPtr target, T source) } // The source should always be fetched directly from our cache, so the allocation is arbitrary. - TryMarshalAllocate(ref target, 1); - s_Allocations.Add(target, new Allocation(source)); + Allocation allocation; + if (!TryMarshalAllocate(ref target, 1, out allocation)) + { + return false; + } + + allocation.SetCachedData(source); return true; } - #endregion +#endregion // These functions are used for releasing unmanaged memory. // They should not be exposed outside of this helper. - #region Private Releasers +#region Private Releasers private static bool TryRelease(ref IntPtr target) { if (target == IntPtr.Zero) @@ -931,25 +974,23 @@ private static bool TryRelease(ref IntPtr target) return false; } - if (allocation is ArrayAllocation) + if (allocation.IsCachedArrayElementAllocated.HasValue) { - ArrayAllocation arrayAllocation = allocation as ArrayAllocation; - var itemSize = 0; - if (arrayAllocation.IsElementAllocated) + if (allocation.IsCachedArrayElementAllocated.Value) { itemSize = Marshal.SizeOf(typeof(IntPtr)); } else { - itemSize = Marshal.SizeOf(arrayAllocation.Data.GetType().GetElementType()); + itemSize = Marshal.SizeOf(allocation.CachedData.GetType().GetElementType()); } - var array = arrayAllocation.Data as Array; + var array = allocation.CachedData as Array; for (int itemIndex = 0; itemIndex < array.Length; ++itemIndex) { - if (arrayAllocation.IsElementAllocated) + if (allocation.IsCachedArrayElementAllocated.Value) { var itemAddress = new IntPtr(target.ToInt64() + itemIndex * itemSize); itemAddress = Marshal.ReadIntPtr(itemAddress); @@ -970,9 +1011,9 @@ private static bool TryRelease(ref IntPtr target) } } - if (allocation.Data is IDisposable) + if (allocation.CachedData is IDisposable) { - var disposable = allocation.Data as IDisposable; + var disposable = allocation.CachedData as IDisposable; if (disposable != null) { disposable.Dispose(); @@ -985,11 +1026,11 @@ private static bool TryRelease(ref IntPtr target) return true; } - #endregion +#endregion // These functions are used for fetching unmanaged memory. // They should not be exposed outside of this helper. - #region Private Fetchers +#region Private Fetchers private static bool TryFetch(IntPtr source, out T target) { target = GetDefault(); @@ -999,17 +1040,21 @@ private static bool TryFetch(IntPtr source, out T target) return false; } + // If this is an allocation containing cached data, we should be able to fetch it from the cache if (s_Allocations.ContainsKey(source)) { Allocation allocation = s_Allocations[source]; - if (allocation.Data.GetType() == typeof(T)) + if (allocation.CachedData != null) { - target = (T)allocation.Data; - return true; - } - else - { - throw new TypeAllocationException(source, allocation.Data.GetType(), typeof(T)); + if (allocation.CachedData.GetType() == typeof(T)) + { + target = (T)allocation.CachedData; + return true; + } + else + { + throw new CachedTypeAllocationException(source, allocation.CachedData.GetType(), typeof(T)); + } } } @@ -1027,17 +1072,21 @@ private static bool TryFetch(IntPtr source, out T? target) return false; } + // If this is an allocation containing cached data, we should be able to fetch it from the cache if (s_Allocations.ContainsKey(source)) { Allocation allocation = s_Allocations[source]; - if (allocation.Data.GetType() == typeof(T)) - { - target = (T?)allocation.Data; - return true; - } - else + if (allocation.CachedData != null) { - throw new TypeAllocationException(source, allocation.Data.GetType(), typeof(T)); + if (allocation.CachedData.GetType() == typeof(T)) + { + target = (T?)allocation.CachedData; + return true; + } + else + { + throw new CachedTypeAllocationException(source, allocation.CachedData.GetType(), typeof(T)); + } } } @@ -1054,27 +1103,30 @@ private static bool TryFetch(IntPtr source, out T[] target, int arrayLength, return false; } - // Try to retrieve the array from our allocation cache + // If this is an allocation containing cached data, we should be able to fetch it from the cache if (s_Allocations.ContainsKey(source)) { Allocation allocation = s_Allocations[source]; - if (allocation.Data.GetType() == typeof(T[])) + if (allocation.CachedData != null) { - var cachedArray = (Array)allocation.Data; - if (cachedArray.Length == arrayLength) + if (allocation.CachedData.GetType() == typeof(T[])) { - target = cachedArray as T[]; - return true; + var cachedArray = (Array)allocation.CachedData; + if (cachedArray.Length == arrayLength) + { + target = cachedArray as T[]; + return true; + } + else + { + throw new CachedArrayAllocationException(source, cachedArray.Length, arrayLength); + } } else { - throw new ArrayAllocationException(source, cachedArray.Length, arrayLength); + throw new CachedTypeAllocationException(source, allocation.CachedData.GetType(), typeof(T[])); } } - else - { - throw new TypeAllocationException(source, allocation.Data.GetType(), typeof(T[])); - } } var itemSize = 0; @@ -1129,11 +1181,11 @@ private static bool TryFetch(IntPtr source, out string target) return true; } - #endregion +#endregion // These functions are used for converting managed memory. // They should not be exposed outside of this helper. - #region Private Converters +#region Private Converters private static bool TryConvert(IntPtr source, out THandle target) where THandle : Handle, new() { @@ -1303,10 +1355,10 @@ private static bool TryConvert(long source, out DateTimeOffset? target) return true; } - #endregion +#endregion // These functions exist to further streamline blocks of generated code. - #region Private Helpers +#region Private Helpers private static bool CanRemoveCallback(IntPtr clientDataAddress, TCallbackInfo callbackInfo) where TCallbackInfo : ICallbackInfo { @@ -1321,7 +1373,7 @@ private static bool CanRemoveCallback(IntPtr clientDataAddress, T if (callbackInfo.GetResultCode().HasValue) { - return IsOperationComplete(callbackInfo.GetResultCode().Value); + return Common.IsOperationComplete(callbackInfo.GetResultCode().Value); } return true; @@ -1384,6 +1436,6 @@ private static bool TryGetStructCallback(IntPtr clientDataAddress, ou return false; } - #endregion +#endregion } } \ No newline at end of file diff --git a/EOSSDK/Core/HelperExtensions.cs b/EOSSDK/Core/HelperExtensions.cs index ee36655e..b7e79cfa 100644 --- a/EOSSDK/Core/HelperExtensions.cs +++ b/EOSSDK/Core/HelperExtensions.cs @@ -11,7 +11,7 @@ public static class HelperExtensions /// Whether the operation has completed or not. public static bool IsOperationComplete(this Result result) { - return Helper.IsOperationComplete(result); + return Common.IsOperationComplete(result); } /// @@ -21,7 +21,7 @@ public static bool IsOperationComplete(this Result result) /// A hex string, e.g. "A56904FF". public static string ToHexString(this byte[] byteArray) { - return Helper.ToHexString(byteArray); + return Common.ToString(byteArray); } } } \ No newline at end of file diff --git a/EOSSDK/EOSSDK-Win32-Shipping.dll b/EOSSDK/EOSSDK-Win32-Shipping.dll new file mode 100644 index 00000000..449eaf0f Binary files /dev/null and b/EOSSDK/EOSSDK-Win32-Shipping.dll differ diff --git a/EOSSDK/EOSSDK-Win32-Shipping.dll.meta b/EOSSDK/EOSSDK-Win32-Shipping.dll.meta new file mode 100644 index 00000000..806feb83 --- /dev/null +++ b/EOSSDK/EOSSDK-Win32-Shipping.dll.meta @@ -0,0 +1,27 @@ +fileFormatVersion: 2 +guid: 212a14d72c7c990469798ff9623cf288 +PluginImporter: + externalObjects: {} + serializedVersion: 2 + iconMap: {} + executionOrder: {} + defineConstraints: [] + isPreloaded: 0 + isOverridable: 0 + isExplicitlyReferenced: 0 + validateReferences: 1 + platformData: + - first: + Any: + second: + enabled: 1 + settings: {} + - first: + Editor: Editor + second: + enabled: 0 + settings: + DefaultValueInitialized: true + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/EOSSDK-Win64-Shipping.dll b/EOSSDK/EOSSDK-Win64-Shipping.dll index 6e55b513..9073f8ba 100644 Binary files a/EOSSDK/EOSSDK-Win64-Shipping.dll and b/EOSSDK/EOSSDK-Win64-Shipping.dll differ diff --git a/EOSSDK/Generated/Achievements/AchievementsInterface.cs b/EOSSDK/Generated/Achievements/AchievementsInterface.cs index f0c61e32..5e2bb747 100644 --- a/EOSSDK/Generated/Achievements/AchievementsInterface.cs +++ b/EOSSDK/Generated/Achievements/AchievementsInterface.cs @@ -3,7 +3,7 @@ namespace Epic.OnlineServices.Achievements { - public sealed class AchievementsInterface : Handle + public sealed partial class AchievementsInterface : Handle { public AchievementsInterface() { @@ -61,12 +61,12 @@ public AchievementsInterface(System.IntPtr innerHandle) : base(innerHandle) /// /// The most recent version of the struct. /// - public const int CopyplayerachievementbyachievementidApiLatest = 1; + public const int CopyplayerachievementbyachievementidApiLatest = 2; /// /// The most recent version of the struct. /// - public const int CopyplayerachievementbyindexApiLatest = 1; + public const int CopyplayerachievementbyindexApiLatest = 2; /// /// The most recent version of the struct. @@ -113,12 +113,12 @@ public AchievementsInterface(System.IntPtr innerHandle) : base(innerHandle) /// /// The most recent version of the struct. /// - public const int QuerydefinitionsApiLatest = 2; + public const int QuerydefinitionsApiLatest = 3; /// /// The most recent version of the struct. /// - public const int QueryplayerachievementsApiLatest = 1; + public const int QueryplayerachievementsApiLatest = 2; /// /// DEPRECATED! Use instead. @@ -155,7 +155,7 @@ public AchievementsInterface(System.IntPtr innerHandle) : base(innerHandle) /// public ulong AddNotifyAchievementsUnlocked(AddNotifyAchievementsUnlockedOptions options, object clientData, OnAchievementsUnlockedCallback notificationFn) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var clientDataAddress = System.IntPtr.Zero; @@ -163,7 +163,7 @@ public ulong AddNotifyAchievementsUnlocked(AddNotifyAchievementsUnlockedOptions var notificationFnInternal = new OnAchievementsUnlockedCallbackInternal(OnAchievementsUnlockedCallbackInternalImplementation); Helper.AddCallback(ref clientDataAddress, clientData, notificationFn, notificationFnInternal); - var funcResult = EOS_Achievements_AddNotifyAchievementsUnlocked(InnerHandle, optionsAddress, clientDataAddress, notificationFnInternal); + var funcResult = Bindings.EOS_Achievements_AddNotifyAchievementsUnlocked(InnerHandle, optionsAddress, clientDataAddress, notificationFnInternal); Helper.TryMarshalDispose(ref optionsAddress); @@ -185,7 +185,7 @@ public ulong AddNotifyAchievementsUnlocked(AddNotifyAchievementsUnlockedOptions /// public ulong AddNotifyAchievementsUnlockedV2(AddNotifyAchievementsUnlockedV2Options options, object clientData, OnAchievementsUnlockedCallbackV2 notificationFn) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var clientDataAddress = System.IntPtr.Zero; @@ -193,7 +193,7 @@ public ulong AddNotifyAchievementsUnlockedV2(AddNotifyAchievementsUnlockedV2Opti var notificationFnInternal = new OnAchievementsUnlockedCallbackV2Internal(OnAchievementsUnlockedCallbackV2InternalImplementation); Helper.AddCallback(ref clientDataAddress, clientData, notificationFn, notificationFnInternal); - var funcResult = EOS_Achievements_AddNotifyAchievementsUnlockedV2(InnerHandle, optionsAddress, clientDataAddress, notificationFnInternal); + var funcResult = Bindings.EOS_Achievements_AddNotifyAchievementsUnlockedV2(InnerHandle, optionsAddress, clientDataAddress, notificationFnInternal); Helper.TryMarshalDispose(ref optionsAddress); @@ -218,18 +218,18 @@ public ulong AddNotifyAchievementsUnlockedV2(AddNotifyAchievementsUnlockedV2Opti /// public Result CopyAchievementDefinitionByAchievementId(CopyAchievementDefinitionByAchievementIdOptions options, out Definition outDefinition) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var outDefinitionAddress = System.IntPtr.Zero; - var funcResult = EOS_Achievements_CopyAchievementDefinitionByAchievementId(InnerHandle, optionsAddress, ref outDefinitionAddress); + var funcResult = Bindings.EOS_Achievements_CopyAchievementDefinitionByAchievementId(InnerHandle, optionsAddress, ref outDefinitionAddress); Helper.TryMarshalDispose(ref optionsAddress); if (Helper.TryMarshalGet(outDefinitionAddress, out outDefinition)) { - EOS_Achievements_Definition_Release(outDefinitionAddress); + Bindings.EOS_Achievements_Definition_Release(outDefinitionAddress); } return funcResult; @@ -251,18 +251,18 @@ public Result CopyAchievementDefinitionByAchievementId(CopyAchievementDefinition /// public Result CopyAchievementDefinitionByIndex(CopyAchievementDefinitionByIndexOptions options, out Definition outDefinition) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var outDefinitionAddress = System.IntPtr.Zero; - var funcResult = EOS_Achievements_CopyAchievementDefinitionByIndex(InnerHandle, optionsAddress, ref outDefinitionAddress); + var funcResult = Bindings.EOS_Achievements_CopyAchievementDefinitionByIndex(InnerHandle, optionsAddress, ref outDefinitionAddress); Helper.TryMarshalDispose(ref optionsAddress); if (Helper.TryMarshalGet(outDefinitionAddress, out outDefinition)) { - EOS_Achievements_Definition_Release(outDefinitionAddress); + Bindings.EOS_Achievements_Definition_Release(outDefinitionAddress); } return funcResult; @@ -278,21 +278,22 @@ public Result CopyAchievementDefinitionByIndex(CopyAchievementDefinitionByIndexO /// if the information is available and passed out in OutDefinition /// if you pass a null pointer for the out parameter /// if the achievement definition is not found + /// if any of the userid options are incorrect /// public Result CopyAchievementDefinitionV2ByAchievementId(CopyAchievementDefinitionV2ByAchievementIdOptions options, out DefinitionV2 outDefinition) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var outDefinitionAddress = System.IntPtr.Zero; - var funcResult = EOS_Achievements_CopyAchievementDefinitionV2ByAchievementId(InnerHandle, optionsAddress, ref outDefinitionAddress); + var funcResult = Bindings.EOS_Achievements_CopyAchievementDefinitionV2ByAchievementId(InnerHandle, optionsAddress, ref outDefinitionAddress); Helper.TryMarshalDispose(ref optionsAddress); if (Helper.TryMarshalGet(outDefinitionAddress, out outDefinition)) { - EOS_Achievements_DefinitionV2_Release(outDefinitionAddress); + Bindings.EOS_Achievements_DefinitionV2_Release(outDefinitionAddress); } return funcResult; @@ -308,21 +309,22 @@ public Result CopyAchievementDefinitionV2ByAchievementId(CopyAchievementDefiniti /// if the information is available and passed out in OutDefinition /// if you pass a null pointer for the out parameter /// if the achievement definition is not found + /// if any of the userid options are incorrect /// public Result CopyAchievementDefinitionV2ByIndex(CopyAchievementDefinitionV2ByIndexOptions options, out DefinitionV2 outDefinition) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var outDefinitionAddress = System.IntPtr.Zero; - var funcResult = EOS_Achievements_CopyAchievementDefinitionV2ByIndex(InnerHandle, optionsAddress, ref outDefinitionAddress); + var funcResult = Bindings.EOS_Achievements_CopyAchievementDefinitionV2ByIndex(InnerHandle, optionsAddress, ref outDefinitionAddress); Helper.TryMarshalDispose(ref optionsAddress); if (Helper.TryMarshalGet(outDefinitionAddress, out outDefinition)) { - EOS_Achievements_DefinitionV2_Release(outDefinitionAddress); + Bindings.EOS_Achievements_DefinitionV2_Release(outDefinitionAddress); } return funcResult; @@ -338,21 +340,22 @@ public Result CopyAchievementDefinitionV2ByIndex(CopyAchievementDefinitionV2ByIn /// if the information is available and passed out in OutAchievement /// if you pass a null pointer for the out parameter /// if the player achievement is not found + /// if you pass an invalid user ID /// public Result CopyPlayerAchievementByAchievementId(CopyPlayerAchievementByAchievementIdOptions options, out PlayerAchievement outAchievement) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var outAchievementAddress = System.IntPtr.Zero; - var funcResult = EOS_Achievements_CopyPlayerAchievementByAchievementId(InnerHandle, optionsAddress, ref outAchievementAddress); + var funcResult = Bindings.EOS_Achievements_CopyPlayerAchievementByAchievementId(InnerHandle, optionsAddress, ref outAchievementAddress); Helper.TryMarshalDispose(ref optionsAddress); if (Helper.TryMarshalGet(outAchievementAddress, out outAchievement)) { - EOS_Achievements_PlayerAchievement_Release(outAchievementAddress); + Bindings.EOS_Achievements_PlayerAchievement_Release(outAchievementAddress); } return funcResult; @@ -368,21 +371,22 @@ public Result CopyPlayerAchievementByAchievementId(CopyPlayerAchievementByAchiev /// if the information is available and passed out in OutAchievement /// if you pass a null pointer for the out parameter /// if the player achievement is not found + /// if you pass an invalid user ID /// public Result CopyPlayerAchievementByIndex(CopyPlayerAchievementByIndexOptions options, out PlayerAchievement outAchievement) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var outAchievementAddress = System.IntPtr.Zero; - var funcResult = EOS_Achievements_CopyPlayerAchievementByIndex(InnerHandle, optionsAddress, ref outAchievementAddress); + var funcResult = Bindings.EOS_Achievements_CopyPlayerAchievementByIndex(InnerHandle, optionsAddress, ref outAchievementAddress); Helper.TryMarshalDispose(ref optionsAddress); if (Helper.TryMarshalGet(outAchievementAddress, out outAchievement)) { - EOS_Achievements_PlayerAchievement_Release(outAchievementAddress); + Bindings.EOS_Achievements_PlayerAchievement_Release(outAchievementAddress); } return funcResult; @@ -403,18 +407,18 @@ public Result CopyPlayerAchievementByIndex(CopyPlayerAchievementByIndexOptions o /// public Result CopyUnlockedAchievementByAchievementId(CopyUnlockedAchievementByAchievementIdOptions options, out UnlockedAchievement outAchievement) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var outAchievementAddress = System.IntPtr.Zero; - var funcResult = EOS_Achievements_CopyUnlockedAchievementByAchievementId(InnerHandle, optionsAddress, ref outAchievementAddress); + var funcResult = Bindings.EOS_Achievements_CopyUnlockedAchievementByAchievementId(InnerHandle, optionsAddress, ref outAchievementAddress); Helper.TryMarshalDispose(ref optionsAddress); if (Helper.TryMarshalGet(outAchievementAddress, out outAchievement)) { - EOS_Achievements_UnlockedAchievement_Release(outAchievementAddress); + Bindings.EOS_Achievements_UnlockedAchievement_Release(outAchievementAddress); } return funcResult; @@ -435,18 +439,18 @@ public Result CopyUnlockedAchievementByAchievementId(CopyUnlockedAchievementByAc /// public Result CopyUnlockedAchievementByIndex(CopyUnlockedAchievementByIndexOptions options, out UnlockedAchievement outAchievement) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var outAchievementAddress = System.IntPtr.Zero; - var funcResult = EOS_Achievements_CopyUnlockedAchievementByIndex(InnerHandle, optionsAddress, ref outAchievementAddress); + var funcResult = Bindings.EOS_Achievements_CopyUnlockedAchievementByIndex(InnerHandle, optionsAddress, ref outAchievementAddress); Helper.TryMarshalDispose(ref optionsAddress); if (Helper.TryMarshalGet(outAchievementAddress, out outAchievement)) { - EOS_Achievements_UnlockedAchievement_Release(outAchievementAddress); + Bindings.EOS_Achievements_UnlockedAchievement_Release(outAchievementAddress); } return funcResult; @@ -462,10 +466,10 @@ public Result CopyUnlockedAchievementByIndex(CopyUnlockedAchievementByIndexOptio /// public uint GetAchievementDefinitionCount(GetAchievementDefinitionCountOptions options) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); - var funcResult = EOS_Achievements_GetAchievementDefinitionCount(InnerHandle, optionsAddress); + var funcResult = Bindings.EOS_Achievements_GetAchievementDefinitionCount(InnerHandle, optionsAddress); Helper.TryMarshalDispose(ref optionsAddress); @@ -482,10 +486,10 @@ public uint GetAchievementDefinitionCount(GetAchievementDefinitionCountOptions o /// public uint GetPlayerAchievementCount(GetPlayerAchievementCountOptions options) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); - var funcResult = EOS_Achievements_GetPlayerAchievementCount(InnerHandle, optionsAddress); + var funcResult = Bindings.EOS_Achievements_GetPlayerAchievementCount(InnerHandle, optionsAddress); Helper.TryMarshalDispose(ref optionsAddress); @@ -504,10 +508,10 @@ public uint GetPlayerAchievementCount(GetPlayerAchievementCountOptions options) /// public uint GetUnlockedAchievementCount(GetUnlockedAchievementCountOptions options) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); - var funcResult = EOS_Achievements_GetUnlockedAchievementCount(InnerHandle, optionsAddress); + var funcResult = Bindings.EOS_Achievements_GetUnlockedAchievementCount(InnerHandle, optionsAddress); Helper.TryMarshalDispose(ref optionsAddress); @@ -528,7 +532,7 @@ public uint GetUnlockedAchievementCount(GetUnlockedAchievementCountOptions optio /// public void QueryDefinitions(QueryDefinitionsOptions options, object clientData, OnQueryDefinitionsCompleteCallback completionDelegate) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var clientDataAddress = System.IntPtr.Zero; @@ -536,7 +540,7 @@ public void QueryDefinitions(QueryDefinitionsOptions options, object clientData, var completionDelegateInternal = new OnQueryDefinitionsCompleteCallbackInternal(OnQueryDefinitionsCompleteCallbackInternalImplementation); Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - EOS_Achievements_QueryDefinitions(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); + Bindings.EOS_Achievements_QueryDefinitions(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); Helper.TryMarshalDispose(ref optionsAddress); } @@ -551,11 +555,12 @@ public void QueryDefinitions(QueryDefinitionsOptions options, object clientData, /// This function is called when the query player achievements operation completes. /// /// if the operation completes successfully - /// if any of the options are incorrect + /// if any of the userid options are incorrect + /// if any of the other options are incorrect /// public void QueryPlayerAchievements(QueryPlayerAchievementsOptions options, object clientData, OnQueryPlayerAchievementsCompleteCallback completionDelegate) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var clientDataAddress = System.IntPtr.Zero; @@ -563,7 +568,7 @@ public void QueryPlayerAchievements(QueryPlayerAchievementsOptions options, obje var completionDelegateInternal = new OnQueryPlayerAchievementsCompleteCallbackInternal(OnQueryPlayerAchievementsCompleteCallbackInternalImplementation); Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - EOS_Achievements_QueryPlayerAchievements(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); + Bindings.EOS_Achievements_QueryPlayerAchievements(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); Helper.TryMarshalDispose(ref optionsAddress); } @@ -577,7 +582,7 @@ public void RemoveNotifyAchievementsUnlocked(ulong inId) { Helper.TryRemoveCallbackByNotificationId(inId); - EOS_Achievements_RemoveNotifyAchievementsUnlocked(InnerHandle, inId); + Bindings.EOS_Achievements_RemoveNotifyAchievementsUnlocked(InnerHandle, inId); } /// @@ -592,7 +597,7 @@ public void RemoveNotifyAchievementsUnlocked(ulong inId) /// public void UnlockAchievements(UnlockAchievementsOptions options, object clientData, OnUnlockAchievementsCompleteCallback completionDelegate) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var clientDataAddress = System.IntPtr.Zero; @@ -600,7 +605,7 @@ public void UnlockAchievements(UnlockAchievementsOptions options, object clientD var completionDelegateInternal = new OnUnlockAchievementsCompleteCallbackInternal(OnUnlockAchievementsCompleteCallbackInternalImplementation); Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - EOS_Achievements_UnlockAchievements(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); + Bindings.EOS_Achievements_UnlockAchievements(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); Helper.TryMarshalDispose(ref optionsAddress); } @@ -659,68 +664,5 @@ internal static void OnUnlockAchievementsCompleteCallbackInternalImplementation( callback(callbackInfo); } } - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern ulong EOS_Achievements_AddNotifyAchievementsUnlocked(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, OnAchievementsUnlockedCallbackInternal notificationFn); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern ulong EOS_Achievements_AddNotifyAchievementsUnlockedV2(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, OnAchievementsUnlockedCallbackV2Internal notificationFn); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_Achievements_CopyAchievementDefinitionByAchievementId(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outDefinition); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_Achievements_CopyAchievementDefinitionByIndex(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outDefinition); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_Achievements_CopyAchievementDefinitionV2ByAchievementId(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outDefinition); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_Achievements_CopyAchievementDefinitionV2ByIndex(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outDefinition); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_Achievements_CopyPlayerAchievementByAchievementId(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outAchievement); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_Achievements_CopyPlayerAchievementByIndex(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outAchievement); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_Achievements_CopyUnlockedAchievementByAchievementId(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outAchievement); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_Achievements_CopyUnlockedAchievementByIndex(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outAchievement); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern uint EOS_Achievements_GetAchievementDefinitionCount(System.IntPtr handle, System.IntPtr options); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern uint EOS_Achievements_GetPlayerAchievementCount(System.IntPtr handle, System.IntPtr options); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern uint EOS_Achievements_GetUnlockedAchievementCount(System.IntPtr handle, System.IntPtr options); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern void EOS_Achievements_QueryDefinitions(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, OnQueryDefinitionsCompleteCallbackInternal completionDelegate); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern void EOS_Achievements_QueryPlayerAchievements(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, OnQueryPlayerAchievementsCompleteCallbackInternal completionDelegate); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern void EOS_Achievements_DefinitionV2_Release(System.IntPtr achievementDefinition); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern void EOS_Achievements_PlayerAchievement_Release(System.IntPtr achievement); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern void EOS_Achievements_Definition_Release(System.IntPtr achievementDefinition); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern void EOS_Achievements_UnlockedAchievement_Release(System.IntPtr achievement); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern void EOS_Achievements_RemoveNotifyAchievementsUnlocked(System.IntPtr handle, ulong inId); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern void EOS_Achievements_UnlockAchievements(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, OnUnlockAchievementsCompleteCallbackInternal completionDelegate); } } \ No newline at end of file diff --git a/EOSSDK/Generated/Achievements/CopyPlayerAchievementByAchievementIdOptions.cs b/EOSSDK/Generated/Achievements/CopyPlayerAchievementByAchievementIdOptions.cs index f5bac1e8..e16dd6b5 100644 --- a/EOSSDK/Generated/Achievements/CopyPlayerAchievementByAchievementIdOptions.cs +++ b/EOSSDK/Generated/Achievements/CopyPlayerAchievementByAchievementIdOptions.cs @@ -9,28 +9,34 @@ namespace Epic.OnlineServices.Achievements public class CopyPlayerAchievementByAchievementIdOptions { /// - /// The Product User ID for the user who is copying the achievement. + /// The Product User ID for the user whose achievement is to be retrieved. /// - public ProductUserId UserId { get; set; } + public ProductUserId TargetUserId { get; set; } /// /// Achievement ID to search for when retrieving player achievement data from the cache. /// public string AchievementId { get; set; } + + /// + /// The Product User ID for the user who is querying for a player achievement. For a Dedicated Server this should be null. + /// + public ProductUserId LocalUserId { get; set; } } [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] internal struct CopyPlayerAchievementByAchievementIdOptionsInternal : ISettable, System.IDisposable { private int m_ApiVersion; - private System.IntPtr m_UserId; + private System.IntPtr m_TargetUserId; private System.IntPtr m_AchievementId; + private System.IntPtr m_LocalUserId; - public ProductUserId UserId + public ProductUserId TargetUserId { set { - Helper.TryMarshalSet(ref m_UserId, value); + Helper.TryMarshalSet(ref m_TargetUserId, value); } } @@ -42,13 +48,22 @@ public string AchievementId } } + public ProductUserId LocalUserId + { + set + { + Helper.TryMarshalSet(ref m_LocalUserId, value); + } + } + public void Set(CopyPlayerAchievementByAchievementIdOptions other) { if (other != null) { m_ApiVersion = AchievementsInterface.CopyplayerachievementbyachievementidApiLatest; - UserId = other.UserId; + TargetUserId = other.TargetUserId; AchievementId = other.AchievementId; + LocalUserId = other.LocalUserId; } } @@ -59,7 +74,9 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_TargetUserId); Helper.TryMarshalDispose(ref m_AchievementId); + Helper.TryMarshalDispose(ref m_LocalUserId); } } } \ No newline at end of file diff --git a/EOSSDK/Generated/Achievements/CopyPlayerAchievementByIndexOptions.cs b/EOSSDK/Generated/Achievements/CopyPlayerAchievementByIndexOptions.cs index c618ac47..292f7a37 100644 --- a/EOSSDK/Generated/Achievements/CopyPlayerAchievementByIndexOptions.cs +++ b/EOSSDK/Generated/Achievements/CopyPlayerAchievementByIndexOptions.cs @@ -9,28 +9,34 @@ namespace Epic.OnlineServices.Achievements public class CopyPlayerAchievementByIndexOptions { /// - /// The Product User ID for the user who is copying the achievement. + /// The Product User ID for the user whose achievement is to be retrieved. /// - public ProductUserId UserId { get; set; } + public ProductUserId TargetUserId { get; set; } /// /// The index of the player achievement data to retrieve from the cache. /// public uint AchievementIndex { get; set; } + + /// + /// The Product User ID for the user who is querying for a player achievement. For a Dedicated Server this should be null. + /// + public ProductUserId LocalUserId { get; set; } } [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] internal struct CopyPlayerAchievementByIndexOptionsInternal : ISettable, System.IDisposable { private int m_ApiVersion; - private System.IntPtr m_UserId; + private System.IntPtr m_TargetUserId; private uint m_AchievementIndex; + private System.IntPtr m_LocalUserId; - public ProductUserId UserId + public ProductUserId TargetUserId { set { - Helper.TryMarshalSet(ref m_UserId, value); + Helper.TryMarshalSet(ref m_TargetUserId, value); } } @@ -42,13 +48,22 @@ public uint AchievementIndex } } + public ProductUserId LocalUserId + { + set + { + Helper.TryMarshalSet(ref m_LocalUserId, value); + } + } + public void Set(CopyPlayerAchievementByIndexOptions other) { if (other != null) { m_ApiVersion = AchievementsInterface.CopyplayerachievementbyindexApiLatest; - UserId = other.UserId; + TargetUserId = other.TargetUserId; AchievementIndex = other.AchievementIndex; + LocalUserId = other.LocalUserId; } } @@ -59,6 +74,8 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_TargetUserId); + Helper.TryMarshalDispose(ref m_LocalUserId); } } } \ No newline at end of file diff --git a/EOSSDK/Generated/Achievements/CopyUnlockedAchievementByAchievementIdOptions.cs b/EOSSDK/Generated/Achievements/CopyUnlockedAchievementByAchievementIdOptions.cs index e2ef8b46..0ccf79de 100644 --- a/EOSSDK/Generated/Achievements/CopyUnlockedAchievementByAchievementIdOptions.cs +++ b/EOSSDK/Generated/Achievements/CopyUnlockedAchievementByAchievementIdOptions.cs @@ -59,6 +59,7 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_UserId); Helper.TryMarshalDispose(ref m_AchievementId); } } diff --git a/EOSSDK/Generated/Achievements/CopyUnlockedAchievementByIndexOptions.cs b/EOSSDK/Generated/Achievements/CopyUnlockedAchievementByIndexOptions.cs index 6c9e043e..a486c4eb 100644 --- a/EOSSDK/Generated/Achievements/CopyUnlockedAchievementByIndexOptions.cs +++ b/EOSSDK/Generated/Achievements/CopyUnlockedAchievementByIndexOptions.cs @@ -59,6 +59,7 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_UserId); } } } \ No newline at end of file diff --git a/EOSSDK/Generated/Achievements/GetPlayerAchievementCountOptions.cs b/EOSSDK/Generated/Achievements/GetPlayerAchievementCountOptions.cs index e7036842..b9836ca7 100644 --- a/EOSSDK/Generated/Achievements/GetPlayerAchievementCountOptions.cs +++ b/EOSSDK/Generated/Achievements/GetPlayerAchievementCountOptions.cs @@ -44,6 +44,7 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_UserId); } } } \ No newline at end of file diff --git a/EOSSDK/Generated/Achievements/GetUnlockedAchievementCountOptions.cs b/EOSSDK/Generated/Achievements/GetUnlockedAchievementCountOptions.cs index 46abea07..d71911da 100644 --- a/EOSSDK/Generated/Achievements/GetUnlockedAchievementCountOptions.cs +++ b/EOSSDK/Generated/Achievements/GetUnlockedAchievementCountOptions.cs @@ -44,6 +44,7 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_UserId); } } } \ No newline at end of file diff --git a/EOSSDK/Generated/Achievements/OnAchievementsUnlockedCallback.cs b/EOSSDK/Generated/Achievements/OnAchievementsUnlockedCallback.cs index 258ccde8..583441fa 100644 --- a/EOSSDK/Generated/Achievements/OnAchievementsUnlockedCallback.cs +++ b/EOSSDK/Generated/Achievements/OnAchievementsUnlockedCallback.cs @@ -9,5 +9,6 @@ namespace Epic.OnlineServices.Achievements /// A containing the output information and result public delegate void OnAchievementsUnlockedCallback(OnAchievementsUnlockedCallbackInfo data); + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] internal delegate void OnAchievementsUnlockedCallbackInternal(System.IntPtr data); } \ No newline at end of file diff --git a/EOSSDK/Generated/Achievements/OnAchievementsUnlockedCallbackV2.cs b/EOSSDK/Generated/Achievements/OnAchievementsUnlockedCallbackV2.cs index 0c2a7f17..c41d716f 100644 --- a/EOSSDK/Generated/Achievements/OnAchievementsUnlockedCallbackV2.cs +++ b/EOSSDK/Generated/Achievements/OnAchievementsUnlockedCallbackV2.cs @@ -9,5 +9,6 @@ namespace Epic.OnlineServices.Achievements /// An containing the output information and result public delegate void OnAchievementsUnlockedCallbackV2(OnAchievementsUnlockedCallbackV2Info data); + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] internal delegate void OnAchievementsUnlockedCallbackV2Internal(System.IntPtr data); } \ No newline at end of file diff --git a/EOSSDK/Generated/Achievements/OnQueryDefinitionsCompleteCallback.cs b/EOSSDK/Generated/Achievements/OnQueryDefinitionsCompleteCallback.cs index 2acff0ec..b0f01818 100644 --- a/EOSSDK/Generated/Achievements/OnQueryDefinitionsCompleteCallback.cs +++ b/EOSSDK/Generated/Achievements/OnQueryDefinitionsCompleteCallback.cs @@ -9,5 +9,6 @@ namespace Epic.OnlineServices.Achievements /// An containing the output information and result public delegate void OnQueryDefinitionsCompleteCallback(OnQueryDefinitionsCompleteCallbackInfo data); + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] internal delegate void OnQueryDefinitionsCompleteCallbackInternal(System.IntPtr data); } \ No newline at end of file diff --git a/EOSSDK/Generated/Achievements/OnQueryPlayerAchievementsCompleteCallback.cs b/EOSSDK/Generated/Achievements/OnQueryPlayerAchievementsCompleteCallback.cs index fde14d2c..4349aa2d 100644 --- a/EOSSDK/Generated/Achievements/OnQueryPlayerAchievementsCompleteCallback.cs +++ b/EOSSDK/Generated/Achievements/OnQueryPlayerAchievementsCompleteCallback.cs @@ -10,5 +10,6 @@ namespace Epic.OnlineServices.Achievements /// An containing the output information and result public delegate void OnQueryPlayerAchievementsCompleteCallback(OnQueryPlayerAchievementsCompleteCallbackInfo data); + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] internal delegate void OnQueryPlayerAchievementsCompleteCallbackInternal(System.IntPtr data); } \ No newline at end of file diff --git a/EOSSDK/Generated/Achievements/OnUnlockAchievementsCompleteCallback.cs b/EOSSDK/Generated/Achievements/OnUnlockAchievementsCompleteCallback.cs index 8ec574ee..3c5260b6 100644 --- a/EOSSDK/Generated/Achievements/OnUnlockAchievementsCompleteCallback.cs +++ b/EOSSDK/Generated/Achievements/OnUnlockAchievementsCompleteCallback.cs @@ -9,5 +9,6 @@ namespace Epic.OnlineServices.Achievements /// An containing the output information and result public delegate void OnUnlockAchievementsCompleteCallback(OnUnlockAchievementsCompleteCallbackInfo data); + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] internal delegate void OnUnlockAchievementsCompleteCallbackInternal(System.IntPtr data); } \ No newline at end of file diff --git a/EOSSDK/Generated/Achievements/QueryDefinitionsOptions.cs b/EOSSDK/Generated/Achievements/QueryDefinitionsOptions.cs index c5e634bb..87193fef 100644 --- a/EOSSDK/Generated/Achievements/QueryDefinitionsOptions.cs +++ b/EOSSDK/Generated/Achievements/QueryDefinitionsOptions.cs @@ -78,6 +78,8 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_LocalUserId); + Helper.TryMarshalDispose(ref m_EpicUserId_DEPRECATED); Helper.TryMarshalDispose(ref m_HiddenAchievementIds_DEPRECATED); } } diff --git a/EOSSDK/Generated/Achievements/QueryPlayerAchievementsOptions.cs b/EOSSDK/Generated/Achievements/QueryPlayerAchievementsOptions.cs index 0544f059..45b578d7 100644 --- a/EOSSDK/Generated/Achievements/QueryPlayerAchievementsOptions.cs +++ b/EOSSDK/Generated/Achievements/QueryPlayerAchievementsOptions.cs @@ -11,20 +11,34 @@ public class QueryPlayerAchievementsOptions /// /// The Product User ID for the user whose achievements are to be retrieved. /// - public ProductUserId UserId { get; set; } + public ProductUserId TargetUserId { get; set; } + + /// + /// The Product User ID for the user who is querying for player achievements. For a Dedicated Server this should be null. + /// + public ProductUserId LocalUserId { get; set; } } [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] internal struct QueryPlayerAchievementsOptionsInternal : ISettable, System.IDisposable { private int m_ApiVersion; - private System.IntPtr m_UserId; + private System.IntPtr m_TargetUserId; + private System.IntPtr m_LocalUserId; + + public ProductUserId TargetUserId + { + set + { + Helper.TryMarshalSet(ref m_TargetUserId, value); + } + } - public ProductUserId UserId + public ProductUserId LocalUserId { set { - Helper.TryMarshalSet(ref m_UserId, value); + Helper.TryMarshalSet(ref m_LocalUserId, value); } } @@ -33,7 +47,8 @@ public void Set(QueryPlayerAchievementsOptions other) if (other != null) { m_ApiVersion = AchievementsInterface.QueryplayerachievementsApiLatest; - UserId = other.UserId; + TargetUserId = other.TargetUserId; + LocalUserId = other.LocalUserId; } } @@ -44,6 +59,8 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_TargetUserId); + Helper.TryMarshalDispose(ref m_LocalUserId); } } } \ No newline at end of file diff --git a/EOSSDK/Generated/Achievements/UnlockAchievementsOptions.cs b/EOSSDK/Generated/Achievements/UnlockAchievementsOptions.cs index 615a948e..84179703 100644 --- a/EOSSDK/Generated/Achievements/UnlockAchievementsOptions.cs +++ b/EOSSDK/Generated/Achievements/UnlockAchievementsOptions.cs @@ -60,6 +60,7 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_UserId); Helper.TryMarshalDispose(ref m_AchievementIds); } } diff --git a/EOSSDK/Generated/Android.meta b/EOSSDK/Generated/Android.meta new file mode 100644 index 00000000..f0addabf --- /dev/null +++ b/EOSSDK/Generated/Android.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: a40f1081133a3a74ba4e81e86bc9b8df +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/Android/Platform.meta b/EOSSDK/Generated/Android/Platform.meta new file mode 100644 index 00000000..04c56160 --- /dev/null +++ b/EOSSDK/Generated/Android/Platform.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: dd14c90cd7aa875418a308492e50ced0 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/Android/Platform/AndroidInitializeOptions.cs b/EOSSDK/Generated/Android/Platform/AndroidInitializeOptions.cs new file mode 100644 index 00000000..f5ebd549 --- /dev/null +++ b/EOSSDK/Generated/Android/Platform/AndroidInitializeOptions.cs @@ -0,0 +1,171 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.Platform +{ + /// + /// Options for initializing the Epic Online Services SDK. + /// + public class AndroidInitializeOptions + { + /// + /// A custom memory allocator, if desired. + /// + public System.IntPtr AllocateMemoryFunction { get; set; } + + /// + /// A corresponding memory reallocator. If the AllocateMemoryFunction is nulled, then this field must also be nulled. + /// + public System.IntPtr ReallocateMemoryFunction { get; set; } + + /// + /// A corresponding memory releaser. If the AllocateMemoryFunction is nulled, then this field must also be nulled. + /// + public System.IntPtr ReleaseMemoryFunction { get; set; } + + /// + /// The name of the product using the Epic Online Services SDK. + /// + /// The name string is required to be non-empty and at maximum of 64 characters long. + /// The string buffer can consist of the following characters: + /// A-Z, a-z, 0-9, dot, underscore, space, exclamation mark, question mark, and sign, hyphen, parenthesis, plus, minus, colon. + /// + public string ProductName { get; set; } + + /// + /// Product version of the running application. + /// + /// The name string has same requirements as the ProductName string. + /// + public string ProductVersion { get; set; } + + /// + /// A reserved field that should always be nulled. + /// + public System.IntPtr Reserved { get; set; } + + /// + /// This field is for system specific initialization if any. + /// + /// If provided then the structure will be located in /eos_.h. + /// The structure will be named EOS__InitializeOptions. + /// + public AndroidInitializeOptionsSystemInitializeOptions SystemInitializeOptions { get; set; } + + /// + /// The thread affinity override values for each category of thread. + /// + public InitializeThreadAffinity OverrideThreadAffinity { get; set; } + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct AndroidInitializeOptionsInternal : ISettable, System.IDisposable + { + private int m_ApiVersion; + private System.IntPtr m_AllocateMemoryFunction; + private System.IntPtr m_ReallocateMemoryFunction; + private System.IntPtr m_ReleaseMemoryFunction; + private System.IntPtr m_ProductName; + private System.IntPtr m_ProductVersion; + private System.IntPtr m_Reserved; + private System.IntPtr m_SystemInitializeOptions; + private System.IntPtr m_OverrideThreadAffinity; + + public System.IntPtr AllocateMemoryFunction + { + set + { + m_AllocateMemoryFunction = value; + } + } + + public System.IntPtr ReallocateMemoryFunction + { + set + { + m_ReallocateMemoryFunction = value; + } + } + + public System.IntPtr ReleaseMemoryFunction + { + set + { + m_ReleaseMemoryFunction = value; + } + } + + public string ProductName + { + set + { + Helper.TryMarshalSet(ref m_ProductName, value); + } + } + + public string ProductVersion + { + set + { + Helper.TryMarshalSet(ref m_ProductVersion, value); + } + } + + public System.IntPtr Reserved + { + set + { + m_Reserved = value; + } + } + + public AndroidInitializeOptionsSystemInitializeOptions SystemInitializeOptions + { + set + { + Helper.TryMarshalSet(ref m_SystemInitializeOptions, value); + } + } + + public InitializeThreadAffinity OverrideThreadAffinity + { + set + { + Helper.TryMarshalSet(ref m_OverrideThreadAffinity, value); + } + } + + public void Set(AndroidInitializeOptions other) + { + if (other != null) + { + m_ApiVersion = PlatformInterface.InitializeApiLatest; + AllocateMemoryFunction = other.AllocateMemoryFunction; + ReallocateMemoryFunction = other.ReallocateMemoryFunction; + ReleaseMemoryFunction = other.ReleaseMemoryFunction; + ProductName = other.ProductName; + ProductVersion = other.ProductVersion; + Reserved = other.Reserved; + SystemInitializeOptions = other.SystemInitializeOptions; + OverrideThreadAffinity = other.OverrideThreadAffinity; + } + } + + public void Set(object other) + { + Set(other as AndroidInitializeOptions); + } + + public void Dispose() + { + Helper.TryMarshalDispose(ref m_AllocateMemoryFunction); + Helper.TryMarshalDispose(ref m_ReallocateMemoryFunction); + Helper.TryMarshalDispose(ref m_ReleaseMemoryFunction); + Helper.TryMarshalDispose(ref m_ProductName); + Helper.TryMarshalDispose(ref m_ProductVersion); + Helper.TryMarshalDispose(ref m_Reserved); + Helper.TryMarshalDispose(ref m_SystemInitializeOptions); + Helper.TryMarshalDispose(ref m_OverrideThreadAffinity); + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/Android/Platform/AndroidInitializeOptions.cs.meta b/EOSSDK/Generated/Android/Platform/AndroidInitializeOptions.cs.meta new file mode 100644 index 00000000..ac1ca3fd --- /dev/null +++ b/EOSSDK/Generated/Android/Platform/AndroidInitializeOptions.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: e7df45f6b7ad84746b10516893503a1c +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/Android/Platform/AndroidInitializeOptionsSystemInitializeOptions.cs b/EOSSDK/Generated/Android/Platform/AndroidInitializeOptionsSystemInitializeOptions.cs new file mode 100644 index 00000000..5c35608e --- /dev/null +++ b/EOSSDK/Generated/Android/Platform/AndroidInitializeOptionsSystemInitializeOptions.cs @@ -0,0 +1,116 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.Platform +{ + /// + /// Options for initializing mount paths required for some platforms. + /// + public class AndroidInitializeOptionsSystemInitializeOptions : ISettable + { + /// + /// Reserved, set to null + /// + public System.IntPtr Reserved { get; set; } + + /// + /// Full internal directory path. Can be null + /// + public string OptionalInternalDirectory { get; set; } + + /// + /// Full external directory path. Can be null + /// + public string OptionalExternalDirectory { get; set; } + + internal void Set(AndroidInitializeOptionsSystemInitializeOptionsInternal? other) + { + if (other != null) + { + Reserved = other.Value.Reserved; + OptionalInternalDirectory = other.Value.OptionalInternalDirectory; + OptionalExternalDirectory = other.Value.OptionalExternalDirectory; + } + } + + public void Set(object other) + { + Set(other as AndroidInitializeOptionsSystemInitializeOptionsInternal?); + } + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct AndroidInitializeOptionsSystemInitializeOptionsInternal : ISettable, System.IDisposable + { + private int m_ApiVersion; + private System.IntPtr m_Reserved; + private System.IntPtr m_OptionalInternalDirectory; + private System.IntPtr m_OptionalExternalDirectory; + + public System.IntPtr Reserved + { + get + { + return m_Reserved; + } + + set + { + m_Reserved = value; + } + } + + public string OptionalInternalDirectory + { + get + { + string value; + Helper.TryMarshalGet(m_OptionalInternalDirectory, out value); + return value; + } + + set + { + Helper.TryMarshalSet(ref m_OptionalInternalDirectory, value); + } + } + + public string OptionalExternalDirectory + { + get + { + string value; + Helper.TryMarshalGet(m_OptionalExternalDirectory, out value); + return value; + } + + set + { + Helper.TryMarshalSet(ref m_OptionalExternalDirectory, value); + } + } + + public void Set(AndroidInitializeOptionsSystemInitializeOptions other) + { + if (other != null) + { + m_ApiVersion = PlatformInterface.AndroidinitializeoptionssysteminitializeoptionsApiLatest; + Reserved = other.Reserved; + OptionalInternalDirectory = other.OptionalInternalDirectory; + OptionalExternalDirectory = other.OptionalExternalDirectory; + } + } + + public void Set(object other) + { + Set(other as AndroidInitializeOptionsSystemInitializeOptions); + } + + public void Dispose() + { + Helper.TryMarshalDispose(ref m_Reserved); + Helper.TryMarshalDispose(ref m_OptionalInternalDirectory); + Helper.TryMarshalDispose(ref m_OptionalExternalDirectory); + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/Android/Platform/AndroidInitializeOptionsSystemInitializeOptions.cs.meta b/EOSSDK/Generated/Android/Platform/AndroidInitializeOptionsSystemInitializeOptions.cs.meta new file mode 100644 index 00000000..4c10c3ff --- /dev/null +++ b/EOSSDK/Generated/Android/Platform/AndroidInitializeOptionsSystemInitializeOptions.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 57b5833a3ee6b2b4dac4d3c6ebd119b6 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/Android/Platform/PlatformInterface.cs b/EOSSDK/Generated/Android/Platform/PlatformInterface.cs new file mode 100644 index 00000000..4d536892 --- /dev/null +++ b/EOSSDK/Generated/Android/Platform/PlatformInterface.cs @@ -0,0 +1,25 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.Platform +{ + public sealed partial class PlatformInterface : Handle + { + /// + /// The most recent version of the structure. + /// + public const int AndroidinitializeoptionssysteminitializeoptionsApiLatest = 2; + + public static Result Initialize(AndroidInitializeOptions options) + { + var optionsAddress = System.IntPtr.Zero; + Helper.TryMarshalSet(ref optionsAddress, options); + + var funcResult = Bindings.EOS_Initialize(optionsAddress); + + Helper.TryMarshalDispose(ref optionsAddress); + + return funcResult; + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/Android/Platform/PlatformInterface.cs.meta b/EOSSDK/Generated/Android/Platform/PlatformInterface.cs.meta new file mode 100644 index 00000000..202447a4 --- /dev/null +++ b/EOSSDK/Generated/Android/Platform/PlatformInterface.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 91d2dafb12ada2c40819e5aef8662bc0 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/AntiCheatClient.meta b/EOSSDK/Generated/AntiCheatClient.meta new file mode 100644 index 00000000..32678cbd --- /dev/null +++ b/EOSSDK/Generated/AntiCheatClient.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: b6ea4fc7c3c544943bae5aaeb06710d2 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/AntiCheatClient/AddExternalIntegrityCatalogOptions.cs b/EOSSDK/Generated/AntiCheatClient/AddExternalIntegrityCatalogOptions.cs new file mode 100644 index 00000000..f71a4d2a --- /dev/null +++ b/EOSSDK/Generated/AntiCheatClient/AddExternalIntegrityCatalogOptions.cs @@ -0,0 +1,47 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.AntiCheatClient +{ + public class AddExternalIntegrityCatalogOptions + { + /// + /// UTF-8 path to the .bin catalog file to add + /// + public string PathToBinFile { get; set; } + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct AddExternalIntegrityCatalogOptionsInternal : ISettable, System.IDisposable + { + private int m_ApiVersion; + private System.IntPtr m_PathToBinFile; + + public string PathToBinFile + { + set + { + Helper.TryMarshalSet(ref m_PathToBinFile, value); + } + } + + public void Set(AddExternalIntegrityCatalogOptions other) + { + if (other != null) + { + m_ApiVersion = AntiCheatClientInterface.AddexternalintegritycatalogApiLatest; + PathToBinFile = other.PathToBinFile; + } + } + + public void Set(object other) + { + Set(other as AddExternalIntegrityCatalogOptions); + } + + public void Dispose() + { + Helper.TryMarshalDispose(ref m_PathToBinFile); + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/AntiCheatClient/AddExternalIntegrityCatalogOptions.cs.meta b/EOSSDK/Generated/AntiCheatClient/AddExternalIntegrityCatalogOptions.cs.meta new file mode 100644 index 00000000..ff92f7b3 --- /dev/null +++ b/EOSSDK/Generated/AntiCheatClient/AddExternalIntegrityCatalogOptions.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 37835da4a29fb494a83661e48a363e04 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/AntiCheatClient/AddNotifyMessageToPeerOptions.cs b/EOSSDK/Generated/AntiCheatClient/AddNotifyMessageToPeerOptions.cs new file mode 100644 index 00000000..e1f69c98 --- /dev/null +++ b/EOSSDK/Generated/AntiCheatClient/AddNotifyMessageToPeerOptions.cs @@ -0,0 +1,32 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.AntiCheatClient +{ + public class AddNotifyMessageToPeerOptions + { + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct AddNotifyMessageToPeerOptionsInternal : ISettable, System.IDisposable + { + private int m_ApiVersion; + + public void Set(AddNotifyMessageToPeerOptions other) + { + if (other != null) + { + m_ApiVersion = AntiCheatClientInterface.AddnotifymessagetopeerApiLatest; + } + } + + public void Set(object other) + { + Set(other as AddNotifyMessageToPeerOptions); + } + + public void Dispose() + { + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/AntiCheatClient/AddNotifyMessageToPeerOptions.cs.meta b/EOSSDK/Generated/AntiCheatClient/AddNotifyMessageToPeerOptions.cs.meta new file mode 100644 index 00000000..47406e16 --- /dev/null +++ b/EOSSDK/Generated/AntiCheatClient/AddNotifyMessageToPeerOptions.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 3ab712a264803b24991e0b02f5afc3a8 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/AntiCheatClient/AddNotifyMessageToServerOptions.cs b/EOSSDK/Generated/AntiCheatClient/AddNotifyMessageToServerOptions.cs new file mode 100644 index 00000000..92555382 --- /dev/null +++ b/EOSSDK/Generated/AntiCheatClient/AddNotifyMessageToServerOptions.cs @@ -0,0 +1,32 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.AntiCheatClient +{ + public class AddNotifyMessageToServerOptions + { + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct AddNotifyMessageToServerOptionsInternal : ISettable, System.IDisposable + { + private int m_ApiVersion; + + public void Set(AddNotifyMessageToServerOptions other) + { + if (other != null) + { + m_ApiVersion = AntiCheatClientInterface.AddnotifymessagetoserverApiLatest; + } + } + + public void Set(object other) + { + Set(other as AddNotifyMessageToServerOptions); + } + + public void Dispose() + { + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/AntiCheatClient/AddNotifyMessageToServerOptions.cs.meta b/EOSSDK/Generated/AntiCheatClient/AddNotifyMessageToServerOptions.cs.meta new file mode 100644 index 00000000..d5aa272c --- /dev/null +++ b/EOSSDK/Generated/AntiCheatClient/AddNotifyMessageToServerOptions.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 0f20d6582521c684db396e8e6378ffeb +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/AntiCheatClient/AddNotifyPeerActionRequiredOptions.cs b/EOSSDK/Generated/AntiCheatClient/AddNotifyPeerActionRequiredOptions.cs new file mode 100644 index 00000000..f3a5dd10 --- /dev/null +++ b/EOSSDK/Generated/AntiCheatClient/AddNotifyPeerActionRequiredOptions.cs @@ -0,0 +1,32 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.AntiCheatClient +{ + public class AddNotifyPeerActionRequiredOptions + { + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct AddNotifyPeerActionRequiredOptionsInternal : ISettable, System.IDisposable + { + private int m_ApiVersion; + + public void Set(AddNotifyPeerActionRequiredOptions other) + { + if (other != null) + { + m_ApiVersion = AntiCheatClientInterface.AddnotifypeeractionrequiredApiLatest; + } + } + + public void Set(object other) + { + Set(other as AddNotifyPeerActionRequiredOptions); + } + + public void Dispose() + { + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/AntiCheatClient/AddNotifyPeerActionRequiredOptions.cs.meta b/EOSSDK/Generated/AntiCheatClient/AddNotifyPeerActionRequiredOptions.cs.meta new file mode 100644 index 00000000..9a1fa800 --- /dev/null +++ b/EOSSDK/Generated/AntiCheatClient/AddNotifyPeerActionRequiredOptions.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: bb40b656855d7af4580923c0c83e034b +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/AntiCheatClient/AddNotifyPeerAuthStatusChangedOptions.cs b/EOSSDK/Generated/AntiCheatClient/AddNotifyPeerAuthStatusChangedOptions.cs new file mode 100644 index 00000000..b9feae8c --- /dev/null +++ b/EOSSDK/Generated/AntiCheatClient/AddNotifyPeerAuthStatusChangedOptions.cs @@ -0,0 +1,32 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.AntiCheatClient +{ + public class AddNotifyPeerAuthStatusChangedOptions + { + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct AddNotifyPeerAuthStatusChangedOptionsInternal : ISettable, System.IDisposable + { + private int m_ApiVersion; + + public void Set(AddNotifyPeerAuthStatusChangedOptions other) + { + if (other != null) + { + m_ApiVersion = AntiCheatClientInterface.AddnotifypeerauthstatuschangedApiLatest; + } + } + + public void Set(object other) + { + Set(other as AddNotifyPeerAuthStatusChangedOptions); + } + + public void Dispose() + { + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/AntiCheatClient/AddNotifyPeerAuthStatusChangedOptions.cs.meta b/EOSSDK/Generated/AntiCheatClient/AddNotifyPeerAuthStatusChangedOptions.cs.meta new file mode 100644 index 00000000..a2af8732 --- /dev/null +++ b/EOSSDK/Generated/AntiCheatClient/AddNotifyPeerAuthStatusChangedOptions.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 8c2c834c0c1490b41b5879f20d33e2be +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/AntiCheatClient/AntiCheatClientInterface.cs b/EOSSDK/Generated/AntiCheatClient/AntiCheatClientInterface.cs new file mode 100644 index 00000000..0cd3c3a0 --- /dev/null +++ b/EOSSDK/Generated/AntiCheatClient/AntiCheatClientInterface.cs @@ -0,0 +1,563 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.AntiCheatClient +{ + public sealed partial class AntiCheatClientInterface : Handle + { + public AntiCheatClientInterface() + { + } + + public AntiCheatClientInterface(System.IntPtr innerHandle) : base(innerHandle) + { + } + + public const int AddexternalintegritycatalogApiLatest = 1; + + public const int AddnotifymessagetopeerApiLatest = 1; + + public const int AddnotifymessagetoserverApiLatest = 1; + + public const int AddnotifypeeractionrequiredApiLatest = 1; + + public const int AddnotifypeerauthstatuschangedApiLatest = 1; + + public const int BeginsessionApiLatest = 3; + + public const int EndsessionApiLatest = 1; + + public const int GetprotectmessageoutputlengthApiLatest = 1; + + /// + /// A special peer handle that represents the client itself. + /// It does not need to be registered or unregistered and is + /// used in OnPeerActionRequiredCallback to quickly signal to the user + /// that they will not be able to join online play. + /// + public const int PeerSelf = (-1); + + public const int PollstatusApiLatest = 1; + + public const int ProtectmessageApiLatest = 1; + + public const int ReceivemessagefrompeerApiLatest = 1; + + public const int ReceivemessagefromserverApiLatest = 1; + + public const int RegisterpeerApiLatest = 1; + + public const int UnprotectmessageApiLatest = 1; + + public const int UnregisterpeerApiLatest = 1; + + /// + /// Optional. Adds an integrity catalog and certificate pair from outside the game directory, + /// for example to support mods that load from elsewhere. + /// Mode: All + /// + /// Structure containing input data. + /// + /// - If the integrity catalog was added successfully + /// - If input data was invalid + /// + public Result AddExternalIntegrityCatalog(AddExternalIntegrityCatalogOptions options) + { + var optionsAddress = System.IntPtr.Zero; + Helper.TryMarshalSet(ref optionsAddress, options); + + var funcResult = Bindings.EOS_AntiCheatClient_AddExternalIntegrityCatalog(InnerHandle, optionsAddress); + + Helper.TryMarshalDispose(ref optionsAddress); + + return funcResult; + } + + /// + /// Add a callback issued when a new message must be dispatched to a connected peer. The bound function will only be called + /// between a successful call to and the matching call in mode . + /// Mode: . + /// + /// Structure containing input data + /// This value is returned to the caller when NotificationFn is invoked + /// The callback to be fired + /// + /// A valid notification ID if successfully bound, or otherwise + /// + public ulong AddNotifyMessageToPeer(AddNotifyMessageToPeerOptions options, object clientData, OnMessageToPeerCallback notificationFn) + { + var optionsAddress = System.IntPtr.Zero; + Helper.TryMarshalSet(ref optionsAddress, options); + + var clientDataAddress = System.IntPtr.Zero; + + var notificationFnInternal = new OnMessageToPeerCallbackInternal(OnMessageToPeerCallbackInternalImplementation); + Helper.AddCallback(ref clientDataAddress, clientData, notificationFn, notificationFnInternal); + + var funcResult = Bindings.EOS_AntiCheatClient_AddNotifyMessageToPeer(InnerHandle, optionsAddress, clientDataAddress, notificationFnInternal); + + Helper.TryMarshalDispose(ref optionsAddress); + + Helper.TryAssignNotificationIdToCallback(clientDataAddress, funcResult); + + return funcResult; + } + + /// + /// Add a callback issued when a new message must be dispatched to the game server. The bound function will only be called + /// between a successful call to and the matching call in mode . + /// Mode: . + /// + /// Structure containing input data + /// This value is returned to the caller when NotificationFn is invoked + /// The callback to be fired + /// + /// A valid notification ID if successfully bound, or otherwise + /// + public ulong AddNotifyMessageToServer(AddNotifyMessageToServerOptions options, object clientData, OnMessageToServerCallback notificationFn) + { + var optionsAddress = System.IntPtr.Zero; + Helper.TryMarshalSet(ref optionsAddress, options); + + var clientDataAddress = System.IntPtr.Zero; + + var notificationFnInternal = new OnMessageToServerCallbackInternal(OnMessageToServerCallbackInternalImplementation); + Helper.AddCallback(ref clientDataAddress, clientData, notificationFn, notificationFnInternal); + + var funcResult = Bindings.EOS_AntiCheatClient_AddNotifyMessageToServer(InnerHandle, optionsAddress, clientDataAddress, notificationFnInternal); + + Helper.TryMarshalDispose(ref optionsAddress); + + Helper.TryAssignNotificationIdToCallback(clientDataAddress, funcResult); + + return funcResult; + } + + /// + /// Add a callback issued when an action must be applied to a connected client. The bound function will only be called + /// between a successful call to and the matching call in mode . + /// Mode: . + /// + /// Structure containing input data + /// This value is returned to the caller when NotificationFn is invoked + /// The callback to be fired + /// + /// A valid notification ID if successfully bound, or otherwise + /// + public ulong AddNotifyPeerActionRequired(AddNotifyPeerActionRequiredOptions options, object clientData, OnPeerActionRequiredCallback notificationFn) + { + var optionsAddress = System.IntPtr.Zero; + Helper.TryMarshalSet(ref optionsAddress, options); + + var clientDataAddress = System.IntPtr.Zero; + + var notificationFnInternal = new OnPeerActionRequiredCallbackInternal(OnPeerActionRequiredCallbackInternalImplementation); + Helper.AddCallback(ref clientDataAddress, clientData, notificationFn, notificationFnInternal); + + var funcResult = Bindings.EOS_AntiCheatClient_AddNotifyPeerActionRequired(InnerHandle, optionsAddress, clientDataAddress, notificationFnInternal); + + Helper.TryMarshalDispose(ref optionsAddress); + + Helper.TryAssignNotificationIdToCallback(clientDataAddress, funcResult); + + return funcResult; + } + + /// + /// Add an optional callback issued when a connected peer's authentication status changes. The bound function will only be called + /// between a successful call to and the matching call in mode . + /// Mode: . + /// + /// Structure containing input data + /// This value is returned to the caller when NotificationFn is invoked + /// The callback to be fired + /// + /// A valid notification ID if successfully bound, or otherwise + /// + public ulong AddNotifyPeerAuthStatusChanged(AddNotifyPeerAuthStatusChangedOptions options, object clientData, OnPeerAuthStatusChangedCallback notificationFn) + { + var optionsAddress = System.IntPtr.Zero; + Helper.TryMarshalSet(ref optionsAddress, options); + + var clientDataAddress = System.IntPtr.Zero; + + var notificationFnInternal = new OnPeerAuthStatusChangedCallbackInternal(OnPeerAuthStatusChangedCallbackInternalImplementation); + Helper.AddCallback(ref clientDataAddress, clientData, notificationFn, notificationFnInternal); + + var funcResult = Bindings.EOS_AntiCheatClient_AddNotifyPeerAuthStatusChanged(InnerHandle, optionsAddress, clientDataAddress, notificationFnInternal); + + Helper.TryMarshalDispose(ref optionsAddress); + + Helper.TryAssignNotificationIdToCallback(clientDataAddress, funcResult); + + return funcResult; + } + + /// + /// Begins a multiplayer game session. After this call returns successfully, the client is ready to exchange + /// anti-cheat messages with a game server or peer(s). When leaving one game session and connecting to a + /// different one, a new anti-cheat session must be created by calling and again. + /// Mode: All + /// + /// Structure containing input data. + /// + /// - If the session was started successfully + /// - If input data was invalid + /// - If the current mode does not support this function + /// + public Result BeginSession(BeginSessionOptions options) + { + var optionsAddress = System.IntPtr.Zero; + Helper.TryMarshalSet(ref optionsAddress, options); + + var funcResult = Bindings.EOS_AntiCheatClient_BeginSession(InnerHandle, optionsAddress); + + Helper.TryMarshalDispose(ref optionsAddress); + + return funcResult; + } + + /// + /// Ends a multiplayer game session, either by leaving an ongoing session or shutting it down entirely. + /// Mode: All + /// + /// Must be called when the multiplayer session ends, or when the local user leaves a session in progress. + /// + /// Structure containing input data. + /// + /// - If the session was ended normally + /// - If input data was invalid + /// - If the current mode does not support this function + /// + public Result EndSession(EndSessionOptions options) + { + var optionsAddress = System.IntPtr.Zero; + Helper.TryMarshalSet(ref optionsAddress, options); + + var funcResult = Bindings.EOS_AntiCheatClient_EndSession(InnerHandle, optionsAddress); + + Helper.TryMarshalDispose(ref optionsAddress); + + return funcResult; + } + + /// + /// Optional NetProtect feature for game message encryption. + /// Calculates the required decrypted buffer size for a given input data length. + /// This will not change for a given SDK version, and allows one time allocation of reusable buffers. + /// Mode: . + /// + /// Structure containing input data. + /// The length in bytes that is required to call ProtectMessage on the given input size. + /// + /// - If the output length was calculated successfully + /// - If input data was invalid + /// - If the current mode does not support this function + /// + public Result GetProtectMessageOutputLength(GetProtectMessageOutputLengthOptions options, out uint outBufferLengthBytes) + { + var optionsAddress = System.IntPtr.Zero; + Helper.TryMarshalSet(ref optionsAddress, options); + + outBufferLengthBytes = Helper.GetDefault(); + + var funcResult = Bindings.EOS_AntiCheatClient_GetProtectMessageOutputLength(InnerHandle, optionsAddress, ref outBufferLengthBytes); + + Helper.TryMarshalDispose(ref optionsAddress); + + return funcResult; + } + + /// + /// Polls for changes in client integrity status. + /// Mode: All + /// + /// The purpose of this function is to allow the game to display information + /// about anti-cheat integrity problems to the user. These are often the result of a + /// corrupt game installation rather than cheating attempts. This function does not + /// check for violations, it only provides information about violations which have + /// automatically been discovered by the anti-cheat client. Such a violation may occur + /// at any time and afterwards the user will be unable to join any protected multiplayer + /// session until after restarting the game. + /// + /// Structure containing input data. + /// On success, receives a code describing the violation that occurred. + /// On success, receives a string describing the violation which should be displayed to the user. + /// + /// - If violation information was returned successfully + /// - If OutMessage is too small to receive the message string. Call again with a larger OutMessage. + /// - If no violation has occurred since the last call + /// + public Result PollStatus(PollStatusOptions options, AntiCheatClientViolationType violationType, out string outMessage) + { + var optionsAddress = System.IntPtr.Zero; + Helper.TryMarshalSet(ref optionsAddress, options); + + System.IntPtr outMessageAddress = System.IntPtr.Zero; + uint OutMessageLength = options.OutMessageLength; + Helper.TryMarshalAllocate(ref outMessageAddress, OutMessageLength, out _); + + var funcResult = Bindings.EOS_AntiCheatClient_PollStatus(InnerHandle, optionsAddress, violationType, outMessageAddress); + + Helper.TryMarshalDispose(ref optionsAddress); + + Helper.TryMarshalGet(outMessageAddress, out outMessage); + Helper.TryMarshalDispose(ref outMessageAddress); + + return funcResult; + } + + /// + /// Optional NetProtect feature for game message encryption. + /// Encrypts an arbitrary message that will be sent to the game server and decrypted on the other side. + /// Mode: . + /// + /// Options.Data and OutBuffer may refer to the same buffer to encrypt in place. + /// + /// Structure containing input data. + /// On success, buffer where encrypted message data will be written. + /// Number of bytes that were written to OutBuffer. + /// + /// - If the message was protected successfully + /// - If input data was invalid + /// - If the current mode does not support this function + /// + public Result ProtectMessage(ProtectMessageOptions options, out byte[] outBuffer) + { + var optionsAddress = System.IntPtr.Zero; + Helper.TryMarshalSet(ref optionsAddress, options); + + System.IntPtr outBufferAddress = System.IntPtr.Zero; + uint outBufferLengthBytes = options.OutBufferSizeBytes; + Helper.TryMarshalAllocate(ref outBufferAddress, outBufferLengthBytes, out _); + + var funcResult = Bindings.EOS_AntiCheatClient_ProtectMessage(InnerHandle, optionsAddress, outBufferAddress, ref outBufferLengthBytes); + + Helper.TryMarshalDispose(ref optionsAddress); + + Helper.TryMarshalGet(outBufferAddress, out outBuffer, outBufferLengthBytes); + Helper.TryMarshalDispose(ref outBufferAddress); + + return funcResult; + } + + /// + /// Call when an anti-cheat message is received from a peer. + /// Mode: . + /// + /// Structure containing input data. + /// + /// - If the message was processed successfully + /// - If input data was invalid + /// - If the current mode does not support this function + /// + public Result ReceiveMessageFromPeer(ReceiveMessageFromPeerOptions options) + { + var optionsAddress = System.IntPtr.Zero; + Helper.TryMarshalSet(ref optionsAddress, options); + + var funcResult = Bindings.EOS_AntiCheatClient_ReceiveMessageFromPeer(InnerHandle, optionsAddress); + + Helper.TryMarshalDispose(ref optionsAddress); + + return funcResult; + } + + /// + /// Call when an anti-cheat message is received from the game server. + /// Mode: . + /// + /// Structure containing input data. + /// + /// - If the message was processed successfully + /// - If input data was invalid + /// - If the current mode does not support this function + /// + public Result ReceiveMessageFromServer(ReceiveMessageFromServerOptions options) + { + var optionsAddress = System.IntPtr.Zero; + Helper.TryMarshalSet(ref optionsAddress, options); + + var funcResult = Bindings.EOS_AntiCheatClient_ReceiveMessageFromServer(InnerHandle, optionsAddress); + + Helper.TryMarshalDispose(ref optionsAddress); + + return funcResult; + } + + /// + /// Registers a connected peer-to-peer client. + /// Mode: . + /// + /// Must be paired with a call to if this user leaves the session + /// in progress, or if the entire session is ending. + /// + /// Structure containing input data. + /// + /// - If the player was registered successfully + /// - If input data was invalid + /// - If the current mode does not support this function + /// + public Result RegisterPeer(RegisterPeerOptions options) + { + var optionsAddress = System.IntPtr.Zero; + Helper.TryMarshalSet(ref optionsAddress, options); + + var funcResult = Bindings.EOS_AntiCheatClient_RegisterPeer(InnerHandle, optionsAddress); + + Helper.TryMarshalDispose(ref optionsAddress); + + return funcResult; + } + + /// + /// Remove a previously bound handler. + /// Mode: Any. + /// + /// The previously bound notification ID + public void RemoveNotifyMessageToPeer(ulong notificationId) + { + Helper.TryRemoveCallbackByNotificationId(notificationId); + + Bindings.EOS_AntiCheatClient_RemoveNotifyMessageToPeer(InnerHandle, notificationId); + } + + /// + /// Remove a previously bound handler. + /// Mode: Any. + /// + /// The previously bound notification ID + public void RemoveNotifyMessageToServer(ulong notificationId) + { + Helper.TryRemoveCallbackByNotificationId(notificationId); + + Bindings.EOS_AntiCheatClient_RemoveNotifyMessageToServer(InnerHandle, notificationId); + } + + /// + /// Remove a previously bound handler. + /// Mode: Any. + /// + /// The previously bound notification ID + public void RemoveNotifyPeerActionRequired(ulong notificationId) + { + Helper.TryRemoveCallbackByNotificationId(notificationId); + + Bindings.EOS_AntiCheatClient_RemoveNotifyPeerActionRequired(InnerHandle, notificationId); + } + + /// + /// Remove a previously bound handler. + /// Mode: Any. + /// + /// The previously bound notification ID + public void RemoveNotifyPeerAuthStatusChanged(ulong notificationId) + { + Helper.TryRemoveCallbackByNotificationId(notificationId); + + Bindings.EOS_AntiCheatClient_RemoveNotifyPeerAuthStatusChanged(InnerHandle, notificationId); + } + + /// + /// Optional NetProtect feature for game message encryption. + /// Decrypts an encrypted message received from the game server. + /// Mode: . + /// + /// Options.Data and OutBuffer may refer to the same buffer to decrypt in place. + /// + /// Structure containing input data. + /// On success, buffer where encrypted message data will be written. + /// Number of bytes that were written to OutBuffer. + /// + /// - If the message was unprotected successfully + /// - If input data was invalid + /// - If the current mode does not support this function + /// + public Result UnprotectMessage(UnprotectMessageOptions options, out byte[] outBuffer) + { + var optionsAddress = System.IntPtr.Zero; + Helper.TryMarshalSet(ref optionsAddress, options); + + System.IntPtr outBufferAddress = System.IntPtr.Zero; + uint outBufferLengthBytes = options.OutBufferSizeBytes; + Helper.TryMarshalAllocate(ref outBufferAddress, outBufferLengthBytes, out _); + + var funcResult = Bindings.EOS_AntiCheatClient_UnprotectMessage(InnerHandle, optionsAddress, outBufferAddress, ref outBufferLengthBytes); + + Helper.TryMarshalDispose(ref optionsAddress); + + Helper.TryMarshalGet(outBufferAddress, out outBuffer, outBufferLengthBytes); + Helper.TryMarshalDispose(ref outBufferAddress); + + return funcResult; + } + + /// + /// Unregisters a disconnected peer-to-peer client. + /// Mode: . + /// + /// Must be called when a user leaves a session in progress. + /// + /// Structure containing input data. + /// + /// - If the player was unregistered successfully + /// - If input data was invalid + /// - If the current mode does not support this function + /// + public Result UnregisterPeer(UnregisterPeerOptions options) + { + var optionsAddress = System.IntPtr.Zero; + Helper.TryMarshalSet(ref optionsAddress, options); + + var funcResult = Bindings.EOS_AntiCheatClient_UnregisterPeer(InnerHandle, optionsAddress); + + Helper.TryMarshalDispose(ref optionsAddress); + + return funcResult; + } + + [MonoPInvokeCallback(typeof(OnMessageToPeerCallbackInternal))] + internal static void OnMessageToPeerCallbackInternalImplementation(System.IntPtr data) + { + OnMessageToPeerCallback callback; + AntiCheatCommon.OnMessageToClientCallbackInfo callbackInfo; + if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) + { + callback(callbackInfo); + } + } + + [MonoPInvokeCallback(typeof(OnMessageToServerCallbackInternal))] + internal static void OnMessageToServerCallbackInternalImplementation(System.IntPtr data) + { + OnMessageToServerCallback callback; + OnMessageToServerCallbackInfo callbackInfo; + if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) + { + callback(callbackInfo); + } + } + + [MonoPInvokeCallback(typeof(OnPeerActionRequiredCallbackInternal))] + internal static void OnPeerActionRequiredCallbackInternalImplementation(System.IntPtr data) + { + OnPeerActionRequiredCallback callback; + AntiCheatCommon.OnClientActionRequiredCallbackInfo callbackInfo; + if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) + { + callback(callbackInfo); + } + } + + [MonoPInvokeCallback(typeof(OnPeerAuthStatusChangedCallbackInternal))] + internal static void OnPeerAuthStatusChangedCallbackInternalImplementation(System.IntPtr data) + { + OnPeerAuthStatusChangedCallback callback; + AntiCheatCommon.OnClientAuthStatusChangedCallbackInfo callbackInfo; + if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) + { + callback(callbackInfo); + } + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/AntiCheatClient/AntiCheatClientInterface.cs.meta b/EOSSDK/Generated/AntiCheatClient/AntiCheatClientInterface.cs.meta new file mode 100644 index 00000000..3939ff3a --- /dev/null +++ b/EOSSDK/Generated/AntiCheatClient/AntiCheatClientInterface.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: fedc0faa387b23b44b09b55b4fca19b1 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/AntiCheatClient/AntiCheatClientMode.cs b/EOSSDK/Generated/AntiCheatClient/AntiCheatClientMode.cs new file mode 100644 index 00000000..3e9b5fb6 --- /dev/null +++ b/EOSSDK/Generated/AntiCheatClient/AntiCheatClientMode.cs @@ -0,0 +1,24 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.AntiCheatClient +{ + /// + /// Operating modes + /// + public enum AntiCheatClientMode : int + { + /// + /// Not used + /// + Invalid = 0, + /// + /// Dedicated or listen server mode + /// + ClientServer = 1, + /// + /// Full mesh peer-to-peer mode + /// + PeerToPeer = 2 + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/AntiCheatClient/AntiCheatClientMode.cs.meta b/EOSSDK/Generated/AntiCheatClient/AntiCheatClientMode.cs.meta new file mode 100644 index 00000000..5d8fdf8c --- /dev/null +++ b/EOSSDK/Generated/AntiCheatClient/AntiCheatClientMode.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: b00b0480cbfe505489a67c12100b9752 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/AntiCheatClient/AntiCheatClientViolationType.cs b/EOSSDK/Generated/AntiCheatClient/AntiCheatClientViolationType.cs new file mode 100644 index 00000000..39cd3f9d --- /dev/null +++ b/EOSSDK/Generated/AntiCheatClient/AntiCheatClientViolationType.cs @@ -0,0 +1,77 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.AntiCheatClient +{ + /// + /// Anti-cheat integrity violation types + /// + public enum AntiCheatClientViolationType : int + { + /// + /// Not used + /// + Invalid = 0, + /// + /// An anti-cheat asset integrity catalog file could not be found + /// + IntegrityCatalogNotFound = 1, + /// + /// An anti-cheat asset integrity catalog file is corrupt or invalid + /// + IntegrityCatalogError = 2, + /// + /// An anti-cheat asset integrity catalog file's certificate has been revoked. + /// + IntegrityCatalogCertificateRevoked = 3, + /// + /// The primary anti-cheat asset integrity catalog does not include an entry for the game's + /// main executable, which is required. + /// + IntegrityCatalogMissingMainExecutable = 4, + /// + /// A disallowed game file modification was detected + /// + GameFileMismatch = 5, + /// + /// A disallowed game file removal was detected + /// + RequiredGameFileNotFound = 6, + /// + /// A disallowed game file addition was detected + /// + UnknownGameFileForbidden = 7, + /// + /// A system file failed an integrity check + /// + SystemFileUntrusted = 8, + /// + /// A disallowed code module was loaded into the game process + /// + ForbiddenModuleLoaded = 9, + /// + /// A disallowed game process memory modification was detected + /// + CorruptedMemory = 10, + /// + /// A disallowed tool was detected running in the system + /// + ForbiddenToolDetected = 11, + /// + /// An internal anti-cheat integrity check failed + /// + InternalAntiCheatViolation = 12, + /// + /// Integrity checks on messages between the game client and game server failed + /// + CorruptedNetworkMessageFlow = 13, + /// + /// The game is running inside a disallowed virtual machine + /// + VirtualMachineNotAllowed = 14, + /// + /// A forbidden operating system configuration was detected + /// + ForbiddenSystemConfiguration = 15 + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/AntiCheatClient/AntiCheatClientViolationType.cs.meta b/EOSSDK/Generated/AntiCheatClient/AntiCheatClientViolationType.cs.meta new file mode 100644 index 00000000..8f57fddf --- /dev/null +++ b/EOSSDK/Generated/AntiCheatClient/AntiCheatClientViolationType.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 9b641568a7671e147ba4269db06a8c8c +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/AntiCheatClient/BeginSessionOptions.cs b/EOSSDK/Generated/AntiCheatClient/BeginSessionOptions.cs new file mode 100644 index 00000000..0da204fe --- /dev/null +++ b/EOSSDK/Generated/AntiCheatClient/BeginSessionOptions.cs @@ -0,0 +1,62 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.AntiCheatClient +{ + public class BeginSessionOptions + { + /// + /// Logged in user identifier from earlier call to family of functions + /// + public ProductUserId LocalUserId { get; set; } + + /// + /// Operating mode + /// + public AntiCheatClientMode Mode { get; set; } + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct BeginSessionOptionsInternal : ISettable, System.IDisposable + { + private int m_ApiVersion; + private System.IntPtr m_LocalUserId; + private AntiCheatClientMode m_Mode; + + public ProductUserId LocalUserId + { + set + { + Helper.TryMarshalSet(ref m_LocalUserId, value); + } + } + + public AntiCheatClientMode Mode + { + set + { + m_Mode = value; + } + } + + public void Set(BeginSessionOptions other) + { + if (other != null) + { + m_ApiVersion = AntiCheatClientInterface.BeginsessionApiLatest; + LocalUserId = other.LocalUserId; + Mode = other.Mode; + } + } + + public void Set(object other) + { + Set(other as BeginSessionOptions); + } + + public void Dispose() + { + Helper.TryMarshalDispose(ref m_LocalUserId); + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/AntiCheatClient/BeginSessionOptions.cs.meta b/EOSSDK/Generated/AntiCheatClient/BeginSessionOptions.cs.meta new file mode 100644 index 00000000..b61d8b57 --- /dev/null +++ b/EOSSDK/Generated/AntiCheatClient/BeginSessionOptions.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 86f10c9ef902d614298a75d119f7e20f +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/AntiCheatClient/EndSessionOptions.cs b/EOSSDK/Generated/AntiCheatClient/EndSessionOptions.cs new file mode 100644 index 00000000..495354ef --- /dev/null +++ b/EOSSDK/Generated/AntiCheatClient/EndSessionOptions.cs @@ -0,0 +1,32 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.AntiCheatClient +{ + public class EndSessionOptions + { + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct EndSessionOptionsInternal : ISettable, System.IDisposable + { + private int m_ApiVersion; + + public void Set(EndSessionOptions other) + { + if (other != null) + { + m_ApiVersion = AntiCheatClientInterface.EndsessionApiLatest; + } + } + + public void Set(object other) + { + Set(other as EndSessionOptions); + } + + public void Dispose() + { + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/AntiCheatClient/EndSessionOptions.cs.meta b/EOSSDK/Generated/AntiCheatClient/EndSessionOptions.cs.meta new file mode 100644 index 00000000..138dd521 --- /dev/null +++ b/EOSSDK/Generated/AntiCheatClient/EndSessionOptions.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 905fbe5a8da89374d9c480daeb68a4aa +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/AntiCheatClient/GetProtectMessageOutputLengthOptions.cs b/EOSSDK/Generated/AntiCheatClient/GetProtectMessageOutputLengthOptions.cs new file mode 100644 index 00000000..600dfc04 --- /dev/null +++ b/EOSSDK/Generated/AntiCheatClient/GetProtectMessageOutputLengthOptions.cs @@ -0,0 +1,46 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.AntiCheatClient +{ + public class GetProtectMessageOutputLengthOptions + { + /// + /// Length in bytes of input + /// + public uint DataLengthBytes { get; set; } + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct GetProtectMessageOutputLengthOptionsInternal : ISettable, System.IDisposable + { + private int m_ApiVersion; + private uint m_DataLengthBytes; + + public uint DataLengthBytes + { + set + { + m_DataLengthBytes = value; + } + } + + public void Set(GetProtectMessageOutputLengthOptions other) + { + if (other != null) + { + m_ApiVersion = AntiCheatClientInterface.GetprotectmessageoutputlengthApiLatest; + DataLengthBytes = other.DataLengthBytes; + } + } + + public void Set(object other) + { + Set(other as GetProtectMessageOutputLengthOptions); + } + + public void Dispose() + { + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/AntiCheatClient/GetProtectMessageOutputLengthOptions.cs.meta b/EOSSDK/Generated/AntiCheatClient/GetProtectMessageOutputLengthOptions.cs.meta new file mode 100644 index 00000000..4845f6b9 --- /dev/null +++ b/EOSSDK/Generated/AntiCheatClient/GetProtectMessageOutputLengthOptions.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 1fdc1ae7090bd7e4ea91e0057bc54e95 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/AntiCheatClient/OnMessageToPeerCallback.cs b/EOSSDK/Generated/AntiCheatClient/OnMessageToPeerCallback.cs new file mode 100644 index 00000000..78976895 --- /dev/null +++ b/EOSSDK/Generated/AntiCheatClient/OnMessageToPeerCallback.cs @@ -0,0 +1,19 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.AntiCheatClient +{ + /// + /// Callback issued when a new message must be dispatched to a connected peer. + /// + /// Messages contain opaque binary data of up to 256 bytes and must be transmitted + /// to the correct peer using the game's own networking layer, then delivered + /// to the client anti-cheat instance using the function. + /// + /// This callback is always issued from within on its calling thread. + /// + public delegate void OnMessageToPeerCallback(AntiCheatCommon.OnMessageToClientCallbackInfo data); + + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void OnMessageToPeerCallbackInternal(System.IntPtr data); +} \ No newline at end of file diff --git a/EOSSDK/Generated/AntiCheatClient/OnMessageToPeerCallback.cs.meta b/EOSSDK/Generated/AntiCheatClient/OnMessageToPeerCallback.cs.meta new file mode 100644 index 00000000..ed8e67ef --- /dev/null +++ b/EOSSDK/Generated/AntiCheatClient/OnMessageToPeerCallback.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: ca9599b29ae2d88419db107a1ac11a43 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/AntiCheatClient/OnMessageToServerCallback.cs b/EOSSDK/Generated/AntiCheatClient/OnMessageToServerCallback.cs new file mode 100644 index 00000000..a7ef8f19 --- /dev/null +++ b/EOSSDK/Generated/AntiCheatClient/OnMessageToServerCallback.cs @@ -0,0 +1,19 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.AntiCheatClient +{ + /// + /// Callback issued when a new message must be dispatched to the game server. + /// + /// Messages contain opaque binary data of up to 256 bytes and must be transmitted + /// to the game server using the game's own networking layer, then delivered + /// to the server anti-cheat instance using the function. + /// + /// This callback is always issued from within on its calling thread. + /// + public delegate void OnMessageToServerCallback(OnMessageToServerCallbackInfo data); + + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void OnMessageToServerCallbackInternal(System.IntPtr data); +} \ No newline at end of file diff --git a/EOSSDK/Generated/AntiCheatClient/OnMessageToServerCallback.cs.meta b/EOSSDK/Generated/AntiCheatClient/OnMessageToServerCallback.cs.meta new file mode 100644 index 00000000..45f0f5a0 --- /dev/null +++ b/EOSSDK/Generated/AntiCheatClient/OnMessageToServerCallback.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 53221573ac657a04588b7d3259950e2b +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/AntiCheatClient/OnMessageToServerCallbackInfo.cs b/EOSSDK/Generated/AntiCheatClient/OnMessageToServerCallbackInfo.cs new file mode 100644 index 00000000..197f9a7b --- /dev/null +++ b/EOSSDK/Generated/AntiCheatClient/OnMessageToServerCallbackInfo.cs @@ -0,0 +1,76 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.AntiCheatClient +{ + /// + /// Structure containing details about a new message that must be dispatched to the game server. + /// + public class OnMessageToServerCallbackInfo : ICallbackInfo, ISettable + { + /// + /// Caller-specified context data + /// + public object ClientData { get; private set; } + + /// + /// The message data that must be sent to the server + /// + public byte[] MessageData { get; private set; } + + public Result? GetResultCode() + { + return null; + } + + internal void Set(OnMessageToServerCallbackInfoInternal? other) + { + if (other != null) + { + ClientData = other.Value.ClientData; + MessageData = other.Value.MessageData; + } + } + + public void Set(object other) + { + Set(other as OnMessageToServerCallbackInfoInternal?); + } + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct OnMessageToServerCallbackInfoInternal : ICallbackInfoInternal + { + private System.IntPtr m_ClientData; + private System.IntPtr m_MessageData; + private uint m_MessageDataSizeBytes; + + public object ClientData + { + get + { + object value; + Helper.TryMarshalGet(m_ClientData, out value); + return value; + } + } + + public System.IntPtr ClientDataAddress + { + get + { + return m_ClientData; + } + } + + public byte[] MessageData + { + get + { + byte[] value; + Helper.TryMarshalGet(m_MessageData, out value, m_MessageDataSizeBytes); + return value; + } + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/AntiCheatClient/OnMessageToServerCallbackInfo.cs.meta b/EOSSDK/Generated/AntiCheatClient/OnMessageToServerCallbackInfo.cs.meta new file mode 100644 index 00000000..fb149149 --- /dev/null +++ b/EOSSDK/Generated/AntiCheatClient/OnMessageToServerCallbackInfo.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 5ffc52fcf62645a488f1c17ad5476aea +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/AntiCheatClient/OnPeerActionRequiredCallback.cs b/EOSSDK/Generated/AntiCheatClient/OnPeerActionRequiredCallback.cs new file mode 100644 index 00000000..cdc9b65e --- /dev/null +++ b/EOSSDK/Generated/AntiCheatClient/OnPeerActionRequiredCallback.cs @@ -0,0 +1,14 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.AntiCheatClient +{ + /// + /// Callback issued when an action must be applied to a connected peer. + /// This callback is always issued from within on its calling thread. + /// + public delegate void OnPeerActionRequiredCallback(AntiCheatCommon.OnClientActionRequiredCallbackInfo data); + + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void OnPeerActionRequiredCallbackInternal(System.IntPtr data); +} \ No newline at end of file diff --git a/EOSSDK/Generated/AntiCheatClient/OnPeerActionRequiredCallback.cs.meta b/EOSSDK/Generated/AntiCheatClient/OnPeerActionRequiredCallback.cs.meta new file mode 100644 index 00000000..01093381 --- /dev/null +++ b/EOSSDK/Generated/AntiCheatClient/OnPeerActionRequiredCallback.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 3b67082ca6ef40647bcfcf71a8be13c2 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/AntiCheatClient/OnPeerAuthStatusChangedCallback.cs b/EOSSDK/Generated/AntiCheatClient/OnPeerAuthStatusChangedCallback.cs new file mode 100644 index 00000000..c5c491ae --- /dev/null +++ b/EOSSDK/Generated/AntiCheatClient/OnPeerAuthStatusChangedCallback.cs @@ -0,0 +1,14 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.AntiCheatClient +{ + /// + /// Optional callback issued when a connected peer's authentication status has changed. + /// This callback is always issued from within on its calling thread. + /// + public delegate void OnPeerAuthStatusChangedCallback(AntiCheatCommon.OnClientAuthStatusChangedCallbackInfo data); + + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void OnPeerAuthStatusChangedCallbackInternal(System.IntPtr data); +} \ No newline at end of file diff --git a/EOSSDK/Generated/AntiCheatClient/OnPeerAuthStatusChangedCallback.cs.meta b/EOSSDK/Generated/AntiCheatClient/OnPeerAuthStatusChangedCallback.cs.meta new file mode 100644 index 00000000..1765f7bf --- /dev/null +++ b/EOSSDK/Generated/AntiCheatClient/OnPeerAuthStatusChangedCallback.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 43fb6618d6087564faad8ff8756a9667 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/AntiCheatClient/PollStatusOptions.cs b/EOSSDK/Generated/AntiCheatClient/PollStatusOptions.cs new file mode 100644 index 00000000..00992001 --- /dev/null +++ b/EOSSDK/Generated/AntiCheatClient/PollStatusOptions.cs @@ -0,0 +1,46 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.AntiCheatClient +{ + public class PollStatusOptions + { + /// + /// The size of OutMessage in bytes. Recommended size is 256 bytes. + /// + public uint OutMessageLength { get; set; } + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct PollStatusOptionsInternal : ISettable, System.IDisposable + { + private int m_ApiVersion; + private uint m_OutMessageLength; + + public uint OutMessageLength + { + set + { + m_OutMessageLength = value; + } + } + + public void Set(PollStatusOptions other) + { + if (other != null) + { + m_ApiVersion = AntiCheatClientInterface.PollstatusApiLatest; + OutMessageLength = other.OutMessageLength; + } + } + + public void Set(object other) + { + Set(other as PollStatusOptions); + } + + public void Dispose() + { + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/AntiCheatClient/PollStatusOptions.cs.meta b/EOSSDK/Generated/AntiCheatClient/PollStatusOptions.cs.meta new file mode 100644 index 00000000..f074fe67 --- /dev/null +++ b/EOSSDK/Generated/AntiCheatClient/PollStatusOptions.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 9deecd610e171814286ef07776534ccf +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/AntiCheatClient/ProtectMessageOptions.cs b/EOSSDK/Generated/AntiCheatClient/ProtectMessageOptions.cs new file mode 100644 index 00000000..63290f4a --- /dev/null +++ b/EOSSDK/Generated/AntiCheatClient/ProtectMessageOptions.cs @@ -0,0 +1,63 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.AntiCheatClient +{ + public class ProtectMessageOptions + { + /// + /// The data to encrypt + /// + public byte[] Data { get; set; } + + /// + /// The size in bytes of OutBuffer + /// + public uint OutBufferSizeBytes { get; set; } + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct ProtectMessageOptionsInternal : ISettable, System.IDisposable + { + private int m_ApiVersion; + private uint m_DataLengthBytes; + private System.IntPtr m_Data; + private uint m_OutBufferSizeBytes; + + public byte[] Data + { + set + { + Helper.TryMarshalSet(ref m_Data, value, out m_DataLengthBytes); + } + } + + public uint OutBufferSizeBytes + { + set + { + m_OutBufferSizeBytes = value; + } + } + + public void Set(ProtectMessageOptions other) + { + if (other != null) + { + m_ApiVersion = AntiCheatClientInterface.ProtectmessageApiLatest; + Data = other.Data; + OutBufferSizeBytes = other.OutBufferSizeBytes; + } + } + + public void Set(object other) + { + Set(other as ProtectMessageOptions); + } + + public void Dispose() + { + Helper.TryMarshalDispose(ref m_Data); + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/AntiCheatClient/ProtectMessageOptions.cs.meta b/EOSSDK/Generated/AntiCheatClient/ProtectMessageOptions.cs.meta new file mode 100644 index 00000000..e303bf14 --- /dev/null +++ b/EOSSDK/Generated/AntiCheatClient/ProtectMessageOptions.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: dae821c9a9f672f4eb1b092b877d85d0 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/AntiCheatClient/ReceiveMessageFromPeerOptions.cs b/EOSSDK/Generated/AntiCheatClient/ReceiveMessageFromPeerOptions.cs new file mode 100644 index 00000000..6a3dcf89 --- /dev/null +++ b/EOSSDK/Generated/AntiCheatClient/ReceiveMessageFromPeerOptions.cs @@ -0,0 +1,64 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.AntiCheatClient +{ + public class ReceiveMessageFromPeerOptions + { + /// + /// The handle describing the sender of this message + /// + public System.IntPtr PeerHandle { get; set; } + + /// + /// The data received + /// + public byte[] Data { get; set; } + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct ReceiveMessageFromPeerOptionsInternal : ISettable, System.IDisposable + { + private int m_ApiVersion; + private System.IntPtr m_PeerHandle; + private uint m_DataLengthBytes; + private System.IntPtr m_Data; + + public System.IntPtr PeerHandle + { + set + { + m_PeerHandle = value; + } + } + + public byte[] Data + { + set + { + Helper.TryMarshalSet(ref m_Data, value, out m_DataLengthBytes); + } + } + + public void Set(ReceiveMessageFromPeerOptions other) + { + if (other != null) + { + m_ApiVersion = AntiCheatClientInterface.ReceivemessagefrompeerApiLatest; + PeerHandle = other.PeerHandle; + Data = other.Data; + } + } + + public void Set(object other) + { + Set(other as ReceiveMessageFromPeerOptions); + } + + public void Dispose() + { + Helper.TryMarshalDispose(ref m_PeerHandle); + Helper.TryMarshalDispose(ref m_Data); + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/AntiCheatClient/ReceiveMessageFromPeerOptions.cs.meta b/EOSSDK/Generated/AntiCheatClient/ReceiveMessageFromPeerOptions.cs.meta new file mode 100644 index 00000000..9a0f9ff4 --- /dev/null +++ b/EOSSDK/Generated/AntiCheatClient/ReceiveMessageFromPeerOptions.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 008ab8565fa8c4b4e8f5f758a5a4d134 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/AntiCheatClient/ReceiveMessageFromServerOptions.cs b/EOSSDK/Generated/AntiCheatClient/ReceiveMessageFromServerOptions.cs new file mode 100644 index 00000000..b7a74fe5 --- /dev/null +++ b/EOSSDK/Generated/AntiCheatClient/ReceiveMessageFromServerOptions.cs @@ -0,0 +1,48 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.AntiCheatClient +{ + public class ReceiveMessageFromServerOptions + { + /// + /// The data received + /// + public byte[] Data { get; set; } + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct ReceiveMessageFromServerOptionsInternal : ISettable, System.IDisposable + { + private int m_ApiVersion; + private uint m_DataLengthBytes; + private System.IntPtr m_Data; + + public byte[] Data + { + set + { + Helper.TryMarshalSet(ref m_Data, value, out m_DataLengthBytes); + } + } + + public void Set(ReceiveMessageFromServerOptions other) + { + if (other != null) + { + m_ApiVersion = AntiCheatClientInterface.ReceivemessagefromserverApiLatest; + Data = other.Data; + } + } + + public void Set(object other) + { + Set(other as ReceiveMessageFromServerOptions); + } + + public void Dispose() + { + Helper.TryMarshalDispose(ref m_Data); + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/AntiCheatClient/ReceiveMessageFromServerOptions.cs.meta b/EOSSDK/Generated/AntiCheatClient/ReceiveMessageFromServerOptions.cs.meta new file mode 100644 index 00000000..722fccac --- /dev/null +++ b/EOSSDK/Generated/AntiCheatClient/ReceiveMessageFromServerOptions.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 59428e82fd66c4e47bd7e9bc433b7d93 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/AntiCheatClient/RegisterPeerOptions.cs b/EOSSDK/Generated/AntiCheatClient/RegisterPeerOptions.cs new file mode 100644 index 00000000..a0a85f52 --- /dev/null +++ b/EOSSDK/Generated/AntiCheatClient/RegisterPeerOptions.cs @@ -0,0 +1,114 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.AntiCheatClient +{ + public class RegisterPeerOptions + { + /// + /// Locally unique value describing the remote user (e.g. a player object pointer) + /// + public System.IntPtr PeerHandle { get; set; } + + /// + /// Type of remote user being registered + /// + public AntiCheatCommon.AntiCheatCommonClientType ClientType { get; set; } + + /// + /// Remote user's platform, if known + /// + public AntiCheatCommon.AntiCheatCommonClientPlatform ClientPlatform { get; set; } + + /// + /// Identifier for the remote user. This is typically a string representation of an + /// account ID, but it can be any string which is both unique (two different users will never + /// have the same string) and consistent (if the same user connects to this game session + /// twice, the same string will be used) in the scope of a single protected game session. + /// + public string AccountId { get; set; } + + /// + /// Optional IP address for the remote user. May be null if not available. + /// IPv4 format: "0.0.0.0" + /// IPv6 format: "0:0:0:0:0:0:0:0" + /// + public string IpAddress { get; set; } + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct RegisterPeerOptionsInternal : ISettable, System.IDisposable + { + private int m_ApiVersion; + private System.IntPtr m_PeerHandle; + private AntiCheatCommon.AntiCheatCommonClientType m_ClientType; + private AntiCheatCommon.AntiCheatCommonClientPlatform m_ClientPlatform; + private System.IntPtr m_AccountId; + private System.IntPtr m_IpAddress; + + public System.IntPtr PeerHandle + { + set + { + m_PeerHandle = value; + } + } + + public AntiCheatCommon.AntiCheatCommonClientType ClientType + { + set + { + m_ClientType = value; + } + } + + public AntiCheatCommon.AntiCheatCommonClientPlatform ClientPlatform + { + set + { + m_ClientPlatform = value; + } + } + + public string AccountId + { + set + { + Helper.TryMarshalSet(ref m_AccountId, value); + } + } + + public string IpAddress + { + set + { + Helper.TryMarshalSet(ref m_IpAddress, value); + } + } + + public void Set(RegisterPeerOptions other) + { + if (other != null) + { + m_ApiVersion = AntiCheatClientInterface.RegisterpeerApiLatest; + PeerHandle = other.PeerHandle; + ClientType = other.ClientType; + ClientPlatform = other.ClientPlatform; + AccountId = other.AccountId; + IpAddress = other.IpAddress; + } + } + + public void Set(object other) + { + Set(other as RegisterPeerOptions); + } + + public void Dispose() + { + Helper.TryMarshalDispose(ref m_PeerHandle); + Helper.TryMarshalDispose(ref m_AccountId); + Helper.TryMarshalDispose(ref m_IpAddress); + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/AntiCheatClient/RegisterPeerOptions.cs.meta b/EOSSDK/Generated/AntiCheatClient/RegisterPeerOptions.cs.meta new file mode 100644 index 00000000..e286300d --- /dev/null +++ b/EOSSDK/Generated/AntiCheatClient/RegisterPeerOptions.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: b018d33a4ed3a35429534cb22add74b8 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/AntiCheatClient/UnprotectMessageOptions.cs b/EOSSDK/Generated/AntiCheatClient/UnprotectMessageOptions.cs new file mode 100644 index 00000000..dec91bf7 --- /dev/null +++ b/EOSSDK/Generated/AntiCheatClient/UnprotectMessageOptions.cs @@ -0,0 +1,63 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.AntiCheatClient +{ + public class UnprotectMessageOptions + { + /// + /// The data to decrypt + /// + public byte[] Data { get; set; } + + /// + /// The size in bytes of OutBuffer + /// + public uint OutBufferSizeBytes { get; set; } + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct UnprotectMessageOptionsInternal : ISettable, System.IDisposable + { + private int m_ApiVersion; + private uint m_DataLengthBytes; + private System.IntPtr m_Data; + private uint m_OutBufferSizeBytes; + + public byte[] Data + { + set + { + Helper.TryMarshalSet(ref m_Data, value, out m_DataLengthBytes); + } + } + + public uint OutBufferSizeBytes + { + set + { + m_OutBufferSizeBytes = value; + } + } + + public void Set(UnprotectMessageOptions other) + { + if (other != null) + { + m_ApiVersion = AntiCheatClientInterface.UnprotectmessageApiLatest; + Data = other.Data; + OutBufferSizeBytes = other.OutBufferSizeBytes; + } + } + + public void Set(object other) + { + Set(other as UnprotectMessageOptions); + } + + public void Dispose() + { + Helper.TryMarshalDispose(ref m_Data); + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/AntiCheatClient/UnprotectMessageOptions.cs.meta b/EOSSDK/Generated/AntiCheatClient/UnprotectMessageOptions.cs.meta new file mode 100644 index 00000000..1a45eb70 --- /dev/null +++ b/EOSSDK/Generated/AntiCheatClient/UnprotectMessageOptions.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: aa51a65c63f891e4a9220db3568331a8 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/AntiCheatClient/UnregisterPeerOptions.cs b/EOSSDK/Generated/AntiCheatClient/UnregisterPeerOptions.cs new file mode 100644 index 00000000..8c989e38 --- /dev/null +++ b/EOSSDK/Generated/AntiCheatClient/UnregisterPeerOptions.cs @@ -0,0 +1,47 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.AntiCheatClient +{ + public class UnregisterPeerOptions + { + /// + /// Locally unique value describing the remote user, as previously passed to + /// + public System.IntPtr PeerHandle { get; set; } + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct UnregisterPeerOptionsInternal : ISettable, System.IDisposable + { + private int m_ApiVersion; + private System.IntPtr m_PeerHandle; + + public System.IntPtr PeerHandle + { + set + { + m_PeerHandle = value; + } + } + + public void Set(UnregisterPeerOptions other) + { + if (other != null) + { + m_ApiVersion = AntiCheatClientInterface.UnregisterpeerApiLatest; + PeerHandle = other.PeerHandle; + } + } + + public void Set(object other) + { + Set(other as UnregisterPeerOptions); + } + + public void Dispose() + { + Helper.TryMarshalDispose(ref m_PeerHandle); + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/AntiCheatClient/UnregisterPeerOptions.cs.meta b/EOSSDK/Generated/AntiCheatClient/UnregisterPeerOptions.cs.meta new file mode 100644 index 00000000..c2416908 --- /dev/null +++ b/EOSSDK/Generated/AntiCheatClient/UnregisterPeerOptions.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 48940d5a0dd76d947a9bbed4ddba967e +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/AntiCheatCommon.meta b/EOSSDK/Generated/AntiCheatCommon.meta new file mode 100644 index 00000000..e4cb2932 --- /dev/null +++ b/EOSSDK/Generated/AntiCheatCommon.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: a8dfb81212428d04f8be2108462f4a98 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonClientAction.cs b/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonClientAction.cs new file mode 100644 index 00000000..1e0856fd --- /dev/null +++ b/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonClientAction.cs @@ -0,0 +1,20 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.AntiCheatCommon +{ + /// + /// Anti-cheat action values. Applicable to both clients and remote peers. + /// + public enum AntiCheatCommonClientAction : int + { + /// + /// Not used + /// + Invalid = 0, + /// + /// The client/peer must be removed from the current game session + /// + RemovePlayer = 1 + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonClientAction.cs.meta b/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonClientAction.cs.meta new file mode 100644 index 00000000..3429255c --- /dev/null +++ b/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonClientAction.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: d58912827364896498d70c5a3ed6f8eb +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonClientActionReason.cs b/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonClientActionReason.cs new file mode 100644 index 00000000..55cbb566 --- /dev/null +++ b/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonClientActionReason.cs @@ -0,0 +1,56 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.AntiCheatCommon +{ + /// + /// Anti-cheat action reasons. Applicable to both clients and remote peers. + /// + public enum AntiCheatCommonClientActionReason : int + { + /// + /// Not used + /// + Invalid = 0, + /// + /// An internal error occurred + /// + InternalError = 1, + /// + /// An anti-cheat message received from the client/peer was corrupt or invalid + /// + InvalidMessage = 2, + /// + /// The client/peer's anti-cheat authentication failed + /// + AuthenticationFailed = 3, + /// + /// The client/peer failed to load the anti-cheat module at startup + /// + NullClient = 4, + /// + /// The client/peer's anti-cheat heartbeat was not received + /// + HeartbeatTimeout = 5, + /// + /// The client/peer failed an anti-cheat client runtime check + /// + ClientViolation = 6, + /// + /// The client/peer failed an anti-cheat backend runtime check + /// + BackendViolation = 7, + /// + /// The client/peer is temporarily blocked from playing on this game server + /// + TemporaryCooldown = 8, + /// + /// The client/peer is temporarily banned + /// + TemporaryBanned = 9, + /// + /// The client/peer is permanently banned + /// + PermanentBanned = 10 + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonClientActionReason.cs.meta b/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonClientActionReason.cs.meta new file mode 100644 index 00000000..352633da --- /dev/null +++ b/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonClientActionReason.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: d6eea5c9362f1fe4fba2463173dedbc9 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonClientAuthStatus.cs b/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonClientAuthStatus.cs new file mode 100644 index 00000000..64929c27 --- /dev/null +++ b/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonClientAuthStatus.cs @@ -0,0 +1,24 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.AntiCheatCommon +{ + /// + /// The client/peer's anti-cheat authentication status + /// + public enum AntiCheatCommonClientAuthStatus : int + { + /// + /// Not used + /// + Invalid = 0, + /// + /// The client/peer's anti-cheat functionality has been validated by this game server + /// + LocalAuthComplete = 1, + /// + /// The client/peer's anti-cheat functionality has been validated by the anti-cheat backend service + /// + RemoteAuthComplete = 2 + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonClientAuthStatus.cs.meta b/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonClientAuthStatus.cs.meta new file mode 100644 index 00000000..08940435 --- /dev/null +++ b/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonClientAuthStatus.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: d234548f8b2a37549ad9b0c8769092d7 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonClientFlags.cs b/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonClientFlags.cs new file mode 100644 index 00000000..ff5a96cb --- /dev/null +++ b/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonClientFlags.cs @@ -0,0 +1,21 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.AntiCheatCommon +{ + /// + /// Flags describing a remote client. These can be updated during a play session + /// + [System.Flags] + public enum AntiCheatCommonClientFlags : int + { + /// + /// No particular flags relevant for this client + /// + None = 0, + /// + /// The client has admin privileges on the game server + /// + Admin = (1 << 0) + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonClientFlags.cs.meta b/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonClientFlags.cs.meta new file mode 100644 index 00000000..4d6652d9 --- /dev/null +++ b/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonClientFlags.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 40ecfaa71047fb94cae4f9e007597e06 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonClientInput.cs b/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonClientInput.cs new file mode 100644 index 00000000..d6fdafdd --- /dev/null +++ b/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonClientInput.cs @@ -0,0 +1,28 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.AntiCheatCommon +{ + /// + /// Flags describing the input device used by a remote client, if known. These can be updated during a play session. + /// + public enum AntiCheatCommonClientInput : int + { + /// + /// Unknown input device + /// + Unknown = 0, + /// + /// The client is using mouse and keyboard + /// + MouseKeyboard = 1, + /// + /// The client is using a gamepad or game controller + /// + Gamepad = 2, + /// + /// The client is using a touch input device (e.g. phone/tablet screen) + /// + TouchInput = 3 + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonClientInput.cs.meta b/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonClientInput.cs.meta new file mode 100644 index 00000000..3ee86aac --- /dev/null +++ b/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonClientInput.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 5f0124653deac25418110e9de01bf260 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonClientPlatform.cs b/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonClientPlatform.cs new file mode 100644 index 00000000..0b0e845e --- /dev/null +++ b/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonClientPlatform.cs @@ -0,0 +1,48 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.AntiCheatCommon +{ + /// + /// Flags describing the platform of a remote client, if known + /// + public enum AntiCheatCommonClientPlatform : int + { + /// + /// Unknown platform + /// + Unknown = 0, + /// + /// The client is playing on Windows + /// + Windows = 1, + /// + /// The client is playing on Mac + /// + Mac = 2, + /// + /// The client is playing on Linux + /// + Linux = 3, + /// + /// The client is playing on an Xbox device + /// + Xbox = 4, + /// + /// The client is playing on a PlayStation device + /// + PlayStation = 5, + /// + /// The client is playing on a Nintendo device + /// + Nintendo = 6, + /// + /// The client is playing on iOS + /// + iOS = 7, + /// + /// The client is playing on Android + /// + Android = 8 + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonClientPlatform.cs.meta b/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonClientPlatform.cs.meta new file mode 100644 index 00000000..fee2b334 --- /dev/null +++ b/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonClientPlatform.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: ae869c8f43da7254fbfdf49be2fa6ad6 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonClientType.cs b/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonClientType.cs new file mode 100644 index 00000000..d4557202 --- /dev/null +++ b/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonClientType.cs @@ -0,0 +1,24 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.AntiCheatCommon +{ + /// + /// Flags describing the type of a remote client + /// + public enum AntiCheatCommonClientType : int + { + /// + /// An ordinary player that requires anti-cheat client protection to play + /// + ProtectedClient = 0, + /// + /// The player does not need the anti-cheat client to play because of their platform or other factors + /// + UnprotectedClient = 1, + /// + /// The client is an AI bot, not an actual human + /// + AIBot = 2 + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonClientType.cs.meta b/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonClientType.cs.meta new file mode 100644 index 00000000..b385ffd9 --- /dev/null +++ b/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonClientType.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: d5912aa4d17083842b39c7b7d012e775 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonEventParamType.cs b/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonEventParamType.cs new file mode 100644 index 00000000..df30c6ce --- /dev/null +++ b/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonEventParamType.cs @@ -0,0 +1,48 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.AntiCheatCommon +{ + /// + /// Types supported for custom gameplay behavior event parameters + /// + public enum AntiCheatCommonEventParamType : int + { + /// + /// Not used + /// + Invalid = 0, + /// + /// + /// + ClientHandle = 1, + /// + /// const char* + /// + String = 2, + /// + /// uint32_t + /// + UInt32 = 3, + /// + /// int32_t + /// + Int32 = 4, + /// + /// uint64_t + /// + UInt64 = 5, + /// + /// int64_t + /// + Int64 = 6, + /// + /// + /// + Vector3f = 7, + /// + /// + /// + Quat = 8 + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonEventParamType.cs.meta b/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonEventParamType.cs.meta new file mode 100644 index 00000000..3e1a2f8d --- /dev/null +++ b/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonEventParamType.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: fe93b1dab06353446811ad9baabd266a +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonEventType.cs b/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonEventType.cs new file mode 100644 index 00000000..ed486aa3 --- /dev/null +++ b/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonEventType.cs @@ -0,0 +1,28 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.AntiCheatCommon +{ + /// + /// Types supported for custom gameplay behavior events. + /// These have a considerable impact on performance + /// + public enum AntiCheatCommonEventType : int + { + /// + /// Not used + /// + Invalid = 0, + /// + /// A general game event that is not specific to any individual player. + /// Low memory use which is constant with respect to the number of players. + /// + GameEvent = 1, + /// + /// An event that is logically associated with a specific player. Events logged in + /// this category require a specific ClientHandle to which they will be attached. + /// Higher memory use which scales according to the number of players. + /// + PlayerEvent = 2 + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonEventType.cs.meta b/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonEventType.cs.meta new file mode 100644 index 00000000..4727c73b --- /dev/null +++ b/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonEventType.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 034cf8c16577d7b42be63f10ce8fd516 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonInterface.cs b/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonInterface.cs new file mode 100644 index 00000000..59e42c16 --- /dev/null +++ b/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonInterface.cs @@ -0,0 +1,42 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.AntiCheatCommon +{ + public static class AntiCheatCommonInterface + { + public const int LogeventApiLatest = 1; + + public const int LogeventStringMaxLength = 39; + + public const int LoggameroundendApiLatest = 1; + + public const int LoggameroundstartApiLatest = 1; + + public const int LogplayerdespawnApiLatest = 1; + + public const int LogplayerreviveApiLatest = 1; + + public const int LogplayerspawnApiLatest = 1; + + public const int LogplayertakedamageApiLatest = 2; + + public const int LogplayertickApiLatest = 2; + + public const int LogplayeruseabilityApiLatest = 1; + + public const int LogplayeruseweaponApiLatest = 2; + + public const int LogplayeruseweaponWeaponnameMaxLength = 16; + + public const int RegistereventApiLatest = 1; + + public const int RegistereventCustomeventbase = 0x10000000; + + public const int RegistereventMaxParamdefscount = 12; + + public const int SetclientdetailsApiLatest = 1; + + public const int SetgamesessionidApiLatest = 1; + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonInterface.cs.meta b/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonInterface.cs.meta new file mode 100644 index 00000000..63056f22 --- /dev/null +++ b/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonInterface.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 3e14039b9f182ed48af364ac5ea2ea63 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonPlayerMovementState.cs b/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonPlayerMovementState.cs new file mode 100644 index 00000000..50aed76f --- /dev/null +++ b/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonPlayerMovementState.cs @@ -0,0 +1,44 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.AntiCheatCommon +{ + /// + /// Details of a player's movement state + /// + public enum AntiCheatCommonPlayerMovementState : int + { + /// + /// No particular state applies + /// + None = 0, + /// + /// Player is crouching + /// + Crouching = 1, + /// + /// Player is prone + /// + Prone = 2, + /// + /// Player is mounted in a vehicle or similar + /// + Mounted = 3, + /// + /// Player is swimming in a fluid volume + /// + Swimming = 4, + /// + /// Player is falling under the effects of gravity, such as when jumping or walking off the edge of a surface + /// + Falling = 5, + /// + /// Player is flying, ignoring the effects of gravity + /// + Flying = 6, + /// + /// Player is on a ladder + /// + OnLadder = 7 + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonPlayerMovementState.cs.meta b/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonPlayerMovementState.cs.meta new file mode 100644 index 00000000..f6b0f459 --- /dev/null +++ b/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonPlayerMovementState.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: c51eb57279a38ac4ea9b40fd57795cc0 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonPlayerTakeDamageResult.cs b/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonPlayerTakeDamageResult.cs new file mode 100644 index 00000000..26956880 --- /dev/null +++ b/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonPlayerTakeDamageResult.cs @@ -0,0 +1,24 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.AntiCheatCommon +{ + /// + /// The result of a damage event, if any + /// + public enum AntiCheatCommonPlayerTakeDamageResult : int + { + /// + /// No direct state change consequence for the victim + /// + None = 0, + /// + /// Player character is temporarily incapacitated and requires assistance to recover + /// + Downed = 1, + /// + /// Player character is permanently incapacitated and cannot recover (e.g. dead) + /// + Eliminated = 2 + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonPlayerTakeDamageResult.cs.meta b/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonPlayerTakeDamageResult.cs.meta new file mode 100644 index 00000000..0e56e310 --- /dev/null +++ b/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonPlayerTakeDamageResult.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 19ef67c44b033174fab2bd059ca56cd7 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonPlayerTakeDamageSource.cs b/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonPlayerTakeDamageSource.cs new file mode 100644 index 00000000..a985c28c --- /dev/null +++ b/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonPlayerTakeDamageSource.cs @@ -0,0 +1,28 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.AntiCheatCommon +{ + /// + /// The source of a damage event + /// + public enum AntiCheatCommonPlayerTakeDamageSource : int + { + /// + /// No particular source relevant + /// + None = 0, + /// + /// Damage caused by a player controlled character + /// + Player = 1, + /// + /// Damage caused by a non-player character such as an AI enemy + /// + NonPlayerCharacter = 2, + /// + /// Damage caused by the world (falling off level, into lava, etc) + /// + World = 3 + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonPlayerTakeDamageSource.cs.meta b/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonPlayerTakeDamageSource.cs.meta new file mode 100644 index 00000000..db64180f --- /dev/null +++ b/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonPlayerTakeDamageSource.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 2e8c72e0a279ba64abca381c5f2a5a6b +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonPlayerTakeDamageType.cs b/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonPlayerTakeDamageType.cs new file mode 100644 index 00000000..e5097181 --- /dev/null +++ b/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonPlayerTakeDamageType.cs @@ -0,0 +1,28 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.AntiCheatCommon +{ + /// + /// Type of damage applied in a damage event + /// + public enum AntiCheatCommonPlayerTakeDamageType : int + { + /// + /// No particular type relevant + /// + None = 0, + /// + /// Damage caused by a point source such as a bullet or melee attack + /// + PointDamage = 1, + /// + /// Damage caused by a radial source such as an explosion + /// + RadialDamage = 2, + /// + /// Damage over time such as bleeding, poison, etc + /// + DamageOverTime = 3 + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonPlayerTakeDamageType.cs.meta b/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonPlayerTakeDamageType.cs.meta new file mode 100644 index 00000000..93930290 --- /dev/null +++ b/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonPlayerTakeDamageType.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: f5d972083c8e58e438a923d876d72756 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/AntiCheatCommon/LogEventOptions.cs b/EOSSDK/Generated/AntiCheatCommon/LogEventOptions.cs new file mode 100644 index 00000000..405fba92 --- /dev/null +++ b/EOSSDK/Generated/AntiCheatCommon/LogEventOptions.cs @@ -0,0 +1,79 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.AntiCheatCommon +{ + public class 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.TryMarshalSet(ref m_Params, value, out m_ParamsCount); + } + } + + public void Set(LogEventOptions other) + { + if (other != null) + { + m_ApiVersion = AntiCheatCommonInterface.LogeventApiLatest; + ClientHandle = other.ClientHandle; + EventId = other.EventId; + Params = other.Params; + } + } + + public void Set(object other) + { + Set(other as LogEventOptions); + } + + public void Dispose() + { + Helper.TryMarshalDispose(ref m_ClientHandle); + Helper.TryMarshalDispose(ref m_Params); + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/AntiCheatCommon/LogEventOptions.cs.meta b/EOSSDK/Generated/AntiCheatCommon/LogEventOptions.cs.meta new file mode 100644 index 00000000..64408193 --- /dev/null +++ b/EOSSDK/Generated/AntiCheatCommon/LogEventOptions.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 19d6b3c6dd0df9f43889632dad0a2b2d +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/AntiCheatCommon/LogEventParamPair.cs b/EOSSDK/Generated/AntiCheatCommon/LogEventParamPair.cs new file mode 100644 index 00000000..70390d95 --- /dev/null +++ b/EOSSDK/Generated/AntiCheatCommon/LogEventParamPair.cs @@ -0,0 +1,62 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.AntiCheatCommon +{ + public class LogEventParamPair : ISettable + { + public LogEventParamPairParamValue ParamValue { get; set; } + + internal void Set(LogEventParamPairInternal? other) + { + if (other != null) + { + ParamValue = other.Value.ParamValue; + } + } + + public void Set(object other) + { + Set(other as LogEventParamPairInternal?); + } + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct LogEventParamPairInternal : ISettable, System.IDisposable + { + private LogEventParamPairParamValueInternal m_ParamValue; + + public LogEventParamPairParamValue ParamValue + { + get + { + LogEventParamPairParamValue value; + Helper.TryMarshalGet(m_ParamValue, out value); + return value; + } + + set + { + Helper.TryMarshalSet(ref m_ParamValue, value); + } + } + + public void Set(LogEventParamPair other) + { + if (other != null) + { + ParamValue = other.ParamValue; + } + } + + public void Set(object other) + { + Set(other as LogEventParamPair); + } + + public void Dispose() + { + Helper.TryMarshalDispose(ref m_ParamValue); + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/AntiCheatCommon/LogEventParamPair.cs.meta b/EOSSDK/Generated/AntiCheatCommon/LogEventParamPair.cs.meta new file mode 100644 index 00000000..de48221f --- /dev/null +++ b/EOSSDK/Generated/AntiCheatCommon/LogEventParamPair.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 788c87391db3a564d8fc30dc1d16b32b +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/AntiCheatCommon/LogEventParamPairParamValue.cs b/EOSSDK/Generated/AntiCheatCommon/LogEventParamPairParamValue.cs new file mode 100644 index 00000000..41bcc5c7 --- /dev/null +++ b/EOSSDK/Generated/AntiCheatCommon/LogEventParamPairParamValue.cs @@ -0,0 +1,388 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.AntiCheatCommon +{ + public class LogEventParamPairParamValue : ISettable + { + private AntiCheatCommonEventParamType m_ParamValueType; + private System.IntPtr? m_ClientHandle; + private string m_String; + private uint? m_UInt32; + private int? m_Int32; + private ulong? m_UInt64; + private long? m_Int64; + private Vec3f m_Vec3f; + private Quat m_Quat; + + /// + /// Parameter type + /// + public AntiCheatCommonEventParamType ParamValueType + { + get + { + return m_ParamValueType; + } + + private set + { + m_ParamValueType = value; + } + } + + /// + /// Parameter value + /// + public System.IntPtr? ClientHandle + { + get + { + System.IntPtr? value; + Helper.TryMarshalGet(m_ClientHandle, out value, m_ParamValueType, AntiCheatCommonEventParamType.ClientHandle); + return value; + } + + set + { + Helper.TryMarshalSet(ref m_ClientHandle, value, ref m_ParamValueType, AntiCheatCommonEventParamType.ClientHandle); + } + } + + public string String + { + get + { + string value; + Helper.TryMarshalGet(m_String, out value, m_ParamValueType, AntiCheatCommonEventParamType.String); + return value; + } + + set + { + Helper.TryMarshalSet(ref m_String, value, ref m_ParamValueType, AntiCheatCommonEventParamType.String); + } + } + + public uint? UInt32 + { + get + { + uint? value; + Helper.TryMarshalGet(m_UInt32, out value, m_ParamValueType, AntiCheatCommonEventParamType.UInt32); + return value; + } + + set + { + Helper.TryMarshalSet(ref m_UInt32, value, ref m_ParamValueType, AntiCheatCommonEventParamType.UInt32); + } + } + + public int? Int32 + { + get + { + int? value; + Helper.TryMarshalGet(m_Int32, out value, m_ParamValueType, AntiCheatCommonEventParamType.Int32); + return value; + } + + set + { + Helper.TryMarshalSet(ref m_Int32, value, ref m_ParamValueType, AntiCheatCommonEventParamType.Int32); + } + } + + public ulong? UInt64 + { + get + { + ulong? value; + Helper.TryMarshalGet(m_UInt64, out value, m_ParamValueType, AntiCheatCommonEventParamType.UInt64); + return value; + } + + set + { + Helper.TryMarshalSet(ref m_UInt64, value, ref m_ParamValueType, AntiCheatCommonEventParamType.UInt64); + } + } + + public long? Int64 + { + get + { + long? value; + Helper.TryMarshalGet(m_Int64, out value, m_ParamValueType, AntiCheatCommonEventParamType.Int64); + return value; + } + + set + { + Helper.TryMarshalSet(ref m_Int64, value, ref m_ParamValueType, AntiCheatCommonEventParamType.Int64); + } + } + + public Vec3f Vec3f + { + get + { + Vec3f value; + Helper.TryMarshalGet(m_Vec3f, out value, m_ParamValueType, AntiCheatCommonEventParamType.Vector3f); + return value; + } + + set + { + Helper.TryMarshalSet(ref m_Vec3f, value, ref m_ParamValueType, AntiCheatCommonEventParamType.Vector3f); + } + } + + public Quat Quat + { + get + { + Quat value; + Helper.TryMarshalGet(m_Quat, out value, m_ParamValueType, AntiCheatCommonEventParamType.Quat); + return value; + } + + set + { + Helper.TryMarshalSet(ref m_Quat, value, ref m_ParamValueType, AntiCheatCommonEventParamType.Quat); + } + } + + public static implicit operator LogEventParamPairParamValue(System.IntPtr value) + { + return new LogEventParamPairParamValue() { ClientHandle = value }; + } + + public static implicit operator LogEventParamPairParamValue(string value) + { + return new LogEventParamPairParamValue() { String = value }; + } + + public static implicit operator LogEventParamPairParamValue(uint value) + { + return new LogEventParamPairParamValue() { UInt32 = value }; + } + + public static implicit operator LogEventParamPairParamValue(int value) + { + return new LogEventParamPairParamValue() { Int32 = value }; + } + + public static implicit operator LogEventParamPairParamValue(ulong value) + { + return new LogEventParamPairParamValue() { UInt64 = value }; + } + + public static implicit operator LogEventParamPairParamValue(long value) + { + return new LogEventParamPairParamValue() { Int64 = value }; + } + + public static implicit operator LogEventParamPairParamValue(Vec3f value) + { + return new LogEventParamPairParamValue() { Vec3f = value }; + } + + public static implicit operator LogEventParamPairParamValue(Quat value) + { + return new LogEventParamPairParamValue() { Quat = value }; + } + + internal void Set(LogEventParamPairParamValueInternal? other) + { + if (other != null) + { + ClientHandle = other.Value.ClientHandle; + String = other.Value.String; + UInt32 = other.Value.UInt32; + Int32 = other.Value.Int32; + UInt64 = other.Value.UInt64; + Int64 = other.Value.Int64; + Vec3f = other.Value.Vec3f; + Quat = other.Value.Quat; + } + } + + public void Set(object other) + { + Set(other as LogEventParamPairParamValueInternal?); + } + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Explicit, Pack = 8)] + internal struct LogEventParamPairParamValueInternal : ISettable, System.IDisposable + { + [System.Runtime.InteropServices.FieldOffset(0)] + private AntiCheatCommonEventParamType m_ParamValueType; + [System.Runtime.InteropServices.FieldOffset(8)] + private System.IntPtr m_ClientHandle; + [System.Runtime.InteropServices.FieldOffset(8)] + private System.IntPtr m_String; + [System.Runtime.InteropServices.FieldOffset(8)] + private uint m_UInt32; + [System.Runtime.InteropServices.FieldOffset(8)] + private int m_Int32; + [System.Runtime.InteropServices.FieldOffset(8)] + private ulong m_UInt64; + [System.Runtime.InteropServices.FieldOffset(8)] + private long m_Int64; + [System.Runtime.InteropServices.FieldOffset(8)] + private Vec3fInternal m_Vec3f; + [System.Runtime.InteropServices.FieldOffset(8)] + private QuatInternal m_Quat; + + public System.IntPtr? ClientHandle + { + get + { + System.IntPtr? value; + Helper.TryMarshalGet(m_ClientHandle, out value, m_ParamValueType, AntiCheatCommonEventParamType.ClientHandle); + return value; + } + + set + { + Helper.TryMarshalSet(ref m_ClientHandle, value, ref m_ParamValueType, AntiCheatCommonEventParamType.ClientHandle, this); + } + } + + public string String + { + get + { + string value; + Helper.TryMarshalGet(m_String, out value, m_ParamValueType, AntiCheatCommonEventParamType.String); + return value; + } + + set + { + Helper.TryMarshalSet(ref m_String, value, ref m_ParamValueType, AntiCheatCommonEventParamType.String, this); + } + } + + public uint? UInt32 + { + get + { + uint? value; + Helper.TryMarshalGet(m_UInt32, out value, m_ParamValueType, AntiCheatCommonEventParamType.UInt32); + return value; + } + + set + { + Helper.TryMarshalSet(ref m_UInt32, value, ref m_ParamValueType, AntiCheatCommonEventParamType.UInt32, this); + } + } + + public int? Int32 + { + get + { + int? value; + Helper.TryMarshalGet(m_Int32, out value, m_ParamValueType, AntiCheatCommonEventParamType.Int32); + return value; + } + + set + { + Helper.TryMarshalSet(ref m_Int32, value, ref m_ParamValueType, AntiCheatCommonEventParamType.Int32, this); + } + } + + public ulong? UInt64 + { + get + { + ulong? value; + Helper.TryMarshalGet(m_UInt64, out value, m_ParamValueType, AntiCheatCommonEventParamType.UInt64); + return value; + } + + set + { + Helper.TryMarshalSet(ref m_UInt64, value, ref m_ParamValueType, AntiCheatCommonEventParamType.UInt64, this); + } + } + + public long? Int64 + { + get + { + long? value; + Helper.TryMarshalGet(m_Int64, out value, m_ParamValueType, AntiCheatCommonEventParamType.Int64); + return value; + } + + set + { + Helper.TryMarshalSet(ref m_Int64, value, ref m_ParamValueType, AntiCheatCommonEventParamType.Int64, this); + } + } + + public Vec3f Vec3f + { + get + { + Vec3f value; + Helper.TryMarshalGet(m_Vec3f, out value, m_ParamValueType, AntiCheatCommonEventParamType.Vector3f); + return value; + } + + set + { + Helper.TryMarshalSet(ref m_Vec3f, value, ref m_ParamValueType, AntiCheatCommonEventParamType.Vector3f, this); + } + } + + public Quat Quat + { + get + { + Quat value; + Helper.TryMarshalGet(m_Quat, out value, m_ParamValueType, AntiCheatCommonEventParamType.Quat); + return value; + } + + set + { + Helper.TryMarshalSet(ref m_Quat, value, ref m_ParamValueType, AntiCheatCommonEventParamType.Quat, this); + } + } + + public void Set(LogEventParamPairParamValue other) + { + if (other != null) + { + ClientHandle = other.ClientHandle; + String = other.String; + UInt32 = other.UInt32; + Int32 = other.Int32; + UInt64 = other.UInt64; + Int64 = other.Int64; + Vec3f = other.Vec3f; + Quat = other.Quat; + } + } + + public void Set(object other) + { + Set(other as LogEventParamPairParamValue); + } + + public void Dispose() + { + Helper.TryMarshalDispose(ref m_ClientHandle, m_ParamValueType, AntiCheatCommonEventParamType.ClientHandle); + Helper.TryMarshalDispose(ref m_String, m_ParamValueType, AntiCheatCommonEventParamType.String); + Helper.TryMarshalDispose(ref m_Vec3f); + Helper.TryMarshalDispose(ref m_Quat); + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/AntiCheatCommon/LogEventParamPairParamValue.cs.meta b/EOSSDK/Generated/AntiCheatCommon/LogEventParamPairParamValue.cs.meta new file mode 100644 index 00000000..7d4c8c10 --- /dev/null +++ b/EOSSDK/Generated/AntiCheatCommon/LogEventParamPairParamValue.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 81a5f88a13f633640a75cf0342462ae4 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/AntiCheatCommon/LogGameRoundEndOptions.cs b/EOSSDK/Generated/AntiCheatCommon/LogGameRoundEndOptions.cs new file mode 100644 index 00000000..7bfd757d --- /dev/null +++ b/EOSSDK/Generated/AntiCheatCommon/LogGameRoundEndOptions.cs @@ -0,0 +1,46 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.AntiCheatCommon +{ + public class LogGameRoundEndOptions + { + /// + /// Optional identifier for the winning team + /// + public uint WinningTeamId { get; set; } + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct LogGameRoundEndOptionsInternal : ISettable, System.IDisposable + { + private int m_ApiVersion; + private uint m_WinningTeamId; + + public uint WinningTeamId + { + set + { + m_WinningTeamId = value; + } + } + + public void Set(LogGameRoundEndOptions other) + { + if (other != null) + { + m_ApiVersion = AntiCheatCommonInterface.LoggameroundendApiLatest; + WinningTeamId = other.WinningTeamId; + } + } + + public void Set(object other) + { + Set(other as LogGameRoundEndOptions); + } + + public void Dispose() + { + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/AntiCheatCommon/LogGameRoundEndOptions.cs.meta b/EOSSDK/Generated/AntiCheatCommon/LogGameRoundEndOptions.cs.meta new file mode 100644 index 00000000..90a53ea9 --- /dev/null +++ b/EOSSDK/Generated/AntiCheatCommon/LogGameRoundEndOptions.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 25f2e1cceb3a8f34f924035e748c4798 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/AntiCheatCommon/LogGameRoundStartOptions.cs b/EOSSDK/Generated/AntiCheatCommon/LogGameRoundStartOptions.cs new file mode 100644 index 00000000..957e77f4 --- /dev/null +++ b/EOSSDK/Generated/AntiCheatCommon/LogGameRoundStartOptions.cs @@ -0,0 +1,94 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.AntiCheatCommon +{ + public class LogGameRoundStartOptions + { + /// + /// Optional game session or match identifier useful for some backend API integrations + /// + public string SessionIdentifier { get; set; } + + /// + /// Optional name of the map being played + /// + public string LevelName { get; set; } + + /// + /// Optional name of the game mode being played + /// + public string ModeName { get; set; } + + /// + /// Optional length of the game round to be played, in seconds. If none, use 0. + /// + public uint RoundTimeSeconds { get; set; } + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct LogGameRoundStartOptionsInternal : ISettable, System.IDisposable + { + private int m_ApiVersion; + private System.IntPtr m_SessionIdentifier; + private System.IntPtr m_LevelName; + private System.IntPtr m_ModeName; + private uint m_RoundTimeSeconds; + + public string SessionIdentifier + { + set + { + Helper.TryMarshalSet(ref m_SessionIdentifier, value); + } + } + + public string LevelName + { + set + { + Helper.TryMarshalSet(ref m_LevelName, value); + } + } + + public string ModeName + { + set + { + Helper.TryMarshalSet(ref m_ModeName, value); + } + } + + public uint RoundTimeSeconds + { + set + { + m_RoundTimeSeconds = value; + } + } + + public void Set(LogGameRoundStartOptions other) + { + if (other != null) + { + m_ApiVersion = AntiCheatCommonInterface.LoggameroundstartApiLatest; + SessionIdentifier = other.SessionIdentifier; + LevelName = other.LevelName; + ModeName = other.ModeName; + RoundTimeSeconds = other.RoundTimeSeconds; + } + } + + public void Set(object other) + { + Set(other as LogGameRoundStartOptions); + } + + public void Dispose() + { + Helper.TryMarshalDispose(ref m_SessionIdentifier); + Helper.TryMarshalDispose(ref m_LevelName); + Helper.TryMarshalDispose(ref m_ModeName); + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/AntiCheatCommon/LogGameRoundStartOptions.cs.meta b/EOSSDK/Generated/AntiCheatCommon/LogGameRoundStartOptions.cs.meta new file mode 100644 index 00000000..c23cd4dc --- /dev/null +++ b/EOSSDK/Generated/AntiCheatCommon/LogGameRoundStartOptions.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: ccc495f2698fac94e926b6491bcaa845 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/AntiCheatCommon/LogPlayerDespawnOptions.cs b/EOSSDK/Generated/AntiCheatCommon/LogPlayerDespawnOptions.cs new file mode 100644 index 00000000..2da986f3 --- /dev/null +++ b/EOSSDK/Generated/AntiCheatCommon/LogPlayerDespawnOptions.cs @@ -0,0 +1,47 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.AntiCheatCommon +{ + public class LogPlayerDespawnOptions + { + /// + /// Locally unique value used in RegisterClient/RegisterPeer + /// + public System.IntPtr DespawnedPlayerHandle { get; set; } + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct LogPlayerDespawnOptionsInternal : ISettable, System.IDisposable + { + private int m_ApiVersion; + private System.IntPtr m_DespawnedPlayerHandle; + + public System.IntPtr DespawnedPlayerHandle + { + set + { + m_DespawnedPlayerHandle = value; + } + } + + public void Set(LogPlayerDespawnOptions other) + { + if (other != null) + { + m_ApiVersion = AntiCheatCommonInterface.LogplayerdespawnApiLatest; + DespawnedPlayerHandle = other.DespawnedPlayerHandle; + } + } + + public void Set(object other) + { + Set(other as LogPlayerDespawnOptions); + } + + public void Dispose() + { + Helper.TryMarshalDispose(ref m_DespawnedPlayerHandle); + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/AntiCheatCommon/LogPlayerDespawnOptions.cs.meta b/EOSSDK/Generated/AntiCheatCommon/LogPlayerDespawnOptions.cs.meta new file mode 100644 index 00000000..f17a0058 --- /dev/null +++ b/EOSSDK/Generated/AntiCheatCommon/LogPlayerDespawnOptions.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: d5657564deea6084690f2427e1234f2f +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/AntiCheatCommon/LogPlayerReviveOptions.cs b/EOSSDK/Generated/AntiCheatCommon/LogPlayerReviveOptions.cs new file mode 100644 index 00000000..42bdc3a5 --- /dev/null +++ b/EOSSDK/Generated/AntiCheatCommon/LogPlayerReviveOptions.cs @@ -0,0 +1,63 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.AntiCheatCommon +{ + public class LogPlayerReviveOptions + { + /// + /// Locally unique value used in RegisterClient/RegisterPeer + /// + public System.IntPtr RevivedPlayerHandle { get; set; } + + /// + /// Locally unique value used in RegisterClient/RegisterPeer + /// + public System.IntPtr ReviverPlayerHandle { get; set; } + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct LogPlayerReviveOptionsInternal : ISettable, System.IDisposable + { + private int m_ApiVersion; + private System.IntPtr m_RevivedPlayerHandle; + private System.IntPtr m_ReviverPlayerHandle; + + public System.IntPtr RevivedPlayerHandle + { + set + { + m_RevivedPlayerHandle = value; + } + } + + public System.IntPtr ReviverPlayerHandle + { + set + { + m_ReviverPlayerHandle = value; + } + } + + public void Set(LogPlayerReviveOptions other) + { + if (other != null) + { + m_ApiVersion = AntiCheatCommonInterface.LogplayerreviveApiLatest; + RevivedPlayerHandle = other.RevivedPlayerHandle; + ReviverPlayerHandle = other.ReviverPlayerHandle; + } + } + + public void Set(object other) + { + Set(other as LogPlayerReviveOptions); + } + + public void Dispose() + { + Helper.TryMarshalDispose(ref m_RevivedPlayerHandle); + Helper.TryMarshalDispose(ref m_ReviverPlayerHandle); + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/AntiCheatCommon/LogPlayerReviveOptions.cs.meta b/EOSSDK/Generated/AntiCheatCommon/LogPlayerReviveOptions.cs.meta new file mode 100644 index 00000000..64499f71 --- /dev/null +++ b/EOSSDK/Generated/AntiCheatCommon/LogPlayerReviveOptions.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: f47ccbaf348448449949ef71289e7374 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/AntiCheatCommon/LogPlayerSpawnOptions.cs b/EOSSDK/Generated/AntiCheatCommon/LogPlayerSpawnOptions.cs new file mode 100644 index 00000000..563a0f78 --- /dev/null +++ b/EOSSDK/Generated/AntiCheatCommon/LogPlayerSpawnOptions.cs @@ -0,0 +1,77 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.AntiCheatCommon +{ + public class LogPlayerSpawnOptions + { + /// + /// Locally unique value used in RegisterClient/RegisterPeer + /// + public System.IntPtr SpawnedPlayerHandle { get; set; } + + /// + /// Optional identifier for the player's team. If none, use 0. + /// + public uint TeamId { get; set; } + + /// + /// Optional identifier for the player's character. If none, use 0. + /// + public uint CharacterId { get; set; } + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct LogPlayerSpawnOptionsInternal : ISettable, System.IDisposable + { + private int m_ApiVersion; + private System.IntPtr m_SpawnedPlayerHandle; + private uint m_TeamId; + private uint m_CharacterId; + + public System.IntPtr SpawnedPlayerHandle + { + set + { + m_SpawnedPlayerHandle = value; + } + } + + public uint TeamId + { + set + { + m_TeamId = value; + } + } + + public uint CharacterId + { + set + { + m_CharacterId = value; + } + } + + public void Set(LogPlayerSpawnOptions other) + { + if (other != null) + { + m_ApiVersion = AntiCheatCommonInterface.LogplayerspawnApiLatest; + SpawnedPlayerHandle = other.SpawnedPlayerHandle; + TeamId = other.TeamId; + CharacterId = other.CharacterId; + } + } + + public void Set(object other) + { + Set(other as LogPlayerSpawnOptions); + } + + public void Dispose() + { + Helper.TryMarshalDispose(ref m_SpawnedPlayerHandle); + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/AntiCheatCommon/LogPlayerSpawnOptions.cs.meta b/EOSSDK/Generated/AntiCheatCommon/LogPlayerSpawnOptions.cs.meta new file mode 100644 index 00000000..ed53653f --- /dev/null +++ b/EOSSDK/Generated/AntiCheatCommon/LogPlayerSpawnOptions.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: b638b4319f3d1e44a8cae212fa245fb1 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/AntiCheatCommon/LogPlayerTakeDamageOptions.cs b/EOSSDK/Generated/AntiCheatCommon/LogPlayerTakeDamageOptions.cs new file mode 100644 index 00000000..84794bcf --- /dev/null +++ b/EOSSDK/Generated/AntiCheatCommon/LogPlayerTakeDamageOptions.cs @@ -0,0 +1,298 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.AntiCheatCommon +{ + public class LogPlayerTakeDamageOptions + { + /// + /// Locally unique value used in RegisterClient/RegisterPeer + /// + public System.IntPtr VictimPlayerHandle { get; set; } + + /// + /// Victim player's current world position as a 3D vector + /// + public Vec3f VictimPlayerPosition { get; set; } + + /// + /// Victim player's view rotation as a quaternion + /// + public Quat VictimPlayerViewRotation { get; set; } + + /// + /// Locally unique value used in RegisterClient/RegisterPeer + /// + public System.IntPtr AttackerPlayerHandle { get; set; } + + /// + /// Attacker player's current world position as a 3D vector + /// + public Vec3f AttackerPlayerPosition { get; set; } + + /// + /// Attacker player's view rotation as a quaternion + /// + public Quat AttackerPlayerViewRotation { get; set; } + + /// + /// True if the damage was applied instantly at the time of attack from the game + /// simulation's perspective, otherwise false (simulated ballistics, arrow, etc). + /// + public bool IsHitscanAttack { get; set; } + + /// + /// True if there is a visible line of sight between the attacker and the victim at the time + /// that damage is being applied, false if there is an obstacle like a wall or terrain in + /// the way. For some situations like melee or hitscan weapons this is trivially + /// true, for others like projectiles with simulated physics it may not be e.g. a player + /// could fire a slow moving projectile and then move behind cover before it strikes. + /// + public bool HasLineOfSight { get; set; } + + /// + /// True if this was a critical hit that causes extra damage (e.g. headshot) + /// + public bool IsCriticalHit { get; set; } + + /// + /// Identifier of the victim bone hit in this damage event + /// + public uint HitBoneId { get; set; } + + /// + /// Number of health points that the victim lost due to this damage event + /// + public float DamageTaken { get; set; } + + /// + /// Number of health points that the victim has remaining after this damage event + /// + public float HealthRemaining { get; set; } + + /// + /// Source of the damage event + /// + public AntiCheatCommonPlayerTakeDamageSource DamageSource { get; set; } + + /// + /// Type of the damage being applied + /// + public AntiCheatCommonPlayerTakeDamageType DamageType { get; set; } + + /// + /// Result of the damage for the victim, if any + /// + public AntiCheatCommonPlayerTakeDamageResult DamageResult { get; set; } + + /// + /// PlayerUseWeaponData associated with this damage event if available, otherwise NULL + /// + public LogPlayerUseWeaponData PlayerUseWeaponData { get; set; } + + /// + /// Time in milliseconds since the PlayerUseWeaponData event occurred if available, otherwise 0 + /// + public uint TimeSincePlayerUseWeaponMs { get; set; } + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct LogPlayerTakeDamageOptionsInternal : ISettable, System.IDisposable + { + private int m_ApiVersion; + private System.IntPtr m_VictimPlayerHandle; + private System.IntPtr m_VictimPlayerPosition; + private System.IntPtr m_VictimPlayerViewRotation; + private System.IntPtr m_AttackerPlayerHandle; + private System.IntPtr m_AttackerPlayerPosition; + private System.IntPtr m_AttackerPlayerViewRotation; + private int m_IsHitscanAttack; + private int m_HasLineOfSight; + private int m_IsCriticalHit; + private uint m_HitBoneId; + private float m_DamageTaken; + private float m_HealthRemaining; + private AntiCheatCommonPlayerTakeDamageSource m_DamageSource; + private AntiCheatCommonPlayerTakeDamageType m_DamageType; + private AntiCheatCommonPlayerTakeDamageResult m_DamageResult; + private System.IntPtr m_PlayerUseWeaponData; + private uint m_TimeSincePlayerUseWeaponMs; + + public System.IntPtr VictimPlayerHandle + { + set + { + m_VictimPlayerHandle = value; + } + } + + public Vec3f VictimPlayerPosition + { + set + { + Helper.TryMarshalSet(ref m_VictimPlayerPosition, value); + } + } + + public Quat VictimPlayerViewRotation + { + set + { + Helper.TryMarshalSet(ref m_VictimPlayerViewRotation, value); + } + } + + public System.IntPtr AttackerPlayerHandle + { + set + { + m_AttackerPlayerHandle = value; + } + } + + public Vec3f AttackerPlayerPosition + { + set + { + Helper.TryMarshalSet(ref m_AttackerPlayerPosition, value); + } + } + + public Quat AttackerPlayerViewRotation + { + set + { + Helper.TryMarshalSet(ref m_AttackerPlayerViewRotation, value); + } + } + + public bool IsHitscanAttack + { + set + { + Helper.TryMarshalSet(ref m_IsHitscanAttack, value); + } + } + + public bool HasLineOfSight + { + set + { + Helper.TryMarshalSet(ref m_HasLineOfSight, value); + } + } + + public bool IsCriticalHit + { + set + { + Helper.TryMarshalSet(ref m_IsCriticalHit, value); + } + } + + public uint HitBoneId + { + set + { + m_HitBoneId = value; + } + } + + public float DamageTaken + { + set + { + m_DamageTaken = value; + } + } + + public float HealthRemaining + { + set + { + m_HealthRemaining = value; + } + } + + public AntiCheatCommonPlayerTakeDamageSource DamageSource + { + set + { + m_DamageSource = value; + } + } + + public AntiCheatCommonPlayerTakeDamageType DamageType + { + set + { + m_DamageType = value; + } + } + + public AntiCheatCommonPlayerTakeDamageResult DamageResult + { + set + { + m_DamageResult = value; + } + } + + public LogPlayerUseWeaponData PlayerUseWeaponData + { + set + { + Helper.TryMarshalSet(ref m_PlayerUseWeaponData, value); + } + } + + public uint TimeSincePlayerUseWeaponMs + { + set + { + m_TimeSincePlayerUseWeaponMs = value; + } + } + + public void Set(LogPlayerTakeDamageOptions other) + { + if (other != null) + { + m_ApiVersion = AntiCheatCommonInterface.LogplayertakedamageApiLatest; + VictimPlayerHandle = other.VictimPlayerHandle; + VictimPlayerPosition = other.VictimPlayerPosition; + VictimPlayerViewRotation = other.VictimPlayerViewRotation; + AttackerPlayerHandle = other.AttackerPlayerHandle; + AttackerPlayerPosition = other.AttackerPlayerPosition; + AttackerPlayerViewRotation = other.AttackerPlayerViewRotation; + IsHitscanAttack = other.IsHitscanAttack; + HasLineOfSight = other.HasLineOfSight; + IsCriticalHit = other.IsCriticalHit; + HitBoneId = other.HitBoneId; + DamageTaken = other.DamageTaken; + HealthRemaining = other.HealthRemaining; + DamageSource = other.DamageSource; + DamageType = other.DamageType; + DamageResult = other.DamageResult; + PlayerUseWeaponData = other.PlayerUseWeaponData; + TimeSincePlayerUseWeaponMs = other.TimeSincePlayerUseWeaponMs; + } + } + + public void Set(object other) + { + Set(other as LogPlayerTakeDamageOptions); + } + + public void Dispose() + { + Helper.TryMarshalDispose(ref m_VictimPlayerHandle); + Helper.TryMarshalDispose(ref m_VictimPlayerPosition); + Helper.TryMarshalDispose(ref m_VictimPlayerViewRotation); + Helper.TryMarshalDispose(ref m_AttackerPlayerHandle); + Helper.TryMarshalDispose(ref m_AttackerPlayerPosition); + Helper.TryMarshalDispose(ref m_AttackerPlayerViewRotation); + Helper.TryMarshalDispose(ref m_PlayerUseWeaponData); + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/AntiCheatCommon/LogPlayerTakeDamageOptions.cs.meta b/EOSSDK/Generated/AntiCheatCommon/LogPlayerTakeDamageOptions.cs.meta new file mode 100644 index 00000000..a6f968e1 --- /dev/null +++ b/EOSSDK/Generated/AntiCheatCommon/LogPlayerTakeDamageOptions.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 21f2574eb5d585341ab207f0dbf95c9e +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/AntiCheatCommon/LogPlayerTickOptions.cs b/EOSSDK/Generated/AntiCheatCommon/LogPlayerTickOptions.cs new file mode 100644 index 00000000..8ed79846 --- /dev/null +++ b/EOSSDK/Generated/AntiCheatCommon/LogPlayerTickOptions.cs @@ -0,0 +1,124 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.AntiCheatCommon +{ + public class LogPlayerTickOptions + { + /// + /// Locally unique value used in RegisterClient/RegisterPeer + /// + public System.IntPtr PlayerHandle { get; set; } + + /// + /// Player's current world position as a 3D vector + /// + public Vec3f PlayerPosition { get; set; } + + /// + /// Player's view rotation as a quaternion + /// + public Quat PlayerViewRotation { get; set; } + + /// + /// True if the player's view is zoomed (e.g. using a sniper rifle), otherwise false + /// + public bool IsPlayerViewZoomed { get; set; } + + /// + /// Player's current health value + /// + public float PlayerHealth { get; set; } + + /// + /// Any movement state applicable + /// + public AntiCheatCommonPlayerMovementState PlayerMovementState { get; set; } + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct LogPlayerTickOptionsInternal : ISettable, System.IDisposable + { + private int m_ApiVersion; + private System.IntPtr m_PlayerHandle; + private System.IntPtr m_PlayerPosition; + private System.IntPtr m_PlayerViewRotation; + private int m_IsPlayerViewZoomed; + private float m_PlayerHealth; + private AntiCheatCommonPlayerMovementState m_PlayerMovementState; + + public System.IntPtr PlayerHandle + { + set + { + m_PlayerHandle = value; + } + } + + public Vec3f PlayerPosition + { + set + { + Helper.TryMarshalSet(ref m_PlayerPosition, value); + } + } + + public Quat PlayerViewRotation + { + set + { + Helper.TryMarshalSet(ref m_PlayerViewRotation, value); + } + } + + public bool IsPlayerViewZoomed + { + set + { + Helper.TryMarshalSet(ref m_IsPlayerViewZoomed, value); + } + } + + public float PlayerHealth + { + set + { + m_PlayerHealth = value; + } + } + + public AntiCheatCommonPlayerMovementState PlayerMovementState + { + set + { + m_PlayerMovementState = value; + } + } + + public void Set(LogPlayerTickOptions other) + { + if (other != null) + { + m_ApiVersion = AntiCheatCommonInterface.LogplayertickApiLatest; + PlayerHandle = other.PlayerHandle; + PlayerPosition = other.PlayerPosition; + PlayerViewRotation = other.PlayerViewRotation; + IsPlayerViewZoomed = other.IsPlayerViewZoomed; + PlayerHealth = other.PlayerHealth; + PlayerMovementState = other.PlayerMovementState; + } + } + + public void Set(object other) + { + Set(other as LogPlayerTickOptions); + } + + public void Dispose() + { + Helper.TryMarshalDispose(ref m_PlayerHandle); + Helper.TryMarshalDispose(ref m_PlayerPosition); + Helper.TryMarshalDispose(ref m_PlayerViewRotation); + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/AntiCheatCommon/LogPlayerTickOptions.cs.meta b/EOSSDK/Generated/AntiCheatCommon/LogPlayerTickOptions.cs.meta new file mode 100644 index 00000000..ca922f39 --- /dev/null +++ b/EOSSDK/Generated/AntiCheatCommon/LogPlayerTickOptions.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: ad7dc4564f0154640b5a9d818c465805 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/AntiCheatCommon/LogPlayerUseAbilityOptions.cs b/EOSSDK/Generated/AntiCheatCommon/LogPlayerUseAbilityOptions.cs new file mode 100644 index 00000000..005c8087 --- /dev/null +++ b/EOSSDK/Generated/AntiCheatCommon/LogPlayerUseAbilityOptions.cs @@ -0,0 +1,92 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.AntiCheatCommon +{ + public class LogPlayerUseAbilityOptions + { + /// + /// Locally unique value used in RegisterClient/RegisterPeer + /// + public System.IntPtr PlayerHandle { get; set; } + + /// + /// Game defined unique identifier for the ability being used + /// + public uint AbilityId { get; set; } + + /// + /// Duration of the ability effect in milliseconds. If not applicable, use 0. + /// + public uint AbilityDurationMs { get; set; } + + /// + /// Cooldown until the ability can be used again in milliseconds. If not applicable, use 0. + /// + public uint AbilityCooldownMs { get; set; } + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct LogPlayerUseAbilityOptionsInternal : ISettable, System.IDisposable + { + private int m_ApiVersion; + private System.IntPtr m_PlayerHandle; + private uint m_AbilityId; + private uint m_AbilityDurationMs; + private uint m_AbilityCooldownMs; + + public System.IntPtr PlayerHandle + { + set + { + m_PlayerHandle = value; + } + } + + public uint AbilityId + { + set + { + m_AbilityId = value; + } + } + + public uint AbilityDurationMs + { + set + { + m_AbilityDurationMs = value; + } + } + + public uint AbilityCooldownMs + { + set + { + m_AbilityCooldownMs = value; + } + } + + public void Set(LogPlayerUseAbilityOptions other) + { + if (other != null) + { + m_ApiVersion = AntiCheatCommonInterface.LogplayeruseabilityApiLatest; + PlayerHandle = other.PlayerHandle; + AbilityId = other.AbilityId; + AbilityDurationMs = other.AbilityDurationMs; + AbilityCooldownMs = other.AbilityCooldownMs; + } + } + + public void Set(object other) + { + Set(other as LogPlayerUseAbilityOptions); + } + + public void Dispose() + { + Helper.TryMarshalDispose(ref m_PlayerHandle); + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/AntiCheatCommon/LogPlayerUseAbilityOptions.cs.meta b/EOSSDK/Generated/AntiCheatCommon/LogPlayerUseAbilityOptions.cs.meta new file mode 100644 index 00000000..7534d60c --- /dev/null +++ b/EOSSDK/Generated/AntiCheatCommon/LogPlayerUseAbilityOptions.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: a4a407f728287b540a2d1824c1cf113b +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/AntiCheatCommon/LogPlayerUseWeaponData.cs b/EOSSDK/Generated/AntiCheatCommon/LogPlayerUseWeaponData.cs new file mode 100644 index 00000000..973428ef --- /dev/null +++ b/EOSSDK/Generated/AntiCheatCommon/LogPlayerUseWeaponData.cs @@ -0,0 +1,181 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.AntiCheatCommon +{ + public class LogPlayerUseWeaponData : ISettable + { + /// + /// Locally unique value used in RegisterClient/RegisterPeer + /// + public System.IntPtr PlayerHandle { get; set; } + + /// + /// Player's current world position as a 3D vector + /// + public Vec3f PlayerPosition { get; set; } + + /// + /// Player's view rotation as a quaternion + /// + public Quat PlayerViewRotation { get; set; } + + /// + /// True if the player's view is zoomed (e.g. using a sniper rifle), otherwise false + /// + public bool IsPlayerViewZoomed { get; set; } + + /// + /// Set to true if the player is using a melee attack, otherwise false + /// + public bool IsMeleeAttack { get; set; } + + /// + /// Name of the weapon used. Will be truncated to bytes if longer. + /// + public string WeaponName { get; set; } + + internal void Set(LogPlayerUseWeaponDataInternal? other) + { + if (other != null) + { + PlayerHandle = other.Value.PlayerHandle; + PlayerPosition = other.Value.PlayerPosition; + PlayerViewRotation = other.Value.PlayerViewRotation; + IsPlayerViewZoomed = other.Value.IsPlayerViewZoomed; + IsMeleeAttack = other.Value.IsMeleeAttack; + WeaponName = other.Value.WeaponName; + } + } + + public void Set(object other) + { + Set(other as LogPlayerUseWeaponDataInternal?); + } + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct LogPlayerUseWeaponDataInternal : ISettable, System.IDisposable + { + private System.IntPtr m_PlayerHandle; + private System.IntPtr m_PlayerPosition; + private System.IntPtr m_PlayerViewRotation; + private int m_IsPlayerViewZoomed; + private int m_IsMeleeAttack; + private System.IntPtr m_WeaponName; + + public System.IntPtr PlayerHandle + { + get + { + return m_PlayerHandle; + } + + set + { + m_PlayerHandle = value; + } + } + + public Vec3f PlayerPosition + { + get + { + Vec3f value; + Helper.TryMarshalGet(m_PlayerPosition, out value); + return value; + } + + set + { + Helper.TryMarshalSet(ref m_PlayerPosition, value); + } + } + + public Quat PlayerViewRotation + { + get + { + Quat value; + Helper.TryMarshalGet(m_PlayerViewRotation, out value); + return value; + } + + set + { + Helper.TryMarshalSet(ref m_PlayerViewRotation, value); + } + } + + public bool IsPlayerViewZoomed + { + get + { + bool value; + Helper.TryMarshalGet(m_IsPlayerViewZoomed, out value); + return value; + } + + set + { + Helper.TryMarshalSet(ref m_IsPlayerViewZoomed, value); + } + } + + public bool IsMeleeAttack + { + get + { + bool value; + Helper.TryMarshalGet(m_IsMeleeAttack, out value); + return value; + } + + set + { + Helper.TryMarshalSet(ref m_IsMeleeAttack, value); + } + } + + public string WeaponName + { + get + { + string value; + Helper.TryMarshalGet(m_WeaponName, out value); + return value; + } + + set + { + Helper.TryMarshalSet(ref m_WeaponName, value); + } + } + + public void Set(LogPlayerUseWeaponData other) + { + if (other != null) + { + PlayerHandle = other.PlayerHandle; + PlayerPosition = other.PlayerPosition; + PlayerViewRotation = other.PlayerViewRotation; + IsPlayerViewZoomed = other.IsPlayerViewZoomed; + IsMeleeAttack = other.IsMeleeAttack; + WeaponName = other.WeaponName; + } + } + + public void Set(object other) + { + Set(other as LogPlayerUseWeaponData); + } + + public void Dispose() + { + Helper.TryMarshalDispose(ref m_PlayerHandle); + Helper.TryMarshalDispose(ref m_PlayerPosition); + Helper.TryMarshalDispose(ref m_PlayerViewRotation); + Helper.TryMarshalDispose(ref m_WeaponName); + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/AntiCheatCommon/LogPlayerUseWeaponData.cs.meta b/EOSSDK/Generated/AntiCheatCommon/LogPlayerUseWeaponData.cs.meta new file mode 100644 index 00000000..aeec9be4 --- /dev/null +++ b/EOSSDK/Generated/AntiCheatCommon/LogPlayerUseWeaponData.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 55256d68f959f7d44a27a5cb8f5f33a3 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/AntiCheatCommon/LogPlayerUseWeaponOptions.cs b/EOSSDK/Generated/AntiCheatCommon/LogPlayerUseWeaponOptions.cs new file mode 100644 index 00000000..fb1fcdd9 --- /dev/null +++ b/EOSSDK/Generated/AntiCheatCommon/LogPlayerUseWeaponOptions.cs @@ -0,0 +1,47 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.AntiCheatCommon +{ + public class LogPlayerUseWeaponOptions + { + /// + /// Struct containing detailed information about a weapon use event + /// + public LogPlayerUseWeaponData UseWeaponData { get; set; } + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct LogPlayerUseWeaponOptionsInternal : ISettable, System.IDisposable + { + private int m_ApiVersion; + private System.IntPtr m_UseWeaponData; + + public LogPlayerUseWeaponData UseWeaponData + { + set + { + Helper.TryMarshalSet(ref m_UseWeaponData, value); + } + } + + public void Set(LogPlayerUseWeaponOptions other) + { + if (other != null) + { + m_ApiVersion = AntiCheatCommonInterface.LogplayeruseweaponApiLatest; + UseWeaponData = other.UseWeaponData; + } + } + + public void Set(object other) + { + Set(other as LogPlayerUseWeaponOptions); + } + + public void Dispose() + { + Helper.TryMarshalDispose(ref m_UseWeaponData); + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/AntiCheatCommon/LogPlayerUseWeaponOptions.cs.meta b/EOSSDK/Generated/AntiCheatCommon/LogPlayerUseWeaponOptions.cs.meta new file mode 100644 index 00000000..5c9b8156 --- /dev/null +++ b/EOSSDK/Generated/AntiCheatCommon/LogPlayerUseWeaponOptions.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: d363cd2b124c05b49846448ea2b3d627 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/AntiCheatCommon/OnClientActionRequiredCallbackInfo.cs b/EOSSDK/Generated/AntiCheatCommon/OnClientActionRequiredCallbackInfo.cs new file mode 100644 index 00000000..9c5f3f01 --- /dev/null +++ b/EOSSDK/Generated/AntiCheatCommon/OnClientActionRequiredCallbackInfo.cs @@ -0,0 +1,120 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.AntiCheatCommon +{ + /// + /// Structure containing details about a required client/peer action + /// + public class OnClientActionRequiredCallbackInfo : ICallbackInfo, ISettable + { + /// + /// Caller-specified context data + /// + public object ClientData { get; private set; } + + /// + /// The identifier of the client/peer that this action applies to. See the RegisterClient and RegisterPeer functions. + /// + public System.IntPtr ClientHandle { get; private set; } + + /// + /// The action that must be applied to the specified client/peer + /// + public AntiCheatCommonClientAction ClientAction { get; private set; } + + /// + /// Code indicating the reason for the action + /// + public AntiCheatCommonClientActionReason ActionReasonCode { get; private set; } + + /// + /// String containing details about the action reason + /// + public string ActionReasonDetailsString { get; private set; } + + public Result? GetResultCode() + { + return null; + } + + internal void Set(OnClientActionRequiredCallbackInfoInternal? other) + { + if (other != null) + { + ClientData = other.Value.ClientData; + ClientHandle = other.Value.ClientHandle; + ClientAction = other.Value.ClientAction; + ActionReasonCode = other.Value.ActionReasonCode; + ActionReasonDetailsString = other.Value.ActionReasonDetailsString; + } + } + + public void Set(object other) + { + Set(other as OnClientActionRequiredCallbackInfoInternal?); + } + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct OnClientActionRequiredCallbackInfoInternal : ICallbackInfoInternal + { + private System.IntPtr m_ClientData; + private System.IntPtr m_ClientHandle; + private AntiCheatCommonClientAction m_ClientAction; + private AntiCheatCommonClientActionReason m_ActionReasonCode; + private System.IntPtr m_ActionReasonDetailsString; + + public object ClientData + { + get + { + object value; + Helper.TryMarshalGet(m_ClientData, out value); + return value; + } + } + + public System.IntPtr ClientDataAddress + { + get + { + return m_ClientData; + } + } + + public System.IntPtr ClientHandle + { + get + { + return m_ClientHandle; + } + } + + public AntiCheatCommonClientAction ClientAction + { + get + { + return m_ClientAction; + } + } + + public AntiCheatCommonClientActionReason ActionReasonCode + { + get + { + return m_ActionReasonCode; + } + } + + public string ActionReasonDetailsString + { + get + { + string value; + Helper.TryMarshalGet(m_ActionReasonDetailsString, out value); + return value; + } + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/AntiCheatCommon/OnClientActionRequiredCallbackInfo.cs.meta b/EOSSDK/Generated/AntiCheatCommon/OnClientActionRequiredCallbackInfo.cs.meta new file mode 100644 index 00000000..182c60c9 --- /dev/null +++ b/EOSSDK/Generated/AntiCheatCommon/OnClientActionRequiredCallbackInfo.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: e7d3ef2ff505ab149ace931ad63b6900 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/AntiCheatCommon/OnClientAuthStatusChangedCallbackInfo.cs b/EOSSDK/Generated/AntiCheatCommon/OnClientAuthStatusChangedCallbackInfo.cs new file mode 100644 index 00000000..1ef0b3f2 --- /dev/null +++ b/EOSSDK/Generated/AntiCheatCommon/OnClientAuthStatusChangedCallbackInfo.cs @@ -0,0 +1,88 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.AntiCheatCommon +{ + /// + /// Structure containing details about a client/peer authentication status change + /// + public class OnClientAuthStatusChangedCallbackInfo : ICallbackInfo, ISettable + { + /// + /// Caller-specified context data + /// + public object ClientData { get; private set; } + + /// + /// The identifier of the client/peer that this status change applies to. See the RegisterClient and RegisterPeer functions. + /// + public System.IntPtr ClientHandle { get; private set; } + + /// + /// The client/peer's new authentication status + /// + public AntiCheatCommonClientAuthStatus ClientAuthStatus { get; private set; } + + public Result? GetResultCode() + { + return null; + } + + internal void Set(OnClientAuthStatusChangedCallbackInfoInternal? other) + { + if (other != null) + { + ClientData = other.Value.ClientData; + ClientHandle = other.Value.ClientHandle; + ClientAuthStatus = other.Value.ClientAuthStatus; + } + } + + public void Set(object other) + { + Set(other as OnClientAuthStatusChangedCallbackInfoInternal?); + } + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct OnClientAuthStatusChangedCallbackInfoInternal : ICallbackInfoInternal + { + private System.IntPtr m_ClientData; + private System.IntPtr m_ClientHandle; + private AntiCheatCommonClientAuthStatus m_ClientAuthStatus; + + public object ClientData + { + get + { + object value; + Helper.TryMarshalGet(m_ClientData, out value); + return value; + } + } + + public System.IntPtr ClientDataAddress + { + get + { + return m_ClientData; + } + } + + public System.IntPtr ClientHandle + { + get + { + return m_ClientHandle; + } + } + + public AntiCheatCommonClientAuthStatus ClientAuthStatus + { + get + { + return m_ClientAuthStatus; + } + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/AntiCheatCommon/OnClientAuthStatusChangedCallbackInfo.cs.meta b/EOSSDK/Generated/AntiCheatCommon/OnClientAuthStatusChangedCallbackInfo.cs.meta new file mode 100644 index 00000000..2d034181 --- /dev/null +++ b/EOSSDK/Generated/AntiCheatCommon/OnClientAuthStatusChangedCallbackInfo.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: ef19406610ad5f64fbb800e243aec8a4 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/AntiCheatCommon/OnMessageToClientCallbackInfo.cs b/EOSSDK/Generated/AntiCheatCommon/OnMessageToClientCallbackInfo.cs new file mode 100644 index 00000000..0d187c97 --- /dev/null +++ b/EOSSDK/Generated/AntiCheatCommon/OnMessageToClientCallbackInfo.cs @@ -0,0 +1,91 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.AntiCheatCommon +{ + /// + /// Structure containing details about a new message that must be dispatched to a connected client/peer. + /// + public class OnMessageToClientCallbackInfo : ICallbackInfo, ISettable + { + /// + /// Caller-specified context data + /// + public object ClientData { get; private set; } + + /// + /// The identifier of the client/peer that this message must be delivered to. See the RegisterClient and RegisterPeer functions. + /// + public System.IntPtr ClientHandle { get; private set; } + + /// + /// The message data that must be sent to the client + /// + public byte[] MessageData { get; private set; } + + public Result? GetResultCode() + { + return null; + } + + internal void Set(OnMessageToClientCallbackInfoInternal? other) + { + if (other != null) + { + ClientData = other.Value.ClientData; + ClientHandle = other.Value.ClientHandle; + MessageData = other.Value.MessageData; + } + } + + public void Set(object other) + { + Set(other as OnMessageToClientCallbackInfoInternal?); + } + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct OnMessageToClientCallbackInfoInternal : ICallbackInfoInternal + { + private System.IntPtr m_ClientData; + private System.IntPtr m_ClientHandle; + private System.IntPtr m_MessageData; + private uint m_MessageDataSizeBytes; + + public object ClientData + { + get + { + object value; + Helper.TryMarshalGet(m_ClientData, out value); + return value; + } + } + + public System.IntPtr ClientDataAddress + { + get + { + return m_ClientData; + } + } + + public System.IntPtr ClientHandle + { + get + { + return m_ClientHandle; + } + } + + public byte[] MessageData + { + get + { + byte[] value; + Helper.TryMarshalGet(m_MessageData, out value, m_MessageDataSizeBytes); + return value; + } + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/AntiCheatCommon/OnMessageToClientCallbackInfo.cs.meta b/EOSSDK/Generated/AntiCheatCommon/OnMessageToClientCallbackInfo.cs.meta new file mode 100644 index 00000000..e577e61a --- /dev/null +++ b/EOSSDK/Generated/AntiCheatCommon/OnMessageToClientCallbackInfo.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 78ff3f8339c8fef439d304d7863bb326 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/AntiCheatCommon/Quat.cs b/EOSSDK/Generated/AntiCheatCommon/Quat.cs new file mode 100644 index 00000000..b1321b7f --- /dev/null +++ b/EOSSDK/Generated/AntiCheatCommon/Quat.cs @@ -0,0 +1,128 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.AntiCheatCommon +{ + /// + /// Quaternion using left-handed coordinate system (as in Unreal Engine) + /// + public class Quat : ISettable + { + /// + /// W component - scalar part + /// + public float w { get; set; } + + /// + /// X component - forward direction + /// + public float x { get; set; } + + /// + /// Y component - right direction + /// + public float y { get; set; } + + /// + /// Z component - up direction + /// + public float z { get; set; } + + internal void Set(QuatInternal? other) + { + if (other != null) + { + w = other.Value.w; + x = other.Value.x; + y = other.Value.y; + z = other.Value.z; + } + } + + public void Set(object other) + { + Set(other as QuatInternal?); + } + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct QuatInternal : ISettable, System.IDisposable + { + private float m_w; + private float m_x; + private float m_y; + private float m_z; + + public float w + { + get + { + return m_w; + } + + set + { + m_w = value; + } + } + + public float x + { + get + { + return m_x; + } + + set + { + m_x = value; + } + } + + public float y + { + get + { + return m_y; + } + + set + { + m_y = value; + } + } + + public float z + { + get + { + return m_z; + } + + set + { + m_z = value; + } + } + + public void Set(Quat other) + { + if (other != null) + { + w = other.w; + x = other.x; + y = other.y; + z = other.z; + } + } + + public void Set(object other) + { + Set(other as Quat); + } + + public void Dispose() + { + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/AntiCheatCommon/Quat.cs.meta b/EOSSDK/Generated/AntiCheatCommon/Quat.cs.meta new file mode 100644 index 00000000..da4b75f8 --- /dev/null +++ b/EOSSDK/Generated/AntiCheatCommon/Quat.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 948c7695c069be849945ac46f327164a +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/AntiCheatCommon/RegisterEventOptions.cs b/EOSSDK/Generated/AntiCheatCommon/RegisterEventOptions.cs new file mode 100644 index 00000000..cefd5204 --- /dev/null +++ b/EOSSDK/Generated/AntiCheatCommon/RegisterEventOptions.cs @@ -0,0 +1,94 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.AntiCheatCommon +{ + public class RegisterEventOptions + { + /// + /// Unique event identifier. Must be >= . + /// + public uint EventId { get; set; } + + /// + /// Name of the custom event. Allowed characters are 0-9, A-Z, a-z, '_', '-', '.' + /// + public string EventName { get; set; } + + /// + /// Type of the custom event + /// + public AntiCheatCommonEventType EventType { get; set; } + + /// + /// Pointer to an array of with ParamDefsCount elements + /// + public RegisterEventParamDef[] ParamDefs { get; set; } + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct RegisterEventOptionsInternal : ISettable, System.IDisposable + { + private int m_ApiVersion; + private uint m_EventId; + private System.IntPtr m_EventName; + private AntiCheatCommonEventType m_EventType; + private uint m_ParamDefsCount; + private System.IntPtr m_ParamDefs; + + public uint EventId + { + set + { + m_EventId = value; + } + } + + public string EventName + { + set + { + Helper.TryMarshalSet(ref m_EventName, value); + } + } + + public AntiCheatCommonEventType EventType + { + set + { + m_EventType = value; + } + } + + public RegisterEventParamDef[] ParamDefs + { + set + { + Helper.TryMarshalSet(ref m_ParamDefs, value, out m_ParamDefsCount); + } + } + + public void Set(RegisterEventOptions other) + { + if (other != null) + { + m_ApiVersion = AntiCheatCommonInterface.RegistereventApiLatest; + EventId = other.EventId; + EventName = other.EventName; + EventType = other.EventType; + ParamDefs = other.ParamDefs; + } + } + + public void Set(object other) + { + Set(other as RegisterEventOptions); + } + + public void Dispose() + { + Helper.TryMarshalDispose(ref m_EventName); + Helper.TryMarshalDispose(ref m_ParamDefs); + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/AntiCheatCommon/RegisterEventOptions.cs.meta b/EOSSDK/Generated/AntiCheatCommon/RegisterEventOptions.cs.meta new file mode 100644 index 00000000..6ca5af41 --- /dev/null +++ b/EOSSDK/Generated/AntiCheatCommon/RegisterEventOptions.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 2eb0a6786b3d47441ac4ddc3aa545586 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/AntiCheatCommon/RegisterEventParamDef.cs b/EOSSDK/Generated/AntiCheatCommon/RegisterEventParamDef.cs new file mode 100644 index 00000000..d2219b89 --- /dev/null +++ b/EOSSDK/Generated/AntiCheatCommon/RegisterEventParamDef.cs @@ -0,0 +1,86 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.AntiCheatCommon +{ + public class RegisterEventParamDef : ISettable + { + /// + /// Parameter name. Allowed characters are 0-9, A-Z, a-z, '_', '-', '.' + /// + public string ParamName { get; set; } + + /// + /// Parameter type + /// + public AntiCheatCommonEventParamType ParamType { get; set; } + + internal void Set(RegisterEventParamDefInternal? other) + { + if (other != null) + { + ParamName = other.Value.ParamName; + ParamType = other.Value.ParamType; + } + } + + public void Set(object other) + { + Set(other as RegisterEventParamDefInternal?); + } + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct RegisterEventParamDefInternal : ISettable, System.IDisposable + { + private System.IntPtr m_ParamName; + private AntiCheatCommonEventParamType m_ParamType; + + public string ParamName + { + get + { + string value; + Helper.TryMarshalGet(m_ParamName, out value); + return value; + } + + set + { + Helper.TryMarshalSet(ref m_ParamName, value); + } + } + + public AntiCheatCommonEventParamType ParamType + { + get + { + return m_ParamType; + } + + set + { + m_ParamType = value; + } + } + + public void Set(RegisterEventParamDef other) + { + if (other != null) + { + ParamName = other.ParamName; + ParamType = other.ParamType; + } + } + + public void Set(object other) + { + Set(other as RegisterEventParamDef); + } + + public void Dispose() + { + Helper.TryMarshalDispose(ref m_ParamName); + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/AntiCheatCommon/RegisterEventParamDef.cs.meta b/EOSSDK/Generated/AntiCheatCommon/RegisterEventParamDef.cs.meta new file mode 100644 index 00000000..e59ec1be --- /dev/null +++ b/EOSSDK/Generated/AntiCheatCommon/RegisterEventParamDef.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 6596c67ce794c574dbb6a05cb3a39c18 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/AntiCheatCommon/SetClientDetailsOptions.cs b/EOSSDK/Generated/AntiCheatCommon/SetClientDetailsOptions.cs new file mode 100644 index 00000000..15d3e5ce --- /dev/null +++ b/EOSSDK/Generated/AntiCheatCommon/SetClientDetailsOptions.cs @@ -0,0 +1,77 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.AntiCheatCommon +{ + public class SetClientDetailsOptions + { + /// + /// Locally unique value used in RegisterClient/RegisterPeer + /// + public System.IntPtr ClientHandle { get; set; } + + /// + /// General flags associated with this client, if any + /// + public AntiCheatCommonClientFlags ClientFlags { get; set; } + + /// + /// Input device being used by this client, if known + /// + public AntiCheatCommonClientInput ClientInputMethod { get; set; } + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct SetClientDetailsOptionsInternal : ISettable, System.IDisposable + { + private int m_ApiVersion; + private System.IntPtr m_ClientHandle; + private AntiCheatCommonClientFlags m_ClientFlags; + private AntiCheatCommonClientInput m_ClientInputMethod; + + public System.IntPtr ClientHandle + { + set + { + m_ClientHandle = value; + } + } + + public AntiCheatCommonClientFlags ClientFlags + { + set + { + m_ClientFlags = value; + } + } + + public AntiCheatCommonClientInput ClientInputMethod + { + set + { + m_ClientInputMethod = value; + } + } + + public void Set(SetClientDetailsOptions other) + { + if (other != null) + { + m_ApiVersion = AntiCheatCommonInterface.SetclientdetailsApiLatest; + ClientHandle = other.ClientHandle; + ClientFlags = other.ClientFlags; + ClientInputMethod = other.ClientInputMethod; + } + } + + public void Set(object other) + { + Set(other as SetClientDetailsOptions); + } + + public void Dispose() + { + Helper.TryMarshalDispose(ref m_ClientHandle); + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/AntiCheatCommon/SetClientDetailsOptions.cs.meta b/EOSSDK/Generated/AntiCheatCommon/SetClientDetailsOptions.cs.meta new file mode 100644 index 00000000..90c192b9 --- /dev/null +++ b/EOSSDK/Generated/AntiCheatCommon/SetClientDetailsOptions.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: c02121f173f67364ca5a503568838e75 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/AntiCheatCommon/SetGameSessionIdOptions.cs b/EOSSDK/Generated/AntiCheatCommon/SetGameSessionIdOptions.cs new file mode 100644 index 00000000..81d58129 --- /dev/null +++ b/EOSSDK/Generated/AntiCheatCommon/SetGameSessionIdOptions.cs @@ -0,0 +1,47 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.AntiCheatCommon +{ + public class SetGameSessionIdOptions + { + /// + /// Game session identifier + /// + public string GameSessionId { get; set; } + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct SetGameSessionIdOptionsInternal : ISettable, System.IDisposable + { + private int m_ApiVersion; + private System.IntPtr m_GameSessionId; + + public string GameSessionId + { + set + { + Helper.TryMarshalSet(ref m_GameSessionId, value); + } + } + + public void Set(SetGameSessionIdOptions other) + { + if (other != null) + { + m_ApiVersion = AntiCheatCommonInterface.SetgamesessionidApiLatest; + GameSessionId = other.GameSessionId; + } + } + + public void Set(object other) + { + Set(other as SetGameSessionIdOptions); + } + + public void Dispose() + { + Helper.TryMarshalDispose(ref m_GameSessionId); + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/AntiCheatCommon/SetGameSessionIdOptions.cs.meta b/EOSSDK/Generated/AntiCheatCommon/SetGameSessionIdOptions.cs.meta new file mode 100644 index 00000000..432b79bc --- /dev/null +++ b/EOSSDK/Generated/AntiCheatCommon/SetGameSessionIdOptions.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: f19a95698dbfad347b46b7384e90700e +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/AntiCheatCommon/Vec3f.cs b/EOSSDK/Generated/AntiCheatCommon/Vec3f.cs new file mode 100644 index 00000000..ac4165c7 --- /dev/null +++ b/EOSSDK/Generated/AntiCheatCommon/Vec3f.cs @@ -0,0 +1,107 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.AntiCheatCommon +{ + /// + /// Vector using left-handed coordinate system (as in Unreal Engine) + /// + public class Vec3f : ISettable + { + /// + /// X axis coordinate - forward direction + /// + public float x { get; set; } + + /// + /// Y axis coordinate - right direction + /// + public float y { get; set; } + + /// + /// Z axis coordinate - up direction + /// + public float z { get; set; } + + internal void Set(Vec3fInternal? other) + { + if (other != null) + { + x = other.Value.x; + y = other.Value.y; + z = other.Value.z; + } + } + + public void Set(object other) + { + Set(other as Vec3fInternal?); + } + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct Vec3fInternal : ISettable, System.IDisposable + { + private float m_x; + private float m_y; + private float m_z; + + public float x + { + get + { + return m_x; + } + + set + { + m_x = value; + } + } + + public float y + { + get + { + return m_y; + } + + set + { + m_y = value; + } + } + + public float z + { + get + { + return m_z; + } + + set + { + m_z = value; + } + } + + public void Set(Vec3f other) + { + if (other != null) + { + x = other.x; + y = other.y; + z = other.z; + } + } + + public void Set(object other) + { + Set(other as Vec3f); + } + + public void Dispose() + { + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/AntiCheatCommon/Vec3f.cs.meta b/EOSSDK/Generated/AntiCheatCommon/Vec3f.cs.meta new file mode 100644 index 00000000..38102c8b --- /dev/null +++ b/EOSSDK/Generated/AntiCheatCommon/Vec3f.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: ffe5e724b856dce488cd6aee56741f5a +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/AntiCheatServer.meta b/EOSSDK/Generated/AntiCheatServer.meta new file mode 100644 index 00000000..c49c8256 --- /dev/null +++ b/EOSSDK/Generated/AntiCheatServer.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 438c02f5878372b43bb49759e38c6605 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/AntiCheatServer/AddNotifyClientActionRequiredOptions.cs b/EOSSDK/Generated/AntiCheatServer/AddNotifyClientActionRequiredOptions.cs new file mode 100644 index 00000000..e834a88e --- /dev/null +++ b/EOSSDK/Generated/AntiCheatServer/AddNotifyClientActionRequiredOptions.cs @@ -0,0 +1,32 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.AntiCheatServer +{ + public class AddNotifyClientActionRequiredOptions + { + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct AddNotifyClientActionRequiredOptionsInternal : ISettable, System.IDisposable + { + private int m_ApiVersion; + + public void Set(AddNotifyClientActionRequiredOptions other) + { + if (other != null) + { + m_ApiVersion = AntiCheatServerInterface.AddnotifyclientactionrequiredApiLatest; + } + } + + public void Set(object other) + { + Set(other as AddNotifyClientActionRequiredOptions); + } + + public void Dispose() + { + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/AntiCheatServer/AddNotifyClientActionRequiredOptions.cs.meta b/EOSSDK/Generated/AntiCheatServer/AddNotifyClientActionRequiredOptions.cs.meta new file mode 100644 index 00000000..d549e6c4 --- /dev/null +++ b/EOSSDK/Generated/AntiCheatServer/AddNotifyClientActionRequiredOptions.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 6522e475b3a20054aaa23a70d5892bef +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/AntiCheatServer/AddNotifyClientAuthStatusChangedOptions.cs b/EOSSDK/Generated/AntiCheatServer/AddNotifyClientAuthStatusChangedOptions.cs new file mode 100644 index 00000000..ec33af83 --- /dev/null +++ b/EOSSDK/Generated/AntiCheatServer/AddNotifyClientAuthStatusChangedOptions.cs @@ -0,0 +1,32 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.AntiCheatServer +{ + public class AddNotifyClientAuthStatusChangedOptions + { + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct AddNotifyClientAuthStatusChangedOptionsInternal : ISettable, System.IDisposable + { + private int m_ApiVersion; + + public void Set(AddNotifyClientAuthStatusChangedOptions other) + { + if (other != null) + { + m_ApiVersion = AntiCheatServerInterface.AddnotifyclientauthstatuschangedApiLatest; + } + } + + public void Set(object other) + { + Set(other as AddNotifyClientAuthStatusChangedOptions); + } + + public void Dispose() + { + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/AntiCheatServer/AddNotifyClientAuthStatusChangedOptions.cs.meta b/EOSSDK/Generated/AntiCheatServer/AddNotifyClientAuthStatusChangedOptions.cs.meta new file mode 100644 index 00000000..2a5ae4cb --- /dev/null +++ b/EOSSDK/Generated/AntiCheatServer/AddNotifyClientAuthStatusChangedOptions.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: e51864954e29ec244a215a2a84c08573 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/AntiCheatServer/AddNotifyMessageToClientOptions.cs b/EOSSDK/Generated/AntiCheatServer/AddNotifyMessageToClientOptions.cs new file mode 100644 index 00000000..34c0f30a --- /dev/null +++ b/EOSSDK/Generated/AntiCheatServer/AddNotifyMessageToClientOptions.cs @@ -0,0 +1,32 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.AntiCheatServer +{ + public class AddNotifyMessageToClientOptions + { + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct AddNotifyMessageToClientOptionsInternal : ISettable, System.IDisposable + { + private int m_ApiVersion; + + public void Set(AddNotifyMessageToClientOptions other) + { + if (other != null) + { + m_ApiVersion = AntiCheatServerInterface.AddnotifymessagetoclientApiLatest; + } + } + + public void Set(object other) + { + Set(other as AddNotifyMessageToClientOptions); + } + + public void Dispose() + { + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/AntiCheatServer/AddNotifyMessageToClientOptions.cs.meta b/EOSSDK/Generated/AntiCheatServer/AddNotifyMessageToClientOptions.cs.meta new file mode 100644 index 00000000..7d1cf7dc --- /dev/null +++ b/EOSSDK/Generated/AntiCheatServer/AddNotifyMessageToClientOptions.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 0ff19e8e7bbe9ec42992dc0172d2b263 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/AntiCheatServer/AntiCheatServerInterface.cs b/EOSSDK/Generated/AntiCheatServer/AntiCheatServerInterface.cs new file mode 100644 index 00000000..2d7d2669 --- /dev/null +++ b/EOSSDK/Generated/AntiCheatServer/AntiCheatServerInterface.cs @@ -0,0 +1,740 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.AntiCheatServer +{ + public sealed partial class AntiCheatServerInterface : Handle + { + public AntiCheatServerInterface() + { + } + + public AntiCheatServerInterface(System.IntPtr innerHandle) : base(innerHandle) + { + } + + public const int AddnotifyclientactionrequiredApiLatest = 1; + + public const int AddnotifyclientauthstatuschangedApiLatest = 1; + + public const int AddnotifymessagetoclientApiLatest = 1; + + public const int BeginsessionApiLatest = 3; + + public const int BeginsessionMaxRegistertimeout = 120; + + /// + /// Limits on RegisterTimeoutSeconds parameter + /// + public const int BeginsessionMinRegistertimeout = 10; + + public const int EndsessionApiLatest = 1; + + public const int GetprotectmessageoutputlengthApiLatest = 1; + + public const int ProtectmessageApiLatest = 1; + + public const int ReceivemessagefromclientApiLatest = 1; + + public const int RegisterclientApiLatest = 1; + + public const int SetclientnetworkstateApiLatest = 1; + + public const int UnprotectmessageApiLatest = 1; + + public const int UnregisterclientApiLatest = 1; + + /// + /// Add a callback issued when an action must be applied to a connected client. The bound function + /// will only be called between a successful call to and the matching call. + /// + /// Structure containing input data + /// This value is returned to the caller when NotificationFn is invoked + /// The callback to be fired + /// + /// A valid notification ID if successfully bound, or otherwise + /// + public ulong AddNotifyClientActionRequired(AddNotifyClientActionRequiredOptions options, object clientData, OnClientActionRequiredCallback notificationFn) + { + var optionsAddress = System.IntPtr.Zero; + Helper.TryMarshalSet(ref optionsAddress, options); + + var clientDataAddress = System.IntPtr.Zero; + + var notificationFnInternal = new OnClientActionRequiredCallbackInternal(OnClientActionRequiredCallbackInternalImplementation); + Helper.AddCallback(ref clientDataAddress, clientData, notificationFn, notificationFnInternal); + + var funcResult = Bindings.EOS_AntiCheatServer_AddNotifyClientActionRequired(InnerHandle, optionsAddress, clientDataAddress, notificationFnInternal); + + Helper.TryMarshalDispose(ref optionsAddress); + + Helper.TryAssignNotificationIdToCallback(clientDataAddress, funcResult); + + return funcResult; + } + + /// + /// Add an optional callback issued when a connected client's authentication status changes. The bound function + /// will only be called between a successful call to and the matching call. + /// + /// Structure containing input data + /// This value is returned to the caller when NotificationFn is invoked + /// The callback to be fired + /// + /// A valid notification ID if successfully bound, or otherwise + /// + public ulong AddNotifyClientAuthStatusChanged(AddNotifyClientAuthStatusChangedOptions options, object clientData, OnClientAuthStatusChangedCallback notificationFn) + { + var optionsAddress = System.IntPtr.Zero; + Helper.TryMarshalSet(ref optionsAddress, options); + + var clientDataAddress = System.IntPtr.Zero; + + var notificationFnInternal = new OnClientAuthStatusChangedCallbackInternal(OnClientAuthStatusChangedCallbackInternalImplementation); + Helper.AddCallback(ref clientDataAddress, clientData, notificationFn, notificationFnInternal); + + var funcResult = Bindings.EOS_AntiCheatServer_AddNotifyClientAuthStatusChanged(InnerHandle, optionsAddress, clientDataAddress, notificationFnInternal); + + Helper.TryMarshalDispose(ref optionsAddress); + + Helper.TryAssignNotificationIdToCallback(clientDataAddress, funcResult); + + return funcResult; + } + + /// + /// Add a callback issued when a new message must be dispatched to a connected client. The bound function + /// will only be called between a successful call to and the matching call. + /// + /// Structure containing input data + /// This value is returned to the caller when NotificationFn is invoked + /// The callback to be fired + /// + /// A valid notification ID if successfully bound, or otherwise + /// + public ulong AddNotifyMessageToClient(AddNotifyMessageToClientOptions options, object clientData, OnMessageToClientCallback notificationFn) + { + var optionsAddress = System.IntPtr.Zero; + Helper.TryMarshalSet(ref optionsAddress, options); + + var clientDataAddress = System.IntPtr.Zero; + + var notificationFnInternal = new OnMessageToClientCallbackInternal(OnMessageToClientCallbackInternalImplementation); + Helper.AddCallback(ref clientDataAddress, clientData, notificationFn, notificationFnInternal); + + var funcResult = Bindings.EOS_AntiCheatServer_AddNotifyMessageToClient(InnerHandle, optionsAddress, clientDataAddress, notificationFnInternal); + + Helper.TryMarshalDispose(ref optionsAddress); + + Helper.TryAssignNotificationIdToCallback(clientDataAddress, funcResult); + + return funcResult; + } + + /// + /// Begin the gameplay session. Event callbacks must be configured with + /// and before calling this function. + /// + /// Structure containing input data. + /// + /// - If the initialization succeeded + /// - If input data was invalid + /// + public Result BeginSession(BeginSessionOptions options) + { + var optionsAddress = System.IntPtr.Zero; + Helper.TryMarshalSet(ref optionsAddress, options); + + var funcResult = Bindings.EOS_AntiCheatServer_BeginSession(InnerHandle, optionsAddress); + + Helper.TryMarshalDispose(ref optionsAddress); + + return funcResult; + } + + /// + /// End the gameplay session. Should be called when the server is shutting down or entering an idle state. + /// + /// Structure containing input data. + /// + /// - If the initialization succeeded + /// - If input data was invalid + /// + public Result EndSession(EndSessionOptions options) + { + var optionsAddress = System.IntPtr.Zero; + Helper.TryMarshalSet(ref optionsAddress, options); + + var funcResult = Bindings.EOS_AntiCheatServer_EndSession(InnerHandle, optionsAddress); + + Helper.TryMarshalDispose(ref optionsAddress); + + return funcResult; + } + + /// + /// Optional NetProtect feature for game message encryption. + /// Calculates the required decrypted buffer size for a given input data length. + /// This will not change for a given SDK version, and allows one time allocation of reusable buffers. + /// + /// Structure containing input data. + /// The length in bytes that is required to call ProtectMessage on the given input size. + /// + /// - If the output length was calculated successfully + /// - If input data was invalid + /// + public Result GetProtectMessageOutputLength(GetProtectMessageOutputLengthOptions options, out uint outBufferLengthBytes) + { + var optionsAddress = System.IntPtr.Zero; + Helper.TryMarshalSet(ref optionsAddress, options); + + outBufferLengthBytes = Helper.GetDefault(); + + var funcResult = Bindings.EOS_AntiCheatServer_GetProtectMessageOutputLength(InnerHandle, optionsAddress, ref outBufferLengthBytes); + + Helper.TryMarshalDispose(ref optionsAddress); + + return funcResult; + } + + /// + /// Optional Cerberus feature for gameplay data collection. + /// Logs a custom gameplay event. + /// + /// This function may only be called between a successful call to and + /// the matching call. + /// + /// Structure containing input data. + /// + /// - If the event was logged successfully + /// - If input data was invalid + /// + public Result LogEvent(AntiCheatCommon.LogEventOptions options) + { + var optionsAddress = System.IntPtr.Zero; + Helper.TryMarshalSet(ref optionsAddress, options); + + var funcResult = Bindings.EOS_AntiCheatServer_LogEvent(InnerHandle, optionsAddress); + + Helper.TryMarshalDispose(ref optionsAddress); + + return funcResult; + } + + /// + /// Optional Cerberus feature for gameplay data collection. + /// Logs a game round's end and outcome. + /// + /// This function may only be called between a successful call to and + /// the matching call. + /// + /// Structure containing input data. + /// + /// - If the event was logged successfully + /// - If input data was invalid + /// + public Result LogGameRoundEnd(AntiCheatCommon.LogGameRoundEndOptions options) + { + var optionsAddress = System.IntPtr.Zero; + Helper.TryMarshalSet(ref optionsAddress, options); + + var funcResult = Bindings.EOS_AntiCheatServer_LogGameRoundEnd(InnerHandle, optionsAddress); + + Helper.TryMarshalDispose(ref optionsAddress); + + return funcResult; + } + + /// + /// Optional Cerberus feature for gameplay data collection. + /// Logs a new game round start. + /// + /// This function may only be called between a successful call to and + /// the matching call. + /// + /// Structure containing input data. + /// + /// - If the event was logged successfully + /// - If input data was invalid + /// + public Result LogGameRoundStart(AntiCheatCommon.LogGameRoundStartOptions options) + { + var optionsAddress = System.IntPtr.Zero; + Helper.TryMarshalSet(ref optionsAddress, options); + + var funcResult = Bindings.EOS_AntiCheatServer_LogGameRoundStart(InnerHandle, optionsAddress); + + Helper.TryMarshalDispose(ref optionsAddress); + + return funcResult; + } + + /// + /// Optional Cerberus feature for gameplay data collection. + /// Logs a player despawning in the game, for example as a result of the character's death, + /// switching to spectator mode, etc. + /// + /// This function may only be called between a successful call to and + /// the matching call. + /// + /// Structure containing input data. + /// + /// - If the event was logged successfully + /// - If input data was invalid + /// + public Result LogPlayerDespawn(AntiCheatCommon.LogPlayerDespawnOptions options) + { + var optionsAddress = System.IntPtr.Zero; + Helper.TryMarshalSet(ref optionsAddress, options); + + var funcResult = Bindings.EOS_AntiCheatServer_LogPlayerDespawn(InnerHandle, optionsAddress); + + Helper.TryMarshalDispose(ref optionsAddress); + + return funcResult; + } + + /// + /// Optional Cerberus feature for gameplay data collection. + /// Logs a player being revived after being downed (see options). + /// + /// This function may only be called between a successful call to and + /// the matching call. + /// + /// Structure containing input data. + /// + /// - If the event was logged successfully + /// - If input data was invalid + /// + public Result LogPlayerRevive(AntiCheatCommon.LogPlayerReviveOptions options) + { + var optionsAddress = System.IntPtr.Zero; + Helper.TryMarshalSet(ref optionsAddress, options); + + var funcResult = Bindings.EOS_AntiCheatServer_LogPlayerRevive(InnerHandle, optionsAddress); + + Helper.TryMarshalDispose(ref optionsAddress); + + return funcResult; + } + + /// + /// Optional Cerberus feature for gameplay data collection. + /// Logs a player spawning into the game. + /// + /// This function may only be called between a successful call to and + /// the matching call. + /// + /// Structure containing input data. + /// + /// - If the event was logged successfully + /// - If input data was invalid + /// + public Result LogPlayerSpawn(AntiCheatCommon.LogPlayerSpawnOptions options) + { + var optionsAddress = System.IntPtr.Zero; + Helper.TryMarshalSet(ref optionsAddress, options); + + var funcResult = Bindings.EOS_AntiCheatServer_LogPlayerSpawn(InnerHandle, optionsAddress); + + Helper.TryMarshalDispose(ref optionsAddress); + + return funcResult; + } + + /// + /// Optional Cerberus feature for gameplay data collection. + /// Logs that a player has taken damage. + /// + /// This function may only be called between a successful call to and + /// the matching call. + /// + /// Structure containing input data. + /// + /// - If the event was logged successfully + /// - If input data was invalid + /// + public Result LogPlayerTakeDamage(AntiCheatCommon.LogPlayerTakeDamageOptions options) + { + var optionsAddress = System.IntPtr.Zero; + Helper.TryMarshalSet(ref optionsAddress, options); + + var funcResult = Bindings.EOS_AntiCheatServer_LogPlayerTakeDamage(InnerHandle, optionsAddress); + + Helper.TryMarshalDispose(ref optionsAddress); + + return funcResult; + } + + /// + /// Optional Cerberus feature for gameplay data collection. + /// Logs a player's general state including position and view direction. + /// + /// This function may only be called between a successful call to and + /// the matching call. + /// + /// Structure containing input data. + /// + /// - If the event was logged successfully + /// - If input data was invalid + /// + public Result LogPlayerTick(AntiCheatCommon.LogPlayerTickOptions options) + { + var optionsAddress = System.IntPtr.Zero; + Helper.TryMarshalSet(ref optionsAddress, options); + + var funcResult = Bindings.EOS_AntiCheatServer_LogPlayerTick(InnerHandle, optionsAddress); + + Helper.TryMarshalDispose(ref optionsAddress); + + return funcResult; + } + + /// + /// Optional Cerberus feature for gameplay data collection. + /// Logs that a player has used a special ability or item which affects their character's capabilities, + /// for example temporarily increasing their speed or allowing them to see nearby players behind walls. + /// + /// This function may only be called between a successful call to and + /// the matching call. + /// + /// Structure containing input data. + /// + /// - If the event was logged successfully + /// - If input data was invalid + /// + public Result LogPlayerUseAbility(AntiCheatCommon.LogPlayerUseAbilityOptions options) + { + var optionsAddress = System.IntPtr.Zero; + Helper.TryMarshalSet(ref optionsAddress, options); + + var funcResult = Bindings.EOS_AntiCheatServer_LogPlayerUseAbility(InnerHandle, optionsAddress); + + Helper.TryMarshalDispose(ref optionsAddress); + + return funcResult; + } + + /// + /// Optional Cerberus feature for gameplay data collection. + /// Logs that a player has used a weapon, for example firing one bullet or making one melee attack. + /// + /// This function may only be called between a successful call to and + /// the matching call. + /// + /// Structure containing input data. + /// + /// - If the event was logged successfully + /// - If input data was invalid + /// + public Result LogPlayerUseWeapon(AntiCheatCommon.LogPlayerUseWeaponOptions options) + { + var optionsAddress = System.IntPtr.Zero; + Helper.TryMarshalSet(ref optionsAddress, options); + + var funcResult = Bindings.EOS_AntiCheatServer_LogPlayerUseWeapon(InnerHandle, optionsAddress); + + Helper.TryMarshalDispose(ref optionsAddress); + + return funcResult; + } + + /// + /// Optional NetProtect feature for game message encryption. + /// Encrypts an arbitrary message that will be sent to a game client and decrypted on the other side. + /// + /// Options.Data and OutBuffer may refer to the same buffer to encrypt in place. + /// + /// Structure containing input data. + /// On success, buffer where encrypted message data will be written. + /// Number of bytes that were written to OutBuffer. + /// + /// - If the message was protected successfully + /// - If input data was invalid + /// - If the specified ClientHandle was invalid or not currently registered. See RegisterClient. + /// + public Result ProtectMessage(ProtectMessageOptions options, out byte[] outBuffer) + { + var optionsAddress = System.IntPtr.Zero; + Helper.TryMarshalSet(ref optionsAddress, options); + + System.IntPtr outBufferAddress = System.IntPtr.Zero; + uint outBufferLengthBytes = options.OutBufferSizeBytes; + Helper.TryMarshalAllocate(ref outBufferAddress, outBufferLengthBytes, out _); + + var funcResult = Bindings.EOS_AntiCheatServer_ProtectMessage(InnerHandle, optionsAddress, outBufferAddress, ref outBufferLengthBytes); + + Helper.TryMarshalDispose(ref optionsAddress); + + Helper.TryMarshalGet(outBufferAddress, out outBuffer, outBufferLengthBytes); + Helper.TryMarshalDispose(ref outBufferAddress); + + return funcResult; + } + + /// + /// Call when an anti-cheat message is received from a client. + /// + /// This function may only be called between a successful call to and + /// the matching call. + /// + /// Structure containing input data. + /// + /// - If the message was processed successfully + /// - If input data was invalid + /// + public Result ReceiveMessageFromClient(ReceiveMessageFromClientOptions options) + { + var optionsAddress = System.IntPtr.Zero; + Helper.TryMarshalSet(ref optionsAddress, options); + + var funcResult = Bindings.EOS_AntiCheatServer_ReceiveMessageFromClient(InnerHandle, optionsAddress); + + Helper.TryMarshalDispose(ref optionsAddress); + + return funcResult; + } + + /// + /// Register a connected client. Must be paired with a call to UnregisterClient. + /// + /// This function may only be called between a successful call to and + /// the matching call. + /// + /// Structure containing input data. + /// + /// - If the player was registered successfully + /// - If input data was invalid + /// + public Result RegisterClient(RegisterClientOptions options) + { + var optionsAddress = System.IntPtr.Zero; + Helper.TryMarshalSet(ref optionsAddress, options); + + var funcResult = Bindings.EOS_AntiCheatServer_RegisterClient(InnerHandle, optionsAddress); + + Helper.TryMarshalDispose(ref optionsAddress); + + return funcResult; + } + + /// + /// Optional Cerberus feature for gameplay data collection. + /// Registers a custom gameplay event. + /// + /// All custom game events must be registered before is called for the first time. + /// After the first call to , this function cannot be called any longer. + /// + /// Structure containing input data. + /// + /// - If the event was registered successfully + /// - If input data was invalid + /// + public Result RegisterEvent(AntiCheatCommon.RegisterEventOptions options) + { + var optionsAddress = System.IntPtr.Zero; + Helper.TryMarshalSet(ref optionsAddress, options); + + var funcResult = Bindings.EOS_AntiCheatServer_RegisterEvent(InnerHandle, optionsAddress); + + Helper.TryMarshalDispose(ref optionsAddress); + + return funcResult; + } + + /// + /// Remove a previously bound handler. + /// + /// The previously bound notification ID + public void RemoveNotifyClientActionRequired(ulong notificationId) + { + Helper.TryRemoveCallbackByNotificationId(notificationId); + + Bindings.EOS_AntiCheatServer_RemoveNotifyClientActionRequired(InnerHandle, notificationId); + } + + /// + /// Remove a previously bound handler. + /// + /// The previously bound notification ID + public void RemoveNotifyClientAuthStatusChanged(ulong notificationId) + { + Helper.TryRemoveCallbackByNotificationId(notificationId); + + Bindings.EOS_AntiCheatServer_RemoveNotifyClientAuthStatusChanged(InnerHandle, notificationId); + } + + /// + /// Remove a previously bound handler. + /// + /// The previously bound notification ID + public void RemoveNotifyMessageToClient(ulong notificationId) + { + Helper.TryRemoveCallbackByNotificationId(notificationId); + + Bindings.EOS_AntiCheatServer_RemoveNotifyMessageToClient(InnerHandle, notificationId); + } + + /// + /// Optional. Sets or updates client details including input device and admin status. + /// + /// This function may only be called between a successful call to and + /// the matching call. + /// + /// Structure containing input data. + /// + /// - If the flags were updated successfully + /// - If input data was invalid + /// + public Result SetClientDetails(AntiCheatCommon.SetClientDetailsOptions options) + { + var optionsAddress = System.IntPtr.Zero; + Helper.TryMarshalSet(ref optionsAddress, options); + + var funcResult = Bindings.EOS_AntiCheatServer_SetClientDetails(InnerHandle, optionsAddress); + + Helper.TryMarshalDispose(ref optionsAddress); + + return funcResult; + } + + /// + /// Optional. Can be used to indicate that a client is legitimately known to be + /// temporarily unable to communicate, for example as a result of loading a new level. + /// + /// The bIsNetworkActive flag must be set back to true when users enter normal + /// gameplay, otherwise anti-cheat enforcement will not work correctly. + /// + /// This function may only be called between a successful call to and + /// the matching call. + /// + /// Structure containing input data. + /// + /// - If the network state was updated successfully + /// - If input data was invalid + /// + public Result SetClientNetworkState(SetClientNetworkStateOptions options) + { + var optionsAddress = System.IntPtr.Zero; + Helper.TryMarshalSet(ref optionsAddress, options); + + var funcResult = Bindings.EOS_AntiCheatServer_SetClientNetworkState(InnerHandle, optionsAddress); + + Helper.TryMarshalDispose(ref optionsAddress); + + return funcResult; + } + + /// + /// Optional. Sets or updates a game session identifier which can be attached to other data for reference. + /// The identifier can be updated at any time for currently and subsequently registered clients. + /// + /// This function may only be called between a successful call to and + /// the matching call. + /// + /// Structure containing input data. + /// + /// - If the game session identifier was set successfully + /// - If input data was invalid + /// + public Result SetGameSessionId(AntiCheatCommon.SetGameSessionIdOptions options) + { + var optionsAddress = System.IntPtr.Zero; + Helper.TryMarshalSet(ref optionsAddress, options); + + var funcResult = Bindings.EOS_AntiCheatServer_SetGameSessionId(InnerHandle, optionsAddress); + + Helper.TryMarshalDispose(ref optionsAddress); + + return funcResult; + } + + /// + /// Optional NetProtect feature for game message encryption. + /// Decrypts an encrypted message received from a game client. + /// + /// Options.Data and OutBuffer may refer to the same buffer to decrypt in place. + /// + /// Structure containing input data. + /// On success, buffer where encrypted message data will be written. + /// Number of bytes that were written to OutBuffer. + /// + /// - If the message was unprotected successfully + /// - If input data was invalid + /// + public Result UnprotectMessage(UnprotectMessageOptions options, out byte[] outBuffer) + { + var optionsAddress = System.IntPtr.Zero; + Helper.TryMarshalSet(ref optionsAddress, options); + + System.IntPtr outBufferAddress = System.IntPtr.Zero; + uint outBufferLengthBytes = options.OutBufferSizeBytes; + Helper.TryMarshalAllocate(ref outBufferAddress, outBufferLengthBytes, out _); + + var funcResult = Bindings.EOS_AntiCheatServer_UnprotectMessage(InnerHandle, optionsAddress, outBufferAddress, ref outBufferLengthBytes); + + Helper.TryMarshalDispose(ref optionsAddress); + + Helper.TryMarshalGet(outBufferAddress, out outBuffer, outBufferLengthBytes); + Helper.TryMarshalDispose(ref outBufferAddress); + + return funcResult; + } + + /// + /// Unregister a disconnected client. + /// + /// This function may only be called between a successful call to and + /// the matching call. + /// + /// Structure containing input data. + /// + /// - If the player was unregistered successfully + /// - If input data was invalid + /// + public Result UnregisterClient(UnregisterClientOptions options) + { + var optionsAddress = System.IntPtr.Zero; + Helper.TryMarshalSet(ref optionsAddress, options); + + var funcResult = Bindings.EOS_AntiCheatServer_UnregisterClient(InnerHandle, optionsAddress); + + Helper.TryMarshalDispose(ref optionsAddress); + + return funcResult; + } + + [MonoPInvokeCallback(typeof(OnClientActionRequiredCallbackInternal))] + internal static void OnClientActionRequiredCallbackInternalImplementation(System.IntPtr data) + { + OnClientActionRequiredCallback callback; + AntiCheatCommon.OnClientActionRequiredCallbackInfo callbackInfo; + if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) + { + callback(callbackInfo); + } + } + + [MonoPInvokeCallback(typeof(OnClientAuthStatusChangedCallbackInternal))] + internal static void OnClientAuthStatusChangedCallbackInternalImplementation(System.IntPtr data) + { + OnClientAuthStatusChangedCallback callback; + AntiCheatCommon.OnClientAuthStatusChangedCallbackInfo callbackInfo; + if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) + { + callback(callbackInfo); + } + } + + [MonoPInvokeCallback(typeof(OnMessageToClientCallbackInternal))] + internal static void OnMessageToClientCallbackInternalImplementation(System.IntPtr data) + { + OnMessageToClientCallback callback; + AntiCheatCommon.OnMessageToClientCallbackInfo callbackInfo; + if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) + { + callback(callbackInfo); + } + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/AntiCheatServer/AntiCheatServerInterface.cs.meta b/EOSSDK/Generated/AntiCheatServer/AntiCheatServerInterface.cs.meta new file mode 100644 index 00000000..6ddba0ce --- /dev/null +++ b/EOSSDK/Generated/AntiCheatServer/AntiCheatServerInterface.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: f913dbac3a8f7374f8b03ec21031e0e0 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/AntiCheatServer/BeginSessionOptions.cs b/EOSSDK/Generated/AntiCheatServer/BeginSessionOptions.cs new file mode 100644 index 00000000..5b565291 --- /dev/null +++ b/EOSSDK/Generated/AntiCheatServer/BeginSessionOptions.cs @@ -0,0 +1,95 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.AntiCheatServer +{ + public class BeginSessionOptions + { + /// + /// Time in seconds to allow newly registered clients to complete anti-cheat authentication. + /// Recommended value: 60 + /// + public uint RegisterTimeoutSeconds { get; set; } + + /// + /// Optional name of this game server + /// + public string ServerName { get; set; } + + /// + /// Gameplay data collection APIs such as LogPlayerTick will be enabled if set to true. + /// If you do not use these APIs, it is more efficient to set this value to false. + /// + public bool EnableGameplayData { get; set; } + + /// + /// The Product User ID of the local user who is associated with this session. Dedicated servers should set this to null. + /// + public ProductUserId LocalUserId { get; set; } + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct BeginSessionOptionsInternal : ISettable, System.IDisposable + { + private int m_ApiVersion; + private uint m_RegisterTimeoutSeconds; + private System.IntPtr m_ServerName; + private int m_EnableGameplayData; + private System.IntPtr m_LocalUserId; + + public uint RegisterTimeoutSeconds + { + set + { + m_RegisterTimeoutSeconds = value; + } + } + + public string ServerName + { + set + { + Helper.TryMarshalSet(ref m_ServerName, value); + } + } + + public bool EnableGameplayData + { + set + { + Helper.TryMarshalSet(ref m_EnableGameplayData, value); + } + } + + public ProductUserId LocalUserId + { + set + { + Helper.TryMarshalSet(ref m_LocalUserId, value); + } + } + + public void Set(BeginSessionOptions other) + { + if (other != null) + { + m_ApiVersion = AntiCheatServerInterface.BeginsessionApiLatest; + RegisterTimeoutSeconds = other.RegisterTimeoutSeconds; + ServerName = other.ServerName; + EnableGameplayData = other.EnableGameplayData; + LocalUserId = other.LocalUserId; + } + } + + public void Set(object other) + { + Set(other as BeginSessionOptions); + } + + public void Dispose() + { + Helper.TryMarshalDispose(ref m_ServerName); + Helper.TryMarshalDispose(ref m_LocalUserId); + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/AntiCheatServer/BeginSessionOptions.cs.meta b/EOSSDK/Generated/AntiCheatServer/BeginSessionOptions.cs.meta new file mode 100644 index 00000000..e6eaf8a4 --- /dev/null +++ b/EOSSDK/Generated/AntiCheatServer/BeginSessionOptions.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 71304b30978680d4aa41f0974aef719d +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/AntiCheatServer/EndSessionOptions.cs b/EOSSDK/Generated/AntiCheatServer/EndSessionOptions.cs new file mode 100644 index 00000000..b391adc2 --- /dev/null +++ b/EOSSDK/Generated/AntiCheatServer/EndSessionOptions.cs @@ -0,0 +1,32 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.AntiCheatServer +{ + public class EndSessionOptions + { + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct EndSessionOptionsInternal : ISettable, System.IDisposable + { + private int m_ApiVersion; + + public void Set(EndSessionOptions other) + { + if (other != null) + { + m_ApiVersion = AntiCheatServerInterface.EndsessionApiLatest; + } + } + + public void Set(object other) + { + Set(other as EndSessionOptions); + } + + public void Dispose() + { + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/AntiCheatServer/EndSessionOptions.cs.meta b/EOSSDK/Generated/AntiCheatServer/EndSessionOptions.cs.meta new file mode 100644 index 00000000..25f2f71e --- /dev/null +++ b/EOSSDK/Generated/AntiCheatServer/EndSessionOptions.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 9857e8672adb74e438abe424f5a79983 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/AntiCheatServer/GetProtectMessageOutputLengthOptions.cs b/EOSSDK/Generated/AntiCheatServer/GetProtectMessageOutputLengthOptions.cs new file mode 100644 index 00000000..b20de52e --- /dev/null +++ b/EOSSDK/Generated/AntiCheatServer/GetProtectMessageOutputLengthOptions.cs @@ -0,0 +1,46 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.AntiCheatServer +{ + public class GetProtectMessageOutputLengthOptions + { + /// + /// Length in bytes of input + /// + public uint DataLengthBytes { get; set; } + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct GetProtectMessageOutputLengthOptionsInternal : ISettable, System.IDisposable + { + private int m_ApiVersion; + private uint m_DataLengthBytes; + + public uint DataLengthBytes + { + set + { + m_DataLengthBytes = value; + } + } + + public void Set(GetProtectMessageOutputLengthOptions other) + { + if (other != null) + { + m_ApiVersion = AntiCheatServerInterface.GetprotectmessageoutputlengthApiLatest; + DataLengthBytes = other.DataLengthBytes; + } + } + + public void Set(object other) + { + Set(other as GetProtectMessageOutputLengthOptions); + } + + public void Dispose() + { + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/AntiCheatServer/GetProtectMessageOutputLengthOptions.cs.meta b/EOSSDK/Generated/AntiCheatServer/GetProtectMessageOutputLengthOptions.cs.meta new file mode 100644 index 00000000..b9f56505 --- /dev/null +++ b/EOSSDK/Generated/AntiCheatServer/GetProtectMessageOutputLengthOptions.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 667f61887906677448b877657fe8df45 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/AntiCheatServer/OnClientActionRequiredCallback.cs b/EOSSDK/Generated/AntiCheatServer/OnClientActionRequiredCallback.cs new file mode 100644 index 00000000..3d4b70b5 --- /dev/null +++ b/EOSSDK/Generated/AntiCheatServer/OnClientActionRequiredCallback.cs @@ -0,0 +1,14 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.AntiCheatServer +{ + /// + /// Callback issued when an action must be applied to a connected client. + /// This callback is always issued from within on its calling thread. + /// + public delegate void OnClientActionRequiredCallback(AntiCheatCommon.OnClientActionRequiredCallbackInfo data); + + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void OnClientActionRequiredCallbackInternal(System.IntPtr data); +} \ No newline at end of file diff --git a/EOSSDK/Generated/AntiCheatServer/OnClientActionRequiredCallback.cs.meta b/EOSSDK/Generated/AntiCheatServer/OnClientActionRequiredCallback.cs.meta new file mode 100644 index 00000000..50f2b5e9 --- /dev/null +++ b/EOSSDK/Generated/AntiCheatServer/OnClientActionRequiredCallback.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 0d65b6d7d19d9eb4aa216922080b5407 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/AntiCheatServer/OnClientAuthStatusChangedCallback.cs b/EOSSDK/Generated/AntiCheatServer/OnClientAuthStatusChangedCallback.cs new file mode 100644 index 00000000..93919c52 --- /dev/null +++ b/EOSSDK/Generated/AntiCheatServer/OnClientAuthStatusChangedCallback.cs @@ -0,0 +1,14 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.AntiCheatServer +{ + /// + /// Optional callback issued when a connected client's authentication status has changed. + /// This callback is always issued from within on its calling thread. + /// + public delegate void OnClientAuthStatusChangedCallback(AntiCheatCommon.OnClientAuthStatusChangedCallbackInfo data); + + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void OnClientAuthStatusChangedCallbackInternal(System.IntPtr data); +} \ No newline at end of file diff --git a/EOSSDK/Generated/AntiCheatServer/OnClientAuthStatusChangedCallback.cs.meta b/EOSSDK/Generated/AntiCheatServer/OnClientAuthStatusChangedCallback.cs.meta new file mode 100644 index 00000000..af8df36e --- /dev/null +++ b/EOSSDK/Generated/AntiCheatServer/OnClientAuthStatusChangedCallback.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 27723af457aee354e830ea3bc8a8d39c +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/AntiCheatServer/OnMessageToClientCallback.cs b/EOSSDK/Generated/AntiCheatServer/OnMessageToClientCallback.cs new file mode 100644 index 00000000..b29bf9e0 --- /dev/null +++ b/EOSSDK/Generated/AntiCheatServer/OnMessageToClientCallback.cs @@ -0,0 +1,19 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.AntiCheatServer +{ + /// + /// Callback issued when a new message must be dispatched to a connected client. + /// + /// Messages contain opaque binary data of up to 256 bytes and must be transmitted + /// to the correct client using the game's own networking layer, then delivered + /// to the client anti-cheat instance using the function. + /// + /// This callback is always issued from within on its calling thread. + /// + public delegate void OnMessageToClientCallback(AntiCheatCommon.OnMessageToClientCallbackInfo data); + + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void OnMessageToClientCallbackInternal(System.IntPtr data); +} \ No newline at end of file diff --git a/EOSSDK/Generated/AntiCheatServer/OnMessageToClientCallback.cs.meta b/EOSSDK/Generated/AntiCheatServer/OnMessageToClientCallback.cs.meta new file mode 100644 index 00000000..6b233a89 --- /dev/null +++ b/EOSSDK/Generated/AntiCheatServer/OnMessageToClientCallback.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 198677b228758bb4f8ae03b135d63629 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/AntiCheatServer/ProtectMessageOptions.cs b/EOSSDK/Generated/AntiCheatServer/ProtectMessageOptions.cs new file mode 100644 index 00000000..a49bfb7c --- /dev/null +++ b/EOSSDK/Generated/AntiCheatServer/ProtectMessageOptions.cs @@ -0,0 +1,79 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.AntiCheatServer +{ + public class ProtectMessageOptions + { + /// + /// Locally unique value describing the remote user to whom the message will be sent + /// + public System.IntPtr ClientHandle { get; set; } + + /// + /// The data to encrypt + /// + public byte[] Data { get; set; } + + /// + /// The size in bytes of OutBuffer + /// + public uint OutBufferSizeBytes { get; set; } + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct ProtectMessageOptionsInternal : ISettable, System.IDisposable + { + private int m_ApiVersion; + private System.IntPtr m_ClientHandle; + private uint m_DataLengthBytes; + private System.IntPtr m_Data; + private uint m_OutBufferSizeBytes; + + public System.IntPtr ClientHandle + { + set + { + m_ClientHandle = value; + } + } + + public byte[] Data + { + set + { + Helper.TryMarshalSet(ref m_Data, value, out m_DataLengthBytes); + } + } + + public uint OutBufferSizeBytes + { + set + { + m_OutBufferSizeBytes = value; + } + } + + public void Set(ProtectMessageOptions other) + { + if (other != null) + { + m_ApiVersion = AntiCheatServerInterface.ProtectmessageApiLatest; + ClientHandle = other.ClientHandle; + Data = other.Data; + OutBufferSizeBytes = other.OutBufferSizeBytes; + } + } + + public void Set(object other) + { + Set(other as ProtectMessageOptions); + } + + public void Dispose() + { + Helper.TryMarshalDispose(ref m_ClientHandle); + Helper.TryMarshalDispose(ref m_Data); + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/AntiCheatServer/ProtectMessageOptions.cs.meta b/EOSSDK/Generated/AntiCheatServer/ProtectMessageOptions.cs.meta new file mode 100644 index 00000000..8d469a8e --- /dev/null +++ b/EOSSDK/Generated/AntiCheatServer/ProtectMessageOptions.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: c735b92a270c7e84bb171d63f511fc6a +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/AntiCheatServer/ReceiveMessageFromClientOptions.cs b/EOSSDK/Generated/AntiCheatServer/ReceiveMessageFromClientOptions.cs new file mode 100644 index 00000000..987cce8b --- /dev/null +++ b/EOSSDK/Generated/AntiCheatServer/ReceiveMessageFromClientOptions.cs @@ -0,0 +1,64 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.AntiCheatServer +{ + public class ReceiveMessageFromClientOptions + { + /// + /// Optional value, if non-null then only messages addressed to this specific client will be returned + /// + public System.IntPtr ClientHandle { get; set; } + + /// + /// The data received + /// + public byte[] Data { get; set; } + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct ReceiveMessageFromClientOptionsInternal : ISettable, System.IDisposable + { + private int m_ApiVersion; + private System.IntPtr m_ClientHandle; + private uint m_DataLengthBytes; + private System.IntPtr m_Data; + + public System.IntPtr ClientHandle + { + set + { + m_ClientHandle = value; + } + } + + public byte[] Data + { + set + { + Helper.TryMarshalSet(ref m_Data, value, out m_DataLengthBytes); + } + } + + public void Set(ReceiveMessageFromClientOptions other) + { + if (other != null) + { + m_ApiVersion = AntiCheatServerInterface.ReceivemessagefromclientApiLatest; + ClientHandle = other.ClientHandle; + Data = other.Data; + } + } + + public void Set(object other) + { + Set(other as ReceiveMessageFromClientOptions); + } + + public void Dispose() + { + Helper.TryMarshalDispose(ref m_ClientHandle); + Helper.TryMarshalDispose(ref m_Data); + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/AntiCheatServer/ReceiveMessageFromClientOptions.cs.meta b/EOSSDK/Generated/AntiCheatServer/ReceiveMessageFromClientOptions.cs.meta new file mode 100644 index 00000000..e742531a --- /dev/null +++ b/EOSSDK/Generated/AntiCheatServer/ReceiveMessageFromClientOptions.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 4a9bb8c17e011cb4580fd0a1fdda5304 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/AntiCheatServer/RegisterClientOptions.cs b/EOSSDK/Generated/AntiCheatServer/RegisterClientOptions.cs new file mode 100644 index 00000000..773c0c69 --- /dev/null +++ b/EOSSDK/Generated/AntiCheatServer/RegisterClientOptions.cs @@ -0,0 +1,114 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.AntiCheatServer +{ + public class RegisterClientOptions + { + /// + /// Locally unique value describing the remote user (e.g. a player object pointer) + /// + public System.IntPtr ClientHandle { get; set; } + + /// + /// Type of remote user being registered + /// + public AntiCheatCommon.AntiCheatCommonClientType ClientType { get; set; } + + /// + /// Remote user's platform, if known + /// + public AntiCheatCommon.AntiCheatCommonClientPlatform ClientPlatform { get; set; } + + /// + /// Identifier for the remote user. This is typically a string representation of an + /// account ID, but it can be any string which is both unique (two different users will never + /// have the same string) and consistent (if the same user connects to this game session + /// twice, the same string will be used) in the scope of a single protected game session. + /// + public string AccountId { get; set; } + + /// + /// Optional IP address for the remote user. May be null if not available. + /// IPv4 format: "0.0.0.0" + /// IPv6 format: "0:0:0:0:0:0:0:0" + /// + public string IpAddress { get; set; } + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct RegisterClientOptionsInternal : ISettable, System.IDisposable + { + private int m_ApiVersion; + private System.IntPtr m_ClientHandle; + private AntiCheatCommon.AntiCheatCommonClientType m_ClientType; + private AntiCheatCommon.AntiCheatCommonClientPlatform m_ClientPlatform; + private System.IntPtr m_AccountId; + private System.IntPtr m_IpAddress; + + public System.IntPtr ClientHandle + { + set + { + m_ClientHandle = value; + } + } + + public AntiCheatCommon.AntiCheatCommonClientType ClientType + { + set + { + m_ClientType = value; + } + } + + public AntiCheatCommon.AntiCheatCommonClientPlatform ClientPlatform + { + set + { + m_ClientPlatform = value; + } + } + + public string AccountId + { + set + { + Helper.TryMarshalSet(ref m_AccountId, value); + } + } + + public string IpAddress + { + set + { + Helper.TryMarshalSet(ref m_IpAddress, value); + } + } + + public void Set(RegisterClientOptions other) + { + if (other != null) + { + m_ApiVersion = AntiCheatServerInterface.RegisterclientApiLatest; + ClientHandle = other.ClientHandle; + ClientType = other.ClientType; + ClientPlatform = other.ClientPlatform; + AccountId = other.AccountId; + IpAddress = other.IpAddress; + } + } + + public void Set(object other) + { + Set(other as RegisterClientOptions); + } + + public void Dispose() + { + Helper.TryMarshalDispose(ref m_ClientHandle); + Helper.TryMarshalDispose(ref m_AccountId); + Helper.TryMarshalDispose(ref m_IpAddress); + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/AntiCheatServer/RegisterClientOptions.cs.meta b/EOSSDK/Generated/AntiCheatServer/RegisterClientOptions.cs.meta new file mode 100644 index 00000000..8607f0a6 --- /dev/null +++ b/EOSSDK/Generated/AntiCheatServer/RegisterClientOptions.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 12c848b649f146441b625c96017f2df0 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/AntiCheatServer/SetClientNetworkStateOptions.cs b/EOSSDK/Generated/AntiCheatServer/SetClientNetworkStateOptions.cs new file mode 100644 index 00000000..e215af14 --- /dev/null +++ b/EOSSDK/Generated/AntiCheatServer/SetClientNetworkStateOptions.cs @@ -0,0 +1,62 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.AntiCheatServer +{ + public class SetClientNetworkStateOptions + { + /// + /// Locally unique value describing the remote user (e.g. a player object pointer) + /// + public System.IntPtr ClientHandle { get; set; } + + /// + /// True if the network is functioning normally, false if temporarily interrupted + /// + public bool IsNetworkActive { get; set; } + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct SetClientNetworkStateOptionsInternal : ISettable, System.IDisposable + { + private int m_ApiVersion; + private System.IntPtr m_ClientHandle; + private int m_IsNetworkActive; + + public System.IntPtr ClientHandle + { + set + { + m_ClientHandle = value; + } + } + + public bool IsNetworkActive + { + set + { + Helper.TryMarshalSet(ref m_IsNetworkActive, value); + } + } + + public void Set(SetClientNetworkStateOptions other) + { + if (other != null) + { + m_ApiVersion = AntiCheatServerInterface.SetclientnetworkstateApiLatest; + ClientHandle = other.ClientHandle; + IsNetworkActive = other.IsNetworkActive; + } + } + + public void Set(object other) + { + Set(other as SetClientNetworkStateOptions); + } + + public void Dispose() + { + Helper.TryMarshalDispose(ref m_ClientHandle); + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/AntiCheatServer/SetClientNetworkStateOptions.cs.meta b/EOSSDK/Generated/AntiCheatServer/SetClientNetworkStateOptions.cs.meta new file mode 100644 index 00000000..a2089443 --- /dev/null +++ b/EOSSDK/Generated/AntiCheatServer/SetClientNetworkStateOptions.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: c930f59cb511ea74c9f40688194c20a2 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/AntiCheatServer/UnprotectMessageOptions.cs b/EOSSDK/Generated/AntiCheatServer/UnprotectMessageOptions.cs new file mode 100644 index 00000000..ece3ead1 --- /dev/null +++ b/EOSSDK/Generated/AntiCheatServer/UnprotectMessageOptions.cs @@ -0,0 +1,79 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.AntiCheatServer +{ + public class UnprotectMessageOptions + { + /// + /// Locally unique value describing the remote user from whom the message was received + /// + public System.IntPtr ClientHandle { get; set; } + + /// + /// The data to decrypt + /// + public byte[] Data { get; set; } + + /// + /// The size in bytes of OutBuffer + /// + public uint OutBufferSizeBytes { get; set; } + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct UnprotectMessageOptionsInternal : ISettable, System.IDisposable + { + private int m_ApiVersion; + private System.IntPtr m_ClientHandle; + private uint m_DataLengthBytes; + private System.IntPtr m_Data; + private uint m_OutBufferSizeBytes; + + public System.IntPtr ClientHandle + { + set + { + m_ClientHandle = value; + } + } + + public byte[] Data + { + set + { + Helper.TryMarshalSet(ref m_Data, value, out m_DataLengthBytes); + } + } + + public uint OutBufferSizeBytes + { + set + { + m_OutBufferSizeBytes = value; + } + } + + public void Set(UnprotectMessageOptions other) + { + if (other != null) + { + m_ApiVersion = AntiCheatServerInterface.UnprotectmessageApiLatest; + ClientHandle = other.ClientHandle; + Data = other.Data; + OutBufferSizeBytes = other.OutBufferSizeBytes; + } + } + + public void Set(object other) + { + Set(other as UnprotectMessageOptions); + } + + public void Dispose() + { + Helper.TryMarshalDispose(ref m_ClientHandle); + Helper.TryMarshalDispose(ref m_Data); + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/AntiCheatServer/UnprotectMessageOptions.cs.meta b/EOSSDK/Generated/AntiCheatServer/UnprotectMessageOptions.cs.meta new file mode 100644 index 00000000..34983109 --- /dev/null +++ b/EOSSDK/Generated/AntiCheatServer/UnprotectMessageOptions.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 2ecc277aa57c1964aac660117a555adb +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/AntiCheatServer/UnregisterClientOptions.cs b/EOSSDK/Generated/AntiCheatServer/UnregisterClientOptions.cs new file mode 100644 index 00000000..2a431fe3 --- /dev/null +++ b/EOSSDK/Generated/AntiCheatServer/UnregisterClientOptions.cs @@ -0,0 +1,47 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.AntiCheatServer +{ + public class UnregisterClientOptions + { + /// + /// Locally unique value describing the remote user, as previously passed to RegisterClient + /// + public System.IntPtr ClientHandle { get; set; } + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct UnregisterClientOptionsInternal : ISettable, System.IDisposable + { + private int m_ApiVersion; + private System.IntPtr m_ClientHandle; + + public System.IntPtr ClientHandle + { + set + { + m_ClientHandle = value; + } + } + + public void Set(UnregisterClientOptions other) + { + if (other != null) + { + m_ApiVersion = AntiCheatServerInterface.UnregisterclientApiLatest; + ClientHandle = other.ClientHandle; + } + } + + public void Set(object other) + { + Set(other as UnregisterClientOptions); + } + + public void Dispose() + { + Helper.TryMarshalDispose(ref m_ClientHandle); + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/AntiCheatServer/UnregisterClientOptions.cs.meta b/EOSSDK/Generated/AntiCheatServer/UnregisterClientOptions.cs.meta new file mode 100644 index 00000000..abad8614 --- /dev/null +++ b/EOSSDK/Generated/AntiCheatServer/UnregisterClientOptions.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 62e44e7933d068848a52d9fc11898acd +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/AttributeType.cs b/EOSSDK/Generated/AttributeType.cs index 4b037693..8b57b5e4 100644 --- a/EOSSDK/Generated/AttributeType.cs +++ b/EOSSDK/Generated/AttributeType.cs @@ -5,6 +5,8 @@ namespace Epic.OnlineServices { /// /// Supported types of data that can be stored with inside an attribute (used by sessions/lobbies/etc) + /// + /// /// public enum AttributeType : int { diff --git a/EOSSDK/Generated/Auth/AuthInterface.cs b/EOSSDK/Generated/Auth/AuthInterface.cs index 9f7a15ed..1ad66a40 100644 --- a/EOSSDK/Generated/Auth/AuthInterface.cs +++ b/EOSSDK/Generated/Auth/AuthInterface.cs @@ -3,7 +3,7 @@ namespace Epic.OnlineServices.Auth { - public sealed class AuthInterface : Handle + public sealed partial class AuthInterface : Handle { public AuthInterface() { @@ -80,7 +80,7 @@ public AuthInterface(System.IntPtr innerHandle) : base(innerHandle) /// public ulong AddNotifyLoginStatusChanged(AddNotifyLoginStatusChangedOptions options, object clientData, OnLoginStatusChangedCallback notification) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var clientDataAddress = System.IntPtr.Zero; @@ -88,7 +88,7 @@ public ulong AddNotifyLoginStatusChanged(AddNotifyLoginStatusChangedOptions opti var notificationInternal = new OnLoginStatusChangedCallbackInternal(OnLoginStatusChangedCallbackInternalImplementation); Helper.AddCallback(ref clientDataAddress, clientData, notification, notificationInternal); - var funcResult = EOS_Auth_AddNotifyLoginStatusChanged(InnerHandle, optionsAddress, clientDataAddress, notificationInternal); + var funcResult = Bindings.EOS_Auth_AddNotifyLoginStatusChanged(InnerHandle, optionsAddress, clientDataAddress, notificationInternal); Helper.TryMarshalDispose(ref optionsAddress); @@ -111,7 +111,7 @@ public ulong AddNotifyLoginStatusChanged(AddNotifyLoginStatusChangedOptions opti /// public Result CopyUserAuthToken(CopyUserAuthTokenOptions options, EpicAccountId localUserId, out Token outUserAuthToken) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var localUserIdInnerHandle = System.IntPtr.Zero; @@ -119,13 +119,13 @@ public Result CopyUserAuthToken(CopyUserAuthTokenOptions options, EpicAccountId var outUserAuthTokenAddress = System.IntPtr.Zero; - var funcResult = EOS_Auth_CopyUserAuthToken(InnerHandle, optionsAddress, localUserIdInnerHandle, ref outUserAuthTokenAddress); + var funcResult = Bindings.EOS_Auth_CopyUserAuthToken(InnerHandle, optionsAddress, localUserIdInnerHandle, ref outUserAuthTokenAddress); Helper.TryMarshalDispose(ref optionsAddress); if (Helper.TryMarshalGet(outUserAuthTokenAddress, out outUserAuthToken)) { - EOS_Auth_Token_Release(outUserAuthTokenAddress); + Bindings.EOS_Auth_Token_Release(outUserAuthTokenAddress); } return funcResult; @@ -144,7 +144,7 @@ public Result CopyUserAuthToken(CopyUserAuthTokenOptions options, EpicAccountId /// a callback that is fired when the deletion operation completes, either successfully or in error public void DeletePersistentAuth(DeletePersistentAuthOptions options, object clientData, OnDeletePersistentAuthCallback completionDelegate) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var clientDataAddress = System.IntPtr.Zero; @@ -152,7 +152,7 @@ public void DeletePersistentAuth(DeletePersistentAuthOptions options, object cli var completionDelegateInternal = new OnDeletePersistentAuthCallbackInternal(OnDeletePersistentAuthCallbackInternalImplementation); Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - EOS_Auth_DeletePersistentAuth(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); + Bindings.EOS_Auth_DeletePersistentAuth(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); Helper.TryMarshalDispose(ref optionsAddress); } @@ -166,7 +166,7 @@ public void DeletePersistentAuth(DeletePersistentAuthOptions options, object cli /// public EpicAccountId GetLoggedInAccountByIndex(int index) { - var funcResult = EOS_Auth_GetLoggedInAccountByIndex(InnerHandle, index); + var funcResult = Bindings.EOS_Auth_GetLoggedInAccountByIndex(InnerHandle, index); EpicAccountId funcResultReturn; Helper.TryMarshalGet(funcResult, out funcResultReturn); @@ -181,7 +181,7 @@ public EpicAccountId GetLoggedInAccountByIndex(int index) /// public int GetLoggedInAccountsCount() { - var funcResult = EOS_Auth_GetLoggedInAccountsCount(InnerHandle); + var funcResult = Bindings.EOS_Auth_GetLoggedInAccountsCount(InnerHandle); return funcResult; } @@ -198,7 +198,7 @@ public LoginStatus GetLoginStatus(EpicAccountId localUserId) var localUserIdInnerHandle = System.IntPtr.Zero; Helper.TryMarshalSet(ref localUserIdInnerHandle, localUserId); - var funcResult = EOS_Auth_GetLoginStatus(InnerHandle, localUserIdInnerHandle); + var funcResult = Bindings.EOS_Auth_GetLoginStatus(InnerHandle, localUserIdInnerHandle); return funcResult; } @@ -219,7 +219,7 @@ public LoginStatus GetLoginStatus(EpicAccountId localUserId) /// a callback that is fired when the link account operation completes, either successfully or in error public void LinkAccount(LinkAccountOptions options, object clientData, OnLinkAccountCallback completionDelegate) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var clientDataAddress = System.IntPtr.Zero; @@ -227,7 +227,7 @@ public void LinkAccount(LinkAccountOptions options, object clientData, OnLinkAcc var completionDelegateInternal = new OnLinkAccountCallbackInternal(OnLinkAccountCallbackInternalImplementation); Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - EOS_Auth_LinkAccount(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); + Bindings.EOS_Auth_LinkAccount(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); Helper.TryMarshalDispose(ref optionsAddress); } @@ -240,7 +240,7 @@ public void LinkAccount(LinkAccountOptions options, object clientData, OnLinkAcc /// a callback that is fired when the login operation completes, either successfully or in error public void Login(LoginOptions options, object clientData, OnLoginCallback completionDelegate) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var clientDataAddress = System.IntPtr.Zero; @@ -248,7 +248,7 @@ public void Login(LoginOptions options, object clientData, OnLoginCallback compl var completionDelegateInternal = new OnLoginCallbackInternal(OnLoginCallbackInternalImplementation); Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - EOS_Auth_Login(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); + Bindings.EOS_Auth_Login(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); Helper.TryMarshalDispose(ref optionsAddress); } @@ -261,7 +261,7 @@ public void Login(LoginOptions options, object clientData, OnLoginCallback compl /// a callback that is fired when the logout operation completes, either successfully or in error public void Logout(LogoutOptions options, object clientData, OnLogoutCallback completionDelegate) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var clientDataAddress = System.IntPtr.Zero; @@ -269,7 +269,7 @@ public void Logout(LogoutOptions options, object clientData, OnLogoutCallback co var completionDelegateInternal = new OnLogoutCallbackInternal(OnLogoutCallbackInternalImplementation); Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - EOS_Auth_Logout(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); + Bindings.EOS_Auth_Logout(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); Helper.TryMarshalDispose(ref optionsAddress); } @@ -282,7 +282,7 @@ public void RemoveNotifyLoginStatusChanged(ulong inId) { Helper.TryRemoveCallbackByNotificationId(inId); - EOS_Auth_RemoveNotifyLoginStatusChanged(InnerHandle, inId); + Bindings.EOS_Auth_RemoveNotifyLoginStatusChanged(InnerHandle, inId); } /// @@ -294,7 +294,7 @@ public void RemoveNotifyLoginStatusChanged(ulong inId) /// a callback that is fired when the logout operation completes, either successfully or in error public void VerifyUserAuth(VerifyUserAuthOptions options, object clientData, OnVerifyUserAuthCallback completionDelegate) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var clientDataAddress = System.IntPtr.Zero; @@ -302,7 +302,7 @@ public void VerifyUserAuth(VerifyUserAuthOptions options, object clientData, OnV var completionDelegateInternal = new OnVerifyUserAuthCallbackInternal(OnVerifyUserAuthCallbackInternalImplementation); Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - EOS_Auth_VerifyUserAuth(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); + Bindings.EOS_Auth_VerifyUserAuth(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); Helper.TryMarshalDispose(ref optionsAddress); } @@ -372,41 +372,5 @@ internal static void OnVerifyUserAuthCallbackInternalImplementation(System.IntPt callback(callbackInfo); } } - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern ulong EOS_Auth_AddNotifyLoginStatusChanged(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, OnLoginStatusChangedCallbackInternal notification); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_Auth_CopyUserAuthToken(System.IntPtr handle, System.IntPtr options, System.IntPtr localUserId, ref System.IntPtr outUserAuthToken); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern void EOS_Auth_DeletePersistentAuth(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, OnDeletePersistentAuthCallbackInternal completionDelegate); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern System.IntPtr EOS_Auth_GetLoggedInAccountByIndex(System.IntPtr handle, int index); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern int EOS_Auth_GetLoggedInAccountsCount(System.IntPtr handle); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern LoginStatus EOS_Auth_GetLoginStatus(System.IntPtr handle, System.IntPtr localUserId); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern void EOS_Auth_LinkAccount(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, OnLinkAccountCallbackInternal completionDelegate); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern void EOS_Auth_Login(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, OnLoginCallbackInternal completionDelegate); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern void EOS_Auth_Logout(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, OnLogoutCallbackInternal completionDelegate); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern void EOS_Auth_Token_Release(System.IntPtr authToken); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern void EOS_Auth_RemoveNotifyLoginStatusChanged(System.IntPtr handle, ulong inId); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern void EOS_Auth_VerifyUserAuth(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, OnVerifyUserAuthCallbackInternal completionDelegate); } } \ No newline at end of file diff --git a/EOSSDK/Generated/Auth/AuthScopeFlags.cs b/EOSSDK/Generated/Auth/AuthScopeFlags.cs index 47c4e024..e2bd7f6f 100644 --- a/EOSSDK/Generated/Auth/AuthScopeFlags.cs +++ b/EOSSDK/Generated/Auth/AuthScopeFlags.cs @@ -7,7 +7,7 @@ namespace Epic.OnlineServices.Auth /// Flags that describe user permissions /// [System.Flags] - public enum AuthScopeFlags : ulong + public enum AuthScopeFlags : int { NoFlags = 0x0, /// @@ -25,6 +25,10 @@ public enum AuthScopeFlags : ulong /// /// Permissions to manage the Epic friends list. This scope is restricted to Epic first party products, and attempting to use it will result in authentication failures. /// - FriendsManagement = 0x8 + FriendsManagement = 0x8, + /// + /// Permissions to see email in the response when fetching information for a user. This scope is restricted to Epic first party products, and attempting to use it will result in authentication failures. + /// + Email = 0x10 } } \ No newline at end of file diff --git a/EOSSDK/Generated/Auth/Credentials.cs b/EOSSDK/Generated/Auth/Credentials.cs index 5e0eb4f3..0262952a 100644 --- a/EOSSDK/Generated/Auth/Credentials.cs +++ b/EOSSDK/Generated/Auth/Credentials.cs @@ -13,7 +13,7 @@ namespace Epic.OnlineServices.Auth /// - Token is the exchange code. /// - If targeting console platforms, Token is the long lived refresh token. Otherwise N/A. /// - N/A. - /// - ID is the host (e.g. 127.0.0.1:10000), and Token is the credential name. + /// - ID is the host (e.g. localhost:6547), and Token is the credential name registered in the EOS Developer Authentication Tool. /// - Token is the refresh token. /// - SystemAuthCredentialsOptions may be required if targeting mobile platforms. Otherwise N/A. /// - Token is the external auth token specified by ExternalType. @@ -50,7 +50,7 @@ public class Credentials : ISettable /// Type of external login. Needed to identify the external auth method to use. /// Used when login type is set to , ignored for other methods. /// - public Connect.ExternalCredentialType ExternalType { get; set; } + public ExternalCredentialType ExternalType { get; set; } internal void Set(CredentialsInternal? other) { @@ -78,7 +78,7 @@ internal struct CredentialsInternal : ISettable, System.IDisposable private System.IntPtr m_Token; private LoginCredentialType m_Type; private System.IntPtr m_SystemAuthCredentialsOptions; - private Connect.ExternalCredentialType m_ExternalType; + private ExternalCredentialType m_ExternalType; public string Id { @@ -136,7 +136,7 @@ public System.IntPtr SystemAuthCredentialsOptions } } - public Connect.ExternalCredentialType ExternalType + public ExternalCredentialType ExternalType { get { diff --git a/EOSSDK/Generated/Auth/LinkAccountFlags.cs b/EOSSDK/Generated/Auth/LinkAccountFlags.cs index f21ac51a..12899cb0 100644 --- a/EOSSDK/Generated/Auth/LinkAccountFlags.cs +++ b/EOSSDK/Generated/Auth/LinkAccountFlags.cs @@ -8,7 +8,7 @@ namespace Epic.OnlineServices.Auth /// /// [System.Flags] - public enum LinkAccountFlags : ulong + public enum LinkAccountFlags : int { /// /// Default flag used for a standard account linking operation. @@ -21,7 +21,7 @@ public enum LinkAccountFlags : ulong /// Specified when the describes a Nintendo NSA ID account type. /// /// This flag is used only with, and must be set, when the continuance token was received from a previous call - /// to the API using the :: login type. + /// to the API using the :: login type. /// NintendoNsaId = 0x1 } diff --git a/EOSSDK/Generated/Auth/LinkAccountOptions.cs b/EOSSDK/Generated/Auth/LinkAccountOptions.cs index 85f7833a..56654cb5 100644 --- a/EOSSDK/Generated/Auth/LinkAccountOptions.cs +++ b/EOSSDK/Generated/Auth/LinkAccountOptions.cs @@ -84,6 +84,8 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_ContinuanceToken); + Helper.TryMarshalDispose(ref m_LocalUserId); } } } \ No newline at end of file diff --git a/EOSSDK/Generated/Auth/LoginCredentialType.cs b/EOSSDK/Generated/Auth/LoginCredentialType.cs index 8125d234..e26c993e 100644 --- a/EOSSDK/Generated/Auth/LoginCredentialType.cs +++ b/EOSSDK/Generated/Auth/LoginCredentialType.cs @@ -4,21 +4,30 @@ namespace Epic.OnlineServices.Auth { /// - /// All possible types of login methods, availability depends on permissions granted to the client + /// All possible types of login methods, availability depends on permissions granted to the client. /// /// /// public enum LoginCredentialType : int { /// - /// Email / Password. Use of this login type is restricted. + /// Login using account email address and password. + /// + /// @note Use of this login method is restricted and cannot be used in general. /// Password = 0, /// - /// Exchange code, typically generated by launcher + /// A short-lived one-time use exchange code to login the local user. + /// + /// @details Typically retrieved via command-line parameters provided by a launcher that generated the exchange code for this application. + /// When started, the application is expected to consume the exchange code by using the API as soon as possible. + /// This is needed in order to authenticate the local user before the exchange code would expire. + /// Attempting to consume an already expired exchange code will return ::AuthExchangeCodeNotFound error by the API. /// ExchangeCode = 1, /// + /// Desktop and Mobile only; deprecated on Console platforms in favor of login method. + /// /// Long-lived access token that is stored on the local device to allow persisting a user login session over multiple runs of the application. /// When using this login type, if an existing access token is not found or it is invalid or otherwise expired, the error result :: is returned. /// @@ -26,10 +35,11 @@ public enum LoginCredentialType : int /// On Console platforms, after a successful login using the login type, /// the persistent access token is retrieved using the API and /// stored by the application for the currently logged in user of the local device. + /// /// PersistentAuth = 2, /// - /// Console platforms only; not available on Desktop or Mobile. + /// Deprecated and no longer used. Superseded by the login method. /// /// Initiates a PIN grant login flow that is used to login a local user to their Epic Account for the first time, /// and also whenever their locally persisted login credentials would have expired. @@ -55,26 +65,60 @@ public enum LoginCredentialType : int /// the long-lived refresh token locally on the device, for the currently logged in local user of the device. /// Then, on subsequent game starts the game can call the API with the previously stored refresh token and /// using the login type to automatically login the current local user of the device. + /// /// DeviceCode = 3, /// - /// Request credentials from the EOS SDK Dev Auth Tool + /// Login with named credentials hosted by the EOS SDK Developer Authentication Tool. + /// + /// @note Used for development purposes only. /// Developer = 4, /// - /// Refresh token + /// Refresh token that was retrieved from a previous call to API in another local process context. + /// Mainly used in conjunction with custom launcher applications. + /// + /// @details Can be used for example when launching the game from Epic Games Launcher and having an intermediate process + /// in-between that requires authenticating the user before eventually starting the actual game client application. + /// In such scenario, an intermediate launcher will log in the user by consuming the exchange code it received from the + /// Epic Games Launcher. To allow the game client to also authenticate the user, it can copy the refresh token using the + /// API and pass it via launch parameters to the started game client. The game client can then + /// use the refresh token to log in the user. /// RefreshToken = 5, /// - /// Initiate a login through the account portal. Cannot be used on consoles. + /// Desktop and Mobile only. + /// + /// Initiate a login through the Epic account portal. + /// + /// @details Can be used in scenarios where seamless user login via other means is not available, + /// for example when starting the application through a proprietary ecosystem launcher or otherwise. /// AccountPortal = 6, /// - /// Initiate a login through an external provider, such as Steam, PSN, XBL, or Nintendo. + /// Login using external account provider credentials, such as Steam, PlayStation(TM)Network, Xbox Live, or Nintendo. + /// + /// This is the intended login method on Console. On Desktop and Mobile, used when launched through any of the commonly supported platform clients. + /// + /// @details The user is seamlessly logged in to their Epic account using an external account access token. + /// If the local platform account is already linked with the user's Epic account, the login will succeed and :: is returned. + /// When the local platform account has not been linked with an Epic account yet, + /// :: is returned and the will be set in the data. + /// If :: is returned, + /// the application should proceed to call the API with the to continue with the external account login + /// and to link the external account at the end of the login flow. /// - /// @details will be returned when the external auth login fails due to an external account not being linked. - /// An will be set in the data. - /// should be called with the to continue the external account login and link the external account. + /// @details On Console, login flow when the platform user account has not been linked with an Epic account yet: + /// 1. Game calls with the credential type. + /// 2. returns :: with a non-null in the data. + /// 3. Game calls with the to initiate the login flow for linking the platform account with the user's Epic account. + /// - During the login process, the user will be able to login to their existing Epic account or create a new account if needed. + /// 4. will make an intermediate callback to provide the caller with struct set in the data. + /// 5. Game examines the retrieved struct for a website URI and user code that the user needs to access off-device via a PC or mobile device. + /// - Game visualizes the URI and user code so that the user can proceed with the login flow outside the console. + /// - In the meantime, EOS SDK will internally keep polling the backend for a completion status of the login flow. + /// 6. Once user completes the login, cancels it or if the login flow times out, makes the second and final callback to the caller with the operation result status. + /// - If the user was logged in successfully, :: is returned in the . Otherwise, an error result code is returned accordingly. /// ExternalAuth = 7 } diff --git a/EOSSDK/Generated/Auth/LogoutOptions.cs b/EOSSDK/Generated/Auth/LogoutOptions.cs index abfdbffe..8fe47390 100644 --- a/EOSSDK/Generated/Auth/LogoutOptions.cs +++ b/EOSSDK/Generated/Auth/LogoutOptions.cs @@ -44,6 +44,7 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_LocalUserId); } } } \ No newline at end of file diff --git a/EOSSDK/Generated/Auth/OnDeletePersistentAuthCallback.cs b/EOSSDK/Generated/Auth/OnDeletePersistentAuthCallback.cs index 36c89368..259c0a42 100644 --- a/EOSSDK/Generated/Auth/OnDeletePersistentAuthCallback.cs +++ b/EOSSDK/Generated/Auth/OnDeletePersistentAuthCallback.cs @@ -9,5 +9,6 @@ namespace Epic.OnlineServices.Auth /// A containing the output information and result public delegate void OnDeletePersistentAuthCallback(DeletePersistentAuthCallbackInfo data); + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] internal delegate void OnDeletePersistentAuthCallbackInternal(System.IntPtr data); } \ No newline at end of file diff --git a/EOSSDK/Generated/Auth/OnLinkAccountCallback.cs b/EOSSDK/Generated/Auth/OnLinkAccountCallback.cs index f7182ef2..80bf53bf 100644 --- a/EOSSDK/Generated/Auth/OnLinkAccountCallback.cs +++ b/EOSSDK/Generated/Auth/OnLinkAccountCallback.cs @@ -9,5 +9,6 @@ namespace Epic.OnlineServices.Auth /// A containing the output information and result public delegate void OnLinkAccountCallback(LinkAccountCallbackInfo data); + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] internal delegate void OnLinkAccountCallbackInternal(System.IntPtr data); } \ No newline at end of file diff --git a/EOSSDK/Generated/Auth/OnLoginCallback.cs b/EOSSDK/Generated/Auth/OnLoginCallback.cs index d5f68d81..ba598540 100644 --- a/EOSSDK/Generated/Auth/OnLoginCallback.cs +++ b/EOSSDK/Generated/Auth/OnLoginCallback.cs @@ -9,5 +9,6 @@ namespace Epic.OnlineServices.Auth /// A containing the output information and result public delegate void OnLoginCallback(LoginCallbackInfo data); + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] internal delegate void OnLoginCallbackInternal(System.IntPtr data); } \ No newline at end of file diff --git a/EOSSDK/Generated/Auth/OnLoginStatusChangedCallback.cs b/EOSSDK/Generated/Auth/OnLoginStatusChangedCallback.cs index 396a510d..05e6cd8d 100644 --- a/EOSSDK/Generated/Auth/OnLoginStatusChangedCallback.cs +++ b/EOSSDK/Generated/Auth/OnLoginStatusChangedCallback.cs @@ -9,5 +9,6 @@ namespace Epic.OnlineServices.Auth /// A containing the output information and result public delegate void OnLoginStatusChangedCallback(LoginStatusChangedCallbackInfo data); + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] internal delegate void OnLoginStatusChangedCallbackInternal(System.IntPtr data); } \ No newline at end of file diff --git a/EOSSDK/Generated/Auth/OnLogoutCallback.cs b/EOSSDK/Generated/Auth/OnLogoutCallback.cs index d9f447ea..922dab71 100644 --- a/EOSSDK/Generated/Auth/OnLogoutCallback.cs +++ b/EOSSDK/Generated/Auth/OnLogoutCallback.cs @@ -9,5 +9,6 @@ namespace Epic.OnlineServices.Auth /// A containing the output information and result public delegate void OnLogoutCallback(LogoutCallbackInfo data); + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] internal delegate void OnLogoutCallbackInternal(System.IntPtr data); } \ No newline at end of file diff --git a/EOSSDK/Generated/Auth/OnVerifyUserAuthCallback.cs b/EOSSDK/Generated/Auth/OnVerifyUserAuthCallback.cs index 60864fd5..e65e415a 100644 --- a/EOSSDK/Generated/Auth/OnVerifyUserAuthCallback.cs +++ b/EOSSDK/Generated/Auth/OnVerifyUserAuthCallback.cs @@ -9,5 +9,6 @@ namespace Epic.OnlineServices.Auth /// A containing the output information and result public delegate void OnVerifyUserAuthCallback(VerifyUserAuthCallbackInfo data); + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] internal delegate void OnVerifyUserAuthCallbackInternal(System.IntPtr data); } \ No newline at end of file diff --git a/EOSSDK/Generated/Auth/PinGrantInfo.cs b/EOSSDK/Generated/Auth/PinGrantInfo.cs index e56d35ba..7cb7e76a 100644 --- a/EOSSDK/Generated/Auth/PinGrantInfo.cs +++ b/EOSSDK/Generated/Auth/PinGrantInfo.cs @@ -4,9 +4,9 @@ namespace Epic.OnlineServices.Auth { /// - /// Intermediate data needed to complete the login flow, returned by . - /// The data inside should be exposed to the user for entry on a secondary device - /// All data must be copied out before the completion of this callback + /// Intermediate data needed to complete the and login flows, returned by . + /// The data inside should be exposed to the user for entry on a secondary device. + /// All data must be copied out before the completion of this callback. /// public class PinGrantInfo : ISettable { diff --git a/EOSSDK/Generated/Auth/Token.cs b/EOSSDK/Generated/Auth/Token.cs index 01948a96..d41e586e 100644 --- a/EOSSDK/Generated/Auth/Token.cs +++ b/EOSSDK/Generated/Auth/Token.cs @@ -4,7 +4,8 @@ namespace Epic.OnlineServices.Auth { /// - /// A structure that contains an auth token. These structures are created by and must be passed to . + /// A structure that contains an auth token. + /// These structures are created by and must be passed to . /// public class Token : ISettable { @@ -45,20 +46,7 @@ public class Token : ISettable /// /// Refresh token. - /// - /// @details This member has two separate use cases: - /// 1. Launching the game from Epic Games Launcher, having an intermediate process (such as another launcher) that uses - /// Epic authentication in-between. - /// In this use case, an intermediate launcher that has logged in the user using the login type - /// can copy the refresh token using the API and pass it in launch parameters for the started - /// game client that can then login the user again using the refresh token this time with the - /// login type. - /// 2. Persistent auth on Console platforms, to remember user login across game sessions over longer period of times - /// without having to prompt the user to explicitly login each time they run the game. - /// In this use case, a local user is logged in with their Epic Account for the first time using the - /// login type. Specific to the login type, the SDK receives a long-lived refresh token instead of a - /// regular short-lived refresh token. The game can use the API to copy the long-lived refresh - /// token and store it locally for the currently logged in local user of the console device. + /// :: /// public string RefreshToken { get; set; } @@ -281,6 +269,7 @@ public void Dispose() { Helper.TryMarshalDispose(ref m_App); Helper.TryMarshalDispose(ref m_ClientId); + Helper.TryMarshalDispose(ref m_AccountId); Helper.TryMarshalDispose(ref m_AccessToken); Helper.TryMarshalDispose(ref m_ExpiresAt); Helper.TryMarshalDispose(ref m_RefreshToken); diff --git a/EOSSDK/Generated/Bindings.cs b/EOSSDK/Generated/Bindings.cs new file mode 100644 index 00000000..a4cbcbeb --- /dev/null +++ b/EOSSDK/Generated/Bindings.cs @@ -0,0 +1,5864 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +#if UNITY_EDITOR + #define EOS_EDITOR +#endif + +#if EOS_EDITOR + #define EOS_DYNAMIC_BINDINGS +#endif + +using System; +using System.Runtime.InteropServices; + +namespace Epic.OnlineServices +{ + public static class Bindings + { +#if EOS_DYNAMIC_BINDINGS + /// + /// Hooks the dynamic SDK API bindings. EOS_DYNAMIC_BINDINGS or EOS_EDITOR must be set. + /// + /// The library handle to find functions in. The type is platform dependent, but would typically be . + /// A delegate that gets a function pointer using the given library handle and function name. + public static void Hook(TLibraryHandle libraryHandle, Func getFunctionPointer) + { + System.IntPtr functionPointer; + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Achievements_AddNotifyAchievementsUnlocked)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Achievements_AddNotifyAchievementsUnlocked)); + EOS_Achievements_AddNotifyAchievementsUnlocked = (EOS_Achievements_AddNotifyAchievementsUnlockedCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Achievements_AddNotifyAchievementsUnlockedCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Achievements_AddNotifyAchievementsUnlockedV2)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Achievements_AddNotifyAchievementsUnlockedV2)); + EOS_Achievements_AddNotifyAchievementsUnlockedV2 = (EOS_Achievements_AddNotifyAchievementsUnlockedV2Callback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Achievements_AddNotifyAchievementsUnlockedV2Callback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Achievements_CopyAchievementDefinitionByAchievementId)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Achievements_CopyAchievementDefinitionByAchievementId)); + EOS_Achievements_CopyAchievementDefinitionByAchievementId = (EOS_Achievements_CopyAchievementDefinitionByAchievementIdCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Achievements_CopyAchievementDefinitionByAchievementIdCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Achievements_CopyAchievementDefinitionByIndex)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Achievements_CopyAchievementDefinitionByIndex)); + EOS_Achievements_CopyAchievementDefinitionByIndex = (EOS_Achievements_CopyAchievementDefinitionByIndexCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Achievements_CopyAchievementDefinitionByIndexCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Achievements_CopyAchievementDefinitionV2ByAchievementId)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Achievements_CopyAchievementDefinitionV2ByAchievementId)); + EOS_Achievements_CopyAchievementDefinitionV2ByAchievementId = (EOS_Achievements_CopyAchievementDefinitionV2ByAchievementIdCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Achievements_CopyAchievementDefinitionV2ByAchievementIdCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Achievements_CopyAchievementDefinitionV2ByIndex)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Achievements_CopyAchievementDefinitionV2ByIndex)); + EOS_Achievements_CopyAchievementDefinitionV2ByIndex = (EOS_Achievements_CopyAchievementDefinitionV2ByIndexCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Achievements_CopyAchievementDefinitionV2ByIndexCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Achievements_CopyPlayerAchievementByAchievementId)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Achievements_CopyPlayerAchievementByAchievementId)); + EOS_Achievements_CopyPlayerAchievementByAchievementId = (EOS_Achievements_CopyPlayerAchievementByAchievementIdCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Achievements_CopyPlayerAchievementByAchievementIdCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Achievements_CopyPlayerAchievementByIndex)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Achievements_CopyPlayerAchievementByIndex)); + EOS_Achievements_CopyPlayerAchievementByIndex = (EOS_Achievements_CopyPlayerAchievementByIndexCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Achievements_CopyPlayerAchievementByIndexCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Achievements_CopyUnlockedAchievementByAchievementId)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Achievements_CopyUnlockedAchievementByAchievementId)); + EOS_Achievements_CopyUnlockedAchievementByAchievementId = (EOS_Achievements_CopyUnlockedAchievementByAchievementIdCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Achievements_CopyUnlockedAchievementByAchievementIdCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Achievements_CopyUnlockedAchievementByIndex)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Achievements_CopyUnlockedAchievementByIndex)); + EOS_Achievements_CopyUnlockedAchievementByIndex = (EOS_Achievements_CopyUnlockedAchievementByIndexCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Achievements_CopyUnlockedAchievementByIndexCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Achievements_DefinitionV2_Release)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Achievements_DefinitionV2_Release)); + EOS_Achievements_DefinitionV2_Release = (EOS_Achievements_DefinitionV2_ReleaseCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Achievements_DefinitionV2_ReleaseCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Achievements_Definition_Release)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Achievements_Definition_Release)); + EOS_Achievements_Definition_Release = (EOS_Achievements_Definition_ReleaseCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Achievements_Definition_ReleaseCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Achievements_GetAchievementDefinitionCount)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Achievements_GetAchievementDefinitionCount)); + EOS_Achievements_GetAchievementDefinitionCount = (EOS_Achievements_GetAchievementDefinitionCountCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Achievements_GetAchievementDefinitionCountCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Achievements_GetPlayerAchievementCount)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Achievements_GetPlayerAchievementCount)); + EOS_Achievements_GetPlayerAchievementCount = (EOS_Achievements_GetPlayerAchievementCountCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Achievements_GetPlayerAchievementCountCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Achievements_GetUnlockedAchievementCount)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Achievements_GetUnlockedAchievementCount)); + EOS_Achievements_GetUnlockedAchievementCount = (EOS_Achievements_GetUnlockedAchievementCountCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Achievements_GetUnlockedAchievementCountCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Achievements_PlayerAchievement_Release)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Achievements_PlayerAchievement_Release)); + EOS_Achievements_PlayerAchievement_Release = (EOS_Achievements_PlayerAchievement_ReleaseCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Achievements_PlayerAchievement_ReleaseCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Achievements_QueryDefinitions)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Achievements_QueryDefinitions)); + EOS_Achievements_QueryDefinitions = (EOS_Achievements_QueryDefinitionsCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Achievements_QueryDefinitionsCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Achievements_QueryPlayerAchievements)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Achievements_QueryPlayerAchievements)); + EOS_Achievements_QueryPlayerAchievements = (EOS_Achievements_QueryPlayerAchievementsCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Achievements_QueryPlayerAchievementsCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Achievements_RemoveNotifyAchievementsUnlocked)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Achievements_RemoveNotifyAchievementsUnlocked)); + EOS_Achievements_RemoveNotifyAchievementsUnlocked = (EOS_Achievements_RemoveNotifyAchievementsUnlockedCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Achievements_RemoveNotifyAchievementsUnlockedCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Achievements_UnlockAchievements)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Achievements_UnlockAchievements)); + EOS_Achievements_UnlockAchievements = (EOS_Achievements_UnlockAchievementsCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Achievements_UnlockAchievementsCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Achievements_UnlockedAchievement_Release)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Achievements_UnlockedAchievement_Release)); + EOS_Achievements_UnlockedAchievement_Release = (EOS_Achievements_UnlockedAchievement_ReleaseCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Achievements_UnlockedAchievement_ReleaseCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_ActiveSession_CopyInfo)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_ActiveSession_CopyInfo)); + EOS_ActiveSession_CopyInfo = (EOS_ActiveSession_CopyInfoCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_ActiveSession_CopyInfoCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_ActiveSession_GetRegisteredPlayerByIndex)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_ActiveSession_GetRegisteredPlayerByIndex)); + EOS_ActiveSession_GetRegisteredPlayerByIndex = (EOS_ActiveSession_GetRegisteredPlayerByIndexCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_ActiveSession_GetRegisteredPlayerByIndexCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_ActiveSession_GetRegisteredPlayerCount)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_ActiveSession_GetRegisteredPlayerCount)); + EOS_ActiveSession_GetRegisteredPlayerCount = (EOS_ActiveSession_GetRegisteredPlayerCountCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_ActiveSession_GetRegisteredPlayerCountCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_ActiveSession_Info_Release)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_ActiveSession_Info_Release)); + EOS_ActiveSession_Info_Release = (EOS_ActiveSession_Info_ReleaseCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_ActiveSession_Info_ReleaseCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_ActiveSession_Release)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_ActiveSession_Release)); + EOS_ActiveSession_Release = (EOS_ActiveSession_ReleaseCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_ActiveSession_ReleaseCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_AntiCheatClient_AddExternalIntegrityCatalog)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_AntiCheatClient_AddExternalIntegrityCatalog)); + EOS_AntiCheatClient_AddExternalIntegrityCatalog = (EOS_AntiCheatClient_AddExternalIntegrityCatalogCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_AntiCheatClient_AddExternalIntegrityCatalogCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_AntiCheatClient_AddNotifyMessageToPeer)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_AntiCheatClient_AddNotifyMessageToPeer)); + EOS_AntiCheatClient_AddNotifyMessageToPeer = (EOS_AntiCheatClient_AddNotifyMessageToPeerCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_AntiCheatClient_AddNotifyMessageToPeerCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_AntiCheatClient_AddNotifyMessageToServer)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_AntiCheatClient_AddNotifyMessageToServer)); + EOS_AntiCheatClient_AddNotifyMessageToServer = (EOS_AntiCheatClient_AddNotifyMessageToServerCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_AntiCheatClient_AddNotifyMessageToServerCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_AntiCheatClient_AddNotifyPeerActionRequired)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_AntiCheatClient_AddNotifyPeerActionRequired)); + EOS_AntiCheatClient_AddNotifyPeerActionRequired = (EOS_AntiCheatClient_AddNotifyPeerActionRequiredCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_AntiCheatClient_AddNotifyPeerActionRequiredCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_AntiCheatClient_AddNotifyPeerAuthStatusChanged)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_AntiCheatClient_AddNotifyPeerAuthStatusChanged)); + EOS_AntiCheatClient_AddNotifyPeerAuthStatusChanged = (EOS_AntiCheatClient_AddNotifyPeerAuthStatusChangedCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_AntiCheatClient_AddNotifyPeerAuthStatusChangedCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_AntiCheatClient_BeginSession)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_AntiCheatClient_BeginSession)); + EOS_AntiCheatClient_BeginSession = (EOS_AntiCheatClient_BeginSessionCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_AntiCheatClient_BeginSessionCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_AntiCheatClient_EndSession)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_AntiCheatClient_EndSession)); + EOS_AntiCheatClient_EndSession = (EOS_AntiCheatClient_EndSessionCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_AntiCheatClient_EndSessionCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_AntiCheatClient_GetProtectMessageOutputLength)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_AntiCheatClient_GetProtectMessageOutputLength)); + EOS_AntiCheatClient_GetProtectMessageOutputLength = (EOS_AntiCheatClient_GetProtectMessageOutputLengthCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_AntiCheatClient_GetProtectMessageOutputLengthCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_AntiCheatClient_PollStatus)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_AntiCheatClient_PollStatus)); + EOS_AntiCheatClient_PollStatus = (EOS_AntiCheatClient_PollStatusCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_AntiCheatClient_PollStatusCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_AntiCheatClient_ProtectMessage)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_AntiCheatClient_ProtectMessage)); + EOS_AntiCheatClient_ProtectMessage = (EOS_AntiCheatClient_ProtectMessageCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_AntiCheatClient_ProtectMessageCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_AntiCheatClient_ReceiveMessageFromPeer)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_AntiCheatClient_ReceiveMessageFromPeer)); + EOS_AntiCheatClient_ReceiveMessageFromPeer = (EOS_AntiCheatClient_ReceiveMessageFromPeerCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_AntiCheatClient_ReceiveMessageFromPeerCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_AntiCheatClient_ReceiveMessageFromServer)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_AntiCheatClient_ReceiveMessageFromServer)); + EOS_AntiCheatClient_ReceiveMessageFromServer = (EOS_AntiCheatClient_ReceiveMessageFromServerCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_AntiCheatClient_ReceiveMessageFromServerCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_AntiCheatClient_RegisterPeer)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_AntiCheatClient_RegisterPeer)); + EOS_AntiCheatClient_RegisterPeer = (EOS_AntiCheatClient_RegisterPeerCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_AntiCheatClient_RegisterPeerCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_AntiCheatClient_RemoveNotifyMessageToPeer)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_AntiCheatClient_RemoveNotifyMessageToPeer)); + EOS_AntiCheatClient_RemoveNotifyMessageToPeer = (EOS_AntiCheatClient_RemoveNotifyMessageToPeerCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_AntiCheatClient_RemoveNotifyMessageToPeerCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_AntiCheatClient_RemoveNotifyMessageToServer)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_AntiCheatClient_RemoveNotifyMessageToServer)); + EOS_AntiCheatClient_RemoveNotifyMessageToServer = (EOS_AntiCheatClient_RemoveNotifyMessageToServerCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_AntiCheatClient_RemoveNotifyMessageToServerCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_AntiCheatClient_RemoveNotifyPeerActionRequired)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_AntiCheatClient_RemoveNotifyPeerActionRequired)); + EOS_AntiCheatClient_RemoveNotifyPeerActionRequired = (EOS_AntiCheatClient_RemoveNotifyPeerActionRequiredCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_AntiCheatClient_RemoveNotifyPeerActionRequiredCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_AntiCheatClient_RemoveNotifyPeerAuthStatusChanged)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_AntiCheatClient_RemoveNotifyPeerAuthStatusChanged)); + EOS_AntiCheatClient_RemoveNotifyPeerAuthStatusChanged = (EOS_AntiCheatClient_RemoveNotifyPeerAuthStatusChangedCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_AntiCheatClient_RemoveNotifyPeerAuthStatusChangedCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_AntiCheatClient_UnprotectMessage)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_AntiCheatClient_UnprotectMessage)); + EOS_AntiCheatClient_UnprotectMessage = (EOS_AntiCheatClient_UnprotectMessageCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_AntiCheatClient_UnprotectMessageCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_AntiCheatClient_UnregisterPeer)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_AntiCheatClient_UnregisterPeer)); + EOS_AntiCheatClient_UnregisterPeer = (EOS_AntiCheatClient_UnregisterPeerCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_AntiCheatClient_UnregisterPeerCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_AntiCheatServer_AddNotifyClientActionRequired)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_AntiCheatServer_AddNotifyClientActionRequired)); + EOS_AntiCheatServer_AddNotifyClientActionRequired = (EOS_AntiCheatServer_AddNotifyClientActionRequiredCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_AntiCheatServer_AddNotifyClientActionRequiredCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_AntiCheatServer_AddNotifyClientAuthStatusChanged)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_AntiCheatServer_AddNotifyClientAuthStatusChanged)); + EOS_AntiCheatServer_AddNotifyClientAuthStatusChanged = (EOS_AntiCheatServer_AddNotifyClientAuthStatusChangedCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_AntiCheatServer_AddNotifyClientAuthStatusChangedCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_AntiCheatServer_AddNotifyMessageToClient)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_AntiCheatServer_AddNotifyMessageToClient)); + EOS_AntiCheatServer_AddNotifyMessageToClient = (EOS_AntiCheatServer_AddNotifyMessageToClientCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_AntiCheatServer_AddNotifyMessageToClientCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_AntiCheatServer_BeginSession)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_AntiCheatServer_BeginSession)); + EOS_AntiCheatServer_BeginSession = (EOS_AntiCheatServer_BeginSessionCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_AntiCheatServer_BeginSessionCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_AntiCheatServer_EndSession)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_AntiCheatServer_EndSession)); + EOS_AntiCheatServer_EndSession = (EOS_AntiCheatServer_EndSessionCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_AntiCheatServer_EndSessionCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_AntiCheatServer_GetProtectMessageOutputLength)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_AntiCheatServer_GetProtectMessageOutputLength)); + EOS_AntiCheatServer_GetProtectMessageOutputLength = (EOS_AntiCheatServer_GetProtectMessageOutputLengthCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_AntiCheatServer_GetProtectMessageOutputLengthCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_AntiCheatServer_LogEvent)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_AntiCheatServer_LogEvent)); + EOS_AntiCheatServer_LogEvent = (EOS_AntiCheatServer_LogEventCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_AntiCheatServer_LogEventCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_AntiCheatServer_LogGameRoundEnd)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_AntiCheatServer_LogGameRoundEnd)); + EOS_AntiCheatServer_LogGameRoundEnd = (EOS_AntiCheatServer_LogGameRoundEndCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_AntiCheatServer_LogGameRoundEndCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_AntiCheatServer_LogGameRoundStart)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_AntiCheatServer_LogGameRoundStart)); + EOS_AntiCheatServer_LogGameRoundStart = (EOS_AntiCheatServer_LogGameRoundStartCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_AntiCheatServer_LogGameRoundStartCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_AntiCheatServer_LogPlayerDespawn)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_AntiCheatServer_LogPlayerDespawn)); + EOS_AntiCheatServer_LogPlayerDespawn = (EOS_AntiCheatServer_LogPlayerDespawnCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_AntiCheatServer_LogPlayerDespawnCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_AntiCheatServer_LogPlayerRevive)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_AntiCheatServer_LogPlayerRevive)); + EOS_AntiCheatServer_LogPlayerRevive = (EOS_AntiCheatServer_LogPlayerReviveCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_AntiCheatServer_LogPlayerReviveCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_AntiCheatServer_LogPlayerSpawn)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_AntiCheatServer_LogPlayerSpawn)); + EOS_AntiCheatServer_LogPlayerSpawn = (EOS_AntiCheatServer_LogPlayerSpawnCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_AntiCheatServer_LogPlayerSpawnCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_AntiCheatServer_LogPlayerTakeDamage)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_AntiCheatServer_LogPlayerTakeDamage)); + EOS_AntiCheatServer_LogPlayerTakeDamage = (EOS_AntiCheatServer_LogPlayerTakeDamageCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_AntiCheatServer_LogPlayerTakeDamageCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_AntiCheatServer_LogPlayerTick)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_AntiCheatServer_LogPlayerTick)); + EOS_AntiCheatServer_LogPlayerTick = (EOS_AntiCheatServer_LogPlayerTickCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_AntiCheatServer_LogPlayerTickCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_AntiCheatServer_LogPlayerUseAbility)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_AntiCheatServer_LogPlayerUseAbility)); + EOS_AntiCheatServer_LogPlayerUseAbility = (EOS_AntiCheatServer_LogPlayerUseAbilityCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_AntiCheatServer_LogPlayerUseAbilityCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_AntiCheatServer_LogPlayerUseWeapon)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_AntiCheatServer_LogPlayerUseWeapon)); + EOS_AntiCheatServer_LogPlayerUseWeapon = (EOS_AntiCheatServer_LogPlayerUseWeaponCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_AntiCheatServer_LogPlayerUseWeaponCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_AntiCheatServer_ProtectMessage)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_AntiCheatServer_ProtectMessage)); + EOS_AntiCheatServer_ProtectMessage = (EOS_AntiCheatServer_ProtectMessageCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_AntiCheatServer_ProtectMessageCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_AntiCheatServer_ReceiveMessageFromClient)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_AntiCheatServer_ReceiveMessageFromClient)); + EOS_AntiCheatServer_ReceiveMessageFromClient = (EOS_AntiCheatServer_ReceiveMessageFromClientCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_AntiCheatServer_ReceiveMessageFromClientCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_AntiCheatServer_RegisterClient)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_AntiCheatServer_RegisterClient)); + EOS_AntiCheatServer_RegisterClient = (EOS_AntiCheatServer_RegisterClientCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_AntiCheatServer_RegisterClientCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_AntiCheatServer_RegisterEvent)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_AntiCheatServer_RegisterEvent)); + EOS_AntiCheatServer_RegisterEvent = (EOS_AntiCheatServer_RegisterEventCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_AntiCheatServer_RegisterEventCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_AntiCheatServer_RemoveNotifyClientActionRequired)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_AntiCheatServer_RemoveNotifyClientActionRequired)); + EOS_AntiCheatServer_RemoveNotifyClientActionRequired = (EOS_AntiCheatServer_RemoveNotifyClientActionRequiredCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_AntiCheatServer_RemoveNotifyClientActionRequiredCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_AntiCheatServer_RemoveNotifyClientAuthStatusChanged)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_AntiCheatServer_RemoveNotifyClientAuthStatusChanged)); + EOS_AntiCheatServer_RemoveNotifyClientAuthStatusChanged = (EOS_AntiCheatServer_RemoveNotifyClientAuthStatusChangedCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_AntiCheatServer_RemoveNotifyClientAuthStatusChangedCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_AntiCheatServer_RemoveNotifyMessageToClient)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_AntiCheatServer_RemoveNotifyMessageToClient)); + EOS_AntiCheatServer_RemoveNotifyMessageToClient = (EOS_AntiCheatServer_RemoveNotifyMessageToClientCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_AntiCheatServer_RemoveNotifyMessageToClientCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_AntiCheatServer_SetClientDetails)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_AntiCheatServer_SetClientDetails)); + EOS_AntiCheatServer_SetClientDetails = (EOS_AntiCheatServer_SetClientDetailsCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_AntiCheatServer_SetClientDetailsCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_AntiCheatServer_SetClientNetworkState)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_AntiCheatServer_SetClientNetworkState)); + EOS_AntiCheatServer_SetClientNetworkState = (EOS_AntiCheatServer_SetClientNetworkStateCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_AntiCheatServer_SetClientNetworkStateCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_AntiCheatServer_SetGameSessionId)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_AntiCheatServer_SetGameSessionId)); + EOS_AntiCheatServer_SetGameSessionId = (EOS_AntiCheatServer_SetGameSessionIdCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_AntiCheatServer_SetGameSessionIdCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_AntiCheatServer_UnprotectMessage)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_AntiCheatServer_UnprotectMessage)); + EOS_AntiCheatServer_UnprotectMessage = (EOS_AntiCheatServer_UnprotectMessageCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_AntiCheatServer_UnprotectMessageCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_AntiCheatServer_UnregisterClient)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_AntiCheatServer_UnregisterClient)); + EOS_AntiCheatServer_UnregisterClient = (EOS_AntiCheatServer_UnregisterClientCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_AntiCheatServer_UnregisterClientCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Auth_AddNotifyLoginStatusChanged)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Auth_AddNotifyLoginStatusChanged)); + EOS_Auth_AddNotifyLoginStatusChanged = (EOS_Auth_AddNotifyLoginStatusChangedCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Auth_AddNotifyLoginStatusChangedCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Auth_CopyUserAuthToken)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Auth_CopyUserAuthToken)); + EOS_Auth_CopyUserAuthToken = (EOS_Auth_CopyUserAuthTokenCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Auth_CopyUserAuthTokenCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Auth_DeletePersistentAuth)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Auth_DeletePersistentAuth)); + EOS_Auth_DeletePersistentAuth = (EOS_Auth_DeletePersistentAuthCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Auth_DeletePersistentAuthCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Auth_GetLoggedInAccountByIndex)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Auth_GetLoggedInAccountByIndex)); + EOS_Auth_GetLoggedInAccountByIndex = (EOS_Auth_GetLoggedInAccountByIndexCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Auth_GetLoggedInAccountByIndexCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Auth_GetLoggedInAccountsCount)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Auth_GetLoggedInAccountsCount)); + EOS_Auth_GetLoggedInAccountsCount = (EOS_Auth_GetLoggedInAccountsCountCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Auth_GetLoggedInAccountsCountCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Auth_GetLoginStatus)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Auth_GetLoginStatus)); + EOS_Auth_GetLoginStatus = (EOS_Auth_GetLoginStatusCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Auth_GetLoginStatusCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Auth_LinkAccount)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Auth_LinkAccount)); + EOS_Auth_LinkAccount = (EOS_Auth_LinkAccountCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Auth_LinkAccountCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Auth_Login)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Auth_Login)); + EOS_Auth_Login = (EOS_Auth_LoginCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Auth_LoginCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Auth_Logout)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Auth_Logout)); + EOS_Auth_Logout = (EOS_Auth_LogoutCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Auth_LogoutCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Auth_RemoveNotifyLoginStatusChanged)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Auth_RemoveNotifyLoginStatusChanged)); + EOS_Auth_RemoveNotifyLoginStatusChanged = (EOS_Auth_RemoveNotifyLoginStatusChangedCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Auth_RemoveNotifyLoginStatusChangedCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Auth_Token_Release)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Auth_Token_Release)); + EOS_Auth_Token_Release = (EOS_Auth_Token_ReleaseCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Auth_Token_ReleaseCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Auth_VerifyUserAuth)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Auth_VerifyUserAuth)); + EOS_Auth_VerifyUserAuth = (EOS_Auth_VerifyUserAuthCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Auth_VerifyUserAuthCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_ByteArray_ToString)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_ByteArray_ToString)); + EOS_ByteArray_ToString = (EOS_ByteArray_ToStringCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_ByteArray_ToStringCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Connect_AddNotifyAuthExpiration)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Connect_AddNotifyAuthExpiration)); + EOS_Connect_AddNotifyAuthExpiration = (EOS_Connect_AddNotifyAuthExpirationCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Connect_AddNotifyAuthExpirationCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Connect_AddNotifyLoginStatusChanged)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Connect_AddNotifyLoginStatusChanged)); + EOS_Connect_AddNotifyLoginStatusChanged = (EOS_Connect_AddNotifyLoginStatusChangedCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Connect_AddNotifyLoginStatusChangedCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Connect_CopyProductUserExternalAccountByAccountId)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Connect_CopyProductUserExternalAccountByAccountId)); + EOS_Connect_CopyProductUserExternalAccountByAccountId = (EOS_Connect_CopyProductUserExternalAccountByAccountIdCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Connect_CopyProductUserExternalAccountByAccountIdCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Connect_CopyProductUserExternalAccountByAccountType)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Connect_CopyProductUserExternalAccountByAccountType)); + EOS_Connect_CopyProductUserExternalAccountByAccountType = (EOS_Connect_CopyProductUserExternalAccountByAccountTypeCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Connect_CopyProductUserExternalAccountByAccountTypeCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Connect_CopyProductUserExternalAccountByIndex)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Connect_CopyProductUserExternalAccountByIndex)); + EOS_Connect_CopyProductUserExternalAccountByIndex = (EOS_Connect_CopyProductUserExternalAccountByIndexCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Connect_CopyProductUserExternalAccountByIndexCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Connect_CopyProductUserInfo)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Connect_CopyProductUserInfo)); + EOS_Connect_CopyProductUserInfo = (EOS_Connect_CopyProductUserInfoCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Connect_CopyProductUserInfoCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Connect_CreateDeviceId)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Connect_CreateDeviceId)); + EOS_Connect_CreateDeviceId = (EOS_Connect_CreateDeviceIdCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Connect_CreateDeviceIdCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Connect_CreateUser)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Connect_CreateUser)); + EOS_Connect_CreateUser = (EOS_Connect_CreateUserCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Connect_CreateUserCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Connect_DeleteDeviceId)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Connect_DeleteDeviceId)); + EOS_Connect_DeleteDeviceId = (EOS_Connect_DeleteDeviceIdCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Connect_DeleteDeviceIdCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Connect_ExternalAccountInfo_Release)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Connect_ExternalAccountInfo_Release)); + EOS_Connect_ExternalAccountInfo_Release = (EOS_Connect_ExternalAccountInfo_ReleaseCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Connect_ExternalAccountInfo_ReleaseCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Connect_GetExternalAccountMapping)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Connect_GetExternalAccountMapping)); + EOS_Connect_GetExternalAccountMapping = (EOS_Connect_GetExternalAccountMappingCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Connect_GetExternalAccountMappingCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Connect_GetLoggedInUserByIndex)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Connect_GetLoggedInUserByIndex)); + EOS_Connect_GetLoggedInUserByIndex = (EOS_Connect_GetLoggedInUserByIndexCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Connect_GetLoggedInUserByIndexCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Connect_GetLoggedInUsersCount)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Connect_GetLoggedInUsersCount)); + EOS_Connect_GetLoggedInUsersCount = (EOS_Connect_GetLoggedInUsersCountCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Connect_GetLoggedInUsersCountCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Connect_GetLoginStatus)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Connect_GetLoginStatus)); + EOS_Connect_GetLoginStatus = (EOS_Connect_GetLoginStatusCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Connect_GetLoginStatusCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Connect_GetProductUserExternalAccountCount)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Connect_GetProductUserExternalAccountCount)); + EOS_Connect_GetProductUserExternalAccountCount = (EOS_Connect_GetProductUserExternalAccountCountCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Connect_GetProductUserExternalAccountCountCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Connect_GetProductUserIdMapping)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Connect_GetProductUserIdMapping)); + EOS_Connect_GetProductUserIdMapping = (EOS_Connect_GetProductUserIdMappingCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Connect_GetProductUserIdMappingCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Connect_LinkAccount)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Connect_LinkAccount)); + EOS_Connect_LinkAccount = (EOS_Connect_LinkAccountCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Connect_LinkAccountCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Connect_Login)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Connect_Login)); + EOS_Connect_Login = (EOS_Connect_LoginCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Connect_LoginCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Connect_QueryExternalAccountMappings)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Connect_QueryExternalAccountMappings)); + EOS_Connect_QueryExternalAccountMappings = (EOS_Connect_QueryExternalAccountMappingsCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Connect_QueryExternalAccountMappingsCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Connect_QueryProductUserIdMappings)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Connect_QueryProductUserIdMappings)); + EOS_Connect_QueryProductUserIdMappings = (EOS_Connect_QueryProductUserIdMappingsCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Connect_QueryProductUserIdMappingsCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Connect_RemoveNotifyAuthExpiration)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Connect_RemoveNotifyAuthExpiration)); + EOS_Connect_RemoveNotifyAuthExpiration = (EOS_Connect_RemoveNotifyAuthExpirationCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Connect_RemoveNotifyAuthExpirationCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Connect_RemoveNotifyLoginStatusChanged)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Connect_RemoveNotifyLoginStatusChanged)); + EOS_Connect_RemoveNotifyLoginStatusChanged = (EOS_Connect_RemoveNotifyLoginStatusChangedCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Connect_RemoveNotifyLoginStatusChangedCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Connect_TransferDeviceIdAccount)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Connect_TransferDeviceIdAccount)); + EOS_Connect_TransferDeviceIdAccount = (EOS_Connect_TransferDeviceIdAccountCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Connect_TransferDeviceIdAccountCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Connect_UnlinkAccount)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Connect_UnlinkAccount)); + EOS_Connect_UnlinkAccount = (EOS_Connect_UnlinkAccountCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Connect_UnlinkAccountCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_ContinuanceToken_ToString)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_ContinuanceToken_ToString)); + EOS_ContinuanceToken_ToString = (EOS_ContinuanceToken_ToStringCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_ContinuanceToken_ToStringCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_EResult_IsOperationComplete)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_EResult_IsOperationComplete)); + EOS_EResult_IsOperationComplete = (EOS_EResult_IsOperationCompleteCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_EResult_IsOperationCompleteCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_EResult_ToString)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_EResult_ToString)); + EOS_EResult_ToString = (EOS_EResult_ToStringCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_EResult_ToStringCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Ecom_CatalogItem_Release)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Ecom_CatalogItem_Release)); + EOS_Ecom_CatalogItem_Release = (EOS_Ecom_CatalogItem_ReleaseCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Ecom_CatalogItem_ReleaseCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Ecom_CatalogOffer_Release)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Ecom_CatalogOffer_Release)); + EOS_Ecom_CatalogOffer_Release = (EOS_Ecom_CatalogOffer_ReleaseCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Ecom_CatalogOffer_ReleaseCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Ecom_CatalogRelease_Release)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Ecom_CatalogRelease_Release)); + EOS_Ecom_CatalogRelease_Release = (EOS_Ecom_CatalogRelease_ReleaseCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Ecom_CatalogRelease_ReleaseCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Ecom_Checkout)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Ecom_Checkout)); + EOS_Ecom_Checkout = (EOS_Ecom_CheckoutCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Ecom_CheckoutCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Ecom_CopyEntitlementById)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Ecom_CopyEntitlementById)); + EOS_Ecom_CopyEntitlementById = (EOS_Ecom_CopyEntitlementByIdCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Ecom_CopyEntitlementByIdCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Ecom_CopyEntitlementByIndex)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Ecom_CopyEntitlementByIndex)); + EOS_Ecom_CopyEntitlementByIndex = (EOS_Ecom_CopyEntitlementByIndexCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Ecom_CopyEntitlementByIndexCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Ecom_CopyEntitlementByNameAndIndex)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Ecom_CopyEntitlementByNameAndIndex)); + EOS_Ecom_CopyEntitlementByNameAndIndex = (EOS_Ecom_CopyEntitlementByNameAndIndexCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Ecom_CopyEntitlementByNameAndIndexCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Ecom_CopyItemById)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Ecom_CopyItemById)); + EOS_Ecom_CopyItemById = (EOS_Ecom_CopyItemByIdCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Ecom_CopyItemByIdCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Ecom_CopyItemImageInfoByIndex)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Ecom_CopyItemImageInfoByIndex)); + EOS_Ecom_CopyItemImageInfoByIndex = (EOS_Ecom_CopyItemImageInfoByIndexCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Ecom_CopyItemImageInfoByIndexCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Ecom_CopyItemReleaseByIndex)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Ecom_CopyItemReleaseByIndex)); + EOS_Ecom_CopyItemReleaseByIndex = (EOS_Ecom_CopyItemReleaseByIndexCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Ecom_CopyItemReleaseByIndexCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Ecom_CopyOfferById)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Ecom_CopyOfferById)); + EOS_Ecom_CopyOfferById = (EOS_Ecom_CopyOfferByIdCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Ecom_CopyOfferByIdCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Ecom_CopyOfferByIndex)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Ecom_CopyOfferByIndex)); + EOS_Ecom_CopyOfferByIndex = (EOS_Ecom_CopyOfferByIndexCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Ecom_CopyOfferByIndexCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Ecom_CopyOfferImageInfoByIndex)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Ecom_CopyOfferImageInfoByIndex)); + EOS_Ecom_CopyOfferImageInfoByIndex = (EOS_Ecom_CopyOfferImageInfoByIndexCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Ecom_CopyOfferImageInfoByIndexCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Ecom_CopyOfferItemByIndex)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Ecom_CopyOfferItemByIndex)); + EOS_Ecom_CopyOfferItemByIndex = (EOS_Ecom_CopyOfferItemByIndexCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Ecom_CopyOfferItemByIndexCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Ecom_CopyTransactionById)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Ecom_CopyTransactionById)); + EOS_Ecom_CopyTransactionById = (EOS_Ecom_CopyTransactionByIdCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Ecom_CopyTransactionByIdCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Ecom_CopyTransactionByIndex)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Ecom_CopyTransactionByIndex)); + EOS_Ecom_CopyTransactionByIndex = (EOS_Ecom_CopyTransactionByIndexCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Ecom_CopyTransactionByIndexCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Ecom_Entitlement_Release)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Ecom_Entitlement_Release)); + EOS_Ecom_Entitlement_Release = (EOS_Ecom_Entitlement_ReleaseCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Ecom_Entitlement_ReleaseCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Ecom_GetEntitlementsByNameCount)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Ecom_GetEntitlementsByNameCount)); + EOS_Ecom_GetEntitlementsByNameCount = (EOS_Ecom_GetEntitlementsByNameCountCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Ecom_GetEntitlementsByNameCountCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Ecom_GetEntitlementsCount)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Ecom_GetEntitlementsCount)); + EOS_Ecom_GetEntitlementsCount = (EOS_Ecom_GetEntitlementsCountCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Ecom_GetEntitlementsCountCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Ecom_GetItemImageInfoCount)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Ecom_GetItemImageInfoCount)); + EOS_Ecom_GetItemImageInfoCount = (EOS_Ecom_GetItemImageInfoCountCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Ecom_GetItemImageInfoCountCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Ecom_GetItemReleaseCount)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Ecom_GetItemReleaseCount)); + EOS_Ecom_GetItemReleaseCount = (EOS_Ecom_GetItemReleaseCountCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Ecom_GetItemReleaseCountCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Ecom_GetOfferCount)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Ecom_GetOfferCount)); + EOS_Ecom_GetOfferCount = (EOS_Ecom_GetOfferCountCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Ecom_GetOfferCountCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Ecom_GetOfferImageInfoCount)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Ecom_GetOfferImageInfoCount)); + EOS_Ecom_GetOfferImageInfoCount = (EOS_Ecom_GetOfferImageInfoCountCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Ecom_GetOfferImageInfoCountCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Ecom_GetOfferItemCount)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Ecom_GetOfferItemCount)); + EOS_Ecom_GetOfferItemCount = (EOS_Ecom_GetOfferItemCountCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Ecom_GetOfferItemCountCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Ecom_GetTransactionCount)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Ecom_GetTransactionCount)); + EOS_Ecom_GetTransactionCount = (EOS_Ecom_GetTransactionCountCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Ecom_GetTransactionCountCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Ecom_KeyImageInfo_Release)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Ecom_KeyImageInfo_Release)); + EOS_Ecom_KeyImageInfo_Release = (EOS_Ecom_KeyImageInfo_ReleaseCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Ecom_KeyImageInfo_ReleaseCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Ecom_QueryEntitlements)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Ecom_QueryEntitlements)); + EOS_Ecom_QueryEntitlements = (EOS_Ecom_QueryEntitlementsCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Ecom_QueryEntitlementsCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Ecom_QueryOffers)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Ecom_QueryOffers)); + EOS_Ecom_QueryOffers = (EOS_Ecom_QueryOffersCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Ecom_QueryOffersCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Ecom_QueryOwnership)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Ecom_QueryOwnership)); + EOS_Ecom_QueryOwnership = (EOS_Ecom_QueryOwnershipCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Ecom_QueryOwnershipCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Ecom_QueryOwnershipToken)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Ecom_QueryOwnershipToken)); + EOS_Ecom_QueryOwnershipToken = (EOS_Ecom_QueryOwnershipTokenCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Ecom_QueryOwnershipTokenCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Ecom_RedeemEntitlements)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Ecom_RedeemEntitlements)); + EOS_Ecom_RedeemEntitlements = (EOS_Ecom_RedeemEntitlementsCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Ecom_RedeemEntitlementsCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Ecom_Transaction_CopyEntitlementByIndex)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Ecom_Transaction_CopyEntitlementByIndex)); + EOS_Ecom_Transaction_CopyEntitlementByIndex = (EOS_Ecom_Transaction_CopyEntitlementByIndexCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Ecom_Transaction_CopyEntitlementByIndexCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Ecom_Transaction_GetEntitlementsCount)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Ecom_Transaction_GetEntitlementsCount)); + EOS_Ecom_Transaction_GetEntitlementsCount = (EOS_Ecom_Transaction_GetEntitlementsCountCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Ecom_Transaction_GetEntitlementsCountCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Ecom_Transaction_GetTransactionId)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Ecom_Transaction_GetTransactionId)); + EOS_Ecom_Transaction_GetTransactionId = (EOS_Ecom_Transaction_GetTransactionIdCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Ecom_Transaction_GetTransactionIdCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Ecom_Transaction_Release)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Ecom_Transaction_Release)); + EOS_Ecom_Transaction_Release = (EOS_Ecom_Transaction_ReleaseCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Ecom_Transaction_ReleaseCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_EpicAccountId_FromString)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_EpicAccountId_FromString)); + EOS_EpicAccountId_FromString = (EOS_EpicAccountId_FromStringCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_EpicAccountId_FromStringCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_EpicAccountId_IsValid)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_EpicAccountId_IsValid)); + EOS_EpicAccountId_IsValid = (EOS_EpicAccountId_IsValidCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_EpicAccountId_IsValidCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_EpicAccountId_ToString)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_EpicAccountId_ToString)); + EOS_EpicAccountId_ToString = (EOS_EpicAccountId_ToStringCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_EpicAccountId_ToStringCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Friends_AcceptInvite)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Friends_AcceptInvite)); + EOS_Friends_AcceptInvite = (EOS_Friends_AcceptInviteCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Friends_AcceptInviteCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Friends_AddNotifyFriendsUpdate)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Friends_AddNotifyFriendsUpdate)); + EOS_Friends_AddNotifyFriendsUpdate = (EOS_Friends_AddNotifyFriendsUpdateCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Friends_AddNotifyFriendsUpdateCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Friends_GetFriendAtIndex)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Friends_GetFriendAtIndex)); + EOS_Friends_GetFriendAtIndex = (EOS_Friends_GetFriendAtIndexCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Friends_GetFriendAtIndexCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Friends_GetFriendsCount)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Friends_GetFriendsCount)); + EOS_Friends_GetFriendsCount = (EOS_Friends_GetFriendsCountCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Friends_GetFriendsCountCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Friends_GetStatus)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Friends_GetStatus)); + EOS_Friends_GetStatus = (EOS_Friends_GetStatusCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Friends_GetStatusCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Friends_QueryFriends)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Friends_QueryFriends)); + EOS_Friends_QueryFriends = (EOS_Friends_QueryFriendsCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Friends_QueryFriendsCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Friends_RejectInvite)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Friends_RejectInvite)); + EOS_Friends_RejectInvite = (EOS_Friends_RejectInviteCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Friends_RejectInviteCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Friends_RemoveNotifyFriendsUpdate)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Friends_RemoveNotifyFriendsUpdate)); + EOS_Friends_RemoveNotifyFriendsUpdate = (EOS_Friends_RemoveNotifyFriendsUpdateCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Friends_RemoveNotifyFriendsUpdateCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Friends_SendInvite)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Friends_SendInvite)); + EOS_Friends_SendInvite = (EOS_Friends_SendInviteCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Friends_SendInviteCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Initialize)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Initialize)); + EOS_Initialize = (EOS_InitializeCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_InitializeCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_KWS_AddNotifyPermissionsUpdateReceived)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_KWS_AddNotifyPermissionsUpdateReceived)); + EOS_KWS_AddNotifyPermissionsUpdateReceived = (EOS_KWS_AddNotifyPermissionsUpdateReceivedCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_KWS_AddNotifyPermissionsUpdateReceivedCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_KWS_CopyPermissionByIndex)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_KWS_CopyPermissionByIndex)); + EOS_KWS_CopyPermissionByIndex = (EOS_KWS_CopyPermissionByIndexCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_KWS_CopyPermissionByIndexCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_KWS_CreateUser)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_KWS_CreateUser)); + EOS_KWS_CreateUser = (EOS_KWS_CreateUserCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_KWS_CreateUserCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_KWS_GetPermissionByKey)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_KWS_GetPermissionByKey)); + EOS_KWS_GetPermissionByKey = (EOS_KWS_GetPermissionByKeyCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_KWS_GetPermissionByKeyCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_KWS_GetPermissionsCount)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_KWS_GetPermissionsCount)); + EOS_KWS_GetPermissionsCount = (EOS_KWS_GetPermissionsCountCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_KWS_GetPermissionsCountCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_KWS_PermissionStatus_Release)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_KWS_PermissionStatus_Release)); + EOS_KWS_PermissionStatus_Release = (EOS_KWS_PermissionStatus_ReleaseCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_KWS_PermissionStatus_ReleaseCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_KWS_QueryAgeGate)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_KWS_QueryAgeGate)); + EOS_KWS_QueryAgeGate = (EOS_KWS_QueryAgeGateCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_KWS_QueryAgeGateCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_KWS_QueryPermissions)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_KWS_QueryPermissions)); + EOS_KWS_QueryPermissions = (EOS_KWS_QueryPermissionsCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_KWS_QueryPermissionsCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_KWS_RemoveNotifyPermissionsUpdateReceived)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_KWS_RemoveNotifyPermissionsUpdateReceived)); + EOS_KWS_RemoveNotifyPermissionsUpdateReceived = (EOS_KWS_RemoveNotifyPermissionsUpdateReceivedCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_KWS_RemoveNotifyPermissionsUpdateReceivedCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_KWS_RequestPermissions)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_KWS_RequestPermissions)); + EOS_KWS_RequestPermissions = (EOS_KWS_RequestPermissionsCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_KWS_RequestPermissionsCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_KWS_UpdateParentEmail)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_KWS_UpdateParentEmail)); + EOS_KWS_UpdateParentEmail = (EOS_KWS_UpdateParentEmailCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_KWS_UpdateParentEmailCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Leaderboards_CopyLeaderboardDefinitionByIndex)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Leaderboards_CopyLeaderboardDefinitionByIndex)); + EOS_Leaderboards_CopyLeaderboardDefinitionByIndex = (EOS_Leaderboards_CopyLeaderboardDefinitionByIndexCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Leaderboards_CopyLeaderboardDefinitionByIndexCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Leaderboards_CopyLeaderboardDefinitionByLeaderboardId)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Leaderboards_CopyLeaderboardDefinitionByLeaderboardId)); + EOS_Leaderboards_CopyLeaderboardDefinitionByLeaderboardId = (EOS_Leaderboards_CopyLeaderboardDefinitionByLeaderboardIdCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Leaderboards_CopyLeaderboardDefinitionByLeaderboardIdCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Leaderboards_CopyLeaderboardRecordByIndex)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Leaderboards_CopyLeaderboardRecordByIndex)); + EOS_Leaderboards_CopyLeaderboardRecordByIndex = (EOS_Leaderboards_CopyLeaderboardRecordByIndexCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Leaderboards_CopyLeaderboardRecordByIndexCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Leaderboards_CopyLeaderboardRecordByUserId)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Leaderboards_CopyLeaderboardRecordByUserId)); + EOS_Leaderboards_CopyLeaderboardRecordByUserId = (EOS_Leaderboards_CopyLeaderboardRecordByUserIdCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Leaderboards_CopyLeaderboardRecordByUserIdCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Leaderboards_CopyLeaderboardUserScoreByIndex)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Leaderboards_CopyLeaderboardUserScoreByIndex)); + EOS_Leaderboards_CopyLeaderboardUserScoreByIndex = (EOS_Leaderboards_CopyLeaderboardUserScoreByIndexCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Leaderboards_CopyLeaderboardUserScoreByIndexCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Leaderboards_CopyLeaderboardUserScoreByUserId)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Leaderboards_CopyLeaderboardUserScoreByUserId)); + EOS_Leaderboards_CopyLeaderboardUserScoreByUserId = (EOS_Leaderboards_CopyLeaderboardUserScoreByUserIdCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Leaderboards_CopyLeaderboardUserScoreByUserIdCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Leaderboards_Definition_Release)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Leaderboards_Definition_Release)); + EOS_Leaderboards_Definition_Release = (EOS_Leaderboards_Definition_ReleaseCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Leaderboards_Definition_ReleaseCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Leaderboards_GetLeaderboardDefinitionCount)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Leaderboards_GetLeaderboardDefinitionCount)); + EOS_Leaderboards_GetLeaderboardDefinitionCount = (EOS_Leaderboards_GetLeaderboardDefinitionCountCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Leaderboards_GetLeaderboardDefinitionCountCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Leaderboards_GetLeaderboardRecordCount)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Leaderboards_GetLeaderboardRecordCount)); + EOS_Leaderboards_GetLeaderboardRecordCount = (EOS_Leaderboards_GetLeaderboardRecordCountCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Leaderboards_GetLeaderboardRecordCountCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Leaderboards_GetLeaderboardUserScoreCount)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Leaderboards_GetLeaderboardUserScoreCount)); + EOS_Leaderboards_GetLeaderboardUserScoreCount = (EOS_Leaderboards_GetLeaderboardUserScoreCountCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Leaderboards_GetLeaderboardUserScoreCountCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Leaderboards_LeaderboardDefinition_Release)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Leaderboards_LeaderboardDefinition_Release)); + EOS_Leaderboards_LeaderboardDefinition_Release = (EOS_Leaderboards_LeaderboardDefinition_ReleaseCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Leaderboards_LeaderboardDefinition_ReleaseCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Leaderboards_LeaderboardRecord_Release)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Leaderboards_LeaderboardRecord_Release)); + EOS_Leaderboards_LeaderboardRecord_Release = (EOS_Leaderboards_LeaderboardRecord_ReleaseCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Leaderboards_LeaderboardRecord_ReleaseCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Leaderboards_LeaderboardUserScore_Release)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Leaderboards_LeaderboardUserScore_Release)); + EOS_Leaderboards_LeaderboardUserScore_Release = (EOS_Leaderboards_LeaderboardUserScore_ReleaseCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Leaderboards_LeaderboardUserScore_ReleaseCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Leaderboards_QueryLeaderboardDefinitions)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Leaderboards_QueryLeaderboardDefinitions)); + EOS_Leaderboards_QueryLeaderboardDefinitions = (EOS_Leaderboards_QueryLeaderboardDefinitionsCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Leaderboards_QueryLeaderboardDefinitionsCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Leaderboards_QueryLeaderboardRanks)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Leaderboards_QueryLeaderboardRanks)); + EOS_Leaderboards_QueryLeaderboardRanks = (EOS_Leaderboards_QueryLeaderboardRanksCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Leaderboards_QueryLeaderboardRanksCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Leaderboards_QueryLeaderboardUserScores)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Leaderboards_QueryLeaderboardUserScores)); + EOS_Leaderboards_QueryLeaderboardUserScores = (EOS_Leaderboards_QueryLeaderboardUserScoresCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Leaderboards_QueryLeaderboardUserScoresCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_LobbyDetails_CopyAttributeByIndex)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_LobbyDetails_CopyAttributeByIndex)); + EOS_LobbyDetails_CopyAttributeByIndex = (EOS_LobbyDetails_CopyAttributeByIndexCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_LobbyDetails_CopyAttributeByIndexCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_LobbyDetails_CopyAttributeByKey)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_LobbyDetails_CopyAttributeByKey)); + EOS_LobbyDetails_CopyAttributeByKey = (EOS_LobbyDetails_CopyAttributeByKeyCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_LobbyDetails_CopyAttributeByKeyCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_LobbyDetails_CopyInfo)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_LobbyDetails_CopyInfo)); + EOS_LobbyDetails_CopyInfo = (EOS_LobbyDetails_CopyInfoCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_LobbyDetails_CopyInfoCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_LobbyDetails_CopyMemberAttributeByIndex)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_LobbyDetails_CopyMemberAttributeByIndex)); + EOS_LobbyDetails_CopyMemberAttributeByIndex = (EOS_LobbyDetails_CopyMemberAttributeByIndexCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_LobbyDetails_CopyMemberAttributeByIndexCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_LobbyDetails_CopyMemberAttributeByKey)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_LobbyDetails_CopyMemberAttributeByKey)); + EOS_LobbyDetails_CopyMemberAttributeByKey = (EOS_LobbyDetails_CopyMemberAttributeByKeyCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_LobbyDetails_CopyMemberAttributeByKeyCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_LobbyDetails_GetAttributeCount)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_LobbyDetails_GetAttributeCount)); + EOS_LobbyDetails_GetAttributeCount = (EOS_LobbyDetails_GetAttributeCountCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_LobbyDetails_GetAttributeCountCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_LobbyDetails_GetLobbyOwner)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_LobbyDetails_GetLobbyOwner)); + EOS_LobbyDetails_GetLobbyOwner = (EOS_LobbyDetails_GetLobbyOwnerCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_LobbyDetails_GetLobbyOwnerCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_LobbyDetails_GetMemberAttributeCount)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_LobbyDetails_GetMemberAttributeCount)); + EOS_LobbyDetails_GetMemberAttributeCount = (EOS_LobbyDetails_GetMemberAttributeCountCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_LobbyDetails_GetMemberAttributeCountCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_LobbyDetails_GetMemberByIndex)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_LobbyDetails_GetMemberByIndex)); + EOS_LobbyDetails_GetMemberByIndex = (EOS_LobbyDetails_GetMemberByIndexCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_LobbyDetails_GetMemberByIndexCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_LobbyDetails_GetMemberCount)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_LobbyDetails_GetMemberCount)); + EOS_LobbyDetails_GetMemberCount = (EOS_LobbyDetails_GetMemberCountCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_LobbyDetails_GetMemberCountCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_LobbyDetails_Info_Release)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_LobbyDetails_Info_Release)); + EOS_LobbyDetails_Info_Release = (EOS_LobbyDetails_Info_ReleaseCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_LobbyDetails_Info_ReleaseCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_LobbyDetails_Release)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_LobbyDetails_Release)); + EOS_LobbyDetails_Release = (EOS_LobbyDetails_ReleaseCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_LobbyDetails_ReleaseCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_LobbyModification_AddAttribute)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_LobbyModification_AddAttribute)); + EOS_LobbyModification_AddAttribute = (EOS_LobbyModification_AddAttributeCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_LobbyModification_AddAttributeCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_LobbyModification_AddMemberAttribute)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_LobbyModification_AddMemberAttribute)); + EOS_LobbyModification_AddMemberAttribute = (EOS_LobbyModification_AddMemberAttributeCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_LobbyModification_AddMemberAttributeCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_LobbyModification_Release)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_LobbyModification_Release)); + EOS_LobbyModification_Release = (EOS_LobbyModification_ReleaseCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_LobbyModification_ReleaseCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_LobbyModification_RemoveAttribute)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_LobbyModification_RemoveAttribute)); + EOS_LobbyModification_RemoveAttribute = (EOS_LobbyModification_RemoveAttributeCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_LobbyModification_RemoveAttributeCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_LobbyModification_RemoveMemberAttribute)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_LobbyModification_RemoveMemberAttribute)); + EOS_LobbyModification_RemoveMemberAttribute = (EOS_LobbyModification_RemoveMemberAttributeCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_LobbyModification_RemoveMemberAttributeCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_LobbyModification_SetBucketId)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_LobbyModification_SetBucketId)); + EOS_LobbyModification_SetBucketId = (EOS_LobbyModification_SetBucketIdCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_LobbyModification_SetBucketIdCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_LobbyModification_SetInvitesAllowed)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_LobbyModification_SetInvitesAllowed)); + EOS_LobbyModification_SetInvitesAllowed = (EOS_LobbyModification_SetInvitesAllowedCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_LobbyModification_SetInvitesAllowedCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_LobbyModification_SetMaxMembers)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_LobbyModification_SetMaxMembers)); + EOS_LobbyModification_SetMaxMembers = (EOS_LobbyModification_SetMaxMembersCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_LobbyModification_SetMaxMembersCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_LobbyModification_SetPermissionLevel)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_LobbyModification_SetPermissionLevel)); + EOS_LobbyModification_SetPermissionLevel = (EOS_LobbyModification_SetPermissionLevelCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_LobbyModification_SetPermissionLevelCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_LobbySearch_CopySearchResultByIndex)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_LobbySearch_CopySearchResultByIndex)); + EOS_LobbySearch_CopySearchResultByIndex = (EOS_LobbySearch_CopySearchResultByIndexCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_LobbySearch_CopySearchResultByIndexCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_LobbySearch_Find)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_LobbySearch_Find)); + EOS_LobbySearch_Find = (EOS_LobbySearch_FindCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_LobbySearch_FindCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_LobbySearch_GetSearchResultCount)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_LobbySearch_GetSearchResultCount)); + EOS_LobbySearch_GetSearchResultCount = (EOS_LobbySearch_GetSearchResultCountCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_LobbySearch_GetSearchResultCountCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_LobbySearch_Release)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_LobbySearch_Release)); + EOS_LobbySearch_Release = (EOS_LobbySearch_ReleaseCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_LobbySearch_ReleaseCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_LobbySearch_RemoveParameter)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_LobbySearch_RemoveParameter)); + EOS_LobbySearch_RemoveParameter = (EOS_LobbySearch_RemoveParameterCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_LobbySearch_RemoveParameterCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_LobbySearch_SetLobbyId)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_LobbySearch_SetLobbyId)); + EOS_LobbySearch_SetLobbyId = (EOS_LobbySearch_SetLobbyIdCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_LobbySearch_SetLobbyIdCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_LobbySearch_SetMaxResults)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_LobbySearch_SetMaxResults)); + EOS_LobbySearch_SetMaxResults = (EOS_LobbySearch_SetMaxResultsCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_LobbySearch_SetMaxResultsCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_LobbySearch_SetParameter)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_LobbySearch_SetParameter)); + EOS_LobbySearch_SetParameter = (EOS_LobbySearch_SetParameterCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_LobbySearch_SetParameterCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_LobbySearch_SetTargetUserId)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_LobbySearch_SetTargetUserId)); + EOS_LobbySearch_SetTargetUserId = (EOS_LobbySearch_SetTargetUserIdCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_LobbySearch_SetTargetUserIdCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Lobby_AddNotifyJoinLobbyAccepted)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Lobby_AddNotifyJoinLobbyAccepted)); + EOS_Lobby_AddNotifyJoinLobbyAccepted = (EOS_Lobby_AddNotifyJoinLobbyAcceptedCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Lobby_AddNotifyJoinLobbyAcceptedCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Lobby_AddNotifyLobbyInviteAccepted)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Lobby_AddNotifyLobbyInviteAccepted)); + EOS_Lobby_AddNotifyLobbyInviteAccepted = (EOS_Lobby_AddNotifyLobbyInviteAcceptedCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Lobby_AddNotifyLobbyInviteAcceptedCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Lobby_AddNotifyLobbyInviteReceived)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Lobby_AddNotifyLobbyInviteReceived)); + EOS_Lobby_AddNotifyLobbyInviteReceived = (EOS_Lobby_AddNotifyLobbyInviteReceivedCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Lobby_AddNotifyLobbyInviteReceivedCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Lobby_AddNotifyLobbyMemberStatusReceived)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Lobby_AddNotifyLobbyMemberStatusReceived)); + EOS_Lobby_AddNotifyLobbyMemberStatusReceived = (EOS_Lobby_AddNotifyLobbyMemberStatusReceivedCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Lobby_AddNotifyLobbyMemberStatusReceivedCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Lobby_AddNotifyLobbyMemberUpdateReceived)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Lobby_AddNotifyLobbyMemberUpdateReceived)); + EOS_Lobby_AddNotifyLobbyMemberUpdateReceived = (EOS_Lobby_AddNotifyLobbyMemberUpdateReceivedCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Lobby_AddNotifyLobbyMemberUpdateReceivedCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Lobby_AddNotifyLobbyUpdateReceived)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Lobby_AddNotifyLobbyUpdateReceived)); + EOS_Lobby_AddNotifyLobbyUpdateReceived = (EOS_Lobby_AddNotifyLobbyUpdateReceivedCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Lobby_AddNotifyLobbyUpdateReceivedCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Lobby_AddNotifyRTCRoomConnectionChanged)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Lobby_AddNotifyRTCRoomConnectionChanged)); + EOS_Lobby_AddNotifyRTCRoomConnectionChanged = (EOS_Lobby_AddNotifyRTCRoomConnectionChangedCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Lobby_AddNotifyRTCRoomConnectionChangedCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Lobby_Attribute_Release)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Lobby_Attribute_Release)); + EOS_Lobby_Attribute_Release = (EOS_Lobby_Attribute_ReleaseCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Lobby_Attribute_ReleaseCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Lobby_CopyLobbyDetailsHandle)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Lobby_CopyLobbyDetailsHandle)); + EOS_Lobby_CopyLobbyDetailsHandle = (EOS_Lobby_CopyLobbyDetailsHandleCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Lobby_CopyLobbyDetailsHandleCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Lobby_CopyLobbyDetailsHandleByInviteId)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Lobby_CopyLobbyDetailsHandleByInviteId)); + EOS_Lobby_CopyLobbyDetailsHandleByInviteId = (EOS_Lobby_CopyLobbyDetailsHandleByInviteIdCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Lobby_CopyLobbyDetailsHandleByInviteIdCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Lobby_CopyLobbyDetailsHandleByUiEventId)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Lobby_CopyLobbyDetailsHandleByUiEventId)); + EOS_Lobby_CopyLobbyDetailsHandleByUiEventId = (EOS_Lobby_CopyLobbyDetailsHandleByUiEventIdCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Lobby_CopyLobbyDetailsHandleByUiEventIdCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Lobby_CreateLobby)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Lobby_CreateLobby)); + EOS_Lobby_CreateLobby = (EOS_Lobby_CreateLobbyCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Lobby_CreateLobbyCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Lobby_CreateLobbySearch)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Lobby_CreateLobbySearch)); + EOS_Lobby_CreateLobbySearch = (EOS_Lobby_CreateLobbySearchCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Lobby_CreateLobbySearchCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Lobby_DestroyLobby)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Lobby_DestroyLobby)); + EOS_Lobby_DestroyLobby = (EOS_Lobby_DestroyLobbyCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Lobby_DestroyLobbyCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Lobby_GetInviteCount)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Lobby_GetInviteCount)); + EOS_Lobby_GetInviteCount = (EOS_Lobby_GetInviteCountCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Lobby_GetInviteCountCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Lobby_GetInviteIdByIndex)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Lobby_GetInviteIdByIndex)); + EOS_Lobby_GetInviteIdByIndex = (EOS_Lobby_GetInviteIdByIndexCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Lobby_GetInviteIdByIndexCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Lobby_GetRTCRoomName)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Lobby_GetRTCRoomName)); + EOS_Lobby_GetRTCRoomName = (EOS_Lobby_GetRTCRoomNameCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Lobby_GetRTCRoomNameCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Lobby_IsRTCRoomConnected)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Lobby_IsRTCRoomConnected)); + EOS_Lobby_IsRTCRoomConnected = (EOS_Lobby_IsRTCRoomConnectedCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Lobby_IsRTCRoomConnectedCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Lobby_JoinLobby)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Lobby_JoinLobby)); + EOS_Lobby_JoinLobby = (EOS_Lobby_JoinLobbyCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Lobby_JoinLobbyCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Lobby_KickMember)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Lobby_KickMember)); + EOS_Lobby_KickMember = (EOS_Lobby_KickMemberCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Lobby_KickMemberCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Lobby_LeaveLobby)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Lobby_LeaveLobby)); + EOS_Lobby_LeaveLobby = (EOS_Lobby_LeaveLobbyCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Lobby_LeaveLobbyCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Lobby_PromoteMember)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Lobby_PromoteMember)); + EOS_Lobby_PromoteMember = (EOS_Lobby_PromoteMemberCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Lobby_PromoteMemberCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Lobby_QueryInvites)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Lobby_QueryInvites)); + EOS_Lobby_QueryInvites = (EOS_Lobby_QueryInvitesCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Lobby_QueryInvitesCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Lobby_RejectInvite)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Lobby_RejectInvite)); + EOS_Lobby_RejectInvite = (EOS_Lobby_RejectInviteCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Lobby_RejectInviteCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Lobby_RemoveNotifyJoinLobbyAccepted)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Lobby_RemoveNotifyJoinLobbyAccepted)); + EOS_Lobby_RemoveNotifyJoinLobbyAccepted = (EOS_Lobby_RemoveNotifyJoinLobbyAcceptedCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Lobby_RemoveNotifyJoinLobbyAcceptedCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Lobby_RemoveNotifyLobbyInviteAccepted)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Lobby_RemoveNotifyLobbyInviteAccepted)); + EOS_Lobby_RemoveNotifyLobbyInviteAccepted = (EOS_Lobby_RemoveNotifyLobbyInviteAcceptedCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Lobby_RemoveNotifyLobbyInviteAcceptedCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Lobby_RemoveNotifyLobbyInviteReceived)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Lobby_RemoveNotifyLobbyInviteReceived)); + EOS_Lobby_RemoveNotifyLobbyInviteReceived = (EOS_Lobby_RemoveNotifyLobbyInviteReceivedCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Lobby_RemoveNotifyLobbyInviteReceivedCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Lobby_RemoveNotifyLobbyMemberStatusReceived)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Lobby_RemoveNotifyLobbyMemberStatusReceived)); + EOS_Lobby_RemoveNotifyLobbyMemberStatusReceived = (EOS_Lobby_RemoveNotifyLobbyMemberStatusReceivedCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Lobby_RemoveNotifyLobbyMemberStatusReceivedCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Lobby_RemoveNotifyLobbyMemberUpdateReceived)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Lobby_RemoveNotifyLobbyMemberUpdateReceived)); + EOS_Lobby_RemoveNotifyLobbyMemberUpdateReceived = (EOS_Lobby_RemoveNotifyLobbyMemberUpdateReceivedCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Lobby_RemoveNotifyLobbyMemberUpdateReceivedCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Lobby_RemoveNotifyLobbyUpdateReceived)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Lobby_RemoveNotifyLobbyUpdateReceived)); + EOS_Lobby_RemoveNotifyLobbyUpdateReceived = (EOS_Lobby_RemoveNotifyLobbyUpdateReceivedCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Lobby_RemoveNotifyLobbyUpdateReceivedCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Lobby_RemoveNotifyRTCRoomConnectionChanged)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Lobby_RemoveNotifyRTCRoomConnectionChanged)); + EOS_Lobby_RemoveNotifyRTCRoomConnectionChanged = (EOS_Lobby_RemoveNotifyRTCRoomConnectionChangedCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Lobby_RemoveNotifyRTCRoomConnectionChangedCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Lobby_SendInvite)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Lobby_SendInvite)); + EOS_Lobby_SendInvite = (EOS_Lobby_SendInviteCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Lobby_SendInviteCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Lobby_UpdateLobby)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Lobby_UpdateLobby)); + EOS_Lobby_UpdateLobby = (EOS_Lobby_UpdateLobbyCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Lobby_UpdateLobbyCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Lobby_UpdateLobbyModification)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Lobby_UpdateLobbyModification)); + EOS_Lobby_UpdateLobbyModification = (EOS_Lobby_UpdateLobbyModificationCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Lobby_UpdateLobbyModificationCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Logging_SetCallback)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Logging_SetCallback)); + EOS_Logging_SetCallback = (EOS_Logging_SetCallbackCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Logging_SetCallbackCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Logging_SetLogLevel)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Logging_SetLogLevel)); + EOS_Logging_SetLogLevel = (EOS_Logging_SetLogLevelCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Logging_SetLogLevelCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Metrics_BeginPlayerSession)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Metrics_BeginPlayerSession)); + EOS_Metrics_BeginPlayerSession = (EOS_Metrics_BeginPlayerSessionCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Metrics_BeginPlayerSessionCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Metrics_EndPlayerSession)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Metrics_EndPlayerSession)); + EOS_Metrics_EndPlayerSession = (EOS_Metrics_EndPlayerSessionCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Metrics_EndPlayerSessionCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Mods_CopyModInfo)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Mods_CopyModInfo)); + EOS_Mods_CopyModInfo = (EOS_Mods_CopyModInfoCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Mods_CopyModInfoCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Mods_EnumerateMods)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Mods_EnumerateMods)); + EOS_Mods_EnumerateMods = (EOS_Mods_EnumerateModsCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Mods_EnumerateModsCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Mods_InstallMod)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Mods_InstallMod)); + EOS_Mods_InstallMod = (EOS_Mods_InstallModCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Mods_InstallModCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Mods_ModInfo_Release)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Mods_ModInfo_Release)); + EOS_Mods_ModInfo_Release = (EOS_Mods_ModInfo_ReleaseCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Mods_ModInfo_ReleaseCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Mods_UninstallMod)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Mods_UninstallMod)); + EOS_Mods_UninstallMod = (EOS_Mods_UninstallModCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Mods_UninstallModCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Mods_UpdateMod)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Mods_UpdateMod)); + EOS_Mods_UpdateMod = (EOS_Mods_UpdateModCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Mods_UpdateModCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_P2P_AcceptConnection)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_P2P_AcceptConnection)); + EOS_P2P_AcceptConnection = (EOS_P2P_AcceptConnectionCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_P2P_AcceptConnectionCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_P2P_AddNotifyIncomingPacketQueueFull)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_P2P_AddNotifyIncomingPacketQueueFull)); + EOS_P2P_AddNotifyIncomingPacketQueueFull = (EOS_P2P_AddNotifyIncomingPacketQueueFullCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_P2P_AddNotifyIncomingPacketQueueFullCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_P2P_AddNotifyPeerConnectionClosed)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_P2P_AddNotifyPeerConnectionClosed)); + EOS_P2P_AddNotifyPeerConnectionClosed = (EOS_P2P_AddNotifyPeerConnectionClosedCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_P2P_AddNotifyPeerConnectionClosedCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_P2P_AddNotifyPeerConnectionRequest)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_P2P_AddNotifyPeerConnectionRequest)); + EOS_P2P_AddNotifyPeerConnectionRequest = (EOS_P2P_AddNotifyPeerConnectionRequestCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_P2P_AddNotifyPeerConnectionRequestCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_P2P_CloseConnection)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_P2P_CloseConnection)); + EOS_P2P_CloseConnection = (EOS_P2P_CloseConnectionCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_P2P_CloseConnectionCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_P2P_CloseConnections)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_P2P_CloseConnections)); + EOS_P2P_CloseConnections = (EOS_P2P_CloseConnectionsCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_P2P_CloseConnectionsCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_P2P_GetNATType)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_P2P_GetNATType)); + EOS_P2P_GetNATType = (EOS_P2P_GetNATTypeCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_P2P_GetNATTypeCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_P2P_GetNextReceivedPacketSize)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_P2P_GetNextReceivedPacketSize)); + EOS_P2P_GetNextReceivedPacketSize = (EOS_P2P_GetNextReceivedPacketSizeCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_P2P_GetNextReceivedPacketSizeCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_P2P_GetPacketQueueInfo)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_P2P_GetPacketQueueInfo)); + EOS_P2P_GetPacketQueueInfo = (EOS_P2P_GetPacketQueueInfoCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_P2P_GetPacketQueueInfoCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_P2P_GetPortRange)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_P2P_GetPortRange)); + EOS_P2P_GetPortRange = (EOS_P2P_GetPortRangeCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_P2P_GetPortRangeCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_P2P_GetRelayControl)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_P2P_GetRelayControl)); + EOS_P2P_GetRelayControl = (EOS_P2P_GetRelayControlCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_P2P_GetRelayControlCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_P2P_QueryNATType)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_P2P_QueryNATType)); + EOS_P2P_QueryNATType = (EOS_P2P_QueryNATTypeCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_P2P_QueryNATTypeCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_P2P_ReceivePacket)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_P2P_ReceivePacket)); + EOS_P2P_ReceivePacket = (EOS_P2P_ReceivePacketCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_P2P_ReceivePacketCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_P2P_RemoveNotifyIncomingPacketQueueFull)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_P2P_RemoveNotifyIncomingPacketQueueFull)); + EOS_P2P_RemoveNotifyIncomingPacketQueueFull = (EOS_P2P_RemoveNotifyIncomingPacketQueueFullCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_P2P_RemoveNotifyIncomingPacketQueueFullCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_P2P_RemoveNotifyPeerConnectionClosed)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_P2P_RemoveNotifyPeerConnectionClosed)); + EOS_P2P_RemoveNotifyPeerConnectionClosed = (EOS_P2P_RemoveNotifyPeerConnectionClosedCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_P2P_RemoveNotifyPeerConnectionClosedCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_P2P_RemoveNotifyPeerConnectionRequest)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_P2P_RemoveNotifyPeerConnectionRequest)); + EOS_P2P_RemoveNotifyPeerConnectionRequest = (EOS_P2P_RemoveNotifyPeerConnectionRequestCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_P2P_RemoveNotifyPeerConnectionRequestCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_P2P_SendPacket)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_P2P_SendPacket)); + EOS_P2P_SendPacket = (EOS_P2P_SendPacketCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_P2P_SendPacketCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_P2P_SetPacketQueueSize)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_P2P_SetPacketQueueSize)); + EOS_P2P_SetPacketQueueSize = (EOS_P2P_SetPacketQueueSizeCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_P2P_SetPacketQueueSizeCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_P2P_SetPortRange)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_P2P_SetPortRange)); + EOS_P2P_SetPortRange = (EOS_P2P_SetPortRangeCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_P2P_SetPortRangeCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_P2P_SetRelayControl)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_P2P_SetRelayControl)); + EOS_P2P_SetRelayControl = (EOS_P2P_SetRelayControlCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_P2P_SetRelayControlCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Platform_CheckForLauncherAndRestart)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Platform_CheckForLauncherAndRestart)); + EOS_Platform_CheckForLauncherAndRestart = (EOS_Platform_CheckForLauncherAndRestartCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Platform_CheckForLauncherAndRestartCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Platform_Create)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Platform_Create)); + EOS_Platform_Create = (EOS_Platform_CreateCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Platform_CreateCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Platform_GetAchievementsInterface)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Platform_GetAchievementsInterface)); + EOS_Platform_GetAchievementsInterface = (EOS_Platform_GetAchievementsInterfaceCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Platform_GetAchievementsInterfaceCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Platform_GetActiveCountryCode)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Platform_GetActiveCountryCode)); + EOS_Platform_GetActiveCountryCode = (EOS_Platform_GetActiveCountryCodeCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Platform_GetActiveCountryCodeCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Platform_GetActiveLocaleCode)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Platform_GetActiveLocaleCode)); + EOS_Platform_GetActiveLocaleCode = (EOS_Platform_GetActiveLocaleCodeCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Platform_GetActiveLocaleCodeCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Platform_GetAntiCheatClientInterface)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Platform_GetAntiCheatClientInterface)); + EOS_Platform_GetAntiCheatClientInterface = (EOS_Platform_GetAntiCheatClientInterfaceCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Platform_GetAntiCheatClientInterfaceCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Platform_GetAntiCheatServerInterface)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Platform_GetAntiCheatServerInterface)); + EOS_Platform_GetAntiCheatServerInterface = (EOS_Platform_GetAntiCheatServerInterfaceCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Platform_GetAntiCheatServerInterfaceCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Platform_GetAuthInterface)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Platform_GetAuthInterface)); + EOS_Platform_GetAuthInterface = (EOS_Platform_GetAuthInterfaceCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Platform_GetAuthInterfaceCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Platform_GetConnectInterface)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Platform_GetConnectInterface)); + EOS_Platform_GetConnectInterface = (EOS_Platform_GetConnectInterfaceCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Platform_GetConnectInterfaceCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Platform_GetEcomInterface)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Platform_GetEcomInterface)); + EOS_Platform_GetEcomInterface = (EOS_Platform_GetEcomInterfaceCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Platform_GetEcomInterfaceCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Platform_GetFriendsInterface)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Platform_GetFriendsInterface)); + EOS_Platform_GetFriendsInterface = (EOS_Platform_GetFriendsInterfaceCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Platform_GetFriendsInterfaceCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Platform_GetKWSInterface)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Platform_GetKWSInterface)); + EOS_Platform_GetKWSInterface = (EOS_Platform_GetKWSInterfaceCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Platform_GetKWSInterfaceCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Platform_GetLeaderboardsInterface)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Platform_GetLeaderboardsInterface)); + EOS_Platform_GetLeaderboardsInterface = (EOS_Platform_GetLeaderboardsInterfaceCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Platform_GetLeaderboardsInterfaceCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Platform_GetLobbyInterface)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Platform_GetLobbyInterface)); + EOS_Platform_GetLobbyInterface = (EOS_Platform_GetLobbyInterfaceCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Platform_GetLobbyInterfaceCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Platform_GetMetricsInterface)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Platform_GetMetricsInterface)); + EOS_Platform_GetMetricsInterface = (EOS_Platform_GetMetricsInterfaceCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Platform_GetMetricsInterfaceCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Platform_GetModsInterface)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Platform_GetModsInterface)); + EOS_Platform_GetModsInterface = (EOS_Platform_GetModsInterfaceCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Platform_GetModsInterfaceCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Platform_GetOverrideCountryCode)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Platform_GetOverrideCountryCode)); + EOS_Platform_GetOverrideCountryCode = (EOS_Platform_GetOverrideCountryCodeCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Platform_GetOverrideCountryCodeCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Platform_GetOverrideLocaleCode)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Platform_GetOverrideLocaleCode)); + EOS_Platform_GetOverrideLocaleCode = (EOS_Platform_GetOverrideLocaleCodeCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Platform_GetOverrideLocaleCodeCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Platform_GetP2PInterface)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Platform_GetP2PInterface)); + EOS_Platform_GetP2PInterface = (EOS_Platform_GetP2PInterfaceCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Platform_GetP2PInterfaceCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Platform_GetPlayerDataStorageInterface)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Platform_GetPlayerDataStorageInterface)); + EOS_Platform_GetPlayerDataStorageInterface = (EOS_Platform_GetPlayerDataStorageInterfaceCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Platform_GetPlayerDataStorageInterfaceCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Platform_GetPresenceInterface)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Platform_GetPresenceInterface)); + EOS_Platform_GetPresenceInterface = (EOS_Platform_GetPresenceInterfaceCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Platform_GetPresenceInterfaceCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Platform_GetRTCAdminInterface)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Platform_GetRTCAdminInterface)); + EOS_Platform_GetRTCAdminInterface = (EOS_Platform_GetRTCAdminInterfaceCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Platform_GetRTCAdminInterfaceCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Platform_GetRTCInterface)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Platform_GetRTCInterface)); + EOS_Platform_GetRTCInterface = (EOS_Platform_GetRTCInterfaceCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Platform_GetRTCInterfaceCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Platform_GetReportsInterface)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Platform_GetReportsInterface)); + EOS_Platform_GetReportsInterface = (EOS_Platform_GetReportsInterfaceCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Platform_GetReportsInterfaceCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Platform_GetSanctionsInterface)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Platform_GetSanctionsInterface)); + EOS_Platform_GetSanctionsInterface = (EOS_Platform_GetSanctionsInterfaceCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Platform_GetSanctionsInterfaceCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Platform_GetSessionsInterface)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Platform_GetSessionsInterface)); + EOS_Platform_GetSessionsInterface = (EOS_Platform_GetSessionsInterfaceCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Platform_GetSessionsInterfaceCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Platform_GetStatsInterface)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Platform_GetStatsInterface)); + EOS_Platform_GetStatsInterface = (EOS_Platform_GetStatsInterfaceCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Platform_GetStatsInterfaceCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Platform_GetTitleStorageInterface)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Platform_GetTitleStorageInterface)); + EOS_Platform_GetTitleStorageInterface = (EOS_Platform_GetTitleStorageInterfaceCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Platform_GetTitleStorageInterfaceCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Platform_GetUIInterface)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Platform_GetUIInterface)); + EOS_Platform_GetUIInterface = (EOS_Platform_GetUIInterfaceCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Platform_GetUIInterfaceCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Platform_GetUserInfoInterface)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Platform_GetUserInfoInterface)); + EOS_Platform_GetUserInfoInterface = (EOS_Platform_GetUserInfoInterfaceCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Platform_GetUserInfoInterfaceCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Platform_Release)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Platform_Release)); + EOS_Platform_Release = (EOS_Platform_ReleaseCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Platform_ReleaseCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Platform_SetOverrideCountryCode)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Platform_SetOverrideCountryCode)); + EOS_Platform_SetOverrideCountryCode = (EOS_Platform_SetOverrideCountryCodeCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Platform_SetOverrideCountryCodeCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Platform_SetOverrideLocaleCode)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Platform_SetOverrideLocaleCode)); + EOS_Platform_SetOverrideLocaleCode = (EOS_Platform_SetOverrideLocaleCodeCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Platform_SetOverrideLocaleCodeCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Platform_Tick)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Platform_Tick)); + EOS_Platform_Tick = (EOS_Platform_TickCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Platform_TickCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_PlayerDataStorageFileTransferRequest_CancelRequest)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_PlayerDataStorageFileTransferRequest_CancelRequest)); + EOS_PlayerDataStorageFileTransferRequest_CancelRequest = (EOS_PlayerDataStorageFileTransferRequest_CancelRequestCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_PlayerDataStorageFileTransferRequest_CancelRequestCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_PlayerDataStorageFileTransferRequest_GetFileRequestState)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_PlayerDataStorageFileTransferRequest_GetFileRequestState)); + EOS_PlayerDataStorageFileTransferRequest_GetFileRequestState = (EOS_PlayerDataStorageFileTransferRequest_GetFileRequestStateCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_PlayerDataStorageFileTransferRequest_GetFileRequestStateCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_PlayerDataStorageFileTransferRequest_GetFilename)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_PlayerDataStorageFileTransferRequest_GetFilename)); + EOS_PlayerDataStorageFileTransferRequest_GetFilename = (EOS_PlayerDataStorageFileTransferRequest_GetFilenameCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_PlayerDataStorageFileTransferRequest_GetFilenameCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_PlayerDataStorageFileTransferRequest_Release)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_PlayerDataStorageFileTransferRequest_Release)); + EOS_PlayerDataStorageFileTransferRequest_Release = (EOS_PlayerDataStorageFileTransferRequest_ReleaseCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_PlayerDataStorageFileTransferRequest_ReleaseCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_PlayerDataStorage_CopyFileMetadataAtIndex)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_PlayerDataStorage_CopyFileMetadataAtIndex)); + EOS_PlayerDataStorage_CopyFileMetadataAtIndex = (EOS_PlayerDataStorage_CopyFileMetadataAtIndexCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_PlayerDataStorage_CopyFileMetadataAtIndexCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_PlayerDataStorage_CopyFileMetadataByFilename)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_PlayerDataStorage_CopyFileMetadataByFilename)); + EOS_PlayerDataStorage_CopyFileMetadataByFilename = (EOS_PlayerDataStorage_CopyFileMetadataByFilenameCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_PlayerDataStorage_CopyFileMetadataByFilenameCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_PlayerDataStorage_DeleteCache)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_PlayerDataStorage_DeleteCache)); + EOS_PlayerDataStorage_DeleteCache = (EOS_PlayerDataStorage_DeleteCacheCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_PlayerDataStorage_DeleteCacheCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_PlayerDataStorage_DeleteFile)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_PlayerDataStorage_DeleteFile)); + EOS_PlayerDataStorage_DeleteFile = (EOS_PlayerDataStorage_DeleteFileCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_PlayerDataStorage_DeleteFileCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_PlayerDataStorage_DuplicateFile)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_PlayerDataStorage_DuplicateFile)); + EOS_PlayerDataStorage_DuplicateFile = (EOS_PlayerDataStorage_DuplicateFileCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_PlayerDataStorage_DuplicateFileCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_PlayerDataStorage_FileMetadata_Release)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_PlayerDataStorage_FileMetadata_Release)); + EOS_PlayerDataStorage_FileMetadata_Release = (EOS_PlayerDataStorage_FileMetadata_ReleaseCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_PlayerDataStorage_FileMetadata_ReleaseCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_PlayerDataStorage_GetFileMetadataCount)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_PlayerDataStorage_GetFileMetadataCount)); + EOS_PlayerDataStorage_GetFileMetadataCount = (EOS_PlayerDataStorage_GetFileMetadataCountCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_PlayerDataStorage_GetFileMetadataCountCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_PlayerDataStorage_QueryFile)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_PlayerDataStorage_QueryFile)); + EOS_PlayerDataStorage_QueryFile = (EOS_PlayerDataStorage_QueryFileCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_PlayerDataStorage_QueryFileCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_PlayerDataStorage_QueryFileList)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_PlayerDataStorage_QueryFileList)); + EOS_PlayerDataStorage_QueryFileList = (EOS_PlayerDataStorage_QueryFileListCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_PlayerDataStorage_QueryFileListCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_PlayerDataStorage_ReadFile)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_PlayerDataStorage_ReadFile)); + EOS_PlayerDataStorage_ReadFile = (EOS_PlayerDataStorage_ReadFileCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_PlayerDataStorage_ReadFileCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_PlayerDataStorage_WriteFile)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_PlayerDataStorage_WriteFile)); + EOS_PlayerDataStorage_WriteFile = (EOS_PlayerDataStorage_WriteFileCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_PlayerDataStorage_WriteFileCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_PresenceModification_DeleteData)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_PresenceModification_DeleteData)); + EOS_PresenceModification_DeleteData = (EOS_PresenceModification_DeleteDataCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_PresenceModification_DeleteDataCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_PresenceModification_Release)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_PresenceModification_Release)); + EOS_PresenceModification_Release = (EOS_PresenceModification_ReleaseCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_PresenceModification_ReleaseCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_PresenceModification_SetData)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_PresenceModification_SetData)); + EOS_PresenceModification_SetData = (EOS_PresenceModification_SetDataCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_PresenceModification_SetDataCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_PresenceModification_SetJoinInfo)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_PresenceModification_SetJoinInfo)); + EOS_PresenceModification_SetJoinInfo = (EOS_PresenceModification_SetJoinInfoCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_PresenceModification_SetJoinInfoCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_PresenceModification_SetRawRichText)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_PresenceModification_SetRawRichText)); + EOS_PresenceModification_SetRawRichText = (EOS_PresenceModification_SetRawRichTextCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_PresenceModification_SetRawRichTextCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_PresenceModification_SetStatus)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_PresenceModification_SetStatus)); + EOS_PresenceModification_SetStatus = (EOS_PresenceModification_SetStatusCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_PresenceModification_SetStatusCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Presence_AddNotifyJoinGameAccepted)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Presence_AddNotifyJoinGameAccepted)); + EOS_Presence_AddNotifyJoinGameAccepted = (EOS_Presence_AddNotifyJoinGameAcceptedCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Presence_AddNotifyJoinGameAcceptedCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Presence_AddNotifyOnPresenceChanged)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Presence_AddNotifyOnPresenceChanged)); + EOS_Presence_AddNotifyOnPresenceChanged = (EOS_Presence_AddNotifyOnPresenceChangedCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Presence_AddNotifyOnPresenceChangedCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Presence_CopyPresence)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Presence_CopyPresence)); + EOS_Presence_CopyPresence = (EOS_Presence_CopyPresenceCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Presence_CopyPresenceCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Presence_CreatePresenceModification)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Presence_CreatePresenceModification)); + EOS_Presence_CreatePresenceModification = (EOS_Presence_CreatePresenceModificationCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Presence_CreatePresenceModificationCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Presence_GetJoinInfo)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Presence_GetJoinInfo)); + EOS_Presence_GetJoinInfo = (EOS_Presence_GetJoinInfoCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Presence_GetJoinInfoCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Presence_HasPresence)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Presence_HasPresence)); + EOS_Presence_HasPresence = (EOS_Presence_HasPresenceCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Presence_HasPresenceCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Presence_Info_Release)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Presence_Info_Release)); + EOS_Presence_Info_Release = (EOS_Presence_Info_ReleaseCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Presence_Info_ReleaseCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Presence_QueryPresence)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Presence_QueryPresence)); + EOS_Presence_QueryPresence = (EOS_Presence_QueryPresenceCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Presence_QueryPresenceCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Presence_RemoveNotifyJoinGameAccepted)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Presence_RemoveNotifyJoinGameAccepted)); + EOS_Presence_RemoveNotifyJoinGameAccepted = (EOS_Presence_RemoveNotifyJoinGameAcceptedCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Presence_RemoveNotifyJoinGameAcceptedCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Presence_RemoveNotifyOnPresenceChanged)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Presence_RemoveNotifyOnPresenceChanged)); + EOS_Presence_RemoveNotifyOnPresenceChanged = (EOS_Presence_RemoveNotifyOnPresenceChangedCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Presence_RemoveNotifyOnPresenceChangedCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Presence_SetPresence)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Presence_SetPresence)); + EOS_Presence_SetPresence = (EOS_Presence_SetPresenceCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Presence_SetPresenceCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_ProductUserId_FromString)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_ProductUserId_FromString)); + EOS_ProductUserId_FromString = (EOS_ProductUserId_FromStringCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_ProductUserId_FromStringCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_ProductUserId_IsValid)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_ProductUserId_IsValid)); + EOS_ProductUserId_IsValid = (EOS_ProductUserId_IsValidCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_ProductUserId_IsValidCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_ProductUserId_ToString)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_ProductUserId_ToString)); + EOS_ProductUserId_ToString = (EOS_ProductUserId_ToStringCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_ProductUserId_ToStringCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_RTCAdmin_CopyUserTokenByIndex)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_RTCAdmin_CopyUserTokenByIndex)); + EOS_RTCAdmin_CopyUserTokenByIndex = (EOS_RTCAdmin_CopyUserTokenByIndexCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_RTCAdmin_CopyUserTokenByIndexCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_RTCAdmin_CopyUserTokenByUserId)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_RTCAdmin_CopyUserTokenByUserId)); + EOS_RTCAdmin_CopyUserTokenByUserId = (EOS_RTCAdmin_CopyUserTokenByUserIdCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_RTCAdmin_CopyUserTokenByUserIdCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_RTCAdmin_Kick)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_RTCAdmin_Kick)); + EOS_RTCAdmin_Kick = (EOS_RTCAdmin_KickCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_RTCAdmin_KickCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_RTCAdmin_QueryJoinRoomToken)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_RTCAdmin_QueryJoinRoomToken)); + EOS_RTCAdmin_QueryJoinRoomToken = (EOS_RTCAdmin_QueryJoinRoomTokenCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_RTCAdmin_QueryJoinRoomTokenCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_RTCAdmin_SetParticipantHardMute)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_RTCAdmin_SetParticipantHardMute)); + EOS_RTCAdmin_SetParticipantHardMute = (EOS_RTCAdmin_SetParticipantHardMuteCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_RTCAdmin_SetParticipantHardMuteCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_RTCAdmin_UserToken_Release)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_RTCAdmin_UserToken_Release)); + EOS_RTCAdmin_UserToken_Release = (EOS_RTCAdmin_UserToken_ReleaseCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_RTCAdmin_UserToken_ReleaseCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_RTCAudio_AddNotifyAudioBeforeRender)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_RTCAudio_AddNotifyAudioBeforeRender)); + EOS_RTCAudio_AddNotifyAudioBeforeRender = (EOS_RTCAudio_AddNotifyAudioBeforeRenderCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_RTCAudio_AddNotifyAudioBeforeRenderCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_RTCAudio_AddNotifyAudioBeforeSend)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_RTCAudio_AddNotifyAudioBeforeSend)); + EOS_RTCAudio_AddNotifyAudioBeforeSend = (EOS_RTCAudio_AddNotifyAudioBeforeSendCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_RTCAudio_AddNotifyAudioBeforeSendCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_RTCAudio_AddNotifyAudioDevicesChanged)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_RTCAudio_AddNotifyAudioDevicesChanged)); + EOS_RTCAudio_AddNotifyAudioDevicesChanged = (EOS_RTCAudio_AddNotifyAudioDevicesChangedCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_RTCAudio_AddNotifyAudioDevicesChangedCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_RTCAudio_AddNotifyAudioInputState)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_RTCAudio_AddNotifyAudioInputState)); + EOS_RTCAudio_AddNotifyAudioInputState = (EOS_RTCAudio_AddNotifyAudioInputStateCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_RTCAudio_AddNotifyAudioInputStateCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_RTCAudio_AddNotifyAudioOutputState)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_RTCAudio_AddNotifyAudioOutputState)); + EOS_RTCAudio_AddNotifyAudioOutputState = (EOS_RTCAudio_AddNotifyAudioOutputStateCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_RTCAudio_AddNotifyAudioOutputStateCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_RTCAudio_AddNotifyParticipantUpdated)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_RTCAudio_AddNotifyParticipantUpdated)); + EOS_RTCAudio_AddNotifyParticipantUpdated = (EOS_RTCAudio_AddNotifyParticipantUpdatedCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_RTCAudio_AddNotifyParticipantUpdatedCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_RTCAudio_GetAudioInputDeviceByIndex)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_RTCAudio_GetAudioInputDeviceByIndex)); + EOS_RTCAudio_GetAudioInputDeviceByIndex = (EOS_RTCAudio_GetAudioInputDeviceByIndexCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_RTCAudio_GetAudioInputDeviceByIndexCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_RTCAudio_GetAudioInputDevicesCount)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_RTCAudio_GetAudioInputDevicesCount)); + EOS_RTCAudio_GetAudioInputDevicesCount = (EOS_RTCAudio_GetAudioInputDevicesCountCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_RTCAudio_GetAudioInputDevicesCountCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_RTCAudio_GetAudioOutputDeviceByIndex)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_RTCAudio_GetAudioOutputDeviceByIndex)); + EOS_RTCAudio_GetAudioOutputDeviceByIndex = (EOS_RTCAudio_GetAudioOutputDeviceByIndexCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_RTCAudio_GetAudioOutputDeviceByIndexCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_RTCAudio_GetAudioOutputDevicesCount)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_RTCAudio_GetAudioOutputDevicesCount)); + EOS_RTCAudio_GetAudioOutputDevicesCount = (EOS_RTCAudio_GetAudioOutputDevicesCountCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_RTCAudio_GetAudioOutputDevicesCountCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_RTCAudio_RegisterPlatformAudioUser)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_RTCAudio_RegisterPlatformAudioUser)); + EOS_RTCAudio_RegisterPlatformAudioUser = (EOS_RTCAudio_RegisterPlatformAudioUserCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_RTCAudio_RegisterPlatformAudioUserCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_RTCAudio_RemoveNotifyAudioBeforeRender)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_RTCAudio_RemoveNotifyAudioBeforeRender)); + EOS_RTCAudio_RemoveNotifyAudioBeforeRender = (EOS_RTCAudio_RemoveNotifyAudioBeforeRenderCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_RTCAudio_RemoveNotifyAudioBeforeRenderCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_RTCAudio_RemoveNotifyAudioBeforeSend)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_RTCAudio_RemoveNotifyAudioBeforeSend)); + EOS_RTCAudio_RemoveNotifyAudioBeforeSend = (EOS_RTCAudio_RemoveNotifyAudioBeforeSendCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_RTCAudio_RemoveNotifyAudioBeforeSendCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_RTCAudio_RemoveNotifyAudioDevicesChanged)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_RTCAudio_RemoveNotifyAudioDevicesChanged)); + EOS_RTCAudio_RemoveNotifyAudioDevicesChanged = (EOS_RTCAudio_RemoveNotifyAudioDevicesChangedCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_RTCAudio_RemoveNotifyAudioDevicesChangedCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_RTCAudio_RemoveNotifyAudioInputState)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_RTCAudio_RemoveNotifyAudioInputState)); + EOS_RTCAudio_RemoveNotifyAudioInputState = (EOS_RTCAudio_RemoveNotifyAudioInputStateCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_RTCAudio_RemoveNotifyAudioInputStateCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_RTCAudio_RemoveNotifyAudioOutputState)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_RTCAudio_RemoveNotifyAudioOutputState)); + EOS_RTCAudio_RemoveNotifyAudioOutputState = (EOS_RTCAudio_RemoveNotifyAudioOutputStateCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_RTCAudio_RemoveNotifyAudioOutputStateCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_RTCAudio_RemoveNotifyParticipantUpdated)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_RTCAudio_RemoveNotifyParticipantUpdated)); + EOS_RTCAudio_RemoveNotifyParticipantUpdated = (EOS_RTCAudio_RemoveNotifyParticipantUpdatedCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_RTCAudio_RemoveNotifyParticipantUpdatedCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_RTCAudio_SendAudio)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_RTCAudio_SendAudio)); + EOS_RTCAudio_SendAudio = (EOS_RTCAudio_SendAudioCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_RTCAudio_SendAudioCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_RTCAudio_SetAudioInputSettings)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_RTCAudio_SetAudioInputSettings)); + EOS_RTCAudio_SetAudioInputSettings = (EOS_RTCAudio_SetAudioInputSettingsCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_RTCAudio_SetAudioInputSettingsCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_RTCAudio_SetAudioOutputSettings)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_RTCAudio_SetAudioOutputSettings)); + EOS_RTCAudio_SetAudioOutputSettings = (EOS_RTCAudio_SetAudioOutputSettingsCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_RTCAudio_SetAudioOutputSettingsCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_RTCAudio_UnregisterPlatformAudioUser)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_RTCAudio_UnregisterPlatformAudioUser)); + EOS_RTCAudio_UnregisterPlatformAudioUser = (EOS_RTCAudio_UnregisterPlatformAudioUserCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_RTCAudio_UnregisterPlatformAudioUserCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_RTCAudio_UpdateReceiving)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_RTCAudio_UpdateReceiving)); + EOS_RTCAudio_UpdateReceiving = (EOS_RTCAudio_UpdateReceivingCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_RTCAudio_UpdateReceivingCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_RTCAudio_UpdateSending)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_RTCAudio_UpdateSending)); + EOS_RTCAudio_UpdateSending = (EOS_RTCAudio_UpdateSendingCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_RTCAudio_UpdateSendingCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_RTC_AddNotifyDisconnected)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_RTC_AddNotifyDisconnected)); + EOS_RTC_AddNotifyDisconnected = (EOS_RTC_AddNotifyDisconnectedCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_RTC_AddNotifyDisconnectedCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_RTC_AddNotifyParticipantStatusChanged)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_RTC_AddNotifyParticipantStatusChanged)); + EOS_RTC_AddNotifyParticipantStatusChanged = (EOS_RTC_AddNotifyParticipantStatusChangedCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_RTC_AddNotifyParticipantStatusChangedCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_RTC_BlockParticipant)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_RTC_BlockParticipant)); + EOS_RTC_BlockParticipant = (EOS_RTC_BlockParticipantCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_RTC_BlockParticipantCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_RTC_GetAudioInterface)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_RTC_GetAudioInterface)); + EOS_RTC_GetAudioInterface = (EOS_RTC_GetAudioInterfaceCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_RTC_GetAudioInterfaceCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_RTC_JoinRoom)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_RTC_JoinRoom)); + EOS_RTC_JoinRoom = (EOS_RTC_JoinRoomCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_RTC_JoinRoomCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_RTC_LeaveRoom)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_RTC_LeaveRoom)); + EOS_RTC_LeaveRoom = (EOS_RTC_LeaveRoomCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_RTC_LeaveRoomCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_RTC_RemoveNotifyDisconnected)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_RTC_RemoveNotifyDisconnected)); + EOS_RTC_RemoveNotifyDisconnected = (EOS_RTC_RemoveNotifyDisconnectedCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_RTC_RemoveNotifyDisconnectedCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_RTC_RemoveNotifyParticipantStatusChanged)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_RTC_RemoveNotifyParticipantStatusChanged)); + EOS_RTC_RemoveNotifyParticipantStatusChanged = (EOS_RTC_RemoveNotifyParticipantStatusChangedCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_RTC_RemoveNotifyParticipantStatusChangedCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Reports_SendPlayerBehaviorReport)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Reports_SendPlayerBehaviorReport)); + EOS_Reports_SendPlayerBehaviorReport = (EOS_Reports_SendPlayerBehaviorReportCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Reports_SendPlayerBehaviorReportCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Sanctions_CopyPlayerSanctionByIndex)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Sanctions_CopyPlayerSanctionByIndex)); + EOS_Sanctions_CopyPlayerSanctionByIndex = (EOS_Sanctions_CopyPlayerSanctionByIndexCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Sanctions_CopyPlayerSanctionByIndexCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Sanctions_GetPlayerSanctionCount)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Sanctions_GetPlayerSanctionCount)); + EOS_Sanctions_GetPlayerSanctionCount = (EOS_Sanctions_GetPlayerSanctionCountCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Sanctions_GetPlayerSanctionCountCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Sanctions_PlayerSanction_Release)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Sanctions_PlayerSanction_Release)); + EOS_Sanctions_PlayerSanction_Release = (EOS_Sanctions_PlayerSanction_ReleaseCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Sanctions_PlayerSanction_ReleaseCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Sanctions_QueryActivePlayerSanctions)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Sanctions_QueryActivePlayerSanctions)); + EOS_Sanctions_QueryActivePlayerSanctions = (EOS_Sanctions_QueryActivePlayerSanctionsCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Sanctions_QueryActivePlayerSanctionsCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_SessionDetails_Attribute_Release)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_SessionDetails_Attribute_Release)); + EOS_SessionDetails_Attribute_Release = (EOS_SessionDetails_Attribute_ReleaseCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_SessionDetails_Attribute_ReleaseCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_SessionDetails_CopyInfo)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_SessionDetails_CopyInfo)); + EOS_SessionDetails_CopyInfo = (EOS_SessionDetails_CopyInfoCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_SessionDetails_CopyInfoCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_SessionDetails_CopySessionAttributeByIndex)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_SessionDetails_CopySessionAttributeByIndex)); + EOS_SessionDetails_CopySessionAttributeByIndex = (EOS_SessionDetails_CopySessionAttributeByIndexCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_SessionDetails_CopySessionAttributeByIndexCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_SessionDetails_CopySessionAttributeByKey)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_SessionDetails_CopySessionAttributeByKey)); + EOS_SessionDetails_CopySessionAttributeByKey = (EOS_SessionDetails_CopySessionAttributeByKeyCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_SessionDetails_CopySessionAttributeByKeyCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_SessionDetails_GetSessionAttributeCount)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_SessionDetails_GetSessionAttributeCount)); + EOS_SessionDetails_GetSessionAttributeCount = (EOS_SessionDetails_GetSessionAttributeCountCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_SessionDetails_GetSessionAttributeCountCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_SessionDetails_Info_Release)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_SessionDetails_Info_Release)); + EOS_SessionDetails_Info_Release = (EOS_SessionDetails_Info_ReleaseCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_SessionDetails_Info_ReleaseCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_SessionDetails_Release)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_SessionDetails_Release)); + EOS_SessionDetails_Release = (EOS_SessionDetails_ReleaseCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_SessionDetails_ReleaseCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_SessionModification_AddAttribute)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_SessionModification_AddAttribute)); + EOS_SessionModification_AddAttribute = (EOS_SessionModification_AddAttributeCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_SessionModification_AddAttributeCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_SessionModification_Release)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_SessionModification_Release)); + EOS_SessionModification_Release = (EOS_SessionModification_ReleaseCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_SessionModification_ReleaseCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_SessionModification_RemoveAttribute)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_SessionModification_RemoveAttribute)); + EOS_SessionModification_RemoveAttribute = (EOS_SessionModification_RemoveAttributeCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_SessionModification_RemoveAttributeCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_SessionModification_SetBucketId)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_SessionModification_SetBucketId)); + EOS_SessionModification_SetBucketId = (EOS_SessionModification_SetBucketIdCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_SessionModification_SetBucketIdCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_SessionModification_SetHostAddress)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_SessionModification_SetHostAddress)); + EOS_SessionModification_SetHostAddress = (EOS_SessionModification_SetHostAddressCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_SessionModification_SetHostAddressCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_SessionModification_SetInvitesAllowed)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_SessionModification_SetInvitesAllowed)); + EOS_SessionModification_SetInvitesAllowed = (EOS_SessionModification_SetInvitesAllowedCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_SessionModification_SetInvitesAllowedCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_SessionModification_SetJoinInProgressAllowed)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_SessionModification_SetJoinInProgressAllowed)); + EOS_SessionModification_SetJoinInProgressAllowed = (EOS_SessionModification_SetJoinInProgressAllowedCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_SessionModification_SetJoinInProgressAllowedCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_SessionModification_SetMaxPlayers)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_SessionModification_SetMaxPlayers)); + EOS_SessionModification_SetMaxPlayers = (EOS_SessionModification_SetMaxPlayersCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_SessionModification_SetMaxPlayersCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_SessionModification_SetPermissionLevel)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_SessionModification_SetPermissionLevel)); + EOS_SessionModification_SetPermissionLevel = (EOS_SessionModification_SetPermissionLevelCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_SessionModification_SetPermissionLevelCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_SessionSearch_CopySearchResultByIndex)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_SessionSearch_CopySearchResultByIndex)); + EOS_SessionSearch_CopySearchResultByIndex = (EOS_SessionSearch_CopySearchResultByIndexCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_SessionSearch_CopySearchResultByIndexCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_SessionSearch_Find)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_SessionSearch_Find)); + EOS_SessionSearch_Find = (EOS_SessionSearch_FindCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_SessionSearch_FindCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_SessionSearch_GetSearchResultCount)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_SessionSearch_GetSearchResultCount)); + EOS_SessionSearch_GetSearchResultCount = (EOS_SessionSearch_GetSearchResultCountCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_SessionSearch_GetSearchResultCountCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_SessionSearch_Release)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_SessionSearch_Release)); + EOS_SessionSearch_Release = (EOS_SessionSearch_ReleaseCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_SessionSearch_ReleaseCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_SessionSearch_RemoveParameter)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_SessionSearch_RemoveParameter)); + EOS_SessionSearch_RemoveParameter = (EOS_SessionSearch_RemoveParameterCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_SessionSearch_RemoveParameterCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_SessionSearch_SetMaxResults)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_SessionSearch_SetMaxResults)); + EOS_SessionSearch_SetMaxResults = (EOS_SessionSearch_SetMaxResultsCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_SessionSearch_SetMaxResultsCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_SessionSearch_SetParameter)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_SessionSearch_SetParameter)); + EOS_SessionSearch_SetParameter = (EOS_SessionSearch_SetParameterCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_SessionSearch_SetParameterCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_SessionSearch_SetSessionId)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_SessionSearch_SetSessionId)); + EOS_SessionSearch_SetSessionId = (EOS_SessionSearch_SetSessionIdCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_SessionSearch_SetSessionIdCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_SessionSearch_SetTargetUserId)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_SessionSearch_SetTargetUserId)); + EOS_SessionSearch_SetTargetUserId = (EOS_SessionSearch_SetTargetUserIdCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_SessionSearch_SetTargetUserIdCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Sessions_AddNotifyJoinSessionAccepted)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Sessions_AddNotifyJoinSessionAccepted)); + EOS_Sessions_AddNotifyJoinSessionAccepted = (EOS_Sessions_AddNotifyJoinSessionAcceptedCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Sessions_AddNotifyJoinSessionAcceptedCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Sessions_AddNotifySessionInviteAccepted)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Sessions_AddNotifySessionInviteAccepted)); + EOS_Sessions_AddNotifySessionInviteAccepted = (EOS_Sessions_AddNotifySessionInviteAcceptedCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Sessions_AddNotifySessionInviteAcceptedCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Sessions_AddNotifySessionInviteReceived)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Sessions_AddNotifySessionInviteReceived)); + EOS_Sessions_AddNotifySessionInviteReceived = (EOS_Sessions_AddNotifySessionInviteReceivedCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Sessions_AddNotifySessionInviteReceivedCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Sessions_CopyActiveSessionHandle)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Sessions_CopyActiveSessionHandle)); + EOS_Sessions_CopyActiveSessionHandle = (EOS_Sessions_CopyActiveSessionHandleCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Sessions_CopyActiveSessionHandleCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Sessions_CopySessionHandleByInviteId)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Sessions_CopySessionHandleByInviteId)); + EOS_Sessions_CopySessionHandleByInviteId = (EOS_Sessions_CopySessionHandleByInviteIdCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Sessions_CopySessionHandleByInviteIdCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Sessions_CopySessionHandleByUiEventId)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Sessions_CopySessionHandleByUiEventId)); + EOS_Sessions_CopySessionHandleByUiEventId = (EOS_Sessions_CopySessionHandleByUiEventIdCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Sessions_CopySessionHandleByUiEventIdCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Sessions_CopySessionHandleForPresence)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Sessions_CopySessionHandleForPresence)); + EOS_Sessions_CopySessionHandleForPresence = (EOS_Sessions_CopySessionHandleForPresenceCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Sessions_CopySessionHandleForPresenceCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Sessions_CreateSessionModification)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Sessions_CreateSessionModification)); + EOS_Sessions_CreateSessionModification = (EOS_Sessions_CreateSessionModificationCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Sessions_CreateSessionModificationCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Sessions_CreateSessionSearch)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Sessions_CreateSessionSearch)); + EOS_Sessions_CreateSessionSearch = (EOS_Sessions_CreateSessionSearchCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Sessions_CreateSessionSearchCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Sessions_DestroySession)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Sessions_DestroySession)); + EOS_Sessions_DestroySession = (EOS_Sessions_DestroySessionCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Sessions_DestroySessionCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Sessions_DumpSessionState)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Sessions_DumpSessionState)); + EOS_Sessions_DumpSessionState = (EOS_Sessions_DumpSessionStateCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Sessions_DumpSessionStateCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Sessions_EndSession)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Sessions_EndSession)); + EOS_Sessions_EndSession = (EOS_Sessions_EndSessionCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Sessions_EndSessionCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Sessions_GetInviteCount)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Sessions_GetInviteCount)); + EOS_Sessions_GetInviteCount = (EOS_Sessions_GetInviteCountCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Sessions_GetInviteCountCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Sessions_GetInviteIdByIndex)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Sessions_GetInviteIdByIndex)); + EOS_Sessions_GetInviteIdByIndex = (EOS_Sessions_GetInviteIdByIndexCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Sessions_GetInviteIdByIndexCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Sessions_IsUserInSession)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Sessions_IsUserInSession)); + EOS_Sessions_IsUserInSession = (EOS_Sessions_IsUserInSessionCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Sessions_IsUserInSessionCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Sessions_JoinSession)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Sessions_JoinSession)); + EOS_Sessions_JoinSession = (EOS_Sessions_JoinSessionCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Sessions_JoinSessionCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Sessions_QueryInvites)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Sessions_QueryInvites)); + EOS_Sessions_QueryInvites = (EOS_Sessions_QueryInvitesCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Sessions_QueryInvitesCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Sessions_RegisterPlayers)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Sessions_RegisterPlayers)); + EOS_Sessions_RegisterPlayers = (EOS_Sessions_RegisterPlayersCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Sessions_RegisterPlayersCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Sessions_RejectInvite)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Sessions_RejectInvite)); + EOS_Sessions_RejectInvite = (EOS_Sessions_RejectInviteCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Sessions_RejectInviteCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Sessions_RemoveNotifyJoinSessionAccepted)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Sessions_RemoveNotifyJoinSessionAccepted)); + EOS_Sessions_RemoveNotifyJoinSessionAccepted = (EOS_Sessions_RemoveNotifyJoinSessionAcceptedCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Sessions_RemoveNotifyJoinSessionAcceptedCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Sessions_RemoveNotifySessionInviteAccepted)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Sessions_RemoveNotifySessionInviteAccepted)); + EOS_Sessions_RemoveNotifySessionInviteAccepted = (EOS_Sessions_RemoveNotifySessionInviteAcceptedCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Sessions_RemoveNotifySessionInviteAcceptedCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Sessions_RemoveNotifySessionInviteReceived)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Sessions_RemoveNotifySessionInviteReceived)); + EOS_Sessions_RemoveNotifySessionInviteReceived = (EOS_Sessions_RemoveNotifySessionInviteReceivedCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Sessions_RemoveNotifySessionInviteReceivedCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Sessions_SendInvite)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Sessions_SendInvite)); + EOS_Sessions_SendInvite = (EOS_Sessions_SendInviteCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Sessions_SendInviteCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Sessions_StartSession)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Sessions_StartSession)); + EOS_Sessions_StartSession = (EOS_Sessions_StartSessionCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Sessions_StartSessionCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Sessions_UnregisterPlayers)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Sessions_UnregisterPlayers)); + EOS_Sessions_UnregisterPlayers = (EOS_Sessions_UnregisterPlayersCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Sessions_UnregisterPlayersCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Sessions_UpdateSession)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Sessions_UpdateSession)); + EOS_Sessions_UpdateSession = (EOS_Sessions_UpdateSessionCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Sessions_UpdateSessionCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Sessions_UpdateSessionModification)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Sessions_UpdateSessionModification)); + EOS_Sessions_UpdateSessionModification = (EOS_Sessions_UpdateSessionModificationCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Sessions_UpdateSessionModificationCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Shutdown)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Shutdown)); + EOS_Shutdown = (EOS_ShutdownCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_ShutdownCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Stats_CopyStatByIndex)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Stats_CopyStatByIndex)); + EOS_Stats_CopyStatByIndex = (EOS_Stats_CopyStatByIndexCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Stats_CopyStatByIndexCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Stats_CopyStatByName)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Stats_CopyStatByName)); + EOS_Stats_CopyStatByName = (EOS_Stats_CopyStatByNameCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Stats_CopyStatByNameCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Stats_GetStatsCount)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Stats_GetStatsCount)); + EOS_Stats_GetStatsCount = (EOS_Stats_GetStatsCountCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Stats_GetStatsCountCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Stats_IngestStat)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Stats_IngestStat)); + EOS_Stats_IngestStat = (EOS_Stats_IngestStatCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Stats_IngestStatCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Stats_QueryStats)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Stats_QueryStats)); + EOS_Stats_QueryStats = (EOS_Stats_QueryStatsCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Stats_QueryStatsCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Stats_Stat_Release)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Stats_Stat_Release)); + EOS_Stats_Stat_Release = (EOS_Stats_Stat_ReleaseCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Stats_Stat_ReleaseCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_TitleStorageFileTransferRequest_CancelRequest)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_TitleStorageFileTransferRequest_CancelRequest)); + EOS_TitleStorageFileTransferRequest_CancelRequest = (EOS_TitleStorageFileTransferRequest_CancelRequestCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_TitleStorageFileTransferRequest_CancelRequestCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_TitleStorageFileTransferRequest_GetFileRequestState)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_TitleStorageFileTransferRequest_GetFileRequestState)); + EOS_TitleStorageFileTransferRequest_GetFileRequestState = (EOS_TitleStorageFileTransferRequest_GetFileRequestStateCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_TitleStorageFileTransferRequest_GetFileRequestStateCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_TitleStorageFileTransferRequest_GetFilename)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_TitleStorageFileTransferRequest_GetFilename)); + EOS_TitleStorageFileTransferRequest_GetFilename = (EOS_TitleStorageFileTransferRequest_GetFilenameCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_TitleStorageFileTransferRequest_GetFilenameCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_TitleStorageFileTransferRequest_Release)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_TitleStorageFileTransferRequest_Release)); + EOS_TitleStorageFileTransferRequest_Release = (EOS_TitleStorageFileTransferRequest_ReleaseCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_TitleStorageFileTransferRequest_ReleaseCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_TitleStorage_CopyFileMetadataAtIndex)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_TitleStorage_CopyFileMetadataAtIndex)); + EOS_TitleStorage_CopyFileMetadataAtIndex = (EOS_TitleStorage_CopyFileMetadataAtIndexCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_TitleStorage_CopyFileMetadataAtIndexCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_TitleStorage_CopyFileMetadataByFilename)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_TitleStorage_CopyFileMetadataByFilename)); + EOS_TitleStorage_CopyFileMetadataByFilename = (EOS_TitleStorage_CopyFileMetadataByFilenameCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_TitleStorage_CopyFileMetadataByFilenameCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_TitleStorage_DeleteCache)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_TitleStorage_DeleteCache)); + EOS_TitleStorage_DeleteCache = (EOS_TitleStorage_DeleteCacheCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_TitleStorage_DeleteCacheCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_TitleStorage_FileMetadata_Release)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_TitleStorage_FileMetadata_Release)); + EOS_TitleStorage_FileMetadata_Release = (EOS_TitleStorage_FileMetadata_ReleaseCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_TitleStorage_FileMetadata_ReleaseCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_TitleStorage_GetFileMetadataCount)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_TitleStorage_GetFileMetadataCount)); + EOS_TitleStorage_GetFileMetadataCount = (EOS_TitleStorage_GetFileMetadataCountCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_TitleStorage_GetFileMetadataCountCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_TitleStorage_QueryFile)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_TitleStorage_QueryFile)); + EOS_TitleStorage_QueryFile = (EOS_TitleStorage_QueryFileCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_TitleStorage_QueryFileCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_TitleStorage_QueryFileList)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_TitleStorage_QueryFileList)); + EOS_TitleStorage_QueryFileList = (EOS_TitleStorage_QueryFileListCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_TitleStorage_QueryFileListCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_TitleStorage_ReadFile)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_TitleStorage_ReadFile)); + EOS_TitleStorage_ReadFile = (EOS_TitleStorage_ReadFileCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_TitleStorage_ReadFileCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_UI_AcknowledgeEventId)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_UI_AcknowledgeEventId)); + EOS_UI_AcknowledgeEventId = (EOS_UI_AcknowledgeEventIdCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_UI_AcknowledgeEventIdCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_UI_AddNotifyDisplaySettingsUpdated)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_UI_AddNotifyDisplaySettingsUpdated)); + EOS_UI_AddNotifyDisplaySettingsUpdated = (EOS_UI_AddNotifyDisplaySettingsUpdatedCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_UI_AddNotifyDisplaySettingsUpdatedCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_UI_GetFriendsVisible)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_UI_GetFriendsVisible)); + EOS_UI_GetFriendsVisible = (EOS_UI_GetFriendsVisibleCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_UI_GetFriendsVisibleCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_UI_GetNotificationLocationPreference)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_UI_GetNotificationLocationPreference)); + EOS_UI_GetNotificationLocationPreference = (EOS_UI_GetNotificationLocationPreferenceCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_UI_GetNotificationLocationPreferenceCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_UI_GetToggleFriendsKey)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_UI_GetToggleFriendsKey)); + EOS_UI_GetToggleFriendsKey = (EOS_UI_GetToggleFriendsKeyCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_UI_GetToggleFriendsKeyCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_UI_HideFriends)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_UI_HideFriends)); + EOS_UI_HideFriends = (EOS_UI_HideFriendsCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_UI_HideFriendsCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_UI_IsValidKeyCombination)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_UI_IsValidKeyCombination)); + EOS_UI_IsValidKeyCombination = (EOS_UI_IsValidKeyCombinationCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_UI_IsValidKeyCombinationCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_UI_RemoveNotifyDisplaySettingsUpdated)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_UI_RemoveNotifyDisplaySettingsUpdated)); + EOS_UI_RemoveNotifyDisplaySettingsUpdated = (EOS_UI_RemoveNotifyDisplaySettingsUpdatedCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_UI_RemoveNotifyDisplaySettingsUpdatedCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_UI_SetDisplayPreference)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_UI_SetDisplayPreference)); + EOS_UI_SetDisplayPreference = (EOS_UI_SetDisplayPreferenceCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_UI_SetDisplayPreferenceCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_UI_SetToggleFriendsKey)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_UI_SetToggleFriendsKey)); + EOS_UI_SetToggleFriendsKey = (EOS_UI_SetToggleFriendsKeyCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_UI_SetToggleFriendsKeyCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_UI_ShowFriends)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_UI_ShowFriends)); + EOS_UI_ShowFriends = (EOS_UI_ShowFriendsCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_UI_ShowFriendsCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_UserInfo_CopyExternalUserInfoByAccountId)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_UserInfo_CopyExternalUserInfoByAccountId)); + EOS_UserInfo_CopyExternalUserInfoByAccountId = (EOS_UserInfo_CopyExternalUserInfoByAccountIdCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_UserInfo_CopyExternalUserInfoByAccountIdCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_UserInfo_CopyExternalUserInfoByAccountType)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_UserInfo_CopyExternalUserInfoByAccountType)); + EOS_UserInfo_CopyExternalUserInfoByAccountType = (EOS_UserInfo_CopyExternalUserInfoByAccountTypeCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_UserInfo_CopyExternalUserInfoByAccountTypeCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_UserInfo_CopyExternalUserInfoByIndex)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_UserInfo_CopyExternalUserInfoByIndex)); + EOS_UserInfo_CopyExternalUserInfoByIndex = (EOS_UserInfo_CopyExternalUserInfoByIndexCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_UserInfo_CopyExternalUserInfoByIndexCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_UserInfo_CopyUserInfo)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_UserInfo_CopyUserInfo)); + EOS_UserInfo_CopyUserInfo = (EOS_UserInfo_CopyUserInfoCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_UserInfo_CopyUserInfoCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_UserInfo_ExternalUserInfo_Release)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_UserInfo_ExternalUserInfo_Release)); + EOS_UserInfo_ExternalUserInfo_Release = (EOS_UserInfo_ExternalUserInfo_ReleaseCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_UserInfo_ExternalUserInfo_ReleaseCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_UserInfo_GetExternalUserInfoCount)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_UserInfo_GetExternalUserInfoCount)); + EOS_UserInfo_GetExternalUserInfoCount = (EOS_UserInfo_GetExternalUserInfoCountCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_UserInfo_GetExternalUserInfoCountCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_UserInfo_QueryUserInfo)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_UserInfo_QueryUserInfo)); + EOS_UserInfo_QueryUserInfo = (EOS_UserInfo_QueryUserInfoCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_UserInfo_QueryUserInfoCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_UserInfo_QueryUserInfoByDisplayName)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_UserInfo_QueryUserInfoByDisplayName)); + EOS_UserInfo_QueryUserInfoByDisplayName = (EOS_UserInfo_QueryUserInfoByDisplayNameCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_UserInfo_QueryUserInfoByDisplayNameCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_UserInfo_QueryUserInfoByExternalAccount)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_UserInfo_QueryUserInfoByExternalAccount)); + EOS_UserInfo_QueryUserInfoByExternalAccount = (EOS_UserInfo_QueryUserInfoByExternalAccountCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_UserInfo_QueryUserInfoByExternalAccountCallback)); + + functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_UserInfo_Release)); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_UserInfo_Release)); + EOS_UserInfo_Release = (EOS_UserInfo_ReleaseCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_UserInfo_ReleaseCallback)); + } +#endif + +#if EOS_DYNAMIC_BINDINGS + /// + /// Unhooks the dynamic SDK API bindings. EOS_DYNAMIC_BINDINGS or EOS_EDITOR must be set. + /// + public static void Unhook() + { + EOS_Achievements_AddNotifyAchievementsUnlocked = null; + EOS_Achievements_AddNotifyAchievementsUnlockedV2 = null; + EOS_Achievements_CopyAchievementDefinitionByAchievementId = null; + EOS_Achievements_CopyAchievementDefinitionByIndex = null; + EOS_Achievements_CopyAchievementDefinitionV2ByAchievementId = null; + EOS_Achievements_CopyAchievementDefinitionV2ByIndex = null; + EOS_Achievements_CopyPlayerAchievementByAchievementId = null; + EOS_Achievements_CopyPlayerAchievementByIndex = null; + EOS_Achievements_CopyUnlockedAchievementByAchievementId = null; + EOS_Achievements_CopyUnlockedAchievementByIndex = null; + EOS_Achievements_DefinitionV2_Release = null; + EOS_Achievements_Definition_Release = null; + EOS_Achievements_GetAchievementDefinitionCount = null; + EOS_Achievements_GetPlayerAchievementCount = null; + EOS_Achievements_GetUnlockedAchievementCount = null; + EOS_Achievements_PlayerAchievement_Release = null; + EOS_Achievements_QueryDefinitions = null; + EOS_Achievements_QueryPlayerAchievements = null; + EOS_Achievements_RemoveNotifyAchievementsUnlocked = null; + EOS_Achievements_UnlockAchievements = null; + EOS_Achievements_UnlockedAchievement_Release = null; + EOS_ActiveSession_CopyInfo = null; + EOS_ActiveSession_GetRegisteredPlayerByIndex = null; + EOS_ActiveSession_GetRegisteredPlayerCount = null; + EOS_ActiveSession_Info_Release = null; + EOS_ActiveSession_Release = null; + EOS_AntiCheatClient_AddExternalIntegrityCatalog = null; + EOS_AntiCheatClient_AddNotifyMessageToPeer = null; + EOS_AntiCheatClient_AddNotifyMessageToServer = null; + EOS_AntiCheatClient_AddNotifyPeerActionRequired = null; + EOS_AntiCheatClient_AddNotifyPeerAuthStatusChanged = null; + EOS_AntiCheatClient_BeginSession = null; + EOS_AntiCheatClient_EndSession = null; + EOS_AntiCheatClient_GetProtectMessageOutputLength = null; + EOS_AntiCheatClient_PollStatus = null; + EOS_AntiCheatClient_ProtectMessage = null; + EOS_AntiCheatClient_ReceiveMessageFromPeer = null; + EOS_AntiCheatClient_ReceiveMessageFromServer = null; + EOS_AntiCheatClient_RegisterPeer = null; + EOS_AntiCheatClient_RemoveNotifyMessageToPeer = null; + EOS_AntiCheatClient_RemoveNotifyMessageToServer = null; + EOS_AntiCheatClient_RemoveNotifyPeerActionRequired = null; + EOS_AntiCheatClient_RemoveNotifyPeerAuthStatusChanged = null; + EOS_AntiCheatClient_UnprotectMessage = null; + EOS_AntiCheatClient_UnregisterPeer = null; + EOS_AntiCheatServer_AddNotifyClientActionRequired = null; + EOS_AntiCheatServer_AddNotifyClientAuthStatusChanged = null; + EOS_AntiCheatServer_AddNotifyMessageToClient = null; + EOS_AntiCheatServer_BeginSession = null; + EOS_AntiCheatServer_EndSession = null; + EOS_AntiCheatServer_GetProtectMessageOutputLength = null; + EOS_AntiCheatServer_LogEvent = null; + EOS_AntiCheatServer_LogGameRoundEnd = null; + EOS_AntiCheatServer_LogGameRoundStart = null; + EOS_AntiCheatServer_LogPlayerDespawn = null; + EOS_AntiCheatServer_LogPlayerRevive = null; + EOS_AntiCheatServer_LogPlayerSpawn = null; + EOS_AntiCheatServer_LogPlayerTakeDamage = null; + EOS_AntiCheatServer_LogPlayerTick = null; + EOS_AntiCheatServer_LogPlayerUseAbility = null; + EOS_AntiCheatServer_LogPlayerUseWeapon = null; + EOS_AntiCheatServer_ProtectMessage = null; + EOS_AntiCheatServer_ReceiveMessageFromClient = null; + EOS_AntiCheatServer_RegisterClient = null; + EOS_AntiCheatServer_RegisterEvent = null; + EOS_AntiCheatServer_RemoveNotifyClientActionRequired = null; + EOS_AntiCheatServer_RemoveNotifyClientAuthStatusChanged = null; + EOS_AntiCheatServer_RemoveNotifyMessageToClient = null; + EOS_AntiCheatServer_SetClientDetails = null; + EOS_AntiCheatServer_SetClientNetworkState = null; + EOS_AntiCheatServer_SetGameSessionId = null; + EOS_AntiCheatServer_UnprotectMessage = null; + EOS_AntiCheatServer_UnregisterClient = null; + EOS_Auth_AddNotifyLoginStatusChanged = null; + EOS_Auth_CopyUserAuthToken = null; + EOS_Auth_DeletePersistentAuth = null; + EOS_Auth_GetLoggedInAccountByIndex = null; + EOS_Auth_GetLoggedInAccountsCount = null; + EOS_Auth_GetLoginStatus = null; + EOS_Auth_LinkAccount = null; + EOS_Auth_Login = null; + EOS_Auth_Logout = null; + EOS_Auth_RemoveNotifyLoginStatusChanged = null; + EOS_Auth_Token_Release = null; + EOS_Auth_VerifyUserAuth = null; + EOS_ByteArray_ToString = null; + EOS_Connect_AddNotifyAuthExpiration = null; + EOS_Connect_AddNotifyLoginStatusChanged = null; + EOS_Connect_CopyProductUserExternalAccountByAccountId = null; + EOS_Connect_CopyProductUserExternalAccountByAccountType = null; + EOS_Connect_CopyProductUserExternalAccountByIndex = null; + EOS_Connect_CopyProductUserInfo = null; + EOS_Connect_CreateDeviceId = null; + EOS_Connect_CreateUser = null; + EOS_Connect_DeleteDeviceId = null; + EOS_Connect_ExternalAccountInfo_Release = null; + EOS_Connect_GetExternalAccountMapping = null; + EOS_Connect_GetLoggedInUserByIndex = null; + EOS_Connect_GetLoggedInUsersCount = null; + EOS_Connect_GetLoginStatus = null; + EOS_Connect_GetProductUserExternalAccountCount = null; + EOS_Connect_GetProductUserIdMapping = null; + EOS_Connect_LinkAccount = null; + EOS_Connect_Login = null; + EOS_Connect_QueryExternalAccountMappings = null; + EOS_Connect_QueryProductUserIdMappings = null; + EOS_Connect_RemoveNotifyAuthExpiration = null; + EOS_Connect_RemoveNotifyLoginStatusChanged = null; + EOS_Connect_TransferDeviceIdAccount = null; + EOS_Connect_UnlinkAccount = null; + EOS_ContinuanceToken_ToString = null; + EOS_EResult_IsOperationComplete = null; + EOS_EResult_ToString = null; + EOS_Ecom_CatalogItem_Release = null; + EOS_Ecom_CatalogOffer_Release = null; + EOS_Ecom_CatalogRelease_Release = null; + EOS_Ecom_Checkout = null; + EOS_Ecom_CopyEntitlementById = null; + EOS_Ecom_CopyEntitlementByIndex = null; + EOS_Ecom_CopyEntitlementByNameAndIndex = null; + EOS_Ecom_CopyItemById = null; + EOS_Ecom_CopyItemImageInfoByIndex = null; + EOS_Ecom_CopyItemReleaseByIndex = null; + EOS_Ecom_CopyOfferById = null; + EOS_Ecom_CopyOfferByIndex = null; + EOS_Ecom_CopyOfferImageInfoByIndex = null; + EOS_Ecom_CopyOfferItemByIndex = null; + EOS_Ecom_CopyTransactionById = null; + EOS_Ecom_CopyTransactionByIndex = null; + EOS_Ecom_Entitlement_Release = null; + EOS_Ecom_GetEntitlementsByNameCount = null; + EOS_Ecom_GetEntitlementsCount = null; + EOS_Ecom_GetItemImageInfoCount = null; + EOS_Ecom_GetItemReleaseCount = null; + EOS_Ecom_GetOfferCount = null; + EOS_Ecom_GetOfferImageInfoCount = null; + EOS_Ecom_GetOfferItemCount = null; + EOS_Ecom_GetTransactionCount = null; + EOS_Ecom_KeyImageInfo_Release = null; + EOS_Ecom_QueryEntitlements = null; + EOS_Ecom_QueryOffers = null; + EOS_Ecom_QueryOwnership = null; + EOS_Ecom_QueryOwnershipToken = null; + EOS_Ecom_RedeemEntitlements = null; + EOS_Ecom_Transaction_CopyEntitlementByIndex = null; + EOS_Ecom_Transaction_GetEntitlementsCount = null; + EOS_Ecom_Transaction_GetTransactionId = null; + EOS_Ecom_Transaction_Release = null; + EOS_EpicAccountId_FromString = null; + EOS_EpicAccountId_IsValid = null; + EOS_EpicAccountId_ToString = null; + EOS_Friends_AcceptInvite = null; + EOS_Friends_AddNotifyFriendsUpdate = null; + EOS_Friends_GetFriendAtIndex = null; + EOS_Friends_GetFriendsCount = null; + EOS_Friends_GetStatus = null; + EOS_Friends_QueryFriends = null; + EOS_Friends_RejectInvite = null; + EOS_Friends_RemoveNotifyFriendsUpdate = null; + EOS_Friends_SendInvite = null; + EOS_Initialize = null; + EOS_KWS_AddNotifyPermissionsUpdateReceived = null; + EOS_KWS_CopyPermissionByIndex = null; + EOS_KWS_CreateUser = null; + EOS_KWS_GetPermissionByKey = null; + EOS_KWS_GetPermissionsCount = null; + EOS_KWS_PermissionStatus_Release = null; + EOS_KWS_QueryAgeGate = null; + EOS_KWS_QueryPermissions = null; + EOS_KWS_RemoveNotifyPermissionsUpdateReceived = null; + EOS_KWS_RequestPermissions = null; + EOS_KWS_UpdateParentEmail = null; + EOS_Leaderboards_CopyLeaderboardDefinitionByIndex = null; + EOS_Leaderboards_CopyLeaderboardDefinitionByLeaderboardId = null; + EOS_Leaderboards_CopyLeaderboardRecordByIndex = null; + EOS_Leaderboards_CopyLeaderboardRecordByUserId = null; + EOS_Leaderboards_CopyLeaderboardUserScoreByIndex = null; + EOS_Leaderboards_CopyLeaderboardUserScoreByUserId = null; + EOS_Leaderboards_Definition_Release = null; + EOS_Leaderboards_GetLeaderboardDefinitionCount = null; + EOS_Leaderboards_GetLeaderboardRecordCount = null; + EOS_Leaderboards_GetLeaderboardUserScoreCount = null; + EOS_Leaderboards_LeaderboardDefinition_Release = null; + EOS_Leaderboards_LeaderboardRecord_Release = null; + EOS_Leaderboards_LeaderboardUserScore_Release = null; + EOS_Leaderboards_QueryLeaderboardDefinitions = null; + EOS_Leaderboards_QueryLeaderboardRanks = null; + EOS_Leaderboards_QueryLeaderboardUserScores = null; + EOS_LobbyDetails_CopyAttributeByIndex = null; + EOS_LobbyDetails_CopyAttributeByKey = null; + EOS_LobbyDetails_CopyInfo = null; + EOS_LobbyDetails_CopyMemberAttributeByIndex = null; + EOS_LobbyDetails_CopyMemberAttributeByKey = null; + EOS_LobbyDetails_GetAttributeCount = null; + EOS_LobbyDetails_GetLobbyOwner = null; + EOS_LobbyDetails_GetMemberAttributeCount = null; + EOS_LobbyDetails_GetMemberByIndex = null; + EOS_LobbyDetails_GetMemberCount = null; + EOS_LobbyDetails_Info_Release = null; + EOS_LobbyDetails_Release = null; + EOS_LobbyModification_AddAttribute = null; + EOS_LobbyModification_AddMemberAttribute = null; + EOS_LobbyModification_Release = null; + EOS_LobbyModification_RemoveAttribute = null; + EOS_LobbyModification_RemoveMemberAttribute = null; + EOS_LobbyModification_SetBucketId = null; + EOS_LobbyModification_SetInvitesAllowed = null; + EOS_LobbyModification_SetMaxMembers = null; + EOS_LobbyModification_SetPermissionLevel = null; + EOS_LobbySearch_CopySearchResultByIndex = null; + EOS_LobbySearch_Find = null; + EOS_LobbySearch_GetSearchResultCount = null; + EOS_LobbySearch_Release = null; + EOS_LobbySearch_RemoveParameter = null; + EOS_LobbySearch_SetLobbyId = null; + EOS_LobbySearch_SetMaxResults = null; + EOS_LobbySearch_SetParameter = null; + EOS_LobbySearch_SetTargetUserId = null; + EOS_Lobby_AddNotifyJoinLobbyAccepted = null; + EOS_Lobby_AddNotifyLobbyInviteAccepted = null; + EOS_Lobby_AddNotifyLobbyInviteReceived = null; + EOS_Lobby_AddNotifyLobbyMemberStatusReceived = null; + EOS_Lobby_AddNotifyLobbyMemberUpdateReceived = null; + EOS_Lobby_AddNotifyLobbyUpdateReceived = null; + EOS_Lobby_AddNotifyRTCRoomConnectionChanged = null; + EOS_Lobby_Attribute_Release = null; + EOS_Lobby_CopyLobbyDetailsHandle = null; + EOS_Lobby_CopyLobbyDetailsHandleByInviteId = null; + EOS_Lobby_CopyLobbyDetailsHandleByUiEventId = null; + EOS_Lobby_CreateLobby = null; + EOS_Lobby_CreateLobbySearch = null; + EOS_Lobby_DestroyLobby = null; + EOS_Lobby_GetInviteCount = null; + EOS_Lobby_GetInviteIdByIndex = null; + EOS_Lobby_GetRTCRoomName = null; + EOS_Lobby_IsRTCRoomConnected = null; + EOS_Lobby_JoinLobby = null; + EOS_Lobby_KickMember = null; + EOS_Lobby_LeaveLobby = null; + EOS_Lobby_PromoteMember = null; + EOS_Lobby_QueryInvites = null; + EOS_Lobby_RejectInvite = null; + EOS_Lobby_RemoveNotifyJoinLobbyAccepted = null; + EOS_Lobby_RemoveNotifyLobbyInviteAccepted = null; + EOS_Lobby_RemoveNotifyLobbyInviteReceived = null; + EOS_Lobby_RemoveNotifyLobbyMemberStatusReceived = null; + EOS_Lobby_RemoveNotifyLobbyMemberUpdateReceived = null; + EOS_Lobby_RemoveNotifyLobbyUpdateReceived = null; + EOS_Lobby_RemoveNotifyRTCRoomConnectionChanged = null; + EOS_Lobby_SendInvite = null; + EOS_Lobby_UpdateLobby = null; + EOS_Lobby_UpdateLobbyModification = null; + EOS_Logging_SetCallback = null; + EOS_Logging_SetLogLevel = null; + EOS_Metrics_BeginPlayerSession = null; + EOS_Metrics_EndPlayerSession = null; + EOS_Mods_CopyModInfo = null; + EOS_Mods_EnumerateMods = null; + EOS_Mods_InstallMod = null; + EOS_Mods_ModInfo_Release = null; + EOS_Mods_UninstallMod = null; + EOS_Mods_UpdateMod = null; + EOS_P2P_AcceptConnection = null; + EOS_P2P_AddNotifyIncomingPacketQueueFull = null; + EOS_P2P_AddNotifyPeerConnectionClosed = null; + EOS_P2P_AddNotifyPeerConnectionRequest = null; + EOS_P2P_CloseConnection = null; + EOS_P2P_CloseConnections = null; + EOS_P2P_GetNATType = null; + EOS_P2P_GetNextReceivedPacketSize = null; + EOS_P2P_GetPacketQueueInfo = null; + EOS_P2P_GetPortRange = null; + EOS_P2P_GetRelayControl = null; + EOS_P2P_QueryNATType = null; + EOS_P2P_ReceivePacket = null; + EOS_P2P_RemoveNotifyIncomingPacketQueueFull = null; + EOS_P2P_RemoveNotifyPeerConnectionClosed = null; + EOS_P2P_RemoveNotifyPeerConnectionRequest = null; + EOS_P2P_SendPacket = null; + EOS_P2P_SetPacketQueueSize = null; + EOS_P2P_SetPortRange = null; + EOS_P2P_SetRelayControl = null; + EOS_Platform_CheckForLauncherAndRestart = null; + EOS_Platform_Create = null; + EOS_Platform_GetAchievementsInterface = null; + EOS_Platform_GetActiveCountryCode = null; + EOS_Platform_GetActiveLocaleCode = null; + EOS_Platform_GetAntiCheatClientInterface = null; + EOS_Platform_GetAntiCheatServerInterface = null; + EOS_Platform_GetAuthInterface = null; + EOS_Platform_GetConnectInterface = null; + EOS_Platform_GetEcomInterface = null; + EOS_Platform_GetFriendsInterface = null; + EOS_Platform_GetKWSInterface = null; + EOS_Platform_GetLeaderboardsInterface = null; + EOS_Platform_GetLobbyInterface = null; + EOS_Platform_GetMetricsInterface = null; + EOS_Platform_GetModsInterface = null; + EOS_Platform_GetOverrideCountryCode = null; + EOS_Platform_GetOverrideLocaleCode = null; + EOS_Platform_GetP2PInterface = null; + EOS_Platform_GetPlayerDataStorageInterface = null; + EOS_Platform_GetPresenceInterface = null; + EOS_Platform_GetRTCAdminInterface = null; + EOS_Platform_GetRTCInterface = null; + EOS_Platform_GetReportsInterface = null; + EOS_Platform_GetSanctionsInterface = null; + EOS_Platform_GetSessionsInterface = null; + EOS_Platform_GetStatsInterface = null; + EOS_Platform_GetTitleStorageInterface = null; + EOS_Platform_GetUIInterface = null; + EOS_Platform_GetUserInfoInterface = null; + EOS_Platform_Release = null; + EOS_Platform_SetOverrideCountryCode = null; + EOS_Platform_SetOverrideLocaleCode = null; + EOS_Platform_Tick = null; + EOS_PlayerDataStorageFileTransferRequest_CancelRequest = null; + EOS_PlayerDataStorageFileTransferRequest_GetFileRequestState = null; + EOS_PlayerDataStorageFileTransferRequest_GetFilename = null; + EOS_PlayerDataStorageFileTransferRequest_Release = null; + EOS_PlayerDataStorage_CopyFileMetadataAtIndex = null; + EOS_PlayerDataStorage_CopyFileMetadataByFilename = null; + EOS_PlayerDataStorage_DeleteCache = null; + EOS_PlayerDataStorage_DeleteFile = null; + EOS_PlayerDataStorage_DuplicateFile = null; + EOS_PlayerDataStorage_FileMetadata_Release = null; + EOS_PlayerDataStorage_GetFileMetadataCount = null; + EOS_PlayerDataStorage_QueryFile = null; + EOS_PlayerDataStorage_QueryFileList = null; + EOS_PlayerDataStorage_ReadFile = null; + EOS_PlayerDataStorage_WriteFile = null; + EOS_PresenceModification_DeleteData = null; + EOS_PresenceModification_Release = null; + EOS_PresenceModification_SetData = null; + EOS_PresenceModification_SetJoinInfo = null; + EOS_PresenceModification_SetRawRichText = null; + EOS_PresenceModification_SetStatus = null; + EOS_Presence_AddNotifyJoinGameAccepted = null; + EOS_Presence_AddNotifyOnPresenceChanged = null; + EOS_Presence_CopyPresence = null; + EOS_Presence_CreatePresenceModification = null; + EOS_Presence_GetJoinInfo = null; + EOS_Presence_HasPresence = null; + EOS_Presence_Info_Release = null; + EOS_Presence_QueryPresence = null; + EOS_Presence_RemoveNotifyJoinGameAccepted = null; + EOS_Presence_RemoveNotifyOnPresenceChanged = null; + EOS_Presence_SetPresence = null; + EOS_ProductUserId_FromString = null; + EOS_ProductUserId_IsValid = null; + EOS_ProductUserId_ToString = null; + EOS_RTCAdmin_CopyUserTokenByIndex = null; + EOS_RTCAdmin_CopyUserTokenByUserId = null; + EOS_RTCAdmin_Kick = null; + EOS_RTCAdmin_QueryJoinRoomToken = null; + EOS_RTCAdmin_SetParticipantHardMute = null; + EOS_RTCAdmin_UserToken_Release = null; + EOS_RTCAudio_AddNotifyAudioBeforeRender = null; + EOS_RTCAudio_AddNotifyAudioBeforeSend = null; + EOS_RTCAudio_AddNotifyAudioDevicesChanged = null; + EOS_RTCAudio_AddNotifyAudioInputState = null; + EOS_RTCAudio_AddNotifyAudioOutputState = null; + EOS_RTCAudio_AddNotifyParticipantUpdated = null; + EOS_RTCAudio_GetAudioInputDeviceByIndex = null; + EOS_RTCAudio_GetAudioInputDevicesCount = null; + EOS_RTCAudio_GetAudioOutputDeviceByIndex = null; + EOS_RTCAudio_GetAudioOutputDevicesCount = null; + EOS_RTCAudio_RegisterPlatformAudioUser = null; + EOS_RTCAudio_RemoveNotifyAudioBeforeRender = null; + EOS_RTCAudio_RemoveNotifyAudioBeforeSend = null; + EOS_RTCAudio_RemoveNotifyAudioDevicesChanged = null; + EOS_RTCAudio_RemoveNotifyAudioInputState = null; + EOS_RTCAudio_RemoveNotifyAudioOutputState = null; + EOS_RTCAudio_RemoveNotifyParticipantUpdated = null; + EOS_RTCAudio_SendAudio = null; + EOS_RTCAudio_SetAudioInputSettings = null; + EOS_RTCAudio_SetAudioOutputSettings = null; + EOS_RTCAudio_UnregisterPlatformAudioUser = null; + EOS_RTCAudio_UpdateReceiving = null; + EOS_RTCAudio_UpdateSending = null; + EOS_RTC_AddNotifyDisconnected = null; + EOS_RTC_AddNotifyParticipantStatusChanged = null; + EOS_RTC_BlockParticipant = null; + EOS_RTC_GetAudioInterface = null; + EOS_RTC_JoinRoom = null; + EOS_RTC_LeaveRoom = null; + EOS_RTC_RemoveNotifyDisconnected = null; + EOS_RTC_RemoveNotifyParticipantStatusChanged = null; + EOS_Reports_SendPlayerBehaviorReport = null; + EOS_Sanctions_CopyPlayerSanctionByIndex = null; + EOS_Sanctions_GetPlayerSanctionCount = null; + EOS_Sanctions_PlayerSanction_Release = null; + EOS_Sanctions_QueryActivePlayerSanctions = null; + EOS_SessionDetails_Attribute_Release = null; + EOS_SessionDetails_CopyInfo = null; + EOS_SessionDetails_CopySessionAttributeByIndex = null; + EOS_SessionDetails_CopySessionAttributeByKey = null; + EOS_SessionDetails_GetSessionAttributeCount = null; + EOS_SessionDetails_Info_Release = null; + EOS_SessionDetails_Release = null; + EOS_SessionModification_AddAttribute = null; + EOS_SessionModification_Release = null; + EOS_SessionModification_RemoveAttribute = null; + EOS_SessionModification_SetBucketId = null; + EOS_SessionModification_SetHostAddress = null; + EOS_SessionModification_SetInvitesAllowed = null; + EOS_SessionModification_SetJoinInProgressAllowed = null; + EOS_SessionModification_SetMaxPlayers = null; + EOS_SessionModification_SetPermissionLevel = null; + EOS_SessionSearch_CopySearchResultByIndex = null; + EOS_SessionSearch_Find = null; + EOS_SessionSearch_GetSearchResultCount = null; + EOS_SessionSearch_Release = null; + EOS_SessionSearch_RemoveParameter = null; + EOS_SessionSearch_SetMaxResults = null; + EOS_SessionSearch_SetParameter = null; + EOS_SessionSearch_SetSessionId = null; + EOS_SessionSearch_SetTargetUserId = null; + EOS_Sessions_AddNotifyJoinSessionAccepted = null; + EOS_Sessions_AddNotifySessionInviteAccepted = null; + EOS_Sessions_AddNotifySessionInviteReceived = null; + EOS_Sessions_CopyActiveSessionHandle = null; + EOS_Sessions_CopySessionHandleByInviteId = null; + EOS_Sessions_CopySessionHandleByUiEventId = null; + EOS_Sessions_CopySessionHandleForPresence = null; + EOS_Sessions_CreateSessionModification = null; + EOS_Sessions_CreateSessionSearch = null; + EOS_Sessions_DestroySession = null; + EOS_Sessions_DumpSessionState = null; + EOS_Sessions_EndSession = null; + EOS_Sessions_GetInviteCount = null; + EOS_Sessions_GetInviteIdByIndex = null; + EOS_Sessions_IsUserInSession = null; + EOS_Sessions_JoinSession = null; + EOS_Sessions_QueryInvites = null; + EOS_Sessions_RegisterPlayers = null; + EOS_Sessions_RejectInvite = null; + EOS_Sessions_RemoveNotifyJoinSessionAccepted = null; + EOS_Sessions_RemoveNotifySessionInviteAccepted = null; + EOS_Sessions_RemoveNotifySessionInviteReceived = null; + EOS_Sessions_SendInvite = null; + EOS_Sessions_StartSession = null; + EOS_Sessions_UnregisterPlayers = null; + EOS_Sessions_UpdateSession = null; + EOS_Sessions_UpdateSessionModification = null; + EOS_Shutdown = null; + EOS_Stats_CopyStatByIndex = null; + EOS_Stats_CopyStatByName = null; + EOS_Stats_GetStatsCount = null; + EOS_Stats_IngestStat = null; + EOS_Stats_QueryStats = null; + EOS_Stats_Stat_Release = null; + EOS_TitleStorageFileTransferRequest_CancelRequest = null; + EOS_TitleStorageFileTransferRequest_GetFileRequestState = null; + EOS_TitleStorageFileTransferRequest_GetFilename = null; + EOS_TitleStorageFileTransferRequest_Release = null; + EOS_TitleStorage_CopyFileMetadataAtIndex = null; + EOS_TitleStorage_CopyFileMetadataByFilename = null; + EOS_TitleStorage_DeleteCache = null; + EOS_TitleStorage_FileMetadata_Release = null; + EOS_TitleStorage_GetFileMetadataCount = null; + EOS_TitleStorage_QueryFile = null; + EOS_TitleStorage_QueryFileList = null; + EOS_TitleStorage_ReadFile = null; + EOS_UI_AcknowledgeEventId = null; + EOS_UI_AddNotifyDisplaySettingsUpdated = null; + EOS_UI_GetFriendsVisible = null; + EOS_UI_GetNotificationLocationPreference = null; + EOS_UI_GetToggleFriendsKey = null; + EOS_UI_HideFriends = null; + EOS_UI_IsValidKeyCombination = null; + EOS_UI_RemoveNotifyDisplaySettingsUpdated = null; + EOS_UI_SetDisplayPreference = null; + EOS_UI_SetToggleFriendsKey = null; + EOS_UI_ShowFriends = null; + EOS_UserInfo_CopyExternalUserInfoByAccountId = null; + EOS_UserInfo_CopyExternalUserInfoByAccountType = null; + EOS_UserInfo_CopyExternalUserInfoByIndex = null; + EOS_UserInfo_CopyUserInfo = null; + EOS_UserInfo_ExternalUserInfo_Release = null; + EOS_UserInfo_GetExternalUserInfoCount = null; + EOS_UserInfo_QueryUserInfo = null; + EOS_UserInfo_QueryUserInfoByDisplayName = null; + EOS_UserInfo_QueryUserInfoByExternalAccount = null; + EOS_UserInfo_Release = null; + } +#endif + +#if EOS_DYNAMIC_BINDINGS + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate ulong EOS_Achievements_AddNotifyAchievementsUnlockedCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Achievements.OnAchievementsUnlockedCallbackInternal notificationFn); + internal static EOS_Achievements_AddNotifyAchievementsUnlockedCallback EOS_Achievements_AddNotifyAchievementsUnlocked; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate ulong EOS_Achievements_AddNotifyAchievementsUnlockedV2Callback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Achievements.OnAchievementsUnlockedCallbackV2Internal notificationFn); + internal static EOS_Achievements_AddNotifyAchievementsUnlockedV2Callback EOS_Achievements_AddNotifyAchievementsUnlockedV2; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_Achievements_CopyAchievementDefinitionByAchievementIdCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outDefinition); + internal static EOS_Achievements_CopyAchievementDefinitionByAchievementIdCallback EOS_Achievements_CopyAchievementDefinitionByAchievementId; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_Achievements_CopyAchievementDefinitionByIndexCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outDefinition); + internal static EOS_Achievements_CopyAchievementDefinitionByIndexCallback EOS_Achievements_CopyAchievementDefinitionByIndex; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_Achievements_CopyAchievementDefinitionV2ByAchievementIdCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outDefinition); + internal static EOS_Achievements_CopyAchievementDefinitionV2ByAchievementIdCallback EOS_Achievements_CopyAchievementDefinitionV2ByAchievementId; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_Achievements_CopyAchievementDefinitionV2ByIndexCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outDefinition); + internal static EOS_Achievements_CopyAchievementDefinitionV2ByIndexCallback EOS_Achievements_CopyAchievementDefinitionV2ByIndex; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_Achievements_CopyPlayerAchievementByAchievementIdCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outAchievement); + internal static EOS_Achievements_CopyPlayerAchievementByAchievementIdCallback EOS_Achievements_CopyPlayerAchievementByAchievementId; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_Achievements_CopyPlayerAchievementByIndexCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outAchievement); + internal static EOS_Achievements_CopyPlayerAchievementByIndexCallback EOS_Achievements_CopyPlayerAchievementByIndex; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_Achievements_CopyUnlockedAchievementByAchievementIdCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outAchievement); + internal static EOS_Achievements_CopyUnlockedAchievementByAchievementIdCallback EOS_Achievements_CopyUnlockedAchievementByAchievementId; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_Achievements_CopyUnlockedAchievementByIndexCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outAchievement); + internal static EOS_Achievements_CopyUnlockedAchievementByIndexCallback EOS_Achievements_CopyUnlockedAchievementByIndex; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_Achievements_DefinitionV2_ReleaseCallback(System.IntPtr achievementDefinition); + internal static EOS_Achievements_DefinitionV2_ReleaseCallback EOS_Achievements_DefinitionV2_Release; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_Achievements_Definition_ReleaseCallback(System.IntPtr achievementDefinition); + internal static EOS_Achievements_Definition_ReleaseCallback EOS_Achievements_Definition_Release; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate uint EOS_Achievements_GetAchievementDefinitionCountCallback(System.IntPtr handle, System.IntPtr options); + internal static EOS_Achievements_GetAchievementDefinitionCountCallback EOS_Achievements_GetAchievementDefinitionCount; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate uint EOS_Achievements_GetPlayerAchievementCountCallback(System.IntPtr handle, System.IntPtr options); + internal static EOS_Achievements_GetPlayerAchievementCountCallback EOS_Achievements_GetPlayerAchievementCount; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate uint EOS_Achievements_GetUnlockedAchievementCountCallback(System.IntPtr handle, System.IntPtr options); + internal static EOS_Achievements_GetUnlockedAchievementCountCallback EOS_Achievements_GetUnlockedAchievementCount; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_Achievements_PlayerAchievement_ReleaseCallback(System.IntPtr achievement); + internal static EOS_Achievements_PlayerAchievement_ReleaseCallback EOS_Achievements_PlayerAchievement_Release; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_Achievements_QueryDefinitionsCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Achievements.OnQueryDefinitionsCompleteCallbackInternal completionDelegate); + internal static EOS_Achievements_QueryDefinitionsCallback EOS_Achievements_QueryDefinitions; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_Achievements_QueryPlayerAchievementsCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Achievements.OnQueryPlayerAchievementsCompleteCallbackInternal completionDelegate); + internal static EOS_Achievements_QueryPlayerAchievementsCallback EOS_Achievements_QueryPlayerAchievements; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_Achievements_RemoveNotifyAchievementsUnlockedCallback(System.IntPtr handle, ulong inId); + internal static EOS_Achievements_RemoveNotifyAchievementsUnlockedCallback EOS_Achievements_RemoveNotifyAchievementsUnlocked; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_Achievements_UnlockAchievementsCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Achievements.OnUnlockAchievementsCompleteCallbackInternal completionDelegate); + internal static EOS_Achievements_UnlockAchievementsCallback EOS_Achievements_UnlockAchievements; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_Achievements_UnlockedAchievement_ReleaseCallback(System.IntPtr achievement); + internal static EOS_Achievements_UnlockedAchievement_ReleaseCallback EOS_Achievements_UnlockedAchievement_Release; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_ActiveSession_CopyInfoCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outActiveSessionInfo); + internal static EOS_ActiveSession_CopyInfoCallback EOS_ActiveSession_CopyInfo; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate System.IntPtr EOS_ActiveSession_GetRegisteredPlayerByIndexCallback(System.IntPtr handle, System.IntPtr options); + internal static EOS_ActiveSession_GetRegisteredPlayerByIndexCallback EOS_ActiveSession_GetRegisteredPlayerByIndex; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate uint EOS_ActiveSession_GetRegisteredPlayerCountCallback(System.IntPtr handle, System.IntPtr options); + internal static EOS_ActiveSession_GetRegisteredPlayerCountCallback EOS_ActiveSession_GetRegisteredPlayerCount; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_ActiveSession_Info_ReleaseCallback(System.IntPtr activeSessionInfo); + internal static EOS_ActiveSession_Info_ReleaseCallback EOS_ActiveSession_Info_Release; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_ActiveSession_ReleaseCallback(System.IntPtr activeSessionHandle); + internal static EOS_ActiveSession_ReleaseCallback EOS_ActiveSession_Release; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_AntiCheatClient_AddExternalIntegrityCatalogCallback(System.IntPtr handle, System.IntPtr options); + internal static EOS_AntiCheatClient_AddExternalIntegrityCatalogCallback EOS_AntiCheatClient_AddExternalIntegrityCatalog; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate ulong EOS_AntiCheatClient_AddNotifyMessageToPeerCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, AntiCheatClient.OnMessageToPeerCallbackInternal notificationFn); + internal static EOS_AntiCheatClient_AddNotifyMessageToPeerCallback EOS_AntiCheatClient_AddNotifyMessageToPeer; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate ulong EOS_AntiCheatClient_AddNotifyMessageToServerCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, AntiCheatClient.OnMessageToServerCallbackInternal notificationFn); + internal static EOS_AntiCheatClient_AddNotifyMessageToServerCallback EOS_AntiCheatClient_AddNotifyMessageToServer; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate ulong EOS_AntiCheatClient_AddNotifyPeerActionRequiredCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, AntiCheatClient.OnPeerActionRequiredCallbackInternal notificationFn); + internal static EOS_AntiCheatClient_AddNotifyPeerActionRequiredCallback EOS_AntiCheatClient_AddNotifyPeerActionRequired; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate ulong EOS_AntiCheatClient_AddNotifyPeerAuthStatusChangedCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, AntiCheatClient.OnPeerAuthStatusChangedCallbackInternal notificationFn); + internal static EOS_AntiCheatClient_AddNotifyPeerAuthStatusChangedCallback EOS_AntiCheatClient_AddNotifyPeerAuthStatusChanged; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_AntiCheatClient_BeginSessionCallback(System.IntPtr handle, System.IntPtr options); + internal static EOS_AntiCheatClient_BeginSessionCallback EOS_AntiCheatClient_BeginSession; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_AntiCheatClient_EndSessionCallback(System.IntPtr handle, System.IntPtr options); + internal static EOS_AntiCheatClient_EndSessionCallback EOS_AntiCheatClient_EndSession; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_AntiCheatClient_GetProtectMessageOutputLengthCallback(System.IntPtr handle, System.IntPtr options, ref uint outBufferLengthBytes); + internal static EOS_AntiCheatClient_GetProtectMessageOutputLengthCallback EOS_AntiCheatClient_GetProtectMessageOutputLength; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_AntiCheatClient_PollStatusCallback(System.IntPtr handle, System.IntPtr options, AntiCheatClient.AntiCheatClientViolationType violationType, System.IntPtr outMessage); + internal static EOS_AntiCheatClient_PollStatusCallback EOS_AntiCheatClient_PollStatus; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_AntiCheatClient_ProtectMessageCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr outBuffer, ref uint outBufferLengthBytes); + internal static EOS_AntiCheatClient_ProtectMessageCallback EOS_AntiCheatClient_ProtectMessage; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_AntiCheatClient_ReceiveMessageFromPeerCallback(System.IntPtr handle, System.IntPtr options); + internal static EOS_AntiCheatClient_ReceiveMessageFromPeerCallback EOS_AntiCheatClient_ReceiveMessageFromPeer; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_AntiCheatClient_ReceiveMessageFromServerCallback(System.IntPtr handle, System.IntPtr options); + internal static EOS_AntiCheatClient_ReceiveMessageFromServerCallback EOS_AntiCheatClient_ReceiveMessageFromServer; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_AntiCheatClient_RegisterPeerCallback(System.IntPtr handle, System.IntPtr options); + internal static EOS_AntiCheatClient_RegisterPeerCallback EOS_AntiCheatClient_RegisterPeer; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_AntiCheatClient_RemoveNotifyMessageToPeerCallback(System.IntPtr handle, ulong notificationId); + internal static EOS_AntiCheatClient_RemoveNotifyMessageToPeerCallback EOS_AntiCheatClient_RemoveNotifyMessageToPeer; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_AntiCheatClient_RemoveNotifyMessageToServerCallback(System.IntPtr handle, ulong notificationId); + internal static EOS_AntiCheatClient_RemoveNotifyMessageToServerCallback EOS_AntiCheatClient_RemoveNotifyMessageToServer; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_AntiCheatClient_RemoveNotifyPeerActionRequiredCallback(System.IntPtr handle, ulong notificationId); + internal static EOS_AntiCheatClient_RemoveNotifyPeerActionRequiredCallback EOS_AntiCheatClient_RemoveNotifyPeerActionRequired; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_AntiCheatClient_RemoveNotifyPeerAuthStatusChangedCallback(System.IntPtr handle, ulong notificationId); + internal static EOS_AntiCheatClient_RemoveNotifyPeerAuthStatusChangedCallback EOS_AntiCheatClient_RemoveNotifyPeerAuthStatusChanged; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_AntiCheatClient_UnprotectMessageCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr outBuffer, ref uint outBufferLengthBytes); + internal static EOS_AntiCheatClient_UnprotectMessageCallback EOS_AntiCheatClient_UnprotectMessage; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_AntiCheatClient_UnregisterPeerCallback(System.IntPtr handle, System.IntPtr options); + internal static EOS_AntiCheatClient_UnregisterPeerCallback EOS_AntiCheatClient_UnregisterPeer; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate ulong EOS_AntiCheatServer_AddNotifyClientActionRequiredCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, AntiCheatServer.OnClientActionRequiredCallbackInternal notificationFn); + internal static EOS_AntiCheatServer_AddNotifyClientActionRequiredCallback EOS_AntiCheatServer_AddNotifyClientActionRequired; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate ulong EOS_AntiCheatServer_AddNotifyClientAuthStatusChangedCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, AntiCheatServer.OnClientAuthStatusChangedCallbackInternal notificationFn); + internal static EOS_AntiCheatServer_AddNotifyClientAuthStatusChangedCallback EOS_AntiCheatServer_AddNotifyClientAuthStatusChanged; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate ulong EOS_AntiCheatServer_AddNotifyMessageToClientCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, AntiCheatServer.OnMessageToClientCallbackInternal notificationFn); + internal static EOS_AntiCheatServer_AddNotifyMessageToClientCallback EOS_AntiCheatServer_AddNotifyMessageToClient; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_AntiCheatServer_BeginSessionCallback(System.IntPtr handle, System.IntPtr options); + internal static EOS_AntiCheatServer_BeginSessionCallback EOS_AntiCheatServer_BeginSession; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_AntiCheatServer_EndSessionCallback(System.IntPtr handle, System.IntPtr options); + internal static EOS_AntiCheatServer_EndSessionCallback EOS_AntiCheatServer_EndSession; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_AntiCheatServer_GetProtectMessageOutputLengthCallback(System.IntPtr handle, System.IntPtr options, ref uint outBufferLengthBytes); + internal static EOS_AntiCheatServer_GetProtectMessageOutputLengthCallback EOS_AntiCheatServer_GetProtectMessageOutputLength; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_AntiCheatServer_LogEventCallback(System.IntPtr handle, System.IntPtr options); + internal static EOS_AntiCheatServer_LogEventCallback EOS_AntiCheatServer_LogEvent; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_AntiCheatServer_LogGameRoundEndCallback(System.IntPtr handle, System.IntPtr options); + internal static EOS_AntiCheatServer_LogGameRoundEndCallback EOS_AntiCheatServer_LogGameRoundEnd; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_AntiCheatServer_LogGameRoundStartCallback(System.IntPtr handle, System.IntPtr options); + internal static EOS_AntiCheatServer_LogGameRoundStartCallback EOS_AntiCheatServer_LogGameRoundStart; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_AntiCheatServer_LogPlayerDespawnCallback(System.IntPtr handle, System.IntPtr options); + internal static EOS_AntiCheatServer_LogPlayerDespawnCallback EOS_AntiCheatServer_LogPlayerDespawn; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_AntiCheatServer_LogPlayerReviveCallback(System.IntPtr handle, System.IntPtr options); + internal static EOS_AntiCheatServer_LogPlayerReviveCallback EOS_AntiCheatServer_LogPlayerRevive; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_AntiCheatServer_LogPlayerSpawnCallback(System.IntPtr handle, System.IntPtr options); + internal static EOS_AntiCheatServer_LogPlayerSpawnCallback EOS_AntiCheatServer_LogPlayerSpawn; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_AntiCheatServer_LogPlayerTakeDamageCallback(System.IntPtr handle, System.IntPtr options); + internal static EOS_AntiCheatServer_LogPlayerTakeDamageCallback EOS_AntiCheatServer_LogPlayerTakeDamage; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_AntiCheatServer_LogPlayerTickCallback(System.IntPtr handle, System.IntPtr options); + internal static EOS_AntiCheatServer_LogPlayerTickCallback EOS_AntiCheatServer_LogPlayerTick; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_AntiCheatServer_LogPlayerUseAbilityCallback(System.IntPtr handle, System.IntPtr options); + internal static EOS_AntiCheatServer_LogPlayerUseAbilityCallback EOS_AntiCheatServer_LogPlayerUseAbility; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_AntiCheatServer_LogPlayerUseWeaponCallback(System.IntPtr handle, System.IntPtr options); + internal static EOS_AntiCheatServer_LogPlayerUseWeaponCallback EOS_AntiCheatServer_LogPlayerUseWeapon; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_AntiCheatServer_ProtectMessageCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr outBuffer, ref uint outBufferLengthBytes); + internal static EOS_AntiCheatServer_ProtectMessageCallback EOS_AntiCheatServer_ProtectMessage; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_AntiCheatServer_ReceiveMessageFromClientCallback(System.IntPtr handle, System.IntPtr options); + internal static EOS_AntiCheatServer_ReceiveMessageFromClientCallback EOS_AntiCheatServer_ReceiveMessageFromClient; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_AntiCheatServer_RegisterClientCallback(System.IntPtr handle, System.IntPtr options); + internal static EOS_AntiCheatServer_RegisterClientCallback EOS_AntiCheatServer_RegisterClient; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_AntiCheatServer_RegisterEventCallback(System.IntPtr handle, System.IntPtr options); + internal static EOS_AntiCheatServer_RegisterEventCallback EOS_AntiCheatServer_RegisterEvent; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_AntiCheatServer_RemoveNotifyClientActionRequiredCallback(System.IntPtr handle, ulong notificationId); + internal static EOS_AntiCheatServer_RemoveNotifyClientActionRequiredCallback EOS_AntiCheatServer_RemoveNotifyClientActionRequired; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_AntiCheatServer_RemoveNotifyClientAuthStatusChangedCallback(System.IntPtr handle, ulong notificationId); + internal static EOS_AntiCheatServer_RemoveNotifyClientAuthStatusChangedCallback EOS_AntiCheatServer_RemoveNotifyClientAuthStatusChanged; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_AntiCheatServer_RemoveNotifyMessageToClientCallback(System.IntPtr handle, ulong notificationId); + internal static EOS_AntiCheatServer_RemoveNotifyMessageToClientCallback EOS_AntiCheatServer_RemoveNotifyMessageToClient; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_AntiCheatServer_SetClientDetailsCallback(System.IntPtr handle, System.IntPtr options); + internal static EOS_AntiCheatServer_SetClientDetailsCallback EOS_AntiCheatServer_SetClientDetails; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_AntiCheatServer_SetClientNetworkStateCallback(System.IntPtr handle, System.IntPtr options); + internal static EOS_AntiCheatServer_SetClientNetworkStateCallback EOS_AntiCheatServer_SetClientNetworkState; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_AntiCheatServer_SetGameSessionIdCallback(System.IntPtr handle, System.IntPtr options); + internal static EOS_AntiCheatServer_SetGameSessionIdCallback EOS_AntiCheatServer_SetGameSessionId; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_AntiCheatServer_UnprotectMessageCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr outBuffer, ref uint outBufferLengthBytes); + internal static EOS_AntiCheatServer_UnprotectMessageCallback EOS_AntiCheatServer_UnprotectMessage; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_AntiCheatServer_UnregisterClientCallback(System.IntPtr handle, System.IntPtr options); + internal static EOS_AntiCheatServer_UnregisterClientCallback EOS_AntiCheatServer_UnregisterClient; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate ulong EOS_Auth_AddNotifyLoginStatusChangedCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Auth.OnLoginStatusChangedCallbackInternal notification); + internal static EOS_Auth_AddNotifyLoginStatusChangedCallback EOS_Auth_AddNotifyLoginStatusChanged; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_Auth_CopyUserAuthTokenCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr localUserId, ref System.IntPtr outUserAuthToken); + internal static EOS_Auth_CopyUserAuthTokenCallback EOS_Auth_CopyUserAuthToken; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_Auth_DeletePersistentAuthCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Auth.OnDeletePersistentAuthCallbackInternal completionDelegate); + internal static EOS_Auth_DeletePersistentAuthCallback EOS_Auth_DeletePersistentAuth; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate System.IntPtr EOS_Auth_GetLoggedInAccountByIndexCallback(System.IntPtr handle, int index); + internal static EOS_Auth_GetLoggedInAccountByIndexCallback EOS_Auth_GetLoggedInAccountByIndex; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate int EOS_Auth_GetLoggedInAccountsCountCallback(System.IntPtr handle); + internal static EOS_Auth_GetLoggedInAccountsCountCallback EOS_Auth_GetLoggedInAccountsCount; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate LoginStatus EOS_Auth_GetLoginStatusCallback(System.IntPtr handle, System.IntPtr localUserId); + internal static EOS_Auth_GetLoginStatusCallback EOS_Auth_GetLoginStatus; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_Auth_LinkAccountCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Auth.OnLinkAccountCallbackInternal completionDelegate); + internal static EOS_Auth_LinkAccountCallback EOS_Auth_LinkAccount; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_Auth_LoginCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Auth.OnLoginCallbackInternal completionDelegate); + internal static EOS_Auth_LoginCallback EOS_Auth_Login; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_Auth_LogoutCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Auth.OnLogoutCallbackInternal completionDelegate); + internal static EOS_Auth_LogoutCallback EOS_Auth_Logout; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_Auth_RemoveNotifyLoginStatusChangedCallback(System.IntPtr handle, ulong inId); + internal static EOS_Auth_RemoveNotifyLoginStatusChangedCallback EOS_Auth_RemoveNotifyLoginStatusChanged; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_Auth_Token_ReleaseCallback(System.IntPtr authToken); + internal static EOS_Auth_Token_ReleaseCallback EOS_Auth_Token_Release; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_Auth_VerifyUserAuthCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Auth.OnVerifyUserAuthCallbackInternal completionDelegate); + internal static EOS_Auth_VerifyUserAuthCallback EOS_Auth_VerifyUserAuth; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_ByteArray_ToStringCallback(System.IntPtr byteArray, uint length, System.IntPtr outBuffer, ref uint inOutBufferLength); + internal static EOS_ByteArray_ToStringCallback EOS_ByteArray_ToString; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate ulong EOS_Connect_AddNotifyAuthExpirationCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Connect.OnAuthExpirationCallbackInternal notification); + internal static EOS_Connect_AddNotifyAuthExpirationCallback EOS_Connect_AddNotifyAuthExpiration; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate ulong EOS_Connect_AddNotifyLoginStatusChangedCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Connect.OnLoginStatusChangedCallbackInternal notification); + internal static EOS_Connect_AddNotifyLoginStatusChangedCallback EOS_Connect_AddNotifyLoginStatusChanged; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_Connect_CopyProductUserExternalAccountByAccountIdCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outExternalAccountInfo); + internal static EOS_Connect_CopyProductUserExternalAccountByAccountIdCallback EOS_Connect_CopyProductUserExternalAccountByAccountId; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_Connect_CopyProductUserExternalAccountByAccountTypeCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outExternalAccountInfo); + internal static EOS_Connect_CopyProductUserExternalAccountByAccountTypeCallback EOS_Connect_CopyProductUserExternalAccountByAccountType; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_Connect_CopyProductUserExternalAccountByIndexCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outExternalAccountInfo); + internal static EOS_Connect_CopyProductUserExternalAccountByIndexCallback EOS_Connect_CopyProductUserExternalAccountByIndex; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_Connect_CopyProductUserInfoCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outExternalAccountInfo); + internal static EOS_Connect_CopyProductUserInfoCallback EOS_Connect_CopyProductUserInfo; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_Connect_CreateDeviceIdCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Connect.OnCreateDeviceIdCallbackInternal completionDelegate); + internal static EOS_Connect_CreateDeviceIdCallback EOS_Connect_CreateDeviceId; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_Connect_CreateUserCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Connect.OnCreateUserCallbackInternal completionDelegate); + internal static EOS_Connect_CreateUserCallback EOS_Connect_CreateUser; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_Connect_DeleteDeviceIdCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Connect.OnDeleteDeviceIdCallbackInternal completionDelegate); + internal static EOS_Connect_DeleteDeviceIdCallback EOS_Connect_DeleteDeviceId; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_Connect_ExternalAccountInfo_ReleaseCallback(System.IntPtr externalAccountInfo); + internal static EOS_Connect_ExternalAccountInfo_ReleaseCallback EOS_Connect_ExternalAccountInfo_Release; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate System.IntPtr EOS_Connect_GetExternalAccountMappingCallback(System.IntPtr handle, System.IntPtr options); + internal static EOS_Connect_GetExternalAccountMappingCallback EOS_Connect_GetExternalAccountMapping; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate System.IntPtr EOS_Connect_GetLoggedInUserByIndexCallback(System.IntPtr handle, int index); + internal static EOS_Connect_GetLoggedInUserByIndexCallback EOS_Connect_GetLoggedInUserByIndex; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate int EOS_Connect_GetLoggedInUsersCountCallback(System.IntPtr handle); + internal static EOS_Connect_GetLoggedInUsersCountCallback EOS_Connect_GetLoggedInUsersCount; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate LoginStatus EOS_Connect_GetLoginStatusCallback(System.IntPtr handle, System.IntPtr localUserId); + internal static EOS_Connect_GetLoginStatusCallback EOS_Connect_GetLoginStatus; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate uint EOS_Connect_GetProductUserExternalAccountCountCallback(System.IntPtr handle, System.IntPtr options); + internal static EOS_Connect_GetProductUserExternalAccountCountCallback EOS_Connect_GetProductUserExternalAccountCount; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_Connect_GetProductUserIdMappingCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr outBuffer, ref int inOutBufferLength); + internal static EOS_Connect_GetProductUserIdMappingCallback EOS_Connect_GetProductUserIdMapping; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_Connect_LinkAccountCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Connect.OnLinkAccountCallbackInternal completionDelegate); + internal static EOS_Connect_LinkAccountCallback EOS_Connect_LinkAccount; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_Connect_LoginCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Connect.OnLoginCallbackInternal completionDelegate); + internal static EOS_Connect_LoginCallback EOS_Connect_Login; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_Connect_QueryExternalAccountMappingsCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Connect.OnQueryExternalAccountMappingsCallbackInternal completionDelegate); + internal static EOS_Connect_QueryExternalAccountMappingsCallback EOS_Connect_QueryExternalAccountMappings; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_Connect_QueryProductUserIdMappingsCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Connect.OnQueryProductUserIdMappingsCallbackInternal completionDelegate); + internal static EOS_Connect_QueryProductUserIdMappingsCallback EOS_Connect_QueryProductUserIdMappings; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_Connect_RemoveNotifyAuthExpirationCallback(System.IntPtr handle, ulong inId); + internal static EOS_Connect_RemoveNotifyAuthExpirationCallback EOS_Connect_RemoveNotifyAuthExpiration; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_Connect_RemoveNotifyLoginStatusChangedCallback(System.IntPtr handle, ulong inId); + internal static EOS_Connect_RemoveNotifyLoginStatusChangedCallback EOS_Connect_RemoveNotifyLoginStatusChanged; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_Connect_TransferDeviceIdAccountCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Connect.OnTransferDeviceIdAccountCallbackInternal completionDelegate); + internal static EOS_Connect_TransferDeviceIdAccountCallback EOS_Connect_TransferDeviceIdAccount; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_Connect_UnlinkAccountCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Connect.OnUnlinkAccountCallbackInternal completionDelegate); + internal static EOS_Connect_UnlinkAccountCallback EOS_Connect_UnlinkAccount; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_ContinuanceToken_ToStringCallback(System.IntPtr continuanceToken, System.IntPtr outBuffer, ref int inOutBufferLength); + internal static EOS_ContinuanceToken_ToStringCallback EOS_ContinuanceToken_ToString; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate int EOS_EResult_IsOperationCompleteCallback(Result result); + internal static EOS_EResult_IsOperationCompleteCallback EOS_EResult_IsOperationComplete; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate System.IntPtr EOS_EResult_ToStringCallback(Result result); + internal static EOS_EResult_ToStringCallback EOS_EResult_ToString; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_Ecom_CatalogItem_ReleaseCallback(System.IntPtr catalogItem); + internal static EOS_Ecom_CatalogItem_ReleaseCallback EOS_Ecom_CatalogItem_Release; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_Ecom_CatalogOffer_ReleaseCallback(System.IntPtr catalogOffer); + internal static EOS_Ecom_CatalogOffer_ReleaseCallback EOS_Ecom_CatalogOffer_Release; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_Ecom_CatalogRelease_ReleaseCallback(System.IntPtr catalogRelease); + internal static EOS_Ecom_CatalogRelease_ReleaseCallback EOS_Ecom_CatalogRelease_Release; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_Ecom_CheckoutCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Ecom.OnCheckoutCallbackInternal completionDelegate); + internal static EOS_Ecom_CheckoutCallback EOS_Ecom_Checkout; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_Ecom_CopyEntitlementByIdCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outEntitlement); + internal static EOS_Ecom_CopyEntitlementByIdCallback EOS_Ecom_CopyEntitlementById; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_Ecom_CopyEntitlementByIndexCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outEntitlement); + internal static EOS_Ecom_CopyEntitlementByIndexCallback EOS_Ecom_CopyEntitlementByIndex; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_Ecom_CopyEntitlementByNameAndIndexCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outEntitlement); + internal static EOS_Ecom_CopyEntitlementByNameAndIndexCallback EOS_Ecom_CopyEntitlementByNameAndIndex; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_Ecom_CopyItemByIdCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outItem); + internal static EOS_Ecom_CopyItemByIdCallback EOS_Ecom_CopyItemById; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_Ecom_CopyItemImageInfoByIndexCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outImageInfo); + internal static EOS_Ecom_CopyItemImageInfoByIndexCallback EOS_Ecom_CopyItemImageInfoByIndex; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_Ecom_CopyItemReleaseByIndexCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outRelease); + internal static EOS_Ecom_CopyItemReleaseByIndexCallback EOS_Ecom_CopyItemReleaseByIndex; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_Ecom_CopyOfferByIdCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outOffer); + internal static EOS_Ecom_CopyOfferByIdCallback EOS_Ecom_CopyOfferById; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_Ecom_CopyOfferByIndexCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outOffer); + internal static EOS_Ecom_CopyOfferByIndexCallback EOS_Ecom_CopyOfferByIndex; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_Ecom_CopyOfferImageInfoByIndexCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outImageInfo); + internal static EOS_Ecom_CopyOfferImageInfoByIndexCallback EOS_Ecom_CopyOfferImageInfoByIndex; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_Ecom_CopyOfferItemByIndexCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outItem); + internal static EOS_Ecom_CopyOfferItemByIndexCallback EOS_Ecom_CopyOfferItemByIndex; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_Ecom_CopyTransactionByIdCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outTransaction); + internal static EOS_Ecom_CopyTransactionByIdCallback EOS_Ecom_CopyTransactionById; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_Ecom_CopyTransactionByIndexCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outTransaction); + internal static EOS_Ecom_CopyTransactionByIndexCallback EOS_Ecom_CopyTransactionByIndex; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_Ecom_Entitlement_ReleaseCallback(System.IntPtr entitlement); + internal static EOS_Ecom_Entitlement_ReleaseCallback EOS_Ecom_Entitlement_Release; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate uint EOS_Ecom_GetEntitlementsByNameCountCallback(System.IntPtr handle, System.IntPtr options); + internal static EOS_Ecom_GetEntitlementsByNameCountCallback EOS_Ecom_GetEntitlementsByNameCount; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate uint EOS_Ecom_GetEntitlementsCountCallback(System.IntPtr handle, System.IntPtr options); + internal static EOS_Ecom_GetEntitlementsCountCallback EOS_Ecom_GetEntitlementsCount; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate uint EOS_Ecom_GetItemImageInfoCountCallback(System.IntPtr handle, System.IntPtr options); + internal static EOS_Ecom_GetItemImageInfoCountCallback EOS_Ecom_GetItemImageInfoCount; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate uint EOS_Ecom_GetItemReleaseCountCallback(System.IntPtr handle, System.IntPtr options); + internal static EOS_Ecom_GetItemReleaseCountCallback EOS_Ecom_GetItemReleaseCount; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate uint EOS_Ecom_GetOfferCountCallback(System.IntPtr handle, System.IntPtr options); + internal static EOS_Ecom_GetOfferCountCallback EOS_Ecom_GetOfferCount; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate uint EOS_Ecom_GetOfferImageInfoCountCallback(System.IntPtr handle, System.IntPtr options); + internal static EOS_Ecom_GetOfferImageInfoCountCallback EOS_Ecom_GetOfferImageInfoCount; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate uint EOS_Ecom_GetOfferItemCountCallback(System.IntPtr handle, System.IntPtr options); + internal static EOS_Ecom_GetOfferItemCountCallback EOS_Ecom_GetOfferItemCount; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate uint EOS_Ecom_GetTransactionCountCallback(System.IntPtr handle, System.IntPtr options); + internal static EOS_Ecom_GetTransactionCountCallback EOS_Ecom_GetTransactionCount; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_Ecom_KeyImageInfo_ReleaseCallback(System.IntPtr keyImageInfo); + internal static EOS_Ecom_KeyImageInfo_ReleaseCallback EOS_Ecom_KeyImageInfo_Release; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_Ecom_QueryEntitlementsCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Ecom.OnQueryEntitlementsCallbackInternal completionDelegate); + internal static EOS_Ecom_QueryEntitlementsCallback EOS_Ecom_QueryEntitlements; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_Ecom_QueryOffersCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Ecom.OnQueryOffersCallbackInternal completionDelegate); + internal static EOS_Ecom_QueryOffersCallback EOS_Ecom_QueryOffers; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_Ecom_QueryOwnershipCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Ecom.OnQueryOwnershipCallbackInternal completionDelegate); + internal static EOS_Ecom_QueryOwnershipCallback EOS_Ecom_QueryOwnership; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_Ecom_QueryOwnershipTokenCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Ecom.OnQueryOwnershipTokenCallbackInternal completionDelegate); + internal static EOS_Ecom_QueryOwnershipTokenCallback EOS_Ecom_QueryOwnershipToken; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_Ecom_RedeemEntitlementsCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Ecom.OnRedeemEntitlementsCallbackInternal completionDelegate); + internal static EOS_Ecom_RedeemEntitlementsCallback EOS_Ecom_RedeemEntitlements; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_Ecom_Transaction_CopyEntitlementByIndexCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outEntitlement); + internal static EOS_Ecom_Transaction_CopyEntitlementByIndexCallback EOS_Ecom_Transaction_CopyEntitlementByIndex; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate uint EOS_Ecom_Transaction_GetEntitlementsCountCallback(System.IntPtr handle, System.IntPtr options); + internal static EOS_Ecom_Transaction_GetEntitlementsCountCallback EOS_Ecom_Transaction_GetEntitlementsCount; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_Ecom_Transaction_GetTransactionIdCallback(System.IntPtr handle, System.IntPtr outBuffer, ref int inOutBufferLength); + internal static EOS_Ecom_Transaction_GetTransactionIdCallback EOS_Ecom_Transaction_GetTransactionId; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_Ecom_Transaction_ReleaseCallback(System.IntPtr transaction); + internal static EOS_Ecom_Transaction_ReleaseCallback EOS_Ecom_Transaction_Release; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate System.IntPtr EOS_EpicAccountId_FromStringCallback(System.IntPtr accountIdString); + internal static EOS_EpicAccountId_FromStringCallback EOS_EpicAccountId_FromString; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate int EOS_EpicAccountId_IsValidCallback(System.IntPtr accountId); + internal static EOS_EpicAccountId_IsValidCallback EOS_EpicAccountId_IsValid; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_EpicAccountId_ToStringCallback(System.IntPtr accountId, System.IntPtr outBuffer, ref int inOutBufferLength); + internal static EOS_EpicAccountId_ToStringCallback EOS_EpicAccountId_ToString; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_Friends_AcceptInviteCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Friends.OnAcceptInviteCallbackInternal completionDelegate); + internal static EOS_Friends_AcceptInviteCallback EOS_Friends_AcceptInvite; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate ulong EOS_Friends_AddNotifyFriendsUpdateCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Friends.OnFriendsUpdateCallbackInternal friendsUpdateHandler); + internal static EOS_Friends_AddNotifyFriendsUpdateCallback EOS_Friends_AddNotifyFriendsUpdate; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate System.IntPtr EOS_Friends_GetFriendAtIndexCallback(System.IntPtr handle, System.IntPtr options); + internal static EOS_Friends_GetFriendAtIndexCallback EOS_Friends_GetFriendAtIndex; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate int EOS_Friends_GetFriendsCountCallback(System.IntPtr handle, System.IntPtr options); + internal static EOS_Friends_GetFriendsCountCallback EOS_Friends_GetFriendsCount; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Friends.FriendsStatus EOS_Friends_GetStatusCallback(System.IntPtr handle, System.IntPtr options); + internal static EOS_Friends_GetStatusCallback EOS_Friends_GetStatus; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_Friends_QueryFriendsCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Friends.OnQueryFriendsCallbackInternal completionDelegate); + internal static EOS_Friends_QueryFriendsCallback EOS_Friends_QueryFriends; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_Friends_RejectInviteCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Friends.OnRejectInviteCallbackInternal completionDelegate); + internal static EOS_Friends_RejectInviteCallback EOS_Friends_RejectInvite; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_Friends_RemoveNotifyFriendsUpdateCallback(System.IntPtr handle, ulong notificationId); + internal static EOS_Friends_RemoveNotifyFriendsUpdateCallback EOS_Friends_RemoveNotifyFriendsUpdate; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_Friends_SendInviteCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Friends.OnSendInviteCallbackInternal completionDelegate); + internal static EOS_Friends_SendInviteCallback EOS_Friends_SendInvite; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_InitializeCallback(System.IntPtr options); + internal static EOS_InitializeCallback EOS_Initialize; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate ulong EOS_KWS_AddNotifyPermissionsUpdateReceivedCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, KWS.OnPermissionsUpdateReceivedCallbackInternal notificationFn); + internal static EOS_KWS_AddNotifyPermissionsUpdateReceivedCallback EOS_KWS_AddNotifyPermissionsUpdateReceived; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_KWS_CopyPermissionByIndexCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outPermission); + internal static EOS_KWS_CopyPermissionByIndexCallback EOS_KWS_CopyPermissionByIndex; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_KWS_CreateUserCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, KWS.OnCreateUserCallbackInternal completionDelegate); + internal static EOS_KWS_CreateUserCallback EOS_KWS_CreateUser; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_KWS_GetPermissionByKeyCallback(System.IntPtr handle, System.IntPtr options, ref KWS.KWSPermissionStatus outPermission); + internal static EOS_KWS_GetPermissionByKeyCallback EOS_KWS_GetPermissionByKey; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate int EOS_KWS_GetPermissionsCountCallback(System.IntPtr handle, System.IntPtr options); + internal static EOS_KWS_GetPermissionsCountCallback EOS_KWS_GetPermissionsCount; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_KWS_PermissionStatus_ReleaseCallback(System.IntPtr permissionStatus); + internal static EOS_KWS_PermissionStatus_ReleaseCallback EOS_KWS_PermissionStatus_Release; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_KWS_QueryAgeGateCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, KWS.OnQueryAgeGateCallbackInternal completionDelegate); + internal static EOS_KWS_QueryAgeGateCallback EOS_KWS_QueryAgeGate; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_KWS_QueryPermissionsCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, KWS.OnQueryPermissionsCallbackInternal completionDelegate); + internal static EOS_KWS_QueryPermissionsCallback EOS_KWS_QueryPermissions; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_KWS_RemoveNotifyPermissionsUpdateReceivedCallback(System.IntPtr handle, ulong inId); + internal static EOS_KWS_RemoveNotifyPermissionsUpdateReceivedCallback EOS_KWS_RemoveNotifyPermissionsUpdateReceived; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_KWS_RequestPermissionsCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, KWS.OnRequestPermissionsCallbackInternal completionDelegate); + internal static EOS_KWS_RequestPermissionsCallback EOS_KWS_RequestPermissions; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_KWS_UpdateParentEmailCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, KWS.OnUpdateParentEmailCallbackInternal completionDelegate); + internal static EOS_KWS_UpdateParentEmailCallback EOS_KWS_UpdateParentEmail; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_Leaderboards_CopyLeaderboardDefinitionByIndexCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outLeaderboardDefinition); + internal static EOS_Leaderboards_CopyLeaderboardDefinitionByIndexCallback EOS_Leaderboards_CopyLeaderboardDefinitionByIndex; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_Leaderboards_CopyLeaderboardDefinitionByLeaderboardIdCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outLeaderboardDefinition); + internal static EOS_Leaderboards_CopyLeaderboardDefinitionByLeaderboardIdCallback EOS_Leaderboards_CopyLeaderboardDefinitionByLeaderboardId; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_Leaderboards_CopyLeaderboardRecordByIndexCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outLeaderboardRecord); + internal static EOS_Leaderboards_CopyLeaderboardRecordByIndexCallback EOS_Leaderboards_CopyLeaderboardRecordByIndex; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_Leaderboards_CopyLeaderboardRecordByUserIdCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outLeaderboardRecord); + internal static EOS_Leaderboards_CopyLeaderboardRecordByUserIdCallback EOS_Leaderboards_CopyLeaderboardRecordByUserId; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_Leaderboards_CopyLeaderboardUserScoreByIndexCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outLeaderboardUserScore); + internal static EOS_Leaderboards_CopyLeaderboardUserScoreByIndexCallback EOS_Leaderboards_CopyLeaderboardUserScoreByIndex; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_Leaderboards_CopyLeaderboardUserScoreByUserIdCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outLeaderboardUserScore); + internal static EOS_Leaderboards_CopyLeaderboardUserScoreByUserIdCallback EOS_Leaderboards_CopyLeaderboardUserScoreByUserId; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_Leaderboards_Definition_ReleaseCallback(System.IntPtr leaderboardDefinition); + internal static EOS_Leaderboards_Definition_ReleaseCallback EOS_Leaderboards_Definition_Release; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate uint EOS_Leaderboards_GetLeaderboardDefinitionCountCallback(System.IntPtr handle, System.IntPtr options); + internal static EOS_Leaderboards_GetLeaderboardDefinitionCountCallback EOS_Leaderboards_GetLeaderboardDefinitionCount; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate uint EOS_Leaderboards_GetLeaderboardRecordCountCallback(System.IntPtr handle, System.IntPtr options); + internal static EOS_Leaderboards_GetLeaderboardRecordCountCallback EOS_Leaderboards_GetLeaderboardRecordCount; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate uint EOS_Leaderboards_GetLeaderboardUserScoreCountCallback(System.IntPtr handle, System.IntPtr options); + internal static EOS_Leaderboards_GetLeaderboardUserScoreCountCallback EOS_Leaderboards_GetLeaderboardUserScoreCount; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_Leaderboards_LeaderboardDefinition_ReleaseCallback(System.IntPtr leaderboardDefinition); + internal static EOS_Leaderboards_LeaderboardDefinition_ReleaseCallback EOS_Leaderboards_LeaderboardDefinition_Release; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_Leaderboards_LeaderboardRecord_ReleaseCallback(System.IntPtr leaderboardRecord); + internal static EOS_Leaderboards_LeaderboardRecord_ReleaseCallback EOS_Leaderboards_LeaderboardRecord_Release; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_Leaderboards_LeaderboardUserScore_ReleaseCallback(System.IntPtr leaderboardUserScore); + internal static EOS_Leaderboards_LeaderboardUserScore_ReleaseCallback EOS_Leaderboards_LeaderboardUserScore_Release; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_Leaderboards_QueryLeaderboardDefinitionsCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Leaderboards.OnQueryLeaderboardDefinitionsCompleteCallbackInternal completionDelegate); + internal static EOS_Leaderboards_QueryLeaderboardDefinitionsCallback EOS_Leaderboards_QueryLeaderboardDefinitions; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_Leaderboards_QueryLeaderboardRanksCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Leaderboards.OnQueryLeaderboardRanksCompleteCallbackInternal completionDelegate); + internal static EOS_Leaderboards_QueryLeaderboardRanksCallback EOS_Leaderboards_QueryLeaderboardRanks; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_Leaderboards_QueryLeaderboardUserScoresCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Leaderboards.OnQueryLeaderboardUserScoresCompleteCallbackInternal completionDelegate); + internal static EOS_Leaderboards_QueryLeaderboardUserScoresCallback EOS_Leaderboards_QueryLeaderboardUserScores; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_LobbyDetails_CopyAttributeByIndexCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outAttribute); + internal static EOS_LobbyDetails_CopyAttributeByIndexCallback EOS_LobbyDetails_CopyAttributeByIndex; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_LobbyDetails_CopyAttributeByKeyCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outAttribute); + internal static EOS_LobbyDetails_CopyAttributeByKeyCallback EOS_LobbyDetails_CopyAttributeByKey; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_LobbyDetails_CopyInfoCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outLobbyDetailsInfo); + internal static EOS_LobbyDetails_CopyInfoCallback EOS_LobbyDetails_CopyInfo; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_LobbyDetails_CopyMemberAttributeByIndexCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outAttribute); + internal static EOS_LobbyDetails_CopyMemberAttributeByIndexCallback EOS_LobbyDetails_CopyMemberAttributeByIndex; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_LobbyDetails_CopyMemberAttributeByKeyCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outAttribute); + internal static EOS_LobbyDetails_CopyMemberAttributeByKeyCallback EOS_LobbyDetails_CopyMemberAttributeByKey; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate uint EOS_LobbyDetails_GetAttributeCountCallback(System.IntPtr handle, System.IntPtr options); + internal static EOS_LobbyDetails_GetAttributeCountCallback EOS_LobbyDetails_GetAttributeCount; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate System.IntPtr EOS_LobbyDetails_GetLobbyOwnerCallback(System.IntPtr handle, System.IntPtr options); + internal static EOS_LobbyDetails_GetLobbyOwnerCallback EOS_LobbyDetails_GetLobbyOwner; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate uint EOS_LobbyDetails_GetMemberAttributeCountCallback(System.IntPtr handle, System.IntPtr options); + internal static EOS_LobbyDetails_GetMemberAttributeCountCallback EOS_LobbyDetails_GetMemberAttributeCount; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate System.IntPtr EOS_LobbyDetails_GetMemberByIndexCallback(System.IntPtr handle, System.IntPtr options); + internal static EOS_LobbyDetails_GetMemberByIndexCallback EOS_LobbyDetails_GetMemberByIndex; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate uint EOS_LobbyDetails_GetMemberCountCallback(System.IntPtr handle, System.IntPtr options); + internal static EOS_LobbyDetails_GetMemberCountCallback EOS_LobbyDetails_GetMemberCount; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_LobbyDetails_Info_ReleaseCallback(System.IntPtr lobbyDetailsInfo); + internal static EOS_LobbyDetails_Info_ReleaseCallback EOS_LobbyDetails_Info_Release; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_LobbyDetails_ReleaseCallback(System.IntPtr lobbyHandle); + internal static EOS_LobbyDetails_ReleaseCallback EOS_LobbyDetails_Release; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_LobbyModification_AddAttributeCallback(System.IntPtr handle, System.IntPtr options); + internal static EOS_LobbyModification_AddAttributeCallback EOS_LobbyModification_AddAttribute; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_LobbyModification_AddMemberAttributeCallback(System.IntPtr handle, System.IntPtr options); + internal static EOS_LobbyModification_AddMemberAttributeCallback EOS_LobbyModification_AddMemberAttribute; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_LobbyModification_ReleaseCallback(System.IntPtr lobbyModificationHandle); + internal static EOS_LobbyModification_ReleaseCallback EOS_LobbyModification_Release; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_LobbyModification_RemoveAttributeCallback(System.IntPtr handle, System.IntPtr options); + internal static EOS_LobbyModification_RemoveAttributeCallback EOS_LobbyModification_RemoveAttribute; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_LobbyModification_RemoveMemberAttributeCallback(System.IntPtr handle, System.IntPtr options); + internal static EOS_LobbyModification_RemoveMemberAttributeCallback EOS_LobbyModification_RemoveMemberAttribute; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_LobbyModification_SetBucketIdCallback(System.IntPtr handle, System.IntPtr options); + internal static EOS_LobbyModification_SetBucketIdCallback EOS_LobbyModification_SetBucketId; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_LobbyModification_SetInvitesAllowedCallback(System.IntPtr handle, System.IntPtr options); + internal static EOS_LobbyModification_SetInvitesAllowedCallback EOS_LobbyModification_SetInvitesAllowed; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_LobbyModification_SetMaxMembersCallback(System.IntPtr handle, System.IntPtr options); + internal static EOS_LobbyModification_SetMaxMembersCallback EOS_LobbyModification_SetMaxMembers; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_LobbyModification_SetPermissionLevelCallback(System.IntPtr handle, System.IntPtr options); + internal static EOS_LobbyModification_SetPermissionLevelCallback EOS_LobbyModification_SetPermissionLevel; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_LobbySearch_CopySearchResultByIndexCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outLobbyDetailsHandle); + internal static EOS_LobbySearch_CopySearchResultByIndexCallback EOS_LobbySearch_CopySearchResultByIndex; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_LobbySearch_FindCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Lobby.LobbySearchOnFindCallbackInternal completionDelegate); + internal static EOS_LobbySearch_FindCallback EOS_LobbySearch_Find; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate uint EOS_LobbySearch_GetSearchResultCountCallback(System.IntPtr handle, System.IntPtr options); + internal static EOS_LobbySearch_GetSearchResultCountCallback EOS_LobbySearch_GetSearchResultCount; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_LobbySearch_ReleaseCallback(System.IntPtr lobbySearchHandle); + internal static EOS_LobbySearch_ReleaseCallback EOS_LobbySearch_Release; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_LobbySearch_RemoveParameterCallback(System.IntPtr handle, System.IntPtr options); + internal static EOS_LobbySearch_RemoveParameterCallback EOS_LobbySearch_RemoveParameter; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_LobbySearch_SetLobbyIdCallback(System.IntPtr handle, System.IntPtr options); + internal static EOS_LobbySearch_SetLobbyIdCallback EOS_LobbySearch_SetLobbyId; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_LobbySearch_SetMaxResultsCallback(System.IntPtr handle, System.IntPtr options); + internal static EOS_LobbySearch_SetMaxResultsCallback EOS_LobbySearch_SetMaxResults; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_LobbySearch_SetParameterCallback(System.IntPtr handle, System.IntPtr options); + internal static EOS_LobbySearch_SetParameterCallback EOS_LobbySearch_SetParameter; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_LobbySearch_SetTargetUserIdCallback(System.IntPtr handle, System.IntPtr options); + internal static EOS_LobbySearch_SetTargetUserIdCallback EOS_LobbySearch_SetTargetUserId; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate ulong EOS_Lobby_AddNotifyJoinLobbyAcceptedCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Lobby.OnJoinLobbyAcceptedCallbackInternal notificationFn); + internal static EOS_Lobby_AddNotifyJoinLobbyAcceptedCallback EOS_Lobby_AddNotifyJoinLobbyAccepted; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate ulong EOS_Lobby_AddNotifyLobbyInviteAcceptedCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Lobby.OnLobbyInviteAcceptedCallbackInternal notificationFn); + internal static EOS_Lobby_AddNotifyLobbyInviteAcceptedCallback EOS_Lobby_AddNotifyLobbyInviteAccepted; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate ulong EOS_Lobby_AddNotifyLobbyInviteReceivedCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Lobby.OnLobbyInviteReceivedCallbackInternal notificationFn); + internal static EOS_Lobby_AddNotifyLobbyInviteReceivedCallback EOS_Lobby_AddNotifyLobbyInviteReceived; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate ulong EOS_Lobby_AddNotifyLobbyMemberStatusReceivedCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Lobby.OnLobbyMemberStatusReceivedCallbackInternal notificationFn); + internal static EOS_Lobby_AddNotifyLobbyMemberStatusReceivedCallback EOS_Lobby_AddNotifyLobbyMemberStatusReceived; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate ulong EOS_Lobby_AddNotifyLobbyMemberUpdateReceivedCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Lobby.OnLobbyMemberUpdateReceivedCallbackInternal notificationFn); + internal static EOS_Lobby_AddNotifyLobbyMemberUpdateReceivedCallback EOS_Lobby_AddNotifyLobbyMemberUpdateReceived; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate ulong EOS_Lobby_AddNotifyLobbyUpdateReceivedCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Lobby.OnLobbyUpdateReceivedCallbackInternal notificationFn); + internal static EOS_Lobby_AddNotifyLobbyUpdateReceivedCallback EOS_Lobby_AddNotifyLobbyUpdateReceived; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate ulong EOS_Lobby_AddNotifyRTCRoomConnectionChangedCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Lobby.OnRTCRoomConnectionChangedCallbackInternal notificationFn); + internal static EOS_Lobby_AddNotifyRTCRoomConnectionChangedCallback EOS_Lobby_AddNotifyRTCRoomConnectionChanged; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_Lobby_Attribute_ReleaseCallback(System.IntPtr lobbyAttribute); + internal static EOS_Lobby_Attribute_ReleaseCallback EOS_Lobby_Attribute_Release; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_Lobby_CopyLobbyDetailsHandleCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outLobbyDetailsHandle); + internal static EOS_Lobby_CopyLobbyDetailsHandleCallback EOS_Lobby_CopyLobbyDetailsHandle; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_Lobby_CopyLobbyDetailsHandleByInviteIdCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outLobbyDetailsHandle); + internal static EOS_Lobby_CopyLobbyDetailsHandleByInviteIdCallback EOS_Lobby_CopyLobbyDetailsHandleByInviteId; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_Lobby_CopyLobbyDetailsHandleByUiEventIdCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outLobbyDetailsHandle); + internal static EOS_Lobby_CopyLobbyDetailsHandleByUiEventIdCallback EOS_Lobby_CopyLobbyDetailsHandleByUiEventId; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_Lobby_CreateLobbyCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Lobby.OnCreateLobbyCallbackInternal completionDelegate); + internal static EOS_Lobby_CreateLobbyCallback EOS_Lobby_CreateLobby; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_Lobby_CreateLobbySearchCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outLobbySearchHandle); + internal static EOS_Lobby_CreateLobbySearchCallback EOS_Lobby_CreateLobbySearch; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_Lobby_DestroyLobbyCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Lobby.OnDestroyLobbyCallbackInternal completionDelegate); + internal static EOS_Lobby_DestroyLobbyCallback EOS_Lobby_DestroyLobby; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate uint EOS_Lobby_GetInviteCountCallback(System.IntPtr handle, System.IntPtr options); + internal static EOS_Lobby_GetInviteCountCallback EOS_Lobby_GetInviteCount; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_Lobby_GetInviteIdByIndexCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr outBuffer, ref int inOutBufferLength); + internal static EOS_Lobby_GetInviteIdByIndexCallback EOS_Lobby_GetInviteIdByIndex; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_Lobby_GetRTCRoomNameCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr outBuffer, ref uint inOutBufferLength); + internal static EOS_Lobby_GetRTCRoomNameCallback EOS_Lobby_GetRTCRoomName; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_Lobby_IsRTCRoomConnectedCallback(System.IntPtr handle, System.IntPtr options, ref int bOutIsConnected); + internal static EOS_Lobby_IsRTCRoomConnectedCallback EOS_Lobby_IsRTCRoomConnected; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_Lobby_JoinLobbyCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Lobby.OnJoinLobbyCallbackInternal completionDelegate); + internal static EOS_Lobby_JoinLobbyCallback EOS_Lobby_JoinLobby; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_Lobby_KickMemberCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Lobby.OnKickMemberCallbackInternal completionDelegate); + internal static EOS_Lobby_KickMemberCallback EOS_Lobby_KickMember; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_Lobby_LeaveLobbyCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Lobby.OnLeaveLobbyCallbackInternal completionDelegate); + internal static EOS_Lobby_LeaveLobbyCallback EOS_Lobby_LeaveLobby; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_Lobby_PromoteMemberCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Lobby.OnPromoteMemberCallbackInternal completionDelegate); + internal static EOS_Lobby_PromoteMemberCallback EOS_Lobby_PromoteMember; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_Lobby_QueryInvitesCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Lobby.OnQueryInvitesCallbackInternal completionDelegate); + internal static EOS_Lobby_QueryInvitesCallback EOS_Lobby_QueryInvites; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_Lobby_RejectInviteCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Lobby.OnRejectInviteCallbackInternal completionDelegate); + internal static EOS_Lobby_RejectInviteCallback EOS_Lobby_RejectInvite; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_Lobby_RemoveNotifyJoinLobbyAcceptedCallback(System.IntPtr handle, ulong inId); + internal static EOS_Lobby_RemoveNotifyJoinLobbyAcceptedCallback EOS_Lobby_RemoveNotifyJoinLobbyAccepted; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_Lobby_RemoveNotifyLobbyInviteAcceptedCallback(System.IntPtr handle, ulong inId); + internal static EOS_Lobby_RemoveNotifyLobbyInviteAcceptedCallback EOS_Lobby_RemoveNotifyLobbyInviteAccepted; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_Lobby_RemoveNotifyLobbyInviteReceivedCallback(System.IntPtr handle, ulong inId); + internal static EOS_Lobby_RemoveNotifyLobbyInviteReceivedCallback EOS_Lobby_RemoveNotifyLobbyInviteReceived; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_Lobby_RemoveNotifyLobbyMemberStatusReceivedCallback(System.IntPtr handle, ulong inId); + internal static EOS_Lobby_RemoveNotifyLobbyMemberStatusReceivedCallback EOS_Lobby_RemoveNotifyLobbyMemberStatusReceived; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_Lobby_RemoveNotifyLobbyMemberUpdateReceivedCallback(System.IntPtr handle, ulong inId); + internal static EOS_Lobby_RemoveNotifyLobbyMemberUpdateReceivedCallback EOS_Lobby_RemoveNotifyLobbyMemberUpdateReceived; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_Lobby_RemoveNotifyLobbyUpdateReceivedCallback(System.IntPtr handle, ulong inId); + internal static EOS_Lobby_RemoveNotifyLobbyUpdateReceivedCallback EOS_Lobby_RemoveNotifyLobbyUpdateReceived; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_Lobby_RemoveNotifyRTCRoomConnectionChangedCallback(System.IntPtr handle, ulong inId); + internal static EOS_Lobby_RemoveNotifyRTCRoomConnectionChangedCallback EOS_Lobby_RemoveNotifyRTCRoomConnectionChanged; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_Lobby_SendInviteCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Lobby.OnSendInviteCallbackInternal completionDelegate); + internal static EOS_Lobby_SendInviteCallback EOS_Lobby_SendInvite; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_Lobby_UpdateLobbyCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Lobby.OnUpdateLobbyCallbackInternal completionDelegate); + internal static EOS_Lobby_UpdateLobbyCallback EOS_Lobby_UpdateLobby; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_Lobby_UpdateLobbyModificationCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outLobbyModificationHandle); + internal static EOS_Lobby_UpdateLobbyModificationCallback EOS_Lobby_UpdateLobbyModification; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_Logging_SetCallbackCallback(Logging.LogMessageFuncInternal callback); + internal static EOS_Logging_SetCallbackCallback EOS_Logging_SetCallback; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_Logging_SetLogLevelCallback(Logging.LogCategory logCategory, Logging.LogLevel logLevel); + internal static EOS_Logging_SetLogLevelCallback EOS_Logging_SetLogLevel; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_Metrics_BeginPlayerSessionCallback(System.IntPtr handle, System.IntPtr options); + internal static EOS_Metrics_BeginPlayerSessionCallback EOS_Metrics_BeginPlayerSession; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_Metrics_EndPlayerSessionCallback(System.IntPtr handle, System.IntPtr options); + internal static EOS_Metrics_EndPlayerSessionCallback EOS_Metrics_EndPlayerSession; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_Mods_CopyModInfoCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outEnumeratedMods); + internal static EOS_Mods_CopyModInfoCallback EOS_Mods_CopyModInfo; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_Mods_EnumerateModsCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Mods.OnEnumerateModsCallbackInternal completionDelegate); + internal static EOS_Mods_EnumerateModsCallback EOS_Mods_EnumerateMods; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_Mods_InstallModCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Mods.OnInstallModCallbackInternal completionDelegate); + internal static EOS_Mods_InstallModCallback EOS_Mods_InstallMod; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_Mods_ModInfo_ReleaseCallback(System.IntPtr modInfo); + internal static EOS_Mods_ModInfo_ReleaseCallback EOS_Mods_ModInfo_Release; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_Mods_UninstallModCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Mods.OnUninstallModCallbackInternal completionDelegate); + internal static EOS_Mods_UninstallModCallback EOS_Mods_UninstallMod; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_Mods_UpdateModCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Mods.OnUpdateModCallbackInternal completionDelegate); + internal static EOS_Mods_UpdateModCallback EOS_Mods_UpdateMod; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_P2P_AcceptConnectionCallback(System.IntPtr handle, System.IntPtr options); + internal static EOS_P2P_AcceptConnectionCallback EOS_P2P_AcceptConnection; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate ulong EOS_P2P_AddNotifyIncomingPacketQueueFullCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, P2P.OnIncomingPacketQueueFullCallbackInternal incomingPacketQueueFullHandler); + internal static EOS_P2P_AddNotifyIncomingPacketQueueFullCallback EOS_P2P_AddNotifyIncomingPacketQueueFull; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate ulong EOS_P2P_AddNotifyPeerConnectionClosedCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, P2P.OnRemoteConnectionClosedCallbackInternal connectionClosedHandler); + internal static EOS_P2P_AddNotifyPeerConnectionClosedCallback EOS_P2P_AddNotifyPeerConnectionClosed; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate ulong EOS_P2P_AddNotifyPeerConnectionRequestCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, P2P.OnIncomingConnectionRequestCallbackInternal connectionRequestHandler); + internal static EOS_P2P_AddNotifyPeerConnectionRequestCallback EOS_P2P_AddNotifyPeerConnectionRequest; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_P2P_CloseConnectionCallback(System.IntPtr handle, System.IntPtr options); + internal static EOS_P2P_CloseConnectionCallback EOS_P2P_CloseConnection; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_P2P_CloseConnectionsCallback(System.IntPtr handle, System.IntPtr options); + internal static EOS_P2P_CloseConnectionsCallback EOS_P2P_CloseConnections; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_P2P_GetNATTypeCallback(System.IntPtr handle, System.IntPtr options, ref P2P.NATType outNATType); + internal static EOS_P2P_GetNATTypeCallback EOS_P2P_GetNATType; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_P2P_GetNextReceivedPacketSizeCallback(System.IntPtr handle, System.IntPtr options, ref uint outPacketSizeBytes); + internal static EOS_P2P_GetNextReceivedPacketSizeCallback EOS_P2P_GetNextReceivedPacketSize; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_P2P_GetPacketQueueInfoCallback(System.IntPtr handle, System.IntPtr options, ref P2P.PacketQueueInfoInternal outPacketQueueInfo); + internal static EOS_P2P_GetPacketQueueInfoCallback EOS_P2P_GetPacketQueueInfo; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_P2P_GetPortRangeCallback(System.IntPtr handle, System.IntPtr options, ref ushort outPort, ref ushort outNumAdditionalPortsToTry); + internal static EOS_P2P_GetPortRangeCallback EOS_P2P_GetPortRange; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_P2P_GetRelayControlCallback(System.IntPtr handle, System.IntPtr options, ref P2P.RelayControl outRelayControl); + internal static EOS_P2P_GetRelayControlCallback EOS_P2P_GetRelayControl; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_P2P_QueryNATTypeCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, P2P.OnQueryNATTypeCompleteCallbackInternal completionDelegate); + internal static EOS_P2P_QueryNATTypeCallback EOS_P2P_QueryNATType; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_P2P_ReceivePacketCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outPeerId, ref P2P.SocketIdInternal outSocketId, ref byte outChannel, System.IntPtr outData, ref uint outBytesWritten); + internal static EOS_P2P_ReceivePacketCallback EOS_P2P_ReceivePacket; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_P2P_RemoveNotifyIncomingPacketQueueFullCallback(System.IntPtr handle, ulong notificationId); + internal static EOS_P2P_RemoveNotifyIncomingPacketQueueFullCallback EOS_P2P_RemoveNotifyIncomingPacketQueueFull; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_P2P_RemoveNotifyPeerConnectionClosedCallback(System.IntPtr handle, ulong notificationId); + internal static EOS_P2P_RemoveNotifyPeerConnectionClosedCallback EOS_P2P_RemoveNotifyPeerConnectionClosed; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_P2P_RemoveNotifyPeerConnectionRequestCallback(System.IntPtr handle, ulong notificationId); + internal static EOS_P2P_RemoveNotifyPeerConnectionRequestCallback EOS_P2P_RemoveNotifyPeerConnectionRequest; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_P2P_SendPacketCallback(System.IntPtr handle, System.IntPtr options); + internal static EOS_P2P_SendPacketCallback EOS_P2P_SendPacket; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_P2P_SetPacketQueueSizeCallback(System.IntPtr handle, System.IntPtr options); + internal static EOS_P2P_SetPacketQueueSizeCallback EOS_P2P_SetPacketQueueSize; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_P2P_SetPortRangeCallback(System.IntPtr handle, System.IntPtr options); + internal static EOS_P2P_SetPortRangeCallback EOS_P2P_SetPortRange; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_P2P_SetRelayControlCallback(System.IntPtr handle, System.IntPtr options); + internal static EOS_P2P_SetRelayControlCallback EOS_P2P_SetRelayControl; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_Platform_CheckForLauncherAndRestartCallback(System.IntPtr handle); + internal static EOS_Platform_CheckForLauncherAndRestartCallback EOS_Platform_CheckForLauncherAndRestart; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate System.IntPtr EOS_Platform_CreateCallback(System.IntPtr options); + internal static EOS_Platform_CreateCallback EOS_Platform_Create; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate System.IntPtr EOS_Platform_GetAchievementsInterfaceCallback(System.IntPtr handle); + internal static EOS_Platform_GetAchievementsInterfaceCallback EOS_Platform_GetAchievementsInterface; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_Platform_GetActiveCountryCodeCallback(System.IntPtr handle, System.IntPtr localUserId, System.IntPtr outBuffer, ref int inOutBufferLength); + internal static EOS_Platform_GetActiveCountryCodeCallback EOS_Platform_GetActiveCountryCode; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_Platform_GetActiveLocaleCodeCallback(System.IntPtr handle, System.IntPtr localUserId, System.IntPtr outBuffer, ref int inOutBufferLength); + internal static EOS_Platform_GetActiveLocaleCodeCallback EOS_Platform_GetActiveLocaleCode; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate System.IntPtr EOS_Platform_GetAntiCheatClientInterfaceCallback(System.IntPtr handle); + internal static EOS_Platform_GetAntiCheatClientInterfaceCallback EOS_Platform_GetAntiCheatClientInterface; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate System.IntPtr EOS_Platform_GetAntiCheatServerInterfaceCallback(System.IntPtr handle); + internal static EOS_Platform_GetAntiCheatServerInterfaceCallback EOS_Platform_GetAntiCheatServerInterface; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate System.IntPtr EOS_Platform_GetAuthInterfaceCallback(System.IntPtr handle); + internal static EOS_Platform_GetAuthInterfaceCallback EOS_Platform_GetAuthInterface; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate System.IntPtr EOS_Platform_GetConnectInterfaceCallback(System.IntPtr handle); + internal static EOS_Platform_GetConnectInterfaceCallback EOS_Platform_GetConnectInterface; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate System.IntPtr EOS_Platform_GetEcomInterfaceCallback(System.IntPtr handle); + internal static EOS_Platform_GetEcomInterfaceCallback EOS_Platform_GetEcomInterface; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate System.IntPtr EOS_Platform_GetFriendsInterfaceCallback(System.IntPtr handle); + internal static EOS_Platform_GetFriendsInterfaceCallback EOS_Platform_GetFriendsInterface; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate System.IntPtr EOS_Platform_GetKWSInterfaceCallback(System.IntPtr handle); + internal static EOS_Platform_GetKWSInterfaceCallback EOS_Platform_GetKWSInterface; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate System.IntPtr EOS_Platform_GetLeaderboardsInterfaceCallback(System.IntPtr handle); + internal static EOS_Platform_GetLeaderboardsInterfaceCallback EOS_Platform_GetLeaderboardsInterface; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate System.IntPtr EOS_Platform_GetLobbyInterfaceCallback(System.IntPtr handle); + internal static EOS_Platform_GetLobbyInterfaceCallback EOS_Platform_GetLobbyInterface; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate System.IntPtr EOS_Platform_GetMetricsInterfaceCallback(System.IntPtr handle); + internal static EOS_Platform_GetMetricsInterfaceCallback EOS_Platform_GetMetricsInterface; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate System.IntPtr EOS_Platform_GetModsInterfaceCallback(System.IntPtr handle); + internal static EOS_Platform_GetModsInterfaceCallback EOS_Platform_GetModsInterface; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_Platform_GetOverrideCountryCodeCallback(System.IntPtr handle, System.IntPtr outBuffer, ref int inOutBufferLength); + internal static EOS_Platform_GetOverrideCountryCodeCallback EOS_Platform_GetOverrideCountryCode; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_Platform_GetOverrideLocaleCodeCallback(System.IntPtr handle, System.IntPtr outBuffer, ref int inOutBufferLength); + internal static EOS_Platform_GetOverrideLocaleCodeCallback EOS_Platform_GetOverrideLocaleCode; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate System.IntPtr EOS_Platform_GetP2PInterfaceCallback(System.IntPtr handle); + internal static EOS_Platform_GetP2PInterfaceCallback EOS_Platform_GetP2PInterface; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate System.IntPtr EOS_Platform_GetPlayerDataStorageInterfaceCallback(System.IntPtr handle); + internal static EOS_Platform_GetPlayerDataStorageInterfaceCallback EOS_Platform_GetPlayerDataStorageInterface; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate System.IntPtr EOS_Platform_GetPresenceInterfaceCallback(System.IntPtr handle); + internal static EOS_Platform_GetPresenceInterfaceCallback EOS_Platform_GetPresenceInterface; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate System.IntPtr EOS_Platform_GetRTCAdminInterfaceCallback(System.IntPtr handle); + internal static EOS_Platform_GetRTCAdminInterfaceCallback EOS_Platform_GetRTCAdminInterface; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate System.IntPtr EOS_Platform_GetRTCInterfaceCallback(System.IntPtr handle); + internal static EOS_Platform_GetRTCInterfaceCallback EOS_Platform_GetRTCInterface; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate System.IntPtr EOS_Platform_GetReportsInterfaceCallback(System.IntPtr handle); + internal static EOS_Platform_GetReportsInterfaceCallback EOS_Platform_GetReportsInterface; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate System.IntPtr EOS_Platform_GetSanctionsInterfaceCallback(System.IntPtr handle); + internal static EOS_Platform_GetSanctionsInterfaceCallback EOS_Platform_GetSanctionsInterface; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate System.IntPtr EOS_Platform_GetSessionsInterfaceCallback(System.IntPtr handle); + internal static EOS_Platform_GetSessionsInterfaceCallback EOS_Platform_GetSessionsInterface; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate System.IntPtr EOS_Platform_GetStatsInterfaceCallback(System.IntPtr handle); + internal static EOS_Platform_GetStatsInterfaceCallback EOS_Platform_GetStatsInterface; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate System.IntPtr EOS_Platform_GetTitleStorageInterfaceCallback(System.IntPtr handle); + internal static EOS_Platform_GetTitleStorageInterfaceCallback EOS_Platform_GetTitleStorageInterface; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate System.IntPtr EOS_Platform_GetUIInterfaceCallback(System.IntPtr handle); + internal static EOS_Platform_GetUIInterfaceCallback EOS_Platform_GetUIInterface; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate System.IntPtr EOS_Platform_GetUserInfoInterfaceCallback(System.IntPtr handle); + internal static EOS_Platform_GetUserInfoInterfaceCallback EOS_Platform_GetUserInfoInterface; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_Platform_ReleaseCallback(System.IntPtr handle); + internal static EOS_Platform_ReleaseCallback EOS_Platform_Release; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_Platform_SetOverrideCountryCodeCallback(System.IntPtr handle, System.IntPtr newCountryCode); + internal static EOS_Platform_SetOverrideCountryCodeCallback EOS_Platform_SetOverrideCountryCode; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_Platform_SetOverrideLocaleCodeCallback(System.IntPtr handle, System.IntPtr newLocaleCode); + internal static EOS_Platform_SetOverrideLocaleCodeCallback EOS_Platform_SetOverrideLocaleCode; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_Platform_TickCallback(System.IntPtr handle); + internal static EOS_Platform_TickCallback EOS_Platform_Tick; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_PlayerDataStorageFileTransferRequest_CancelRequestCallback(System.IntPtr handle); + internal static EOS_PlayerDataStorageFileTransferRequest_CancelRequestCallback EOS_PlayerDataStorageFileTransferRequest_CancelRequest; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_PlayerDataStorageFileTransferRequest_GetFileRequestStateCallback(System.IntPtr handle); + internal static EOS_PlayerDataStorageFileTransferRequest_GetFileRequestStateCallback EOS_PlayerDataStorageFileTransferRequest_GetFileRequestState; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_PlayerDataStorageFileTransferRequest_GetFilenameCallback(System.IntPtr handle, uint filenameStringBufferSizeBytes, System.IntPtr outStringBuffer, ref int outStringLength); + internal static EOS_PlayerDataStorageFileTransferRequest_GetFilenameCallback EOS_PlayerDataStorageFileTransferRequest_GetFilename; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_PlayerDataStorageFileTransferRequest_ReleaseCallback(System.IntPtr playerDataStorageFileTransferHandle); + internal static EOS_PlayerDataStorageFileTransferRequest_ReleaseCallback EOS_PlayerDataStorageFileTransferRequest_Release; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_PlayerDataStorage_CopyFileMetadataAtIndexCallback(System.IntPtr handle, System.IntPtr copyFileMetadataOptions, ref System.IntPtr outMetadata); + internal static EOS_PlayerDataStorage_CopyFileMetadataAtIndexCallback EOS_PlayerDataStorage_CopyFileMetadataAtIndex; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_PlayerDataStorage_CopyFileMetadataByFilenameCallback(System.IntPtr handle, System.IntPtr copyFileMetadataOptions, ref System.IntPtr outMetadata); + internal static EOS_PlayerDataStorage_CopyFileMetadataByFilenameCallback EOS_PlayerDataStorage_CopyFileMetadataByFilename; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_PlayerDataStorage_DeleteCacheCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, PlayerDataStorage.OnDeleteCacheCompleteCallbackInternal completionCallback); + internal static EOS_PlayerDataStorage_DeleteCacheCallback EOS_PlayerDataStorage_DeleteCache; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_PlayerDataStorage_DeleteFileCallback(System.IntPtr handle, System.IntPtr deleteOptions, System.IntPtr clientData, PlayerDataStorage.OnDeleteFileCompleteCallbackInternal completionCallback); + internal static EOS_PlayerDataStorage_DeleteFileCallback EOS_PlayerDataStorage_DeleteFile; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_PlayerDataStorage_DuplicateFileCallback(System.IntPtr handle, System.IntPtr duplicateOptions, System.IntPtr clientData, PlayerDataStorage.OnDuplicateFileCompleteCallbackInternal completionCallback); + internal static EOS_PlayerDataStorage_DuplicateFileCallback EOS_PlayerDataStorage_DuplicateFile; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_PlayerDataStorage_FileMetadata_ReleaseCallback(System.IntPtr fileMetadata); + internal static EOS_PlayerDataStorage_FileMetadata_ReleaseCallback EOS_PlayerDataStorage_FileMetadata_Release; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_PlayerDataStorage_GetFileMetadataCountCallback(System.IntPtr handle, System.IntPtr getFileMetadataCountOptions, ref int outFileMetadataCount); + internal static EOS_PlayerDataStorage_GetFileMetadataCountCallback EOS_PlayerDataStorage_GetFileMetadataCount; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_PlayerDataStorage_QueryFileCallback(System.IntPtr handle, System.IntPtr queryFileOptions, System.IntPtr clientData, PlayerDataStorage.OnQueryFileCompleteCallbackInternal completionCallback); + internal static EOS_PlayerDataStorage_QueryFileCallback EOS_PlayerDataStorage_QueryFile; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_PlayerDataStorage_QueryFileListCallback(System.IntPtr handle, System.IntPtr queryFileListOptions, System.IntPtr clientData, PlayerDataStorage.OnQueryFileListCompleteCallbackInternal completionCallback); + internal static EOS_PlayerDataStorage_QueryFileListCallback EOS_PlayerDataStorage_QueryFileList; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate System.IntPtr EOS_PlayerDataStorage_ReadFileCallback(System.IntPtr handle, System.IntPtr readOptions, System.IntPtr clientData, PlayerDataStorage.OnReadFileCompleteCallbackInternal completionCallback); + internal static EOS_PlayerDataStorage_ReadFileCallback EOS_PlayerDataStorage_ReadFile; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate System.IntPtr EOS_PlayerDataStorage_WriteFileCallback(System.IntPtr handle, System.IntPtr writeOptions, System.IntPtr clientData, PlayerDataStorage.OnWriteFileCompleteCallbackInternal completionCallback); + internal static EOS_PlayerDataStorage_WriteFileCallback EOS_PlayerDataStorage_WriteFile; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_PresenceModification_DeleteDataCallback(System.IntPtr handle, System.IntPtr options); + internal static EOS_PresenceModification_DeleteDataCallback EOS_PresenceModification_DeleteData; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_PresenceModification_ReleaseCallback(System.IntPtr presenceModificationHandle); + internal static EOS_PresenceModification_ReleaseCallback EOS_PresenceModification_Release; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_PresenceModification_SetDataCallback(System.IntPtr handle, System.IntPtr options); + internal static EOS_PresenceModification_SetDataCallback EOS_PresenceModification_SetData; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_PresenceModification_SetJoinInfoCallback(System.IntPtr handle, System.IntPtr options); + internal static EOS_PresenceModification_SetJoinInfoCallback EOS_PresenceModification_SetJoinInfo; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_PresenceModification_SetRawRichTextCallback(System.IntPtr handle, System.IntPtr options); + internal static EOS_PresenceModification_SetRawRichTextCallback EOS_PresenceModification_SetRawRichText; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_PresenceModification_SetStatusCallback(System.IntPtr handle, System.IntPtr options); + internal static EOS_PresenceModification_SetStatusCallback EOS_PresenceModification_SetStatus; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate ulong EOS_Presence_AddNotifyJoinGameAcceptedCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Presence.OnJoinGameAcceptedCallbackInternal notificationFn); + internal static EOS_Presence_AddNotifyJoinGameAcceptedCallback EOS_Presence_AddNotifyJoinGameAccepted; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate ulong EOS_Presence_AddNotifyOnPresenceChangedCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Presence.OnPresenceChangedCallbackInternal notificationHandler); + internal static EOS_Presence_AddNotifyOnPresenceChangedCallback EOS_Presence_AddNotifyOnPresenceChanged; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_Presence_CopyPresenceCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outPresence); + internal static EOS_Presence_CopyPresenceCallback EOS_Presence_CopyPresence; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_Presence_CreatePresenceModificationCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outPresenceModificationHandle); + internal static EOS_Presence_CreatePresenceModificationCallback EOS_Presence_CreatePresenceModification; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_Presence_GetJoinInfoCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr outBuffer, ref int inOutBufferLength); + internal static EOS_Presence_GetJoinInfoCallback EOS_Presence_GetJoinInfo; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate int EOS_Presence_HasPresenceCallback(System.IntPtr handle, System.IntPtr options); + internal static EOS_Presence_HasPresenceCallback EOS_Presence_HasPresence; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_Presence_Info_ReleaseCallback(System.IntPtr presenceInfo); + internal static EOS_Presence_Info_ReleaseCallback EOS_Presence_Info_Release; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_Presence_QueryPresenceCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Presence.OnQueryPresenceCompleteCallbackInternal completionDelegate); + internal static EOS_Presence_QueryPresenceCallback EOS_Presence_QueryPresence; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_Presence_RemoveNotifyJoinGameAcceptedCallback(System.IntPtr handle, ulong inId); + internal static EOS_Presence_RemoveNotifyJoinGameAcceptedCallback EOS_Presence_RemoveNotifyJoinGameAccepted; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_Presence_RemoveNotifyOnPresenceChangedCallback(System.IntPtr handle, ulong notificationId); + internal static EOS_Presence_RemoveNotifyOnPresenceChangedCallback EOS_Presence_RemoveNotifyOnPresenceChanged; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_Presence_SetPresenceCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Presence.SetPresenceCompleteCallbackInternal completionDelegate); + internal static EOS_Presence_SetPresenceCallback EOS_Presence_SetPresence; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate System.IntPtr EOS_ProductUserId_FromStringCallback(System.IntPtr productUserIdString); + internal static EOS_ProductUserId_FromStringCallback EOS_ProductUserId_FromString; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate int EOS_ProductUserId_IsValidCallback(System.IntPtr accountId); + internal static EOS_ProductUserId_IsValidCallback EOS_ProductUserId_IsValid; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_ProductUserId_ToStringCallback(System.IntPtr accountId, System.IntPtr outBuffer, ref int inOutBufferLength); + internal static EOS_ProductUserId_ToStringCallback EOS_ProductUserId_ToString; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_RTCAdmin_CopyUserTokenByIndexCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outUserToken); + internal static EOS_RTCAdmin_CopyUserTokenByIndexCallback EOS_RTCAdmin_CopyUserTokenByIndex; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_RTCAdmin_CopyUserTokenByUserIdCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outUserToken); + internal static EOS_RTCAdmin_CopyUserTokenByUserIdCallback EOS_RTCAdmin_CopyUserTokenByUserId; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_RTCAdmin_KickCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, RTCAdmin.OnKickCompleteCallbackInternal completionDelegate); + internal static EOS_RTCAdmin_KickCallback EOS_RTCAdmin_Kick; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_RTCAdmin_QueryJoinRoomTokenCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, RTCAdmin.OnQueryJoinRoomTokenCompleteCallbackInternal completionDelegate); + internal static EOS_RTCAdmin_QueryJoinRoomTokenCallback EOS_RTCAdmin_QueryJoinRoomToken; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_RTCAdmin_SetParticipantHardMuteCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, RTCAdmin.OnSetParticipantHardMuteCompleteCallbackInternal completionDelegate); + internal static EOS_RTCAdmin_SetParticipantHardMuteCallback EOS_RTCAdmin_SetParticipantHardMute; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_RTCAdmin_UserToken_ReleaseCallback(System.IntPtr userToken); + internal static EOS_RTCAdmin_UserToken_ReleaseCallback EOS_RTCAdmin_UserToken_Release; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate ulong EOS_RTCAudio_AddNotifyAudioBeforeRenderCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, RTCAudio.OnAudioBeforeRenderCallbackInternal completionDelegate); + internal static EOS_RTCAudio_AddNotifyAudioBeforeRenderCallback EOS_RTCAudio_AddNotifyAudioBeforeRender; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate ulong EOS_RTCAudio_AddNotifyAudioBeforeSendCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, RTCAudio.OnAudioBeforeSendCallbackInternal completionDelegate); + internal static EOS_RTCAudio_AddNotifyAudioBeforeSendCallback EOS_RTCAudio_AddNotifyAudioBeforeSend; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate ulong EOS_RTCAudio_AddNotifyAudioDevicesChangedCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, RTCAudio.OnAudioDevicesChangedCallbackInternal completionDelegate); + internal static EOS_RTCAudio_AddNotifyAudioDevicesChangedCallback EOS_RTCAudio_AddNotifyAudioDevicesChanged; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate ulong EOS_RTCAudio_AddNotifyAudioInputStateCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, RTCAudio.OnAudioInputStateCallbackInternal completionDelegate); + internal static EOS_RTCAudio_AddNotifyAudioInputStateCallback EOS_RTCAudio_AddNotifyAudioInputState; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate ulong EOS_RTCAudio_AddNotifyAudioOutputStateCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, RTCAudio.OnAudioOutputStateCallbackInternal completionDelegate); + internal static EOS_RTCAudio_AddNotifyAudioOutputStateCallback EOS_RTCAudio_AddNotifyAudioOutputState; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate ulong EOS_RTCAudio_AddNotifyParticipantUpdatedCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, RTCAudio.OnParticipantUpdatedCallbackInternal completionDelegate); + internal static EOS_RTCAudio_AddNotifyParticipantUpdatedCallback EOS_RTCAudio_AddNotifyParticipantUpdated; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate System.IntPtr EOS_RTCAudio_GetAudioInputDeviceByIndexCallback(System.IntPtr handle, System.IntPtr options); + internal static EOS_RTCAudio_GetAudioInputDeviceByIndexCallback EOS_RTCAudio_GetAudioInputDeviceByIndex; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate uint EOS_RTCAudio_GetAudioInputDevicesCountCallback(System.IntPtr handle, System.IntPtr options); + internal static EOS_RTCAudio_GetAudioInputDevicesCountCallback EOS_RTCAudio_GetAudioInputDevicesCount; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate System.IntPtr EOS_RTCAudio_GetAudioOutputDeviceByIndexCallback(System.IntPtr handle, System.IntPtr options); + internal static EOS_RTCAudio_GetAudioOutputDeviceByIndexCallback EOS_RTCAudio_GetAudioOutputDeviceByIndex; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate uint EOS_RTCAudio_GetAudioOutputDevicesCountCallback(System.IntPtr handle, System.IntPtr options); + internal static EOS_RTCAudio_GetAudioOutputDevicesCountCallback EOS_RTCAudio_GetAudioOutputDevicesCount; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_RTCAudio_RegisterPlatformAudioUserCallback(System.IntPtr handle, System.IntPtr options); + internal static EOS_RTCAudio_RegisterPlatformAudioUserCallback EOS_RTCAudio_RegisterPlatformAudioUser; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_RTCAudio_RemoveNotifyAudioBeforeRenderCallback(System.IntPtr handle, ulong notificationId); + internal static EOS_RTCAudio_RemoveNotifyAudioBeforeRenderCallback EOS_RTCAudio_RemoveNotifyAudioBeforeRender; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_RTCAudio_RemoveNotifyAudioBeforeSendCallback(System.IntPtr handle, ulong notificationId); + internal static EOS_RTCAudio_RemoveNotifyAudioBeforeSendCallback EOS_RTCAudio_RemoveNotifyAudioBeforeSend; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_RTCAudio_RemoveNotifyAudioDevicesChangedCallback(System.IntPtr handle, ulong notificationId); + internal static EOS_RTCAudio_RemoveNotifyAudioDevicesChangedCallback EOS_RTCAudio_RemoveNotifyAudioDevicesChanged; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_RTCAudio_RemoveNotifyAudioInputStateCallback(System.IntPtr handle, ulong notificationId); + internal static EOS_RTCAudio_RemoveNotifyAudioInputStateCallback EOS_RTCAudio_RemoveNotifyAudioInputState; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_RTCAudio_RemoveNotifyAudioOutputStateCallback(System.IntPtr handle, ulong notificationId); + internal static EOS_RTCAudio_RemoveNotifyAudioOutputStateCallback EOS_RTCAudio_RemoveNotifyAudioOutputState; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_RTCAudio_RemoveNotifyParticipantUpdatedCallback(System.IntPtr handle, ulong notificationId); + internal static EOS_RTCAudio_RemoveNotifyParticipantUpdatedCallback EOS_RTCAudio_RemoveNotifyParticipantUpdated; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_RTCAudio_SendAudioCallback(System.IntPtr handle, System.IntPtr options); + internal static EOS_RTCAudio_SendAudioCallback EOS_RTCAudio_SendAudio; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_RTCAudio_SetAudioInputSettingsCallback(System.IntPtr handle, System.IntPtr options); + internal static EOS_RTCAudio_SetAudioInputSettingsCallback EOS_RTCAudio_SetAudioInputSettings; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_RTCAudio_SetAudioOutputSettingsCallback(System.IntPtr handle, System.IntPtr options); + internal static EOS_RTCAudio_SetAudioOutputSettingsCallback EOS_RTCAudio_SetAudioOutputSettings; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_RTCAudio_UnregisterPlatformAudioUserCallback(System.IntPtr handle, System.IntPtr options); + internal static EOS_RTCAudio_UnregisterPlatformAudioUserCallback EOS_RTCAudio_UnregisterPlatformAudioUser; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_RTCAudio_UpdateReceivingCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, RTCAudio.OnUpdateReceivingCallbackInternal completionDelegate); + internal static EOS_RTCAudio_UpdateReceivingCallback EOS_RTCAudio_UpdateReceiving; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_RTCAudio_UpdateSendingCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, RTCAudio.OnUpdateSendingCallbackInternal completionDelegate); + internal static EOS_RTCAudio_UpdateSendingCallback EOS_RTCAudio_UpdateSending; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate ulong EOS_RTC_AddNotifyDisconnectedCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, RTC.OnDisconnectedCallbackInternal completionDelegate); + internal static EOS_RTC_AddNotifyDisconnectedCallback EOS_RTC_AddNotifyDisconnected; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate ulong EOS_RTC_AddNotifyParticipantStatusChangedCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, RTC.OnParticipantStatusChangedCallbackInternal completionDelegate); + internal static EOS_RTC_AddNotifyParticipantStatusChangedCallback EOS_RTC_AddNotifyParticipantStatusChanged; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_RTC_BlockParticipantCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, RTC.OnBlockParticipantCallbackInternal completionDelegate); + internal static EOS_RTC_BlockParticipantCallback EOS_RTC_BlockParticipant; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate System.IntPtr EOS_RTC_GetAudioInterfaceCallback(System.IntPtr handle); + internal static EOS_RTC_GetAudioInterfaceCallback EOS_RTC_GetAudioInterface; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_RTC_JoinRoomCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, RTC.OnJoinRoomCallbackInternal completionDelegate); + internal static EOS_RTC_JoinRoomCallback EOS_RTC_JoinRoom; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_RTC_LeaveRoomCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, RTC.OnLeaveRoomCallbackInternal completionDelegate); + internal static EOS_RTC_LeaveRoomCallback EOS_RTC_LeaveRoom; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_RTC_RemoveNotifyDisconnectedCallback(System.IntPtr handle, ulong notificationId); + internal static EOS_RTC_RemoveNotifyDisconnectedCallback EOS_RTC_RemoveNotifyDisconnected; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_RTC_RemoveNotifyParticipantStatusChangedCallback(System.IntPtr handle, ulong notificationId); + internal static EOS_RTC_RemoveNotifyParticipantStatusChangedCallback EOS_RTC_RemoveNotifyParticipantStatusChanged; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_Reports_SendPlayerBehaviorReportCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Reports.OnSendPlayerBehaviorReportCompleteCallbackInternal completionDelegate); + internal static EOS_Reports_SendPlayerBehaviorReportCallback EOS_Reports_SendPlayerBehaviorReport; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_Sanctions_CopyPlayerSanctionByIndexCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outSanction); + internal static EOS_Sanctions_CopyPlayerSanctionByIndexCallback EOS_Sanctions_CopyPlayerSanctionByIndex; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate uint EOS_Sanctions_GetPlayerSanctionCountCallback(System.IntPtr handle, System.IntPtr options); + internal static EOS_Sanctions_GetPlayerSanctionCountCallback EOS_Sanctions_GetPlayerSanctionCount; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_Sanctions_PlayerSanction_ReleaseCallback(System.IntPtr sanction); + internal static EOS_Sanctions_PlayerSanction_ReleaseCallback EOS_Sanctions_PlayerSanction_Release; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_Sanctions_QueryActivePlayerSanctionsCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Sanctions.OnQueryActivePlayerSanctionsCallbackInternal completionDelegate); + internal static EOS_Sanctions_QueryActivePlayerSanctionsCallback EOS_Sanctions_QueryActivePlayerSanctions; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_SessionDetails_Attribute_ReleaseCallback(System.IntPtr sessionAttribute); + internal static EOS_SessionDetails_Attribute_ReleaseCallback EOS_SessionDetails_Attribute_Release; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_SessionDetails_CopyInfoCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outSessionInfo); + internal static EOS_SessionDetails_CopyInfoCallback EOS_SessionDetails_CopyInfo; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_SessionDetails_CopySessionAttributeByIndexCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outSessionAttribute); + internal static EOS_SessionDetails_CopySessionAttributeByIndexCallback EOS_SessionDetails_CopySessionAttributeByIndex; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_SessionDetails_CopySessionAttributeByKeyCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outSessionAttribute); + internal static EOS_SessionDetails_CopySessionAttributeByKeyCallback EOS_SessionDetails_CopySessionAttributeByKey; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate uint EOS_SessionDetails_GetSessionAttributeCountCallback(System.IntPtr handle, System.IntPtr options); + internal static EOS_SessionDetails_GetSessionAttributeCountCallback EOS_SessionDetails_GetSessionAttributeCount; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_SessionDetails_Info_ReleaseCallback(System.IntPtr sessionInfo); + internal static EOS_SessionDetails_Info_ReleaseCallback EOS_SessionDetails_Info_Release; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_SessionDetails_ReleaseCallback(System.IntPtr sessionHandle); + internal static EOS_SessionDetails_ReleaseCallback EOS_SessionDetails_Release; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_SessionModification_AddAttributeCallback(System.IntPtr handle, System.IntPtr options); + internal static EOS_SessionModification_AddAttributeCallback EOS_SessionModification_AddAttribute; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_SessionModification_ReleaseCallback(System.IntPtr sessionModificationHandle); + internal static EOS_SessionModification_ReleaseCallback EOS_SessionModification_Release; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_SessionModification_RemoveAttributeCallback(System.IntPtr handle, System.IntPtr options); + internal static EOS_SessionModification_RemoveAttributeCallback EOS_SessionModification_RemoveAttribute; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_SessionModification_SetBucketIdCallback(System.IntPtr handle, System.IntPtr options); + internal static EOS_SessionModification_SetBucketIdCallback EOS_SessionModification_SetBucketId; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_SessionModification_SetHostAddressCallback(System.IntPtr handle, System.IntPtr options); + internal static EOS_SessionModification_SetHostAddressCallback EOS_SessionModification_SetHostAddress; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_SessionModification_SetInvitesAllowedCallback(System.IntPtr handle, System.IntPtr options); + internal static EOS_SessionModification_SetInvitesAllowedCallback EOS_SessionModification_SetInvitesAllowed; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_SessionModification_SetJoinInProgressAllowedCallback(System.IntPtr handle, System.IntPtr options); + internal static EOS_SessionModification_SetJoinInProgressAllowedCallback EOS_SessionModification_SetJoinInProgressAllowed; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_SessionModification_SetMaxPlayersCallback(System.IntPtr handle, System.IntPtr options); + internal static EOS_SessionModification_SetMaxPlayersCallback EOS_SessionModification_SetMaxPlayers; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_SessionModification_SetPermissionLevelCallback(System.IntPtr handle, System.IntPtr options); + internal static EOS_SessionModification_SetPermissionLevelCallback EOS_SessionModification_SetPermissionLevel; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_SessionSearch_CopySearchResultByIndexCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outSessionHandle); + internal static EOS_SessionSearch_CopySearchResultByIndexCallback EOS_SessionSearch_CopySearchResultByIndex; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_SessionSearch_FindCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Sessions.SessionSearchOnFindCallbackInternal completionDelegate); + internal static EOS_SessionSearch_FindCallback EOS_SessionSearch_Find; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate uint EOS_SessionSearch_GetSearchResultCountCallback(System.IntPtr handle, System.IntPtr options); + internal static EOS_SessionSearch_GetSearchResultCountCallback EOS_SessionSearch_GetSearchResultCount; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_SessionSearch_ReleaseCallback(System.IntPtr sessionSearchHandle); + internal static EOS_SessionSearch_ReleaseCallback EOS_SessionSearch_Release; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_SessionSearch_RemoveParameterCallback(System.IntPtr handle, System.IntPtr options); + internal static EOS_SessionSearch_RemoveParameterCallback EOS_SessionSearch_RemoveParameter; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_SessionSearch_SetMaxResultsCallback(System.IntPtr handle, System.IntPtr options); + internal static EOS_SessionSearch_SetMaxResultsCallback EOS_SessionSearch_SetMaxResults; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_SessionSearch_SetParameterCallback(System.IntPtr handle, System.IntPtr options); + internal static EOS_SessionSearch_SetParameterCallback EOS_SessionSearch_SetParameter; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_SessionSearch_SetSessionIdCallback(System.IntPtr handle, System.IntPtr options); + internal static EOS_SessionSearch_SetSessionIdCallback EOS_SessionSearch_SetSessionId; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_SessionSearch_SetTargetUserIdCallback(System.IntPtr handle, System.IntPtr options); + internal static EOS_SessionSearch_SetTargetUserIdCallback EOS_SessionSearch_SetTargetUserId; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate ulong EOS_Sessions_AddNotifyJoinSessionAcceptedCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Sessions.OnJoinSessionAcceptedCallbackInternal notificationFn); + internal static EOS_Sessions_AddNotifyJoinSessionAcceptedCallback EOS_Sessions_AddNotifyJoinSessionAccepted; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate ulong EOS_Sessions_AddNotifySessionInviteAcceptedCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Sessions.OnSessionInviteAcceptedCallbackInternal notificationFn); + internal static EOS_Sessions_AddNotifySessionInviteAcceptedCallback EOS_Sessions_AddNotifySessionInviteAccepted; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate ulong EOS_Sessions_AddNotifySessionInviteReceivedCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Sessions.OnSessionInviteReceivedCallbackInternal notificationFn); + internal static EOS_Sessions_AddNotifySessionInviteReceivedCallback EOS_Sessions_AddNotifySessionInviteReceived; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_Sessions_CopyActiveSessionHandleCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outSessionHandle); + internal static EOS_Sessions_CopyActiveSessionHandleCallback EOS_Sessions_CopyActiveSessionHandle; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_Sessions_CopySessionHandleByInviteIdCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outSessionHandle); + internal static EOS_Sessions_CopySessionHandleByInviteIdCallback EOS_Sessions_CopySessionHandleByInviteId; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_Sessions_CopySessionHandleByUiEventIdCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outSessionHandle); + internal static EOS_Sessions_CopySessionHandleByUiEventIdCallback EOS_Sessions_CopySessionHandleByUiEventId; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_Sessions_CopySessionHandleForPresenceCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outSessionHandle); + internal static EOS_Sessions_CopySessionHandleForPresenceCallback EOS_Sessions_CopySessionHandleForPresence; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_Sessions_CreateSessionModificationCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outSessionModificationHandle); + internal static EOS_Sessions_CreateSessionModificationCallback EOS_Sessions_CreateSessionModification; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_Sessions_CreateSessionSearchCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outSessionSearchHandle); + internal static EOS_Sessions_CreateSessionSearchCallback EOS_Sessions_CreateSessionSearch; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_Sessions_DestroySessionCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Sessions.OnDestroySessionCallbackInternal completionDelegate); + internal static EOS_Sessions_DestroySessionCallback EOS_Sessions_DestroySession; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_Sessions_DumpSessionStateCallback(System.IntPtr handle, System.IntPtr options); + internal static EOS_Sessions_DumpSessionStateCallback EOS_Sessions_DumpSessionState; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_Sessions_EndSessionCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Sessions.OnEndSessionCallbackInternal completionDelegate); + internal static EOS_Sessions_EndSessionCallback EOS_Sessions_EndSession; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate uint EOS_Sessions_GetInviteCountCallback(System.IntPtr handle, System.IntPtr options); + internal static EOS_Sessions_GetInviteCountCallback EOS_Sessions_GetInviteCount; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_Sessions_GetInviteIdByIndexCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr outBuffer, ref int inOutBufferLength); + internal static EOS_Sessions_GetInviteIdByIndexCallback EOS_Sessions_GetInviteIdByIndex; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_Sessions_IsUserInSessionCallback(System.IntPtr handle, System.IntPtr options); + internal static EOS_Sessions_IsUserInSessionCallback EOS_Sessions_IsUserInSession; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_Sessions_JoinSessionCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Sessions.OnJoinSessionCallbackInternal completionDelegate); + internal static EOS_Sessions_JoinSessionCallback EOS_Sessions_JoinSession; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_Sessions_QueryInvitesCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Sessions.OnQueryInvitesCallbackInternal completionDelegate); + internal static EOS_Sessions_QueryInvitesCallback EOS_Sessions_QueryInvites; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_Sessions_RegisterPlayersCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Sessions.OnRegisterPlayersCallbackInternal completionDelegate); + internal static EOS_Sessions_RegisterPlayersCallback EOS_Sessions_RegisterPlayers; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_Sessions_RejectInviteCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Sessions.OnRejectInviteCallbackInternal completionDelegate); + internal static EOS_Sessions_RejectInviteCallback EOS_Sessions_RejectInvite; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_Sessions_RemoveNotifyJoinSessionAcceptedCallback(System.IntPtr handle, ulong inId); + internal static EOS_Sessions_RemoveNotifyJoinSessionAcceptedCallback EOS_Sessions_RemoveNotifyJoinSessionAccepted; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_Sessions_RemoveNotifySessionInviteAcceptedCallback(System.IntPtr handle, ulong inId); + internal static EOS_Sessions_RemoveNotifySessionInviteAcceptedCallback EOS_Sessions_RemoveNotifySessionInviteAccepted; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_Sessions_RemoveNotifySessionInviteReceivedCallback(System.IntPtr handle, ulong inId); + internal static EOS_Sessions_RemoveNotifySessionInviteReceivedCallback EOS_Sessions_RemoveNotifySessionInviteReceived; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_Sessions_SendInviteCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Sessions.OnSendInviteCallbackInternal completionDelegate); + internal static EOS_Sessions_SendInviteCallback EOS_Sessions_SendInvite; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_Sessions_StartSessionCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Sessions.OnStartSessionCallbackInternal completionDelegate); + internal static EOS_Sessions_StartSessionCallback EOS_Sessions_StartSession; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_Sessions_UnregisterPlayersCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Sessions.OnUnregisterPlayersCallbackInternal completionDelegate); + internal static EOS_Sessions_UnregisterPlayersCallback EOS_Sessions_UnregisterPlayers; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_Sessions_UpdateSessionCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Sessions.OnUpdateSessionCallbackInternal completionDelegate); + internal static EOS_Sessions_UpdateSessionCallback EOS_Sessions_UpdateSession; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_Sessions_UpdateSessionModificationCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outSessionModificationHandle); + internal static EOS_Sessions_UpdateSessionModificationCallback EOS_Sessions_UpdateSessionModification; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_ShutdownCallback(); + internal static EOS_ShutdownCallback EOS_Shutdown; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_Stats_CopyStatByIndexCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outStat); + internal static EOS_Stats_CopyStatByIndexCallback EOS_Stats_CopyStatByIndex; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_Stats_CopyStatByNameCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outStat); + internal static EOS_Stats_CopyStatByNameCallback EOS_Stats_CopyStatByName; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate uint EOS_Stats_GetStatsCountCallback(System.IntPtr handle, System.IntPtr options); + internal static EOS_Stats_GetStatsCountCallback EOS_Stats_GetStatsCount; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_Stats_IngestStatCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Stats.OnIngestStatCompleteCallbackInternal completionDelegate); + internal static EOS_Stats_IngestStatCallback EOS_Stats_IngestStat; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_Stats_QueryStatsCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Stats.OnQueryStatsCompleteCallbackInternal completionDelegate); + internal static EOS_Stats_QueryStatsCallback EOS_Stats_QueryStats; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_Stats_Stat_ReleaseCallback(System.IntPtr stat); + internal static EOS_Stats_Stat_ReleaseCallback EOS_Stats_Stat_Release; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_TitleStorageFileTransferRequest_CancelRequestCallback(System.IntPtr handle); + internal static EOS_TitleStorageFileTransferRequest_CancelRequestCallback EOS_TitleStorageFileTransferRequest_CancelRequest; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_TitleStorageFileTransferRequest_GetFileRequestStateCallback(System.IntPtr handle); + internal static EOS_TitleStorageFileTransferRequest_GetFileRequestStateCallback EOS_TitleStorageFileTransferRequest_GetFileRequestState; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_TitleStorageFileTransferRequest_GetFilenameCallback(System.IntPtr handle, uint filenameStringBufferSizeBytes, System.IntPtr outStringBuffer, ref int outStringLength); + internal static EOS_TitleStorageFileTransferRequest_GetFilenameCallback EOS_TitleStorageFileTransferRequest_GetFilename; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_TitleStorageFileTransferRequest_ReleaseCallback(System.IntPtr titleStorageFileTransferHandle); + internal static EOS_TitleStorageFileTransferRequest_ReleaseCallback EOS_TitleStorageFileTransferRequest_Release; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_TitleStorage_CopyFileMetadataAtIndexCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outMetadata); + internal static EOS_TitleStorage_CopyFileMetadataAtIndexCallback EOS_TitleStorage_CopyFileMetadataAtIndex; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_TitleStorage_CopyFileMetadataByFilenameCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outMetadata); + internal static EOS_TitleStorage_CopyFileMetadataByFilenameCallback EOS_TitleStorage_CopyFileMetadataByFilename; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_TitleStorage_DeleteCacheCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, TitleStorage.OnDeleteCacheCompleteCallbackInternal completionCallback); + internal static EOS_TitleStorage_DeleteCacheCallback EOS_TitleStorage_DeleteCache; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_TitleStorage_FileMetadata_ReleaseCallback(System.IntPtr fileMetadata); + internal static EOS_TitleStorage_FileMetadata_ReleaseCallback EOS_TitleStorage_FileMetadata_Release; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate uint EOS_TitleStorage_GetFileMetadataCountCallback(System.IntPtr handle, System.IntPtr options); + internal static EOS_TitleStorage_GetFileMetadataCountCallback EOS_TitleStorage_GetFileMetadataCount; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_TitleStorage_QueryFileCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, TitleStorage.OnQueryFileCompleteCallbackInternal completionCallback); + internal static EOS_TitleStorage_QueryFileCallback EOS_TitleStorage_QueryFile; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_TitleStorage_QueryFileListCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, TitleStorage.OnQueryFileListCompleteCallbackInternal completionCallback); + internal static EOS_TitleStorage_QueryFileListCallback EOS_TitleStorage_QueryFileList; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate System.IntPtr EOS_TitleStorage_ReadFileCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, TitleStorage.OnReadFileCompleteCallbackInternal completionCallback); + internal static EOS_TitleStorage_ReadFileCallback EOS_TitleStorage_ReadFile; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_UI_AcknowledgeEventIdCallback(System.IntPtr handle, System.IntPtr options); + internal static EOS_UI_AcknowledgeEventIdCallback EOS_UI_AcknowledgeEventId; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate ulong EOS_UI_AddNotifyDisplaySettingsUpdatedCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, UI.OnDisplaySettingsUpdatedCallbackInternal notificationFn); + internal static EOS_UI_AddNotifyDisplaySettingsUpdatedCallback EOS_UI_AddNotifyDisplaySettingsUpdated; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate int EOS_UI_GetFriendsVisibleCallback(System.IntPtr handle, System.IntPtr options); + internal static EOS_UI_GetFriendsVisibleCallback EOS_UI_GetFriendsVisible; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate UI.NotificationLocation EOS_UI_GetNotificationLocationPreferenceCallback(System.IntPtr handle); + internal static EOS_UI_GetNotificationLocationPreferenceCallback EOS_UI_GetNotificationLocationPreference; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate UI.KeyCombination EOS_UI_GetToggleFriendsKeyCallback(System.IntPtr handle, System.IntPtr options); + internal static EOS_UI_GetToggleFriendsKeyCallback EOS_UI_GetToggleFriendsKey; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_UI_HideFriendsCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, UI.OnHideFriendsCallbackInternal completionDelegate); + internal static EOS_UI_HideFriendsCallback EOS_UI_HideFriends; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate int EOS_UI_IsValidKeyCombinationCallback(System.IntPtr handle, UI.KeyCombination keyCombination); + internal static EOS_UI_IsValidKeyCombinationCallback EOS_UI_IsValidKeyCombination; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_UI_RemoveNotifyDisplaySettingsUpdatedCallback(System.IntPtr handle, ulong id); + internal static EOS_UI_RemoveNotifyDisplaySettingsUpdatedCallback EOS_UI_RemoveNotifyDisplaySettingsUpdated; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_UI_SetDisplayPreferenceCallback(System.IntPtr handle, System.IntPtr options); + internal static EOS_UI_SetDisplayPreferenceCallback EOS_UI_SetDisplayPreference; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_UI_SetToggleFriendsKeyCallback(System.IntPtr handle, System.IntPtr options); + internal static EOS_UI_SetToggleFriendsKeyCallback EOS_UI_SetToggleFriendsKey; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_UI_ShowFriendsCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, UI.OnShowFriendsCallbackInternal completionDelegate); + internal static EOS_UI_ShowFriendsCallback EOS_UI_ShowFriends; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_UserInfo_CopyExternalUserInfoByAccountIdCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outExternalUserInfo); + internal static EOS_UserInfo_CopyExternalUserInfoByAccountIdCallback EOS_UserInfo_CopyExternalUserInfoByAccountId; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_UserInfo_CopyExternalUserInfoByAccountTypeCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outExternalUserInfo); + internal static EOS_UserInfo_CopyExternalUserInfoByAccountTypeCallback EOS_UserInfo_CopyExternalUserInfoByAccountType; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_UserInfo_CopyExternalUserInfoByIndexCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outExternalUserInfo); + internal static EOS_UserInfo_CopyExternalUserInfoByIndexCallback EOS_UserInfo_CopyExternalUserInfoByIndex; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_UserInfo_CopyUserInfoCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outUserInfo); + internal static EOS_UserInfo_CopyUserInfoCallback EOS_UserInfo_CopyUserInfo; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_UserInfo_ExternalUserInfo_ReleaseCallback(System.IntPtr externalUserInfo); + internal static EOS_UserInfo_ExternalUserInfo_ReleaseCallback EOS_UserInfo_ExternalUserInfo_Release; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate uint EOS_UserInfo_GetExternalUserInfoCountCallback(System.IntPtr handle, System.IntPtr options); + internal static EOS_UserInfo_GetExternalUserInfoCountCallback EOS_UserInfo_GetExternalUserInfoCount; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_UserInfo_QueryUserInfoCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, UserInfo.OnQueryUserInfoCallbackInternal completionDelegate); + internal static EOS_UserInfo_QueryUserInfoCallback EOS_UserInfo_QueryUserInfo; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_UserInfo_QueryUserInfoByDisplayNameCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, UserInfo.OnQueryUserInfoByDisplayNameCallbackInternal completionDelegate); + internal static EOS_UserInfo_QueryUserInfoByDisplayNameCallback EOS_UserInfo_QueryUserInfoByDisplayName; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_UserInfo_QueryUserInfoByExternalAccountCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, UserInfo.OnQueryUserInfoByExternalAccountCallbackInternal completionDelegate); + internal static EOS_UserInfo_QueryUserInfoByExternalAccountCallback EOS_UserInfo_QueryUserInfoByExternalAccount; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_UserInfo_ReleaseCallback(System.IntPtr userInfo); + internal static EOS_UserInfo_ReleaseCallback EOS_UserInfo_Release; +#endif + +#if !EOS_DYNAMIC_BINDINGS + [DllImport(Config.LibraryName)] + internal static extern ulong EOS_Achievements_AddNotifyAchievementsUnlocked(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Achievements.OnAchievementsUnlockedCallbackInternal notificationFn); + + [DllImport(Config.LibraryName)] + internal static extern ulong EOS_Achievements_AddNotifyAchievementsUnlockedV2(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Achievements.OnAchievementsUnlockedCallbackV2Internal notificationFn); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_Achievements_CopyAchievementDefinitionByAchievementId(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outDefinition); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_Achievements_CopyAchievementDefinitionByIndex(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outDefinition); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_Achievements_CopyAchievementDefinitionV2ByAchievementId(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outDefinition); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_Achievements_CopyAchievementDefinitionV2ByIndex(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outDefinition); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_Achievements_CopyPlayerAchievementByAchievementId(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outAchievement); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_Achievements_CopyPlayerAchievementByIndex(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outAchievement); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_Achievements_CopyUnlockedAchievementByAchievementId(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outAchievement); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_Achievements_CopyUnlockedAchievementByIndex(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outAchievement); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_Achievements_DefinitionV2_Release(System.IntPtr achievementDefinition); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_Achievements_Definition_Release(System.IntPtr achievementDefinition); + + [DllImport(Config.LibraryName)] + internal static extern uint EOS_Achievements_GetAchievementDefinitionCount(System.IntPtr handle, System.IntPtr options); + + [DllImport(Config.LibraryName)] + internal static extern uint EOS_Achievements_GetPlayerAchievementCount(System.IntPtr handle, System.IntPtr options); + + [DllImport(Config.LibraryName)] + internal static extern uint EOS_Achievements_GetUnlockedAchievementCount(System.IntPtr handle, System.IntPtr options); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_Achievements_PlayerAchievement_Release(System.IntPtr achievement); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_Achievements_QueryDefinitions(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Achievements.OnQueryDefinitionsCompleteCallbackInternal completionDelegate); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_Achievements_QueryPlayerAchievements(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Achievements.OnQueryPlayerAchievementsCompleteCallbackInternal completionDelegate); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_Achievements_RemoveNotifyAchievementsUnlocked(System.IntPtr handle, ulong inId); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_Achievements_UnlockAchievements(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Achievements.OnUnlockAchievementsCompleteCallbackInternal completionDelegate); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_Achievements_UnlockedAchievement_Release(System.IntPtr achievement); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_ActiveSession_CopyInfo(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outActiveSessionInfo); + + [DllImport(Config.LibraryName)] + internal static extern System.IntPtr EOS_ActiveSession_GetRegisteredPlayerByIndex(System.IntPtr handle, System.IntPtr options); + + [DllImport(Config.LibraryName)] + internal static extern uint EOS_ActiveSession_GetRegisteredPlayerCount(System.IntPtr handle, System.IntPtr options); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_ActiveSession_Info_Release(System.IntPtr activeSessionInfo); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_ActiveSession_Release(System.IntPtr activeSessionHandle); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_AntiCheatClient_AddExternalIntegrityCatalog(System.IntPtr handle, System.IntPtr options); + + [DllImport(Config.LibraryName)] + internal static extern ulong EOS_AntiCheatClient_AddNotifyMessageToPeer(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, AntiCheatClient.OnMessageToPeerCallbackInternal notificationFn); + + [DllImport(Config.LibraryName)] + internal static extern ulong EOS_AntiCheatClient_AddNotifyMessageToServer(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, AntiCheatClient.OnMessageToServerCallbackInternal notificationFn); + + [DllImport(Config.LibraryName)] + internal static extern ulong EOS_AntiCheatClient_AddNotifyPeerActionRequired(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, AntiCheatClient.OnPeerActionRequiredCallbackInternal notificationFn); + + [DllImport(Config.LibraryName)] + internal static extern ulong EOS_AntiCheatClient_AddNotifyPeerAuthStatusChanged(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, AntiCheatClient.OnPeerAuthStatusChangedCallbackInternal notificationFn); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_AntiCheatClient_BeginSession(System.IntPtr handle, System.IntPtr options); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_AntiCheatClient_EndSession(System.IntPtr handle, System.IntPtr options); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_AntiCheatClient_GetProtectMessageOutputLength(System.IntPtr handle, System.IntPtr options, ref uint outBufferLengthBytes); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_AntiCheatClient_PollStatus(System.IntPtr handle, System.IntPtr options, AntiCheatClient.AntiCheatClientViolationType violationType, System.IntPtr outMessage); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_AntiCheatClient_ProtectMessage(System.IntPtr handle, System.IntPtr options, System.IntPtr outBuffer, ref uint outBufferLengthBytes); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_AntiCheatClient_ReceiveMessageFromPeer(System.IntPtr handle, System.IntPtr options); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_AntiCheatClient_ReceiveMessageFromServer(System.IntPtr handle, System.IntPtr options); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_AntiCheatClient_RegisterPeer(System.IntPtr handle, System.IntPtr options); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_AntiCheatClient_RemoveNotifyMessageToPeer(System.IntPtr handle, ulong notificationId); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_AntiCheatClient_RemoveNotifyMessageToServer(System.IntPtr handle, ulong notificationId); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_AntiCheatClient_RemoveNotifyPeerActionRequired(System.IntPtr handle, ulong notificationId); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_AntiCheatClient_RemoveNotifyPeerAuthStatusChanged(System.IntPtr handle, ulong notificationId); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_AntiCheatClient_UnprotectMessage(System.IntPtr handle, System.IntPtr options, System.IntPtr outBuffer, ref uint outBufferLengthBytes); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_AntiCheatClient_UnregisterPeer(System.IntPtr handle, System.IntPtr options); + + [DllImport(Config.LibraryName)] + internal static extern ulong EOS_AntiCheatServer_AddNotifyClientActionRequired(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, AntiCheatServer.OnClientActionRequiredCallbackInternal notificationFn); + + [DllImport(Config.LibraryName)] + internal static extern ulong EOS_AntiCheatServer_AddNotifyClientAuthStatusChanged(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, AntiCheatServer.OnClientAuthStatusChangedCallbackInternal notificationFn); + + [DllImport(Config.LibraryName)] + internal static extern ulong EOS_AntiCheatServer_AddNotifyMessageToClient(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, AntiCheatServer.OnMessageToClientCallbackInternal notificationFn); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_AntiCheatServer_BeginSession(System.IntPtr handle, System.IntPtr options); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_AntiCheatServer_EndSession(System.IntPtr handle, System.IntPtr options); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_AntiCheatServer_GetProtectMessageOutputLength(System.IntPtr handle, System.IntPtr options, ref uint outBufferLengthBytes); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_AntiCheatServer_LogEvent(System.IntPtr handle, System.IntPtr options); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_AntiCheatServer_LogGameRoundEnd(System.IntPtr handle, System.IntPtr options); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_AntiCheatServer_LogGameRoundStart(System.IntPtr handle, System.IntPtr options); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_AntiCheatServer_LogPlayerDespawn(System.IntPtr handle, System.IntPtr options); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_AntiCheatServer_LogPlayerRevive(System.IntPtr handle, System.IntPtr options); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_AntiCheatServer_LogPlayerSpawn(System.IntPtr handle, System.IntPtr options); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_AntiCheatServer_LogPlayerTakeDamage(System.IntPtr handle, System.IntPtr options); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_AntiCheatServer_LogPlayerTick(System.IntPtr handle, System.IntPtr options); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_AntiCheatServer_LogPlayerUseAbility(System.IntPtr handle, System.IntPtr options); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_AntiCheatServer_LogPlayerUseWeapon(System.IntPtr handle, System.IntPtr options); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_AntiCheatServer_ProtectMessage(System.IntPtr handle, System.IntPtr options, System.IntPtr outBuffer, ref uint outBufferLengthBytes); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_AntiCheatServer_ReceiveMessageFromClient(System.IntPtr handle, System.IntPtr options); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_AntiCheatServer_RegisterClient(System.IntPtr handle, System.IntPtr options); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_AntiCheatServer_RegisterEvent(System.IntPtr handle, System.IntPtr options); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_AntiCheatServer_RemoveNotifyClientActionRequired(System.IntPtr handle, ulong notificationId); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_AntiCheatServer_RemoveNotifyClientAuthStatusChanged(System.IntPtr handle, ulong notificationId); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_AntiCheatServer_RemoveNotifyMessageToClient(System.IntPtr handle, ulong notificationId); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_AntiCheatServer_SetClientDetails(System.IntPtr handle, System.IntPtr options); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_AntiCheatServer_SetClientNetworkState(System.IntPtr handle, System.IntPtr options); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_AntiCheatServer_SetGameSessionId(System.IntPtr handle, System.IntPtr options); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_AntiCheatServer_UnprotectMessage(System.IntPtr handle, System.IntPtr options, System.IntPtr outBuffer, ref uint outBufferLengthBytes); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_AntiCheatServer_UnregisterClient(System.IntPtr handle, System.IntPtr options); + + [DllImport(Config.LibraryName)] + internal static extern ulong EOS_Auth_AddNotifyLoginStatusChanged(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Auth.OnLoginStatusChangedCallbackInternal notification); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_Auth_CopyUserAuthToken(System.IntPtr handle, System.IntPtr options, System.IntPtr localUserId, ref System.IntPtr outUserAuthToken); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_Auth_DeletePersistentAuth(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Auth.OnDeletePersistentAuthCallbackInternal completionDelegate); + + [DllImport(Config.LibraryName)] + internal static extern System.IntPtr EOS_Auth_GetLoggedInAccountByIndex(System.IntPtr handle, int index); + + [DllImport(Config.LibraryName)] + internal static extern int EOS_Auth_GetLoggedInAccountsCount(System.IntPtr handle); + + [DllImport(Config.LibraryName)] + internal static extern LoginStatus EOS_Auth_GetLoginStatus(System.IntPtr handle, System.IntPtr localUserId); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_Auth_LinkAccount(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Auth.OnLinkAccountCallbackInternal completionDelegate); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_Auth_Login(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Auth.OnLoginCallbackInternal completionDelegate); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_Auth_Logout(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Auth.OnLogoutCallbackInternal completionDelegate); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_Auth_RemoveNotifyLoginStatusChanged(System.IntPtr handle, ulong inId); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_Auth_Token_Release(System.IntPtr authToken); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_Auth_VerifyUserAuth(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Auth.OnVerifyUserAuthCallbackInternal completionDelegate); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_ByteArray_ToString(System.IntPtr byteArray, uint length, System.IntPtr outBuffer, ref uint inOutBufferLength); + + [DllImport(Config.LibraryName)] + internal static extern ulong EOS_Connect_AddNotifyAuthExpiration(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Connect.OnAuthExpirationCallbackInternal notification); + + [DllImport(Config.LibraryName)] + internal static extern ulong EOS_Connect_AddNotifyLoginStatusChanged(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Connect.OnLoginStatusChangedCallbackInternal notification); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_Connect_CopyProductUserExternalAccountByAccountId(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outExternalAccountInfo); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_Connect_CopyProductUserExternalAccountByAccountType(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outExternalAccountInfo); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_Connect_CopyProductUserExternalAccountByIndex(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outExternalAccountInfo); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_Connect_CopyProductUserInfo(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outExternalAccountInfo); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_Connect_CreateDeviceId(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Connect.OnCreateDeviceIdCallbackInternal completionDelegate); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_Connect_CreateUser(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Connect.OnCreateUserCallbackInternal completionDelegate); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_Connect_DeleteDeviceId(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Connect.OnDeleteDeviceIdCallbackInternal completionDelegate); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_Connect_ExternalAccountInfo_Release(System.IntPtr externalAccountInfo); + + [DllImport(Config.LibraryName)] + internal static extern System.IntPtr EOS_Connect_GetExternalAccountMapping(System.IntPtr handle, System.IntPtr options); + + [DllImport(Config.LibraryName)] + internal static extern System.IntPtr EOS_Connect_GetLoggedInUserByIndex(System.IntPtr handle, int index); + + [DllImport(Config.LibraryName)] + internal static extern int EOS_Connect_GetLoggedInUsersCount(System.IntPtr handle); + + [DllImport(Config.LibraryName)] + internal static extern LoginStatus EOS_Connect_GetLoginStatus(System.IntPtr handle, System.IntPtr localUserId); + + [DllImport(Config.LibraryName)] + internal static extern uint EOS_Connect_GetProductUserExternalAccountCount(System.IntPtr handle, System.IntPtr options); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_Connect_GetProductUserIdMapping(System.IntPtr handle, System.IntPtr options, System.IntPtr outBuffer, ref int inOutBufferLength); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_Connect_LinkAccount(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Connect.OnLinkAccountCallbackInternal completionDelegate); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_Connect_Login(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Connect.OnLoginCallbackInternal completionDelegate); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_Connect_QueryExternalAccountMappings(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Connect.OnQueryExternalAccountMappingsCallbackInternal completionDelegate); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_Connect_QueryProductUserIdMappings(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Connect.OnQueryProductUserIdMappingsCallbackInternal completionDelegate); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_Connect_RemoveNotifyAuthExpiration(System.IntPtr handle, ulong inId); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_Connect_RemoveNotifyLoginStatusChanged(System.IntPtr handle, ulong inId); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_Connect_TransferDeviceIdAccount(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Connect.OnTransferDeviceIdAccountCallbackInternal completionDelegate); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_Connect_UnlinkAccount(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Connect.OnUnlinkAccountCallbackInternal completionDelegate); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_ContinuanceToken_ToString(System.IntPtr continuanceToken, System.IntPtr outBuffer, ref int inOutBufferLength); + + [DllImport(Config.LibraryName)] + internal static extern int EOS_EResult_IsOperationComplete(Result result); + + [DllImport(Config.LibraryName)] + internal static extern System.IntPtr EOS_EResult_ToString(Result result); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_Ecom_CatalogItem_Release(System.IntPtr catalogItem); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_Ecom_CatalogOffer_Release(System.IntPtr catalogOffer); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_Ecom_CatalogRelease_Release(System.IntPtr catalogRelease); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_Ecom_Checkout(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Ecom.OnCheckoutCallbackInternal completionDelegate); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_Ecom_CopyEntitlementById(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outEntitlement); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_Ecom_CopyEntitlementByIndex(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outEntitlement); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_Ecom_CopyEntitlementByNameAndIndex(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outEntitlement); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_Ecom_CopyItemById(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outItem); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_Ecom_CopyItemImageInfoByIndex(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outImageInfo); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_Ecom_CopyItemReleaseByIndex(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outRelease); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_Ecom_CopyOfferById(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outOffer); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_Ecom_CopyOfferByIndex(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outOffer); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_Ecom_CopyOfferImageInfoByIndex(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outImageInfo); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_Ecom_CopyOfferItemByIndex(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outItem); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_Ecom_CopyTransactionById(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outTransaction); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_Ecom_CopyTransactionByIndex(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outTransaction); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_Ecom_Entitlement_Release(System.IntPtr entitlement); + + [DllImport(Config.LibraryName)] + internal static extern uint EOS_Ecom_GetEntitlementsByNameCount(System.IntPtr handle, System.IntPtr options); + + [DllImport(Config.LibraryName)] + internal static extern uint EOS_Ecom_GetEntitlementsCount(System.IntPtr handle, System.IntPtr options); + + [DllImport(Config.LibraryName)] + internal static extern uint EOS_Ecom_GetItemImageInfoCount(System.IntPtr handle, System.IntPtr options); + + [DllImport(Config.LibraryName)] + internal static extern uint EOS_Ecom_GetItemReleaseCount(System.IntPtr handle, System.IntPtr options); + + [DllImport(Config.LibraryName)] + internal static extern uint EOS_Ecom_GetOfferCount(System.IntPtr handle, System.IntPtr options); + + [DllImport(Config.LibraryName)] + internal static extern uint EOS_Ecom_GetOfferImageInfoCount(System.IntPtr handle, System.IntPtr options); + + [DllImport(Config.LibraryName)] + internal static extern uint EOS_Ecom_GetOfferItemCount(System.IntPtr handle, System.IntPtr options); + + [DllImport(Config.LibraryName)] + internal static extern uint EOS_Ecom_GetTransactionCount(System.IntPtr handle, System.IntPtr options); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_Ecom_KeyImageInfo_Release(System.IntPtr keyImageInfo); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_Ecom_QueryEntitlements(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Ecom.OnQueryEntitlementsCallbackInternal completionDelegate); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_Ecom_QueryOffers(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Ecom.OnQueryOffersCallbackInternal completionDelegate); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_Ecom_QueryOwnership(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Ecom.OnQueryOwnershipCallbackInternal completionDelegate); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_Ecom_QueryOwnershipToken(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Ecom.OnQueryOwnershipTokenCallbackInternal completionDelegate); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_Ecom_RedeemEntitlements(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Ecom.OnRedeemEntitlementsCallbackInternal completionDelegate); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_Ecom_Transaction_CopyEntitlementByIndex(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outEntitlement); + + [DllImport(Config.LibraryName)] + internal static extern uint EOS_Ecom_Transaction_GetEntitlementsCount(System.IntPtr handle, System.IntPtr options); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_Ecom_Transaction_GetTransactionId(System.IntPtr handle, System.IntPtr outBuffer, ref int inOutBufferLength); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_Ecom_Transaction_Release(System.IntPtr transaction); + + [DllImport(Config.LibraryName)] + internal static extern System.IntPtr EOS_EpicAccountId_FromString(System.IntPtr accountIdString); + + [DllImport(Config.LibraryName)] + internal static extern int EOS_EpicAccountId_IsValid(System.IntPtr accountId); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_EpicAccountId_ToString(System.IntPtr accountId, System.IntPtr outBuffer, ref int inOutBufferLength); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_Friends_AcceptInvite(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Friends.OnAcceptInviteCallbackInternal completionDelegate); + + [DllImport(Config.LibraryName)] + internal static extern ulong EOS_Friends_AddNotifyFriendsUpdate(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Friends.OnFriendsUpdateCallbackInternal friendsUpdateHandler); + + [DllImport(Config.LibraryName)] + internal static extern System.IntPtr EOS_Friends_GetFriendAtIndex(System.IntPtr handle, System.IntPtr options); + + [DllImport(Config.LibraryName)] + internal static extern int EOS_Friends_GetFriendsCount(System.IntPtr handle, System.IntPtr options); + + [DllImport(Config.LibraryName)] + internal static extern Friends.FriendsStatus EOS_Friends_GetStatus(System.IntPtr handle, System.IntPtr options); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_Friends_QueryFriends(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Friends.OnQueryFriendsCallbackInternal completionDelegate); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_Friends_RejectInvite(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Friends.OnRejectInviteCallbackInternal completionDelegate); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_Friends_RemoveNotifyFriendsUpdate(System.IntPtr handle, ulong notificationId); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_Friends_SendInvite(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Friends.OnSendInviteCallbackInternal completionDelegate); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_Initialize(System.IntPtr options); + + [DllImport(Config.LibraryName)] + internal static extern ulong EOS_KWS_AddNotifyPermissionsUpdateReceived(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, KWS.OnPermissionsUpdateReceivedCallbackInternal notificationFn); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_KWS_CopyPermissionByIndex(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outPermission); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_KWS_CreateUser(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, KWS.OnCreateUserCallbackInternal completionDelegate); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_KWS_GetPermissionByKey(System.IntPtr handle, System.IntPtr options, ref KWS.KWSPermissionStatus outPermission); + + [DllImport(Config.LibraryName)] + internal static extern int EOS_KWS_GetPermissionsCount(System.IntPtr handle, System.IntPtr options); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_KWS_PermissionStatus_Release(System.IntPtr permissionStatus); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_KWS_QueryAgeGate(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, KWS.OnQueryAgeGateCallbackInternal completionDelegate); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_KWS_QueryPermissions(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, KWS.OnQueryPermissionsCallbackInternal completionDelegate); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_KWS_RemoveNotifyPermissionsUpdateReceived(System.IntPtr handle, ulong inId); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_KWS_RequestPermissions(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, KWS.OnRequestPermissionsCallbackInternal completionDelegate); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_KWS_UpdateParentEmail(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, KWS.OnUpdateParentEmailCallbackInternal completionDelegate); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_Leaderboards_CopyLeaderboardDefinitionByIndex(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outLeaderboardDefinition); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_Leaderboards_CopyLeaderboardDefinitionByLeaderboardId(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outLeaderboardDefinition); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_Leaderboards_CopyLeaderboardRecordByIndex(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outLeaderboardRecord); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_Leaderboards_CopyLeaderboardRecordByUserId(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outLeaderboardRecord); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_Leaderboards_CopyLeaderboardUserScoreByIndex(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outLeaderboardUserScore); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_Leaderboards_CopyLeaderboardUserScoreByUserId(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outLeaderboardUserScore); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_Leaderboards_Definition_Release(System.IntPtr leaderboardDefinition); + + [DllImport(Config.LibraryName)] + internal static extern uint EOS_Leaderboards_GetLeaderboardDefinitionCount(System.IntPtr handle, System.IntPtr options); + + [DllImport(Config.LibraryName)] + internal static extern uint EOS_Leaderboards_GetLeaderboardRecordCount(System.IntPtr handle, System.IntPtr options); + + [DllImport(Config.LibraryName)] + internal static extern uint EOS_Leaderboards_GetLeaderboardUserScoreCount(System.IntPtr handle, System.IntPtr options); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_Leaderboards_LeaderboardDefinition_Release(System.IntPtr leaderboardDefinition); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_Leaderboards_LeaderboardRecord_Release(System.IntPtr leaderboardRecord); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_Leaderboards_LeaderboardUserScore_Release(System.IntPtr leaderboardUserScore); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_Leaderboards_QueryLeaderboardDefinitions(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Leaderboards.OnQueryLeaderboardDefinitionsCompleteCallbackInternal completionDelegate); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_Leaderboards_QueryLeaderboardRanks(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Leaderboards.OnQueryLeaderboardRanksCompleteCallbackInternal completionDelegate); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_Leaderboards_QueryLeaderboardUserScores(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Leaderboards.OnQueryLeaderboardUserScoresCompleteCallbackInternal completionDelegate); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_LobbyDetails_CopyAttributeByIndex(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outAttribute); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_LobbyDetails_CopyAttributeByKey(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outAttribute); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_LobbyDetails_CopyInfo(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outLobbyDetailsInfo); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_LobbyDetails_CopyMemberAttributeByIndex(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outAttribute); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_LobbyDetails_CopyMemberAttributeByKey(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outAttribute); + + [DllImport(Config.LibraryName)] + internal static extern uint EOS_LobbyDetails_GetAttributeCount(System.IntPtr handle, System.IntPtr options); + + [DllImport(Config.LibraryName)] + internal static extern System.IntPtr EOS_LobbyDetails_GetLobbyOwner(System.IntPtr handle, System.IntPtr options); + + [DllImport(Config.LibraryName)] + internal static extern uint EOS_LobbyDetails_GetMemberAttributeCount(System.IntPtr handle, System.IntPtr options); + + [DllImport(Config.LibraryName)] + internal static extern System.IntPtr EOS_LobbyDetails_GetMemberByIndex(System.IntPtr handle, System.IntPtr options); + + [DllImport(Config.LibraryName)] + internal static extern uint EOS_LobbyDetails_GetMemberCount(System.IntPtr handle, System.IntPtr options); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_LobbyDetails_Info_Release(System.IntPtr lobbyDetailsInfo); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_LobbyDetails_Release(System.IntPtr lobbyHandle); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_LobbyModification_AddAttribute(System.IntPtr handle, System.IntPtr options); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_LobbyModification_AddMemberAttribute(System.IntPtr handle, System.IntPtr options); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_LobbyModification_Release(System.IntPtr lobbyModificationHandle); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_LobbyModification_RemoveAttribute(System.IntPtr handle, System.IntPtr options); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_LobbyModification_RemoveMemberAttribute(System.IntPtr handle, System.IntPtr options); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_LobbyModification_SetBucketId(System.IntPtr handle, System.IntPtr options); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_LobbyModification_SetInvitesAllowed(System.IntPtr handle, System.IntPtr options); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_LobbyModification_SetMaxMembers(System.IntPtr handle, System.IntPtr options); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_LobbyModification_SetPermissionLevel(System.IntPtr handle, System.IntPtr options); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_LobbySearch_CopySearchResultByIndex(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outLobbyDetailsHandle); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_LobbySearch_Find(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Lobby.LobbySearchOnFindCallbackInternal completionDelegate); + + [DllImport(Config.LibraryName)] + internal static extern uint EOS_LobbySearch_GetSearchResultCount(System.IntPtr handle, System.IntPtr options); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_LobbySearch_Release(System.IntPtr lobbySearchHandle); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_LobbySearch_RemoveParameter(System.IntPtr handle, System.IntPtr options); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_LobbySearch_SetLobbyId(System.IntPtr handle, System.IntPtr options); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_LobbySearch_SetMaxResults(System.IntPtr handle, System.IntPtr options); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_LobbySearch_SetParameter(System.IntPtr handle, System.IntPtr options); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_LobbySearch_SetTargetUserId(System.IntPtr handle, System.IntPtr options); + + [DllImport(Config.LibraryName)] + internal static extern ulong EOS_Lobby_AddNotifyJoinLobbyAccepted(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Lobby.OnJoinLobbyAcceptedCallbackInternal notificationFn); + + [DllImport(Config.LibraryName)] + internal static extern ulong EOS_Lobby_AddNotifyLobbyInviteAccepted(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Lobby.OnLobbyInviteAcceptedCallbackInternal notificationFn); + + [DllImport(Config.LibraryName)] + internal static extern ulong EOS_Lobby_AddNotifyLobbyInviteReceived(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Lobby.OnLobbyInviteReceivedCallbackInternal notificationFn); + + [DllImport(Config.LibraryName)] + internal static extern ulong EOS_Lobby_AddNotifyLobbyMemberStatusReceived(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Lobby.OnLobbyMemberStatusReceivedCallbackInternal notificationFn); + + [DllImport(Config.LibraryName)] + internal static extern ulong EOS_Lobby_AddNotifyLobbyMemberUpdateReceived(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Lobby.OnLobbyMemberUpdateReceivedCallbackInternal notificationFn); + + [DllImport(Config.LibraryName)] + internal static extern ulong EOS_Lobby_AddNotifyLobbyUpdateReceived(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Lobby.OnLobbyUpdateReceivedCallbackInternal notificationFn); + + [DllImport(Config.LibraryName)] + internal static extern ulong EOS_Lobby_AddNotifyRTCRoomConnectionChanged(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Lobby.OnRTCRoomConnectionChangedCallbackInternal notificationFn); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_Lobby_Attribute_Release(System.IntPtr lobbyAttribute); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_Lobby_CopyLobbyDetailsHandle(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outLobbyDetailsHandle); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_Lobby_CopyLobbyDetailsHandleByInviteId(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outLobbyDetailsHandle); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_Lobby_CopyLobbyDetailsHandleByUiEventId(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outLobbyDetailsHandle); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_Lobby_CreateLobby(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Lobby.OnCreateLobbyCallbackInternal completionDelegate); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_Lobby_CreateLobbySearch(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outLobbySearchHandle); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_Lobby_DestroyLobby(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Lobby.OnDestroyLobbyCallbackInternal completionDelegate); + + [DllImport(Config.LibraryName)] + internal static extern uint EOS_Lobby_GetInviteCount(System.IntPtr handle, System.IntPtr options); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_Lobby_GetInviteIdByIndex(System.IntPtr handle, System.IntPtr options, System.IntPtr outBuffer, ref int inOutBufferLength); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_Lobby_GetRTCRoomName(System.IntPtr handle, System.IntPtr options, System.IntPtr outBuffer, ref uint inOutBufferLength); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_Lobby_IsRTCRoomConnected(System.IntPtr handle, System.IntPtr options, ref int bOutIsConnected); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_Lobby_JoinLobby(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Lobby.OnJoinLobbyCallbackInternal completionDelegate); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_Lobby_KickMember(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Lobby.OnKickMemberCallbackInternal completionDelegate); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_Lobby_LeaveLobby(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Lobby.OnLeaveLobbyCallbackInternal completionDelegate); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_Lobby_PromoteMember(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Lobby.OnPromoteMemberCallbackInternal completionDelegate); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_Lobby_QueryInvites(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Lobby.OnQueryInvitesCallbackInternal completionDelegate); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_Lobby_RejectInvite(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Lobby.OnRejectInviteCallbackInternal completionDelegate); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_Lobby_RemoveNotifyJoinLobbyAccepted(System.IntPtr handle, ulong inId); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_Lobby_RemoveNotifyLobbyInviteAccepted(System.IntPtr handle, ulong inId); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_Lobby_RemoveNotifyLobbyInviteReceived(System.IntPtr handle, ulong inId); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_Lobby_RemoveNotifyLobbyMemberStatusReceived(System.IntPtr handle, ulong inId); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_Lobby_RemoveNotifyLobbyMemberUpdateReceived(System.IntPtr handle, ulong inId); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_Lobby_RemoveNotifyLobbyUpdateReceived(System.IntPtr handle, ulong inId); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_Lobby_RemoveNotifyRTCRoomConnectionChanged(System.IntPtr handle, ulong inId); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_Lobby_SendInvite(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Lobby.OnSendInviteCallbackInternal completionDelegate); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_Lobby_UpdateLobby(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Lobby.OnUpdateLobbyCallbackInternal completionDelegate); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_Lobby_UpdateLobbyModification(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outLobbyModificationHandle); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_Logging_SetCallback(Logging.LogMessageFuncInternal callback); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_Logging_SetLogLevel(Logging.LogCategory logCategory, Logging.LogLevel logLevel); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_Metrics_BeginPlayerSession(System.IntPtr handle, System.IntPtr options); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_Metrics_EndPlayerSession(System.IntPtr handle, System.IntPtr options); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_Mods_CopyModInfo(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outEnumeratedMods); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_Mods_EnumerateMods(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Mods.OnEnumerateModsCallbackInternal completionDelegate); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_Mods_InstallMod(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Mods.OnInstallModCallbackInternal completionDelegate); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_Mods_ModInfo_Release(System.IntPtr modInfo); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_Mods_UninstallMod(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Mods.OnUninstallModCallbackInternal completionDelegate); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_Mods_UpdateMod(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Mods.OnUpdateModCallbackInternal completionDelegate); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_P2P_AcceptConnection(System.IntPtr handle, System.IntPtr options); + + [DllImport(Config.LibraryName)] + internal static extern ulong EOS_P2P_AddNotifyIncomingPacketQueueFull(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, P2P.OnIncomingPacketQueueFullCallbackInternal incomingPacketQueueFullHandler); + + [DllImport(Config.LibraryName)] + internal static extern ulong EOS_P2P_AddNotifyPeerConnectionClosed(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, P2P.OnRemoteConnectionClosedCallbackInternal connectionClosedHandler); + + [DllImport(Config.LibraryName)] + internal static extern ulong EOS_P2P_AddNotifyPeerConnectionRequest(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, P2P.OnIncomingConnectionRequestCallbackInternal connectionRequestHandler); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_P2P_CloseConnection(System.IntPtr handle, System.IntPtr options); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_P2P_CloseConnections(System.IntPtr handle, System.IntPtr options); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_P2P_GetNATType(System.IntPtr handle, System.IntPtr options, ref P2P.NATType outNATType); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_P2P_GetNextReceivedPacketSize(System.IntPtr handle, System.IntPtr options, ref uint outPacketSizeBytes); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_P2P_GetPacketQueueInfo(System.IntPtr handle, System.IntPtr options, ref P2P.PacketQueueInfoInternal outPacketQueueInfo); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_P2P_GetPortRange(System.IntPtr handle, System.IntPtr options, ref ushort outPort, ref ushort outNumAdditionalPortsToTry); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_P2P_GetRelayControl(System.IntPtr handle, System.IntPtr options, ref P2P.RelayControl outRelayControl); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_P2P_QueryNATType(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, P2P.OnQueryNATTypeCompleteCallbackInternal completionDelegate); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_P2P_ReceivePacket(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outPeerId, ref P2P.SocketIdInternal outSocketId, ref byte outChannel, System.IntPtr outData, ref uint outBytesWritten); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_P2P_RemoveNotifyIncomingPacketQueueFull(System.IntPtr handle, ulong notificationId); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_P2P_RemoveNotifyPeerConnectionClosed(System.IntPtr handle, ulong notificationId); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_P2P_RemoveNotifyPeerConnectionRequest(System.IntPtr handle, ulong notificationId); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_P2P_SendPacket(System.IntPtr handle, System.IntPtr options); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_P2P_SetPacketQueueSize(System.IntPtr handle, System.IntPtr options); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_P2P_SetPortRange(System.IntPtr handle, System.IntPtr options); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_P2P_SetRelayControl(System.IntPtr handle, System.IntPtr options); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_Platform_CheckForLauncherAndRestart(System.IntPtr handle); + + [DllImport(Config.LibraryName)] + internal static extern System.IntPtr EOS_Platform_Create(System.IntPtr options); + + [DllImport(Config.LibraryName)] + internal static extern System.IntPtr EOS_Platform_GetAchievementsInterface(System.IntPtr handle); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_Platform_GetActiveCountryCode(System.IntPtr handle, System.IntPtr localUserId, System.IntPtr outBuffer, ref int inOutBufferLength); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_Platform_GetActiveLocaleCode(System.IntPtr handle, System.IntPtr localUserId, System.IntPtr outBuffer, ref int inOutBufferLength); + + [DllImport(Config.LibraryName)] + internal static extern System.IntPtr EOS_Platform_GetAntiCheatClientInterface(System.IntPtr handle); + + [DllImport(Config.LibraryName)] + internal static extern System.IntPtr EOS_Platform_GetAntiCheatServerInterface(System.IntPtr handle); + + [DllImport(Config.LibraryName)] + internal static extern System.IntPtr EOS_Platform_GetAuthInterface(System.IntPtr handle); + + [DllImport(Config.LibraryName)] + internal static extern System.IntPtr EOS_Platform_GetConnectInterface(System.IntPtr handle); + + [DllImport(Config.LibraryName)] + internal static extern System.IntPtr EOS_Platform_GetEcomInterface(System.IntPtr handle); + + [DllImport(Config.LibraryName)] + internal static extern System.IntPtr EOS_Platform_GetFriendsInterface(System.IntPtr handle); + + [DllImport(Config.LibraryName)] + internal static extern System.IntPtr EOS_Platform_GetKWSInterface(System.IntPtr handle); + + [DllImport(Config.LibraryName)] + internal static extern System.IntPtr EOS_Platform_GetLeaderboardsInterface(System.IntPtr handle); + + [DllImport(Config.LibraryName)] + internal static extern System.IntPtr EOS_Platform_GetLobbyInterface(System.IntPtr handle); + + [DllImport(Config.LibraryName)] + internal static extern System.IntPtr EOS_Platform_GetMetricsInterface(System.IntPtr handle); + + [DllImport(Config.LibraryName)] + internal static extern System.IntPtr EOS_Platform_GetModsInterface(System.IntPtr handle); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_Platform_GetOverrideCountryCode(System.IntPtr handle, System.IntPtr outBuffer, ref int inOutBufferLength); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_Platform_GetOverrideLocaleCode(System.IntPtr handle, System.IntPtr outBuffer, ref int inOutBufferLength); + + [DllImport(Config.LibraryName)] + internal static extern System.IntPtr EOS_Platform_GetP2PInterface(System.IntPtr handle); + + [DllImport(Config.LibraryName)] + internal static extern System.IntPtr EOS_Platform_GetPlayerDataStorageInterface(System.IntPtr handle); + + [DllImport(Config.LibraryName)] + internal static extern System.IntPtr EOS_Platform_GetPresenceInterface(System.IntPtr handle); + + [DllImport(Config.LibraryName)] + internal static extern System.IntPtr EOS_Platform_GetRTCAdminInterface(System.IntPtr handle); + + [DllImport(Config.LibraryName)] + internal static extern System.IntPtr EOS_Platform_GetRTCInterface(System.IntPtr handle); + + [DllImport(Config.LibraryName)] + internal static extern System.IntPtr EOS_Platform_GetReportsInterface(System.IntPtr handle); + + [DllImport(Config.LibraryName)] + internal static extern System.IntPtr EOS_Platform_GetSanctionsInterface(System.IntPtr handle); + + [DllImport(Config.LibraryName)] + internal static extern System.IntPtr EOS_Platform_GetSessionsInterface(System.IntPtr handle); + + [DllImport(Config.LibraryName)] + internal static extern System.IntPtr EOS_Platform_GetStatsInterface(System.IntPtr handle); + + [DllImport(Config.LibraryName)] + internal static extern System.IntPtr EOS_Platform_GetTitleStorageInterface(System.IntPtr handle); + + [DllImport(Config.LibraryName)] + internal static extern System.IntPtr EOS_Platform_GetUIInterface(System.IntPtr handle); + + [DllImport(Config.LibraryName)] + internal static extern System.IntPtr EOS_Platform_GetUserInfoInterface(System.IntPtr handle); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_Platform_Release(System.IntPtr handle); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_Platform_SetOverrideCountryCode(System.IntPtr handle, System.IntPtr newCountryCode); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_Platform_SetOverrideLocaleCode(System.IntPtr handle, System.IntPtr newLocaleCode); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_Platform_Tick(System.IntPtr handle); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_PlayerDataStorageFileTransferRequest_CancelRequest(System.IntPtr handle); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_PlayerDataStorageFileTransferRequest_GetFileRequestState(System.IntPtr handle); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_PlayerDataStorageFileTransferRequest_GetFilename(System.IntPtr handle, uint filenameStringBufferSizeBytes, System.IntPtr outStringBuffer, ref int outStringLength); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_PlayerDataStorageFileTransferRequest_Release(System.IntPtr playerDataStorageFileTransferHandle); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_PlayerDataStorage_CopyFileMetadataAtIndex(System.IntPtr handle, System.IntPtr copyFileMetadataOptions, ref System.IntPtr outMetadata); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_PlayerDataStorage_CopyFileMetadataByFilename(System.IntPtr handle, System.IntPtr copyFileMetadataOptions, ref System.IntPtr outMetadata); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_PlayerDataStorage_DeleteCache(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, PlayerDataStorage.OnDeleteCacheCompleteCallbackInternal completionCallback); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_PlayerDataStorage_DeleteFile(System.IntPtr handle, System.IntPtr deleteOptions, System.IntPtr clientData, PlayerDataStorage.OnDeleteFileCompleteCallbackInternal completionCallback); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_PlayerDataStorage_DuplicateFile(System.IntPtr handle, System.IntPtr duplicateOptions, System.IntPtr clientData, PlayerDataStorage.OnDuplicateFileCompleteCallbackInternal completionCallback); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_PlayerDataStorage_FileMetadata_Release(System.IntPtr fileMetadata); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_PlayerDataStorage_GetFileMetadataCount(System.IntPtr handle, System.IntPtr getFileMetadataCountOptions, ref int outFileMetadataCount); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_PlayerDataStorage_QueryFile(System.IntPtr handle, System.IntPtr queryFileOptions, System.IntPtr clientData, PlayerDataStorage.OnQueryFileCompleteCallbackInternal completionCallback); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_PlayerDataStorage_QueryFileList(System.IntPtr handle, System.IntPtr queryFileListOptions, System.IntPtr clientData, PlayerDataStorage.OnQueryFileListCompleteCallbackInternal completionCallback); + + [DllImport(Config.LibraryName)] + internal static extern System.IntPtr EOS_PlayerDataStorage_ReadFile(System.IntPtr handle, System.IntPtr readOptions, System.IntPtr clientData, PlayerDataStorage.OnReadFileCompleteCallbackInternal completionCallback); + + [DllImport(Config.LibraryName)] + internal static extern System.IntPtr EOS_PlayerDataStorage_WriteFile(System.IntPtr handle, System.IntPtr writeOptions, System.IntPtr clientData, PlayerDataStorage.OnWriteFileCompleteCallbackInternal completionCallback); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_PresenceModification_DeleteData(System.IntPtr handle, System.IntPtr options); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_PresenceModification_Release(System.IntPtr presenceModificationHandle); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_PresenceModification_SetData(System.IntPtr handle, System.IntPtr options); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_PresenceModification_SetJoinInfo(System.IntPtr handle, System.IntPtr options); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_PresenceModification_SetRawRichText(System.IntPtr handle, System.IntPtr options); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_PresenceModification_SetStatus(System.IntPtr handle, System.IntPtr options); + + [DllImport(Config.LibraryName)] + internal static extern ulong EOS_Presence_AddNotifyJoinGameAccepted(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Presence.OnJoinGameAcceptedCallbackInternal notificationFn); + + [DllImport(Config.LibraryName)] + internal static extern ulong EOS_Presence_AddNotifyOnPresenceChanged(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Presence.OnPresenceChangedCallbackInternal notificationHandler); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_Presence_CopyPresence(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outPresence); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_Presence_CreatePresenceModification(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outPresenceModificationHandle); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_Presence_GetJoinInfo(System.IntPtr handle, System.IntPtr options, System.IntPtr outBuffer, ref int inOutBufferLength); + + [DllImport(Config.LibraryName)] + internal static extern int EOS_Presence_HasPresence(System.IntPtr handle, System.IntPtr options); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_Presence_Info_Release(System.IntPtr presenceInfo); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_Presence_QueryPresence(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Presence.OnQueryPresenceCompleteCallbackInternal completionDelegate); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_Presence_RemoveNotifyJoinGameAccepted(System.IntPtr handle, ulong inId); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_Presence_RemoveNotifyOnPresenceChanged(System.IntPtr handle, ulong notificationId); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_Presence_SetPresence(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Presence.SetPresenceCompleteCallbackInternal completionDelegate); + + [DllImport(Config.LibraryName)] + internal static extern System.IntPtr EOS_ProductUserId_FromString(System.IntPtr productUserIdString); + + [DllImport(Config.LibraryName)] + internal static extern int EOS_ProductUserId_IsValid(System.IntPtr accountId); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_ProductUserId_ToString(System.IntPtr accountId, System.IntPtr outBuffer, ref int inOutBufferLength); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_RTCAdmin_CopyUserTokenByIndex(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outUserToken); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_RTCAdmin_CopyUserTokenByUserId(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outUserToken); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_RTCAdmin_Kick(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, RTCAdmin.OnKickCompleteCallbackInternal completionDelegate); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_RTCAdmin_QueryJoinRoomToken(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, RTCAdmin.OnQueryJoinRoomTokenCompleteCallbackInternal completionDelegate); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_RTCAdmin_SetParticipantHardMute(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, RTCAdmin.OnSetParticipantHardMuteCompleteCallbackInternal completionDelegate); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_RTCAdmin_UserToken_Release(System.IntPtr userToken); + + [DllImport(Config.LibraryName)] + internal static extern ulong EOS_RTCAudio_AddNotifyAudioBeforeRender(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, RTCAudio.OnAudioBeforeRenderCallbackInternal completionDelegate); + + [DllImport(Config.LibraryName)] + internal static extern ulong EOS_RTCAudio_AddNotifyAudioBeforeSend(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, RTCAudio.OnAudioBeforeSendCallbackInternal completionDelegate); + + [DllImport(Config.LibraryName)] + internal static extern ulong EOS_RTCAudio_AddNotifyAudioDevicesChanged(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, RTCAudio.OnAudioDevicesChangedCallbackInternal completionDelegate); + + [DllImport(Config.LibraryName)] + internal static extern ulong EOS_RTCAudio_AddNotifyAudioInputState(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, RTCAudio.OnAudioInputStateCallbackInternal completionDelegate); + + [DllImport(Config.LibraryName)] + internal static extern ulong EOS_RTCAudio_AddNotifyAudioOutputState(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, RTCAudio.OnAudioOutputStateCallbackInternal completionDelegate); + + [DllImport(Config.LibraryName)] + internal static extern ulong EOS_RTCAudio_AddNotifyParticipantUpdated(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, RTCAudio.OnParticipantUpdatedCallbackInternal completionDelegate); + + [DllImport(Config.LibraryName)] + internal static extern System.IntPtr EOS_RTCAudio_GetAudioInputDeviceByIndex(System.IntPtr handle, System.IntPtr options); + + [DllImport(Config.LibraryName)] + internal static extern uint EOS_RTCAudio_GetAudioInputDevicesCount(System.IntPtr handle, System.IntPtr options); + + [DllImport(Config.LibraryName)] + internal static extern System.IntPtr EOS_RTCAudio_GetAudioOutputDeviceByIndex(System.IntPtr handle, System.IntPtr options); + + [DllImport(Config.LibraryName)] + internal static extern uint EOS_RTCAudio_GetAudioOutputDevicesCount(System.IntPtr handle, System.IntPtr options); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_RTCAudio_RegisterPlatformAudioUser(System.IntPtr handle, System.IntPtr options); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_RTCAudio_RemoveNotifyAudioBeforeRender(System.IntPtr handle, ulong notificationId); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_RTCAudio_RemoveNotifyAudioBeforeSend(System.IntPtr handle, ulong notificationId); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_RTCAudio_RemoveNotifyAudioDevicesChanged(System.IntPtr handle, ulong notificationId); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_RTCAudio_RemoveNotifyAudioInputState(System.IntPtr handle, ulong notificationId); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_RTCAudio_RemoveNotifyAudioOutputState(System.IntPtr handle, ulong notificationId); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_RTCAudio_RemoveNotifyParticipantUpdated(System.IntPtr handle, ulong notificationId); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_RTCAudio_SendAudio(System.IntPtr handle, System.IntPtr options); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_RTCAudio_SetAudioInputSettings(System.IntPtr handle, System.IntPtr options); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_RTCAudio_SetAudioOutputSettings(System.IntPtr handle, System.IntPtr options); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_RTCAudio_UnregisterPlatformAudioUser(System.IntPtr handle, System.IntPtr options); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_RTCAudio_UpdateReceiving(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, RTCAudio.OnUpdateReceivingCallbackInternal completionDelegate); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_RTCAudio_UpdateSending(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, RTCAudio.OnUpdateSendingCallbackInternal completionDelegate); + + [DllImport(Config.LibraryName)] + internal static extern ulong EOS_RTC_AddNotifyDisconnected(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, RTC.OnDisconnectedCallbackInternal completionDelegate); + + [DllImport(Config.LibraryName)] + internal static extern ulong EOS_RTC_AddNotifyParticipantStatusChanged(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, RTC.OnParticipantStatusChangedCallbackInternal completionDelegate); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_RTC_BlockParticipant(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, RTC.OnBlockParticipantCallbackInternal completionDelegate); + + [DllImport(Config.LibraryName)] + internal static extern System.IntPtr EOS_RTC_GetAudioInterface(System.IntPtr handle); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_RTC_JoinRoom(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, RTC.OnJoinRoomCallbackInternal completionDelegate); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_RTC_LeaveRoom(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, RTC.OnLeaveRoomCallbackInternal completionDelegate); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_RTC_RemoveNotifyDisconnected(System.IntPtr handle, ulong notificationId); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_RTC_RemoveNotifyParticipantStatusChanged(System.IntPtr handle, ulong notificationId); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_Reports_SendPlayerBehaviorReport(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Reports.OnSendPlayerBehaviorReportCompleteCallbackInternal completionDelegate); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_Sanctions_CopyPlayerSanctionByIndex(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outSanction); + + [DllImport(Config.LibraryName)] + internal static extern uint EOS_Sanctions_GetPlayerSanctionCount(System.IntPtr handle, System.IntPtr options); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_Sanctions_PlayerSanction_Release(System.IntPtr sanction); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_Sanctions_QueryActivePlayerSanctions(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Sanctions.OnQueryActivePlayerSanctionsCallbackInternal completionDelegate); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_SessionDetails_Attribute_Release(System.IntPtr sessionAttribute); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_SessionDetails_CopyInfo(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outSessionInfo); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_SessionDetails_CopySessionAttributeByIndex(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outSessionAttribute); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_SessionDetails_CopySessionAttributeByKey(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outSessionAttribute); + + [DllImport(Config.LibraryName)] + internal static extern uint EOS_SessionDetails_GetSessionAttributeCount(System.IntPtr handle, System.IntPtr options); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_SessionDetails_Info_Release(System.IntPtr sessionInfo); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_SessionDetails_Release(System.IntPtr sessionHandle); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_SessionModification_AddAttribute(System.IntPtr handle, System.IntPtr options); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_SessionModification_Release(System.IntPtr sessionModificationHandle); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_SessionModification_RemoveAttribute(System.IntPtr handle, System.IntPtr options); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_SessionModification_SetBucketId(System.IntPtr handle, System.IntPtr options); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_SessionModification_SetHostAddress(System.IntPtr handle, System.IntPtr options); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_SessionModification_SetInvitesAllowed(System.IntPtr handle, System.IntPtr options); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_SessionModification_SetJoinInProgressAllowed(System.IntPtr handle, System.IntPtr options); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_SessionModification_SetMaxPlayers(System.IntPtr handle, System.IntPtr options); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_SessionModification_SetPermissionLevel(System.IntPtr handle, System.IntPtr options); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_SessionSearch_CopySearchResultByIndex(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outSessionHandle); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_SessionSearch_Find(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Sessions.SessionSearchOnFindCallbackInternal completionDelegate); + + [DllImport(Config.LibraryName)] + internal static extern uint EOS_SessionSearch_GetSearchResultCount(System.IntPtr handle, System.IntPtr options); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_SessionSearch_Release(System.IntPtr sessionSearchHandle); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_SessionSearch_RemoveParameter(System.IntPtr handle, System.IntPtr options); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_SessionSearch_SetMaxResults(System.IntPtr handle, System.IntPtr options); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_SessionSearch_SetParameter(System.IntPtr handle, System.IntPtr options); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_SessionSearch_SetSessionId(System.IntPtr handle, System.IntPtr options); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_SessionSearch_SetTargetUserId(System.IntPtr handle, System.IntPtr options); + + [DllImport(Config.LibraryName)] + internal static extern ulong EOS_Sessions_AddNotifyJoinSessionAccepted(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Sessions.OnJoinSessionAcceptedCallbackInternal notificationFn); + + [DllImport(Config.LibraryName)] + internal static extern ulong EOS_Sessions_AddNotifySessionInviteAccepted(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Sessions.OnSessionInviteAcceptedCallbackInternal notificationFn); + + [DllImport(Config.LibraryName)] + internal static extern ulong EOS_Sessions_AddNotifySessionInviteReceived(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Sessions.OnSessionInviteReceivedCallbackInternal notificationFn); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_Sessions_CopyActiveSessionHandle(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outSessionHandle); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_Sessions_CopySessionHandleByInviteId(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outSessionHandle); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_Sessions_CopySessionHandleByUiEventId(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outSessionHandle); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_Sessions_CopySessionHandleForPresence(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outSessionHandle); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_Sessions_CreateSessionModification(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outSessionModificationHandle); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_Sessions_CreateSessionSearch(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outSessionSearchHandle); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_Sessions_DestroySession(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Sessions.OnDestroySessionCallbackInternal completionDelegate); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_Sessions_DumpSessionState(System.IntPtr handle, System.IntPtr options); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_Sessions_EndSession(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Sessions.OnEndSessionCallbackInternal completionDelegate); + + [DllImport(Config.LibraryName)] + internal static extern uint EOS_Sessions_GetInviteCount(System.IntPtr handle, System.IntPtr options); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_Sessions_GetInviteIdByIndex(System.IntPtr handle, System.IntPtr options, System.IntPtr outBuffer, ref int inOutBufferLength); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_Sessions_IsUserInSession(System.IntPtr handle, System.IntPtr options); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_Sessions_JoinSession(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Sessions.OnJoinSessionCallbackInternal completionDelegate); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_Sessions_QueryInvites(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Sessions.OnQueryInvitesCallbackInternal completionDelegate); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_Sessions_RegisterPlayers(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Sessions.OnRegisterPlayersCallbackInternal completionDelegate); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_Sessions_RejectInvite(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Sessions.OnRejectInviteCallbackInternal completionDelegate); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_Sessions_RemoveNotifyJoinSessionAccepted(System.IntPtr handle, ulong inId); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_Sessions_RemoveNotifySessionInviteAccepted(System.IntPtr handle, ulong inId); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_Sessions_RemoveNotifySessionInviteReceived(System.IntPtr handle, ulong inId); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_Sessions_SendInvite(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Sessions.OnSendInviteCallbackInternal completionDelegate); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_Sessions_StartSession(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Sessions.OnStartSessionCallbackInternal completionDelegate); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_Sessions_UnregisterPlayers(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Sessions.OnUnregisterPlayersCallbackInternal completionDelegate); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_Sessions_UpdateSession(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Sessions.OnUpdateSessionCallbackInternal completionDelegate); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_Sessions_UpdateSessionModification(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outSessionModificationHandle); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_Shutdown(); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_Stats_CopyStatByIndex(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outStat); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_Stats_CopyStatByName(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outStat); + + [DllImport(Config.LibraryName)] + internal static extern uint EOS_Stats_GetStatsCount(System.IntPtr handle, System.IntPtr options); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_Stats_IngestStat(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Stats.OnIngestStatCompleteCallbackInternal completionDelegate); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_Stats_QueryStats(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Stats.OnQueryStatsCompleteCallbackInternal completionDelegate); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_Stats_Stat_Release(System.IntPtr stat); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_TitleStorageFileTransferRequest_CancelRequest(System.IntPtr handle); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_TitleStorageFileTransferRequest_GetFileRequestState(System.IntPtr handle); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_TitleStorageFileTransferRequest_GetFilename(System.IntPtr handle, uint filenameStringBufferSizeBytes, System.IntPtr outStringBuffer, ref int outStringLength); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_TitleStorageFileTransferRequest_Release(System.IntPtr titleStorageFileTransferHandle); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_TitleStorage_CopyFileMetadataAtIndex(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outMetadata); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_TitleStorage_CopyFileMetadataByFilename(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outMetadata); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_TitleStorage_DeleteCache(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, TitleStorage.OnDeleteCacheCompleteCallbackInternal completionCallback); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_TitleStorage_FileMetadata_Release(System.IntPtr fileMetadata); + + [DllImport(Config.LibraryName)] + internal static extern uint EOS_TitleStorage_GetFileMetadataCount(System.IntPtr handle, System.IntPtr options); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_TitleStorage_QueryFile(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, TitleStorage.OnQueryFileCompleteCallbackInternal completionCallback); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_TitleStorage_QueryFileList(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, TitleStorage.OnQueryFileListCompleteCallbackInternal completionCallback); + + [DllImport(Config.LibraryName)] + internal static extern System.IntPtr EOS_TitleStorage_ReadFile(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, TitleStorage.OnReadFileCompleteCallbackInternal completionCallback); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_UI_AcknowledgeEventId(System.IntPtr handle, System.IntPtr options); + + [DllImport(Config.LibraryName)] + internal static extern ulong EOS_UI_AddNotifyDisplaySettingsUpdated(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, UI.OnDisplaySettingsUpdatedCallbackInternal notificationFn); + + [DllImport(Config.LibraryName)] + internal static extern int EOS_UI_GetFriendsVisible(System.IntPtr handle, System.IntPtr options); + + [DllImport(Config.LibraryName)] + internal static extern UI.NotificationLocation EOS_UI_GetNotificationLocationPreference(System.IntPtr handle); + + [DllImport(Config.LibraryName)] + internal static extern UI.KeyCombination EOS_UI_GetToggleFriendsKey(System.IntPtr handle, System.IntPtr options); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_UI_HideFriends(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, UI.OnHideFriendsCallbackInternal completionDelegate); + + [DllImport(Config.LibraryName)] + internal static extern int EOS_UI_IsValidKeyCombination(System.IntPtr handle, UI.KeyCombination keyCombination); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_UI_RemoveNotifyDisplaySettingsUpdated(System.IntPtr handle, ulong id); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_UI_SetDisplayPreference(System.IntPtr handle, System.IntPtr options); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_UI_SetToggleFriendsKey(System.IntPtr handle, System.IntPtr options); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_UI_ShowFriends(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, UI.OnShowFriendsCallbackInternal completionDelegate); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_UserInfo_CopyExternalUserInfoByAccountId(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outExternalUserInfo); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_UserInfo_CopyExternalUserInfoByAccountType(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outExternalUserInfo); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_UserInfo_CopyExternalUserInfoByIndex(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outExternalUserInfo); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_UserInfo_CopyUserInfo(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outUserInfo); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_UserInfo_ExternalUserInfo_Release(System.IntPtr externalUserInfo); + + [DllImport(Config.LibraryName)] + internal static extern uint EOS_UserInfo_GetExternalUserInfoCount(System.IntPtr handle, System.IntPtr options); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_UserInfo_QueryUserInfo(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, UserInfo.OnQueryUserInfoCallbackInternal completionDelegate); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_UserInfo_QueryUserInfoByDisplayName(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, UserInfo.OnQueryUserInfoByDisplayNameCallbackInternal completionDelegate); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_UserInfo_QueryUserInfoByExternalAccount(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, UserInfo.OnQueryUserInfoByExternalAccountCallbackInternal completionDelegate); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_UserInfo_Release(System.IntPtr userInfo); +#endif + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/Bindings.cs.meta b/EOSSDK/Generated/Bindings.cs.meta new file mode 100644 index 00000000..087e030f --- /dev/null +++ b/EOSSDK/Generated/Bindings.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 30c227bfa3ebe0d449e179d74f4b4182 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/Common.cs b/EOSSDK/Generated/Common.cs index b46a83f0..d34ffe53 100644 --- a/EOSSDK/Generated/Common.cs +++ b/EOSSDK/Generated/Common.cs @@ -40,7 +40,7 @@ public static class Common /// public static bool IsOperationComplete(Result result) { - var funcResult = EOS_EResult_IsOperationComplete(result); + var funcResult = Bindings.EOS_EResult_IsOperationComplete(result); bool funcResultReturn; Helper.TryMarshalGet(funcResult, out funcResultReturn); @@ -56,7 +56,7 @@ public static bool IsOperationComplete(Result result) /// public static string ToString(Result result) { - var funcResult = EOS_EResult_ToString(result); + var funcResult = Bindings.EOS_EResult_ToString(result); string funcResultReturn; Helper.TryMarshalGet(funcResult, out funcResultReturn); @@ -74,15 +74,15 @@ public static string ToString(Result result) /// public static Result ToString(byte[] byteArray, out string outBuffer) { - System.IntPtr byteArrayAddress = System.IntPtr.Zero; + var byteArrayAddress = System.IntPtr.Zero; uint length; Helper.TryMarshalSet(ref byteArrayAddress, byteArray, out length); System.IntPtr outBufferAddress = System.IntPtr.Zero; uint inOutBufferLength = 1024; - Helper.TryMarshalAllocate(ref outBufferAddress, inOutBufferLength); + Helper.TryMarshalAllocate(ref outBufferAddress, inOutBufferLength, out _); - var funcResult = EOS_ByteArray_ToString(byteArrayAddress, length, outBufferAddress, ref inOutBufferLength); + var funcResult = Bindings.EOS_ByteArray_ToString(byteArrayAddress, length, outBufferAddress, ref inOutBufferLength); Helper.TryMarshalDispose(ref byteArrayAddress); @@ -92,13 +92,11 @@ public static Result ToString(byte[] byteArray, out string outBuffer) return funcResult; } - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern int EOS_EResult_IsOperationComplete(Result result); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern System.IntPtr EOS_EResult_ToString(Result result); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_ByteArray_ToString(System.IntPtr byteArray, uint length, System.IntPtr outBuffer, ref uint inOutBufferLength); + public static string ToString(byte[] byteArray) + { + string funcResult; + ToString(byteArray, out funcResult); + return funcResult; + } } } \ No newline at end of file diff --git a/EOSSDK/Generated/ComparisonOp.cs b/EOSSDK/Generated/ComparisonOp.cs index 0d5e9bed..acaf7743 100644 --- a/EOSSDK/Generated/ComparisonOp.cs +++ b/EOSSDK/Generated/ComparisonOp.cs @@ -5,6 +5,8 @@ namespace Epic.OnlineServices { /// /// All comparison operators associated with parameters in a search query + /// + /// /// public enum ComparisonOp : int { diff --git a/EOSSDK/Generated/Connect/AddNotifyAuthExpirationOptions.cs b/EOSSDK/Generated/Connect/AddNotifyAuthExpirationOptions.cs index 194397e1..45374d76 100644 --- a/EOSSDK/Generated/Connect/AddNotifyAuthExpirationOptions.cs +++ b/EOSSDK/Generated/Connect/AddNotifyAuthExpirationOptions.cs @@ -4,7 +4,7 @@ namespace Epic.OnlineServices.Connect { /// - /// Structure containing information for the auth expiration notification callback + /// Structure containing information for the auth expiration notification callback. /// public class AddNotifyAuthExpirationOptions { diff --git a/EOSSDK/Generated/Connect/AddNotifyLoginStatusChangedOptions.cs b/EOSSDK/Generated/Connect/AddNotifyLoginStatusChangedOptions.cs index b9ffd09f..5a317a42 100644 --- a/EOSSDK/Generated/Connect/AddNotifyLoginStatusChangedOptions.cs +++ b/EOSSDK/Generated/Connect/AddNotifyLoginStatusChangedOptions.cs @@ -4,7 +4,7 @@ namespace Epic.OnlineServices.Connect { /// - /// Structure containing information or the connect user login status change callback + /// Structure containing information or the connect user login status change callback. /// public class AddNotifyLoginStatusChangedOptions { diff --git a/EOSSDK/Generated/Connect/AuthExpirationCallbackInfo.cs b/EOSSDK/Generated/Connect/AuthExpirationCallbackInfo.cs index c2c4195a..da01ef49 100644 --- a/EOSSDK/Generated/Connect/AuthExpirationCallbackInfo.cs +++ b/EOSSDK/Generated/Connect/AuthExpirationCallbackInfo.cs @@ -9,12 +9,12 @@ namespace Epic.OnlineServices.Connect public class AuthExpirationCallbackInfo : ICallbackInfo, ISettable { /// - /// Context that was passed into + /// Context that was passed into . /// public object ClientData { get; private set; } /// - /// The Product User ID of the local player whose status has changed + /// The Product User ID of the local player whose status has changed. /// public ProductUserId LocalUserId { get; private set; } diff --git a/EOSSDK/Generated/Connect/ConnectInterface.cs b/EOSSDK/Generated/Connect/ConnectInterface.cs index 311df0bf..18f61935 100644 --- a/EOSSDK/Generated/Connect/ConnectInterface.cs +++ b/EOSSDK/Generated/Connect/ConnectInterface.cs @@ -3,7 +3,7 @@ namespace Epic.OnlineServices.Connect { - public sealed class ConnectInterface : Handle + public sealed partial class ConnectInterface : Handle { public ConnectInterface() { @@ -149,26 +149,26 @@ public ConnectInterface(System.IntPtr innerHandle) : base(innerHandle) public const int UserlogininfoApiLatest = 1; /// - /// Max length of a display name, not including the terminating null + /// Max length of a display name, not including the terminating null. /// public const int UserlogininfoDisplaynameMaxLength = 32; /// /// Register to receive upcoming authentication expiration notifications. /// Notification is approximately 10 minutes prior to expiration. - /// Call again with valid third party credentials to refresh access + /// Call again with valid third party credentials to refresh access. /// - /// @note must call RemoveNotifyAuthExpiration to remove the notification + /// @note must call RemoveNotifyAuthExpiration to remove the notification. /// - /// structure containing the API version of the callback to use - /// arbitrary data that is passed back to you in the callback - /// a callback that is fired when the authentication is about to expire + /// structure containing the API version of the callback to use. + /// arbitrary data that is passed back to you in the callback. + /// a callback that is fired when the authentication is about to expire. /// - /// handle representing the registered callback + /// handle representing the registered callback. /// public ulong AddNotifyAuthExpiration(AddNotifyAuthExpirationOptions options, object clientData, OnAuthExpirationCallback notification) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var clientDataAddress = System.IntPtr.Zero; @@ -176,7 +176,7 @@ public ulong AddNotifyAuthExpiration(AddNotifyAuthExpirationOptions options, obj var notificationInternal = new OnAuthExpirationCallbackInternal(OnAuthExpirationCallbackInternalImplementation); Helper.AddCallback(ref clientDataAddress, clientData, notification, notificationInternal); - var funcResult = EOS_Connect_AddNotifyAuthExpiration(InnerHandle, optionsAddress, clientDataAddress, notificationInternal); + var funcResult = Bindings.EOS_Connect_AddNotifyAuthExpiration(InnerHandle, optionsAddress, clientDataAddress, notificationInternal); Helper.TryMarshalDispose(ref optionsAddress); @@ -187,17 +187,17 @@ public ulong AddNotifyAuthExpiration(AddNotifyAuthExpirationOptions options, obj /// /// Register to receive user login status updates. - /// @note must call RemoveNotifyLoginStatusChanged to remove the notification + /// @note must call RemoveNotifyLoginStatusChanged to remove the notification. /// - /// structure containing the API version of the callback to use - /// arbitrary data that is passed back to you in the callback - /// a callback that is fired when the login status for a user changes + /// structure containing the API version of the callback to use. + /// arbitrary data that is passed back to you in the callback. + /// a callback that is fired when the login status for a user changes. /// - /// handle representing the registered callback + /// handle representing the registered callback. /// public ulong AddNotifyLoginStatusChanged(AddNotifyLoginStatusChangedOptions options, object clientData, OnLoginStatusChangedCallback notification) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var clientDataAddress = System.IntPtr.Zero; @@ -205,7 +205,7 @@ public ulong AddNotifyLoginStatusChanged(AddNotifyLoginStatusChangedOptions opti var notificationInternal = new OnLoginStatusChangedCallbackInternal(OnLoginStatusChangedCallbackInternalImplementation); Helper.AddCallback(ref clientDataAddress, clientData, notification, notificationInternal); - var funcResult = EOS_Connect_AddNotifyLoginStatusChanged(InnerHandle, optionsAddress, clientDataAddress, notificationInternal); + var funcResult = Bindings.EOS_Connect_AddNotifyLoginStatusChanged(InnerHandle, optionsAddress, clientDataAddress, notificationInternal); Helper.TryMarshalDispose(ref optionsAddress); @@ -222,25 +222,25 @@ public ulong AddNotifyLoginStatusChanged(AddNotifyLoginStatusChangedOptions opti /// Structure containing the target external account ID. /// The external account info data for the user with given external account ID. /// - /// An that indicates the external account data was copied into the OutExternalAccountInfo - /// if the information is available and passed out in OutExternalAccountInfo - /// if you pass a null pointer for the out parameter - /// if the account data doesn't exist or hasn't been queried yet + /// An that indicates the external account data was copied into the OutExternalAccountInfo. + /// if the information is available and passed out in OutExternalAccountInfo. + /// if you pass a null pointer for the out parameter. + /// if the account data doesn't exist or hasn't been queried yet. /// public Result CopyProductUserExternalAccountByAccountId(CopyProductUserExternalAccountByAccountIdOptions options, out ExternalAccountInfo outExternalAccountInfo) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var outExternalAccountInfoAddress = System.IntPtr.Zero; - var funcResult = EOS_Connect_CopyProductUserExternalAccountByAccountId(InnerHandle, optionsAddress, ref outExternalAccountInfoAddress); + var funcResult = Bindings.EOS_Connect_CopyProductUserExternalAccountByAccountId(InnerHandle, optionsAddress, ref outExternalAccountInfoAddress); Helper.TryMarshalDispose(ref optionsAddress); if (Helper.TryMarshalGet(outExternalAccountInfoAddress, out outExternalAccountInfo)) { - EOS_Connect_ExternalAccountInfo_Release(outExternalAccountInfoAddress); + Bindings.EOS_Connect_ExternalAccountInfo_Release(outExternalAccountInfoAddress); } return funcResult; @@ -254,25 +254,25 @@ public Result CopyProductUserExternalAccountByAccountId(CopyProductUserExternalA /// Structure containing the target external account type. /// The external account info data for the user with given external account type. /// - /// An that indicates the external account data was copied into the OutExternalAccountInfo - /// if the information is available and passed out in OutExternalAccountInfo - /// if you pass a null pointer for the out parameter - /// if the account data doesn't exist or hasn't been queried yet + /// An that indicates the external account data was copied into the OutExternalAccountInfo. + /// if the information is available and passed out in OutExternalAccountInfo. + /// if you pass a null pointer for the out parameter. + /// if the account data doesn't exist or hasn't been queried yet. /// public Result CopyProductUserExternalAccountByAccountType(CopyProductUserExternalAccountByAccountTypeOptions options, out ExternalAccountInfo outExternalAccountInfo) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var outExternalAccountInfoAddress = System.IntPtr.Zero; - var funcResult = EOS_Connect_CopyProductUserExternalAccountByAccountType(InnerHandle, optionsAddress, ref outExternalAccountInfoAddress); + var funcResult = Bindings.EOS_Connect_CopyProductUserExternalAccountByAccountType(InnerHandle, optionsAddress, ref outExternalAccountInfoAddress); Helper.TryMarshalDispose(ref optionsAddress); if (Helper.TryMarshalGet(outExternalAccountInfoAddress, out outExternalAccountInfo)) { - EOS_Connect_ExternalAccountInfo_Release(outExternalAccountInfoAddress); + Bindings.EOS_Connect_ExternalAccountInfo_Release(outExternalAccountInfoAddress); } return funcResult; @@ -286,25 +286,25 @@ public Result CopyProductUserExternalAccountByAccountType(CopyProductUserExterna /// Structure containing the target index. /// The external account info data for the user with given index. /// - /// An that indicates the external account data was copied into the OutExternalAccountInfo - /// if the information is available and passed out in OutExternalAccountInfo - /// if you pass a null pointer for the out parameter - /// if the account data doesn't exist or hasn't been queried yet + /// An that indicates the external account data was copied into the OutExternalAccountInfo. + /// if the information is available and passed out in OutExternalAccountInfo. + /// if you pass a null pointer for the out parameter. + /// if the account data doesn't exist or hasn't been queried yet. /// public Result CopyProductUserExternalAccountByIndex(CopyProductUserExternalAccountByIndexOptions options, out ExternalAccountInfo outExternalAccountInfo) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var outExternalAccountInfoAddress = System.IntPtr.Zero; - var funcResult = EOS_Connect_CopyProductUserExternalAccountByIndex(InnerHandle, optionsAddress, ref outExternalAccountInfoAddress); + var funcResult = Bindings.EOS_Connect_CopyProductUserExternalAccountByIndex(InnerHandle, optionsAddress, ref outExternalAccountInfoAddress); Helper.TryMarshalDispose(ref optionsAddress); if (Helper.TryMarshalGet(outExternalAccountInfoAddress, out outExternalAccountInfo)) { - EOS_Connect_ExternalAccountInfo_Release(outExternalAccountInfoAddress); + Bindings.EOS_Connect_ExternalAccountInfo_Release(outExternalAccountInfoAddress); } return funcResult; @@ -318,25 +318,25 @@ public Result CopyProductUserExternalAccountByIndex(CopyProductUserExternalAccou /// Structure containing the target external account ID. /// The external account info data last logged in for the user. /// - /// An that indicates the external account data was copied into the OutExternalAccountInfo - /// if the information is available and passed out in OutExternalAccountInfo - /// if you pass a null pointer for the out parameter - /// if the account data doesn't exist or hasn't been queried yet + /// An that indicates the external account data was copied into the OutExternalAccountInfo. + /// if the information is available and passed out in OutExternalAccountInfo. + /// if you pass a null pointer for the out parameter. + /// if the account data doesn't exist or hasn't been queried yet. /// public Result CopyProductUserInfo(CopyProductUserInfoOptions options, out ExternalAccountInfo outExternalAccountInfo) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var outExternalAccountInfoAddress = System.IntPtr.Zero; - var funcResult = EOS_Connect_CopyProductUserInfo(InnerHandle, optionsAddress, ref outExternalAccountInfoAddress); + var funcResult = Bindings.EOS_Connect_CopyProductUserInfo(InnerHandle, optionsAddress, ref outExternalAccountInfoAddress); Helper.TryMarshalDispose(ref optionsAddress); if (Helper.TryMarshalGet(outExternalAccountInfoAddress, out outExternalAccountInfo)) { - EOS_Connect_ExternalAccountInfo_Release(outExternalAccountInfoAddress); + Bindings.EOS_Connect_ExternalAccountInfo_Release(outExternalAccountInfoAddress); } return funcResult; @@ -365,12 +365,12 @@ public Result CopyProductUserInfo(CopyProductUserInfoOptions options, out Extern /// credentials type. If a Device ID already exists for the local user on the device then /// error result is returned and the caller should proceed to calling directly. /// - /// structure containing operation input parameters - /// arbitrary data that is passed back to you in the CompletionDelegate - /// a callback that is fired when the create operation completes, either successfully or in error + /// structure containing operation input parameters. + /// arbitrary data that is passed back to you in the CompletionDelegate. + /// a callback that is fired when the create operation completes, either successfully or in error. public void CreateDeviceId(CreateDeviceIdOptions options, object clientData, OnCreateDeviceIdCallback completionDelegate) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var clientDataAddress = System.IntPtr.Zero; @@ -378,20 +378,20 @@ public void CreateDeviceId(CreateDeviceIdOptions options, object clientData, OnC var completionDelegateInternal = new OnCreateDeviceIdCallbackInternal(OnCreateDeviceIdCallbackInternalImplementation); Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - EOS_Connect_CreateDeviceId(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); + Bindings.EOS_Connect_CreateDeviceId(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); Helper.TryMarshalDispose(ref optionsAddress); } /// - /// Create an account association with the Epic Online Service as a product user given their external auth credentials + /// Create an account association with the Epic Online Service as a product user given their external auth credentials. /// - /// structure containing a continuance token from a "user not found" response during Login (always try login first) - /// arbitrary data that is passed back to you in the CompletionDelegate - /// a callback that is fired when the create operation completes, either successfully or in error + /// structure containing a continuance token from a "user not found" response during Login (always try login first). + /// arbitrary data that is passed back to you in the CompletionDelegate. + /// a callback that is fired when the create operation completes, either successfully or in error. public void CreateUser(CreateUserOptions options, object clientData, OnCreateUserCallback completionDelegate) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var clientDataAddress = System.IntPtr.Zero; @@ -399,7 +399,7 @@ public void CreateUser(CreateUserOptions options, object clientData, OnCreateUse var completionDelegateInternal = new OnCreateUserCallbackInternal(OnCreateUserCallbackInternalImplementation); Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - EOS_Connect_CreateUser(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); + Bindings.EOS_Connect_CreateUser(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); Helper.TryMarshalDispose(ref optionsAddress); } @@ -415,7 +415,7 @@ public void CreateUser(CreateUserOptions options, object clientData, OnCreateUse /// a callback that is fired when the delete operation completes, either successfully or in error public void DeleteDeviceId(DeleteDeviceIdOptions options, object clientData, OnDeleteDeviceIdCallback completionDelegate) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var clientDataAddress = System.IntPtr.Zero; @@ -423,24 +423,24 @@ public void DeleteDeviceId(DeleteDeviceIdOptions options, object clientData, OnD var completionDelegateInternal = new OnDeleteDeviceIdCallbackInternal(OnDeleteDeviceIdCallbackInternalImplementation); Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - EOS_Connect_DeleteDeviceId(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); + Bindings.EOS_Connect_DeleteDeviceId(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); Helper.TryMarshalDispose(ref optionsAddress); } /// - /// Fetch a Product User ID that maps to an external account ID cached from a previous query + /// Fetch a Product User ID that maps to an external account ID cached from a previous query. /// - /// structure containing the local user and target external account ID + /// structure containing the local user and target external account ID. /// - /// The Product User ID, previously retrieved from the backend service, for the given target external account + /// The Product User ID, previously retrieved from the backend service, for the given target external account. /// public ProductUserId GetExternalAccountMapping(GetExternalAccountMappingsOptions options) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); - var funcResult = EOS_Connect_GetExternalAccountMapping(InnerHandle, optionsAddress); + var funcResult = Bindings.EOS_Connect_GetExternalAccountMapping(InnerHandle, optionsAddress); Helper.TryMarshalDispose(ref optionsAddress); @@ -450,15 +450,15 @@ public ProductUserId GetExternalAccountMapping(GetExternalAccountMappingsOptions } /// - /// Fetch a Product User ID that is logged in. This Product User ID is in the Epic Online Services namespace + /// Fetch a Product User ID that is logged in. This Product User ID is in the Epic Online Services namespace. /// /// an index into the list of logged in users. If the index is out of bounds, the returned Product User ID will be invalid. /// - /// the Product User ID associated with the index passed + /// the Product User ID associated with the index passed. /// public ProductUserId GetLoggedInUserByIndex(int index) { - var funcResult = EOS_Connect_GetLoggedInUserByIndex(InnerHandle, index); + var funcResult = Bindings.EOS_Connect_GetLoggedInUserByIndex(InnerHandle, index); ProductUserId funcResultReturn; Helper.TryMarshalGet(funcResult, out funcResultReturn); @@ -473,7 +473,7 @@ public ProductUserId GetLoggedInUserByIndex(int index) /// public int GetLoggedInUsersCount() { - var funcResult = EOS_Connect_GetLoggedInUsersCount(InnerHandle); + var funcResult = Bindings.EOS_Connect_GetLoggedInUsersCount(InnerHandle); return funcResult; } @@ -481,16 +481,16 @@ public int GetLoggedInUsersCount() /// /// Fetches the login status for an Product User ID. This Product User ID is considered logged in as long as the underlying access token has not expired. /// - /// the Product User ID of the user being queried + /// the Product User ID of the user being queried. /// - /// the enum value of a user's login status + /// the enum value of a user's login status. /// public LoginStatus GetLoginStatus(ProductUserId localUserId) { var localUserIdInnerHandle = System.IntPtr.Zero; Helper.TryMarshalSet(ref localUserIdInnerHandle, localUserId); - var funcResult = EOS_Connect_GetLoginStatus(InnerHandle, localUserIdInnerHandle); + var funcResult = Bindings.EOS_Connect_GetLoginStatus(InnerHandle, localUserIdInnerHandle); return funcResult; } @@ -501,14 +501,14 @@ public LoginStatus GetLoginStatus(ProductUserId localUserId) /// /// The Options associated with retrieving the external account info count. /// - /// Number of external accounts or 0 otherwise + /// Number of external accounts or 0 otherwise. /// public uint GetProductUserExternalAccountCount(GetProductUserExternalAccountCountOptions options) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); - var funcResult = EOS_Connect_GetProductUserExternalAccountCount(InnerHandle, optionsAddress); + var funcResult = Bindings.EOS_Connect_GetProductUserExternalAccountCount(InnerHandle, optionsAddress); Helper.TryMarshalDispose(ref optionsAddress); @@ -516,9 +516,9 @@ public uint GetProductUserExternalAccountCount(GetProductUserExternalAccountCoun } /// - /// Fetch an external account ID, in string form, that maps to a given Product User ID + /// Fetch an external account ID, in string form, that maps to a given Product User ID. /// - /// structure containing the local user and target Product User ID + /// structure containing the local user and target Product User ID. /// The buffer into which the external account ID data should be written. The buffer must be long enough to hold a string of . /// /// The size of the OutBuffer in characters. @@ -526,22 +526,22 @@ public uint GetProductUserExternalAccountCount(GetProductUserExternalAccountCoun /// When the function returns, this parameter will be filled with the length of the string copied into OutBuffer. /// /// - /// An that indicates the external account ID was copied into the OutBuffer - /// if the information is available and passed out in OutUserInfo - /// if you pass a null pointer for the out parameter - /// if the mapping doesn't exist or hasn't been queried yet - /// - The OutBuffer is not large enough to receive the external account ID. InOutBufferLength contains the required minimum length to perform the operation successfully. + /// An that indicates the external account ID was copied into the OutBuffer. + /// if the information is available and passed out in OutUserInfo. + /// if you pass a null pointer for the out parameter. + /// if the mapping doesn't exist or hasn't been queried yet. + /// if the OutBuffer is not large enough to receive the external account ID. InOutBufferLength contains the required minimum length to perform the operation successfully. /// public Result GetProductUserIdMapping(GetProductUserIdMappingOptions options, out string outBuffer) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); System.IntPtr outBufferAddress = System.IntPtr.Zero; int inOutBufferLength = ExternalAccountIdMaxLength + 1; - Helper.TryMarshalAllocate(ref outBufferAddress, inOutBufferLength); + Helper.TryMarshalAllocate(ref outBufferAddress, inOutBufferLength, out _); - var funcResult = EOS_Connect_GetProductUserIdMapping(InnerHandle, optionsAddress, outBufferAddress, ref inOutBufferLength); + var funcResult = Bindings.EOS_Connect_GetProductUserIdMapping(InnerHandle, optionsAddress, outBufferAddress, ref inOutBufferLength); Helper.TryMarshalDispose(ref optionsAddress); @@ -552,14 +552,14 @@ public Result GetProductUserIdMapping(GetProductUserIdMappingOptions options, ou } /// - /// Link a set of external auth credentials with an existing product user on the Epic Online Service + /// Link a set of external auth credentials with an existing product user on the Epic Online Service. /// - /// structure containing a continuance token from a "user not found" response during Login (always try login first) and a currently logged in user not already associated with this external auth provider - /// arbitrary data that is passed back to you in the CompletionDelegate - /// a callback that is fired when the link operation completes, either successfully or in error + /// structure containing a continuance token from a "user not found" response during Login (always try login first) and a currently logged in user not already associated with this external auth provider. + /// arbitrary data that is passed back to you in the CompletionDelegate. + /// a callback that is fired when the link operation completes, either successfully or in error. public void LinkAccount(LinkAccountOptions options, object clientData, OnLinkAccountCallback completionDelegate) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var clientDataAddress = System.IntPtr.Zero; @@ -567,7 +567,7 @@ public void LinkAccount(LinkAccountOptions options, object clientData, OnLinkAcc var completionDelegateInternal = new OnLinkAccountCallbackInternal(OnLinkAccountCallbackInternalImplementation); Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - EOS_Connect_LinkAccount(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); + Bindings.EOS_Connect_LinkAccount(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); Helper.TryMarshalDispose(ref optionsAddress); } @@ -575,12 +575,12 @@ public void LinkAccount(LinkAccountOptions options, object clientData, OnLinkAcc /// /// Login/Authenticate given a valid set of external auth credentials. /// - /// structure containing the external account credentials and type to use during the login operation - /// arbitrary data that is passed back to you in the CompletionDelegate - /// a callback that is fired when the login operation completes, either successfully or in error + /// structure containing the external account credentials and type to use during the login operation. + /// arbitrary data that is passed back to you in the CompletionDelegate. + /// a callback that is fired when the login operation completes, either successfully or in error. public void Login(LoginOptions options, object clientData, OnLoginCallback completionDelegate) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var clientDataAddress = System.IntPtr.Zero; @@ -588,20 +588,21 @@ public void Login(LoginOptions options, object clientData, OnLoginCallback compl var completionDelegateInternal = new OnLoginCallbackInternal(OnLoginCallbackInternalImplementation); Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - EOS_Connect_Login(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); + Bindings.EOS_Connect_Login(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); Helper.TryMarshalDispose(ref optionsAddress); } /// - /// Retrieve the equivalent Product User IDs from a list of external account IDs from supported account providers. The values will be cached and retrievable through . + /// Retrieve the equivalent Product User IDs from a list of external account IDs from supported account providers. + /// The values will be cached and retrievable through . /// - /// structure containing a list of external account IDs, in string form, to query for the Product User ID representation - /// arbitrary data that is passed back to you in the CompletionDelegate - /// a callback that is fired when the query operation completes, either successfully or in error + /// structure containing a list of external account IDs, in string form, to query for the Product User ID representation. + /// arbitrary data that is passed back to you in the CompletionDelegate. + /// a callback that is fired when the query operation completes, either successfully or in error. public void QueryExternalAccountMappings(QueryExternalAccountMappingsOptions options, object clientData, OnQueryExternalAccountMappingsCallback completionDelegate) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var clientDataAddress = System.IntPtr.Zero; @@ -609,7 +610,7 @@ public void QueryExternalAccountMappings(QueryExternalAccountMappingsOptions opt var completionDelegateInternal = new OnQueryExternalAccountMappingsCallbackInternal(OnQueryExternalAccountMappingsCallbackInternalImplementation); Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - EOS_Connect_QueryExternalAccountMappings(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); + Bindings.EOS_Connect_QueryExternalAccountMappings(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); Helper.TryMarshalDispose(ref optionsAddress); } @@ -628,12 +629,12 @@ public void QueryExternalAccountMappings(QueryExternalAccountMappingsOptions opt /// /// /// - /// structure containing a list of Product User IDs to query for the external account representation - /// arbitrary data that is passed back to you in the CompletionDelegate - /// a callback that is fired when the query operation completes, either successfully or in error + /// structure containing a list of Product User IDs to query for the external account representation. + /// arbitrary data that is passed back to you in the CompletionDelegate. + /// a callback that is fired when the query operation completes, either successfully or in error. public void QueryProductUserIdMappings(QueryProductUserIdMappingsOptions options, object clientData, OnQueryProductUserIdMappingsCallback completionDelegate) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var clientDataAddress = System.IntPtr.Zero; @@ -641,7 +642,7 @@ public void QueryProductUserIdMappings(QueryProductUserIdMappingsOptions options var completionDelegateInternal = new OnQueryProductUserIdMappingsCallbackInternal(OnQueryProductUserIdMappingsCallbackInternalImplementation); Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - EOS_Connect_QueryProductUserIdMappings(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); + Bindings.EOS_Connect_QueryProductUserIdMappings(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); Helper.TryMarshalDispose(ref optionsAddress); } @@ -649,28 +650,28 @@ public void QueryProductUserIdMappings(QueryProductUserIdMappingsOptions options /// /// Unregister from receiving expiration notifications. /// - /// handle representing the registered callback + /// handle representing the registered callback. public void RemoveNotifyAuthExpiration(ulong inId) { Helper.TryRemoveCallbackByNotificationId(inId); - EOS_Connect_RemoveNotifyAuthExpiration(InnerHandle, inId); + Bindings.EOS_Connect_RemoveNotifyAuthExpiration(InnerHandle, inId); } /// /// Unregister from receiving user login status updates. /// - /// handle representing the registered callback + /// handle representing the registered callback. public void RemoveNotifyLoginStatusChanged(ulong inId) { Helper.TryRemoveCallbackByNotificationId(inId); - EOS_Connect_RemoveNotifyLoginStatusChanged(InnerHandle, inId); + Bindings.EOS_Connect_RemoveNotifyLoginStatusChanged(InnerHandle, inId); } /// /// Transfer a Device ID pseudo-account and the product user associated with it into another - /// keychain linked with real user accounts (such as Epic Games, Playstation, Xbox, and other). + /// keychain linked with real user accounts (such as Epic Games, PlayStation(TM)Network, Xbox Live, and other). /// /// This function allows transferring a product user, i.e. the local user's game progression /// backend data from a Device ID owned keychain into a keychain with real user accounts @@ -728,12 +729,12 @@ public void RemoveNotifyLoginStatusChanged(ulong inId) /// /// /// - /// structure containing the logged in product users and specifying which one will be preserved - /// arbitrary data that is passed back to you in the CompletionDelegate - /// a callback that is fired when the transfer operation completes, either successfully or in error + /// structure containing the logged in product users and specifying which one will be preserved. + /// arbitrary data that is passed back to you in the CompletionDelegate. + /// a callback that is fired when the transfer operation completes, either successfully or in error. public void TransferDeviceIdAccount(TransferDeviceIdAccountOptions options, object clientData, OnTransferDeviceIdAccountCallback completionDelegate) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var clientDataAddress = System.IntPtr.Zero; @@ -741,7 +742,7 @@ public void TransferDeviceIdAccount(TransferDeviceIdAccountOptions options, obje var completionDelegateInternal = new OnTransferDeviceIdAccountCallbackInternal(OnTransferDeviceIdAccountCallbackInternalImplementation); Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - EOS_Connect_TransferDeviceIdAccount(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); + Bindings.EOS_Connect_TransferDeviceIdAccount(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); Helper.TryMarshalDispose(ref optionsAddress); } @@ -759,7 +760,7 @@ public void TransferDeviceIdAccount(TransferDeviceIdAccountOptions options, obje /// and product user and then use the and APIs to link the local native platform /// account with that previously created existing product user and its owning keychain. /// - /// In another secnario, the user may simply want to disassociate the account that they have logged in with from the current + /// In another scenario, the user may simply want to disassociate the account that they have logged in with from the current /// keychain that it is linked with, perhaps to link it against another keychain or to separate the game progressions again. /// /// In order to protect against account theft, it is only possible to unlink user accounts that have been authenticated @@ -770,12 +771,12 @@ public void TransferDeviceIdAccount(TransferDeviceIdAccountOptions options, obje /// authenticating with one of the other linked accounts in the keychain. These restrictions limit the potential attack surface /// related to account theft scenarios. /// - /// structure containing operation input parameters - /// arbitrary data that is passed back to you in the CompletionDelegate - /// a callback that is fired when the unlink operation completes, either successfully or in error + /// structure containing operation input parameters. + /// arbitrary data that is passed back to you in the CompletionDelegate. + /// a callback that is fired when the unlink operation completes, either successfully or in error. public void UnlinkAccount(UnlinkAccountOptions options, object clientData, OnUnlinkAccountCallback completionDelegate) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var clientDataAddress = System.IntPtr.Zero; @@ -783,7 +784,7 @@ public void UnlinkAccount(UnlinkAccountOptions options, object clientData, OnUnl var completionDelegateInternal = new OnUnlinkAccountCallbackInternal(OnUnlinkAccountCallbackInternalImplementation); Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - EOS_Connect_UnlinkAccount(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); + Bindings.EOS_Connect_UnlinkAccount(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); Helper.TryMarshalDispose(ref optionsAddress); } @@ -908,77 +909,5 @@ internal static void OnUnlinkAccountCallbackInternalImplementation(System.IntPtr callback(callbackInfo); } } - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern ulong EOS_Connect_AddNotifyAuthExpiration(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, OnAuthExpirationCallbackInternal notification); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern ulong EOS_Connect_AddNotifyLoginStatusChanged(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, OnLoginStatusChangedCallbackInternal notification); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_Connect_CopyProductUserExternalAccountByAccountId(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outExternalAccountInfo); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_Connect_CopyProductUserExternalAccountByAccountType(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outExternalAccountInfo); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_Connect_CopyProductUserExternalAccountByIndex(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outExternalAccountInfo); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_Connect_CopyProductUserInfo(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outExternalAccountInfo); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern void EOS_Connect_CreateDeviceId(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, OnCreateDeviceIdCallbackInternal completionDelegate); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern void EOS_Connect_CreateUser(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, OnCreateUserCallbackInternal completionDelegate); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern void EOS_Connect_DeleteDeviceId(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, OnDeleteDeviceIdCallbackInternal completionDelegate); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern System.IntPtr EOS_Connect_GetExternalAccountMapping(System.IntPtr handle, System.IntPtr options); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern System.IntPtr EOS_Connect_GetLoggedInUserByIndex(System.IntPtr handle, int index); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern int EOS_Connect_GetLoggedInUsersCount(System.IntPtr handle); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern LoginStatus EOS_Connect_GetLoginStatus(System.IntPtr handle, System.IntPtr localUserId); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern uint EOS_Connect_GetProductUserExternalAccountCount(System.IntPtr handle, System.IntPtr options); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_Connect_GetProductUserIdMapping(System.IntPtr handle, System.IntPtr options, System.IntPtr outBuffer, ref int inOutBufferLength); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern void EOS_Connect_LinkAccount(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, OnLinkAccountCallbackInternal completionDelegate); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern void EOS_Connect_Login(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, OnLoginCallbackInternal completionDelegate); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern void EOS_Connect_QueryExternalAccountMappings(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, OnQueryExternalAccountMappingsCallbackInternal completionDelegate); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern void EOS_Connect_QueryProductUserIdMappings(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, OnQueryProductUserIdMappingsCallbackInternal completionDelegate); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern void EOS_Connect_ExternalAccountInfo_Release(System.IntPtr externalAccountInfo); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern void EOS_Connect_RemoveNotifyAuthExpiration(System.IntPtr handle, ulong inId); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern void EOS_Connect_RemoveNotifyLoginStatusChanged(System.IntPtr handle, ulong inId); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern void EOS_Connect_TransferDeviceIdAccount(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, OnTransferDeviceIdAccountCallbackInternal completionDelegate); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern void EOS_Connect_UnlinkAccount(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, OnUnlinkAccountCallbackInternal completionDelegate); } } \ No newline at end of file diff --git a/EOSSDK/Generated/Connect/CopyProductUserExternalAccountByAccountIdOptions.cs b/EOSSDK/Generated/Connect/CopyProductUserExternalAccountByAccountIdOptions.cs index 6a9d1eb9..c1799965 100644 --- a/EOSSDK/Generated/Connect/CopyProductUserExternalAccountByAccountIdOptions.cs +++ b/EOSSDK/Generated/Connect/CopyProductUserExternalAccountByAccountIdOptions.cs @@ -59,6 +59,7 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_TargetUserId); Helper.TryMarshalDispose(ref m_AccountId); } } diff --git a/EOSSDK/Generated/Connect/CopyProductUserExternalAccountByAccountTypeOptions.cs b/EOSSDK/Generated/Connect/CopyProductUserExternalAccountByAccountTypeOptions.cs index affb4d0c..b4493c94 100644 --- a/EOSSDK/Generated/Connect/CopyProductUserExternalAccountByAccountTypeOptions.cs +++ b/EOSSDK/Generated/Connect/CopyProductUserExternalAccountByAccountTypeOptions.cs @@ -59,6 +59,7 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_TargetUserId); } } } \ No newline at end of file diff --git a/EOSSDK/Generated/Connect/CopyProductUserExternalAccountByIndexOptions.cs b/EOSSDK/Generated/Connect/CopyProductUserExternalAccountByIndexOptions.cs index 933e6901..54c7c6cd 100644 --- a/EOSSDK/Generated/Connect/CopyProductUserExternalAccountByIndexOptions.cs +++ b/EOSSDK/Generated/Connect/CopyProductUserExternalAccountByIndexOptions.cs @@ -59,6 +59,7 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_TargetUserId); } } } \ No newline at end of file diff --git a/EOSSDK/Generated/Connect/CopyProductUserInfoOptions.cs b/EOSSDK/Generated/Connect/CopyProductUserInfoOptions.cs index 5dae323d..79ececb0 100644 --- a/EOSSDK/Generated/Connect/CopyProductUserInfoOptions.cs +++ b/EOSSDK/Generated/Connect/CopyProductUserInfoOptions.cs @@ -44,6 +44,7 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_TargetUserId); } } } \ No newline at end of file diff --git a/EOSSDK/Generated/Connect/CreateDeviceIdCallbackInfo.cs b/EOSSDK/Generated/Connect/CreateDeviceIdCallbackInfo.cs index 33eb268b..974a206d 100644 --- a/EOSSDK/Generated/Connect/CreateDeviceIdCallbackInfo.cs +++ b/EOSSDK/Generated/Connect/CreateDeviceIdCallbackInfo.cs @@ -14,7 +14,7 @@ public class CreateDeviceIdCallbackInfo : ICallbackInfo, ISettable public Result ResultCode { get; private set; } /// - /// Context that was passed into + /// Context that was passed into . /// public object ClientData { get; private set; } diff --git a/EOSSDK/Generated/Connect/CreateUserCallbackInfo.cs b/EOSSDK/Generated/Connect/CreateUserCallbackInfo.cs index 8337ab7d..b7d13094 100644 --- a/EOSSDK/Generated/Connect/CreateUserCallbackInfo.cs +++ b/EOSSDK/Generated/Connect/CreateUserCallbackInfo.cs @@ -14,12 +14,12 @@ public class CreateUserCallbackInfo : ICallbackInfo, ISettable public Result ResultCode { get; private set; } /// - /// Context that was passed into + /// Context that was passed into . /// public object ClientData { get; private set; } /// - /// If the operation succeeded, this is the Product User ID of the local user who was created + /// If the operation succeeded, this is the Product User ID of the local user who was created. /// public ProductUserId LocalUserId { get; private set; } diff --git a/EOSSDK/Generated/Connect/CreateUserOptions.cs b/EOSSDK/Generated/Connect/CreateUserOptions.cs index 55b7625b..0090bc06 100644 --- a/EOSSDK/Generated/Connect/CreateUserOptions.cs +++ b/EOSSDK/Generated/Connect/CreateUserOptions.cs @@ -44,6 +44,7 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_ContinuanceToken); } } } \ No newline at end of file diff --git a/EOSSDK/Generated/Connect/Credentials.cs b/EOSSDK/Generated/Connect/Credentials.cs index 1626f6e8..3f1c3e32 100644 --- a/EOSSDK/Generated/Connect/Credentials.cs +++ b/EOSSDK/Generated/Connect/Credentials.cs @@ -6,19 +6,19 @@ namespace Epic.OnlineServices.Connect /// /// A structure that contains external login credentials. /// - /// This is part of the input structure + /// This is part of the input structure . /// /// /// public class Credentials : ISettable { /// - /// External token associated with the user logging in + /// External token associated with the user logging in. /// public string Token { get; set; } /// - /// Type of external login; identifies the auth method to use + /// Type of external login; identifies the auth method to use. /// public ExternalCredentialType Type { get; set; } diff --git a/EOSSDK/Generated/Connect/ExternalAccountInfo.cs b/EOSSDK/Generated/Connect/ExternalAccountInfo.cs index c07d007f..f70869fd 100644 --- a/EOSSDK/Generated/Connect/ExternalAccountInfo.cs +++ b/EOSSDK/Generated/Connect/ExternalAccountInfo.cs @@ -154,6 +154,7 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_ProductUserId); Helper.TryMarshalDispose(ref m_DisplayName); Helper.TryMarshalDispose(ref m_AccountId); } diff --git a/EOSSDK/Generated/Connect/GetExternalAccountMappingsOptions.cs b/EOSSDK/Generated/Connect/GetExternalAccountMappingsOptions.cs index 34a26714..2a9f8834 100644 --- a/EOSSDK/Generated/Connect/GetExternalAccountMappingsOptions.cs +++ b/EOSSDK/Generated/Connect/GetExternalAccountMappingsOptions.cs @@ -9,17 +9,17 @@ namespace Epic.OnlineServices.Connect public class GetExternalAccountMappingsOptions { /// - /// The Product User ID of the existing, logged-in user who is querying account mappings + /// The Product User ID of the existing, logged-in user who is querying account mappings. /// public ProductUserId LocalUserId { get; set; } /// - /// External auth service supplying the account IDs in string form + /// External auth service supplying the account IDs in string form. /// public ExternalAccountType AccountIdType { get; set; } /// - /// Target user to retrieve the mapping for, as an external account ID + /// Target user to retrieve the mapping for, as an external account ID. /// public string TargetExternalUserId { get; set; } } @@ -74,6 +74,7 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_LocalUserId); Helper.TryMarshalDispose(ref m_TargetExternalUserId); } } diff --git a/EOSSDK/Generated/Connect/GetProductUserExternalAccountCountOptions.cs b/EOSSDK/Generated/Connect/GetProductUserExternalAccountCountOptions.cs index 6ac5731d..572e4c8a 100644 --- a/EOSSDK/Generated/Connect/GetProductUserExternalAccountCountOptions.cs +++ b/EOSSDK/Generated/Connect/GetProductUserExternalAccountCountOptions.cs @@ -44,6 +44,7 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_TargetUserId); } } } \ No newline at end of file diff --git a/EOSSDK/Generated/Connect/GetProductUserIdMappingOptions.cs b/EOSSDK/Generated/Connect/GetProductUserIdMappingOptions.cs index 5023f7fe..62ca9545 100644 --- a/EOSSDK/Generated/Connect/GetProductUserIdMappingOptions.cs +++ b/EOSSDK/Generated/Connect/GetProductUserIdMappingOptions.cs @@ -9,17 +9,17 @@ namespace Epic.OnlineServices.Connect public class GetProductUserIdMappingOptions { /// - /// The Product User ID of the existing, logged-in user that is querying account mappings + /// The Product User ID of the existing, logged-in user that is querying account mappings. /// public ProductUserId LocalUserId { get; set; } /// - /// External auth service mapping to retrieve + /// External auth service mapping to retrieve. /// public ExternalAccountType AccountIdType { get; set; } /// - /// The Product User ID of the user whose information is being requested + /// The Product User ID of the user whose information is being requested. /// public ProductUserId TargetProductUserId { get; set; } } @@ -74,6 +74,8 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_LocalUserId); + Helper.TryMarshalDispose(ref m_TargetProductUserId); } } } \ No newline at end of file diff --git a/EOSSDK/Generated/Connect/LinkAccountCallbackInfo.cs b/EOSSDK/Generated/Connect/LinkAccountCallbackInfo.cs index cb5b783d..8ccf3fe6 100644 --- a/EOSSDK/Generated/Connect/LinkAccountCallbackInfo.cs +++ b/EOSSDK/Generated/Connect/LinkAccountCallbackInfo.cs @@ -14,12 +14,12 @@ public class LinkAccountCallbackInfo : ICallbackInfo, ISettable public Result ResultCode { get; private set; } /// - /// Context that was passed into + /// Context that was passed into . /// public object ClientData { get; private set; } /// - /// The Product User ID of the existing, logged-in user whose account was linked (on success) + /// The Product User ID of the existing, logged-in user whose account was linked (on success). /// public ProductUserId LocalUserId { get; private set; } diff --git a/EOSSDK/Generated/Connect/LinkAccountOptions.cs b/EOSSDK/Generated/Connect/LinkAccountOptions.cs index 71dfd9c3..a6f8f82b 100644 --- a/EOSSDK/Generated/Connect/LinkAccountOptions.cs +++ b/EOSSDK/Generated/Connect/LinkAccountOptions.cs @@ -9,12 +9,12 @@ namespace Epic.OnlineServices.Connect public class LinkAccountOptions { /// - /// If the operation suceeded, this is The Product User ID of the existing, logged-in user that is linked to the external account referenced by the continuance token + /// The existing logged in product user for which to link the external account described by the continuance token. /// public ProductUserId LocalUserId { get; set; } /// - /// Continuance token from previous call to + /// Continuance token from previous call to . /// public ContinuanceToken ContinuanceToken { get; set; } } @@ -59,6 +59,8 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_LocalUserId); + Helper.TryMarshalDispose(ref m_ContinuanceToken); } } } \ No newline at end of file diff --git a/EOSSDK/Generated/Connect/LoginCallbackInfo.cs b/EOSSDK/Generated/Connect/LoginCallbackInfo.cs index 306c7956..dc39c5e9 100644 --- a/EOSSDK/Generated/Connect/LoginCallbackInfo.cs +++ b/EOSSDK/Generated/Connect/LoginCallbackInfo.cs @@ -14,19 +14,19 @@ public class LoginCallbackInfo : ICallbackInfo, ISettable public Result ResultCode { get; private set; } /// - /// Context that was passed into + /// Context that was passed into . /// public object ClientData { get; private set; } /// - /// If login was succesful, this is the Product User ID of the local player that logged in + /// If login was succesful, this is the Product User ID of the local player that logged in. /// public ProductUserId LocalUserId { get; private set; } /// /// If the user was not found with credentials passed into , /// this continuance token can be passed to either - /// or to continue the flow + /// or to continue the flow. /// public ContinuanceToken ContinuanceToken { get; private set; } diff --git a/EOSSDK/Generated/Connect/LoginOptions.cs b/EOSSDK/Generated/Connect/LoginOptions.cs index aa590c5d..f3cf0d09 100644 --- a/EOSSDK/Generated/Connect/LoginOptions.cs +++ b/EOSSDK/Generated/Connect/LoginOptions.cs @@ -16,7 +16,8 @@ public class LoginOptions /// /// Additional non-authoritative information about the local user. /// - /// This field is required to be set for user authentication with Apple and Nintendo, as well as with the Device ID feature login. When using other identity providers, set to NULL. + /// This field is required to be set and only used when authenticating the user using Apple, Google, Nintendo Account, Nintendo Service Account, Oculus or the Device ID feature login. + /// When using other identity providers, set to NULL. /// public UserLoginInfo UserLoginInfo { get; set; } } diff --git a/EOSSDK/Generated/Connect/LoginStatusChangedCallbackInfo.cs b/EOSSDK/Generated/Connect/LoginStatusChangedCallbackInfo.cs index a191aa1f..a1cd9a57 100644 --- a/EOSSDK/Generated/Connect/LoginStatusChangedCallbackInfo.cs +++ b/EOSSDK/Generated/Connect/LoginStatusChangedCallbackInfo.cs @@ -9,22 +9,22 @@ namespace Epic.OnlineServices.Connect public class LoginStatusChangedCallbackInfo : ICallbackInfo, ISettable { /// - /// Context that was passed into + /// Context that was passed into . /// public object ClientData { get; private set; } /// - /// The Product User ID of the local player whose status has changed + /// The Product User ID of the local player whose status has changed. /// public ProductUserId LocalUserId { get; private set; } /// - /// The status prior to the change + /// The status prior to the change. /// public LoginStatus PreviousStatus { get; private set; } /// - /// The status at the time of the notification + /// The status at the time of the notification. /// public LoginStatus CurrentStatus { get; private set; } diff --git a/EOSSDK/Generated/Connect/OnAuthExpirationCallback.cs b/EOSSDK/Generated/Connect/OnAuthExpirationCallback.cs index 7a6f927d..b189df77 100644 --- a/EOSSDK/Generated/Connect/OnAuthExpirationCallback.cs +++ b/EOSSDK/Generated/Connect/OnAuthExpirationCallback.cs @@ -4,10 +4,11 @@ namespace Epic.OnlineServices.Connect { /// - /// Function prototype definition for notifications that come from + /// Function prototype definition for notifications that come from . /// - /// A containing the output information and result + /// A containing the output information and result. public delegate void OnAuthExpirationCallback(AuthExpirationCallbackInfo data); + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] internal delegate void OnAuthExpirationCallbackInternal(System.IntPtr data); } \ No newline at end of file diff --git a/EOSSDK/Generated/Connect/OnCreateDeviceIdCallback.cs b/EOSSDK/Generated/Connect/OnCreateDeviceIdCallback.cs index 4dc82d9f..b2ee6872 100644 --- a/EOSSDK/Generated/Connect/OnCreateDeviceIdCallback.cs +++ b/EOSSDK/Generated/Connect/OnCreateDeviceIdCallback.cs @@ -5,5 +5,6 @@ namespace Epic.OnlineServices.Connect { public delegate void OnCreateDeviceIdCallback(CreateDeviceIdCallbackInfo data); + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] internal delegate void OnCreateDeviceIdCallbackInternal(System.IntPtr data); } \ No newline at end of file diff --git a/EOSSDK/Generated/Connect/OnCreateUserCallback.cs b/EOSSDK/Generated/Connect/OnCreateUserCallback.cs index 241ef060..0faf5bed 100644 --- a/EOSSDK/Generated/Connect/OnCreateUserCallback.cs +++ b/EOSSDK/Generated/Connect/OnCreateUserCallback.cs @@ -5,5 +5,6 @@ namespace Epic.OnlineServices.Connect { public delegate void OnCreateUserCallback(CreateUserCallbackInfo data); + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] internal delegate void OnCreateUserCallbackInternal(System.IntPtr data); } \ No newline at end of file diff --git a/EOSSDK/Generated/Connect/OnDeleteDeviceIdCallback.cs b/EOSSDK/Generated/Connect/OnDeleteDeviceIdCallback.cs index 9974b96d..3880f4b6 100644 --- a/EOSSDK/Generated/Connect/OnDeleteDeviceIdCallback.cs +++ b/EOSSDK/Generated/Connect/OnDeleteDeviceIdCallback.cs @@ -5,5 +5,6 @@ namespace Epic.OnlineServices.Connect { public delegate void OnDeleteDeviceIdCallback(DeleteDeviceIdCallbackInfo data); + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] internal delegate void OnDeleteDeviceIdCallbackInternal(System.IntPtr data); } \ No newline at end of file diff --git a/EOSSDK/Generated/Connect/OnLinkAccountCallback.cs b/EOSSDK/Generated/Connect/OnLinkAccountCallback.cs index c95cdd24..bd65f2b6 100644 --- a/EOSSDK/Generated/Connect/OnLinkAccountCallback.cs +++ b/EOSSDK/Generated/Connect/OnLinkAccountCallback.cs @@ -4,10 +4,11 @@ namespace Epic.OnlineServices.Connect { /// - /// Function prototype definition for callbacks passed to + /// Function prototype definition for callbacks passed to . /// - /// A containing the output information and result + /// A containing the output information and result. public delegate void OnLinkAccountCallback(LinkAccountCallbackInfo data); + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] internal delegate void OnLinkAccountCallbackInternal(System.IntPtr data); } \ No newline at end of file diff --git a/EOSSDK/Generated/Connect/OnLoginCallback.cs b/EOSSDK/Generated/Connect/OnLoginCallback.cs index cc7d004c..ee7ce7a7 100644 --- a/EOSSDK/Generated/Connect/OnLoginCallback.cs +++ b/EOSSDK/Generated/Connect/OnLoginCallback.cs @@ -4,10 +4,11 @@ namespace Epic.OnlineServices.Connect { /// - /// Function prototype definition for callbacks passed to + /// Function prototype definition for callbacks passed to . /// - /// A containing the output information and result + /// A containing the output information and result. public delegate void OnLoginCallback(LoginCallbackInfo data); + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] internal delegate void OnLoginCallbackInternal(System.IntPtr data); } \ No newline at end of file diff --git a/EOSSDK/Generated/Connect/OnLoginStatusChangedCallback.cs b/EOSSDK/Generated/Connect/OnLoginStatusChangedCallback.cs index e480d6f9..b99c6992 100644 --- a/EOSSDK/Generated/Connect/OnLoginStatusChangedCallback.cs +++ b/EOSSDK/Generated/Connect/OnLoginStatusChangedCallback.cs @@ -4,10 +4,11 @@ namespace Epic.OnlineServices.Connect { /// - /// Function prototype definition for notifications that come from + /// Function prototype definition for notifications that come from . /// - /// A containing the output information and result + /// A containing the output information and result. public delegate void OnLoginStatusChangedCallback(LoginStatusChangedCallbackInfo data); + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] internal delegate void OnLoginStatusChangedCallbackInternal(System.IntPtr data); } \ No newline at end of file diff --git a/EOSSDK/Generated/Connect/OnQueryExternalAccountMappingsCallback.cs b/EOSSDK/Generated/Connect/OnQueryExternalAccountMappingsCallback.cs index 1a3fed2b..727dad2c 100644 --- a/EOSSDK/Generated/Connect/OnQueryExternalAccountMappingsCallback.cs +++ b/EOSSDK/Generated/Connect/OnQueryExternalAccountMappingsCallback.cs @@ -4,10 +4,11 @@ namespace Epic.OnlineServices.Connect { /// - /// Function prototype definition for callbacks passed to + /// Function prototype definition for callbacks passed to . /// - /// A containing the output information and result + /// A containing the output information and result. public delegate void OnQueryExternalAccountMappingsCallback(QueryExternalAccountMappingsCallbackInfo data); + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] internal delegate void OnQueryExternalAccountMappingsCallbackInternal(System.IntPtr data); } \ No newline at end of file diff --git a/EOSSDK/Generated/Connect/OnQueryProductUserIdMappingsCallback.cs b/EOSSDK/Generated/Connect/OnQueryProductUserIdMappingsCallback.cs index 6807897c..0a23737a 100644 --- a/EOSSDK/Generated/Connect/OnQueryProductUserIdMappingsCallback.cs +++ b/EOSSDK/Generated/Connect/OnQueryProductUserIdMappingsCallback.cs @@ -4,10 +4,11 @@ namespace Epic.OnlineServices.Connect { /// - /// Function prototype definition for callbacks passed to + /// Function prototype definition for callbacks passed to . /// - /// A containing the output information and result + /// A containing the output information and result. public delegate void OnQueryProductUserIdMappingsCallback(QueryProductUserIdMappingsCallbackInfo data); + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] internal delegate void OnQueryProductUserIdMappingsCallbackInternal(System.IntPtr data); } \ No newline at end of file diff --git a/EOSSDK/Generated/Connect/OnTransferDeviceIdAccountCallback.cs b/EOSSDK/Generated/Connect/OnTransferDeviceIdAccountCallback.cs index 9888c41f..7c10d897 100644 --- a/EOSSDK/Generated/Connect/OnTransferDeviceIdAccountCallback.cs +++ b/EOSSDK/Generated/Connect/OnTransferDeviceIdAccountCallback.cs @@ -4,10 +4,11 @@ namespace Epic.OnlineServices.Connect { /// - /// Function prototype definition for callbacks passed to + /// Function prototype definition for callbacks passed to . /// - /// A containing the output information and result + /// A containing the output information and result. public delegate void OnTransferDeviceIdAccountCallback(TransferDeviceIdAccountCallbackInfo data); + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] internal delegate void OnTransferDeviceIdAccountCallbackInternal(System.IntPtr data); } \ No newline at end of file diff --git a/EOSSDK/Generated/Connect/OnUnlinkAccountCallback.cs b/EOSSDK/Generated/Connect/OnUnlinkAccountCallback.cs index a6ed6df3..d124730e 100644 --- a/EOSSDK/Generated/Connect/OnUnlinkAccountCallback.cs +++ b/EOSSDK/Generated/Connect/OnUnlinkAccountCallback.cs @@ -4,10 +4,11 @@ namespace Epic.OnlineServices.Connect { /// - /// Function prototype definition for callbacks passed to + /// Function prototype definition for callbacks passed to . /// /// A containing the output information and result public delegate void OnUnlinkAccountCallback(UnlinkAccountCallbackInfo data); + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] internal delegate void OnUnlinkAccountCallbackInternal(System.IntPtr data); } \ No newline at end of file diff --git a/EOSSDK/Generated/Connect/QueryExternalAccountMappingsCallbackInfo.cs b/EOSSDK/Generated/Connect/QueryExternalAccountMappingsCallbackInfo.cs index 50000582..b1d7a307 100644 --- a/EOSSDK/Generated/Connect/QueryExternalAccountMappingsCallbackInfo.cs +++ b/EOSSDK/Generated/Connect/QueryExternalAccountMappingsCallbackInfo.cs @@ -14,12 +14,12 @@ public class QueryExternalAccountMappingsCallbackInfo : ICallbackInfo, ISettable public Result ResultCode { get; private set; } /// - /// Context that was passed into + /// Context that was passed into . /// public object ClientData { get; private set; } /// - /// The Product User ID of the existing, logged-in user who made the request + /// The Product User ID of the existing, logged-in user who made the request. /// public ProductUserId LocalUserId { get; private set; } diff --git a/EOSSDK/Generated/Connect/QueryExternalAccountMappingsOptions.cs b/EOSSDK/Generated/Connect/QueryExternalAccountMappingsOptions.cs index cfd11955..7ea0509a 100644 --- a/EOSSDK/Generated/Connect/QueryExternalAccountMappingsOptions.cs +++ b/EOSSDK/Generated/Connect/QueryExternalAccountMappingsOptions.cs @@ -9,17 +9,17 @@ namespace Epic.OnlineServices.Connect public class QueryExternalAccountMappingsOptions { /// - /// The Product User ID of the existing, logged-in user who is querying account mappings + /// The Product User ID of the existing, logged-in user who is querying account mappings. /// public ProductUserId LocalUserId { get; set; } /// - /// External auth service supplying the account IDs in string form + /// External auth service supplying the account IDs in string form. /// public ExternalAccountType AccountIdType { get; set; } /// - /// An array of external account IDs to map to the product user ID representation + /// An array of external account IDs to map to the product user ID representation. /// public string[] ExternalAccountIds { get; set; } } @@ -75,6 +75,7 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_LocalUserId); Helper.TryMarshalDispose(ref m_ExternalAccountIds); } } diff --git a/EOSSDK/Generated/Connect/QueryProductUserIdMappingsCallbackInfo.cs b/EOSSDK/Generated/Connect/QueryProductUserIdMappingsCallbackInfo.cs index 312c7325..2cf83a82 100644 --- a/EOSSDK/Generated/Connect/QueryProductUserIdMappingsCallbackInfo.cs +++ b/EOSSDK/Generated/Connect/QueryProductUserIdMappingsCallbackInfo.cs @@ -14,12 +14,12 @@ public class QueryProductUserIdMappingsCallbackInfo : ICallbackInfo, ISettable public Result ResultCode { get; private set; } /// - /// Context that was passed into + /// Context that was passed into . /// public object ClientData { get; private set; } /// - /// The Product User ID of the existing, logged-in user who made the request + /// The Product User ID of the existing, logged-in user who made the request. /// public ProductUserId LocalUserId { get; private set; } diff --git a/EOSSDK/Generated/Connect/QueryProductUserIdMappingsOptions.cs b/EOSSDK/Generated/Connect/QueryProductUserIdMappingsOptions.cs index ecf82b91..9f213548 100644 --- a/EOSSDK/Generated/Connect/QueryProductUserIdMappingsOptions.cs +++ b/EOSSDK/Generated/Connect/QueryProductUserIdMappingsOptions.cs @@ -9,17 +9,17 @@ namespace Epic.OnlineServices.Connect public class QueryProductUserIdMappingsOptions { /// - /// The Product User ID of the existing, logged-in user who is querying account mappings + /// The Product User ID of the existing, logged-in user who is querying account mappings. /// public ProductUserId LocalUserId { get; set; } /// - /// Deprecated - all external mappings are included in this call, it is no longer necessary to specify this value + /// Deprecated - all external mappings are included in this call, it is no longer necessary to specify this value. /// public ExternalAccountType AccountIdType_DEPRECATED { get; set; } /// - /// An array of Product User IDs to query for the given external account representation + /// An array of Product User IDs to query for the given external account representation. /// public ProductUserId[] ProductUserIds { get; set; } } @@ -75,6 +75,7 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_LocalUserId); Helper.TryMarshalDispose(ref m_ProductUserIds); } } diff --git a/EOSSDK/Generated/Connect/TransferDeviceIdAccountCallbackInfo.cs b/EOSSDK/Generated/Connect/TransferDeviceIdAccountCallbackInfo.cs index 366b27de..2678bd97 100644 --- a/EOSSDK/Generated/Connect/TransferDeviceIdAccountCallbackInfo.cs +++ b/EOSSDK/Generated/Connect/TransferDeviceIdAccountCallbackInfo.cs @@ -14,7 +14,7 @@ public class TransferDeviceIdAccountCallbackInfo : ICallbackInfo, ISettable public Result ResultCode { get; private set; } /// - /// Context that was passed into + /// Context that was passed into . /// public object ClientData { get; private set; } diff --git a/EOSSDK/Generated/Connect/TransferDeviceIdAccountOptions.cs b/EOSSDK/Generated/Connect/TransferDeviceIdAccountOptions.cs index 4623355c..5db38b72 100644 --- a/EOSSDK/Generated/Connect/TransferDeviceIdAccountOptions.cs +++ b/EOSSDK/Generated/Connect/TransferDeviceIdAccountOptions.cs @@ -9,7 +9,7 @@ namespace Epic.OnlineServices.Connect public class TransferDeviceIdAccountOptions { /// - /// The primary product user id, currently logged in, that is already associated with a real external user account (such as Epic Games, Playstation, Xbox and other). + /// The primary product user id, currently logged in, that is already associated with a real external user account (such as Epic Games, PlayStation(TM)Network, Xbox Live and other). /// /// The account linking keychain that owns this product user will be preserved and receive /// the Device ID login credentials under it. @@ -83,6 +83,9 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_PrimaryLocalUserId); + Helper.TryMarshalDispose(ref m_LocalDeviceUserId); + Helper.TryMarshalDispose(ref m_ProductUserIdToPreserve); } } } \ No newline at end of file diff --git a/EOSSDK/Generated/Connect/UnlinkAccountCallbackInfo.cs b/EOSSDK/Generated/Connect/UnlinkAccountCallbackInfo.cs index 45fdd396..07ad15a3 100644 --- a/EOSSDK/Generated/Connect/UnlinkAccountCallbackInfo.cs +++ b/EOSSDK/Generated/Connect/UnlinkAccountCallbackInfo.cs @@ -14,7 +14,7 @@ public class UnlinkAccountCallbackInfo : ICallbackInfo, ISettable public Result ResultCode { get; private set; } /// - /// Context that was passed into + /// Context that was passed into . /// public object ClientData { get; private set; } diff --git a/EOSSDK/Generated/Connect/UnlinkAccountOptions.cs b/EOSSDK/Generated/Connect/UnlinkAccountOptions.cs index c0a890ef..a90e2915 100644 --- a/EOSSDK/Generated/Connect/UnlinkAccountOptions.cs +++ b/EOSSDK/Generated/Connect/UnlinkAccountOptions.cs @@ -47,6 +47,7 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_LocalUserId); } } } \ No newline at end of file diff --git a/EOSSDK/Generated/Connect/UserLoginInfo.cs b/EOSSDK/Generated/Connect/UserLoginInfo.cs index b509b297..0bd2812c 100644 --- a/EOSSDK/Generated/Connect/UserLoginInfo.cs +++ b/EOSSDK/Generated/Connect/UserLoginInfo.cs @@ -6,12 +6,15 @@ namespace Epic.OnlineServices.Connect /// /// Additional information about the local user. /// - /// As the information passed here is client-controlled and not part of the user authentication tokens, it is only treated as non-authoritative informational data to be used by some of the feature services. For example displaying player names in Leaderboards rankings. + /// As the information passed here is client-controlled and not part of the user authentication tokens, + /// it is only treated as non-authoritative informational data to be used by some of the feature services. + /// For example displaying player names in Leaderboards rankings. /// public class UserLoginInfo : ISettable { /// - /// The user’s display name on the identity provider systems as UTF-8 encoded null-terminated string. The length of the name can be at maximum up to bytes. + /// The user's display name on the identity provider systems as UTF-8 encoded null-terminated string. + /// The length of the name can be at maximum up to bytes. /// public string DisplayName { get; set; } diff --git a/EOSSDK/Generated/ContinuanceToken.cs b/EOSSDK/Generated/ContinuanceToken.cs index ca2ed6d1..0b2fb77b 100644 --- a/EOSSDK/Generated/ContinuanceToken.cs +++ b/EOSSDK/Generated/ContinuanceToken.cs @@ -3,7 +3,7 @@ namespace Epic.OnlineServices { - public sealed class ContinuanceToken : Handle + public sealed partial class ContinuanceToken : Handle { public ContinuanceToken() { @@ -14,12 +14,12 @@ public ContinuanceToken(System.IntPtr innerHandle) : base(innerHandle) } /// - /// Retrieve a null-terminated string-ified continuance token from an . + /// Retrieve a null-terminated stringified continuance token from an . /// /// To get the required buffer size, call once with OutBuffer set to NULL, InOutBufferLength will contain the buffer size needed. - /// Call again with valid params to get the string-ified continuance token which will only contain UTF8-encoded printable characters (excluding the null-terminator). + /// Call again with valid params to get the stringified continuance token which will only contain UTF8-encoded printable characters (excluding the null-terminator). /// - /// The continuance token for which to retrieve the string-ified version. + /// The continuance token for which to retrieve the stringified version. /// The buffer into which the character data should be written /// /// The size of the OutBuffer in characters. @@ -27,19 +27,19 @@ public ContinuanceToken(System.IntPtr innerHandle) : base(innerHandle) /// When the function returns, this parameter will be filled with the length of the string copied into OutBuffer including the null termination character. /// /// - /// An that indicates whether the Epic Online Services Account ID string was copied into the OutBuffer. + /// An that indicates whether the continuance token string was copied into the OutBuffer. /// - The OutBuffer was filled, and InOutBufferLength contains the number of characters copied into OutBuffer including the null terminator. /// - Either OutBuffer or InOutBufferLength were passed as NULL parameters. - /// - The AccountId is invalid and cannot be string-ified + /// - The AccountId is invalid and cannot be stringified. /// - The OutBuffer is not large enough to receive the continuance token string. InOutBufferLength contains the required minimum length to perform the operation successfully. /// public Result ToString(out string outBuffer) { System.IntPtr outBufferAddress = System.IntPtr.Zero; int inOutBufferLength = 1024; - Helper.TryMarshalAllocate(ref outBufferAddress, inOutBufferLength); + Helper.TryMarshalAllocate(ref outBufferAddress, inOutBufferLength, out _); - var funcResult = EOS_ContinuanceToken_ToString(InnerHandle, outBufferAddress, ref inOutBufferLength); + var funcResult = Bindings.EOS_ContinuanceToken_ToString(InnerHandle, outBufferAddress, ref inOutBufferLength); Helper.TryMarshalGet(outBufferAddress, out outBuffer); Helper.TryMarshalDispose(ref outBufferAddress); @@ -47,7 +47,11 @@ public Result ToString(out string outBuffer) return funcResult; } - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_ContinuanceToken_ToString(System.IntPtr continuanceToken, System.IntPtr outBuffer, ref int inOutBufferLength); + public override string ToString() + { + string funcResult; + ToString(out funcResult); + return funcResult; + } } } \ No newline at end of file diff --git a/EOSSDK/Generated/Ecom/CatalogItem.cs b/EOSSDK/Generated/Ecom/CatalogItem.cs index 7539d823..51b2d7ad 100644 --- a/EOSSDK/Generated/Ecom/CatalogItem.cs +++ b/EOSSDK/Generated/Ecom/CatalogItem.cs @@ -269,6 +269,8 @@ public void Set(object other) public void Dispose() { Helper.TryMarshalDispose(ref m_CatalogNamespace); + Helper.TryMarshalDispose(ref m_Id); + Helper.TryMarshalDispose(ref m_EntitlementName); Helper.TryMarshalDispose(ref m_TitleText); Helper.TryMarshalDispose(ref m_DescriptionText); Helper.TryMarshalDispose(ref m_LongDescriptionText); diff --git a/EOSSDK/Generated/Ecom/CatalogOffer.cs b/EOSSDK/Generated/Ecom/CatalogOffer.cs index 27d1fabf..ad134508 100644 --- a/EOSSDK/Generated/Ecom/CatalogOffer.cs +++ b/EOSSDK/Generated/Ecom/CatalogOffer.cs @@ -61,14 +61,14 @@ public class CatalogOffer : ISettable public Result PriceResult { get; set; } /// - /// The original price of this offer. + /// The original price of this offer as a 32-bit number is deprecated. /// - public uint OriginalPrice { get; set; } + public uint OriginalPrice_DEPRECATED { get; set; } /// - /// The current price including discounts of this offer. + /// The current price including discounts of this offer as a 32-bit number is deprecated.. /// - public uint CurrentPrice { get; set; } + public uint CurrentPrice_DEPRECATED { get; set; } /// /// A value from 0 to 100 define the percentage of the OrignalPrice that the CurrentPrice represents @@ -96,6 +96,16 @@ public class CatalogOffer : ISettable /// public bool AvailableForPurchase { get; set; } + /// + /// The original price of this offer as a 64-bit number. + /// + public ulong OriginalPrice64 { get; set; } + + /// + /// The current price including discounts of this offer as a 64-bit number. + /// + public ulong CurrentPrice64 { get; set; } + internal void Set(CatalogOfferInternal? other) { if (other != null) @@ -109,13 +119,15 @@ internal void Set(CatalogOfferInternal? other) TechnicalDetailsText_DEPRECATED = other.Value.TechnicalDetailsText_DEPRECATED; CurrencyCode = other.Value.CurrencyCode; PriceResult = other.Value.PriceResult; - OriginalPrice = other.Value.OriginalPrice; - CurrentPrice = other.Value.CurrentPrice; + OriginalPrice_DEPRECATED = other.Value.OriginalPrice_DEPRECATED; + CurrentPrice_DEPRECATED = other.Value.CurrentPrice_DEPRECATED; DiscountPercentage = other.Value.DiscountPercentage; ExpirationTimestamp = other.Value.ExpirationTimestamp; PurchasedCount = other.Value.PurchasedCount; PurchaseLimit = other.Value.PurchaseLimit; AvailableForPurchase = other.Value.AvailableForPurchase; + OriginalPrice64 = other.Value.OriginalPrice64; + CurrentPrice64 = other.Value.CurrentPrice64; } } @@ -138,13 +150,15 @@ internal struct CatalogOfferInternal : ISettable, System.IDisposable private System.IntPtr m_TechnicalDetailsText_DEPRECATED; private System.IntPtr m_CurrencyCode; private Result m_PriceResult; - private uint m_OriginalPrice; - private uint m_CurrentPrice; + private uint m_OriginalPrice_DEPRECATED; + private uint m_CurrentPrice_DEPRECATED; private byte m_DiscountPercentage; private long m_ExpirationTimestamp; private uint m_PurchasedCount; private int m_PurchaseLimit; private int m_AvailableForPurchase; + private ulong m_OriginalPrice64; + private ulong m_CurrentPrice64; public int ServerIndex { @@ -277,29 +291,29 @@ public Result PriceResult } } - public uint OriginalPrice + public uint OriginalPrice_DEPRECATED { get { - return m_OriginalPrice; + return m_OriginalPrice_DEPRECATED; } set { - m_OriginalPrice = value; + m_OriginalPrice_DEPRECATED = value; } } - public uint CurrentPrice + public uint CurrentPrice_DEPRECATED { get { - return m_CurrentPrice; + return m_CurrentPrice_DEPRECATED; } set { - m_CurrentPrice = value; + m_CurrentPrice_DEPRECATED = value; } } @@ -370,6 +384,32 @@ public bool AvailableForPurchase } } + public ulong OriginalPrice64 + { + get + { + return m_OriginalPrice64; + } + + set + { + m_OriginalPrice64 = value; + } + } + + public ulong CurrentPrice64 + { + get + { + return m_CurrentPrice64; + } + + set + { + m_CurrentPrice64 = value; + } + } + public void Set(CatalogOffer other) { if (other != null) @@ -384,13 +424,15 @@ public void Set(CatalogOffer other) TechnicalDetailsText_DEPRECATED = other.TechnicalDetailsText_DEPRECATED; CurrencyCode = other.CurrencyCode; PriceResult = other.PriceResult; - OriginalPrice = other.OriginalPrice; - CurrentPrice = other.CurrentPrice; + OriginalPrice_DEPRECATED = other.OriginalPrice_DEPRECATED; + CurrentPrice_DEPRECATED = other.CurrentPrice_DEPRECATED; DiscountPercentage = other.DiscountPercentage; ExpirationTimestamp = other.ExpirationTimestamp; PurchasedCount = other.PurchasedCount; PurchaseLimit = other.PurchaseLimit; AvailableForPurchase = other.AvailableForPurchase; + OriginalPrice64 = other.OriginalPrice64; + CurrentPrice64 = other.CurrentPrice64; } } @@ -402,6 +444,7 @@ public void Set(object other) public void Dispose() { Helper.TryMarshalDispose(ref m_CatalogNamespace); + Helper.TryMarshalDispose(ref m_Id); Helper.TryMarshalDispose(ref m_TitleText); Helper.TryMarshalDispose(ref m_DescriptionText); Helper.TryMarshalDispose(ref m_LongDescriptionText); diff --git a/EOSSDK/Generated/Ecom/CheckoutEntry.cs b/EOSSDK/Generated/Ecom/CheckoutEntry.cs index 325f90cc..22f6529b 100644 --- a/EOSSDK/Generated/Ecom/CheckoutEntry.cs +++ b/EOSSDK/Generated/Ecom/CheckoutEntry.cs @@ -65,6 +65,7 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_OfferId); } } } \ No newline at end of file diff --git a/EOSSDK/Generated/Ecom/CheckoutOptions.cs b/EOSSDK/Generated/Ecom/CheckoutOptions.cs index 791aaa25..5fd81a2e 100644 --- a/EOSSDK/Generated/Ecom/CheckoutOptions.cs +++ b/EOSSDK/Generated/Ecom/CheckoutOptions.cs @@ -75,6 +75,7 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_LocalUserId); Helper.TryMarshalDispose(ref m_OverrideCatalogNamespace); Helper.TryMarshalDispose(ref m_Entries); } diff --git a/EOSSDK/Generated/Ecom/CopyEntitlementByIdOptions.cs b/EOSSDK/Generated/Ecom/CopyEntitlementByIdOptions.cs index 6f53daf6..9df63538 100644 --- a/EOSSDK/Generated/Ecom/CopyEntitlementByIdOptions.cs +++ b/EOSSDK/Generated/Ecom/CopyEntitlementByIdOptions.cs @@ -59,6 +59,8 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_LocalUserId); + Helper.TryMarshalDispose(ref m_EntitlementId); } } } \ No newline at end of file diff --git a/EOSSDK/Generated/Ecom/CopyEntitlementByIndexOptions.cs b/EOSSDK/Generated/Ecom/CopyEntitlementByIndexOptions.cs index e554b27f..0dfad4ba 100644 --- a/EOSSDK/Generated/Ecom/CopyEntitlementByIndexOptions.cs +++ b/EOSSDK/Generated/Ecom/CopyEntitlementByIndexOptions.cs @@ -59,6 +59,7 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_LocalUserId); } } } \ No newline at end of file diff --git a/EOSSDK/Generated/Ecom/CopyEntitlementByNameAndIndexOptions.cs b/EOSSDK/Generated/Ecom/CopyEntitlementByNameAndIndexOptions.cs index 076893e3..86152486 100644 --- a/EOSSDK/Generated/Ecom/CopyEntitlementByNameAndIndexOptions.cs +++ b/EOSSDK/Generated/Ecom/CopyEntitlementByNameAndIndexOptions.cs @@ -74,6 +74,8 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_LocalUserId); + Helper.TryMarshalDispose(ref m_EntitlementName); } } } \ No newline at end of file diff --git a/EOSSDK/Generated/Ecom/CopyItemByIdOptions.cs b/EOSSDK/Generated/Ecom/CopyItemByIdOptions.cs index c5da20ef..4207c455 100644 --- a/EOSSDK/Generated/Ecom/CopyItemByIdOptions.cs +++ b/EOSSDK/Generated/Ecom/CopyItemByIdOptions.cs @@ -59,6 +59,8 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_LocalUserId); + Helper.TryMarshalDispose(ref m_ItemId); } } } \ No newline at end of file diff --git a/EOSSDK/Generated/Ecom/CopyItemImageInfoByIndexOptions.cs b/EOSSDK/Generated/Ecom/CopyItemImageInfoByIndexOptions.cs index a1c24131..f94c4eb9 100644 --- a/EOSSDK/Generated/Ecom/CopyItemImageInfoByIndexOptions.cs +++ b/EOSSDK/Generated/Ecom/CopyItemImageInfoByIndexOptions.cs @@ -74,6 +74,8 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_LocalUserId); + Helper.TryMarshalDispose(ref m_ItemId); } } } \ No newline at end of file diff --git a/EOSSDK/Generated/Ecom/CopyItemReleaseByIndexOptions.cs b/EOSSDK/Generated/Ecom/CopyItemReleaseByIndexOptions.cs index fab90bd4..98e8605b 100644 --- a/EOSSDK/Generated/Ecom/CopyItemReleaseByIndexOptions.cs +++ b/EOSSDK/Generated/Ecom/CopyItemReleaseByIndexOptions.cs @@ -74,6 +74,8 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_LocalUserId); + Helper.TryMarshalDispose(ref m_ItemId); } } } \ No newline at end of file diff --git a/EOSSDK/Generated/Ecom/CopyOfferByIdOptions.cs b/EOSSDK/Generated/Ecom/CopyOfferByIdOptions.cs index 22ca9f01..6eddd448 100644 --- a/EOSSDK/Generated/Ecom/CopyOfferByIdOptions.cs +++ b/EOSSDK/Generated/Ecom/CopyOfferByIdOptions.cs @@ -59,6 +59,8 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_LocalUserId); + Helper.TryMarshalDispose(ref m_OfferId); } } } \ No newline at end of file diff --git a/EOSSDK/Generated/Ecom/CopyOfferByIndexOptions.cs b/EOSSDK/Generated/Ecom/CopyOfferByIndexOptions.cs index 84a0fd4a..8c52158e 100644 --- a/EOSSDK/Generated/Ecom/CopyOfferByIndexOptions.cs +++ b/EOSSDK/Generated/Ecom/CopyOfferByIndexOptions.cs @@ -59,6 +59,7 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_LocalUserId); } } } \ No newline at end of file diff --git a/EOSSDK/Generated/Ecom/CopyOfferImageInfoByIndexOptions.cs b/EOSSDK/Generated/Ecom/CopyOfferImageInfoByIndexOptions.cs index 88dc7278..c9b4633e 100644 --- a/EOSSDK/Generated/Ecom/CopyOfferImageInfoByIndexOptions.cs +++ b/EOSSDK/Generated/Ecom/CopyOfferImageInfoByIndexOptions.cs @@ -74,6 +74,8 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_LocalUserId); + Helper.TryMarshalDispose(ref m_OfferId); } } } \ No newline at end of file diff --git a/EOSSDK/Generated/Ecom/CopyOfferItemByIndexOptions.cs b/EOSSDK/Generated/Ecom/CopyOfferItemByIndexOptions.cs index acd9617e..652cc604 100644 --- a/EOSSDK/Generated/Ecom/CopyOfferItemByIndexOptions.cs +++ b/EOSSDK/Generated/Ecom/CopyOfferItemByIndexOptions.cs @@ -74,6 +74,8 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_LocalUserId); + Helper.TryMarshalDispose(ref m_OfferId); } } } \ No newline at end of file diff --git a/EOSSDK/Generated/Ecom/CopyTransactionByIdOptions.cs b/EOSSDK/Generated/Ecom/CopyTransactionByIdOptions.cs index 6fe2d33a..9bc235ef 100644 --- a/EOSSDK/Generated/Ecom/CopyTransactionByIdOptions.cs +++ b/EOSSDK/Generated/Ecom/CopyTransactionByIdOptions.cs @@ -59,6 +59,7 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_LocalUserId); Helper.TryMarshalDispose(ref m_TransactionId); } } diff --git a/EOSSDK/Generated/Ecom/CopyTransactionByIndexOptions.cs b/EOSSDK/Generated/Ecom/CopyTransactionByIndexOptions.cs index 67a81b32..142d3b17 100644 --- a/EOSSDK/Generated/Ecom/CopyTransactionByIndexOptions.cs +++ b/EOSSDK/Generated/Ecom/CopyTransactionByIndexOptions.cs @@ -59,6 +59,7 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_LocalUserId); } } } \ No newline at end of file diff --git a/EOSSDK/Generated/Ecom/EcomInterface.cs b/EOSSDK/Generated/Ecom/EcomInterface.cs index 77382f52..bf83b805 100644 --- a/EOSSDK/Generated/Ecom/EcomInterface.cs +++ b/EOSSDK/Generated/Ecom/EcomInterface.cs @@ -3,7 +3,7 @@ namespace Epic.OnlineServices.Ecom { - public sealed class EcomInterface : Handle + public sealed partial class EcomInterface : Handle { public EcomInterface() { @@ -26,7 +26,7 @@ public EcomInterface(System.IntPtr innerHandle) : base(innerHandle) /// /// The most recent version of the struct. /// - public const int CatalogofferApiLatest = 2; + public const int CatalogofferApiLatest = 3; /// /// Timestamp value representing an undefined ExpirationTimestamp for @@ -86,12 +86,12 @@ public EcomInterface(System.IntPtr innerHandle) : base(innerHandle) /// /// The most recent version of the API. /// - public const int CopyofferbyidApiLatest = 1; + public const int CopyofferbyidApiLatest = 2; /// /// The most recent version of the API. /// - public const int CopyofferbyindexApiLatest = 1; + public const int CopyofferbyindexApiLatest = 2; /// /// The most recent version of the API. @@ -235,7 +235,7 @@ public EcomInterface(System.IntPtr innerHandle) : base(innerHandle) /// a callback that is fired when the async operation completes, either successfully or in error public void Checkout(CheckoutOptions options, object clientData, OnCheckoutCallback completionDelegate) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var clientDataAddress = System.IntPtr.Zero; @@ -243,7 +243,7 @@ public void Checkout(CheckoutOptions options, object clientData, OnCheckoutCallb var completionDelegateInternal = new OnCheckoutCallbackInternal(OnCheckoutCallbackInternalImplementation); Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - EOS_Ecom_Checkout(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); + Bindings.EOS_Ecom_Checkout(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); Helper.TryMarshalDispose(ref optionsAddress); } @@ -263,18 +263,18 @@ public void Checkout(CheckoutOptions options, object clientData, OnCheckoutCallb /// public Result CopyEntitlementById(CopyEntitlementByIdOptions options, out Entitlement outEntitlement) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var outEntitlementAddress = System.IntPtr.Zero; - var funcResult = EOS_Ecom_CopyEntitlementById(InnerHandle, optionsAddress, ref outEntitlementAddress); + var funcResult = Bindings.EOS_Ecom_CopyEntitlementById(InnerHandle, optionsAddress, ref outEntitlementAddress); Helper.TryMarshalDispose(ref optionsAddress); if (Helper.TryMarshalGet(outEntitlementAddress, out outEntitlement)) { - EOS_Ecom_Entitlement_Release(outEntitlementAddress); + Bindings.EOS_Ecom_Entitlement_Release(outEntitlementAddress); } return funcResult; @@ -294,18 +294,18 @@ public Result CopyEntitlementById(CopyEntitlementByIdOptions options, out Entitl /// public Result CopyEntitlementByIndex(CopyEntitlementByIndexOptions options, out Entitlement outEntitlement) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var outEntitlementAddress = System.IntPtr.Zero; - var funcResult = EOS_Ecom_CopyEntitlementByIndex(InnerHandle, optionsAddress, ref outEntitlementAddress); + var funcResult = Bindings.EOS_Ecom_CopyEntitlementByIndex(InnerHandle, optionsAddress, ref outEntitlementAddress); Helper.TryMarshalDispose(ref optionsAddress); if (Helper.TryMarshalGet(outEntitlementAddress, out outEntitlement)) { - EOS_Ecom_Entitlement_Release(outEntitlementAddress); + Bindings.EOS_Ecom_Entitlement_Release(outEntitlementAddress); } return funcResult; @@ -327,18 +327,18 @@ public Result CopyEntitlementByIndex(CopyEntitlementByIndexOptions options, out /// public Result CopyEntitlementByNameAndIndex(CopyEntitlementByNameAndIndexOptions options, out Entitlement outEntitlement) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var outEntitlementAddress = System.IntPtr.Zero; - var funcResult = EOS_Ecom_CopyEntitlementByNameAndIndex(InnerHandle, optionsAddress, ref outEntitlementAddress); + var funcResult = Bindings.EOS_Ecom_CopyEntitlementByNameAndIndex(InnerHandle, optionsAddress, ref outEntitlementAddress); Helper.TryMarshalDispose(ref optionsAddress); if (Helper.TryMarshalGet(outEntitlementAddress, out outEntitlement)) { - EOS_Ecom_Entitlement_Release(outEntitlementAddress); + Bindings.EOS_Ecom_Entitlement_Release(outEntitlementAddress); } return funcResult; @@ -360,18 +360,18 @@ public Result CopyEntitlementByNameAndIndex(CopyEntitlementByNameAndIndexOptions /// public Result CopyItemById(CopyItemByIdOptions options, out CatalogItem outItem) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var outItemAddress = System.IntPtr.Zero; - var funcResult = EOS_Ecom_CopyItemById(InnerHandle, optionsAddress, ref outItemAddress); + var funcResult = Bindings.EOS_Ecom_CopyItemById(InnerHandle, optionsAddress, ref outItemAddress); Helper.TryMarshalDispose(ref optionsAddress); if (Helper.TryMarshalGet(outItemAddress, out outItem)) { - EOS_Ecom_CatalogItem_Release(outItemAddress); + Bindings.EOS_Ecom_CatalogItem_Release(outItemAddress); } return funcResult; @@ -391,18 +391,18 @@ public Result CopyItemById(CopyItemByIdOptions options, out CatalogItem outItem) /// public Result CopyItemImageInfoByIndex(CopyItemImageInfoByIndexOptions options, out KeyImageInfo outImageInfo) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var outImageInfoAddress = System.IntPtr.Zero; - var funcResult = EOS_Ecom_CopyItemImageInfoByIndex(InnerHandle, optionsAddress, ref outImageInfoAddress); + var funcResult = Bindings.EOS_Ecom_CopyItemImageInfoByIndex(InnerHandle, optionsAddress, ref outImageInfoAddress); Helper.TryMarshalDispose(ref optionsAddress); if (Helper.TryMarshalGet(outImageInfoAddress, out outImageInfo)) { - EOS_Ecom_KeyImageInfo_Release(outImageInfoAddress); + Bindings.EOS_Ecom_KeyImageInfo_Release(outImageInfoAddress); } return funcResult; @@ -422,18 +422,18 @@ public Result CopyItemImageInfoByIndex(CopyItemImageInfoByIndexOptions options, /// public Result CopyItemReleaseByIndex(CopyItemReleaseByIndexOptions options, out CatalogRelease outRelease) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var outReleaseAddress = System.IntPtr.Zero; - var funcResult = EOS_Ecom_CopyItemReleaseByIndex(InnerHandle, optionsAddress, ref outReleaseAddress); + var funcResult = Bindings.EOS_Ecom_CopyItemReleaseByIndex(InnerHandle, optionsAddress, ref outReleaseAddress); Helper.TryMarshalDispose(ref optionsAddress); if (Helper.TryMarshalGet(outReleaseAddress, out outRelease)) { - EOS_Ecom_CatalogRelease_Release(outReleaseAddress); + Bindings.EOS_Ecom_CatalogRelease_Release(outReleaseAddress); } return funcResult; @@ -455,18 +455,18 @@ public Result CopyItemReleaseByIndex(CopyItemReleaseByIndexOptions options, out /// public Result CopyOfferById(CopyOfferByIdOptions options, out CatalogOffer outOffer) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var outOfferAddress = System.IntPtr.Zero; - var funcResult = EOS_Ecom_CopyOfferById(InnerHandle, optionsAddress, ref outOfferAddress); + var funcResult = Bindings.EOS_Ecom_CopyOfferById(InnerHandle, optionsAddress, ref outOfferAddress); Helper.TryMarshalDispose(ref optionsAddress); if (Helper.TryMarshalGet(outOfferAddress, out outOffer)) { - EOS_Ecom_CatalogOffer_Release(outOfferAddress); + Bindings.EOS_Ecom_CatalogOffer_Release(outOfferAddress); } return funcResult; @@ -488,18 +488,18 @@ public Result CopyOfferById(CopyOfferByIdOptions options, out CatalogOffer outOf /// public Result CopyOfferByIndex(CopyOfferByIndexOptions options, out CatalogOffer outOffer) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var outOfferAddress = System.IntPtr.Zero; - var funcResult = EOS_Ecom_CopyOfferByIndex(InnerHandle, optionsAddress, ref outOfferAddress); + var funcResult = Bindings.EOS_Ecom_CopyOfferByIndex(InnerHandle, optionsAddress, ref outOfferAddress); Helper.TryMarshalDispose(ref optionsAddress); if (Helper.TryMarshalGet(outOfferAddress, out outOffer)) { - EOS_Ecom_CatalogOffer_Release(outOfferAddress); + Bindings.EOS_Ecom_CatalogOffer_Release(outOfferAddress); } return funcResult; @@ -519,18 +519,18 @@ public Result CopyOfferByIndex(CopyOfferByIndexOptions options, out CatalogOffer /// public Result CopyOfferImageInfoByIndex(CopyOfferImageInfoByIndexOptions options, out KeyImageInfo outImageInfo) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var outImageInfoAddress = System.IntPtr.Zero; - var funcResult = EOS_Ecom_CopyOfferImageInfoByIndex(InnerHandle, optionsAddress, ref outImageInfoAddress); + var funcResult = Bindings.EOS_Ecom_CopyOfferImageInfoByIndex(InnerHandle, optionsAddress, ref outImageInfoAddress); Helper.TryMarshalDispose(ref optionsAddress); if (Helper.TryMarshalGet(outImageInfoAddress, out outImageInfo)) { - EOS_Ecom_KeyImageInfo_Release(outImageInfoAddress); + Bindings.EOS_Ecom_KeyImageInfo_Release(outImageInfoAddress); } return funcResult; @@ -552,18 +552,18 @@ public Result CopyOfferImageInfoByIndex(CopyOfferImageInfoByIndexOptions options /// public Result CopyOfferItemByIndex(CopyOfferItemByIndexOptions options, out CatalogItem outItem) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var outItemAddress = System.IntPtr.Zero; - var funcResult = EOS_Ecom_CopyOfferItemByIndex(InnerHandle, optionsAddress, ref outItemAddress); + var funcResult = Bindings.EOS_Ecom_CopyOfferItemByIndex(InnerHandle, optionsAddress, ref outItemAddress); Helper.TryMarshalDispose(ref optionsAddress); if (Helper.TryMarshalGet(outItemAddress, out outItem)) { - EOS_Ecom_CatalogItem_Release(outItemAddress); + Bindings.EOS_Ecom_CatalogItem_Release(outItemAddress); } return funcResult; @@ -582,12 +582,12 @@ public Result CopyOfferItemByIndex(CopyOfferItemByIndexOptions options, out Cata /// public Result CopyTransactionById(CopyTransactionByIdOptions options, out Transaction outTransaction) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var outTransactionAddress = System.IntPtr.Zero; - var funcResult = EOS_Ecom_CopyTransactionById(InnerHandle, optionsAddress, ref outTransactionAddress); + var funcResult = Bindings.EOS_Ecom_CopyTransactionById(InnerHandle, optionsAddress, ref outTransactionAddress); Helper.TryMarshalDispose(ref optionsAddress); @@ -609,12 +609,12 @@ public Result CopyTransactionById(CopyTransactionByIdOptions options, out Transa /// public Result CopyTransactionByIndex(CopyTransactionByIndexOptions options, out Transaction outTransaction) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var outTransactionAddress = System.IntPtr.Zero; - var funcResult = EOS_Ecom_CopyTransactionByIndex(InnerHandle, optionsAddress, ref outTransactionAddress); + var funcResult = Bindings.EOS_Ecom_CopyTransactionByIndex(InnerHandle, optionsAddress, ref outTransactionAddress); Helper.TryMarshalDispose(ref optionsAddress); @@ -633,10 +633,10 @@ public Result CopyTransactionByIndex(CopyTransactionByIndexOptions options, out /// public uint GetEntitlementsByNameCount(GetEntitlementsByNameCountOptions options) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); - var funcResult = EOS_Ecom_GetEntitlementsByNameCount(InnerHandle, optionsAddress); + var funcResult = Bindings.EOS_Ecom_GetEntitlementsByNameCount(InnerHandle, optionsAddress); Helper.TryMarshalDispose(ref optionsAddress); @@ -653,10 +653,10 @@ public uint GetEntitlementsByNameCount(GetEntitlementsByNameCountOptions options /// public uint GetEntitlementsCount(GetEntitlementsCountOptions options) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); - var funcResult = EOS_Ecom_GetEntitlementsCount(InnerHandle, optionsAddress); + var funcResult = Bindings.EOS_Ecom_GetEntitlementsCount(InnerHandle, optionsAddress); Helper.TryMarshalDispose(ref optionsAddress); @@ -671,10 +671,10 @@ public uint GetEntitlementsCount(GetEntitlementsCountOptions options) /// public uint GetItemImageInfoCount(GetItemImageInfoCountOptions options) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); - var funcResult = EOS_Ecom_GetItemImageInfoCount(InnerHandle, optionsAddress); + var funcResult = Bindings.EOS_Ecom_GetItemImageInfoCount(InnerHandle, optionsAddress); Helper.TryMarshalDispose(ref optionsAddress); @@ -689,10 +689,10 @@ public uint GetItemImageInfoCount(GetItemImageInfoCountOptions options) /// public uint GetItemReleaseCount(GetItemReleaseCountOptions options) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); - var funcResult = EOS_Ecom_GetItemReleaseCount(InnerHandle, optionsAddress); + var funcResult = Bindings.EOS_Ecom_GetItemReleaseCount(InnerHandle, optionsAddress); Helper.TryMarshalDispose(ref optionsAddress); @@ -709,10 +709,10 @@ public uint GetItemReleaseCount(GetItemReleaseCountOptions options) /// public uint GetOfferCount(GetOfferCountOptions options) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); - var funcResult = EOS_Ecom_GetOfferCount(InnerHandle, optionsAddress); + var funcResult = Bindings.EOS_Ecom_GetOfferCount(InnerHandle, optionsAddress); Helper.TryMarshalDispose(ref optionsAddress); @@ -727,10 +727,10 @@ public uint GetOfferCount(GetOfferCountOptions options) /// public uint GetOfferImageInfoCount(GetOfferImageInfoCountOptions options) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); - var funcResult = EOS_Ecom_GetOfferImageInfoCount(InnerHandle, optionsAddress); + var funcResult = Bindings.EOS_Ecom_GetOfferImageInfoCount(InnerHandle, optionsAddress); Helper.TryMarshalDispose(ref optionsAddress); @@ -745,10 +745,10 @@ public uint GetOfferImageInfoCount(GetOfferImageInfoCountOptions options) /// public uint GetOfferItemCount(GetOfferItemCountOptions options) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); - var funcResult = EOS_Ecom_GetOfferItemCount(InnerHandle, optionsAddress); + var funcResult = Bindings.EOS_Ecom_GetOfferItemCount(InnerHandle, optionsAddress); Helper.TryMarshalDispose(ref optionsAddress); @@ -765,10 +765,10 @@ public uint GetOfferItemCount(GetOfferItemCountOptions options) /// public uint GetTransactionCount(GetTransactionCountOptions options) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); - var funcResult = EOS_Ecom_GetTransactionCount(InnerHandle, optionsAddress); + var funcResult = Bindings.EOS_Ecom_GetTransactionCount(InnerHandle, optionsAddress); Helper.TryMarshalDispose(ref optionsAddress); @@ -787,7 +787,7 @@ public uint GetTransactionCount(GetTransactionCountOptions options) /// a callback that is fired when the async operation completes, either successfully or in error public void QueryEntitlements(QueryEntitlementsOptions options, object clientData, OnQueryEntitlementsCallback completionDelegate) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var clientDataAddress = System.IntPtr.Zero; @@ -795,7 +795,7 @@ public void QueryEntitlements(QueryEntitlementsOptions options, object clientDat var completionDelegateInternal = new OnQueryEntitlementsCallbackInternal(OnQueryEntitlementsCallbackInternalImplementation); Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - EOS_Ecom_QueryEntitlements(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); + Bindings.EOS_Ecom_QueryEntitlements(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); Helper.TryMarshalDispose(ref optionsAddress); } @@ -809,7 +809,7 @@ public void QueryEntitlements(QueryEntitlementsOptions options, object clientDat /// a callback that is fired when the async operation completes, either successfully or in error public void QueryOffers(QueryOffersOptions options, object clientData, OnQueryOffersCallback completionDelegate) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var clientDataAddress = System.IntPtr.Zero; @@ -817,7 +817,7 @@ public void QueryOffers(QueryOffersOptions options, object clientData, OnQueryOf var completionDelegateInternal = new OnQueryOffersCallbackInternal(OnQueryOffersCallbackInternalImplementation); Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - EOS_Ecom_QueryOffers(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); + Bindings.EOS_Ecom_QueryOffers(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); Helper.TryMarshalDispose(ref optionsAddress); } @@ -831,7 +831,7 @@ public void QueryOffers(QueryOffersOptions options, object clientData, OnQueryOf /// a callback that is fired when the async operation completes, either successfully or in error public void QueryOwnership(QueryOwnershipOptions options, object clientData, OnQueryOwnershipCallback completionDelegate) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var clientDataAddress = System.IntPtr.Zero; @@ -839,7 +839,7 @@ public void QueryOwnership(QueryOwnershipOptions options, object clientData, OnQ var completionDelegateInternal = new OnQueryOwnershipCallbackInternal(OnQueryOwnershipCallbackInternalImplementation); Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - EOS_Ecom_QueryOwnership(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); + Bindings.EOS_Ecom_QueryOwnership(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); Helper.TryMarshalDispose(ref optionsAddress); } @@ -853,7 +853,7 @@ public void QueryOwnership(QueryOwnershipOptions options, object clientData, OnQ /// a callback that is fired when the async operation completes, either successfully or in error public void QueryOwnershipToken(QueryOwnershipTokenOptions options, object clientData, OnQueryOwnershipTokenCallback completionDelegate) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var clientDataAddress = System.IntPtr.Zero; @@ -861,7 +861,7 @@ public void QueryOwnershipToken(QueryOwnershipTokenOptions options, object clien var completionDelegateInternal = new OnQueryOwnershipTokenCallbackInternal(OnQueryOwnershipTokenCallbackInternalImplementation); Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - EOS_Ecom_QueryOwnershipToken(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); + Bindings.EOS_Ecom_QueryOwnershipToken(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); Helper.TryMarshalDispose(ref optionsAddress); } @@ -875,7 +875,7 @@ public void QueryOwnershipToken(QueryOwnershipTokenOptions options, object clien /// a callback that is fired when the async operation completes, either successfully or in error public void RedeemEntitlements(RedeemEntitlementsOptions options, object clientData, OnRedeemEntitlementsCallback completionDelegate) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var clientDataAddress = System.IntPtr.Zero; @@ -883,7 +883,7 @@ public void RedeemEntitlements(RedeemEntitlementsOptions options, object clientD var completionDelegateInternal = new OnRedeemEntitlementsCallbackInternal(OnRedeemEntitlementsCallbackInternalImplementation); Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - EOS_Ecom_RedeemEntitlements(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); + Bindings.EOS_Ecom_RedeemEntitlements(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); Helper.TryMarshalDispose(ref optionsAddress); } @@ -953,98 +953,5 @@ internal static void OnRedeemEntitlementsCallbackInternalImplementation(System.I callback(callbackInfo); } } - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern void EOS_Ecom_Checkout(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, OnCheckoutCallbackInternal completionDelegate); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_Ecom_CopyEntitlementById(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outEntitlement); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_Ecom_CopyEntitlementByIndex(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outEntitlement); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_Ecom_CopyEntitlementByNameAndIndex(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outEntitlement); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_Ecom_CopyItemById(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outItem); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_Ecom_CopyItemImageInfoByIndex(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outImageInfo); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_Ecom_CopyItemReleaseByIndex(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outRelease); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_Ecom_CopyOfferById(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outOffer); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_Ecom_CopyOfferByIndex(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outOffer); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_Ecom_CopyOfferImageInfoByIndex(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outImageInfo); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_Ecom_CopyOfferItemByIndex(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outItem); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_Ecom_CopyTransactionById(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outTransaction); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_Ecom_CopyTransactionByIndex(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outTransaction); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern uint EOS_Ecom_GetEntitlementsByNameCount(System.IntPtr handle, System.IntPtr options); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern uint EOS_Ecom_GetEntitlementsCount(System.IntPtr handle, System.IntPtr options); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern uint EOS_Ecom_GetItemImageInfoCount(System.IntPtr handle, System.IntPtr options); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern uint EOS_Ecom_GetItemReleaseCount(System.IntPtr handle, System.IntPtr options); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern uint EOS_Ecom_GetOfferCount(System.IntPtr handle, System.IntPtr options); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern uint EOS_Ecom_GetOfferImageInfoCount(System.IntPtr handle, System.IntPtr options); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern uint EOS_Ecom_GetOfferItemCount(System.IntPtr handle, System.IntPtr options); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern uint EOS_Ecom_GetTransactionCount(System.IntPtr handle, System.IntPtr options); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern void EOS_Ecom_QueryEntitlements(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, OnQueryEntitlementsCallbackInternal completionDelegate); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern void EOS_Ecom_QueryOffers(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, OnQueryOffersCallbackInternal completionDelegate); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern void EOS_Ecom_QueryOwnership(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, OnQueryOwnershipCallbackInternal completionDelegate); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern void EOS_Ecom_QueryOwnershipToken(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, OnQueryOwnershipTokenCallbackInternal completionDelegate); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern void EOS_Ecom_RedeemEntitlements(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, OnRedeemEntitlementsCallbackInternal completionDelegate); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern void EOS_Ecom_Entitlement_Release(System.IntPtr entitlement); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern void EOS_Ecom_CatalogItem_Release(System.IntPtr catalogItem); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern void EOS_Ecom_CatalogOffer_Release(System.IntPtr catalogOffer); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern void EOS_Ecom_KeyImageInfo_Release(System.IntPtr keyImageInfo); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern void EOS_Ecom_CatalogRelease_Release(System.IntPtr catalogRelease); } } \ No newline at end of file diff --git a/EOSSDK/Generated/Ecom/Entitlement.cs b/EOSSDK/Generated/Ecom/Entitlement.cs index 5342b3ad..9dafc9bd 100644 --- a/EOSSDK/Generated/Ecom/Entitlement.cs +++ b/EOSSDK/Generated/Ecom/Entitlement.cs @@ -178,6 +178,9 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_EntitlementName); + Helper.TryMarshalDispose(ref m_EntitlementId); + Helper.TryMarshalDispose(ref m_CatalogItemId); } } } \ No newline at end of file diff --git a/EOSSDK/Generated/Ecom/GetEntitlementsByNameCountOptions.cs b/EOSSDK/Generated/Ecom/GetEntitlementsByNameCountOptions.cs index 2203591a..e771c72a 100644 --- a/EOSSDK/Generated/Ecom/GetEntitlementsByNameCountOptions.cs +++ b/EOSSDK/Generated/Ecom/GetEntitlementsByNameCountOptions.cs @@ -59,6 +59,8 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_LocalUserId); + Helper.TryMarshalDispose(ref m_EntitlementName); } } } \ No newline at end of file diff --git a/EOSSDK/Generated/Ecom/GetEntitlementsCountOptions.cs b/EOSSDK/Generated/Ecom/GetEntitlementsCountOptions.cs index b06c9d6d..2834ebc6 100644 --- a/EOSSDK/Generated/Ecom/GetEntitlementsCountOptions.cs +++ b/EOSSDK/Generated/Ecom/GetEntitlementsCountOptions.cs @@ -44,6 +44,7 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_LocalUserId); } } } \ No newline at end of file diff --git a/EOSSDK/Generated/Ecom/GetItemImageInfoCountOptions.cs b/EOSSDK/Generated/Ecom/GetItemImageInfoCountOptions.cs index f5469dad..28728f7c 100644 --- a/EOSSDK/Generated/Ecom/GetItemImageInfoCountOptions.cs +++ b/EOSSDK/Generated/Ecom/GetItemImageInfoCountOptions.cs @@ -59,6 +59,8 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_LocalUserId); + Helper.TryMarshalDispose(ref m_ItemId); } } } \ No newline at end of file diff --git a/EOSSDK/Generated/Ecom/GetItemReleaseCountOptions.cs b/EOSSDK/Generated/Ecom/GetItemReleaseCountOptions.cs index c74672d9..6dc370c3 100644 --- a/EOSSDK/Generated/Ecom/GetItemReleaseCountOptions.cs +++ b/EOSSDK/Generated/Ecom/GetItemReleaseCountOptions.cs @@ -59,6 +59,8 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_LocalUserId); + Helper.TryMarshalDispose(ref m_ItemId); } } } \ No newline at end of file diff --git a/EOSSDK/Generated/Ecom/GetOfferCountOptions.cs b/EOSSDK/Generated/Ecom/GetOfferCountOptions.cs index 2522f3fa..21cd25e9 100644 --- a/EOSSDK/Generated/Ecom/GetOfferCountOptions.cs +++ b/EOSSDK/Generated/Ecom/GetOfferCountOptions.cs @@ -44,6 +44,7 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_LocalUserId); } } } \ No newline at end of file diff --git a/EOSSDK/Generated/Ecom/GetOfferImageInfoCountOptions.cs b/EOSSDK/Generated/Ecom/GetOfferImageInfoCountOptions.cs index 2a658826..bf31467b 100644 --- a/EOSSDK/Generated/Ecom/GetOfferImageInfoCountOptions.cs +++ b/EOSSDK/Generated/Ecom/GetOfferImageInfoCountOptions.cs @@ -59,6 +59,8 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_LocalUserId); + Helper.TryMarshalDispose(ref m_OfferId); } } } \ No newline at end of file diff --git a/EOSSDK/Generated/Ecom/GetOfferItemCountOptions.cs b/EOSSDK/Generated/Ecom/GetOfferItemCountOptions.cs index d1f0fad5..84f30df1 100644 --- a/EOSSDK/Generated/Ecom/GetOfferItemCountOptions.cs +++ b/EOSSDK/Generated/Ecom/GetOfferItemCountOptions.cs @@ -59,6 +59,8 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_LocalUserId); + Helper.TryMarshalDispose(ref m_OfferId); } } } \ No newline at end of file diff --git a/EOSSDK/Generated/Ecom/GetTransactionCountOptions.cs b/EOSSDK/Generated/Ecom/GetTransactionCountOptions.cs index 8428b1c4..23d19bd2 100644 --- a/EOSSDK/Generated/Ecom/GetTransactionCountOptions.cs +++ b/EOSSDK/Generated/Ecom/GetTransactionCountOptions.cs @@ -44,6 +44,7 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_LocalUserId); } } } \ No newline at end of file diff --git a/EOSSDK/Generated/Ecom/ItemOwnership.cs b/EOSSDK/Generated/Ecom/ItemOwnership.cs index 97d52436..965b99c8 100644 --- a/EOSSDK/Generated/Ecom/ItemOwnership.cs +++ b/EOSSDK/Generated/Ecom/ItemOwnership.cs @@ -86,6 +86,7 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_Id); } } } \ No newline at end of file diff --git a/EOSSDK/Generated/Ecom/OnCheckoutCallback.cs b/EOSSDK/Generated/Ecom/OnCheckoutCallback.cs index aa03f658..a531fbe6 100644 --- a/EOSSDK/Generated/Ecom/OnCheckoutCallback.cs +++ b/EOSSDK/Generated/Ecom/OnCheckoutCallback.cs @@ -9,5 +9,6 @@ namespace Epic.OnlineServices.Ecom /// A containing the output information and result public delegate void OnCheckoutCallback(CheckoutCallbackInfo data); + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] internal delegate void OnCheckoutCallbackInternal(System.IntPtr data); } \ No newline at end of file diff --git a/EOSSDK/Generated/Ecom/OnQueryEntitlementsCallback.cs b/EOSSDK/Generated/Ecom/OnQueryEntitlementsCallback.cs index a7578d60..34e0d086 100644 --- a/EOSSDK/Generated/Ecom/OnQueryEntitlementsCallback.cs +++ b/EOSSDK/Generated/Ecom/OnQueryEntitlementsCallback.cs @@ -9,5 +9,6 @@ namespace Epic.OnlineServices.Ecom /// A containing the output information and result public delegate void OnQueryEntitlementsCallback(QueryEntitlementsCallbackInfo data); + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] internal delegate void OnQueryEntitlementsCallbackInternal(System.IntPtr data); } \ No newline at end of file diff --git a/EOSSDK/Generated/Ecom/OnQueryOffersCallback.cs b/EOSSDK/Generated/Ecom/OnQueryOffersCallback.cs index 4db19702..1313b346 100644 --- a/EOSSDK/Generated/Ecom/OnQueryOffersCallback.cs +++ b/EOSSDK/Generated/Ecom/OnQueryOffersCallback.cs @@ -9,5 +9,6 @@ namespace Epic.OnlineServices.Ecom /// A containing the output information and result public delegate void OnQueryOffersCallback(QueryOffersCallbackInfo data); + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] internal delegate void OnQueryOffersCallbackInternal(System.IntPtr data); } \ No newline at end of file diff --git a/EOSSDK/Generated/Ecom/OnQueryOwnershipCallback.cs b/EOSSDK/Generated/Ecom/OnQueryOwnershipCallback.cs index d9b352bc..64af3856 100644 --- a/EOSSDK/Generated/Ecom/OnQueryOwnershipCallback.cs +++ b/EOSSDK/Generated/Ecom/OnQueryOwnershipCallback.cs @@ -9,5 +9,6 @@ namespace Epic.OnlineServices.Ecom /// A containing the output information and result public delegate void OnQueryOwnershipCallback(QueryOwnershipCallbackInfo data); + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] internal delegate void OnQueryOwnershipCallbackInternal(System.IntPtr data); } \ No newline at end of file diff --git a/EOSSDK/Generated/Ecom/OnQueryOwnershipTokenCallback.cs b/EOSSDK/Generated/Ecom/OnQueryOwnershipTokenCallback.cs index 48be03b7..eeb01b17 100644 --- a/EOSSDK/Generated/Ecom/OnQueryOwnershipTokenCallback.cs +++ b/EOSSDK/Generated/Ecom/OnQueryOwnershipTokenCallback.cs @@ -9,5 +9,6 @@ namespace Epic.OnlineServices.Ecom /// A containing the output information and result public delegate void OnQueryOwnershipTokenCallback(QueryOwnershipTokenCallbackInfo data); + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] internal delegate void OnQueryOwnershipTokenCallbackInternal(System.IntPtr data); } \ No newline at end of file diff --git a/EOSSDK/Generated/Ecom/OnRedeemEntitlementsCallback.cs b/EOSSDK/Generated/Ecom/OnRedeemEntitlementsCallback.cs index ba528e81..954e4ad2 100644 --- a/EOSSDK/Generated/Ecom/OnRedeemEntitlementsCallback.cs +++ b/EOSSDK/Generated/Ecom/OnRedeemEntitlementsCallback.cs @@ -9,5 +9,6 @@ namespace Epic.OnlineServices.Ecom /// A containing the output information and result public delegate void OnRedeemEntitlementsCallback(RedeemEntitlementsCallbackInfo data); + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] internal delegate void OnRedeemEntitlementsCallbackInternal(System.IntPtr data); } \ No newline at end of file diff --git a/EOSSDK/Generated/Ecom/QueryEntitlementsOptions.cs b/EOSSDK/Generated/Ecom/QueryEntitlementsOptions.cs index 51bed182..b24126dc 100644 --- a/EOSSDK/Generated/Ecom/QueryEntitlementsOptions.cs +++ b/EOSSDK/Generated/Ecom/QueryEntitlementsOptions.cs @@ -75,6 +75,7 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_LocalUserId); Helper.TryMarshalDispose(ref m_EntitlementNames); } } diff --git a/EOSSDK/Generated/Ecom/QueryOffersOptions.cs b/EOSSDK/Generated/Ecom/QueryOffersOptions.cs index 085b1825..d21f17fa 100644 --- a/EOSSDK/Generated/Ecom/QueryOffersOptions.cs +++ b/EOSSDK/Generated/Ecom/QueryOffersOptions.cs @@ -59,6 +59,7 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_LocalUserId); Helper.TryMarshalDispose(ref m_OverrideCatalogNamespace); } } diff --git a/EOSSDK/Generated/Ecom/QueryOwnershipOptions.cs b/EOSSDK/Generated/Ecom/QueryOwnershipOptions.cs index fd224f88..f74ad4ee 100644 --- a/EOSSDK/Generated/Ecom/QueryOwnershipOptions.cs +++ b/EOSSDK/Generated/Ecom/QueryOwnershipOptions.cs @@ -75,6 +75,7 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_LocalUserId); Helper.TryMarshalDispose(ref m_CatalogItemIds); Helper.TryMarshalDispose(ref m_CatalogNamespace); } diff --git a/EOSSDK/Generated/Ecom/QueryOwnershipTokenOptions.cs b/EOSSDK/Generated/Ecom/QueryOwnershipTokenOptions.cs index d454da47..7aa5afb6 100644 --- a/EOSSDK/Generated/Ecom/QueryOwnershipTokenOptions.cs +++ b/EOSSDK/Generated/Ecom/QueryOwnershipTokenOptions.cs @@ -75,6 +75,7 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_LocalUserId); Helper.TryMarshalDispose(ref m_CatalogItemIds); Helper.TryMarshalDispose(ref m_CatalogNamespace); } diff --git a/EOSSDK/Generated/Ecom/RedeemEntitlementsOptions.cs b/EOSSDK/Generated/Ecom/RedeemEntitlementsOptions.cs index e46c8a2d..fe90a8a5 100644 --- a/EOSSDK/Generated/Ecom/RedeemEntitlementsOptions.cs +++ b/EOSSDK/Generated/Ecom/RedeemEntitlementsOptions.cs @@ -60,6 +60,7 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_LocalUserId); Helper.TryMarshalDispose(ref m_EntitlementIds); } } diff --git a/EOSSDK/Generated/Ecom/Transaction.cs b/EOSSDK/Generated/Ecom/Transaction.cs index 4e5c8f78..f3e41a54 100644 --- a/EOSSDK/Generated/Ecom/Transaction.cs +++ b/EOSSDK/Generated/Ecom/Transaction.cs @@ -3,7 +3,7 @@ namespace Epic.OnlineServices.Ecom { - public sealed class Transaction : Handle + public sealed partial class Transaction : Handle { public Transaction() { @@ -37,18 +37,18 @@ public Transaction(System.IntPtr innerHandle) : base(innerHandle) /// public Result CopyEntitlementByIndex(TransactionCopyEntitlementByIndexOptions options, out Entitlement outEntitlement) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var outEntitlementAddress = System.IntPtr.Zero; - var funcResult = EOS_Ecom_Transaction_CopyEntitlementByIndex(InnerHandle, optionsAddress, ref outEntitlementAddress); + var funcResult = Bindings.EOS_Ecom_Transaction_CopyEntitlementByIndex(InnerHandle, optionsAddress, ref outEntitlementAddress); Helper.TryMarshalDispose(ref optionsAddress); if (Helper.TryMarshalGet(outEntitlementAddress, out outEntitlement)) { - EcomInterface.EOS_Ecom_Entitlement_Release(outEntitlementAddress); + Bindings.EOS_Ecom_Entitlement_Release(outEntitlementAddress); } return funcResult; @@ -64,10 +64,10 @@ public Result CopyEntitlementByIndex(TransactionCopyEntitlementByIndexOptions op /// public uint GetEntitlementsCount(TransactionGetEntitlementsCountOptions options) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); - var funcResult = EOS_Ecom_Transaction_GetEntitlementsCount(InnerHandle, optionsAddress); + var funcResult = Bindings.EOS_Ecom_Transaction_GetEntitlementsCount(InnerHandle, optionsAddress); Helper.TryMarshalDispose(ref optionsAddress); @@ -89,9 +89,9 @@ public Result GetTransactionId(out string outBuffer) { System.IntPtr outBufferAddress = System.IntPtr.Zero; int inOutBufferLength = EcomInterface.TransactionidMaximumLength + 1; - Helper.TryMarshalAllocate(ref outBufferAddress, inOutBufferLength); + Helper.TryMarshalAllocate(ref outBufferAddress, inOutBufferLength, out _); - var funcResult = EOS_Ecom_Transaction_GetTransactionId(InnerHandle, outBufferAddress, ref inOutBufferLength); + var funcResult = Bindings.EOS_Ecom_Transaction_GetTransactionId(InnerHandle, outBufferAddress, ref inOutBufferLength); Helper.TryMarshalGet(outBufferAddress, out outBuffer); Helper.TryMarshalDispose(ref outBufferAddress); @@ -109,19 +109,7 @@ public Result GetTransactionId(out string outBuffer) /// A handle to a transaction. public void Release() { - EOS_Ecom_Transaction_Release(InnerHandle); + Bindings.EOS_Ecom_Transaction_Release(InnerHandle); } - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_Ecom_Transaction_CopyEntitlementByIndex(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outEntitlement); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern uint EOS_Ecom_Transaction_GetEntitlementsCount(System.IntPtr handle, System.IntPtr options); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_Ecom_Transaction_GetTransactionId(System.IntPtr handle, System.IntPtr outBuffer, ref int inOutBufferLength); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern void EOS_Ecom_Transaction_Release(System.IntPtr transaction); } } \ No newline at end of file diff --git a/EOSSDK/Generated/EpicAccountId.cs b/EOSSDK/Generated/EpicAccountId.cs index e0fc5327..3ab1f36f 100644 --- a/EOSSDK/Generated/EpicAccountId.cs +++ b/EOSSDK/Generated/EpicAccountId.cs @@ -3,7 +3,7 @@ namespace Epic.OnlineServices { - public sealed class EpicAccountId : Handle + public sealed partial class EpicAccountId : Handle { public EpicAccountId() { @@ -20,18 +20,19 @@ public EpicAccountId(System.IntPtr innerHandle) : base(innerHandle) public const int EpicaccountidMaxLength = 32; /// - /// Retrieve an Epic Online Services Account ID from a raw account ID string. The input string must be null-terminated. + /// Retrieve an from a raw string representing an Epic Online Services Account ID. The input string must be null-terminated. + /// NOTE: There is no validation on the string format, this should only be used with values serialized from legitimate sources such as /// - /// The string-ified account ID for which to retrieve the Epic Online Services Account ID + /// The stringified account ID for which to retrieve the Epic Online Services Account ID /// - /// The Epic Online Services Account ID that corresponds to the AccountIdString + /// The that corresponds to the AccountIdString /// public static EpicAccountId FromString(string accountIdString) { - System.IntPtr accountIdStringAddress = System.IntPtr.Zero; + var accountIdStringAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref accountIdStringAddress, accountIdString); - var funcResult = EOS_EpicAccountId_FromString(accountIdStringAddress); + var funcResult = Bindings.EOS_EpicAccountId_FromString(accountIdStringAddress); Helper.TryMarshalDispose(ref accountIdStringAddress); @@ -42,6 +43,7 @@ public static EpicAccountId FromString(string accountIdString) /// /// Check whether or not the given Epic Online Services Account ID is considered valid + /// NOTE: This will return true for any created with as there is no validation /// /// The Epic Online Services Account ID to check for validity /// @@ -49,7 +51,7 @@ public static EpicAccountId FromString(string accountIdString) /// public bool IsValid() { - var funcResult = EOS_EpicAccountId_IsValid(InnerHandle); + var funcResult = Bindings.EOS_EpicAccountId_IsValid(InnerHandle); bool funcResultReturn; Helper.TryMarshalGet(funcResult, out funcResultReturn); @@ -57,10 +59,10 @@ public bool IsValid() } /// - /// Retrieve a null-terminated string-ified Epic Online Services Account ID from an . This is useful for replication of Epic Online Services Account IDs in multiplayer games. + /// Retrieve a null-terminated stringified Epic Online Services Account ID from an . This is useful for replication of Epic Online Services Account IDs in multiplayer games. /// This string will be no larger than + 1 and will only contain UTF8-encoded printable characters (excluding the null-terminator). /// - /// The Epic Online Services Account ID for which to retrieve the string-ified version. + /// The Epic Online Services Account ID for which to retrieve the stringified version. /// The buffer into which the character data should be written /// /// The size of the OutBuffer in characters. @@ -71,16 +73,16 @@ public bool IsValid() /// An that indicates whether the Epic Online Services Account ID string was copied into the OutBuffer. /// - The OutBuffer was filled, and InOutBufferLength contains the number of characters copied into OutBuffer including the null terminator. /// - Either OutBuffer or InOutBufferLength were passed as NULL parameters. - /// - The AccountId is invalid and cannot be string-ified + /// - The AccountId is invalid and cannot be stringified. /// - The OutBuffer is not large enough to receive the Epic Online Services Account ID string. InOutBufferLength contains the required minimum length to perform the operation successfully. /// public Result ToString(out string outBuffer) { System.IntPtr outBufferAddress = System.IntPtr.Zero; int inOutBufferLength = EpicaccountidMaxLength + 1; - Helper.TryMarshalAllocate(ref outBufferAddress, inOutBufferLength); + Helper.TryMarshalAllocate(ref outBufferAddress, inOutBufferLength, out _); - var funcResult = EOS_EpicAccountId_ToString(InnerHandle, outBufferAddress, ref inOutBufferLength); + var funcResult = Bindings.EOS_EpicAccountId_ToString(InnerHandle, outBufferAddress, ref inOutBufferLength); Helper.TryMarshalGet(outBufferAddress, out outBuffer); Helper.TryMarshalDispose(ref outBufferAddress); @@ -88,13 +90,11 @@ public Result ToString(out string outBuffer) return funcResult; } - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern System.IntPtr EOS_EpicAccountId_FromString(System.IntPtr accountIdString); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern int EOS_EpicAccountId_IsValid(System.IntPtr accountId); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_EpicAccountId_ToString(System.IntPtr accountId, System.IntPtr outBuffer, ref int inOutBufferLength); + public override string ToString() + { + string funcResult; + ToString(out funcResult); + return funcResult; + } } } \ No newline at end of file diff --git a/EOSSDK/Generated/ExternalAccountType.cs b/EOSSDK/Generated/ExternalAccountType.cs index a03f0345..9597575d 100644 --- a/EOSSDK/Generated/ExternalAccountType.cs +++ b/EOSSDK/Generated/ExternalAccountType.cs @@ -18,11 +18,14 @@ public enum ExternalAccountType : int /// Steam = 1, /// - /// External account is associated with Playstation + /// External account is associated with PlayStation(TM)Network /// Psn = 2, /// /// External account is associated with Xbox Live + /// + /// With EOS Connect API, the associated account type is Partner XUID (PXUID). + /// With EOS UserInfo API, the associated account type is Xbox Live ID (XUID). /// Xbl = 3, /// @@ -35,6 +38,9 @@ public enum ExternalAccountType : int Gog = 5, /// /// External account is associated with Nintendo + /// + /// With both EOS Connect and EOS UserInfo APIs, the associated account type is Nintendo Service Account ID. + /// Local user authentication is possible using Nintendo Account ID, while the account type does not get exposed to the SDK in queries related to linked accounts information. /// Nintendo = 6, /// @@ -48,6 +54,18 @@ public enum ExternalAccountType : int /// /// External account is associated with Apple /// - Apple = 9 + Apple = 9, + /// + /// External account is associated with Google + /// + Google = 10, + /// + /// External account is associated with Oculus + /// + Oculus = 11, + /// + /// External account is associated with itch.io + /// + Itchio = 12 } } \ No newline at end of file diff --git a/EOSSDK/Generated/Connect/ExternalCredentialType.cs b/EOSSDK/Generated/ExternalCredentialType.cs similarity index 58% rename from EOSSDK/Generated/Connect/ExternalCredentialType.cs rename to EOSSDK/Generated/ExternalCredentialType.cs index 613e1e96..96547116 100644 --- a/EOSSDK/Generated/Connect/ExternalCredentialType.cs +++ b/EOSSDK/Generated/ExternalCredentialType.cs @@ -1,7 +1,7 @@ // Copyright Epic Games, Inc. All Rights Reserved. // This file is automatically generated. Changes to this file may be overwritten. -namespace Epic.OnlineServices.Connect +namespace Epic.OnlineServices { /// /// List of the supported identity providers to authenticate a user. @@ -9,17 +9,18 @@ namespace Epic.OnlineServices.Connect /// The type of authentication token is specific to each provider. /// Tokens in string format should be passed as-is to the function. /// Tokens retrieved as raw byte arrays should be converted into a hex-encoded UTF-8 string (e.g. "FA87097A..") before being passed to the function. - /// For C/C++ API integration, use the API for the conversion. - /// For C# integration, you can use for the conversion. - /// - /// + /// can be used for this conversion. + /// + /// /// public enum ExternalCredentialType : int { /// /// Epic Games User Token /// - /// Acquired using that returns ::AccessToken + /// Acquired using that returns ::AccessToken. + /// + /// Supported with . /// Epic = 0, /// @@ -28,25 +29,34 @@ public enum ExternalCredentialType : int /// Generated using the ISteamUser::RequestEncryptedAppTicket API of Steamworks SDK. /// For ticket generation parameters, use pDataToInclude(NULL) and cbDataToInclude(0). /// - /// The retrieved App Ticket byte buffer needs to be converted into a hex-encoded UTF-8 string (e.g. "FA87097A..") before passing it to the or APIs. - /// For C/C++ API integration, use the API for the conversion. - /// For C# integration, you can use for the conversion. + /// The retrieved App Ticket byte buffer needs to be converted into a hex-encoded UTF-8 string (e.g. "FA87097A..") before passing it to the or APIs. + /// can be used for this conversion. + /// + /// Supported with , . /// SteamAppTicket = 1, /// - /// Playstation ID Token + /// PlayStation(TM)Network ID Token /// - /// Retrieved from the Playstation SDK. Please see first-party documentation for additional information. + /// Retrieved from the PlayStation(R) SDK. Please see first-party documentation for additional information. + /// + /// Supported with , . /// PsnIdToken = 2, /// - /// Xbox Live User's XSTS Token + /// Xbox Live XSTS Token + /// + /// Retrieved from the GDK and XDK. Please see first-party documentation for additional information. /// - /// Retrieved from the Xbox One XDK. Please see first-party documentation for additional information. + /// Supported with , . /// XblXstsToken = 3, /// /// Discord Access Token + /// + /// Retrieved using the ApplicationManager::GetOAuth2Token API of Discord SDK. + /// + /// Supported with . /// DiscordAccessToken = 4, /// @@ -55,9 +65,11 @@ public enum ExternalCredentialType : int /// Generated using the IUser::RequestEncryptedAppTicket API of GOG Galaxy SDK. /// For ticket generation parameters, use data(NULL) and dataSize(0). /// - /// The retrieved App Ticket byte buffer needs to be converted into a hex-encoded UTF-8 string (e.g. "FA87097A..") before passing it to the API. + /// The retrieved App Ticket byte buffer needs to be converted into a hex-encoded UTF-8 string (e.g. "FA87097A..") before passing it to the API. /// For C/C++ API integration, use the API for the conversion. /// For C# integration, you can use for the conversion. + /// + /// Supported with . /// GogSessionTicket = 5, /// @@ -65,6 +77,8 @@ public enum ExternalCredentialType : int /// /// Identifies a Nintendo user account and is acquired through web flow authentication where the local user logs in using their email address/sign-in ID and password. /// This is the common Nintendo account that users login with outside the Nintendo Switch device. + /// + /// Supported with , . /// NintendoIdToken = 6, /// @@ -84,6 +98,8 @@ public enum ExternalCredentialType : int /// will allow preserving the game progression permanently. Otherwise, the game progression will be tied only to the /// local device. In case the user loses access to their local device, they will not be able to recover the game /// progression if it is only associated with this account type. + /// + /// Supported with , . /// NintendoNsaIdToken = 7, /// @@ -92,6 +108,8 @@ public enum ExternalCredentialType : int UplayAccessToken = 8, /// /// OpenID Provider Access Token + /// + /// Supported with . /// OpenidAccessToken = 9, /// @@ -105,12 +123,52 @@ public enum ExternalCredentialType : int /// and to allow playing the game without requiring the user to necessarily login using a real user account at all. /// This makes a seamless first-time experience possible and allows linking the local device with a real external /// user account at a later time, sharing the same that is being used with the Device ID feature. - /// + /// + /// Supported with . + /// /// DeviceidAccessToken = 10, /// - /// Apple Identity Token + /// Apple ID Token + /// + /// Supported with . + /// + AppleIdToken = 11, + /// + /// Google ID Token + /// + /// Supported with . + /// + GoogleIdToken = 12, + /// + /// Oculus User ID and Nonce + /// + /// Call ovr_User_GetUserProof(), or Platform.User.GetUserProof() if you are using Unity, to retrieve the nonce. + /// Then pass the local User ID and the Nonce as a "|" formatted string for the Token parameter. + /// + /// Note that in order to successfully retrieve a valid non-zero id for the local user using ovr_User_GetUser(), + /// your Oculus App needs to be configured in the Oculus Developer Dashboard to have the User ID feature enabled. + /// + /// Supported with . + /// + OculusUseridNonce = 13, + /// + /// itch.io JWT Access Token + /// + /// Use the itch.io app manifest to receive a JWT access token for the local user via the ITCHIO_API_KEY process environment variable. + /// The itch.io access token is valid for 7 days after which the game needs to be restarted by the user as otherwise EOS Connect + /// authentication session can no longer be refreshed. + /// + /// Supported with . + /// + ItchioJwt = 14, + /// + /// itch.io Key Access Token + /// + /// This access token type is retrieved through the OAuth 2.0 authentication flow for the itch.io application. + /// + /// Supported with . /// - AppleIdToken = 11 + ItchioKey = 15 } } \ No newline at end of file diff --git a/EOSSDK/Generated/Connect/ExternalCredentialType.cs.meta b/EOSSDK/Generated/ExternalCredentialType.cs.meta similarity index 83% rename from EOSSDK/Generated/Connect/ExternalCredentialType.cs.meta rename to EOSSDK/Generated/ExternalCredentialType.cs.meta index a9724938..f1cc2e5e 100644 --- a/EOSSDK/Generated/Connect/ExternalCredentialType.cs.meta +++ b/EOSSDK/Generated/ExternalCredentialType.cs.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: 6c5fd102b01421c4f9125a7395abce17 +guid: 2404c6fa1750b204db8aca404f08db5b MonoImporter: externalObjects: {} serializedVersion: 2 diff --git a/EOSSDK/Generated/Friends/AcceptInviteCallbackInfo.cs b/EOSSDK/Generated/Friends/AcceptInviteCallbackInfo.cs index 72ef41ac..f9bbcc49 100644 --- a/EOSSDK/Generated/Friends/AcceptInviteCallbackInfo.cs +++ b/EOSSDK/Generated/Friends/AcceptInviteCallbackInfo.cs @@ -14,7 +14,7 @@ public class AcceptInviteCallbackInfo : ICallbackInfo, ISettable public Result ResultCode { get; private set; } /// - /// Context that was passed into to + /// Context that is passed into /// public object ClientData { get; private set; } diff --git a/EOSSDK/Generated/Friends/AcceptInviteOptions.cs b/EOSSDK/Generated/Friends/AcceptInviteOptions.cs index ad127a73..ddde6b45 100644 --- a/EOSSDK/Generated/Friends/AcceptInviteOptions.cs +++ b/EOSSDK/Generated/Friends/AcceptInviteOptions.cs @@ -59,6 +59,8 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_LocalUserId); + Helper.TryMarshalDispose(ref m_TargetUserId); } } } \ No newline at end of file diff --git a/EOSSDK/Generated/Friends/FriendsInterface.cs b/EOSSDK/Generated/Friends/FriendsInterface.cs index 0037a186..5cada696 100644 --- a/EOSSDK/Generated/Friends/FriendsInterface.cs +++ b/EOSSDK/Generated/Friends/FriendsInterface.cs @@ -3,7 +3,7 @@ namespace Epic.OnlineServices.Friends { - public sealed class FriendsInterface : Handle + public sealed partial class FriendsInterface : Handle { public FriendsInterface() { @@ -61,7 +61,7 @@ public FriendsInterface(System.IntPtr innerHandle) : base(innerHandle) /// a callback that is fired when the async operation completes, either successfully or in error public void AcceptInvite(AcceptInviteOptions options, object clientData, OnAcceptInviteCallback completionDelegate) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var clientDataAddress = System.IntPtr.Zero; @@ -69,7 +69,7 @@ public void AcceptInvite(AcceptInviteOptions options, object clientData, OnAccep var completionDelegateInternal = new OnAcceptInviteCallbackInternal(OnAcceptInviteCallbackInternalImplementation); Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - EOS_Friends_AcceptInvite(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); + Bindings.EOS_Friends_AcceptInvite(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); Helper.TryMarshalDispose(ref optionsAddress); } @@ -85,7 +85,7 @@ public void AcceptInvite(AcceptInviteOptions options, object clientData, OnAccep /// public ulong AddNotifyFriendsUpdate(AddNotifyFriendsUpdateOptions options, object clientData, OnFriendsUpdateCallback friendsUpdateHandler) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var clientDataAddress = System.IntPtr.Zero; @@ -93,7 +93,7 @@ public ulong AddNotifyFriendsUpdate(AddNotifyFriendsUpdateOptions options, objec var friendsUpdateHandlerInternal = new OnFriendsUpdateCallbackInternal(OnFriendsUpdateCallbackInternalImplementation); Helper.AddCallback(ref clientDataAddress, clientData, friendsUpdateHandler, friendsUpdateHandlerInternal); - var funcResult = EOS_Friends_AddNotifyFriendsUpdate(InnerHandle, optionsAddress, clientDataAddress, friendsUpdateHandlerInternal); + var funcResult = Bindings.EOS_Friends_AddNotifyFriendsUpdate(InnerHandle, optionsAddress, clientDataAddress, friendsUpdateHandlerInternal); Helper.TryMarshalDispose(ref optionsAddress); @@ -115,10 +115,10 @@ public ulong AddNotifyFriendsUpdate(AddNotifyFriendsUpdateOptions options, objec /// public EpicAccountId GetFriendAtIndex(GetFriendAtIndexOptions options) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); - var funcResult = EOS_Friends_GetFriendAtIndex(InnerHandle, optionsAddress); + var funcResult = Bindings.EOS_Friends_GetFriendAtIndex(InnerHandle, optionsAddress); Helper.TryMarshalDispose(ref optionsAddress); @@ -137,10 +137,10 @@ public EpicAccountId GetFriendAtIndex(GetFriendAtIndexOptions options) /// public int GetFriendsCount(GetFriendsCountOptions options) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); - var funcResult = EOS_Friends_GetFriendsCount(InnerHandle, optionsAddress); + var funcResult = Bindings.EOS_Friends_GetFriendsCount(InnerHandle, optionsAddress); Helper.TryMarshalDispose(ref optionsAddress); @@ -161,10 +161,10 @@ public int GetFriendsCount(GetFriendsCountOptions options) /// public FriendsStatus GetStatus(GetStatusOptions options) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); - var funcResult = EOS_Friends_GetStatus(InnerHandle, optionsAddress); + var funcResult = Bindings.EOS_Friends_GetStatus(InnerHandle, optionsAddress); Helper.TryMarshalDispose(ref optionsAddress); @@ -181,7 +181,7 @@ public FriendsStatus GetStatus(GetStatusOptions options) /// a callback that is fired when the async operation completes, either successfully or in error public void QueryFriends(QueryFriendsOptions options, object clientData, OnQueryFriendsCallback completionDelegate) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var clientDataAddress = System.IntPtr.Zero; @@ -189,7 +189,7 @@ public void QueryFriends(QueryFriendsOptions options, object clientData, OnQuery var completionDelegateInternal = new OnQueryFriendsCallbackInternal(OnQueryFriendsCallbackInternalImplementation); Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - EOS_Friends_QueryFriends(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); + Bindings.EOS_Friends_QueryFriends(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); Helper.TryMarshalDispose(ref optionsAddress); } @@ -202,7 +202,7 @@ public void QueryFriends(QueryFriendsOptions options, object clientData, OnQuery /// a callback that is fired when the async operation completes, either successfully or in error public void RejectInvite(RejectInviteOptions options, object clientData, OnRejectInviteCallback completionDelegate) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var clientDataAddress = System.IntPtr.Zero; @@ -210,7 +210,7 @@ public void RejectInvite(RejectInviteOptions options, object clientData, OnRejec var completionDelegateInternal = new OnRejectInviteCallbackInternal(OnRejectInviteCallbackInternalImplementation); Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - EOS_Friends_RejectInvite(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); + Bindings.EOS_Friends_RejectInvite(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); Helper.TryMarshalDispose(ref optionsAddress); } @@ -223,7 +223,7 @@ public void RemoveNotifyFriendsUpdate(ulong notificationId) { Helper.TryRemoveCallbackByNotificationId(notificationId); - EOS_Friends_RemoveNotifyFriendsUpdate(InnerHandle, notificationId); + Bindings.EOS_Friends_RemoveNotifyFriendsUpdate(InnerHandle, notificationId); } /// @@ -235,7 +235,7 @@ public void RemoveNotifyFriendsUpdate(ulong notificationId) /// a callback that is fired when the async operation completes, either successfully or in error public void SendInvite(SendInviteOptions options, object clientData, OnSendInviteCallback completionDelegate) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var clientDataAddress = System.IntPtr.Zero; @@ -243,7 +243,7 @@ public void SendInvite(SendInviteOptions options, object clientData, OnSendInvit var completionDelegateInternal = new OnSendInviteCallbackInternal(OnSendInviteCallbackInternalImplementation); Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - EOS_Friends_SendInvite(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); + Bindings.EOS_Friends_SendInvite(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); Helper.TryMarshalDispose(ref optionsAddress); } @@ -302,32 +302,5 @@ internal static void OnSendInviteCallbackInternalImplementation(System.IntPtr da callback(callbackInfo); } } - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern void EOS_Friends_AcceptInvite(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, OnAcceptInviteCallbackInternal completionDelegate); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern ulong EOS_Friends_AddNotifyFriendsUpdate(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, OnFriendsUpdateCallbackInternal friendsUpdateHandler); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern System.IntPtr EOS_Friends_GetFriendAtIndex(System.IntPtr handle, System.IntPtr options); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern int EOS_Friends_GetFriendsCount(System.IntPtr handle, System.IntPtr options); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern FriendsStatus EOS_Friends_GetStatus(System.IntPtr handle, System.IntPtr options); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern void EOS_Friends_QueryFriends(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, OnQueryFriendsCallbackInternal completionDelegate); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern void EOS_Friends_RejectInvite(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, OnRejectInviteCallbackInternal completionDelegate); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern void EOS_Friends_RemoveNotifyFriendsUpdate(System.IntPtr handle, ulong notificationId); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern void EOS_Friends_SendInvite(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, OnSendInviteCallbackInternal completionDelegate); } } \ No newline at end of file diff --git a/EOSSDK/Generated/Friends/GetFriendAtIndexOptions.cs b/EOSSDK/Generated/Friends/GetFriendAtIndexOptions.cs index 003037c5..3087e80d 100644 --- a/EOSSDK/Generated/Friends/GetFriendAtIndexOptions.cs +++ b/EOSSDK/Generated/Friends/GetFriendAtIndexOptions.cs @@ -59,6 +59,7 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_LocalUserId); } } } \ No newline at end of file diff --git a/EOSSDK/Generated/Friends/GetFriendsCountOptions.cs b/EOSSDK/Generated/Friends/GetFriendsCountOptions.cs index 83ccbce6..f67045f4 100644 --- a/EOSSDK/Generated/Friends/GetFriendsCountOptions.cs +++ b/EOSSDK/Generated/Friends/GetFriendsCountOptions.cs @@ -44,6 +44,7 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_LocalUserId); } } } \ No newline at end of file diff --git a/EOSSDK/Generated/Friends/GetStatusOptions.cs b/EOSSDK/Generated/Friends/GetStatusOptions.cs index 73f045db..293e1eb1 100644 --- a/EOSSDK/Generated/Friends/GetStatusOptions.cs +++ b/EOSSDK/Generated/Friends/GetStatusOptions.cs @@ -59,6 +59,8 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_LocalUserId); + Helper.TryMarshalDispose(ref m_TargetUserId); } } } \ No newline at end of file diff --git a/EOSSDK/Generated/Friends/OnAcceptInviteCallback.cs b/EOSSDK/Generated/Friends/OnAcceptInviteCallback.cs index 01b0bca0..49da2bfa 100644 --- a/EOSSDK/Generated/Friends/OnAcceptInviteCallback.cs +++ b/EOSSDK/Generated/Friends/OnAcceptInviteCallback.cs @@ -9,5 +9,6 @@ namespace Epic.OnlineServices.Friends /// A containing the output information and result. public delegate void OnAcceptInviteCallback(AcceptInviteCallbackInfo data); + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] internal delegate void OnAcceptInviteCallbackInternal(System.IntPtr data); } \ No newline at end of file diff --git a/EOSSDK/Generated/Friends/OnFriendsUpdateCallback.cs b/EOSSDK/Generated/Friends/OnFriendsUpdateCallback.cs index 539c3949..3ccc5e16 100644 --- a/EOSSDK/Generated/Friends/OnFriendsUpdateCallback.cs +++ b/EOSSDK/Generated/Friends/OnFriendsUpdateCallback.cs @@ -8,5 +8,6 @@ namespace Epic.OnlineServices.Friends /// public delegate void OnFriendsUpdateCallback(OnFriendsUpdateInfo data); + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] internal delegate void OnFriendsUpdateCallbackInternal(System.IntPtr data); } \ No newline at end of file diff --git a/EOSSDK/Generated/Friends/OnQueryFriendsCallback.cs b/EOSSDK/Generated/Friends/OnQueryFriendsCallback.cs index 72aef815..c78cc7b3 100644 --- a/EOSSDK/Generated/Friends/OnQueryFriendsCallback.cs +++ b/EOSSDK/Generated/Friends/OnQueryFriendsCallback.cs @@ -9,5 +9,6 @@ namespace Epic.OnlineServices.Friends /// A containing the output information and result public delegate void OnQueryFriendsCallback(QueryFriendsCallbackInfo data); + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] internal delegate void OnQueryFriendsCallbackInternal(System.IntPtr data); } \ No newline at end of file diff --git a/EOSSDK/Generated/Friends/OnRejectInviteCallback.cs b/EOSSDK/Generated/Friends/OnRejectInviteCallback.cs index 0c0f6e20..69921832 100644 --- a/EOSSDK/Generated/Friends/OnRejectInviteCallback.cs +++ b/EOSSDK/Generated/Friends/OnRejectInviteCallback.cs @@ -9,5 +9,6 @@ namespace Epic.OnlineServices.Friends /// A containing output information and the result. public delegate void OnRejectInviteCallback(RejectInviteCallbackInfo data); + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] internal delegate void OnRejectInviteCallbackInternal(System.IntPtr data); } \ No newline at end of file diff --git a/EOSSDK/Generated/Friends/OnSendInviteCallback.cs b/EOSSDK/Generated/Friends/OnSendInviteCallback.cs index 8f2aced2..919eb356 100644 --- a/EOSSDK/Generated/Friends/OnSendInviteCallback.cs +++ b/EOSSDK/Generated/Friends/OnSendInviteCallback.cs @@ -9,5 +9,6 @@ namespace Epic.OnlineServices.Friends /// A containing the output information and result. public delegate void OnSendInviteCallback(SendInviteCallbackInfo data); + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] internal delegate void OnSendInviteCallbackInternal(System.IntPtr data); } \ No newline at end of file diff --git a/EOSSDK/Generated/Friends/QueryFriendsOptions.cs b/EOSSDK/Generated/Friends/QueryFriendsOptions.cs index e0a9337b..857b0702 100644 --- a/EOSSDK/Generated/Friends/QueryFriendsOptions.cs +++ b/EOSSDK/Generated/Friends/QueryFriendsOptions.cs @@ -44,6 +44,7 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_LocalUserId); } } } \ No newline at end of file diff --git a/EOSSDK/Generated/Friends/RejectInviteCallbackInfo.cs b/EOSSDK/Generated/Friends/RejectInviteCallbackInfo.cs index 1c523b88..1355c459 100644 --- a/EOSSDK/Generated/Friends/RejectInviteCallbackInfo.cs +++ b/EOSSDK/Generated/Friends/RejectInviteCallbackInfo.cs @@ -14,7 +14,7 @@ public class RejectInviteCallbackInfo : ICallbackInfo, ISettable public Result ResultCode { get; private set; } /// - /// Context that was passed into to + /// Context that is passed into /// public object ClientData { get; private set; } diff --git a/EOSSDK/Generated/Friends/RejectInviteOptions.cs b/EOSSDK/Generated/Friends/RejectInviteOptions.cs index f893e791..9ce62f9f 100644 --- a/EOSSDK/Generated/Friends/RejectInviteOptions.cs +++ b/EOSSDK/Generated/Friends/RejectInviteOptions.cs @@ -59,6 +59,8 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_LocalUserId); + Helper.TryMarshalDispose(ref m_TargetUserId); } } } \ No newline at end of file diff --git a/EOSSDK/Generated/Friends/SendInviteOptions.cs b/EOSSDK/Generated/Friends/SendInviteOptions.cs index 21cc5918..ab7cdebc 100644 --- a/EOSSDK/Generated/Friends/SendInviteOptions.cs +++ b/EOSSDK/Generated/Friends/SendInviteOptions.cs @@ -59,6 +59,8 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_LocalUserId); + Helper.TryMarshalDispose(ref m_TargetUserId); } } } \ No newline at end of file diff --git a/EOSSDK/Generated/IOS.meta b/EOSSDK/Generated/IOS.meta new file mode 100644 index 00000000..711042cd --- /dev/null +++ b/EOSSDK/Generated/IOS.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: c4e2c8142a8bbd54f849b66b64e2f41d +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/IOS/Auth.meta b/EOSSDK/Generated/IOS/Auth.meta new file mode 100644 index 00000000..4b1fbee7 --- /dev/null +++ b/EOSSDK/Generated/IOS/Auth.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: f34a811300e2b8748afd1f40a21c96b0 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/IOS/Auth/AuthInterface.cs b/EOSSDK/Generated/IOS/Auth/AuthInterface.cs new file mode 100644 index 00000000..88465201 --- /dev/null +++ b/EOSSDK/Generated/IOS/Auth/AuthInterface.cs @@ -0,0 +1,28 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.Auth +{ + public sealed partial class AuthInterface : Handle + { + /// + /// The most recent version of the structure. + /// + public const int AuthIoscredentialssystemauthcredentialsoptionsApiLatest = 1; + + public void Login(IOSLoginOptions options, object clientData, OnLoginCallback completionDelegate) + { + var optionsAddress = System.IntPtr.Zero; + Helper.TryMarshalSet(ref optionsAddress, options); + + var clientDataAddress = System.IntPtr.Zero; + + var completionDelegateInternal = new OnLoginCallbackInternal(OnLoginCallbackInternalImplementation); + Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); + + Bindings.EOS_Auth_Login(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); + + Helper.TryMarshalDispose(ref optionsAddress); + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/IOS/Auth/AuthInterface.cs.meta b/EOSSDK/Generated/IOS/Auth/AuthInterface.cs.meta new file mode 100644 index 00000000..fb41d54d --- /dev/null +++ b/EOSSDK/Generated/IOS/Auth/AuthInterface.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 49084b77c143d1e458f237231c2f8aff +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/IOS/Auth/IOSCredentials.cs b/EOSSDK/Generated/IOS/Auth/IOSCredentials.cs new file mode 100644 index 00000000..bc7e4179 --- /dev/null +++ b/EOSSDK/Generated/IOS/Auth/IOSCredentials.cs @@ -0,0 +1,179 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.Auth +{ + /// + /// A structure that contains login credentials. What is required is dependent on the type of login being initiated. + /// + /// This is part of the input structure and related to device auth. + /// + /// Use of the ID and Token fields differs based on the Type. They should be null, unless specified: + /// - ID is the email address, and Token is the password. + /// - Token is the exchange code. + /// - If targeting console platforms, Token is the long lived refresh token. Otherwise N/A. + /// - N/A. + /// - ID is the host (e.g. localhost:6547), and Token is the credential name registered in the EOS Developer Authentication Tool. + /// - Token is the refresh token. + /// - SystemAuthCredentialsOptions may be required if targeting mobile platforms. Otherwise N/A. + /// - Token is the external auth token specified by ExternalType. + /// + /// + /// + /// + public class IOSCredentials : ISettable + { + /// + /// ID of the user logging in, based on + /// + public string Id { get; set; } + + /// + /// Credentials or token related to the user logging in + /// + public string Token { get; set; } + + /// + /// Type of login. Needed to identify the auth method to use + /// + public LoginCredentialType Type { get; set; } + + /// + /// This field is for system specific options, if any. + /// + /// If provided, the structure will be located in (System)/eos_(system).h. + /// The structure will be named EOS_(System)_Auth_CredentialsOptions. + /// + public IOSCredentialsSystemAuthCredentialsOptions SystemAuthCredentialsOptions { get; set; } + + /// + /// Type of external login. Needed to identify the external auth method to use. + /// Used when login type is set to , ignored for other methods. + /// + public ExternalCredentialType ExternalType { get; set; } + + internal void Set(IOSCredentialsInternal? other) + { + if (other != null) + { + Id = other.Value.Id; + Token = other.Value.Token; + Type = other.Value.Type; + SystemAuthCredentialsOptions = other.Value.SystemAuthCredentialsOptions; + ExternalType = other.Value.ExternalType; + } + } + + public void Set(object other) + { + Set(other as IOSCredentialsInternal?); + } + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct IOSCredentialsInternal : ISettable, System.IDisposable + { + private int m_ApiVersion; + private System.IntPtr m_Id; + private System.IntPtr m_Token; + private LoginCredentialType m_Type; + private System.IntPtr m_SystemAuthCredentialsOptions; + private ExternalCredentialType m_ExternalType; + + public string Id + { + get + { + string value; + Helper.TryMarshalGet(m_Id, out value); + return value; + } + + set + { + Helper.TryMarshalSet(ref m_Id, value); + } + } + + public string Token + { + get + { + string value; + Helper.TryMarshalGet(m_Token, out value); + return value; + } + + set + { + Helper.TryMarshalSet(ref m_Token, value); + } + } + + public LoginCredentialType Type + { + get + { + return m_Type; + } + + set + { + m_Type = value; + } + } + + public IOSCredentialsSystemAuthCredentialsOptions SystemAuthCredentialsOptions + { + get + { + IOSCredentialsSystemAuthCredentialsOptions value; + Helper.TryMarshalGet(m_SystemAuthCredentialsOptions, out value); + return value; + } + + set + { + Helper.TryMarshalSet(ref m_SystemAuthCredentialsOptions, value); + } + } + + public ExternalCredentialType ExternalType + { + get + { + return m_ExternalType; + } + + set + { + m_ExternalType = value; + } + } + + public void Set(IOSCredentials other) + { + if (other != null) + { + m_ApiVersion = AuthInterface.CredentialsApiLatest; + Id = other.Id; + Token = other.Token; + Type = other.Type; + SystemAuthCredentialsOptions = other.SystemAuthCredentialsOptions; + ExternalType = other.ExternalType; + } + } + + public void Set(object other) + { + Set(other as IOSCredentials); + } + + public void Dispose() + { + Helper.TryMarshalDispose(ref m_Id); + Helper.TryMarshalDispose(ref m_Token); + Helper.TryMarshalDispose(ref m_SystemAuthCredentialsOptions); + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/IOS/Auth/IOSCredentials.cs.meta b/EOSSDK/Generated/IOS/Auth/IOSCredentials.cs.meta new file mode 100644 index 00000000..48effd48 --- /dev/null +++ b/EOSSDK/Generated/IOS/Auth/IOSCredentials.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: dad144cd8e084c14cada22c9476bf6e3 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/IOS/Auth/IOSCredentialsSystemAuthCredentialsOptions.cs b/EOSSDK/Generated/IOS/Auth/IOSCredentialsSystemAuthCredentialsOptions.cs new file mode 100644 index 00000000..6adec2ef --- /dev/null +++ b/EOSSDK/Generated/IOS/Auth/IOSCredentialsSystemAuthCredentialsOptions.cs @@ -0,0 +1,73 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.Auth +{ + /// + /// Options for initializing login for IOS. + /// + public class IOSCredentialsSystemAuthCredentialsOptions : ISettable + { + /// + /// When calling + /// NSObject that implements the ASWebAuthenticationPresentationContextProviding protocol, + /// typically this is added to the applications UIViewController. + /// Required for iOS 13+ only, for earlier versions this value must be a nullptr. + /// using: (void*)CFBridgingRetain(presentationContextProviding) + /// EOSSDK will release this bridged object when the value is consumed for iOS 13+. + /// + public System.IntPtr PresentationContextProviding { get; set; } + + internal void Set(IOSCredentialsSystemAuthCredentialsOptionsInternal? other) + { + if (other != null) + { + PresentationContextProviding = other.Value.PresentationContextProviding; + } + } + + public void Set(object other) + { + Set(other as IOSCredentialsSystemAuthCredentialsOptionsInternal?); + } + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct IOSCredentialsSystemAuthCredentialsOptionsInternal : ISettable, System.IDisposable + { + private int m_ApiVersion; + private System.IntPtr m_PresentationContextProviding; + + public System.IntPtr PresentationContextProviding + { + get + { + return m_PresentationContextProviding; + } + + set + { + m_PresentationContextProviding = value; + } + } + + public void Set(IOSCredentialsSystemAuthCredentialsOptions other) + { + if (other != null) + { + m_ApiVersion = AuthInterface.AuthIoscredentialssystemauthcredentialsoptionsApiLatest; + PresentationContextProviding = other.PresentationContextProviding; + } + } + + public void Set(object other) + { + Set(other as IOSCredentialsSystemAuthCredentialsOptions); + } + + public void Dispose() + { + Helper.TryMarshalDispose(ref m_PresentationContextProviding); + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/IOS/Auth/IOSCredentialsSystemAuthCredentialsOptions.cs.meta b/EOSSDK/Generated/IOS/Auth/IOSCredentialsSystemAuthCredentialsOptions.cs.meta new file mode 100644 index 00000000..c7889c2e --- /dev/null +++ b/EOSSDK/Generated/IOS/Auth/IOSCredentialsSystemAuthCredentialsOptions.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: c13756854fbcf4f468ffb3983a48a4a1 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/IOS/Auth/IOSLoginOptions.cs b/EOSSDK/Generated/IOS/Auth/IOSLoginOptions.cs new file mode 100644 index 00000000..c1f32ca9 --- /dev/null +++ b/EOSSDK/Generated/IOS/Auth/IOSLoginOptions.cs @@ -0,0 +1,65 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.Auth +{ + /// + /// Input parameters for the function. + /// + public class IOSLoginOptions + { + /// + /// Credentials specified for a given login method + /// + public IOSCredentials Credentials { get; set; } + + /// + /// Auth scope flags are permissions to request from the user while they are logging in. This is a bitwise-or union of flags defined above + /// + public AuthScopeFlags ScopeFlags { get; set; } + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct IOSLoginOptionsInternal : ISettable, System.IDisposable + { + private int m_ApiVersion; + private System.IntPtr m_Credentials; + private AuthScopeFlags m_ScopeFlags; + + public IOSCredentials Credentials + { + set + { + Helper.TryMarshalSet(ref m_Credentials, value); + } + } + + public AuthScopeFlags ScopeFlags + { + set + { + m_ScopeFlags = value; + } + } + + public void Set(IOSLoginOptions other) + { + if (other != null) + { + m_ApiVersion = AuthInterface.LoginApiLatest; + Credentials = other.Credentials; + ScopeFlags = other.ScopeFlags; + } + } + + public void Set(object other) + { + Set(other as IOSLoginOptions); + } + + public void Dispose() + { + Helper.TryMarshalDispose(ref m_Credentials); + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/IOS/Auth/IOSLoginOptions.cs.meta b/EOSSDK/Generated/IOS/Auth/IOSLoginOptions.cs.meta new file mode 100644 index 00000000..99d2dc38 --- /dev/null +++ b/EOSSDK/Generated/IOS/Auth/IOSLoginOptions.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 977aab44af152fd43a26e65a81194e50 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/KWS.meta b/EOSSDK/Generated/KWS.meta new file mode 100644 index 00000000..4fecb8f8 --- /dev/null +++ b/EOSSDK/Generated/KWS.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: c2bdfde16650411409809e0eb396291c +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/KWS/AddNotifyPermissionsUpdateReceivedOptions.cs b/EOSSDK/Generated/KWS/AddNotifyPermissionsUpdateReceivedOptions.cs new file mode 100644 index 00000000..796d07b7 --- /dev/null +++ b/EOSSDK/Generated/KWS/AddNotifyPermissionsUpdateReceivedOptions.cs @@ -0,0 +1,32 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.KWS +{ + public class AddNotifyPermissionsUpdateReceivedOptions + { + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct AddNotifyPermissionsUpdateReceivedOptionsInternal : ISettable, System.IDisposable + { + private int m_ApiVersion; + + public void Set(AddNotifyPermissionsUpdateReceivedOptions other) + { + if (other != null) + { + m_ApiVersion = KWSInterface.AddnotifypermissionsupdatereceivedApiLatest; + } + } + + public void Set(object other) + { + Set(other as AddNotifyPermissionsUpdateReceivedOptions); + } + + public void Dispose() + { + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/KWS/AddNotifyPermissionsUpdateReceivedOptions.cs.meta b/EOSSDK/Generated/KWS/AddNotifyPermissionsUpdateReceivedOptions.cs.meta new file mode 100644 index 00000000..18f9271b --- /dev/null +++ b/EOSSDK/Generated/KWS/AddNotifyPermissionsUpdateReceivedOptions.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 6d9d5d28037eb8a4380ffa4106461a52 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/KWS/CopyPermissionByIndexOptions.cs b/EOSSDK/Generated/KWS/CopyPermissionByIndexOptions.cs new file mode 100644 index 00000000..9d214eb0 --- /dev/null +++ b/EOSSDK/Generated/KWS/CopyPermissionByIndexOptions.cs @@ -0,0 +1,65 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.KWS +{ + /// + /// Input parameters for the function. + /// + public class CopyPermissionByIndexOptions + { + /// + /// The Product User ID of the local user whose permissions are being accessed + /// + public ProductUserId LocalUserId { get; set; } + + /// + /// The index of the permission to get. + /// + public uint Index { get; set; } + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct CopyPermissionByIndexOptionsInternal : ISettable, System.IDisposable + { + private int m_ApiVersion; + private System.IntPtr m_LocalUserId; + private uint m_Index; + + public ProductUserId LocalUserId + { + set + { + Helper.TryMarshalSet(ref m_LocalUserId, value); + } + } + + public uint Index + { + set + { + m_Index = value; + } + } + + public void Set(CopyPermissionByIndexOptions other) + { + if (other != null) + { + m_ApiVersion = KWSInterface.CopypermissionbyindexApiLatest; + LocalUserId = other.LocalUserId; + Index = other.Index; + } + } + + public void Set(object other) + { + Set(other as CopyPermissionByIndexOptions); + } + + public void Dispose() + { + Helper.TryMarshalDispose(ref m_LocalUserId); + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/KWS/CopyPermissionByIndexOptions.cs.meta b/EOSSDK/Generated/KWS/CopyPermissionByIndexOptions.cs.meta new file mode 100644 index 00000000..05556509 --- /dev/null +++ b/EOSSDK/Generated/KWS/CopyPermissionByIndexOptions.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: b6a4c62ad85e56947ab88767ba78dd31 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/KWS/CreateUserCallbackInfo.cs b/EOSSDK/Generated/KWS/CreateUserCallbackInfo.cs new file mode 100644 index 00000000..813ec4fe --- /dev/null +++ b/EOSSDK/Generated/KWS/CreateUserCallbackInfo.cs @@ -0,0 +1,124 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.KWS +{ + /// + /// Output parameters for the Function. These parameters are received through the callback provided to + /// + public class CreateUserCallbackInfo : ICallbackInfo, ISettable + { + /// + /// The code for the operation. indicates that the operation succeeded; other codes indicate errors. + /// + public Result ResultCode { get; private set; } + + /// + /// Context that was passed into + /// + public object ClientData { get; private set; } + + /// + /// Local user that created a KWS entry + /// + public ProductUserId LocalUserId { get; private set; } + + /// + /// KWS UserId created + /// + public string KWSUserId { get; private set; } + + /// + /// Is this user a minor + /// + public bool IsMinor { get; private set; } + + public Result? GetResultCode() + { + return ResultCode; + } + + internal void Set(CreateUserCallbackInfoInternal? other) + { + if (other != null) + { + ResultCode = other.Value.ResultCode; + ClientData = other.Value.ClientData; + LocalUserId = other.Value.LocalUserId; + KWSUserId = other.Value.KWSUserId; + IsMinor = other.Value.IsMinor; + } + } + + public void Set(object other) + { + Set(other as CreateUserCallbackInfoInternal?); + } + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct CreateUserCallbackInfoInternal : ICallbackInfoInternal + { + private Result m_ResultCode; + private System.IntPtr m_ClientData; + private System.IntPtr m_LocalUserId; + private System.IntPtr m_KWSUserId; + private int m_IsMinor; + + public Result ResultCode + { + get + { + return m_ResultCode; + } + } + + public object ClientData + { + get + { + object value; + Helper.TryMarshalGet(m_ClientData, out value); + return value; + } + } + + public System.IntPtr ClientDataAddress + { + get + { + return m_ClientData; + } + } + + public ProductUserId LocalUserId + { + get + { + ProductUserId value; + Helper.TryMarshalGet(m_LocalUserId, out value); + return value; + } + } + + public string KWSUserId + { + get + { + string value; + Helper.TryMarshalGet(m_KWSUserId, out value); + return value; + } + } + + public bool IsMinor + { + get + { + bool value; + Helper.TryMarshalGet(m_IsMinor, out value); + return value; + } + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/KWS/CreateUserCallbackInfo.cs.meta b/EOSSDK/Generated/KWS/CreateUserCallbackInfo.cs.meta new file mode 100644 index 00000000..2c12cd42 --- /dev/null +++ b/EOSSDK/Generated/KWS/CreateUserCallbackInfo.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: df4f102a65f6e3849960685977544452 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/KWS/CreateUserOptions.cs b/EOSSDK/Generated/KWS/CreateUserOptions.cs new file mode 100644 index 00000000..43da8589 --- /dev/null +++ b/EOSSDK/Generated/KWS/CreateUserOptions.cs @@ -0,0 +1,82 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.KWS +{ + /// + /// Input parameters for the function. + /// + public class CreateUserOptions + { + /// + /// Local user creating a KWS entry + /// + public ProductUserId LocalUserId { get; set; } + + /// + /// Date of birth in ISO8601 form (YYYY-MM-DD) + /// + public string DateOfBirth { get; set; } + + /// + /// Parent email + /// + public string ParentEmail { get; set; } + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct CreateUserOptionsInternal : ISettable, System.IDisposable + { + private int m_ApiVersion; + private System.IntPtr m_LocalUserId; + private System.IntPtr m_DateOfBirth; + private System.IntPtr m_ParentEmail; + + public ProductUserId LocalUserId + { + set + { + Helper.TryMarshalSet(ref m_LocalUserId, value); + } + } + + public string DateOfBirth + { + set + { + Helper.TryMarshalSet(ref m_DateOfBirth, value); + } + } + + public string ParentEmail + { + set + { + Helper.TryMarshalSet(ref m_ParentEmail, value); + } + } + + public void Set(CreateUserOptions other) + { + if (other != null) + { + m_ApiVersion = KWSInterface.CreateuserApiLatest; + LocalUserId = other.LocalUserId; + DateOfBirth = other.DateOfBirth; + ParentEmail = other.ParentEmail; + } + } + + public void Set(object other) + { + Set(other as CreateUserOptions); + } + + public void Dispose() + { + Helper.TryMarshalDispose(ref m_LocalUserId); + Helper.TryMarshalDispose(ref m_DateOfBirth); + Helper.TryMarshalDispose(ref m_ParentEmail); + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/KWS/CreateUserOptions.cs.meta b/EOSSDK/Generated/KWS/CreateUserOptions.cs.meta new file mode 100644 index 00000000..68f229d5 --- /dev/null +++ b/EOSSDK/Generated/KWS/CreateUserOptions.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: a13f7900ad0d840449f8f981297c5929 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/KWS/GetPermissionByKeyOptions.cs b/EOSSDK/Generated/KWS/GetPermissionByKeyOptions.cs new file mode 100644 index 00000000..6bc0dd0c --- /dev/null +++ b/EOSSDK/Generated/KWS/GetPermissionByKeyOptions.cs @@ -0,0 +1,66 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.KWS +{ + /// + /// Input parameters for the function. + /// + public class GetPermissionByKeyOptions + { + /// + /// The Product User ID of the local user getting permissions + /// + public ProductUserId LocalUserId { get; set; } + + /// + /// Permission name to query + /// + public string Key { get; set; } + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct GetPermissionByKeyOptionsInternal : ISettable, System.IDisposable + { + private int m_ApiVersion; + private System.IntPtr m_LocalUserId; + private System.IntPtr m_Key; + + public ProductUserId LocalUserId + { + set + { + Helper.TryMarshalSet(ref m_LocalUserId, value); + } + } + + public string Key + { + set + { + Helper.TryMarshalSet(ref m_Key, value); + } + } + + public void Set(GetPermissionByKeyOptions other) + { + if (other != null) + { + m_ApiVersion = KWSInterface.GetpermissionbykeyApiLatest; + LocalUserId = other.LocalUserId; + Key = other.Key; + } + } + + public void Set(object other) + { + Set(other as GetPermissionByKeyOptions); + } + + public void Dispose() + { + Helper.TryMarshalDispose(ref m_LocalUserId); + Helper.TryMarshalDispose(ref m_Key); + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/KWS/GetPermissionByKeyOptions.cs.meta b/EOSSDK/Generated/KWS/GetPermissionByKeyOptions.cs.meta new file mode 100644 index 00000000..71912f95 --- /dev/null +++ b/EOSSDK/Generated/KWS/GetPermissionByKeyOptions.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 01ceeff5ac9490f4099bd80f7ac3feb7 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/KWS/GetPermissionsCountOptions.cs b/EOSSDK/Generated/KWS/GetPermissionsCountOptions.cs new file mode 100644 index 00000000..0fc990d2 --- /dev/null +++ b/EOSSDK/Generated/KWS/GetPermissionsCountOptions.cs @@ -0,0 +1,50 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.KWS +{ + /// + /// Input parameters for the function. + /// + public class GetPermissionsCountOptions + { + /// + /// The Product User ID of the local user whose permissions are being accessed + /// + public ProductUserId LocalUserId { get; set; } + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct GetPermissionsCountOptionsInternal : ISettable, System.IDisposable + { + private int m_ApiVersion; + private System.IntPtr m_LocalUserId; + + public ProductUserId LocalUserId + { + set + { + Helper.TryMarshalSet(ref m_LocalUserId, value); + } + } + + public void Set(GetPermissionsCountOptions other) + { + if (other != null) + { + m_ApiVersion = KWSInterface.GetpermissionscountApiLatest; + LocalUserId = other.LocalUserId; + } + } + + public void Set(object other) + { + Set(other as GetPermissionsCountOptions); + } + + public void Dispose() + { + Helper.TryMarshalDispose(ref m_LocalUserId); + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/KWS/GetPermissionsCountOptions.cs.meta b/EOSSDK/Generated/KWS/GetPermissionsCountOptions.cs.meta new file mode 100644 index 00000000..1f402a78 --- /dev/null +++ b/EOSSDK/Generated/KWS/GetPermissionsCountOptions.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 72765ba93cd23ea4c8e386e792038b78 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/KWS/KWSInterface.cs b/EOSSDK/Generated/KWS/KWSInterface.cs new file mode 100644 index 00000000..70459402 --- /dev/null +++ b/EOSSDK/Generated/KWS/KWSInterface.cs @@ -0,0 +1,408 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.KWS +{ + public sealed partial class KWSInterface : Handle + { + public KWSInterface() + { + } + + public KWSInterface(System.IntPtr innerHandle) : base(innerHandle) + { + } + + /// + /// The most recent version of the API. + /// + public const int AddnotifypermissionsupdatereceivedApiLatest = 1; + + /// + /// The most recent version of the API. + /// + public const int CopypermissionbyindexApiLatest = 1; + + /// + /// The most recent version of the API. + /// + public const int CreateuserApiLatest = 1; + + /// + /// The most recent version of the API. + /// + public const int GetpermissionbykeyApiLatest = 1; + + public const int GetpermissionscountApiLatest = 1; + + /// + /// Maximum size of the name for the permission + /// + public const int MaxPermissionLength = 32; + + /// + /// Maximum number of permissions that may be requested + /// + public const int MaxPermissions = 16; + + /// + /// The most recent version of the API. + /// + public const int PermissionstatusApiLatest = 1; + + /// + /// The most recent version of the API. + /// + public const int QueryagegateApiLatest = 1; + + /// + /// The most recent version of the API. + /// + public const int QuerypermissionsApiLatest = 1; + + /// + /// The most recent version of the API. + /// + public const int RequestpermissionsApiLatest = 1; + + /// + /// The most recent version of the API. + /// + public const int UpdateparentemailApiLatest = 1; + + /// + /// This interface is not available for general access at this time. + /// + /// Register to receive notifications about KWS permissions changes for any logged in local users + /// @note must call to remove the notification + /// + /// Structure containing information about the request. + /// Arbitrary data that is passed back to you in the CompletionDelegate. + /// A callback that is fired when a notification is received. + /// + /// handle representing the registered callback + /// + public ulong AddNotifyPermissionsUpdateReceived(AddNotifyPermissionsUpdateReceivedOptions options, object clientData, OnPermissionsUpdateReceivedCallback notificationFn) + { + var optionsAddress = System.IntPtr.Zero; + Helper.TryMarshalSet(ref optionsAddress, options); + + var clientDataAddress = System.IntPtr.Zero; + + var notificationFnInternal = new OnPermissionsUpdateReceivedCallbackInternal(OnPermissionsUpdateReceivedCallbackInternalImplementation); + Helper.AddCallback(ref clientDataAddress, clientData, notificationFn, notificationFnInternal); + + var funcResult = Bindings.EOS_KWS_AddNotifyPermissionsUpdateReceived(InnerHandle, optionsAddress, clientDataAddress, notificationFnInternal); + + Helper.TryMarshalDispose(ref optionsAddress); + + Helper.TryAssignNotificationIdToCallback(clientDataAddress, funcResult); + + return funcResult; + } + + /// + /// This interface is not available for general access at this time. + /// + /// Fetch a permission for a given by index for a given local user + /// + /// + /// + /// + /// + /// Structure containing the input parameters + /// the permission for the given index, if it exists and is valid, use when finished + /// + /// if the permission state is known for the given user and index + /// if the user is not found or the index is invalid + /// + public Result CopyPermissionByIndex(CopyPermissionByIndexOptions options, out PermissionStatus outPermission) + { + var optionsAddress = System.IntPtr.Zero; + Helper.TryMarshalSet(ref optionsAddress, options); + + var outPermissionAddress = System.IntPtr.Zero; + + var funcResult = Bindings.EOS_KWS_CopyPermissionByIndex(InnerHandle, optionsAddress, ref outPermissionAddress); + + Helper.TryMarshalDispose(ref optionsAddress); + + if (Helper.TryMarshalGet(outPermissionAddress, out outPermission)) + { + Bindings.EOS_KWS_PermissionStatus_Release(outPermissionAddress); + } + + return funcResult; + } + + /// + /// This interface is not available for general access at this time. + /// + /// Create an account with Kids Web Services and associate it with the local Product User ID + /// + /// options required for creating an account such as the local users Product User ID, their data of birth, and parental contact information + /// Arbitrary data that is passed back to you in the CompletionDelegate + /// A callback that is fired when the operation completes, either successfully or in error + /// + /// if account creation completes successfully + /// if any of the options are incorrect + /// if the number of allowed requests is exceeded + /// + public void CreateUser(CreateUserOptions options, object clientData, OnCreateUserCallback completionDelegate) + { + var optionsAddress = System.IntPtr.Zero; + Helper.TryMarshalSet(ref optionsAddress, options); + + var clientDataAddress = System.IntPtr.Zero; + + var completionDelegateInternal = new OnCreateUserCallbackInternal(OnCreateUserCallbackInternalImplementation); + Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); + + Bindings.EOS_KWS_CreateUser(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); + + Helper.TryMarshalDispose(ref optionsAddress); + } + + /// + /// This interface is not available for general access at this time. + /// + /// Fetch the state of a given permission that are cached for a given local user. + /// + /// + /// + /// + /// Structure containing the input parameters + /// the permission for the given key, if it exists and is valid + /// + /// if the permission state is known for the given user and key + /// if the user or the permission is not found + /// + public Result GetPermissionByKey(GetPermissionByKeyOptions options, out KWSPermissionStatus outPermission) + { + var optionsAddress = System.IntPtr.Zero; + Helper.TryMarshalSet(ref optionsAddress, options); + + outPermission = Helper.GetDefault(); + + var funcResult = Bindings.EOS_KWS_GetPermissionByKey(InnerHandle, optionsAddress, ref outPermission); + + Helper.TryMarshalDispose(ref optionsAddress); + + return funcResult; + } + + /// + /// This interface is not available for general access at this time. + /// + /// Fetch the number of permissions found for a given local user + /// + /// Structure containing the input parameters + /// + /// the number of permissions associated with the given user + /// + public int GetPermissionsCount(GetPermissionsCountOptions options) + { + var optionsAddress = System.IntPtr.Zero; + Helper.TryMarshalSet(ref optionsAddress, options); + + var funcResult = Bindings.EOS_KWS_GetPermissionsCount(InnerHandle, optionsAddress); + + Helper.TryMarshalDispose(ref optionsAddress); + + return funcResult; + } + + /// + /// This interface is not available for general access at this time. + /// + /// Query the client's country and age permissions for client side reasoning about the possible need enforce age based restrictions + /// + /// options required for interacting with the age gate system + /// Arbitrary data that is passed back to you in the CompletionDelegate + /// A callback that is fired when the operation completes, either successfully or in error + /// + /// if the query completes successfully + /// if any of the options are incorrect + /// if the number of allowed queries is exceeded + /// + public void QueryAgeGate(QueryAgeGateOptions options, object clientData, OnQueryAgeGateCallback completionDelegate) + { + var optionsAddress = System.IntPtr.Zero; + Helper.TryMarshalSet(ref optionsAddress, options); + + var clientDataAddress = System.IntPtr.Zero; + + var completionDelegateInternal = new OnQueryAgeGateCallbackInternal(OnQueryAgeGateCallbackInternalImplementation); + Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); + + Bindings.EOS_KWS_QueryAgeGate(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); + + Helper.TryMarshalDispose(ref optionsAddress); + } + + /// + /// This interface is not available for general access at this time. + /// + /// Query the current state of permissions for a given local Product User ID + /// + /// options required for querying permissions such as the local users Product User ID + /// Arbitrary data that is passed back to you in the CompletionDelegate + /// A callback that is fired when the operation completes, either successfully or in error + /// + /// if the account query completes successfully + /// if any of the options are incorrect + /// if the number of allowed requests is exceeded + /// + public void QueryPermissions(QueryPermissionsOptions options, object clientData, OnQueryPermissionsCallback completionDelegate) + { + var optionsAddress = System.IntPtr.Zero; + Helper.TryMarshalSet(ref optionsAddress, options); + + var clientDataAddress = System.IntPtr.Zero; + + var completionDelegateInternal = new OnQueryPermissionsCallbackInternal(OnQueryPermissionsCallbackInternalImplementation); + Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); + + Bindings.EOS_KWS_QueryPermissions(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); + + Helper.TryMarshalDispose(ref optionsAddress); + } + + /// + /// This interface is not available for general access at this time. + /// + /// Unregister from receiving notifications about KWS permissions related to logged in users + /// + /// Handle representing the registered callback + public void RemoveNotifyPermissionsUpdateReceived(ulong inId) + { + Helper.TryRemoveCallbackByNotificationId(inId); + + Bindings.EOS_KWS_RemoveNotifyPermissionsUpdateReceived(InnerHandle, inId); + } + + /// + /// This interface is not available for general access at this time. + /// + /// Request new permissions for a given local Product User ID + /// + /// options required for updating permissions such as the new list of permissions + /// Arbitrary data that is passed back to you in the CompletionDelegate + /// A callback that is fired when the operation completes, either successfully or in error + /// + /// if contact information update completes successfully + /// if any of the options are incorrect + /// if the number of allowed requests is exceeded + /// if the account requesting permissions has no parent email associated with it + /// if the number of permissions exceeds , or if any permission name exceeds + /// + public void RequestPermissions(RequestPermissionsOptions options, object clientData, OnRequestPermissionsCallback completionDelegate) + { + var optionsAddress = System.IntPtr.Zero; + Helper.TryMarshalSet(ref optionsAddress, options); + + var clientDataAddress = System.IntPtr.Zero; + + var completionDelegateInternal = new OnRequestPermissionsCallbackInternal(OnRequestPermissionsCallbackInternalImplementation); + Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); + + Bindings.EOS_KWS_RequestPermissions(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); + + Helper.TryMarshalDispose(ref optionsAddress); + } + + /// + /// This interface is not available for general access at this time. + /// + /// Update the parent contact information for a given local Product User ID + /// + /// options required for updating the contact information such as the new email address + /// Arbitrary data that is passed back to you in the CompletionDelegate + /// A callback that is fired when the operation completes, either successfully or in error + /// + /// if contact information update completes successfully + /// if any of the options are incorrect + /// if the number of allowed requests is exceeded + /// + public void UpdateParentEmail(UpdateParentEmailOptions options, object clientData, OnUpdateParentEmailCallback completionDelegate) + { + var optionsAddress = System.IntPtr.Zero; + Helper.TryMarshalSet(ref optionsAddress, options); + + var clientDataAddress = System.IntPtr.Zero; + + var completionDelegateInternal = new OnUpdateParentEmailCallbackInternal(OnUpdateParentEmailCallbackInternalImplementation); + Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); + + Bindings.EOS_KWS_UpdateParentEmail(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); + + Helper.TryMarshalDispose(ref optionsAddress); + } + + [MonoPInvokeCallback(typeof(OnCreateUserCallbackInternal))] + internal static void OnCreateUserCallbackInternalImplementation(System.IntPtr data) + { + OnCreateUserCallback callback; + CreateUserCallbackInfo callbackInfo; + if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) + { + callback(callbackInfo); + } + } + + [MonoPInvokeCallback(typeof(OnPermissionsUpdateReceivedCallbackInternal))] + internal static void OnPermissionsUpdateReceivedCallbackInternalImplementation(System.IntPtr data) + { + OnPermissionsUpdateReceivedCallback callback; + PermissionsUpdateReceivedCallbackInfo callbackInfo; + if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) + { + callback(callbackInfo); + } + } + + [MonoPInvokeCallback(typeof(OnQueryAgeGateCallbackInternal))] + internal static void OnQueryAgeGateCallbackInternalImplementation(System.IntPtr data) + { + OnQueryAgeGateCallback callback; + QueryAgeGateCallbackInfo callbackInfo; + if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) + { + callback(callbackInfo); + } + } + + [MonoPInvokeCallback(typeof(OnQueryPermissionsCallbackInternal))] + internal static void OnQueryPermissionsCallbackInternalImplementation(System.IntPtr data) + { + OnQueryPermissionsCallback callback; + QueryPermissionsCallbackInfo callbackInfo; + if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) + { + callback(callbackInfo); + } + } + + [MonoPInvokeCallback(typeof(OnRequestPermissionsCallbackInternal))] + internal static void OnRequestPermissionsCallbackInternalImplementation(System.IntPtr data) + { + OnRequestPermissionsCallback callback; + RequestPermissionsCallbackInfo callbackInfo; + if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) + { + callback(callbackInfo); + } + } + + [MonoPInvokeCallback(typeof(OnUpdateParentEmailCallbackInternal))] + internal static void OnUpdateParentEmailCallbackInternalImplementation(System.IntPtr data) + { + OnUpdateParentEmailCallback callback; + UpdateParentEmailCallbackInfo callbackInfo; + if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) + { + callback(callbackInfo); + } + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/KWS/KWSInterface.cs.meta b/EOSSDK/Generated/KWS/KWSInterface.cs.meta new file mode 100644 index 00000000..ac0f0f0a --- /dev/null +++ b/EOSSDK/Generated/KWS/KWSInterface.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 12aa585d3ca1acb4e81b288635e51b0b +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/KWS/KWSPermissionStatus.cs b/EOSSDK/Generated/KWS/KWSPermissionStatus.cs new file mode 100644 index 00000000..521b365b --- /dev/null +++ b/EOSSDK/Generated/KWS/KWSPermissionStatus.cs @@ -0,0 +1,24 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.KWS +{ + /// + /// An enumeration of the different permission statuses. + /// + public enum KWSPermissionStatus : int + { + /// + /// Permission has been granted + /// + Granted = 0, + /// + /// Permission has been rejected + /// + Rejected = 1, + /// + /// Permission is still pending approval + /// + Pending = 2 + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/KWS/KWSPermissionStatus.cs.meta b/EOSSDK/Generated/KWS/KWSPermissionStatus.cs.meta new file mode 100644 index 00000000..8aedc243 --- /dev/null +++ b/EOSSDK/Generated/KWS/KWSPermissionStatus.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: d264c38b113661e49b09841569b5545e +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/KWS/OnCreateUserCallback.cs b/EOSSDK/Generated/KWS/OnCreateUserCallback.cs new file mode 100644 index 00000000..86dac1b2 --- /dev/null +++ b/EOSSDK/Generated/KWS/OnCreateUserCallback.cs @@ -0,0 +1,14 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.KWS +{ + /// + /// Function prototype definition for callbacks passed to + /// + /// A containing the output information and result + public delegate void OnCreateUserCallback(CreateUserCallbackInfo data); + + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void OnCreateUserCallbackInternal(System.IntPtr data); +} \ No newline at end of file diff --git a/EOSSDK/Generated/KWS/OnCreateUserCallback.cs.meta b/EOSSDK/Generated/KWS/OnCreateUserCallback.cs.meta new file mode 100644 index 00000000..9e97df08 --- /dev/null +++ b/EOSSDK/Generated/KWS/OnCreateUserCallback.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: d28bcb0bd88bff04097d15a94524a20c +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/KWS/OnPermissionsUpdateReceivedCallback.cs b/EOSSDK/Generated/KWS/OnPermissionsUpdateReceivedCallback.cs new file mode 100644 index 00000000..f0215eb0 --- /dev/null +++ b/EOSSDK/Generated/KWS/OnPermissionsUpdateReceivedCallback.cs @@ -0,0 +1,14 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.KWS +{ + /// + /// Function prototype definition for notifications that comes from + /// + /// A containing the output information and result + public delegate void OnPermissionsUpdateReceivedCallback(PermissionsUpdateReceivedCallbackInfo data); + + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void OnPermissionsUpdateReceivedCallbackInternal(System.IntPtr data); +} \ No newline at end of file diff --git a/EOSSDK/Generated/KWS/OnPermissionsUpdateReceivedCallback.cs.meta b/EOSSDK/Generated/KWS/OnPermissionsUpdateReceivedCallback.cs.meta new file mode 100644 index 00000000..9a3589c9 --- /dev/null +++ b/EOSSDK/Generated/KWS/OnPermissionsUpdateReceivedCallback.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: bb92cb7e5f193e748b3c72c806257ba5 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/KWS/OnQueryAgeGateCallback.cs b/EOSSDK/Generated/KWS/OnQueryAgeGateCallback.cs new file mode 100644 index 00000000..bf8ccc9a --- /dev/null +++ b/EOSSDK/Generated/KWS/OnQueryAgeGateCallback.cs @@ -0,0 +1,14 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.KWS +{ + /// + /// Function prototype definition for callbacks passed to + /// + /// A containing the output information and result + public delegate void OnQueryAgeGateCallback(QueryAgeGateCallbackInfo data); + + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void OnQueryAgeGateCallbackInternal(System.IntPtr data); +} \ No newline at end of file diff --git a/EOSSDK/Generated/KWS/OnQueryAgeGateCallback.cs.meta b/EOSSDK/Generated/KWS/OnQueryAgeGateCallback.cs.meta new file mode 100644 index 00000000..f3bc9ba5 --- /dev/null +++ b/EOSSDK/Generated/KWS/OnQueryAgeGateCallback.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 7e56ff2d7825ba24a86d9c540956347c +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/KWS/OnQueryPermissionsCallback.cs b/EOSSDK/Generated/KWS/OnQueryPermissionsCallback.cs new file mode 100644 index 00000000..9442a3aa --- /dev/null +++ b/EOSSDK/Generated/KWS/OnQueryPermissionsCallback.cs @@ -0,0 +1,14 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.KWS +{ + /// + /// Function prototype definition for callbacks passed to + /// + /// A containing the output information and result + public delegate void OnQueryPermissionsCallback(QueryPermissionsCallbackInfo data); + + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void OnQueryPermissionsCallbackInternal(System.IntPtr data); +} \ No newline at end of file diff --git a/EOSSDK/Generated/KWS/OnQueryPermissionsCallback.cs.meta b/EOSSDK/Generated/KWS/OnQueryPermissionsCallback.cs.meta new file mode 100644 index 00000000..f66bfd4d --- /dev/null +++ b/EOSSDK/Generated/KWS/OnQueryPermissionsCallback.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: b9dd43e8bb2f16647be3a75e9b591b26 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/KWS/OnRequestPermissionsCallback.cs b/EOSSDK/Generated/KWS/OnRequestPermissionsCallback.cs new file mode 100644 index 00000000..c179eca3 --- /dev/null +++ b/EOSSDK/Generated/KWS/OnRequestPermissionsCallback.cs @@ -0,0 +1,14 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.KWS +{ + /// + /// Function prototype definition for callbacks passed to + /// + /// A containing the output information and result + public delegate void OnRequestPermissionsCallback(RequestPermissionsCallbackInfo data); + + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void OnRequestPermissionsCallbackInternal(System.IntPtr data); +} \ No newline at end of file diff --git a/EOSSDK/Generated/KWS/OnRequestPermissionsCallback.cs.meta b/EOSSDK/Generated/KWS/OnRequestPermissionsCallback.cs.meta new file mode 100644 index 00000000..31b11093 --- /dev/null +++ b/EOSSDK/Generated/KWS/OnRequestPermissionsCallback.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: dbf5a3bf9dfbd6f4aad45b3e44e39078 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/KWS/OnUpdateParentEmailCallback.cs b/EOSSDK/Generated/KWS/OnUpdateParentEmailCallback.cs new file mode 100644 index 00000000..73da653d --- /dev/null +++ b/EOSSDK/Generated/KWS/OnUpdateParentEmailCallback.cs @@ -0,0 +1,14 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.KWS +{ + /// + /// Function prototype definition for callbacks passed to + /// + /// A containing the output information and result + public delegate void OnUpdateParentEmailCallback(UpdateParentEmailCallbackInfo data); + + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void OnUpdateParentEmailCallbackInternal(System.IntPtr data); +} \ No newline at end of file diff --git a/EOSSDK/Generated/KWS/OnUpdateParentEmailCallback.cs.meta b/EOSSDK/Generated/KWS/OnUpdateParentEmailCallback.cs.meta new file mode 100644 index 00000000..bf90b530 --- /dev/null +++ b/EOSSDK/Generated/KWS/OnUpdateParentEmailCallback.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: d054ae5a4e99dd14b940fc545448f643 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/KWS/PermissionStatus.cs b/EOSSDK/Generated/KWS/PermissionStatus.cs new file mode 100644 index 00000000..3f9c92fb --- /dev/null +++ b/EOSSDK/Generated/KWS/PermissionStatus.cs @@ -0,0 +1,88 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.KWS +{ + public class PermissionStatus : ISettable + { + /// + /// Name of the permission + /// + public string Name { get; set; } + + /// + /// Status of the permission + /// + public KWSPermissionStatus Status { get; set; } + + internal void Set(PermissionStatusInternal? other) + { + if (other != null) + { + Name = other.Value.Name; + Status = other.Value.Status; + } + } + + public void Set(object other) + { + Set(other as PermissionStatusInternal?); + } + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct PermissionStatusInternal : ISettable, System.IDisposable + { + private int m_ApiVersion; + private System.IntPtr m_Name; + private KWSPermissionStatus m_Status; + + public string Name + { + get + { + string value; + Helper.TryMarshalGet(m_Name, out value); + return value; + } + + set + { + Helper.TryMarshalSet(ref m_Name, value); + } + } + + public KWSPermissionStatus Status + { + get + { + return m_Status; + } + + set + { + m_Status = value; + } + } + + public void Set(PermissionStatus other) + { + if (other != null) + { + m_ApiVersion = KWSInterface.PermissionstatusApiLatest; + Name = other.Name; + Status = other.Status; + } + } + + public void Set(object other) + { + Set(other as PermissionStatus); + } + + public void Dispose() + { + Helper.TryMarshalDispose(ref m_Name); + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/KWS/PermissionStatus.cs.meta b/EOSSDK/Generated/KWS/PermissionStatus.cs.meta new file mode 100644 index 00000000..3c9ed847 --- /dev/null +++ b/EOSSDK/Generated/KWS/PermissionStatus.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 61f05b9ccc180854a8db7690d45ba245 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/KWS/PermissionsUpdateReceivedCallbackInfo.cs b/EOSSDK/Generated/KWS/PermissionsUpdateReceivedCallbackInfo.cs new file mode 100644 index 00000000..83682a0e --- /dev/null +++ b/EOSSDK/Generated/KWS/PermissionsUpdateReceivedCallbackInfo.cs @@ -0,0 +1,75 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.KWS +{ + /// + /// Output parameters for the Function. + /// + public class PermissionsUpdateReceivedCallbackInfo : ICallbackInfo, ISettable + { + /// + /// Context that was passed into + /// + public object ClientData { get; private set; } + + /// + /// Recipient Local user id + /// + public ProductUserId LocalUserId { get; private set; } + + public Result? GetResultCode() + { + return null; + } + + internal void Set(PermissionsUpdateReceivedCallbackInfoInternal? other) + { + if (other != null) + { + ClientData = other.Value.ClientData; + LocalUserId = other.Value.LocalUserId; + } + } + + public void Set(object other) + { + Set(other as PermissionsUpdateReceivedCallbackInfoInternal?); + } + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct PermissionsUpdateReceivedCallbackInfoInternal : ICallbackInfoInternal + { + private System.IntPtr m_ClientData; + private System.IntPtr m_LocalUserId; + + public object ClientData + { + get + { + object value; + Helper.TryMarshalGet(m_ClientData, out value); + return value; + } + } + + public System.IntPtr ClientDataAddress + { + get + { + return m_ClientData; + } + } + + public ProductUserId LocalUserId + { + get + { + ProductUserId value; + Helper.TryMarshalGet(m_LocalUserId, out value); + return value; + } + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/KWS/PermissionsUpdateReceivedCallbackInfo.cs.meta b/EOSSDK/Generated/KWS/PermissionsUpdateReceivedCallbackInfo.cs.meta new file mode 100644 index 00000000..d9b7e378 --- /dev/null +++ b/EOSSDK/Generated/KWS/PermissionsUpdateReceivedCallbackInfo.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: b9c51247588c2b24eb07e3626c175593 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/KWS/QueryAgeGateCallbackInfo.cs b/EOSSDK/Generated/KWS/QueryAgeGateCallbackInfo.cs new file mode 100644 index 00000000..3683bce9 --- /dev/null +++ b/EOSSDK/Generated/KWS/QueryAgeGateCallbackInfo.cs @@ -0,0 +1,105 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.KWS +{ + /// + /// Output parameters for the Function. These parameters are received through the callback provided to + /// + public class QueryAgeGateCallbackInfo : ICallbackInfo, ISettable + { + /// + /// The code for the operation. indicates that the operation succeeded; other codes indicate errors. + /// + public Result ResultCode { get; private set; } + + /// + /// Context that was passed into + /// + public object ClientData { get; private set; } + + /// + /// Country code determined for this request based on the local client's ip address that the backend resolves + /// + public string CountryCode { get; private set; } + + /// + /// Age of consent in the given country + /// + public uint AgeOfConsent { get; private set; } + + public Result? GetResultCode() + { + return ResultCode; + } + + internal void Set(QueryAgeGateCallbackInfoInternal? other) + { + if (other != null) + { + ResultCode = other.Value.ResultCode; + ClientData = other.Value.ClientData; + CountryCode = other.Value.CountryCode; + AgeOfConsent = other.Value.AgeOfConsent; + } + } + + public void Set(object other) + { + Set(other as QueryAgeGateCallbackInfoInternal?); + } + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct QueryAgeGateCallbackInfoInternal : ICallbackInfoInternal + { + private Result m_ResultCode; + private System.IntPtr m_ClientData; + private System.IntPtr m_CountryCode; + private uint m_AgeOfConsent; + + public Result ResultCode + { + get + { + return m_ResultCode; + } + } + + public object ClientData + { + get + { + object value; + Helper.TryMarshalGet(m_ClientData, out value); + return value; + } + } + + public System.IntPtr ClientDataAddress + { + get + { + return m_ClientData; + } + } + + public string CountryCode + { + get + { + string value; + Helper.TryMarshalGet(m_CountryCode, out value); + return value; + } + } + + public uint AgeOfConsent + { + get + { + return m_AgeOfConsent; + } + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/KWS/QueryAgeGateCallbackInfo.cs.meta b/EOSSDK/Generated/KWS/QueryAgeGateCallbackInfo.cs.meta new file mode 100644 index 00000000..83adb611 --- /dev/null +++ b/EOSSDK/Generated/KWS/QueryAgeGateCallbackInfo.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 020258c5d325b1449a7dc0277f3a72ac +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/KWS/QueryAgeGateOptions.cs b/EOSSDK/Generated/KWS/QueryAgeGateOptions.cs new file mode 100644 index 00000000..7af7ddbc --- /dev/null +++ b/EOSSDK/Generated/KWS/QueryAgeGateOptions.cs @@ -0,0 +1,35 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.KWS +{ + /// + /// Input parameters for the function. + /// + public class QueryAgeGateOptions + { + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct QueryAgeGateOptionsInternal : ISettable, System.IDisposable + { + private int m_ApiVersion; + + public void Set(QueryAgeGateOptions other) + { + if (other != null) + { + m_ApiVersion = KWSInterface.QueryagegateApiLatest; + } + } + + public void Set(object other) + { + Set(other as QueryAgeGateOptions); + } + + public void Dispose() + { + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/KWS/QueryAgeGateOptions.cs.meta b/EOSSDK/Generated/KWS/QueryAgeGateOptions.cs.meta new file mode 100644 index 00000000..102a7bde --- /dev/null +++ b/EOSSDK/Generated/KWS/QueryAgeGateOptions.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 28f69c227595abb4d9eba2329ab7dd1e +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/KWS/QueryPermissionsCallbackInfo.cs b/EOSSDK/Generated/KWS/QueryPermissionsCallbackInfo.cs new file mode 100644 index 00000000..e8b3bc20 --- /dev/null +++ b/EOSSDK/Generated/KWS/QueryPermissionsCallbackInfo.cs @@ -0,0 +1,141 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.KWS +{ + /// + /// Output parameters for the Function. These parameters are received through the callback provided to + /// + public class QueryPermissionsCallbackInfo : ICallbackInfo, ISettable + { + /// + /// The code for the operation. indicates that the operation succeeded; other codes indicate errors. + /// + public Result ResultCode { get; private set; } + + /// + /// Context that was passed into + /// + public object ClientData { get; private set; } + + /// + /// Local user querying their permisssions + /// + public ProductUserId LocalUserId { get; private set; } + + /// + /// KWS UserId created + /// + public string KWSUserId { get; private set; } + + /// + /// Date of birth in ISO8601 form (YYYY-MM-DD) + /// + public string DateOfBirth { get; private set; } + + /// + /// Is this user a minor + /// + public bool IsMinor { get; private set; } + + public Result? GetResultCode() + { + return ResultCode; + } + + internal void Set(QueryPermissionsCallbackInfoInternal? other) + { + if (other != null) + { + ResultCode = other.Value.ResultCode; + ClientData = other.Value.ClientData; + LocalUserId = other.Value.LocalUserId; + KWSUserId = other.Value.KWSUserId; + DateOfBirth = other.Value.DateOfBirth; + IsMinor = other.Value.IsMinor; + } + } + + public void Set(object other) + { + Set(other as QueryPermissionsCallbackInfoInternal?); + } + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct QueryPermissionsCallbackInfoInternal : ICallbackInfoInternal + { + private Result m_ResultCode; + private System.IntPtr m_ClientData; + private System.IntPtr m_LocalUserId; + private System.IntPtr m_KWSUserId; + private System.IntPtr m_DateOfBirth; + private int m_IsMinor; + + public Result ResultCode + { + get + { + return m_ResultCode; + } + } + + public object ClientData + { + get + { + object value; + Helper.TryMarshalGet(m_ClientData, out value); + return value; + } + } + + public System.IntPtr ClientDataAddress + { + get + { + return m_ClientData; + } + } + + public ProductUserId LocalUserId + { + get + { + ProductUserId value; + Helper.TryMarshalGet(m_LocalUserId, out value); + return value; + } + } + + public string KWSUserId + { + get + { + string value; + Helper.TryMarshalGet(m_KWSUserId, out value); + return value; + } + } + + public string DateOfBirth + { + get + { + string value; + Helper.TryMarshalGet(m_DateOfBirth, out value); + return value; + } + } + + public bool IsMinor + { + get + { + bool value; + Helper.TryMarshalGet(m_IsMinor, out value); + return value; + } + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/KWS/QueryPermissionsCallbackInfo.cs.meta b/EOSSDK/Generated/KWS/QueryPermissionsCallbackInfo.cs.meta new file mode 100644 index 00000000..8343a548 --- /dev/null +++ b/EOSSDK/Generated/KWS/QueryPermissionsCallbackInfo.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: a73ae0dd9b32dbb44a246d5e4756c457 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/KWS/QueryPermissionsOptions.cs b/EOSSDK/Generated/KWS/QueryPermissionsOptions.cs new file mode 100644 index 00000000..7bd17c8d --- /dev/null +++ b/EOSSDK/Generated/KWS/QueryPermissionsOptions.cs @@ -0,0 +1,50 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.KWS +{ + /// + /// Input parameters for the function. + /// + public class QueryPermissionsOptions + { + /// + /// Local user querying their permisssions + /// + public ProductUserId LocalUserId { get; set; } + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct QueryPermissionsOptionsInternal : ISettable, System.IDisposable + { + private int m_ApiVersion; + private System.IntPtr m_LocalUserId; + + public ProductUserId LocalUserId + { + set + { + Helper.TryMarshalSet(ref m_LocalUserId, value); + } + } + + public void Set(QueryPermissionsOptions other) + { + if (other != null) + { + m_ApiVersion = KWSInterface.QuerypermissionsApiLatest; + LocalUserId = other.LocalUserId; + } + } + + public void Set(object other) + { + Set(other as QueryPermissionsOptions); + } + + public void Dispose() + { + Helper.TryMarshalDispose(ref m_LocalUserId); + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/KWS/QueryPermissionsOptions.cs.meta b/EOSSDK/Generated/KWS/QueryPermissionsOptions.cs.meta new file mode 100644 index 00000000..b3fbdc5b --- /dev/null +++ b/EOSSDK/Generated/KWS/QueryPermissionsOptions.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: e716b8c9feeac084381651d1d850c8d9 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/KWS/RequestPermissionsCallbackInfo.cs b/EOSSDK/Generated/KWS/RequestPermissionsCallbackInfo.cs new file mode 100644 index 00000000..9bd4a459 --- /dev/null +++ b/EOSSDK/Generated/KWS/RequestPermissionsCallbackInfo.cs @@ -0,0 +1,90 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.KWS +{ + /// + /// Output parameters for the Function. These parameters are received through the callback provided to + /// + public class RequestPermissionsCallbackInfo : ICallbackInfo, ISettable + { + /// + /// The code for the operation. indicates that the operation succeeded; other codes indicate errors. + /// + public Result ResultCode { get; private set; } + + /// + /// Context that was passed into + /// + public object ClientData { get; private set; } + + /// + /// Local user requesting new permisssions + /// + public ProductUserId LocalUserId { get; private set; } + + public Result? GetResultCode() + { + return ResultCode; + } + + internal void Set(RequestPermissionsCallbackInfoInternal? other) + { + if (other != null) + { + ResultCode = other.Value.ResultCode; + ClientData = other.Value.ClientData; + LocalUserId = other.Value.LocalUserId; + } + } + + public void Set(object other) + { + Set(other as RequestPermissionsCallbackInfoInternal?); + } + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct RequestPermissionsCallbackInfoInternal : ICallbackInfoInternal + { + private Result m_ResultCode; + private System.IntPtr m_ClientData; + private System.IntPtr m_LocalUserId; + + public Result ResultCode + { + get + { + return m_ResultCode; + } + } + + public object ClientData + { + get + { + object value; + Helper.TryMarshalGet(m_ClientData, out value); + return value; + } + } + + public System.IntPtr ClientDataAddress + { + get + { + return m_ClientData; + } + } + + public ProductUserId LocalUserId + { + get + { + ProductUserId value; + Helper.TryMarshalGet(m_LocalUserId, out value); + return value; + } + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/KWS/RequestPermissionsCallbackInfo.cs.meta b/EOSSDK/Generated/KWS/RequestPermissionsCallbackInfo.cs.meta new file mode 100644 index 00000000..d69b6aec --- /dev/null +++ b/EOSSDK/Generated/KWS/RequestPermissionsCallbackInfo.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 8a6ca4dda3b10eb4da52a096bb7d953c +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/KWS/RequestPermissionsOptions.cs b/EOSSDK/Generated/KWS/RequestPermissionsOptions.cs new file mode 100644 index 00000000..e4cf9082 --- /dev/null +++ b/EOSSDK/Generated/KWS/RequestPermissionsOptions.cs @@ -0,0 +1,67 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.KWS +{ + /// + /// Input parameters for the function. + /// + public class RequestPermissionsOptions + { + /// + /// Local user requesting new permisssions + /// + public ProductUserId LocalUserId { get; set; } + + /// + /// Names of the permissions to request (Setup with KWS) + /// + public string[] PermissionKeys { get; set; } + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct RequestPermissionsOptionsInternal : ISettable, System.IDisposable + { + private int m_ApiVersion; + private System.IntPtr m_LocalUserId; + private uint m_PermissionKeyCount; + private System.IntPtr m_PermissionKeys; + + public ProductUserId LocalUserId + { + set + { + Helper.TryMarshalSet(ref m_LocalUserId, value); + } + } + + public string[] PermissionKeys + { + set + { + Helper.TryMarshalSet(ref m_PermissionKeys, value, out m_PermissionKeyCount, true); + } + } + + public void Set(RequestPermissionsOptions other) + { + if (other != null) + { + m_ApiVersion = KWSInterface.RequestpermissionsApiLatest; + LocalUserId = other.LocalUserId; + PermissionKeys = other.PermissionKeys; + } + } + + public void Set(object other) + { + Set(other as RequestPermissionsOptions); + } + + public void Dispose() + { + Helper.TryMarshalDispose(ref m_LocalUserId); + Helper.TryMarshalDispose(ref m_PermissionKeys); + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/KWS/RequestPermissionsOptions.cs.meta b/EOSSDK/Generated/KWS/RequestPermissionsOptions.cs.meta new file mode 100644 index 00000000..b7840e5c --- /dev/null +++ b/EOSSDK/Generated/KWS/RequestPermissionsOptions.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 19ecc27202536d246a56bd9821a2edc0 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/KWS/UpdateParentEmailCallbackInfo.cs b/EOSSDK/Generated/KWS/UpdateParentEmailCallbackInfo.cs new file mode 100644 index 00000000..d04f8c74 --- /dev/null +++ b/EOSSDK/Generated/KWS/UpdateParentEmailCallbackInfo.cs @@ -0,0 +1,90 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.KWS +{ + /// + /// Output parameters for the Function. These parameters are received through the callback provided to + /// + public class UpdateParentEmailCallbackInfo : ICallbackInfo, ISettable + { + /// + /// The code for the operation. indicates that the operation succeeded; other codes indicate errors. + /// + public Result ResultCode { get; private set; } + + /// + /// Context that was passed into + /// + public object ClientData { get; private set; } + + /// + /// Local user updating their parental email + /// + public ProductUserId LocalUserId { get; private set; } + + public Result? GetResultCode() + { + return ResultCode; + } + + internal void Set(UpdateParentEmailCallbackInfoInternal? other) + { + if (other != null) + { + ResultCode = other.Value.ResultCode; + ClientData = other.Value.ClientData; + LocalUserId = other.Value.LocalUserId; + } + } + + public void Set(object other) + { + Set(other as UpdateParentEmailCallbackInfoInternal?); + } + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct UpdateParentEmailCallbackInfoInternal : ICallbackInfoInternal + { + private Result m_ResultCode; + private System.IntPtr m_ClientData; + private System.IntPtr m_LocalUserId; + + public Result ResultCode + { + get + { + return m_ResultCode; + } + } + + public object ClientData + { + get + { + object value; + Helper.TryMarshalGet(m_ClientData, out value); + return value; + } + } + + public System.IntPtr ClientDataAddress + { + get + { + return m_ClientData; + } + } + + public ProductUserId LocalUserId + { + get + { + ProductUserId value; + Helper.TryMarshalGet(m_LocalUserId, out value); + return value; + } + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/KWS/UpdateParentEmailCallbackInfo.cs.meta b/EOSSDK/Generated/KWS/UpdateParentEmailCallbackInfo.cs.meta new file mode 100644 index 00000000..7aca0a77 --- /dev/null +++ b/EOSSDK/Generated/KWS/UpdateParentEmailCallbackInfo.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: ed870fbc6f328614d82ddadb80dffa32 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/KWS/UpdateParentEmailOptions.cs b/EOSSDK/Generated/KWS/UpdateParentEmailOptions.cs new file mode 100644 index 00000000..f2c9e807 --- /dev/null +++ b/EOSSDK/Generated/KWS/UpdateParentEmailOptions.cs @@ -0,0 +1,66 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.KWS +{ + /// + /// Input parameters for the function. + /// + public class UpdateParentEmailOptions + { + /// + /// Local user updating parental information + /// + public ProductUserId LocalUserId { get; set; } + + /// + /// New parent email + /// + public string ParentEmail { get; set; } + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct UpdateParentEmailOptionsInternal : ISettable, System.IDisposable + { + private int m_ApiVersion; + private System.IntPtr m_LocalUserId; + private System.IntPtr m_ParentEmail; + + public ProductUserId LocalUserId + { + set + { + Helper.TryMarshalSet(ref m_LocalUserId, value); + } + } + + public string ParentEmail + { + set + { + Helper.TryMarshalSet(ref m_ParentEmail, value); + } + } + + public void Set(UpdateParentEmailOptions other) + { + if (other != null) + { + m_ApiVersion = KWSInterface.UpdateparentemailApiLatest; + LocalUserId = other.LocalUserId; + ParentEmail = other.ParentEmail; + } + } + + public void Set(object other) + { + Set(other as UpdateParentEmailOptions); + } + + public void Dispose() + { + Helper.TryMarshalDispose(ref m_LocalUserId); + Helper.TryMarshalDispose(ref m_ParentEmail); + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/KWS/UpdateParentEmailOptions.cs.meta b/EOSSDK/Generated/KWS/UpdateParentEmailOptions.cs.meta new file mode 100644 index 00000000..b466925c --- /dev/null +++ b/EOSSDK/Generated/KWS/UpdateParentEmailOptions.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 82f12ec2a0b998746b472da4c7be695a +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/Leaderboards/CopyLeaderboardRecordByUserIdOptions.cs b/EOSSDK/Generated/Leaderboards/CopyLeaderboardRecordByUserIdOptions.cs index bbaa6b87..855ee3e2 100644 --- a/EOSSDK/Generated/Leaderboards/CopyLeaderboardRecordByUserIdOptions.cs +++ b/EOSSDK/Generated/Leaderboards/CopyLeaderboardRecordByUserIdOptions.cs @@ -44,6 +44,7 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_UserId); } } } \ No newline at end of file diff --git a/EOSSDK/Generated/Leaderboards/CopyLeaderboardUserScoreByUserIdOptions.cs b/EOSSDK/Generated/Leaderboards/CopyLeaderboardUserScoreByUserIdOptions.cs index 525d7125..8029f6a8 100644 --- a/EOSSDK/Generated/Leaderboards/CopyLeaderboardUserScoreByUserIdOptions.cs +++ b/EOSSDK/Generated/Leaderboards/CopyLeaderboardUserScoreByUserIdOptions.cs @@ -59,6 +59,7 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_UserId); Helper.TryMarshalDispose(ref m_StatName); } } diff --git a/EOSSDK/Generated/Leaderboards/LeaderboardRecord.cs b/EOSSDK/Generated/Leaderboards/LeaderboardRecord.cs index 1babd123..fee33740 100644 --- a/EOSSDK/Generated/Leaderboards/LeaderboardRecord.cs +++ b/EOSSDK/Generated/Leaderboards/LeaderboardRecord.cs @@ -129,6 +129,7 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_UserId); Helper.TryMarshalDispose(ref m_UserDisplayName); } } diff --git a/EOSSDK/Generated/Leaderboards/LeaderboardUserScore.cs b/EOSSDK/Generated/Leaderboards/LeaderboardUserScore.cs index cd96f63d..87c5ecd7 100644 --- a/EOSSDK/Generated/Leaderboards/LeaderboardUserScore.cs +++ b/EOSSDK/Generated/Leaderboards/LeaderboardUserScore.cs @@ -85,6 +85,7 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_UserId); } } } \ No newline at end of file diff --git a/EOSSDK/Generated/Leaderboards/LeaderboardsInterface.cs b/EOSSDK/Generated/Leaderboards/LeaderboardsInterface.cs index 7cbb7fad..b1fbd72e 100644 --- a/EOSSDK/Generated/Leaderboards/LeaderboardsInterface.cs +++ b/EOSSDK/Generated/Leaderboards/LeaderboardsInterface.cs @@ -3,7 +3,7 @@ namespace Epic.OnlineServices.Leaderboards { - public sealed class LeaderboardsInterface : Handle + public sealed partial class LeaderboardsInterface : Handle { public LeaderboardsInterface() { @@ -76,17 +76,17 @@ public LeaderboardsInterface(System.IntPtr innerHandle) : base(innerHandle) /// /// The most recent version of the struct. /// - public const int QueryleaderboarddefinitionsApiLatest = 1; + public const int QueryleaderboarddefinitionsApiLatest = 2; /// /// The most recent version of the struct. /// - public const int QueryleaderboardranksApiLatest = 1; + public const int QueryleaderboardranksApiLatest = 2; /// /// The most recent version of the struct. /// - public const int QueryleaderboarduserscoresApiLatest = 1; + public const int QueryleaderboarduserscoresApiLatest = 2; /// /// Timestamp value representing an undefined time for . @@ -111,18 +111,18 @@ public LeaderboardsInterface(System.IntPtr innerHandle) : base(innerHandle) /// public Result CopyLeaderboardDefinitionByIndex(CopyLeaderboardDefinitionByIndexOptions options, out Definition outLeaderboardDefinition) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var outLeaderboardDefinitionAddress = System.IntPtr.Zero; - var funcResult = EOS_Leaderboards_CopyLeaderboardDefinitionByIndex(InnerHandle, optionsAddress, ref outLeaderboardDefinitionAddress); + var funcResult = Bindings.EOS_Leaderboards_CopyLeaderboardDefinitionByIndex(InnerHandle, optionsAddress, ref outLeaderboardDefinitionAddress); Helper.TryMarshalDispose(ref optionsAddress); if (Helper.TryMarshalGet(outLeaderboardDefinitionAddress, out outLeaderboardDefinition)) { - EOS_Leaderboards_Definition_Release(outLeaderboardDefinitionAddress); + Bindings.EOS_Leaderboards_Definition_Release(outLeaderboardDefinitionAddress); } return funcResult; @@ -141,18 +141,18 @@ public Result CopyLeaderboardDefinitionByIndex(CopyLeaderboardDefinitionByIndexO /// public Result CopyLeaderboardDefinitionByLeaderboardId(CopyLeaderboardDefinitionByLeaderboardIdOptions options, out Definition outLeaderboardDefinition) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var outLeaderboardDefinitionAddress = System.IntPtr.Zero; - var funcResult = EOS_Leaderboards_CopyLeaderboardDefinitionByLeaderboardId(InnerHandle, optionsAddress, ref outLeaderboardDefinitionAddress); + var funcResult = Bindings.EOS_Leaderboards_CopyLeaderboardDefinitionByLeaderboardId(InnerHandle, optionsAddress, ref outLeaderboardDefinitionAddress); Helper.TryMarshalDispose(ref optionsAddress); if (Helper.TryMarshalGet(outLeaderboardDefinitionAddress, out outLeaderboardDefinition)) { - EOS_Leaderboards_Definition_Release(outLeaderboardDefinitionAddress); + Bindings.EOS_Leaderboards_Definition_Release(outLeaderboardDefinitionAddress); } return funcResult; @@ -171,18 +171,18 @@ public Result CopyLeaderboardDefinitionByLeaderboardId(CopyLeaderboardDefinition /// public Result CopyLeaderboardRecordByIndex(CopyLeaderboardRecordByIndexOptions options, out LeaderboardRecord outLeaderboardRecord) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var outLeaderboardRecordAddress = System.IntPtr.Zero; - var funcResult = EOS_Leaderboards_CopyLeaderboardRecordByIndex(InnerHandle, optionsAddress, ref outLeaderboardRecordAddress); + var funcResult = Bindings.EOS_Leaderboards_CopyLeaderboardRecordByIndex(InnerHandle, optionsAddress, ref outLeaderboardRecordAddress); Helper.TryMarshalDispose(ref optionsAddress); if (Helper.TryMarshalGet(outLeaderboardRecordAddress, out outLeaderboardRecord)) { - EOS_Leaderboards_LeaderboardRecord_Release(outLeaderboardRecordAddress); + Bindings.EOS_Leaderboards_LeaderboardRecord_Release(outLeaderboardRecordAddress); } return funcResult; @@ -201,18 +201,18 @@ public Result CopyLeaderboardRecordByIndex(CopyLeaderboardRecordByIndexOptions o /// public Result CopyLeaderboardRecordByUserId(CopyLeaderboardRecordByUserIdOptions options, out LeaderboardRecord outLeaderboardRecord) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var outLeaderboardRecordAddress = System.IntPtr.Zero; - var funcResult = EOS_Leaderboards_CopyLeaderboardRecordByUserId(InnerHandle, optionsAddress, ref outLeaderboardRecordAddress); + var funcResult = Bindings.EOS_Leaderboards_CopyLeaderboardRecordByUserId(InnerHandle, optionsAddress, ref outLeaderboardRecordAddress); Helper.TryMarshalDispose(ref optionsAddress); if (Helper.TryMarshalGet(outLeaderboardRecordAddress, out outLeaderboardRecord)) { - EOS_Leaderboards_LeaderboardRecord_Release(outLeaderboardRecordAddress); + Bindings.EOS_Leaderboards_LeaderboardRecord_Release(outLeaderboardRecordAddress); } return funcResult; @@ -231,18 +231,18 @@ public Result CopyLeaderboardRecordByUserId(CopyLeaderboardRecordByUserIdOptions /// public Result CopyLeaderboardUserScoreByIndex(CopyLeaderboardUserScoreByIndexOptions options, out LeaderboardUserScore outLeaderboardUserScore) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var outLeaderboardUserScoreAddress = System.IntPtr.Zero; - var funcResult = EOS_Leaderboards_CopyLeaderboardUserScoreByIndex(InnerHandle, optionsAddress, ref outLeaderboardUserScoreAddress); + var funcResult = Bindings.EOS_Leaderboards_CopyLeaderboardUserScoreByIndex(InnerHandle, optionsAddress, ref outLeaderboardUserScoreAddress); Helper.TryMarshalDispose(ref optionsAddress); if (Helper.TryMarshalGet(outLeaderboardUserScoreAddress, out outLeaderboardUserScore)) { - EOS_Leaderboards_LeaderboardUserScore_Release(outLeaderboardUserScoreAddress); + Bindings.EOS_Leaderboards_LeaderboardUserScore_Release(outLeaderboardUserScoreAddress); } return funcResult; @@ -261,18 +261,18 @@ public Result CopyLeaderboardUserScoreByIndex(CopyLeaderboardUserScoreByIndexOpt /// public Result CopyLeaderboardUserScoreByUserId(CopyLeaderboardUserScoreByUserIdOptions options, out LeaderboardUserScore outLeaderboardUserScore) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var outLeaderboardUserScoreAddress = System.IntPtr.Zero; - var funcResult = EOS_Leaderboards_CopyLeaderboardUserScoreByUserId(InnerHandle, optionsAddress, ref outLeaderboardUserScoreAddress); + var funcResult = Bindings.EOS_Leaderboards_CopyLeaderboardUserScoreByUserId(InnerHandle, optionsAddress, ref outLeaderboardUserScoreAddress); Helper.TryMarshalDispose(ref optionsAddress); if (Helper.TryMarshalGet(outLeaderboardUserScoreAddress, out outLeaderboardUserScore)) { - EOS_Leaderboards_LeaderboardUserScore_Release(outLeaderboardUserScoreAddress); + Bindings.EOS_Leaderboards_LeaderboardUserScore_Release(outLeaderboardUserScoreAddress); } return funcResult; @@ -289,10 +289,10 @@ public Result CopyLeaderboardUserScoreByUserId(CopyLeaderboardUserScoreByUserIdO /// public uint GetLeaderboardDefinitionCount(GetLeaderboardDefinitionCountOptions options) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); - var funcResult = EOS_Leaderboards_GetLeaderboardDefinitionCount(InnerHandle, optionsAddress); + var funcResult = Bindings.EOS_Leaderboards_GetLeaderboardDefinitionCount(InnerHandle, optionsAddress); Helper.TryMarshalDispose(ref optionsAddress); @@ -310,10 +310,10 @@ public uint GetLeaderboardDefinitionCount(GetLeaderboardDefinitionCountOptions o /// public uint GetLeaderboardRecordCount(GetLeaderboardRecordCountOptions options) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); - var funcResult = EOS_Leaderboards_GetLeaderboardRecordCount(InnerHandle, optionsAddress); + var funcResult = Bindings.EOS_Leaderboards_GetLeaderboardRecordCount(InnerHandle, optionsAddress); Helper.TryMarshalDispose(ref optionsAddress); @@ -331,10 +331,10 @@ public uint GetLeaderboardRecordCount(GetLeaderboardRecordCountOptions options) /// public uint GetLeaderboardUserScoreCount(GetLeaderboardUserScoreCountOptions options) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); - var funcResult = EOS_Leaderboards_GetLeaderboardUserScoreCount(InnerHandle, optionsAddress); + var funcResult = Bindings.EOS_Leaderboards_GetLeaderboardUserScoreCount(InnerHandle, optionsAddress); Helper.TryMarshalDispose(ref optionsAddress); @@ -353,7 +353,7 @@ public uint GetLeaderboardUserScoreCount(GetLeaderboardUserScoreCountOptions opt /// public void QueryLeaderboardDefinitions(QueryLeaderboardDefinitionsOptions options, object clientData, OnQueryLeaderboardDefinitionsCompleteCallback completionDelegate) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var clientDataAddress = System.IntPtr.Zero; @@ -361,7 +361,7 @@ public void QueryLeaderboardDefinitions(QueryLeaderboardDefinitionsOptions optio var completionDelegateInternal = new OnQueryLeaderboardDefinitionsCompleteCallbackInternal(OnQueryLeaderboardDefinitionsCompleteCallbackInternalImplementation); Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - EOS_Leaderboards_QueryLeaderboardDefinitions(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); + Bindings.EOS_Leaderboards_QueryLeaderboardDefinitions(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); Helper.TryMarshalDispose(ref optionsAddress); } @@ -378,7 +378,7 @@ public void QueryLeaderboardDefinitions(QueryLeaderboardDefinitionsOptions optio /// public void QueryLeaderboardRanks(QueryLeaderboardRanksOptions options, object clientData, OnQueryLeaderboardRanksCompleteCallback completionDelegate) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var clientDataAddress = System.IntPtr.Zero; @@ -386,7 +386,7 @@ public void QueryLeaderboardRanks(QueryLeaderboardRanksOptions options, object c var completionDelegateInternal = new OnQueryLeaderboardRanksCompleteCallbackInternal(OnQueryLeaderboardRanksCompleteCallbackInternalImplementation); Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - EOS_Leaderboards_QueryLeaderboardRanks(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); + Bindings.EOS_Leaderboards_QueryLeaderboardRanks(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); Helper.TryMarshalDispose(ref optionsAddress); } @@ -403,7 +403,7 @@ public void QueryLeaderboardRanks(QueryLeaderboardRanksOptions options, object c /// public void QueryLeaderboardUserScores(QueryLeaderboardUserScoresOptions options, object clientData, OnQueryLeaderboardUserScoresCompleteCallback completionDelegate) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var clientDataAddress = System.IntPtr.Zero; @@ -411,7 +411,7 @@ public void QueryLeaderboardUserScores(QueryLeaderboardUserScoresOptions options var completionDelegateInternal = new OnQueryLeaderboardUserScoresCompleteCallbackInternal(OnQueryLeaderboardUserScoresCompleteCallbackInternalImplementation); Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - EOS_Leaderboards_QueryLeaderboardUserScores(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); + Bindings.EOS_Leaderboards_QueryLeaderboardUserScores(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); Helper.TryMarshalDispose(ref optionsAddress); } @@ -448,53 +448,5 @@ internal static void OnQueryLeaderboardUserScoresCompleteCallbackInternalImpleme callback(callbackInfo); } } - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_Leaderboards_CopyLeaderboardDefinitionByIndex(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outLeaderboardDefinition); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_Leaderboards_CopyLeaderboardDefinitionByLeaderboardId(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outLeaderboardDefinition); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_Leaderboards_CopyLeaderboardRecordByIndex(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outLeaderboardRecord); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_Leaderboards_CopyLeaderboardRecordByUserId(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outLeaderboardRecord); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_Leaderboards_CopyLeaderboardUserScoreByIndex(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outLeaderboardUserScore); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_Leaderboards_CopyLeaderboardUserScoreByUserId(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outLeaderboardUserScore); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern uint EOS_Leaderboards_GetLeaderboardDefinitionCount(System.IntPtr handle, System.IntPtr options); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern uint EOS_Leaderboards_GetLeaderboardRecordCount(System.IntPtr handle, System.IntPtr options); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern uint EOS_Leaderboards_GetLeaderboardUserScoreCount(System.IntPtr handle, System.IntPtr options); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern void EOS_Leaderboards_QueryLeaderboardDefinitions(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, OnQueryLeaderboardDefinitionsCompleteCallbackInternal completionDelegate); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern void EOS_Leaderboards_QueryLeaderboardRanks(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, OnQueryLeaderboardRanksCompleteCallbackInternal completionDelegate); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern void EOS_Leaderboards_QueryLeaderboardUserScores(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, OnQueryLeaderboardUserScoresCompleteCallbackInternal completionDelegate); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern void EOS_Leaderboards_Definition_Release(System.IntPtr leaderboardDefinition); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern void EOS_Leaderboards_LeaderboardUserScore_Release(System.IntPtr leaderboardUserScore); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern void EOS_Leaderboards_LeaderboardRecord_Release(System.IntPtr leaderboardRecord); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern void EOS_Leaderboards_LeaderboardDefinition_Release(System.IntPtr leaderboardDefinition); } } \ No newline at end of file diff --git a/EOSSDK/Generated/Leaderboards/OnQueryLeaderboardDefinitionsCompleteCallback.cs b/EOSSDK/Generated/Leaderboards/OnQueryLeaderboardDefinitionsCompleteCallback.cs index 0f24c244..70db0a5b 100644 --- a/EOSSDK/Generated/Leaderboards/OnQueryLeaderboardDefinitionsCompleteCallback.cs +++ b/EOSSDK/Generated/Leaderboards/OnQueryLeaderboardDefinitionsCompleteCallback.cs @@ -9,5 +9,6 @@ namespace Epic.OnlineServices.Leaderboards /// A containing the output information and result public delegate void OnQueryLeaderboardDefinitionsCompleteCallback(OnQueryLeaderboardDefinitionsCompleteCallbackInfo data); + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] internal delegate void OnQueryLeaderboardDefinitionsCompleteCallbackInternal(System.IntPtr data); } \ No newline at end of file diff --git a/EOSSDK/Generated/Leaderboards/OnQueryLeaderboardRanksCompleteCallback.cs b/EOSSDK/Generated/Leaderboards/OnQueryLeaderboardRanksCompleteCallback.cs index 63158a40..826392e4 100644 --- a/EOSSDK/Generated/Leaderboards/OnQueryLeaderboardRanksCompleteCallback.cs +++ b/EOSSDK/Generated/Leaderboards/OnQueryLeaderboardRanksCompleteCallback.cs @@ -9,5 +9,6 @@ namespace Epic.OnlineServices.Leaderboards /// A containing the output information and result public delegate void OnQueryLeaderboardRanksCompleteCallback(OnQueryLeaderboardRanksCompleteCallbackInfo data); + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] internal delegate void OnQueryLeaderboardRanksCompleteCallbackInternal(System.IntPtr data); } \ No newline at end of file diff --git a/EOSSDK/Generated/Leaderboards/OnQueryLeaderboardUserScoresCompleteCallback.cs b/EOSSDK/Generated/Leaderboards/OnQueryLeaderboardUserScoresCompleteCallback.cs index 4b1adca9..09cf79c5 100644 --- a/EOSSDK/Generated/Leaderboards/OnQueryLeaderboardUserScoresCompleteCallback.cs +++ b/EOSSDK/Generated/Leaderboards/OnQueryLeaderboardUserScoresCompleteCallback.cs @@ -9,5 +9,6 @@ namespace Epic.OnlineServices.Leaderboards /// A containing the output information and result public delegate void OnQueryLeaderboardUserScoresCompleteCallback(OnQueryLeaderboardUserScoresCompleteCallbackInfo data); + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] internal delegate void OnQueryLeaderboardUserScoresCompleteCallbackInternal(System.IntPtr data); } \ No newline at end of file diff --git a/EOSSDK/Generated/Leaderboards/QueryLeaderboardDefinitionsOptions.cs b/EOSSDK/Generated/Leaderboards/QueryLeaderboardDefinitionsOptions.cs index 0509d683..5ee52e87 100644 --- a/EOSSDK/Generated/Leaderboards/QueryLeaderboardDefinitionsOptions.cs +++ b/EOSSDK/Generated/Leaderboards/QueryLeaderboardDefinitionsOptions.cs @@ -19,6 +19,13 @@ public class QueryLeaderboardDefinitionsOptions /// An optional POSIX timestamp for the leaderboard's end time, or /// public System.DateTimeOffset? EndTime { get; set; } + + /// + /// Product User ID for user who is querying definitions. + /// Must be set when using a client policy that requires a valid logged in user. + /// Not used for Dedicated Server where no user is available. + /// + public ProductUserId LocalUserId { get; set; } } [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] @@ -27,6 +34,7 @@ internal struct QueryLeaderboardDefinitionsOptionsInternal : ISettable, System.I private int m_ApiVersion; private long m_StartTime; private long m_EndTime; + private System.IntPtr m_LocalUserId; public System.DateTimeOffset? StartTime { @@ -44,6 +52,14 @@ public System.DateTimeOffset? EndTime } } + public ProductUserId LocalUserId + { + set + { + Helper.TryMarshalSet(ref m_LocalUserId, value); + } + } + public void Set(QueryLeaderboardDefinitionsOptions other) { if (other != null) @@ -51,6 +67,7 @@ public void Set(QueryLeaderboardDefinitionsOptions other) m_ApiVersion = LeaderboardsInterface.QueryleaderboarddefinitionsApiLatest; StartTime = other.StartTime; EndTime = other.EndTime; + LocalUserId = other.LocalUserId; } } @@ -61,6 +78,7 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_LocalUserId); } } } \ No newline at end of file diff --git a/EOSSDK/Generated/Leaderboards/QueryLeaderboardRanksOptions.cs b/EOSSDK/Generated/Leaderboards/QueryLeaderboardRanksOptions.cs index 3d62bb61..2f72ff52 100644 --- a/EOSSDK/Generated/Leaderboards/QueryLeaderboardRanksOptions.cs +++ b/EOSSDK/Generated/Leaderboards/QueryLeaderboardRanksOptions.cs @@ -13,6 +13,13 @@ public class QueryLeaderboardRanksOptions /// The ID of the leaderboard whose information you want to retrieve. /// public string LeaderboardId { get; set; } + + /// + /// Product User ID for user who is querying ranks. + /// Must be set when using a client policy that requires a valid logged in user. + /// Not used for Dedicated Server where no user is available. + /// + public ProductUserId LocalUserId { get; set; } } [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] @@ -20,6 +27,7 @@ internal struct QueryLeaderboardRanksOptionsInternal : ISettable, System.IDispos { private int m_ApiVersion; private System.IntPtr m_LeaderboardId; + private System.IntPtr m_LocalUserId; public string LeaderboardId { @@ -29,12 +37,21 @@ public string LeaderboardId } } + public ProductUserId LocalUserId + { + set + { + Helper.TryMarshalSet(ref m_LocalUserId, value); + } + } + public void Set(QueryLeaderboardRanksOptions other) { if (other != null) { m_ApiVersion = LeaderboardsInterface.QueryleaderboardranksApiLatest; LeaderboardId = other.LeaderboardId; + LocalUserId = other.LocalUserId; } } @@ -46,6 +63,7 @@ public void Set(object other) public void Dispose() { Helper.TryMarshalDispose(ref m_LeaderboardId); + Helper.TryMarshalDispose(ref m_LocalUserId); } } } \ No newline at end of file diff --git a/EOSSDK/Generated/Leaderboards/QueryLeaderboardUserScoresOptions.cs b/EOSSDK/Generated/Leaderboards/QueryLeaderboardUserScoresOptions.cs index b6079bb5..7de6de3b 100644 --- a/EOSSDK/Generated/Leaderboards/QueryLeaderboardUserScoresOptions.cs +++ b/EOSSDK/Generated/Leaderboards/QueryLeaderboardUserScoresOptions.cs @@ -27,6 +27,13 @@ public class QueryLeaderboardUserScoresOptions /// An optional POSIX timestamp, or ; results will only include scores made before this time /// public System.DateTimeOffset? EndTime { get; set; } + + /// + /// Product User ID for user who is querying user scores. + /// Must be set when using a client policy that requires a valid logged in user. + /// Not used for Dedicated Server where no user is available. + /// + public ProductUserId LocalUserId { get; set; } } [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] @@ -39,6 +46,7 @@ internal struct QueryLeaderboardUserScoresOptionsInternal : ISettable, System.ID private uint m_StatInfoCount; private long m_StartTime; private long m_EndTime; + private System.IntPtr m_LocalUserId; public ProductUserId[] UserIds { @@ -72,6 +80,14 @@ public System.DateTimeOffset? EndTime } } + public ProductUserId LocalUserId + { + set + { + Helper.TryMarshalSet(ref m_LocalUserId, value); + } + } + public void Set(QueryLeaderboardUserScoresOptions other) { if (other != null) @@ -81,6 +97,7 @@ public void Set(QueryLeaderboardUserScoresOptions other) StatInfo = other.StatInfo; StartTime = other.StartTime; EndTime = other.EndTime; + LocalUserId = other.LocalUserId; } } @@ -93,6 +110,7 @@ public void Dispose() { Helper.TryMarshalDispose(ref m_UserIds); Helper.TryMarshalDispose(ref m_StatInfo); + Helper.TryMarshalDispose(ref m_LocalUserId); } } } \ No newline at end of file diff --git a/EOSSDK/Generated/Lobby/AddNotifyRTCRoomConnectionChangedOptions.cs b/EOSSDK/Generated/Lobby/AddNotifyRTCRoomConnectionChangedOptions.cs new file mode 100644 index 00000000..58c0396f --- /dev/null +++ b/EOSSDK/Generated/Lobby/AddNotifyRTCRoomConnectionChangedOptions.cs @@ -0,0 +1,66 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.Lobby +{ + /// + /// Input parameters for the function. + /// + public class AddNotifyRTCRoomConnectionChangedOptions + { + /// + /// The ID of the lobby to receive RTC Room connection change notifications for + /// + public string LobbyId { get; set; } + + /// + /// The Product User ID of the local user in the lobby + /// + public ProductUserId LocalUserId { get; set; } + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct AddNotifyRTCRoomConnectionChangedOptionsInternal : ISettable, System.IDisposable + { + private int m_ApiVersion; + private System.IntPtr m_LobbyId; + private System.IntPtr m_LocalUserId; + + public string LobbyId + { + set + { + Helper.TryMarshalSet(ref m_LobbyId, value); + } + } + + public ProductUserId LocalUserId + { + set + { + Helper.TryMarshalSet(ref m_LocalUserId, value); + } + } + + public void Set(AddNotifyRTCRoomConnectionChangedOptions other) + { + if (other != null) + { + m_ApiVersion = LobbyInterface.AddnotifyrtcroomconnectionchangedApiLatest; + LobbyId = other.LobbyId; + LocalUserId = other.LocalUserId; + } + } + + public void Set(object other) + { + Set(other as AddNotifyRTCRoomConnectionChangedOptions); + } + + public void Dispose() + { + Helper.TryMarshalDispose(ref m_LobbyId); + Helper.TryMarshalDispose(ref m_LocalUserId); + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/Lobby/AddNotifyRTCRoomConnectionChangedOptions.cs.meta b/EOSSDK/Generated/Lobby/AddNotifyRTCRoomConnectionChangedOptions.cs.meta new file mode 100644 index 00000000..350aed1e --- /dev/null +++ b/EOSSDK/Generated/Lobby/AddNotifyRTCRoomConnectionChangedOptions.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: e35b44ebe6f918b419a6dbd5d3a7a424 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/Lobby/AttributeDataValue.cs b/EOSSDK/Generated/Lobby/AttributeDataValue.cs index 31722fda..28b91846 100644 --- a/EOSSDK/Generated/Lobby/AttributeDataValue.cs +++ b/EOSSDK/Generated/Lobby/AttributeDataValue.cs @@ -99,17 +99,17 @@ private set } } - public static implicit operator AttributeDataValue(long? value) + public static implicit operator AttributeDataValue(long value) { return new AttributeDataValue() { AsInt64 = value }; } - public static implicit operator AttributeDataValue(double? value) + public static implicit operator AttributeDataValue(double value) { return new AttributeDataValue() { AsDouble = value }; } - public static implicit operator AttributeDataValue(bool? value) + public static implicit operator AttributeDataValue(bool value) { return new AttributeDataValue() { AsBool = value }; } diff --git a/EOSSDK/Generated/Lobby/CopyLobbyDetailsHandleByUiEventIdOptions.cs b/EOSSDK/Generated/Lobby/CopyLobbyDetailsHandleByUiEventIdOptions.cs index 90b1ab95..bad99031 100644 --- a/EOSSDK/Generated/Lobby/CopyLobbyDetailsHandleByUiEventIdOptions.cs +++ b/EOSSDK/Generated/Lobby/CopyLobbyDetailsHandleByUiEventIdOptions.cs @@ -9,7 +9,7 @@ namespace Epic.OnlineServices.Lobby public class CopyLobbyDetailsHandleByUiEventIdOptions { /// - /// UI Event associated with the session + /// UI Event associated with the lobby /// public ulong UiEventId { get; set; } } diff --git a/EOSSDK/Generated/Lobby/CopyLobbyDetailsHandleOptions.cs b/EOSSDK/Generated/Lobby/CopyLobbyDetailsHandleOptions.cs index 198cbdee..68e3d037 100644 --- a/EOSSDK/Generated/Lobby/CopyLobbyDetailsHandleOptions.cs +++ b/EOSSDK/Generated/Lobby/CopyLobbyDetailsHandleOptions.cs @@ -59,6 +59,8 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_LobbyId); + Helper.TryMarshalDispose(ref m_LocalUserId); } } } \ No newline at end of file diff --git a/EOSSDK/Generated/Lobby/CreateLobbyOptions.cs b/EOSSDK/Generated/Lobby/CreateLobbyOptions.cs index ce9ce485..9005afcf 100644 --- a/EOSSDK/Generated/Lobby/CreateLobbyOptions.cs +++ b/EOSSDK/Generated/Lobby/CreateLobbyOptions.cs @@ -24,6 +24,7 @@ public class CreateLobbyOptions public LobbyPermissionLevel PermissionLevel { get; set; } /// + /// If true, this lobby will be associated with presence information. A user's presence can only be associated with one lobby at a time. /// This affects the ability of the Social Overlay to show game related actions to take in the user's social graph. /// /// @note The Social Overlay can handle only one of the following three options at a time: @@ -36,6 +37,45 @@ public class CreateLobbyOptions /// /// public bool PresenceEnabled { get; set; } + + /// + /// Are members of the lobby allowed to invite others + /// + public bool AllowInvites { get; set; } + + /// + /// Bucket ID associated with the lobby + /// + public string BucketId { get; set; } + + /// + /// Is host migration allowed (will the lobby stay open if the original host leaves?) + /// NOTE: is still allowed regardless of this setting + /// + public bool DisableHostMigration { get; set; } + + /// + /// Creates a real-time communication (RTC) room for all members of this lobby. All members of the lobby will automatically join the RTC + /// room when they connect to the lobby and they will automatically leave the RTC room when they leave or are removed from the lobby. + /// While the joining and leaving of the RTC room is automatic, applications will still need to use the EOS RTC interfaces to handle all + /// other functionality for the room. + /// + /// + /// + public bool EnableRTCRoom { get; set; } + + /// + /// (Optional) Allows the local application to set local audio options for the RTC Room if it is enabled. Set this to NULL if the RTC + /// RTC room is disabled or you would like to use the defaults. + /// + public LocalRTCOptions LocalRTCOptions { get; set; } + + /// + /// (Optional) Set to a globally unique value to override the backend assignment + /// If not specified the backend service will assign one to the lobby. Do not mix and match override and non override settings. + /// This value can be of size [, ] + /// + public string LobbyId { get; set; } } [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] @@ -46,6 +86,12 @@ internal struct CreateLobbyOptionsInternal : ISettable, System.IDisposable private uint m_MaxLobbyMembers; private LobbyPermissionLevel m_PermissionLevel; private int m_PresenceEnabled; + private int m_AllowInvites; + private System.IntPtr m_BucketId; + private int m_DisableHostMigration; + private int m_EnableRTCRoom; + private System.IntPtr m_LocalRTCOptions; + private System.IntPtr m_LobbyId; public ProductUserId LocalUserId { @@ -79,6 +125,54 @@ public bool PresenceEnabled } } + public bool AllowInvites + { + set + { + Helper.TryMarshalSet(ref m_AllowInvites, value); + } + } + + public string BucketId + { + set + { + Helper.TryMarshalSet(ref m_BucketId, value); + } + } + + public bool DisableHostMigration + { + set + { + Helper.TryMarshalSet(ref m_DisableHostMigration, value); + } + } + + public bool EnableRTCRoom + { + set + { + Helper.TryMarshalSet(ref m_EnableRTCRoom, value); + } + } + + public LocalRTCOptions LocalRTCOptions + { + set + { + Helper.TryMarshalSet(ref m_LocalRTCOptions, value); + } + } + + public string LobbyId + { + set + { + Helper.TryMarshalSet(ref m_LobbyId, value); + } + } + public void Set(CreateLobbyOptions other) { if (other != null) @@ -88,6 +182,12 @@ public void Set(CreateLobbyOptions other) MaxLobbyMembers = other.MaxLobbyMembers; PermissionLevel = other.PermissionLevel; PresenceEnabled = other.PresenceEnabled; + AllowInvites = other.AllowInvites; + BucketId = other.BucketId; + DisableHostMigration = other.DisableHostMigration; + EnableRTCRoom = other.EnableRTCRoom; + LocalRTCOptions = other.LocalRTCOptions; + LobbyId = other.LobbyId; } } @@ -98,6 +198,10 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_LocalUserId); + Helper.TryMarshalDispose(ref m_BucketId); + Helper.TryMarshalDispose(ref m_LocalRTCOptions); + Helper.TryMarshalDispose(ref m_LobbyId); } } } \ No newline at end of file diff --git a/EOSSDK/Generated/Lobby/DestroyLobbyOptions.cs b/EOSSDK/Generated/Lobby/DestroyLobbyOptions.cs index 9989e0f2..f47f2b16 100644 --- a/EOSSDK/Generated/Lobby/DestroyLobbyOptions.cs +++ b/EOSSDK/Generated/Lobby/DestroyLobbyOptions.cs @@ -59,6 +59,8 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_LocalUserId); + Helper.TryMarshalDispose(ref m_LobbyId); } } } \ No newline at end of file diff --git a/EOSSDK/Generated/Lobby/GetInviteCountOptions.cs b/EOSSDK/Generated/Lobby/GetInviteCountOptions.cs index 36bc65a6..5b5c6ab9 100644 --- a/EOSSDK/Generated/Lobby/GetInviteCountOptions.cs +++ b/EOSSDK/Generated/Lobby/GetInviteCountOptions.cs @@ -44,6 +44,7 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_LocalUserId); } } } \ No newline at end of file diff --git a/EOSSDK/Generated/Lobby/GetInviteIdByIndexOptions.cs b/EOSSDK/Generated/Lobby/GetInviteIdByIndexOptions.cs index f1b5bfc9..ae281d39 100644 --- a/EOSSDK/Generated/Lobby/GetInviteIdByIndexOptions.cs +++ b/EOSSDK/Generated/Lobby/GetInviteIdByIndexOptions.cs @@ -59,6 +59,7 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_LocalUserId); } } } \ No newline at end of file diff --git a/EOSSDK/Generated/Lobby/GetRTCRoomNameOptions.cs b/EOSSDK/Generated/Lobby/GetRTCRoomNameOptions.cs new file mode 100644 index 00000000..73387e2c --- /dev/null +++ b/EOSSDK/Generated/Lobby/GetRTCRoomNameOptions.cs @@ -0,0 +1,66 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.Lobby +{ + /// + /// Input parameters for the function. + /// + public class GetRTCRoomNameOptions + { + /// + /// The ID of the lobby to get the RTC Room name for + /// + public string LobbyId { get; set; } + + /// + /// The Product User ID of the local user in the lobby + /// + public ProductUserId LocalUserId { get; set; } + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct GetRTCRoomNameOptionsInternal : ISettable, System.IDisposable + { + private int m_ApiVersion; + private System.IntPtr m_LobbyId; + private System.IntPtr m_LocalUserId; + + public string LobbyId + { + set + { + Helper.TryMarshalSet(ref m_LobbyId, value); + } + } + + public ProductUserId LocalUserId + { + set + { + Helper.TryMarshalSet(ref m_LocalUserId, value); + } + } + + public void Set(GetRTCRoomNameOptions other) + { + if (other != null) + { + m_ApiVersion = LobbyInterface.GetrtcroomnameApiLatest; + LobbyId = other.LobbyId; + LocalUserId = other.LocalUserId; + } + } + + public void Set(object other) + { + Set(other as GetRTCRoomNameOptions); + } + + public void Dispose() + { + Helper.TryMarshalDispose(ref m_LobbyId); + Helper.TryMarshalDispose(ref m_LocalUserId); + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/Lobby/GetRTCRoomNameOptions.cs.meta b/EOSSDK/Generated/Lobby/GetRTCRoomNameOptions.cs.meta new file mode 100644 index 00000000..cd594197 --- /dev/null +++ b/EOSSDK/Generated/Lobby/GetRTCRoomNameOptions.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 4b5c5d44cec49494e99f119ba77e68de +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/Lobby/IsRTCRoomConnectedOptions.cs b/EOSSDK/Generated/Lobby/IsRTCRoomConnectedOptions.cs new file mode 100644 index 00000000..57db2833 --- /dev/null +++ b/EOSSDK/Generated/Lobby/IsRTCRoomConnectedOptions.cs @@ -0,0 +1,63 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.Lobby +{ + public class IsRTCRoomConnectedOptions + { + /// + /// The ID of the lobby to get the RTC Room name for + /// + public string LobbyId { get; set; } + + /// + /// The Product User ID of the local user in the lobby + /// + public ProductUserId LocalUserId { get; set; } + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct IsRTCRoomConnectedOptionsInternal : ISettable, System.IDisposable + { + private int m_ApiVersion; + private System.IntPtr m_LobbyId; + private System.IntPtr m_LocalUserId; + + public string LobbyId + { + set + { + Helper.TryMarshalSet(ref m_LobbyId, value); + } + } + + public ProductUserId LocalUserId + { + set + { + Helper.TryMarshalSet(ref m_LocalUserId, value); + } + } + + public void Set(IsRTCRoomConnectedOptions other) + { + if (other != null) + { + m_ApiVersion = LobbyInterface.IsrtcroomconnectedApiLatest; + LobbyId = other.LobbyId; + LocalUserId = other.LocalUserId; + } + } + + public void Set(object other) + { + Set(other as IsRTCRoomConnectedOptions); + } + + public void Dispose() + { + Helper.TryMarshalDispose(ref m_LobbyId); + Helper.TryMarshalDispose(ref m_LocalUserId); + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/Lobby/IsRTCRoomConnectedOptions.cs.meta b/EOSSDK/Generated/Lobby/IsRTCRoomConnectedOptions.cs.meta new file mode 100644 index 00000000..5ee1bb74 --- /dev/null +++ b/EOSSDK/Generated/Lobby/IsRTCRoomConnectedOptions.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 4327a6bcef5a7724092fc7dd7ac70cc5 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/Lobby/JoinLobbyOptions.cs b/EOSSDK/Generated/Lobby/JoinLobbyOptions.cs index c1719cc3..3c5d6ce1 100644 --- a/EOSSDK/Generated/Lobby/JoinLobbyOptions.cs +++ b/EOSSDK/Generated/Lobby/JoinLobbyOptions.cs @@ -19,6 +19,7 @@ public class JoinLobbyOptions public ProductUserId LocalUserId { get; set; } /// + /// If true, this lobby will be associated with the user's presence information. A user can only associate one lobby at a time with their presence information. /// This affects the ability of the Social Overlay to show game related actions to take in the user's social graph. /// /// @note The Social Overlay can handle only one of the following three options at a time: @@ -32,6 +33,13 @@ public class JoinLobbyOptions /// /// public bool PresenceEnabled { get; set; } + + /// + /// (Optional) Set this value to override the default local options for the RTC Room, if it is enabled for this lobby. Set this to NULL if + /// your application does not use the Lobby RTC Rooms feature, or if you would like to use the default settings. This option is ignored if + /// the specified lobby does not have an RTC Room enabled and will not cause errors. + /// + public LocalRTCOptions LocalRTCOptions { get; set; } } [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] @@ -41,6 +49,7 @@ internal struct JoinLobbyOptionsInternal : ISettable, System.IDisposable private System.IntPtr m_LobbyDetailsHandle; private System.IntPtr m_LocalUserId; private int m_PresenceEnabled; + private System.IntPtr m_LocalRTCOptions; public LobbyDetails LobbyDetailsHandle { @@ -66,6 +75,14 @@ public bool PresenceEnabled } } + public LocalRTCOptions LocalRTCOptions + { + set + { + Helper.TryMarshalSet(ref m_LocalRTCOptions, value); + } + } + public void Set(JoinLobbyOptions other) { if (other != null) @@ -74,6 +91,7 @@ public void Set(JoinLobbyOptions other) LobbyDetailsHandle = other.LobbyDetailsHandle; LocalUserId = other.LocalUserId; PresenceEnabled = other.PresenceEnabled; + LocalRTCOptions = other.LocalRTCOptions; } } @@ -84,6 +102,9 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_LobbyDetailsHandle); + Helper.TryMarshalDispose(ref m_LocalUserId); + Helper.TryMarshalDispose(ref m_LocalRTCOptions); } } } \ No newline at end of file diff --git a/EOSSDK/Generated/Lobby/KickMemberOptions.cs b/EOSSDK/Generated/Lobby/KickMemberOptions.cs index 3af6b010..12d2a150 100644 --- a/EOSSDK/Generated/Lobby/KickMemberOptions.cs +++ b/EOSSDK/Generated/Lobby/KickMemberOptions.cs @@ -74,6 +74,9 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_LobbyId); + Helper.TryMarshalDispose(ref m_LocalUserId); + Helper.TryMarshalDispose(ref m_TargetUserId); } } } \ No newline at end of file diff --git a/EOSSDK/Generated/Lobby/LeaveLobbyOptions.cs b/EOSSDK/Generated/Lobby/LeaveLobbyOptions.cs index 6d371dc1..43113b3b 100644 --- a/EOSSDK/Generated/Lobby/LeaveLobbyOptions.cs +++ b/EOSSDK/Generated/Lobby/LeaveLobbyOptions.cs @@ -59,6 +59,8 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_LocalUserId); + Helper.TryMarshalDispose(ref m_LobbyId); } } } \ No newline at end of file diff --git a/EOSSDK/Generated/Lobby/LobbyDetails.cs b/EOSSDK/Generated/Lobby/LobbyDetails.cs index daca3698..dabfdd0e 100644 --- a/EOSSDK/Generated/Lobby/LobbyDetails.cs +++ b/EOSSDK/Generated/Lobby/LobbyDetails.cs @@ -3,7 +3,7 @@ namespace Epic.OnlineServices.Lobby { - public sealed class LobbyDetails : Handle + public sealed partial class LobbyDetails : Handle { public LobbyDetails() { @@ -81,18 +81,18 @@ public LobbyDetails(System.IntPtr innerHandle) : base(innerHandle) /// public Result CopyAttributeByIndex(LobbyDetailsCopyAttributeByIndexOptions options, out Attribute outAttribute) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var outAttributeAddress = System.IntPtr.Zero; - var funcResult = EOS_LobbyDetails_CopyAttributeByIndex(InnerHandle, optionsAddress, ref outAttributeAddress); + var funcResult = Bindings.EOS_LobbyDetails_CopyAttributeByIndex(InnerHandle, optionsAddress, ref outAttributeAddress); Helper.TryMarshalDispose(ref optionsAddress); if (Helper.TryMarshalGet(outAttributeAddress, out outAttribute)) { - LobbyInterface.EOS_Lobby_Attribute_Release(outAttributeAddress); + Bindings.EOS_Lobby_Attribute_Release(outAttributeAddress); } return funcResult; @@ -114,18 +114,18 @@ public Result CopyAttributeByIndex(LobbyDetailsCopyAttributeByIndexOptions optio /// public Result CopyAttributeByKey(LobbyDetailsCopyAttributeByKeyOptions options, out Attribute outAttribute) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var outAttributeAddress = System.IntPtr.Zero; - var funcResult = EOS_LobbyDetails_CopyAttributeByKey(InnerHandle, optionsAddress, ref outAttributeAddress); + var funcResult = Bindings.EOS_LobbyDetails_CopyAttributeByKey(InnerHandle, optionsAddress, ref outAttributeAddress); Helper.TryMarshalDispose(ref optionsAddress); if (Helper.TryMarshalGet(outAttributeAddress, out outAttribute)) { - LobbyInterface.EOS_Lobby_Attribute_Release(outAttributeAddress); + Bindings.EOS_Lobby_Attribute_Release(outAttributeAddress); } return funcResult; @@ -147,18 +147,18 @@ public Result CopyAttributeByKey(LobbyDetailsCopyAttributeByKeyOptions options, /// public Result CopyInfo(LobbyDetailsCopyInfoOptions options, out LobbyDetailsInfo outLobbyDetailsInfo) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var outLobbyDetailsInfoAddress = System.IntPtr.Zero; - var funcResult = EOS_LobbyDetails_CopyInfo(InnerHandle, optionsAddress, ref outLobbyDetailsInfoAddress); + var funcResult = Bindings.EOS_LobbyDetails_CopyInfo(InnerHandle, optionsAddress, ref outLobbyDetailsInfoAddress); Helper.TryMarshalDispose(ref optionsAddress); if (Helper.TryMarshalGet(outLobbyDetailsInfoAddress, out outLobbyDetailsInfo)) { - EOS_LobbyDetails_Info_Release(outLobbyDetailsInfoAddress); + Bindings.EOS_LobbyDetails_Info_Release(outLobbyDetailsInfoAddress); } return funcResult; @@ -180,18 +180,18 @@ public Result CopyInfo(LobbyDetailsCopyInfoOptions options, out LobbyDetailsInfo /// public Result CopyMemberAttributeByIndex(LobbyDetailsCopyMemberAttributeByIndexOptions options, out Attribute outAttribute) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var outAttributeAddress = System.IntPtr.Zero; - var funcResult = EOS_LobbyDetails_CopyMemberAttributeByIndex(InnerHandle, optionsAddress, ref outAttributeAddress); + var funcResult = Bindings.EOS_LobbyDetails_CopyMemberAttributeByIndex(InnerHandle, optionsAddress, ref outAttributeAddress); Helper.TryMarshalDispose(ref optionsAddress); if (Helper.TryMarshalGet(outAttributeAddress, out outAttribute)) { - LobbyInterface.EOS_Lobby_Attribute_Release(outAttributeAddress); + Bindings.EOS_Lobby_Attribute_Release(outAttributeAddress); } return funcResult; @@ -213,18 +213,18 @@ public Result CopyMemberAttributeByIndex(LobbyDetailsCopyMemberAttributeByIndexO /// public Result CopyMemberAttributeByKey(LobbyDetailsCopyMemberAttributeByKeyOptions options, out Attribute outAttribute) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var outAttributeAddress = System.IntPtr.Zero; - var funcResult = EOS_LobbyDetails_CopyMemberAttributeByKey(InnerHandle, optionsAddress, ref outAttributeAddress); + var funcResult = Bindings.EOS_LobbyDetails_CopyMemberAttributeByKey(InnerHandle, optionsAddress, ref outAttributeAddress); Helper.TryMarshalDispose(ref optionsAddress); if (Helper.TryMarshalGet(outAttributeAddress, out outAttribute)) { - LobbyInterface.EOS_Lobby_Attribute_Release(outAttributeAddress); + Bindings.EOS_Lobby_Attribute_Release(outAttributeAddress); } return funcResult; @@ -239,10 +239,10 @@ public Result CopyMemberAttributeByKey(LobbyDetailsCopyMemberAttributeByKeyOptio /// public uint GetAttributeCount(LobbyDetailsGetAttributeCountOptions options) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); - var funcResult = EOS_LobbyDetails_GetAttributeCount(InnerHandle, optionsAddress); + var funcResult = Bindings.EOS_LobbyDetails_GetAttributeCount(InnerHandle, optionsAddress); Helper.TryMarshalDispose(ref optionsAddress); @@ -258,10 +258,10 @@ public uint GetAttributeCount(LobbyDetailsGetAttributeCountOptions options) /// public ProductUserId GetLobbyOwner(LobbyDetailsGetLobbyOwnerOptions options) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); - var funcResult = EOS_LobbyDetails_GetLobbyOwner(InnerHandle, optionsAddress); + var funcResult = Bindings.EOS_LobbyDetails_GetLobbyOwner(InnerHandle, optionsAddress); Helper.TryMarshalDispose(ref optionsAddress); @@ -281,10 +281,10 @@ public ProductUserId GetLobbyOwner(LobbyDetailsGetLobbyOwnerOptions options) /// public uint GetMemberAttributeCount(LobbyDetailsGetMemberAttributeCountOptions options) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); - var funcResult = EOS_LobbyDetails_GetMemberAttributeCount(InnerHandle, optionsAddress); + var funcResult = Bindings.EOS_LobbyDetails_GetMemberAttributeCount(InnerHandle, optionsAddress); Helper.TryMarshalDispose(ref optionsAddress); @@ -302,10 +302,10 @@ public uint GetMemberAttributeCount(LobbyDetailsGetMemberAttributeCountOptions o /// public ProductUserId GetMemberByIndex(LobbyDetailsGetMemberByIndexOptions options) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); - var funcResult = EOS_LobbyDetails_GetMemberByIndex(InnerHandle, optionsAddress); + var funcResult = Bindings.EOS_LobbyDetails_GetMemberByIndex(InnerHandle, optionsAddress); Helper.TryMarshalDispose(ref optionsAddress); @@ -323,10 +323,10 @@ public ProductUserId GetMemberByIndex(LobbyDetailsGetMemberByIndexOptions option /// public uint GetMemberCount(LobbyDetailsGetMemberCountOptions options) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); - var funcResult = EOS_LobbyDetails_GetMemberCount(InnerHandle, optionsAddress); + var funcResult = Bindings.EOS_LobbyDetails_GetMemberCount(InnerHandle, optionsAddress); Helper.TryMarshalDispose(ref optionsAddress); @@ -340,43 +340,7 @@ public uint GetMemberCount(LobbyDetailsGetMemberCountOptions options) /// - The lobby handle to release public void Release() { - EOS_LobbyDetails_Release(InnerHandle); + Bindings.EOS_LobbyDetails_Release(InnerHandle); } - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_LobbyDetails_CopyAttributeByIndex(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outAttribute); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_LobbyDetails_CopyAttributeByKey(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outAttribute); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_LobbyDetails_CopyInfo(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outLobbyDetailsInfo); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_LobbyDetails_CopyMemberAttributeByIndex(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outAttribute); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_LobbyDetails_CopyMemberAttributeByKey(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outAttribute); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern uint EOS_LobbyDetails_GetAttributeCount(System.IntPtr handle, System.IntPtr options); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern System.IntPtr EOS_LobbyDetails_GetLobbyOwner(System.IntPtr handle, System.IntPtr options); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern uint EOS_LobbyDetails_GetMemberAttributeCount(System.IntPtr handle, System.IntPtr options); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern System.IntPtr EOS_LobbyDetails_GetMemberByIndex(System.IntPtr handle, System.IntPtr options); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern uint EOS_LobbyDetails_GetMemberCount(System.IntPtr handle, System.IntPtr options); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern void EOS_LobbyDetails_Release(System.IntPtr lobbyHandle); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern void EOS_LobbyDetails_Info_Release(System.IntPtr lobbyDetailsInfo); } } \ No newline at end of file diff --git a/EOSSDK/Generated/Lobby/LobbyDetailsCopyMemberAttributeByIndexOptions.cs b/EOSSDK/Generated/Lobby/LobbyDetailsCopyMemberAttributeByIndexOptions.cs index 8d928799..de2481fe 100644 --- a/EOSSDK/Generated/Lobby/LobbyDetailsCopyMemberAttributeByIndexOptions.cs +++ b/EOSSDK/Generated/Lobby/LobbyDetailsCopyMemberAttributeByIndexOptions.cs @@ -59,6 +59,7 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_TargetUserId); } } } \ No newline at end of file diff --git a/EOSSDK/Generated/Lobby/LobbyDetailsCopyMemberAttributeByKeyOptions.cs b/EOSSDK/Generated/Lobby/LobbyDetailsCopyMemberAttributeByKeyOptions.cs index b0671cad..d59dad1b 100644 --- a/EOSSDK/Generated/Lobby/LobbyDetailsCopyMemberAttributeByKeyOptions.cs +++ b/EOSSDK/Generated/Lobby/LobbyDetailsCopyMemberAttributeByKeyOptions.cs @@ -59,6 +59,7 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_TargetUserId); Helper.TryMarshalDispose(ref m_AttrKey); } } diff --git a/EOSSDK/Generated/Lobby/LobbyDetailsGetMemberAttributeCountOptions.cs b/EOSSDK/Generated/Lobby/LobbyDetailsGetMemberAttributeCountOptions.cs index 3f9ec56f..01c57c36 100644 --- a/EOSSDK/Generated/Lobby/LobbyDetailsGetMemberAttributeCountOptions.cs +++ b/EOSSDK/Generated/Lobby/LobbyDetailsGetMemberAttributeCountOptions.cs @@ -44,6 +44,7 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_TargetUserId); } } } \ No newline at end of file diff --git a/EOSSDK/Generated/Lobby/LobbyDetailsInfo.cs b/EOSSDK/Generated/Lobby/LobbyDetailsInfo.cs index 260c4aa6..8f228897 100644 --- a/EOSSDK/Generated/Lobby/LobbyDetailsInfo.cs +++ b/EOSSDK/Generated/Lobby/LobbyDetailsInfo.cs @@ -35,6 +35,21 @@ public class LobbyDetailsInfo : ISettable /// public bool AllowInvites { get; set; } + /// + /// The main indexed parameter for this lobby, can be any string (ie "Region:GameMode") + /// + public string BucketId { get; set; } + + /// + /// Is host migration allowed + /// + public bool AllowHostMigration { get; set; } + + /// + /// Was a Real-Time Communication (RTC) room enabled at lobby creation? + /// + public bool RTCRoomEnabled { get; set; } + internal void Set(LobbyDetailsInfoInternal? other) { if (other != null) @@ -45,6 +60,9 @@ internal void Set(LobbyDetailsInfoInternal? other) AvailableSlots = other.Value.AvailableSlots; MaxMembers = other.Value.MaxMembers; AllowInvites = other.Value.AllowInvites; + BucketId = other.Value.BucketId; + AllowHostMigration = other.Value.AllowHostMigration; + RTCRoomEnabled = other.Value.RTCRoomEnabled; } } @@ -64,6 +82,9 @@ internal struct LobbyDetailsInfoInternal : ISettable, System.IDisposable private uint m_AvailableSlots; private uint m_MaxMembers; private int m_AllowInvites; + private System.IntPtr m_BucketId; + private int m_AllowHostMigration; + private int m_RTCRoomEnabled; public string LobbyId { @@ -149,6 +170,51 @@ public bool AllowInvites } } + public string BucketId + { + get + { + string value; + Helper.TryMarshalGet(m_BucketId, out value); + return value; + } + + set + { + Helper.TryMarshalSet(ref m_BucketId, value); + } + } + + public bool AllowHostMigration + { + get + { + bool value; + Helper.TryMarshalGet(m_AllowHostMigration, out value); + return value; + } + + set + { + Helper.TryMarshalSet(ref m_AllowHostMigration, value); + } + } + + public bool RTCRoomEnabled + { + get + { + bool value; + Helper.TryMarshalGet(m_RTCRoomEnabled, out value); + return value; + } + + set + { + Helper.TryMarshalSet(ref m_RTCRoomEnabled, value); + } + } + public void Set(LobbyDetailsInfo other) { if (other != null) @@ -160,6 +226,9 @@ public void Set(LobbyDetailsInfo other) AvailableSlots = other.AvailableSlots; MaxMembers = other.MaxMembers; AllowInvites = other.AllowInvites; + BucketId = other.BucketId; + AllowHostMigration = other.AllowHostMigration; + RTCRoomEnabled = other.RTCRoomEnabled; } } @@ -170,6 +239,9 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_LobbyId); + Helper.TryMarshalDispose(ref m_LobbyOwnerUserId); + Helper.TryMarshalDispose(ref m_BucketId); } } } \ No newline at end of file diff --git a/EOSSDK/Generated/Lobby/LobbyInterface.cs b/EOSSDK/Generated/Lobby/LobbyInterface.cs index 550423dc..cc93b386 100644 --- a/EOSSDK/Generated/Lobby/LobbyInterface.cs +++ b/EOSSDK/Generated/Lobby/LobbyInterface.cs @@ -3,7 +3,7 @@ namespace Epic.OnlineServices.Lobby { - public sealed class LobbyInterface : Handle + public sealed partial class LobbyInterface : Handle { public LobbyInterface() { @@ -43,6 +43,11 @@ public LobbyInterface(System.IntPtr innerHandle) : base(innerHandle) /// public const int AddnotifylobbyupdatereceivedApiLatest = 1; + /// + /// The most recent version of the API. + /// + public const int AddnotifyrtcroomconnectionchangedApiLatest = 1; + /// /// The most recent version of the struct. /// @@ -71,7 +76,7 @@ public LobbyInterface(System.IntPtr innerHandle) : base(innerHandle) /// /// The most recent version of the API. /// - public const int CreatelobbyApiLatest = 2; + public const int CreatelobbyApiLatest = 7; /// /// The most recent version of the API. @@ -93,15 +98,25 @@ public LobbyInterface(System.IntPtr innerHandle) : base(innerHandle) /// public const int GetinviteidbyindexApiLatest = 1; + /// + /// The most recent version of the API. + /// + public const int GetrtcroomnameApiLatest = 1; + /// /// Max length of an invite ID /// public const int InviteidMaxLength = 64; + /// + /// The most recent version of the API. + /// + public const int IsrtcroomconnectedApiLatest = 1; + /// /// The most recent version of the API. /// - public const int JoinlobbyApiLatest = 2; + public const int JoinlobbyApiLatest = 3; /// /// The most recent version of the API. @@ -113,15 +128,27 @@ public LobbyInterface(System.IntPtr innerHandle) : base(innerHandle) /// public const int LeavelobbyApiLatest = 1; + public const int LocalrtcoptionsApiLatest = 1; + /// /// All lobbies are referenced by a unique lobby ID /// - public const int MaxLobbies = 4; + public const int MaxLobbies = 16; public const int MaxLobbyMembers = 64; + /// + /// Maximum number of characters allowed in the lobby id override + /// + public const int MaxLobbyidoverrideLength = 60; + public const int MaxSearchResults = 200; + /// + /// Minimum number of characters allowed in the lobby id override + /// + public const int MinLobbyidoverrideLength = 4; + /// /// The most recent version of the API. /// @@ -137,6 +164,11 @@ public LobbyInterface(System.IntPtr innerHandle) : base(innerHandle) /// public const int RejectinviteApiLatest = 1; + /// + /// Search for a matching bucket ID (value is string) + /// + public const string SearchBucketId = "bucket"; + /// /// Search for lobbies that contain at least this number of members (value is int) /// @@ -164,17 +196,17 @@ public LobbyInterface(System.IntPtr innerHandle) : base(innerHandle) /// /// Register to receive notifications about lobby join game accepted by local user via the overlay. - /// @note must call RemoveNotifyJoinLobbyAccepted to remove the notification + /// @note must call to remove the notification /// /// Structure containing information about the request. /// Arbitrary data that is passed back to you in the CompletionDelegate. - /// A callback that is fired when a a notification is received. + /// A callback that is fired when a notification is received. /// /// handle representing the registered callback /// public ulong AddNotifyJoinLobbyAccepted(AddNotifyJoinLobbyAcceptedOptions options, object clientData, OnJoinLobbyAcceptedCallback notificationFn) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var clientDataAddress = System.IntPtr.Zero; @@ -182,7 +214,7 @@ public ulong AddNotifyJoinLobbyAccepted(AddNotifyJoinLobbyAcceptedOptions option var notificationFnInternal = new OnJoinLobbyAcceptedCallbackInternal(OnJoinLobbyAcceptedCallbackInternalImplementation); Helper.AddCallback(ref clientDataAddress, clientData, notificationFn, notificationFnInternal); - var funcResult = EOS_Lobby_AddNotifyJoinLobbyAccepted(InnerHandle, optionsAddress, clientDataAddress, notificationFnInternal); + var funcResult = Bindings.EOS_Lobby_AddNotifyJoinLobbyAccepted(InnerHandle, optionsAddress, clientDataAddress, notificationFnInternal); Helper.TryMarshalDispose(ref optionsAddress); @@ -203,7 +235,7 @@ public ulong AddNotifyJoinLobbyAccepted(AddNotifyJoinLobbyAcceptedOptions option /// public ulong AddNotifyLobbyInviteAccepted(AddNotifyLobbyInviteAcceptedOptions options, object clientData, OnLobbyInviteAcceptedCallback notificationFn) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var clientDataAddress = System.IntPtr.Zero; @@ -211,7 +243,7 @@ public ulong AddNotifyLobbyInviteAccepted(AddNotifyLobbyInviteAcceptedOptions op var notificationFnInternal = new OnLobbyInviteAcceptedCallbackInternal(OnLobbyInviteAcceptedCallbackInternalImplementation); Helper.AddCallback(ref clientDataAddress, clientData, notificationFn, notificationFnInternal); - var funcResult = EOS_Lobby_AddNotifyLobbyInviteAccepted(InnerHandle, optionsAddress, clientDataAddress, notificationFnInternal); + var funcResult = Bindings.EOS_Lobby_AddNotifyLobbyInviteAccepted(InnerHandle, optionsAddress, clientDataAddress, notificationFnInternal); Helper.TryMarshalDispose(ref optionsAddress); @@ -232,7 +264,7 @@ public ulong AddNotifyLobbyInviteAccepted(AddNotifyLobbyInviteAcceptedOptions op /// public ulong AddNotifyLobbyInviteReceived(AddNotifyLobbyInviteReceivedOptions options, object clientData, OnLobbyInviteReceivedCallback notificationFn) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var clientDataAddress = System.IntPtr.Zero; @@ -240,7 +272,7 @@ public ulong AddNotifyLobbyInviteReceived(AddNotifyLobbyInviteReceivedOptions op var notificationFnInternal = new OnLobbyInviteReceivedCallbackInternal(OnLobbyInviteReceivedCallbackInternalImplementation); Helper.AddCallback(ref clientDataAddress, clientData, notificationFn, notificationFnInternal); - var funcResult = EOS_Lobby_AddNotifyLobbyInviteReceived(InnerHandle, optionsAddress, clientDataAddress, notificationFnInternal); + var funcResult = Bindings.EOS_Lobby_AddNotifyLobbyInviteReceived(InnerHandle, optionsAddress, clientDataAddress, notificationFnInternal); Helper.TryMarshalDispose(ref optionsAddress); @@ -261,7 +293,7 @@ public ulong AddNotifyLobbyInviteReceived(AddNotifyLobbyInviteReceivedOptions op /// public ulong AddNotifyLobbyMemberStatusReceived(AddNotifyLobbyMemberStatusReceivedOptions options, object clientData, OnLobbyMemberStatusReceivedCallback notificationFn) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var clientDataAddress = System.IntPtr.Zero; @@ -269,7 +301,7 @@ public ulong AddNotifyLobbyMemberStatusReceived(AddNotifyLobbyMemberStatusReceiv var notificationFnInternal = new OnLobbyMemberStatusReceivedCallbackInternal(OnLobbyMemberStatusReceivedCallbackInternalImplementation); Helper.AddCallback(ref clientDataAddress, clientData, notificationFn, notificationFnInternal); - var funcResult = EOS_Lobby_AddNotifyLobbyMemberStatusReceived(InnerHandle, optionsAddress, clientDataAddress, notificationFnInternal); + var funcResult = Bindings.EOS_Lobby_AddNotifyLobbyMemberStatusReceived(InnerHandle, optionsAddress, clientDataAddress, notificationFnInternal); Helper.TryMarshalDispose(ref optionsAddress); @@ -290,7 +322,7 @@ public ulong AddNotifyLobbyMemberStatusReceived(AddNotifyLobbyMemberStatusReceiv /// public ulong AddNotifyLobbyMemberUpdateReceived(AddNotifyLobbyMemberUpdateReceivedOptions options, object clientData, OnLobbyMemberUpdateReceivedCallback notificationFn) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var clientDataAddress = System.IntPtr.Zero; @@ -298,7 +330,7 @@ public ulong AddNotifyLobbyMemberUpdateReceived(AddNotifyLobbyMemberUpdateReceiv var notificationFnInternal = new OnLobbyMemberUpdateReceivedCallbackInternal(OnLobbyMemberUpdateReceivedCallbackInternalImplementation); Helper.AddCallback(ref clientDataAddress, clientData, notificationFn, notificationFnInternal); - var funcResult = EOS_Lobby_AddNotifyLobbyMemberUpdateReceived(InnerHandle, optionsAddress, clientDataAddress, notificationFnInternal); + var funcResult = Bindings.EOS_Lobby_AddNotifyLobbyMemberUpdateReceived(InnerHandle, optionsAddress, clientDataAddress, notificationFnInternal); Helper.TryMarshalDispose(ref optionsAddress); @@ -319,7 +351,7 @@ public ulong AddNotifyLobbyMemberUpdateReceived(AddNotifyLobbyMemberUpdateReceiv /// public ulong AddNotifyLobbyUpdateReceived(AddNotifyLobbyUpdateReceivedOptions options, object clientData, OnLobbyUpdateReceivedCallback notificationFn) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var clientDataAddress = System.IntPtr.Zero; @@ -327,7 +359,48 @@ public ulong AddNotifyLobbyUpdateReceived(AddNotifyLobbyUpdateReceivedOptions op var notificationFnInternal = new OnLobbyUpdateReceivedCallbackInternal(OnLobbyUpdateReceivedCallbackInternalImplementation); Helper.AddCallback(ref clientDataAddress, clientData, notificationFn, notificationFnInternal); - var funcResult = EOS_Lobby_AddNotifyLobbyUpdateReceived(InnerHandle, optionsAddress, clientDataAddress, notificationFnInternal); + var funcResult = Bindings.EOS_Lobby_AddNotifyLobbyUpdateReceived(InnerHandle, optionsAddress, clientDataAddress, notificationFnInternal); + + Helper.TryMarshalDispose(ref optionsAddress); + + Helper.TryAssignNotificationIdToCallback(clientDataAddress, funcResult); + + return funcResult; + } + + /// + /// Register to receive notifications of when the RTC Room for a particular lobby has a connection status change. + /// + /// The RTC Room connection status is independent of the lobby connection status, however the lobby system will attempt to keep + /// them consistent, automatically connecting to the RTC room after joining a lobby which has an associated RTC room and disconnecting + /// from the RTC room when a lobby is left or disconnected. + /// + /// This notification is entirely informational and requires no action in response by the application. If the connected status is offline + /// (bIsConnected is false), the connection will automatically attempt to reconnect. The purpose of this notification is to allow + /// applications to show the current connection status of the RTC room when the connection is not established. + /// + /// Unlike , should not be called when the RTC room is disconnected. + /// + /// This function will only succeed when called on a lobby the local user is currently a member of. + /// + /// + /// Structure containing information about the lobby to receive updates about + /// Arbitrary data that is passed back to you in the CompletionDelegate. + /// The function to call if the RTC Room's connection status changes + /// + /// A valid notification ID if the NotificationFn was successfully registered, or if the input was invalid, the lobby did not exist, or the lobby did not have an RTC room. + /// + public ulong AddNotifyRTCRoomConnectionChanged(AddNotifyRTCRoomConnectionChangedOptions options, object clientData, OnRTCRoomConnectionChangedCallback notificationFn) + { + var optionsAddress = System.IntPtr.Zero; + Helper.TryMarshalSet(ref optionsAddress, options); + + var clientDataAddress = System.IntPtr.Zero; + + var notificationFnInternal = new OnRTCRoomConnectionChangedCallbackInternal(OnRTCRoomConnectionChangedCallbackInternalImplementation); + Helper.AddCallback(ref clientDataAddress, clientData, notificationFn, notificationFnInternal); + + var funcResult = Bindings.EOS_Lobby_AddNotifyRTCRoomConnectionChanged(InnerHandle, optionsAddress, clientDataAddress, notificationFnInternal); Helper.TryMarshalDispose(ref optionsAddress); @@ -350,12 +423,12 @@ public ulong AddNotifyLobbyUpdateReceived(AddNotifyLobbyUpdateReceivedOptions op /// public Result CopyLobbyDetailsHandle(CopyLobbyDetailsHandleOptions options, out LobbyDetails outLobbyDetailsHandle) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var outLobbyDetailsHandleAddress = System.IntPtr.Zero; - var funcResult = EOS_Lobby_CopyLobbyDetailsHandle(InnerHandle, optionsAddress, ref outLobbyDetailsHandleAddress); + var funcResult = Bindings.EOS_Lobby_CopyLobbyDetailsHandle(InnerHandle, optionsAddress, ref outLobbyDetailsHandleAddress); Helper.TryMarshalDispose(ref optionsAddress); @@ -380,12 +453,12 @@ public Result CopyLobbyDetailsHandle(CopyLobbyDetailsHandleOptions options, out /// public Result CopyLobbyDetailsHandleByInviteId(CopyLobbyDetailsHandleByInviteIdOptions options, out LobbyDetails outLobbyDetailsHandle) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var outLobbyDetailsHandleAddress = System.IntPtr.Zero; - var funcResult = EOS_Lobby_CopyLobbyDetailsHandleByInviteId(InnerHandle, optionsAddress, ref outLobbyDetailsHandleAddress); + var funcResult = Bindings.EOS_Lobby_CopyLobbyDetailsHandleByInviteId(InnerHandle, optionsAddress, ref outLobbyDetailsHandleAddress); Helper.TryMarshalDispose(ref optionsAddress); @@ -410,12 +483,12 @@ public Result CopyLobbyDetailsHandleByInviteId(CopyLobbyDetailsHandleByInviteIdO /// public Result CopyLobbyDetailsHandleByUiEventId(CopyLobbyDetailsHandleByUiEventIdOptions options, out LobbyDetails outLobbyDetailsHandle) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var outLobbyDetailsHandleAddress = System.IntPtr.Zero; - var funcResult = EOS_Lobby_CopyLobbyDetailsHandleByUiEventId(InnerHandle, optionsAddress, ref outLobbyDetailsHandleAddress); + var funcResult = Bindings.EOS_Lobby_CopyLobbyDetailsHandleByUiEventId(InnerHandle, optionsAddress, ref outLobbyDetailsHandleAddress); Helper.TryMarshalDispose(ref optionsAddress); @@ -426,6 +499,11 @@ public Result CopyLobbyDetailsHandleByUiEventId(CopyLobbyDetailsHandleByUiEventI /// /// Creates a lobby and adds the user to the lobby membership. There is no data associated with the lobby at the start and can be added vis + /// + /// If the lobby is successfully created with an RTC Room enabled, the lobby system will automatically join and maintain the connection to the RTC room as long as the + /// local user remains in the lobby. Applications can use the to get the name of the RTC Room associated with a lobby, which may be used with + /// suite of functions. This can be useful to: register for notifications for talking status; to mute or unmute the local user's audio output; + /// to block or unblock room participants; to set local audio device settings; and more. /// /// Required fields for the creation of a lobby such as a user count and its starting advertised state /// Arbitrary data that is passed back to you in the CompletionDelegate @@ -437,7 +515,7 @@ public Result CopyLobbyDetailsHandleByUiEventId(CopyLobbyDetailsHandleByUiEventI /// public void CreateLobby(CreateLobbyOptions options, object clientData, OnCreateLobbyCallback completionDelegate) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var clientDataAddress = System.IntPtr.Zero; @@ -445,7 +523,7 @@ public void CreateLobby(CreateLobbyOptions options, object clientData, OnCreateL var completionDelegateInternal = new OnCreateLobbyCallbackInternal(OnCreateLobbyCallbackInternalImplementation); Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - EOS_Lobby_CreateLobby(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); + Bindings.EOS_Lobby_CreateLobby(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); Helper.TryMarshalDispose(ref optionsAddress); } @@ -465,12 +543,12 @@ public void CreateLobby(CreateLobbyOptions options, object clientData, OnCreateL /// public Result CreateLobbySearch(CreateLobbySearchOptions options, out LobbySearch outLobbySearchHandle) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var outLobbySearchHandleAddress = System.IntPtr.Zero; - var funcResult = EOS_Lobby_CreateLobbySearch(InnerHandle, optionsAddress, ref outLobbySearchHandleAddress); + var funcResult = Bindings.EOS_Lobby_CreateLobbySearch(InnerHandle, optionsAddress, ref outLobbySearchHandleAddress); Helper.TryMarshalDispose(ref optionsAddress); @@ -493,7 +571,7 @@ public Result CreateLobbySearch(CreateLobbySearchOptions options, out LobbySearc /// public void DestroyLobby(DestroyLobbyOptions options, object clientData, OnDestroyLobbyCallback completionDelegate) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var clientDataAddress = System.IntPtr.Zero; @@ -501,7 +579,7 @@ public void DestroyLobby(DestroyLobbyOptions options, object clientData, OnDestr var completionDelegateInternal = new OnDestroyLobbyCallbackInternal(OnDestroyLobbyCallbackInternalImplementation); Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - EOS_Lobby_DestroyLobby(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); + Bindings.EOS_Lobby_DestroyLobby(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); Helper.TryMarshalDispose(ref optionsAddress); } @@ -515,10 +593,10 @@ public void DestroyLobby(DestroyLobbyOptions options, object clientData, OnDestr /// public uint GetInviteCount(GetInviteCountOptions options) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); - var funcResult = EOS_Lobby_GetInviteCount(InnerHandle, optionsAddress); + var funcResult = Bindings.EOS_Lobby_GetInviteCount(InnerHandle, optionsAddress); Helper.TryMarshalDispose(ref optionsAddress); @@ -538,14 +616,14 @@ public uint GetInviteCount(GetInviteCountOptions options) /// public Result GetInviteIdByIndex(GetInviteIdByIndexOptions options, out string outBuffer) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); System.IntPtr outBufferAddress = System.IntPtr.Zero; int inOutBufferLength = InviteidMaxLength + 1; - Helper.TryMarshalAllocate(ref outBufferAddress, inOutBufferLength); + Helper.TryMarshalAllocate(ref outBufferAddress, inOutBufferLength, out _); - var funcResult = EOS_Lobby_GetInviteIdByIndex(InnerHandle, optionsAddress, outBufferAddress, ref inOutBufferLength); + var funcResult = Bindings.EOS_Lobby_GetInviteIdByIndex(InnerHandle, optionsAddress, outBufferAddress, ref inOutBufferLength); Helper.TryMarshalDispose(ref optionsAddress); @@ -555,8 +633,85 @@ public Result GetInviteIdByIndex(GetInviteIdByIndexOptions options, out string o return funcResult; } + /// + /// Get the name of the RTC room associated with a specific lobby a local user belongs to. + /// + /// suite of functions. RTC Room Names must not be used with + /// , , or . Doing so will return or + /// if used with those functions. + /// + /// This function will only succeed when called on a lobby the local user is currently a member of. + /// + /// Structure containing information about the RTC room name to retrieve + /// The buffer to store the null-terminated room name string within + /// In: The maximum amount of writable chars in OutBuffer, Out: The minimum amount of chars needed in OutBuffer to store the RTC room name (including the null-terminator) + /// + /// if a room exists for the specified lobby, there was enough space in OutBuffer, and the name was written successfully + /// if the lobby does not exist + /// if the lobby exists, but did not have the RTC Room feature enabled when created + /// if you pass a null pointer on invalid length for any of the parameters + /// The OutBuffer is not large enough to receive the room name. InOutBufferLength contains the required minimum length to perform the operation successfully. + /// + public Result GetRTCRoomName(GetRTCRoomNameOptions options, out string outBuffer) + { + var optionsAddress = System.IntPtr.Zero; + Helper.TryMarshalSet(ref optionsAddress, options); + + System.IntPtr outBufferAddress = System.IntPtr.Zero; + uint inOutBufferLength = 256; + Helper.TryMarshalAllocate(ref outBufferAddress, inOutBufferLength, out _); + + var funcResult = Bindings.EOS_Lobby_GetRTCRoomName(InnerHandle, optionsAddress, outBufferAddress, ref inOutBufferLength); + + Helper.TryMarshalDispose(ref optionsAddress); + + Helper.TryMarshalGet(outBufferAddress, out outBuffer); + Helper.TryMarshalDispose(ref outBufferAddress); + + return funcResult; + } + + /// + /// Get the current connection status of the RTC Room for a lobby. + /// + /// The RTC Room connection status is independent of the lobby connection status, however the lobby system will attempt to keep + /// them consistent, automatically connecting to the RTC room after joining a lobby which has an associated RTC room and disconnecting + /// from the RTC room when a lobby is left or disconnected. + /// + /// This function will only succeed when called on a lobby the local user is currently a member of. + /// + /// + /// Structure containing information about the lobby to query the RTC Room connection status for + /// If the result is , this will be set to true if we are connected, or false if we are not yet connected. + /// + /// if we are connected to the specified lobby, the input options and parameters were valid and we were able to write to bOutIsConnected successfully. + /// if the lobby doesn't exist + /// if the lobby exists, but did not have the RTC Room feature enabled when created + /// if bOutIsConnected is NULL, or any other parameters are NULL or invalid + /// + public Result IsRTCRoomConnected(IsRTCRoomConnectedOptions options, out bool bOutIsConnected) + { + var optionsAddress = System.IntPtr.Zero; + Helper.TryMarshalSet(ref optionsAddress, options); + + int bOutIsConnectedInt = 0; + + var funcResult = Bindings.EOS_Lobby_IsRTCRoomConnected(InnerHandle, optionsAddress, ref bOutIsConnectedInt); + + Helper.TryMarshalDispose(ref optionsAddress); + + Helper.TryMarshalGet(bOutIsConnectedInt, out bOutIsConnected); + + return funcResult; + } + /// /// Join a lobby, creating a local instance under a given lobby ID. Backend will validate various conditions to make sure it is possible to join the lobby. + /// + /// If the lobby is successfully join has an RTC Room enabled, the lobby system will automatically join and maintain the connection to the RTC room as long as the + /// local user remains in the lobby. Applications can use the to get the name of the RTC Room associated with a lobby, which may be used with + /// suite of functions. This can be useful to: register for notifications for talking status; to mute or unmute the local user's audio output; + /// to block or unblock room participants; to set local audio device settings; and more. /// /// Structure containing information about the lobby to be joined /// Arbitrary data that is passed back to you in the CompletionDelegate @@ -567,7 +722,7 @@ public Result GetInviteIdByIndex(GetInviteIdByIndexOptions options, out string o /// public void JoinLobby(JoinLobbyOptions options, object clientData, OnJoinLobbyCallback completionDelegate) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var clientDataAddress = System.IntPtr.Zero; @@ -575,7 +730,7 @@ public void JoinLobby(JoinLobbyOptions options, object clientData, OnJoinLobbyCa var completionDelegateInternal = new OnJoinLobbyCallbackInternal(OnJoinLobbyCallbackInternalImplementation); Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - EOS_Lobby_JoinLobby(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); + Bindings.EOS_Lobby_JoinLobby(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); Helper.TryMarshalDispose(ref optionsAddress); } @@ -594,7 +749,7 @@ public void JoinLobby(JoinLobbyOptions options, object clientData, OnJoinLobbyCa /// public void KickMember(KickMemberOptions options, object clientData, OnKickMemberCallback completionDelegate) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var clientDataAddress = System.IntPtr.Zero; @@ -602,13 +757,15 @@ public void KickMember(KickMemberOptions options, object clientData, OnKickMembe var completionDelegateInternal = new OnKickMemberCallbackInternal(OnKickMemberCallbackInternalImplementation); Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - EOS_Lobby_KickMember(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); + Bindings.EOS_Lobby_KickMember(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); Helper.TryMarshalDispose(ref optionsAddress); } /// /// Leave a lobby given a lobby ID + /// + /// If the lobby you are leaving had an RTC Room enabled, leaving the lobby will also automatically leave the RTC room. /// /// Structure containing information about the lobby to be left /// Arbitrary data that is passed back to you in the CompletionDelegate @@ -621,7 +778,7 @@ public void KickMember(KickMemberOptions options, object clientData, OnKickMembe /// public void LeaveLobby(LeaveLobbyOptions options, object clientData, OnLeaveLobbyCallback completionDelegate) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var clientDataAddress = System.IntPtr.Zero; @@ -629,7 +786,7 @@ public void LeaveLobby(LeaveLobbyOptions options, object clientData, OnLeaveLobb var completionDelegateInternal = new OnLeaveLobbyCallbackInternal(OnLeaveLobbyCallbackInternalImplementation); Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - EOS_Lobby_LeaveLobby(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); + Bindings.EOS_Lobby_LeaveLobby(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); Helper.TryMarshalDispose(ref optionsAddress); } @@ -648,7 +805,7 @@ public void LeaveLobby(LeaveLobbyOptions options, object clientData, OnLeaveLobb /// public void PromoteMember(PromoteMemberOptions options, object clientData, OnPromoteMemberCallback completionDelegate) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var clientDataAddress = System.IntPtr.Zero; @@ -656,7 +813,7 @@ public void PromoteMember(PromoteMemberOptions options, object clientData, OnPro var completionDelegateInternal = new OnPromoteMemberCallbackInternal(OnPromoteMemberCallbackInternalImplementation); Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - EOS_Lobby_PromoteMember(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); + Bindings.EOS_Lobby_PromoteMember(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); Helper.TryMarshalDispose(ref optionsAddress); } @@ -669,7 +826,7 @@ public void PromoteMember(PromoteMemberOptions options, object clientData, OnPro /// A callback that is fired when the query invites operation completes, either successfully or in error public void QueryInvites(QueryInvitesOptions options, object clientData, OnQueryInvitesCallback completionDelegate) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var clientDataAddress = System.IntPtr.Zero; @@ -677,7 +834,7 @@ public void QueryInvites(QueryInvitesOptions options, object clientData, OnQuery var completionDelegateInternal = new OnQueryInvitesCallbackInternal(OnQueryInvitesCallbackInternalImplementation); Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - EOS_Lobby_QueryInvites(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); + Bindings.EOS_Lobby_QueryInvites(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); Helper.TryMarshalDispose(ref optionsAddress); } @@ -695,7 +852,7 @@ public void QueryInvites(QueryInvitesOptions options, object clientData, OnQuery /// public void RejectInvite(RejectInviteOptions options, object clientData, OnRejectInviteCallback completionDelegate) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var clientDataAddress = System.IntPtr.Zero; @@ -703,7 +860,7 @@ public void RejectInvite(RejectInviteOptions options, object clientData, OnRejec var completionDelegateInternal = new OnRejectInviteCallbackInternal(OnRejectInviteCallbackInternalImplementation); Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - EOS_Lobby_RejectInvite(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); + Bindings.EOS_Lobby_RejectInvite(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); Helper.TryMarshalDispose(ref optionsAddress); } @@ -716,7 +873,7 @@ public void RemoveNotifyJoinLobbyAccepted(ulong inId) { Helper.TryRemoveCallbackByNotificationId(inId); - EOS_Lobby_RemoveNotifyJoinLobbyAccepted(InnerHandle, inId); + Bindings.EOS_Lobby_RemoveNotifyJoinLobbyAccepted(InnerHandle, inId); } /// @@ -727,7 +884,7 @@ public void RemoveNotifyLobbyInviteAccepted(ulong inId) { Helper.TryRemoveCallbackByNotificationId(inId); - EOS_Lobby_RemoveNotifyLobbyInviteAccepted(InnerHandle, inId); + Bindings.EOS_Lobby_RemoveNotifyLobbyInviteAccepted(InnerHandle, inId); } /// @@ -738,7 +895,7 @@ public void RemoveNotifyLobbyInviteReceived(ulong inId) { Helper.TryRemoveCallbackByNotificationId(inId); - EOS_Lobby_RemoveNotifyLobbyInviteReceived(InnerHandle, inId); + Bindings.EOS_Lobby_RemoveNotifyLobbyInviteReceived(InnerHandle, inId); } /// @@ -749,7 +906,7 @@ public void RemoveNotifyLobbyMemberStatusReceived(ulong inId) { Helper.TryRemoveCallbackByNotificationId(inId); - EOS_Lobby_RemoveNotifyLobbyMemberStatusReceived(InnerHandle, inId); + Bindings.EOS_Lobby_RemoveNotifyLobbyMemberStatusReceived(InnerHandle, inId); } /// @@ -760,7 +917,7 @@ public void RemoveNotifyLobbyMemberUpdateReceived(ulong inId) { Helper.TryRemoveCallbackByNotificationId(inId); - EOS_Lobby_RemoveNotifyLobbyMemberUpdateReceived(InnerHandle, inId); + Bindings.EOS_Lobby_RemoveNotifyLobbyMemberUpdateReceived(InnerHandle, inId); } /// @@ -771,7 +928,21 @@ public void RemoveNotifyLobbyUpdateReceived(ulong inId) { Helper.TryRemoveCallbackByNotificationId(inId); - EOS_Lobby_RemoveNotifyLobbyUpdateReceived(InnerHandle, inId); + Bindings.EOS_Lobby_RemoveNotifyLobbyUpdateReceived(InnerHandle, inId); + } + + /// + /// Unregister from receiving notifications when an RTC Room's connection status changes. + /// + /// This should be called when the local user is leaving a lobby. + /// + /// + /// Handle representing the registered callback + public void RemoveNotifyRTCRoomConnectionChanged(ulong inId) + { + Helper.TryRemoveCallbackByNotificationId(inId); + + Bindings.EOS_Lobby_RemoveNotifyRTCRoomConnectionChanged(InnerHandle, inId); } /// @@ -787,7 +958,7 @@ public void RemoveNotifyLobbyUpdateReceived(ulong inId) /// public void SendInvite(SendInviteOptions options, object clientData, OnSendInviteCallback completionDelegate) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var clientDataAddress = System.IntPtr.Zero; @@ -795,7 +966,7 @@ public void SendInvite(SendInviteOptions options, object clientData, OnSendInvit var completionDelegateInternal = new OnSendInviteCallbackInternal(OnSendInviteCallbackInternalImplementation); Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - EOS_Lobby_SendInvite(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); + Bindings.EOS_Lobby_SendInvite(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); Helper.TryMarshalDispose(ref optionsAddress); } @@ -814,7 +985,7 @@ public void SendInvite(SendInviteOptions options, object clientData, OnSendInvit /// public void UpdateLobby(UpdateLobbyOptions options, object clientData, OnUpdateLobbyCallback completionDelegate) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var clientDataAddress = System.IntPtr.Zero; @@ -822,7 +993,7 @@ public void UpdateLobby(UpdateLobbyOptions options, object clientData, OnUpdateL var completionDelegateInternal = new OnUpdateLobbyCallbackInternal(OnUpdateLobbyCallbackInternalImplementation); Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - EOS_Lobby_UpdateLobby(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); + Bindings.EOS_Lobby_UpdateLobby(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); Helper.TryMarshalDispose(ref optionsAddress); } @@ -842,12 +1013,12 @@ public void UpdateLobby(UpdateLobbyOptions options, object clientData, OnUpdateL /// public Result UpdateLobbyModification(UpdateLobbyModificationOptions options, out LobbyModification outLobbyModificationHandle) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var outLobbyModificationHandleAddress = System.IntPtr.Zero; - var funcResult = EOS_Lobby_UpdateLobbyModification(InnerHandle, optionsAddress, ref outLobbyModificationHandleAddress); + var funcResult = Bindings.EOS_Lobby_UpdateLobbyModification(InnerHandle, optionsAddress, ref outLobbyModificationHandleAddress); Helper.TryMarshalDispose(ref optionsAddress); @@ -999,6 +1170,17 @@ internal static void OnQueryInvitesCallbackInternalImplementation(System.IntPtr } } + [MonoPInvokeCallback(typeof(OnRTCRoomConnectionChangedCallbackInternal))] + internal static void OnRTCRoomConnectionChangedCallbackInternalImplementation(System.IntPtr data) + { + OnRTCRoomConnectionChangedCallback callback; + RTCRoomConnectionChangedCallbackInfo callbackInfo; + if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) + { + callback(callbackInfo); + } + } + [MonoPInvokeCallback(typeof(OnRejectInviteCallbackInternal))] internal static void OnRejectInviteCallbackInternalImplementation(System.IntPtr data) { @@ -1031,95 +1213,5 @@ internal static void OnUpdateLobbyCallbackInternalImplementation(System.IntPtr d callback(callbackInfo); } } - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern ulong EOS_Lobby_AddNotifyJoinLobbyAccepted(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, OnJoinLobbyAcceptedCallbackInternal notificationFn); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern ulong EOS_Lobby_AddNotifyLobbyInviteAccepted(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, OnLobbyInviteAcceptedCallbackInternal notificationFn); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern ulong EOS_Lobby_AddNotifyLobbyInviteReceived(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, OnLobbyInviteReceivedCallbackInternal notificationFn); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern ulong EOS_Lobby_AddNotifyLobbyMemberStatusReceived(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, OnLobbyMemberStatusReceivedCallbackInternal notificationFn); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern ulong EOS_Lobby_AddNotifyLobbyMemberUpdateReceived(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, OnLobbyMemberUpdateReceivedCallbackInternal notificationFn); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern ulong EOS_Lobby_AddNotifyLobbyUpdateReceived(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, OnLobbyUpdateReceivedCallbackInternal notificationFn); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_Lobby_CopyLobbyDetailsHandle(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outLobbyDetailsHandle); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_Lobby_CopyLobbyDetailsHandleByInviteId(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outLobbyDetailsHandle); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_Lobby_CopyLobbyDetailsHandleByUiEventId(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outLobbyDetailsHandle); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern void EOS_Lobby_CreateLobby(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, OnCreateLobbyCallbackInternal completionDelegate); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_Lobby_CreateLobbySearch(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outLobbySearchHandle); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern void EOS_Lobby_DestroyLobby(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, OnDestroyLobbyCallbackInternal completionDelegate); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern uint EOS_Lobby_GetInviteCount(System.IntPtr handle, System.IntPtr options); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_Lobby_GetInviteIdByIndex(System.IntPtr handle, System.IntPtr options, System.IntPtr outBuffer, ref int inOutBufferLength); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern void EOS_Lobby_JoinLobby(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, OnJoinLobbyCallbackInternal completionDelegate); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern void EOS_Lobby_KickMember(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, OnKickMemberCallbackInternal completionDelegate); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern void EOS_Lobby_LeaveLobby(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, OnLeaveLobbyCallbackInternal completionDelegate); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern void EOS_Lobby_PromoteMember(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, OnPromoteMemberCallbackInternal completionDelegate); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern void EOS_Lobby_QueryInvites(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, OnQueryInvitesCallbackInternal completionDelegate); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern void EOS_Lobby_RejectInvite(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, OnRejectInviteCallbackInternal completionDelegate); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern void EOS_Lobby_Attribute_Release(System.IntPtr lobbyAttribute); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern void EOS_Lobby_RemoveNotifyJoinLobbyAccepted(System.IntPtr handle, ulong inId); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern void EOS_Lobby_RemoveNotifyLobbyInviteAccepted(System.IntPtr handle, ulong inId); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern void EOS_Lobby_RemoveNotifyLobbyInviteReceived(System.IntPtr handle, ulong inId); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern void EOS_Lobby_RemoveNotifyLobbyMemberStatusReceived(System.IntPtr handle, ulong inId); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern void EOS_Lobby_RemoveNotifyLobbyMemberUpdateReceived(System.IntPtr handle, ulong inId); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern void EOS_Lobby_RemoveNotifyLobbyUpdateReceived(System.IntPtr handle, ulong inId); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern void EOS_Lobby_SendInvite(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, OnSendInviteCallbackInternal completionDelegate); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern void EOS_Lobby_UpdateLobby(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, OnUpdateLobbyCallbackInternal completionDelegate); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_Lobby_UpdateLobbyModification(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outLobbyModificationHandle); } } \ No newline at end of file diff --git a/EOSSDK/Generated/Lobby/LobbyInviteAcceptedCallbackInfo.cs b/EOSSDK/Generated/Lobby/LobbyInviteAcceptedCallbackInfo.cs index 3f4896d2..ee5d0e78 100644 --- a/EOSSDK/Generated/Lobby/LobbyInviteAcceptedCallbackInfo.cs +++ b/EOSSDK/Generated/Lobby/LobbyInviteAcceptedCallbackInfo.cs @@ -28,6 +28,11 @@ public class LobbyInviteAcceptedCallbackInfo : ICallbackInfo, ISettable /// public ProductUserId TargetUserId { get; private set; } + /// + /// Lobby ID that the user has been invited to + /// + public string LobbyId { get; private set; } + public Result? GetResultCode() { return null; @@ -41,6 +46,7 @@ internal void Set(LobbyInviteAcceptedCallbackInfoInternal? other) InviteId = other.Value.InviteId; LocalUserId = other.Value.LocalUserId; TargetUserId = other.Value.TargetUserId; + LobbyId = other.Value.LobbyId; } } @@ -57,6 +63,7 @@ internal struct LobbyInviteAcceptedCallbackInfoInternal : ICallbackInfoInternal private System.IntPtr m_InviteId; private System.IntPtr m_LocalUserId; private System.IntPtr m_TargetUserId; + private System.IntPtr m_LobbyId; public object ClientData { @@ -105,5 +112,15 @@ public ProductUserId TargetUserId return value; } } + + public string LobbyId + { + get + { + string value; + Helper.TryMarshalGet(m_LobbyId, out value); + return value; + } + } } } \ No newline at end of file diff --git a/EOSSDK/Generated/Lobby/LobbyModification.cs b/EOSSDK/Generated/Lobby/LobbyModification.cs index aecf6e3b..3fbdface 100644 --- a/EOSSDK/Generated/Lobby/LobbyModification.cs +++ b/EOSSDK/Generated/Lobby/LobbyModification.cs @@ -3,7 +3,7 @@ namespace Epic.OnlineServices.Lobby { - public sealed class LobbyModification : Handle + public sealed partial class LobbyModification : Handle { public LobbyModification() { @@ -43,6 +43,16 @@ public LobbyModification(System.IntPtr innerHandle) : base(innerHandle) /// public const int LobbymodificationRemovememberattributeApiLatest = 1; + /// + /// The most recent version of the API. + /// + public const int LobbymodificationSetbucketidApiLatest = 1; + + /// + /// The most recent version of the API. + /// + public const int LobbymodificationSetinvitesallowedApiLatest = 1; + /// /// The most recent version of the API. /// @@ -66,10 +76,10 @@ public LobbyModification(System.IntPtr innerHandle) : base(innerHandle) /// public Result AddAttribute(LobbyModificationAddAttributeOptions options) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); - var funcResult = EOS_LobbyModification_AddAttribute(InnerHandle, optionsAddress); + var funcResult = Bindings.EOS_LobbyModification_AddAttribute(InnerHandle, optionsAddress); Helper.TryMarshalDispose(ref optionsAddress); @@ -88,10 +98,10 @@ public Result AddAttribute(LobbyModificationAddAttributeOptions options) /// public Result AddMemberAttribute(LobbyModificationAddMemberAttributeOptions options) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); - var funcResult = EOS_LobbyModification_AddMemberAttribute(InnerHandle, optionsAddress); + var funcResult = Bindings.EOS_LobbyModification_AddMemberAttribute(InnerHandle, optionsAddress); Helper.TryMarshalDispose(ref optionsAddress); @@ -100,7 +110,7 @@ public Result AddMemberAttribute(LobbyModificationAddMemberAttributeOptions opti public void Release() { - EOS_LobbyModification_Release(InnerHandle); + Bindings.EOS_LobbyModification_Release(InnerHandle); } /// @@ -114,10 +124,10 @@ public void Release() /// public Result RemoveAttribute(LobbyModificationRemoveAttributeOptions options) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); - var funcResult = EOS_LobbyModification_RemoveAttribute(InnerHandle, optionsAddress); + var funcResult = Bindings.EOS_LobbyModification_RemoveAttribute(InnerHandle, optionsAddress); Helper.TryMarshalDispose(ref optionsAddress); @@ -135,10 +145,54 @@ public Result RemoveAttribute(LobbyModificationRemoveAttributeOptions options) /// public Result RemoveMemberAttribute(LobbyModificationRemoveMemberAttributeOptions options) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); - var funcResult = EOS_LobbyModification_RemoveMemberAttribute(InnerHandle, optionsAddress); + var funcResult = Bindings.EOS_LobbyModification_RemoveMemberAttribute(InnerHandle, optionsAddress); + + Helper.TryMarshalDispose(ref optionsAddress); + + return funcResult; + } + + /// + /// Set the bucket ID associated with this lobby. + /// Values such as region, game mode, etc can be combined here depending on game need. + /// Setting this is strongly recommended to improve search performance. + /// + /// Options associated with the bucket ID of the lobby + /// + /// if setting this parameter was successful + /// if the bucket ID is invalid or null + /// if the API version passed in is incorrect + /// + public Result SetBucketId(LobbyModificationSetBucketIdOptions options) + { + var optionsAddress = System.IntPtr.Zero; + Helper.TryMarshalSet(ref optionsAddress, options); + + var funcResult = Bindings.EOS_LobbyModification_SetBucketId(InnerHandle, optionsAddress); + + Helper.TryMarshalDispose(ref optionsAddress); + + return funcResult; + } + + /// + /// Allows enabling or disabling invites for this lobby. + /// The lobby will also need to have `bPresenceEnabled` true. + /// + /// Options associated with invites allowed flag for this lobby. + /// + /// if setting this parameter was successful + /// if the API version passed in is incorrect + /// + public Result SetInvitesAllowed(LobbyModificationSetInvitesAllowedOptions options) + { + var optionsAddress = System.IntPtr.Zero; + Helper.TryMarshalSet(ref optionsAddress, options); + + var funcResult = Bindings.EOS_LobbyModification_SetInvitesAllowed(InnerHandle, optionsAddress); Helper.TryMarshalDispose(ref optionsAddress); @@ -156,10 +210,10 @@ public Result RemoveMemberAttribute(LobbyModificationRemoveMemberAttributeOption /// public Result SetMaxMembers(LobbyModificationSetMaxMembersOptions options) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); - var funcResult = EOS_LobbyModification_SetMaxMembers(InnerHandle, optionsAddress); + var funcResult = Bindings.EOS_LobbyModification_SetMaxMembers(InnerHandle, optionsAddress); Helper.TryMarshalDispose(ref optionsAddress); @@ -177,35 +231,14 @@ public Result SetMaxMembers(LobbyModificationSetMaxMembersOptions options) /// public Result SetPermissionLevel(LobbyModificationSetPermissionLevelOptions options) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); - var funcResult = EOS_LobbyModification_SetPermissionLevel(InnerHandle, optionsAddress); + var funcResult = Bindings.EOS_LobbyModification_SetPermissionLevel(InnerHandle, optionsAddress); Helper.TryMarshalDispose(ref optionsAddress); return funcResult; } - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_LobbyModification_AddAttribute(System.IntPtr handle, System.IntPtr options); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_LobbyModification_AddMemberAttribute(System.IntPtr handle, System.IntPtr options); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern void EOS_LobbyModification_Release(System.IntPtr lobbyModificationHandle); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_LobbyModification_RemoveAttribute(System.IntPtr handle, System.IntPtr options); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_LobbyModification_RemoveMemberAttribute(System.IntPtr handle, System.IntPtr options); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_LobbyModification_SetMaxMembers(System.IntPtr handle, System.IntPtr options); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_LobbyModification_SetPermissionLevel(System.IntPtr handle, System.IntPtr options); } } \ No newline at end of file diff --git a/EOSSDK/Generated/Lobby/LobbyModificationSetBucketIdOptions.cs b/EOSSDK/Generated/Lobby/LobbyModificationSetBucketIdOptions.cs new file mode 100644 index 00000000..d27835b4 --- /dev/null +++ b/EOSSDK/Generated/Lobby/LobbyModificationSetBucketIdOptions.cs @@ -0,0 +1,50 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.Lobby +{ + /// + /// Input parameters for the function. + /// + public class LobbyModificationSetBucketIdOptions + { + /// + /// The new bucket id associated with the lobby + /// + public string BucketId { get; set; } + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct LobbyModificationSetBucketIdOptionsInternal : ISettable, System.IDisposable + { + private int m_ApiVersion; + private System.IntPtr m_BucketId; + + public string BucketId + { + set + { + Helper.TryMarshalSet(ref m_BucketId, value); + } + } + + public void Set(LobbyModificationSetBucketIdOptions other) + { + if (other != null) + { + m_ApiVersion = LobbyModification.LobbymodificationSetbucketidApiLatest; + BucketId = other.BucketId; + } + } + + public void Set(object other) + { + Set(other as LobbyModificationSetBucketIdOptions); + } + + public void Dispose() + { + Helper.TryMarshalDispose(ref m_BucketId); + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/Lobby/LobbyModificationSetBucketIdOptions.cs.meta b/EOSSDK/Generated/Lobby/LobbyModificationSetBucketIdOptions.cs.meta new file mode 100644 index 00000000..1b88b4d4 --- /dev/null +++ b/EOSSDK/Generated/Lobby/LobbyModificationSetBucketIdOptions.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 104386af86b484c4089028dd52fe6587 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/Lobby/LobbyModificationSetInvitesAllowedOptions.cs b/EOSSDK/Generated/Lobby/LobbyModificationSetInvitesAllowedOptions.cs new file mode 100644 index 00000000..89602c89 --- /dev/null +++ b/EOSSDK/Generated/Lobby/LobbyModificationSetInvitesAllowedOptions.cs @@ -0,0 +1,49 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.Lobby +{ + /// + /// Input parameters for the Function. + /// + public class LobbyModificationSetInvitesAllowedOptions + { + /// + /// If true then invites can currently be sent for the associated lobby + /// + public bool InvitesAllowed { get; set; } + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct LobbyModificationSetInvitesAllowedOptionsInternal : ISettable, System.IDisposable + { + private int m_ApiVersion; + private int m_InvitesAllowed; + + public bool InvitesAllowed + { + set + { + Helper.TryMarshalSet(ref m_InvitesAllowed, value); + } + } + + public void Set(LobbyModificationSetInvitesAllowedOptions other) + { + if (other != null) + { + m_ApiVersion = LobbyModification.LobbymodificationSetinvitesallowedApiLatest; + InvitesAllowed = other.InvitesAllowed; + } + } + + public void Set(object other) + { + Set(other as LobbyModificationSetInvitesAllowedOptions); + } + + public void Dispose() + { + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/Lobby/LobbyModificationSetInvitesAllowedOptions.cs.meta b/EOSSDK/Generated/Lobby/LobbyModificationSetInvitesAllowedOptions.cs.meta new file mode 100644 index 00000000..f5dd4c9a --- /dev/null +++ b/EOSSDK/Generated/Lobby/LobbyModificationSetInvitesAllowedOptions.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: ec51645bcc05a9b4f883564b7f8164bd +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/Lobby/LobbySearch.cs b/EOSSDK/Generated/Lobby/LobbySearch.cs index f8d3afe6..09c09a04 100644 --- a/EOSSDK/Generated/Lobby/LobbySearch.cs +++ b/EOSSDK/Generated/Lobby/LobbySearch.cs @@ -3,7 +3,7 @@ namespace Epic.OnlineServices.Lobby { - public sealed class LobbySearch : Handle + public sealed partial class LobbySearch : Handle { public LobbySearch() { @@ -68,12 +68,12 @@ public LobbySearch(System.IntPtr innerHandle) : base(innerHandle) /// public Result CopySearchResultByIndex(LobbySearchCopySearchResultByIndexOptions options, out LobbyDetails outLobbyDetailsHandle) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var outLobbyDetailsHandleAddress = System.IntPtr.Zero; - var funcResult = EOS_LobbySearch_CopySearchResultByIndex(InnerHandle, optionsAddress, ref outLobbyDetailsHandleAddress); + var funcResult = Bindings.EOS_LobbySearch_CopySearchResultByIndex(InnerHandle, optionsAddress, ref outLobbyDetailsHandleAddress); Helper.TryMarshalDispose(ref optionsAddress); @@ -96,7 +96,7 @@ public Result CopySearchResultByIndex(LobbySearchCopySearchResultByIndexOptions /// public void Find(LobbySearchFindOptions options, object clientData, LobbySearchOnFindCallback completionDelegate) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var clientDataAddress = System.IntPtr.Zero; @@ -104,7 +104,7 @@ public void Find(LobbySearchFindOptions options, object clientData, LobbySearchO var completionDelegateInternal = new LobbySearchOnFindCallbackInternal(OnFindCallbackInternalImplementation); Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - EOS_LobbySearch_Find(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); + Bindings.EOS_LobbySearch_Find(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); Helper.TryMarshalDispose(ref optionsAddress); } @@ -118,10 +118,10 @@ public void Find(LobbySearchFindOptions options, object clientData, LobbySearchO /// public uint GetSearchResultCount(LobbySearchGetSearchResultCountOptions options) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); - var funcResult = EOS_LobbySearch_GetSearchResultCount(InnerHandle, optionsAddress); + var funcResult = Bindings.EOS_LobbySearch_GetSearchResultCount(InnerHandle, optionsAddress); Helper.TryMarshalDispose(ref optionsAddress); @@ -135,7 +135,7 @@ public uint GetSearchResultCount(LobbySearchGetSearchResultCountOptions options) /// - The lobby search handle to release public void Release() { - EOS_LobbySearch_Release(InnerHandle); + Bindings.EOS_LobbySearch_Release(InnerHandle); } /// @@ -151,10 +151,10 @@ public void Release() /// public Result RemoveParameter(LobbySearchRemoveParameterOptions options) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); - var funcResult = EOS_LobbySearch_RemoveParameter(InnerHandle, optionsAddress); + var funcResult = Bindings.EOS_LobbySearch_RemoveParameter(InnerHandle, optionsAddress); Helper.TryMarshalDispose(ref optionsAddress); @@ -172,10 +172,10 @@ public Result RemoveParameter(LobbySearchRemoveParameterOptions options) /// public Result SetLobbyId(LobbySearchSetLobbyIdOptions options) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); - var funcResult = EOS_LobbySearch_SetLobbyId(InnerHandle, optionsAddress); + var funcResult = Bindings.EOS_LobbySearch_SetLobbyId(InnerHandle, optionsAddress); Helper.TryMarshalDispose(ref optionsAddress); @@ -193,10 +193,10 @@ public Result SetLobbyId(LobbySearchSetLobbyIdOptions options) /// public Result SetMaxResults(LobbySearchSetMaxResultsOptions options) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); - var funcResult = EOS_LobbySearch_SetMaxResults(InnerHandle, optionsAddress); + var funcResult = Bindings.EOS_LobbySearch_SetMaxResults(InnerHandle, optionsAddress); Helper.TryMarshalDispose(ref optionsAddress); @@ -216,10 +216,10 @@ public Result SetMaxResults(LobbySearchSetMaxResultsOptions options) /// public Result SetParameter(LobbySearchSetParameterOptions options) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); - var funcResult = EOS_LobbySearch_SetParameter(InnerHandle, optionsAddress); + var funcResult = Bindings.EOS_LobbySearch_SetParameter(InnerHandle, optionsAddress); Helper.TryMarshalDispose(ref optionsAddress); @@ -238,10 +238,10 @@ public Result SetParameter(LobbySearchSetParameterOptions options) /// public Result SetTargetUserId(LobbySearchSetTargetUserIdOptions options) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); - var funcResult = EOS_LobbySearch_SetTargetUserId(InnerHandle, optionsAddress); + var funcResult = Bindings.EOS_LobbySearch_SetTargetUserId(InnerHandle, optionsAddress); Helper.TryMarshalDispose(ref optionsAddress); @@ -258,32 +258,5 @@ internal static void OnFindCallbackInternalImplementation(System.IntPtr data) callback(callbackInfo); } } - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_LobbySearch_CopySearchResultByIndex(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outLobbyDetailsHandle); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern void EOS_LobbySearch_Find(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, LobbySearchOnFindCallbackInternal completionDelegate); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern uint EOS_LobbySearch_GetSearchResultCount(System.IntPtr handle, System.IntPtr options); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern void EOS_LobbySearch_Release(System.IntPtr lobbySearchHandle); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_LobbySearch_RemoveParameter(System.IntPtr handle, System.IntPtr options); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_LobbySearch_SetLobbyId(System.IntPtr handle, System.IntPtr options); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_LobbySearch_SetMaxResults(System.IntPtr handle, System.IntPtr options); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_LobbySearch_SetParameter(System.IntPtr handle, System.IntPtr options); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_LobbySearch_SetTargetUserId(System.IntPtr handle, System.IntPtr options); } } \ No newline at end of file diff --git a/EOSSDK/Generated/Lobby/LobbySearchFindOptions.cs b/EOSSDK/Generated/Lobby/LobbySearchFindOptions.cs index d3e7654a..dd7558b9 100644 --- a/EOSSDK/Generated/Lobby/LobbySearchFindOptions.cs +++ b/EOSSDK/Generated/Lobby/LobbySearchFindOptions.cs @@ -44,6 +44,7 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_LocalUserId); } } } \ No newline at end of file diff --git a/EOSSDK/Generated/Lobby/LobbySearchOnFindCallback.cs b/EOSSDK/Generated/Lobby/LobbySearchOnFindCallback.cs index e01a11ab..21db83d6 100644 --- a/EOSSDK/Generated/Lobby/LobbySearchOnFindCallback.cs +++ b/EOSSDK/Generated/Lobby/LobbySearchOnFindCallback.cs @@ -9,5 +9,6 @@ namespace Epic.OnlineServices.Lobby /// A CallbackInfo containing the output information and result public delegate void LobbySearchOnFindCallback(LobbySearchFindCallbackInfo data); + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] internal delegate void LobbySearchOnFindCallbackInternal(System.IntPtr data); } \ No newline at end of file diff --git a/EOSSDK/Generated/Lobby/LobbySearchSetLobbyIdOptions.cs b/EOSSDK/Generated/Lobby/LobbySearchSetLobbyIdOptions.cs index 1b96eadc..dc371cfc 100644 --- a/EOSSDK/Generated/Lobby/LobbySearchSetLobbyIdOptions.cs +++ b/EOSSDK/Generated/Lobby/LobbySearchSetLobbyIdOptions.cs @@ -44,6 +44,7 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_LobbyId); } } } \ No newline at end of file diff --git a/EOSSDK/Generated/Lobby/LobbySearchSetTargetUserIdOptions.cs b/EOSSDK/Generated/Lobby/LobbySearchSetTargetUserIdOptions.cs index e3f407eb..728424eb 100644 --- a/EOSSDK/Generated/Lobby/LobbySearchSetTargetUserIdOptions.cs +++ b/EOSSDK/Generated/Lobby/LobbySearchSetTargetUserIdOptions.cs @@ -44,6 +44,7 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_TargetUserId); } } } \ No newline at end of file diff --git a/EOSSDK/Generated/Lobby/LocalRTCOptions.cs b/EOSSDK/Generated/Lobby/LocalRTCOptions.cs new file mode 100644 index 00000000..ca1220ab --- /dev/null +++ b/EOSSDK/Generated/Lobby/LocalRTCOptions.cs @@ -0,0 +1,141 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.Lobby +{ + /// + /// Input parameters to use with Lobby RTC Rooms. + /// + public class LocalRTCOptions : ISettable + { + /// + /// Flags for the local user in this room. The default is 0 if this struct is not specified. @see ::Flags + /// + public uint Flags { get; set; } + + /// + /// Set to true to enable Manual Audio Input. If manual audio input is enabled, audio recording is not started and the audio buffers + /// must be passed manually using . The default is false if this struct is not specified. + /// + public bool UseManualAudioInput { get; set; } + + /// + /// Set to true to enable Manual Audio Output. If manual audio output is enabled, audio rendering is not started and the audio buffers + /// must be received with and rendered manually. The default is false if this struct is not + /// specified. + /// + public bool UseManualAudioOutput { get; set; } + + /// + /// Set to true to start the outgoing audio stream muted by when first connecting to the RTC room. It must be manually unmuted with a + /// call to . If manual audio output is enabled, this value is ignored. The default is false if this struct + /// is not specified. + /// + public bool AudioOutputStartsMuted { get; set; } + + internal void Set(LocalRTCOptionsInternal? other) + { + if (other != null) + { + Flags = other.Value.Flags; + UseManualAudioInput = other.Value.UseManualAudioInput; + UseManualAudioOutput = other.Value.UseManualAudioOutput; + AudioOutputStartsMuted = other.Value.AudioOutputStartsMuted; + } + } + + public void Set(object other) + { + Set(other as LocalRTCOptionsInternal?); + } + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct LocalRTCOptionsInternal : ISettable, System.IDisposable + { + private int m_ApiVersion; + private uint m_Flags; + private int m_UseManualAudioInput; + private int m_UseManualAudioOutput; + private int m_AudioOutputStartsMuted; + + public uint Flags + { + get + { + return m_Flags; + } + + set + { + m_Flags = value; + } + } + + public bool UseManualAudioInput + { + get + { + bool value; + Helper.TryMarshalGet(m_UseManualAudioInput, out value); + return value; + } + + set + { + Helper.TryMarshalSet(ref m_UseManualAudioInput, value); + } + } + + public bool UseManualAudioOutput + { + get + { + bool value; + Helper.TryMarshalGet(m_UseManualAudioOutput, out value); + return value; + } + + set + { + Helper.TryMarshalSet(ref m_UseManualAudioOutput, value); + } + } + + public bool AudioOutputStartsMuted + { + get + { + bool value; + Helper.TryMarshalGet(m_AudioOutputStartsMuted, out value); + return value; + } + + set + { + Helper.TryMarshalSet(ref m_AudioOutputStartsMuted, value); + } + } + + public void Set(LocalRTCOptions other) + { + if (other != null) + { + m_ApiVersion = LobbyInterface.LocalrtcoptionsApiLatest; + Flags = other.Flags; + UseManualAudioInput = other.UseManualAudioInput; + UseManualAudioOutput = other.UseManualAudioOutput; + AudioOutputStartsMuted = other.AudioOutputStartsMuted; + } + } + + public void Set(object other) + { + Set(other as LocalRTCOptions); + } + + public void Dispose() + { + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/Lobby/LocalRTCOptions.cs.meta b/EOSSDK/Generated/Lobby/LocalRTCOptions.cs.meta new file mode 100644 index 00000000..a421db7e --- /dev/null +++ b/EOSSDK/Generated/Lobby/LocalRTCOptions.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 55d0b455805cd1940bc0bf507d6ed820 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/Lobby/OnCreateLobbyCallback.cs b/EOSSDK/Generated/Lobby/OnCreateLobbyCallback.cs index 6cb1cbc0..24685535 100644 --- a/EOSSDK/Generated/Lobby/OnCreateLobbyCallback.cs +++ b/EOSSDK/Generated/Lobby/OnCreateLobbyCallback.cs @@ -9,5 +9,6 @@ namespace Epic.OnlineServices.Lobby /// A CallbackInfo containing the output information and result public delegate void OnCreateLobbyCallback(CreateLobbyCallbackInfo data); + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] internal delegate void OnCreateLobbyCallbackInternal(System.IntPtr data); } \ No newline at end of file diff --git a/EOSSDK/Generated/Lobby/OnDestroyLobbyCallback.cs b/EOSSDK/Generated/Lobby/OnDestroyLobbyCallback.cs index 985a3816..cb63fdd9 100644 --- a/EOSSDK/Generated/Lobby/OnDestroyLobbyCallback.cs +++ b/EOSSDK/Generated/Lobby/OnDestroyLobbyCallback.cs @@ -9,5 +9,6 @@ namespace Epic.OnlineServices.Lobby /// A CallbackInfo containing the output information and result public delegate void OnDestroyLobbyCallback(DestroyLobbyCallbackInfo data); + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] internal delegate void OnDestroyLobbyCallbackInternal(System.IntPtr data); } \ No newline at end of file diff --git a/EOSSDK/Generated/Lobby/OnJoinLobbyAcceptedCallback.cs b/EOSSDK/Generated/Lobby/OnJoinLobbyAcceptedCallback.cs index 50ea8acd..3a18ccde 100644 --- a/EOSSDK/Generated/Lobby/OnJoinLobbyAcceptedCallback.cs +++ b/EOSSDK/Generated/Lobby/OnJoinLobbyAcceptedCallback.cs @@ -14,5 +14,6 @@ namespace Epic.OnlineServices.Lobby /// public delegate void OnJoinLobbyAcceptedCallback(JoinLobbyAcceptedCallbackInfo data); + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] internal delegate void OnJoinLobbyAcceptedCallbackInternal(System.IntPtr data); } \ No newline at end of file diff --git a/EOSSDK/Generated/Lobby/OnJoinLobbyCallback.cs b/EOSSDK/Generated/Lobby/OnJoinLobbyCallback.cs index e916e44d..0cdc77d5 100644 --- a/EOSSDK/Generated/Lobby/OnJoinLobbyCallback.cs +++ b/EOSSDK/Generated/Lobby/OnJoinLobbyCallback.cs @@ -9,5 +9,6 @@ namespace Epic.OnlineServices.Lobby /// A CallbackInfo containing the output information and result public delegate void OnJoinLobbyCallback(JoinLobbyCallbackInfo data); + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] internal delegate void OnJoinLobbyCallbackInternal(System.IntPtr data); } \ No newline at end of file diff --git a/EOSSDK/Generated/Lobby/OnKickMemberCallback.cs b/EOSSDK/Generated/Lobby/OnKickMemberCallback.cs index 554057ac..9039dd8e 100644 --- a/EOSSDK/Generated/Lobby/OnKickMemberCallback.cs +++ b/EOSSDK/Generated/Lobby/OnKickMemberCallback.cs @@ -9,5 +9,6 @@ namespace Epic.OnlineServices.Lobby /// A CallbackInfo containing the output information and result public delegate void OnKickMemberCallback(KickMemberCallbackInfo data); + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] internal delegate void OnKickMemberCallbackInternal(System.IntPtr data); } \ No newline at end of file diff --git a/EOSSDK/Generated/Lobby/OnLeaveLobbyCallback.cs b/EOSSDK/Generated/Lobby/OnLeaveLobbyCallback.cs index 0c5593f3..018fe984 100644 --- a/EOSSDK/Generated/Lobby/OnLeaveLobbyCallback.cs +++ b/EOSSDK/Generated/Lobby/OnLeaveLobbyCallback.cs @@ -9,5 +9,6 @@ namespace Epic.OnlineServices.Lobby /// A CallbackInfo containing the output information and result public delegate void OnLeaveLobbyCallback(LeaveLobbyCallbackInfo data); + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] internal delegate void OnLeaveLobbyCallbackInternal(System.IntPtr data); } \ No newline at end of file diff --git a/EOSSDK/Generated/Lobby/OnLobbyInviteAcceptedCallback.cs b/EOSSDK/Generated/Lobby/OnLobbyInviteAcceptedCallback.cs index 098aca0e..171199d8 100644 --- a/EOSSDK/Generated/Lobby/OnLobbyInviteAcceptedCallback.cs +++ b/EOSSDK/Generated/Lobby/OnLobbyInviteAcceptedCallback.cs @@ -9,5 +9,6 @@ namespace Epic.OnlineServices.Lobby /// A containing the output information and result public delegate void OnLobbyInviteAcceptedCallback(LobbyInviteAcceptedCallbackInfo data); + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] internal delegate void OnLobbyInviteAcceptedCallbackInternal(System.IntPtr data); } \ No newline at end of file diff --git a/EOSSDK/Generated/Lobby/OnLobbyInviteReceivedCallback.cs b/EOSSDK/Generated/Lobby/OnLobbyInviteReceivedCallback.cs index 9082bb1b..4841eaba 100644 --- a/EOSSDK/Generated/Lobby/OnLobbyInviteReceivedCallback.cs +++ b/EOSSDK/Generated/Lobby/OnLobbyInviteReceivedCallback.cs @@ -9,5 +9,6 @@ namespace Epic.OnlineServices.Lobby /// A containing the output information and result public delegate void OnLobbyInviteReceivedCallback(LobbyInviteReceivedCallbackInfo data); + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] internal delegate void OnLobbyInviteReceivedCallbackInternal(System.IntPtr data); } \ No newline at end of file diff --git a/EOSSDK/Generated/Lobby/OnLobbyMemberStatusReceivedCallback.cs b/EOSSDK/Generated/Lobby/OnLobbyMemberStatusReceivedCallback.cs index 0728fc0b..0455fbd0 100644 --- a/EOSSDK/Generated/Lobby/OnLobbyMemberStatusReceivedCallback.cs +++ b/EOSSDK/Generated/Lobby/OnLobbyMemberStatusReceivedCallback.cs @@ -9,5 +9,6 @@ namespace Epic.OnlineServices.Lobby /// A CallbackInfo containing the output information and result public delegate void OnLobbyMemberStatusReceivedCallback(LobbyMemberStatusReceivedCallbackInfo data); + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] internal delegate void OnLobbyMemberStatusReceivedCallbackInternal(System.IntPtr data); } \ No newline at end of file diff --git a/EOSSDK/Generated/Lobby/OnLobbyMemberUpdateReceivedCallback.cs b/EOSSDK/Generated/Lobby/OnLobbyMemberUpdateReceivedCallback.cs index 7f7783d1..8605ba61 100644 --- a/EOSSDK/Generated/Lobby/OnLobbyMemberUpdateReceivedCallback.cs +++ b/EOSSDK/Generated/Lobby/OnLobbyMemberUpdateReceivedCallback.cs @@ -9,5 +9,6 @@ namespace Epic.OnlineServices.Lobby /// A containing the output information and result public delegate void OnLobbyMemberUpdateReceivedCallback(LobbyMemberUpdateReceivedCallbackInfo data); + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] internal delegate void OnLobbyMemberUpdateReceivedCallbackInternal(System.IntPtr data); } \ No newline at end of file diff --git a/EOSSDK/Generated/Lobby/OnLobbyUpdateReceivedCallback.cs b/EOSSDK/Generated/Lobby/OnLobbyUpdateReceivedCallback.cs index 18372ff2..389d750c 100644 --- a/EOSSDK/Generated/Lobby/OnLobbyUpdateReceivedCallback.cs +++ b/EOSSDK/Generated/Lobby/OnLobbyUpdateReceivedCallback.cs @@ -9,5 +9,6 @@ namespace Epic.OnlineServices.Lobby /// A containing the output information and result public delegate void OnLobbyUpdateReceivedCallback(LobbyUpdateReceivedCallbackInfo data); + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] internal delegate void OnLobbyUpdateReceivedCallbackInternal(System.IntPtr data); } \ No newline at end of file diff --git a/EOSSDK/Generated/Lobby/OnPromoteMemberCallback.cs b/EOSSDK/Generated/Lobby/OnPromoteMemberCallback.cs index e1097af5..bdebd6e2 100644 --- a/EOSSDK/Generated/Lobby/OnPromoteMemberCallback.cs +++ b/EOSSDK/Generated/Lobby/OnPromoteMemberCallback.cs @@ -9,5 +9,6 @@ namespace Epic.OnlineServices.Lobby /// A CallbackInfo containing the output information and result public delegate void OnPromoteMemberCallback(PromoteMemberCallbackInfo data); + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] internal delegate void OnPromoteMemberCallbackInternal(System.IntPtr data); } \ No newline at end of file diff --git a/EOSSDK/Generated/Lobby/OnQueryInvitesCallback.cs b/EOSSDK/Generated/Lobby/OnQueryInvitesCallback.cs index 08c2ca7c..a2a2e948 100644 --- a/EOSSDK/Generated/Lobby/OnQueryInvitesCallback.cs +++ b/EOSSDK/Generated/Lobby/OnQueryInvitesCallback.cs @@ -9,5 +9,6 @@ namespace Epic.OnlineServices.Lobby /// A CallbackInfo containing the output information and result public delegate void OnQueryInvitesCallback(QueryInvitesCallbackInfo data); + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] internal delegate void OnQueryInvitesCallbackInternal(System.IntPtr data); } \ No newline at end of file diff --git a/EOSSDK/Generated/Lobby/OnRTCRoomConnectionChangedCallback.cs b/EOSSDK/Generated/Lobby/OnRTCRoomConnectionChangedCallback.cs new file mode 100644 index 00000000..5b0ee11b --- /dev/null +++ b/EOSSDK/Generated/Lobby/OnRTCRoomConnectionChangedCallback.cs @@ -0,0 +1,15 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.Lobby +{ + /// + /// Function prototype definition for notifications that comes from + /// + /// + /// containing the connection state of the RTC Room for a lobby + public delegate void OnRTCRoomConnectionChangedCallback(RTCRoomConnectionChangedCallbackInfo data); + + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void OnRTCRoomConnectionChangedCallbackInternal(System.IntPtr data); +} \ No newline at end of file diff --git a/EOSSDK/Generated/Lobby/OnRTCRoomConnectionChangedCallback.cs.meta b/EOSSDK/Generated/Lobby/OnRTCRoomConnectionChangedCallback.cs.meta new file mode 100644 index 00000000..6a037a72 --- /dev/null +++ b/EOSSDK/Generated/Lobby/OnRTCRoomConnectionChangedCallback.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: f0872d5454894dd41b807d78027450c8 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/Lobby/OnRejectInviteCallback.cs b/EOSSDK/Generated/Lobby/OnRejectInviteCallback.cs index 85bbc206..0e801e57 100644 --- a/EOSSDK/Generated/Lobby/OnRejectInviteCallback.cs +++ b/EOSSDK/Generated/Lobby/OnRejectInviteCallback.cs @@ -9,5 +9,6 @@ namespace Epic.OnlineServices.Lobby /// A CallbackInfo containing the output information and result public delegate void OnRejectInviteCallback(RejectInviteCallbackInfo data); + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] internal delegate void OnRejectInviteCallbackInternal(System.IntPtr data); } \ No newline at end of file diff --git a/EOSSDK/Generated/Lobby/OnSendInviteCallback.cs b/EOSSDK/Generated/Lobby/OnSendInviteCallback.cs index 9c5f4339..5f39c11f 100644 --- a/EOSSDK/Generated/Lobby/OnSendInviteCallback.cs +++ b/EOSSDK/Generated/Lobby/OnSendInviteCallback.cs @@ -9,5 +9,6 @@ namespace Epic.OnlineServices.Lobby /// A CallbackInfo containing the output information and result public delegate void OnSendInviteCallback(SendInviteCallbackInfo data); + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] internal delegate void OnSendInviteCallbackInternal(System.IntPtr data); } \ No newline at end of file diff --git a/EOSSDK/Generated/Lobby/OnUpdateLobbyCallback.cs b/EOSSDK/Generated/Lobby/OnUpdateLobbyCallback.cs index 06810ee7..dbc57836 100644 --- a/EOSSDK/Generated/Lobby/OnUpdateLobbyCallback.cs +++ b/EOSSDK/Generated/Lobby/OnUpdateLobbyCallback.cs @@ -9,5 +9,6 @@ namespace Epic.OnlineServices.Lobby /// A CallbackInfo containing the output information and result public delegate void OnUpdateLobbyCallback(UpdateLobbyCallbackInfo data); + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] internal delegate void OnUpdateLobbyCallbackInternal(System.IntPtr data); } \ No newline at end of file diff --git a/EOSSDK/Generated/Lobby/PromoteMemberOptions.cs b/EOSSDK/Generated/Lobby/PromoteMemberOptions.cs index 78c5eee3..2792c9cb 100644 --- a/EOSSDK/Generated/Lobby/PromoteMemberOptions.cs +++ b/EOSSDK/Generated/Lobby/PromoteMemberOptions.cs @@ -74,6 +74,9 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_LobbyId); + Helper.TryMarshalDispose(ref m_LocalUserId); + Helper.TryMarshalDispose(ref m_TargetUserId); } } } \ No newline at end of file diff --git a/EOSSDK/Generated/Lobby/QueryInvitesOptions.cs b/EOSSDK/Generated/Lobby/QueryInvitesOptions.cs index 711db927..20ad0101 100644 --- a/EOSSDK/Generated/Lobby/QueryInvitesOptions.cs +++ b/EOSSDK/Generated/Lobby/QueryInvitesOptions.cs @@ -44,6 +44,7 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_LocalUserId); } } } \ No newline at end of file diff --git a/EOSSDK/Generated/Lobby/RTCRoomConnectionChangedCallbackInfo.cs b/EOSSDK/Generated/Lobby/RTCRoomConnectionChangedCallbackInfo.cs new file mode 100644 index 00000000..504ab73d --- /dev/null +++ b/EOSSDK/Generated/Lobby/RTCRoomConnectionChangedCallbackInfo.cs @@ -0,0 +1,126 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.Lobby +{ + public class RTCRoomConnectionChangedCallbackInfo : ICallbackInfo, ISettable + { + /// + /// Context that was passed into + /// + public object ClientData { get; private set; } + + /// + /// The ID of the lobby which had a RTC Room connection state change + /// + public string LobbyId { get; private set; } + + /// + /// The Product User ID of the local user who is in the lobby and registered for notifications + /// + public ProductUserId LocalUserId { get; private set; } + + /// + /// The new connection state of the room + /// + public bool IsConnected { get; private set; } + + /// + /// : The room was left locally. This may be because: the associated lobby was Left or Destroyed, the connection to the lobby was interrupted, or because the SDK is being shutdown. If the lobby connection returns (lobby did not permanently go away), we will reconnect. + /// : There was a network issue connecting to the server. We will attempt to reconnect soon. + /// : The user has been kicked by the server. We will not reconnect. + /// : The user has been banned by the server. We will not reconnect. + /// : A known error occurred during interaction with the server. We will attempt to reconnect soon. + /// : Unexpected error. We will attempt to reconnect soon. + /// + public Result DisconnectReason { get; private set; } + + public Result? GetResultCode() + { + return null; + } + + internal void Set(RTCRoomConnectionChangedCallbackInfoInternal? other) + { + if (other != null) + { + ClientData = other.Value.ClientData; + LobbyId = other.Value.LobbyId; + LocalUserId = other.Value.LocalUserId; + IsConnected = other.Value.IsConnected; + DisconnectReason = other.Value.DisconnectReason; + } + } + + public void Set(object other) + { + Set(other as RTCRoomConnectionChangedCallbackInfoInternal?); + } + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct RTCRoomConnectionChangedCallbackInfoInternal : ICallbackInfoInternal + { + private System.IntPtr m_ClientData; + private System.IntPtr m_LobbyId; + private System.IntPtr m_LocalUserId; + private int m_IsConnected; + private Result m_DisconnectReason; + + public object ClientData + { + get + { + object value; + Helper.TryMarshalGet(m_ClientData, out value); + return value; + } + } + + public System.IntPtr ClientDataAddress + { + get + { + return m_ClientData; + } + } + + public string LobbyId + { + get + { + string value; + Helper.TryMarshalGet(m_LobbyId, out value); + return value; + } + } + + public ProductUserId LocalUserId + { + get + { + ProductUserId value; + Helper.TryMarshalGet(m_LocalUserId, out value); + return value; + } + } + + public bool IsConnected + { + get + { + bool value; + Helper.TryMarshalGet(m_IsConnected, out value); + return value; + } + } + + public Result DisconnectReason + { + get + { + return m_DisconnectReason; + } + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/Lobby/RTCRoomConnectionChangedCallbackInfo.cs.meta b/EOSSDK/Generated/Lobby/RTCRoomConnectionChangedCallbackInfo.cs.meta new file mode 100644 index 00000000..c1e148c0 --- /dev/null +++ b/EOSSDK/Generated/Lobby/RTCRoomConnectionChangedCallbackInfo.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 7a206ed24ab8f934288b09fbd314064e +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/Lobby/RejectInviteOptions.cs b/EOSSDK/Generated/Lobby/RejectInviteOptions.cs index 17bfda33..911a02b9 100644 --- a/EOSSDK/Generated/Lobby/RejectInviteOptions.cs +++ b/EOSSDK/Generated/Lobby/RejectInviteOptions.cs @@ -60,6 +60,7 @@ public void Set(object other) public void Dispose() { Helper.TryMarshalDispose(ref m_InviteId); + Helper.TryMarshalDispose(ref m_LocalUserId); } } } \ No newline at end of file diff --git a/EOSSDK/Generated/Lobby/SendInviteOptions.cs b/EOSSDK/Generated/Lobby/SendInviteOptions.cs index 36fdb99c..d0e7331c 100644 --- a/EOSSDK/Generated/Lobby/SendInviteOptions.cs +++ b/EOSSDK/Generated/Lobby/SendInviteOptions.cs @@ -74,6 +74,9 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_LobbyId); + Helper.TryMarshalDispose(ref m_LocalUserId); + Helper.TryMarshalDispose(ref m_TargetUserId); } } } \ No newline at end of file diff --git a/EOSSDK/Generated/Lobby/UpdateLobbyModificationOptions.cs b/EOSSDK/Generated/Lobby/UpdateLobbyModificationOptions.cs index 7b1e35ac..65fb3c39 100644 --- a/EOSSDK/Generated/Lobby/UpdateLobbyModificationOptions.cs +++ b/EOSSDK/Generated/Lobby/UpdateLobbyModificationOptions.cs @@ -59,6 +59,8 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_LocalUserId); + Helper.TryMarshalDispose(ref m_LobbyId); } } } \ No newline at end of file diff --git a/EOSSDK/Generated/Lobby/UpdateLobbyOptions.cs b/EOSSDK/Generated/Lobby/UpdateLobbyOptions.cs index 8be27ebc..f0030a33 100644 --- a/EOSSDK/Generated/Lobby/UpdateLobbyOptions.cs +++ b/EOSSDK/Generated/Lobby/UpdateLobbyOptions.cs @@ -44,6 +44,7 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_LobbyModificationHandle); } } } \ No newline at end of file diff --git a/EOSSDK/Generated/Logging/LogCategory.cs b/EOSSDK/Generated/Logging/LogCategory.cs index dc361c76..b33d3452 100644 --- a/EOSSDK/Generated/Logging/LogCategory.cs +++ b/EOSSDK/Generated/Logging/LogCategory.cs @@ -105,6 +105,34 @@ public enum LogCategory : int /// Mods = 23, /// + /// Logs related to the Anti-Cheat service + /// + AntiCheat = 24, + /// + /// Logs related to reports client. + /// + Reports = 25, + /// + /// Logs related to the Sanctions service + /// + Sanctions = 26, + /// + /// Logs related to the Progression Snapshot service + /// + ProgressionSnapshots = 27, + /// + /// Logs related to the Kids Web Services integration + /// + Kws = 28, + /// + /// Logs related to the RTC API + /// + Rtc = 29, + /// + /// Logs related to the RTC Admin API + /// + RTCAdmin = 30, + /// /// Not a real log category. Used by to set the log level for all categories at the same time /// AllCategories = 0x7fffffff diff --git a/EOSSDK/Generated/Logging/LogMessageFunc.cs b/EOSSDK/Generated/Logging/LogMessageFunc.cs index 95b088d3..8e8341fe 100644 --- a/EOSSDK/Generated/Logging/LogMessageFunc.cs +++ b/EOSSDK/Generated/Logging/LogMessageFunc.cs @@ -10,5 +10,6 @@ namespace Epic.OnlineServices.Logging /// A containing the log category, log level, and message. public delegate void LogMessageFunc(LogMessage message); + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] internal delegate void LogMessageFuncInternal(System.IntPtr message); } \ No newline at end of file diff --git a/EOSSDK/Generated/Logging/LoggingInterface.cs b/EOSSDK/Generated/Logging/LoggingInterface.cs index 9b6abd9f..40ec84d2 100644 --- a/EOSSDK/Generated/Logging/LoggingInterface.cs +++ b/EOSSDK/Generated/Logging/LoggingInterface.cs @@ -19,7 +19,7 @@ public static Result SetCallback(LogMessageFunc callback) var callbackInternal = new LogMessageFuncInternal(LogMessageFuncInternalImplementation); Helper.AddStaticCallback("LogMessageFuncInternalImplementation", callback, callbackInternal); - var funcResult = EOS_Logging_SetCallback(callbackInternal); + var funcResult = Bindings.EOS_Logging_SetCallback(callbackInternal); return funcResult; } @@ -35,7 +35,7 @@ public static Result SetCallback(LogMessageFunc callback) /// public static Result SetLogLevel(LogCategory logCategory, LogLevel logLevel) { - var funcResult = EOS_Logging_SetLogLevel(logCategory, logLevel); + var funcResult = Bindings.EOS_Logging_SetLogLevel(logCategory, logLevel); return funcResult; } @@ -52,11 +52,5 @@ internal static void LogMessageFuncInternalImplementation(System.IntPtr message) callback(messageObj); } } - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_Logging_SetCallback(LogMessageFuncInternal callback); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_Logging_SetLogLevel(LogCategory logCategory, LogLevel logLevel); } } \ No newline at end of file diff --git a/EOSSDK/Generated/Metrics/BeginPlayerSessionOptionsAccountId.cs b/EOSSDK/Generated/Metrics/BeginPlayerSessionOptionsAccountId.cs index 5f1af54e..db9e537d 100644 --- a/EOSSDK/Generated/Metrics/BeginPlayerSessionOptionsAccountId.cs +++ b/EOSSDK/Generated/Metrics/BeginPlayerSessionOptionsAccountId.cs @@ -142,6 +142,7 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_Epic); Helper.TryMarshalDispose(ref m_External, m_AccountIdType, MetricsAccountIdType.External); } } diff --git a/EOSSDK/Generated/Metrics/EndPlayerSessionOptionsAccountId.cs b/EOSSDK/Generated/Metrics/EndPlayerSessionOptionsAccountId.cs index 7d6c85a3..41f591bf 100644 --- a/EOSSDK/Generated/Metrics/EndPlayerSessionOptionsAccountId.cs +++ b/EOSSDK/Generated/Metrics/EndPlayerSessionOptionsAccountId.cs @@ -142,6 +142,7 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_Epic); Helper.TryMarshalDispose(ref m_External, m_AccountIdType, MetricsAccountIdType.External); } } diff --git a/EOSSDK/Generated/Metrics/MetricsInterface.cs b/EOSSDK/Generated/Metrics/MetricsInterface.cs index c8344f01..f7aacfb8 100644 --- a/EOSSDK/Generated/Metrics/MetricsInterface.cs +++ b/EOSSDK/Generated/Metrics/MetricsInterface.cs @@ -3,7 +3,7 @@ namespace Epic.OnlineServices.Metrics { - public sealed class MetricsInterface : Handle + public sealed partial class MetricsInterface : Handle { public MetricsInterface() { @@ -35,10 +35,10 @@ public MetricsInterface(System.IntPtr innerHandle) : base(innerHandle) /// public Result BeginPlayerSession(BeginPlayerSessionOptions options) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); - var funcResult = EOS_Metrics_BeginPlayerSession(InnerHandle, optionsAddress); + var funcResult = Bindings.EOS_Metrics_BeginPlayerSession(InnerHandle, optionsAddress); Helper.TryMarshalDispose(ref optionsAddress); @@ -57,20 +57,14 @@ public Result BeginPlayerSession(BeginPlayerSessionOptions options) /// public Result EndPlayerSession(EndPlayerSessionOptions options) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); - var funcResult = EOS_Metrics_EndPlayerSession(InnerHandle, optionsAddress); + var funcResult = Bindings.EOS_Metrics_EndPlayerSession(InnerHandle, optionsAddress); Helper.TryMarshalDispose(ref optionsAddress); return funcResult; } - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_Metrics_BeginPlayerSession(System.IntPtr handle, System.IntPtr options); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_Metrics_EndPlayerSession(System.IntPtr handle, System.IntPtr options); } } \ No newline at end of file diff --git a/EOSSDK/Generated/Mods/CopyModInfoOptions.cs b/EOSSDK/Generated/Mods/CopyModInfoOptions.cs index 8cda4d7d..8cdb2176 100644 --- a/EOSSDK/Generated/Mods/CopyModInfoOptions.cs +++ b/EOSSDK/Generated/Mods/CopyModInfoOptions.cs @@ -59,6 +59,7 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_LocalUserId); } } } \ No newline at end of file diff --git a/EOSSDK/Generated/Mods/EnumerateModsCallbackInfo.cs b/EOSSDK/Generated/Mods/EnumerateModsCallbackInfo.cs index 9e17d9bc..dcaf8510 100644 --- a/EOSSDK/Generated/Mods/EnumerateModsCallbackInfo.cs +++ b/EOSSDK/Generated/Mods/EnumerateModsCallbackInfo.cs @@ -19,7 +19,7 @@ public class EnumerateModsCallbackInfo : ICallbackInfo, ISettable public EpicAccountId LocalUserId { get; private set; } /// - /// Context that was passed into to + /// Context that is passed into /// public object ClientData { get; private set; } diff --git a/EOSSDK/Generated/Mods/EnumerateModsOptions.cs b/EOSSDK/Generated/Mods/EnumerateModsOptions.cs index 282fa0bf..dc33848d 100644 --- a/EOSSDK/Generated/Mods/EnumerateModsOptions.cs +++ b/EOSSDK/Generated/Mods/EnumerateModsOptions.cs @@ -59,6 +59,7 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_LocalUserId); } } } \ No newline at end of file diff --git a/EOSSDK/Generated/Mods/InstallModCallbackInfo.cs b/EOSSDK/Generated/Mods/InstallModCallbackInfo.cs index ef4d7cb9..081871b3 100644 --- a/EOSSDK/Generated/Mods/InstallModCallbackInfo.cs +++ b/EOSSDK/Generated/Mods/InstallModCallbackInfo.cs @@ -19,7 +19,7 @@ public class InstallModCallbackInfo : ICallbackInfo, ISettable public EpicAccountId LocalUserId { get; private set; } /// - /// Context that was passed into to + /// Context that is passed into /// public object ClientData { get; private set; } diff --git a/EOSSDK/Generated/Mods/InstallModOptions.cs b/EOSSDK/Generated/Mods/InstallModOptions.cs index 83550863..0c5c0cbd 100644 --- a/EOSSDK/Generated/Mods/InstallModOptions.cs +++ b/EOSSDK/Generated/Mods/InstallModOptions.cs @@ -74,6 +74,7 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_LocalUserId); Helper.TryMarshalDispose(ref m_Mod); } } diff --git a/EOSSDK/Generated/Mods/ModsInterface.cs b/EOSSDK/Generated/Mods/ModsInterface.cs index e5e12a7c..27dd2324 100644 --- a/EOSSDK/Generated/Mods/ModsInterface.cs +++ b/EOSSDK/Generated/Mods/ModsInterface.cs @@ -3,7 +3,7 @@ namespace Epic.OnlineServices.Mods { - public sealed class ModsInterface : Handle + public sealed partial class ModsInterface : Handle { public ModsInterface() { @@ -61,18 +61,18 @@ public ModsInterface(System.IntPtr innerHandle) : base(innerHandle) /// public Result CopyModInfo(CopyModInfoOptions options, out ModInfo outEnumeratedMods) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var outEnumeratedModsAddress = System.IntPtr.Zero; - var funcResult = EOS_Mods_CopyModInfo(InnerHandle, optionsAddress, ref outEnumeratedModsAddress); + var funcResult = Bindings.EOS_Mods_CopyModInfo(InnerHandle, optionsAddress, ref outEnumeratedModsAddress); Helper.TryMarshalDispose(ref optionsAddress); if (Helper.TryMarshalGet(outEnumeratedModsAddress, out outEnumeratedMods)) { - EOS_Mods_ModInfo_Release(outEnumeratedModsAddress); + Bindings.EOS_Mods_ModInfo_Release(outEnumeratedModsAddress); } return funcResult; @@ -88,7 +88,7 @@ public Result CopyModInfo(CopyModInfoOptions options, out ModInfo outEnumeratedM /// a callback that is fired when the async operation completes, either successfully or in error public void EnumerateMods(EnumerateModsOptions options, object clientData, OnEnumerateModsCallback completionDelegate) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var clientDataAddress = System.IntPtr.Zero; @@ -96,7 +96,7 @@ public void EnumerateMods(EnumerateModsOptions options, object clientData, OnEnu var completionDelegateInternal = new OnEnumerateModsCallbackInternal(OnEnumerateModsCallbackInternalImplementation); Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - EOS_Mods_EnumerateMods(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); + Bindings.EOS_Mods_EnumerateMods(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); Helper.TryMarshalDispose(ref optionsAddress); } @@ -110,7 +110,7 @@ public void EnumerateMods(EnumerateModsOptions options, object clientData, OnEnu /// a callback that is fired when the async operation completes, either successfully or in error public void InstallMod(InstallModOptions options, object clientData, OnInstallModCallback completionDelegate) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var clientDataAddress = System.IntPtr.Zero; @@ -118,7 +118,7 @@ public void InstallMod(InstallModOptions options, object clientData, OnInstallMo var completionDelegateInternal = new OnInstallModCallbackInternal(OnInstallModCallbackInternalImplementation); Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - EOS_Mods_InstallMod(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); + Bindings.EOS_Mods_InstallMod(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); Helper.TryMarshalDispose(ref optionsAddress); } @@ -132,7 +132,7 @@ public void InstallMod(InstallModOptions options, object clientData, OnInstallMo /// a callback that is fired when the async operation completes, either successfully or in error public void UninstallMod(UninstallModOptions options, object clientData, OnUninstallModCallback completionDelegate) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var clientDataAddress = System.IntPtr.Zero; @@ -140,7 +140,7 @@ public void UninstallMod(UninstallModOptions options, object clientData, OnUnins var completionDelegateInternal = new OnUninstallModCallbackInternal(OnUninstallModCallbackInternalImplementation); Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - EOS_Mods_UninstallMod(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); + Bindings.EOS_Mods_UninstallMod(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); Helper.TryMarshalDispose(ref optionsAddress); } @@ -154,7 +154,7 @@ public void UninstallMod(UninstallModOptions options, object clientData, OnUnins /// a callback that is fired when the async operation completes, either successfully or in error. If the mod is up to date then the operation will complete with success. public void UpdateMod(UpdateModOptions options, object clientData, OnUpdateModCallback completionDelegate) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var clientDataAddress = System.IntPtr.Zero; @@ -162,7 +162,7 @@ public void UpdateMod(UpdateModOptions options, object clientData, OnUpdateModCa var completionDelegateInternal = new OnUpdateModCallbackInternal(OnUpdateModCallbackInternalImplementation); Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - EOS_Mods_UpdateMod(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); + Bindings.EOS_Mods_UpdateMod(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); Helper.TryMarshalDispose(ref optionsAddress); } @@ -210,23 +210,5 @@ internal static void OnUpdateModCallbackInternalImplementation(System.IntPtr dat callback(callbackInfo); } } - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_Mods_CopyModInfo(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outEnumeratedMods); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern void EOS_Mods_EnumerateMods(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, OnEnumerateModsCallbackInternal completionDelegate); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern void EOS_Mods_InstallMod(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, OnInstallModCallbackInternal completionDelegate); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern void EOS_Mods_ModInfo_Release(System.IntPtr modInfo); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern void EOS_Mods_UninstallMod(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, OnUninstallModCallbackInternal completionDelegate); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern void EOS_Mods_UpdateMod(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, OnUpdateModCallbackInternal completionDelegate); } } \ No newline at end of file diff --git a/EOSSDK/Generated/Mods/OnEnumerateModsCallback.cs b/EOSSDK/Generated/Mods/OnEnumerateModsCallback.cs index 2e9c97b2..5f838a61 100644 --- a/EOSSDK/Generated/Mods/OnEnumerateModsCallback.cs +++ b/EOSSDK/Generated/Mods/OnEnumerateModsCallback.cs @@ -9,5 +9,6 @@ namespace Epic.OnlineServices.Mods /// A containing the output information and result public delegate void OnEnumerateModsCallback(EnumerateModsCallbackInfo data); + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] internal delegate void OnEnumerateModsCallbackInternal(System.IntPtr data); } \ No newline at end of file diff --git a/EOSSDK/Generated/Mods/OnInstallModCallback.cs b/EOSSDK/Generated/Mods/OnInstallModCallback.cs index 852408cb..967b8a31 100644 --- a/EOSSDK/Generated/Mods/OnInstallModCallback.cs +++ b/EOSSDK/Generated/Mods/OnInstallModCallback.cs @@ -9,5 +9,6 @@ namespace Epic.OnlineServices.Mods /// A containing the output information and result public delegate void OnInstallModCallback(InstallModCallbackInfo data); + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] internal delegate void OnInstallModCallbackInternal(System.IntPtr data); } \ No newline at end of file diff --git a/EOSSDK/Generated/Mods/OnUninstallModCallback.cs b/EOSSDK/Generated/Mods/OnUninstallModCallback.cs index e1a3979d..03a582c3 100644 --- a/EOSSDK/Generated/Mods/OnUninstallModCallback.cs +++ b/EOSSDK/Generated/Mods/OnUninstallModCallback.cs @@ -9,5 +9,6 @@ namespace Epic.OnlineServices.Mods /// A containing the output information and result public delegate void OnUninstallModCallback(UninstallModCallbackInfo data); + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] internal delegate void OnUninstallModCallbackInternal(System.IntPtr data); } \ No newline at end of file diff --git a/EOSSDK/Generated/Mods/OnUpdateModCallback.cs b/EOSSDK/Generated/Mods/OnUpdateModCallback.cs index 3dac368c..efce5891 100644 --- a/EOSSDK/Generated/Mods/OnUpdateModCallback.cs +++ b/EOSSDK/Generated/Mods/OnUpdateModCallback.cs @@ -9,5 +9,6 @@ namespace Epic.OnlineServices.Mods /// A containing the output information and result public delegate void OnUpdateModCallback(UpdateModCallbackInfo data); + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] internal delegate void OnUpdateModCallbackInternal(System.IntPtr data); } \ No newline at end of file diff --git a/EOSSDK/Generated/Mods/UninstallModCallbackInfo.cs b/EOSSDK/Generated/Mods/UninstallModCallbackInfo.cs index 29a10c00..0e978c35 100644 --- a/EOSSDK/Generated/Mods/UninstallModCallbackInfo.cs +++ b/EOSSDK/Generated/Mods/UninstallModCallbackInfo.cs @@ -19,7 +19,7 @@ public class UninstallModCallbackInfo : ICallbackInfo, ISettable public EpicAccountId LocalUserId { get; private set; } /// - /// Context that was passed into to + /// Context that is passed into /// public object ClientData { get; private set; } diff --git a/EOSSDK/Generated/Mods/UninstallModOptions.cs b/EOSSDK/Generated/Mods/UninstallModOptions.cs index 4b1d93bf..44664d2d 100644 --- a/EOSSDK/Generated/Mods/UninstallModOptions.cs +++ b/EOSSDK/Generated/Mods/UninstallModOptions.cs @@ -59,6 +59,7 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_LocalUserId); Helper.TryMarshalDispose(ref m_Mod); } } diff --git a/EOSSDK/Generated/Mods/UpdateModCallbackInfo.cs b/EOSSDK/Generated/Mods/UpdateModCallbackInfo.cs index 6f0b48d0..3c87cb34 100644 --- a/EOSSDK/Generated/Mods/UpdateModCallbackInfo.cs +++ b/EOSSDK/Generated/Mods/UpdateModCallbackInfo.cs @@ -19,7 +19,7 @@ public class UpdateModCallbackInfo : ICallbackInfo, ISettable public EpicAccountId LocalUserId { get; private set; } /// - /// Context that was passed into to + /// Context that is passed into /// public object ClientData { get; private set; } diff --git a/EOSSDK/Generated/Mods/UpdateModOptions.cs b/EOSSDK/Generated/Mods/UpdateModOptions.cs index fd82e580..3379461d 100644 --- a/EOSSDK/Generated/Mods/UpdateModOptions.cs +++ b/EOSSDK/Generated/Mods/UpdateModOptions.cs @@ -59,6 +59,7 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_LocalUserId); Helper.TryMarshalDispose(ref m_Mod); } } diff --git a/EOSSDK/Generated/P2P/AcceptConnectionOptions.cs b/EOSSDK/Generated/P2P/AcceptConnectionOptions.cs index 815b74a0..a4e82c87 100644 --- a/EOSSDK/Generated/P2P/AcceptConnectionOptions.cs +++ b/EOSSDK/Generated/P2P/AcceptConnectionOptions.cs @@ -74,6 +74,8 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_LocalUserId); + Helper.TryMarshalDispose(ref m_RemoteUserId); Helper.TryMarshalDispose(ref m_SocketId); } } diff --git a/EOSSDK/Generated/P2P/AddNotifyIncomingPacketQueueFullOptions.cs b/EOSSDK/Generated/P2P/AddNotifyIncomingPacketQueueFullOptions.cs new file mode 100644 index 00000000..e68f0e31 --- /dev/null +++ b/EOSSDK/Generated/P2P/AddNotifyIncomingPacketQueueFullOptions.cs @@ -0,0 +1,35 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.P2P +{ + /// + /// Structure containing information about what version of the function is supported. + /// + public class AddNotifyIncomingPacketQueueFullOptions + { + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct AddNotifyIncomingPacketQueueFullOptionsInternal : ISettable, System.IDisposable + { + private int m_ApiVersion; + + public void Set(AddNotifyIncomingPacketQueueFullOptions other) + { + if (other != null) + { + m_ApiVersion = P2PInterface.AddnotifyincomingpacketqueuefullApiLatest; + } + } + + public void Set(object other) + { + Set(other as AddNotifyIncomingPacketQueueFullOptions); + } + + public void Dispose() + { + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/P2P/AddNotifyIncomingPacketQueueFullOptions.cs.meta b/EOSSDK/Generated/P2P/AddNotifyIncomingPacketQueueFullOptions.cs.meta new file mode 100644 index 00000000..46590050 --- /dev/null +++ b/EOSSDK/Generated/P2P/AddNotifyIncomingPacketQueueFullOptions.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: e0341b37499def74c8cd04867f9b1e28 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/P2P/AddNotifyPeerConnectionClosedOptions.cs b/EOSSDK/Generated/P2P/AddNotifyPeerConnectionClosedOptions.cs index c42ad0fc..9977e8b2 100644 --- a/EOSSDK/Generated/P2P/AddNotifyPeerConnectionClosedOptions.cs +++ b/EOSSDK/Generated/P2P/AddNotifyPeerConnectionClosedOptions.cs @@ -59,6 +59,7 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_LocalUserId); Helper.TryMarshalDispose(ref m_SocketId); } } diff --git a/EOSSDK/Generated/P2P/AddNotifyPeerConnectionRequestOptions.cs b/EOSSDK/Generated/P2P/AddNotifyPeerConnectionRequestOptions.cs index 131ceb90..ca5ce904 100644 --- a/EOSSDK/Generated/P2P/AddNotifyPeerConnectionRequestOptions.cs +++ b/EOSSDK/Generated/P2P/AddNotifyPeerConnectionRequestOptions.cs @@ -59,6 +59,7 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_LocalUserId); Helper.TryMarshalDispose(ref m_SocketId); } } diff --git a/EOSSDK/Generated/P2P/CloseConnectionOptions.cs b/EOSSDK/Generated/P2P/CloseConnectionOptions.cs index ad516f4e..151c0a1e 100644 --- a/EOSSDK/Generated/P2P/CloseConnectionOptions.cs +++ b/EOSSDK/Generated/P2P/CloseConnectionOptions.cs @@ -74,6 +74,8 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_LocalUserId); + Helper.TryMarshalDispose(ref m_RemoteUserId); Helper.TryMarshalDispose(ref m_SocketId); } } diff --git a/EOSSDK/Generated/P2P/CloseConnectionsOptions.cs b/EOSSDK/Generated/P2P/CloseConnectionsOptions.cs index 4af8c4fd..49d1c532 100644 --- a/EOSSDK/Generated/P2P/CloseConnectionsOptions.cs +++ b/EOSSDK/Generated/P2P/CloseConnectionsOptions.cs @@ -59,6 +59,7 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_LocalUserId); Helper.TryMarshalDispose(ref m_SocketId); } } diff --git a/EOSSDK/Generated/P2P/GetNextReceivedPacketSizeOptions.cs b/EOSSDK/Generated/P2P/GetNextReceivedPacketSizeOptions.cs index 92b49cd7..8390569f 100644 --- a/EOSSDK/Generated/P2P/GetNextReceivedPacketSizeOptions.cs +++ b/EOSSDK/Generated/P2P/GetNextReceivedPacketSizeOptions.cs @@ -59,6 +59,7 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_LocalUserId); Helper.TryMarshalDispose(ref m_RequestedChannel); } } diff --git a/EOSSDK/Generated/P2P/GetPacketQueueInfoOptions.cs b/EOSSDK/Generated/P2P/GetPacketQueueInfoOptions.cs new file mode 100644 index 00000000..0ed14a42 --- /dev/null +++ b/EOSSDK/Generated/P2P/GetPacketQueueInfoOptions.cs @@ -0,0 +1,35 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.P2P +{ + /// + /// Structure containing information needed to get the current packet queue information. + /// + public class GetPacketQueueInfoOptions + { + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct GetPacketQueueInfoOptionsInternal : ISettable, System.IDisposable + { + private int m_ApiVersion; + + public void Set(GetPacketQueueInfoOptions other) + { + if (other != null) + { + m_ApiVersion = P2PInterface.GetpacketqueueinfoApiLatest; + } + } + + public void Set(object other) + { + Set(other as GetPacketQueueInfoOptions); + } + + public void Dispose() + { + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/P2P/GetPacketQueueInfoOptions.cs.meta b/EOSSDK/Generated/P2P/GetPacketQueueInfoOptions.cs.meta new file mode 100644 index 00000000..253a70d0 --- /dev/null +++ b/EOSSDK/Generated/P2P/GetPacketQueueInfoOptions.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 9bb8b77010f62f64cae3eacb2f1546d3 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/P2P/OnIncomingConnectionRequestCallback.cs b/EOSSDK/Generated/P2P/OnIncomingConnectionRequestCallback.cs index d916ca8b..9b203cb9 100644 --- a/EOSSDK/Generated/P2P/OnIncomingConnectionRequestCallback.cs +++ b/EOSSDK/Generated/P2P/OnIncomingConnectionRequestCallback.cs @@ -8,5 +8,6 @@ namespace Epic.OnlineServices.P2P /// public delegate void OnIncomingConnectionRequestCallback(OnIncomingConnectionRequestInfo data); + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] internal delegate void OnIncomingConnectionRequestCallbackInternal(System.IntPtr data); } \ No newline at end of file diff --git a/EOSSDK/Generated/P2P/OnIncomingPacketQueueFullCallback.cs b/EOSSDK/Generated/P2P/OnIncomingPacketQueueFullCallback.cs new file mode 100644 index 00000000..7c10fe99 --- /dev/null +++ b/EOSSDK/Generated/P2P/OnIncomingPacketQueueFullCallback.cs @@ -0,0 +1,13 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.P2P +{ + /// + /// Callback for information related to incoming connection requests. + /// + public delegate void OnIncomingPacketQueueFullCallback(OnIncomingPacketQueueFullInfo data); + + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void OnIncomingPacketQueueFullCallbackInternal(System.IntPtr data); +} \ No newline at end of file diff --git a/EOSSDK/Generated/P2P/OnIncomingPacketQueueFullCallback.cs.meta b/EOSSDK/Generated/P2P/OnIncomingPacketQueueFullCallback.cs.meta new file mode 100644 index 00000000..cfda325a --- /dev/null +++ b/EOSSDK/Generated/P2P/OnIncomingPacketQueueFullCallback.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 98ea17cbf3dc1c44f8fbd3d2f05fab46 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/P2P/OnIncomingPacketQueueFullInfo.cs b/EOSSDK/Generated/P2P/OnIncomingPacketQueueFullInfo.cs new file mode 100644 index 00000000..e15fb8cd --- /dev/null +++ b/EOSSDK/Generated/P2P/OnIncomingPacketQueueFullInfo.cs @@ -0,0 +1,135 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.P2P +{ + /// + /// Structure containing information about the packet queue's state and the incoming packet that would overflow the queue + /// + public class OnIncomingPacketQueueFullInfo : ICallbackInfo, ISettable + { + /// + /// Client-specified data passed into AddNotifyIncomingPacketQueueFull + /// + public object ClientData { get; private set; } + + /// + /// The maximum size in bytes the incoming packet queue is allowed to use + /// + public ulong PacketQueueMaxSizeBytes { get; private set; } + + /// + /// The current size in bytes the incoming packet queue is currently using + /// + public ulong PacketQueueCurrentSizeBytes { get; private set; } + + /// + /// The Product User ID of the local user who is receiving the packet that would overflow the queue + /// + public ProductUserId OverflowPacketLocalUserId { get; private set; } + + /// + /// The channel the incoming packet is for + /// + public byte OverflowPacketChannel { get; private set; } + + /// + /// The size in bytes of the incoming packet (and related metadata) that would overflow the queue + /// + public uint OverflowPacketSizeBytes { get; private set; } + + public Result? GetResultCode() + { + return null; + } + + internal void Set(OnIncomingPacketQueueFullInfoInternal? other) + { + if (other != null) + { + ClientData = other.Value.ClientData; + PacketQueueMaxSizeBytes = other.Value.PacketQueueMaxSizeBytes; + PacketQueueCurrentSizeBytes = other.Value.PacketQueueCurrentSizeBytes; + OverflowPacketLocalUserId = other.Value.OverflowPacketLocalUserId; + OverflowPacketChannel = other.Value.OverflowPacketChannel; + OverflowPacketSizeBytes = other.Value.OverflowPacketSizeBytes; + } + } + + public void Set(object other) + { + Set(other as OnIncomingPacketQueueFullInfoInternal?); + } + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct OnIncomingPacketQueueFullInfoInternal : ICallbackInfoInternal + { + private System.IntPtr m_ClientData; + private ulong m_PacketQueueMaxSizeBytes; + private ulong m_PacketQueueCurrentSizeBytes; + private System.IntPtr m_OverflowPacketLocalUserId; + private byte m_OverflowPacketChannel; + private uint m_OverflowPacketSizeBytes; + + public object ClientData + { + get + { + object value; + Helper.TryMarshalGet(m_ClientData, out value); + return value; + } + } + + public System.IntPtr ClientDataAddress + { + get + { + return m_ClientData; + } + } + + public ulong PacketQueueMaxSizeBytes + { + get + { + return m_PacketQueueMaxSizeBytes; + } + } + + public ulong PacketQueueCurrentSizeBytes + { + get + { + return m_PacketQueueCurrentSizeBytes; + } + } + + public ProductUserId OverflowPacketLocalUserId + { + get + { + ProductUserId value; + Helper.TryMarshalGet(m_OverflowPacketLocalUserId, out value); + return value; + } + } + + public byte OverflowPacketChannel + { + get + { + return m_OverflowPacketChannel; + } + } + + public uint OverflowPacketSizeBytes + { + get + { + return m_OverflowPacketSizeBytes; + } + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/P2P/OnIncomingPacketQueueFullInfo.cs.meta b/EOSSDK/Generated/P2P/OnIncomingPacketQueueFullInfo.cs.meta new file mode 100644 index 00000000..9d4efecc --- /dev/null +++ b/EOSSDK/Generated/P2P/OnIncomingPacketQueueFullInfo.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: a5c415ab073c97d49bf9851607da63c5 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/P2P/OnQueryNATTypeCompleteCallback.cs b/EOSSDK/Generated/P2P/OnQueryNATTypeCompleteCallback.cs index 0aa47255..46851ae5 100644 --- a/EOSSDK/Generated/P2P/OnQueryNATTypeCompleteCallback.cs +++ b/EOSSDK/Generated/P2P/OnQueryNATTypeCompleteCallback.cs @@ -8,5 +8,6 @@ namespace Epic.OnlineServices.P2P /// public delegate void OnQueryNATTypeCompleteCallback(OnQueryNATTypeCompleteInfo data); + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] internal delegate void OnQueryNATTypeCompleteCallbackInternal(System.IntPtr data); } \ No newline at end of file diff --git a/EOSSDK/Generated/P2P/OnRemoteConnectionClosedCallback.cs b/EOSSDK/Generated/P2P/OnRemoteConnectionClosedCallback.cs index 04e71afe..4bd371ea 100644 --- a/EOSSDK/Generated/P2P/OnRemoteConnectionClosedCallback.cs +++ b/EOSSDK/Generated/P2P/OnRemoteConnectionClosedCallback.cs @@ -8,5 +8,6 @@ namespace Epic.OnlineServices.P2P /// public delegate void OnRemoteConnectionClosedCallback(OnRemoteConnectionClosedInfo data); + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] internal delegate void OnRemoteConnectionClosedCallbackInternal(System.IntPtr data); } \ No newline at end of file diff --git a/EOSSDK/Generated/P2P/P2PInterface.cs b/EOSSDK/Generated/P2P/P2PInterface.cs index c897b879..6c830bac 100644 --- a/EOSSDK/Generated/P2P/P2PInterface.cs +++ b/EOSSDK/Generated/P2P/P2PInterface.cs @@ -3,7 +3,7 @@ namespace Epic.OnlineServices.P2P { - public sealed class P2PInterface : Handle + public sealed partial class P2PInterface : Handle { public P2PInterface() { @@ -18,6 +18,11 @@ public P2PInterface(System.IntPtr innerHandle) : base(innerHandle) /// public const int AcceptconnectionApiLatest = 1; + /// + /// The most recent version of the API. + /// + public const int AddnotifyincomingpacketqueuefullApiLatest = 1; + /// /// The most recent version of the API. /// @@ -48,6 +53,11 @@ public P2PInterface(System.IntPtr innerHandle) : base(innerHandle) /// public const int GetnextreceivedpacketsizeApiLatest = 2; + /// + /// The most recent version of the API. + /// + public const int GetpacketqueueinfoApiLatest = 1; + /// /// The most recent version of the API. /// @@ -69,6 +79,11 @@ public P2PInterface(System.IntPtr innerHandle) : base(innerHandle) /// public const int MaxPacketSize = 1170; + /// + /// Helper constant to signify that the packet queue is allowed to grow indefinitely + /// + public const int MaxQueueSizeUnlimited = 0; + /// /// The most recent version of the API. /// @@ -84,6 +99,11 @@ public P2PInterface(System.IntPtr innerHandle) : base(innerHandle) /// public const int SendpacketApiLatest = 2; + /// + /// The most recent version of the API. + /// + public const int SetpacketqueuesizeApiLatest = 1; + /// /// The most recent version of the API. /// @@ -109,10 +129,10 @@ public P2PInterface(System.IntPtr innerHandle) : base(innerHandle) /// public Result AcceptConnection(AcceptConnectionOptions options) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); - var funcResult = EOS_P2P_AcceptConnection(InnerHandle, optionsAddress); + var funcResult = Bindings.EOS_P2P_AcceptConnection(InnerHandle, optionsAddress); Helper.TryMarshalDispose(ref optionsAddress); @@ -120,7 +140,38 @@ public Result AcceptConnection(AcceptConnectionOptions options) } /// - /// Listen for when a previously opened connection is closed + /// Listen for when our packet queue has become full. This event gives an opportunity to read packets to make + /// room for new incoming packets. If this event fires and no packets are read by calling + /// or the packet queue size is not increased by , any packets that are received after + /// this event are discarded until there is room again in the queue. + /// + /// Information about what version of the API is supported + /// Arbitrary data that is passed back to you in the CompletionDelegate + /// The callback to be fired when the incoming packet queue is full + /// + /// A valid notification ID if successfully bound, or otherwise + /// + public ulong AddNotifyIncomingPacketQueueFull(AddNotifyIncomingPacketQueueFullOptions options, object clientData, OnIncomingPacketQueueFullCallback incomingPacketQueueFullHandler) + { + var optionsAddress = System.IntPtr.Zero; + Helper.TryMarshalSet(ref optionsAddress, options); + + var clientDataAddress = System.IntPtr.Zero; + + var incomingPacketQueueFullHandlerInternal = new OnIncomingPacketQueueFullCallbackInternal(OnIncomingPacketQueueFullCallbackInternalImplementation); + Helper.AddCallback(ref clientDataAddress, clientData, incomingPacketQueueFullHandler, incomingPacketQueueFullHandlerInternal); + + var funcResult = Bindings.EOS_P2P_AddNotifyIncomingPacketQueueFull(InnerHandle, optionsAddress, clientDataAddress, incomingPacketQueueFullHandlerInternal); + + Helper.TryMarshalDispose(ref optionsAddress); + + Helper.TryAssignNotificationIdToCallback(clientDataAddress, funcResult); + + return funcResult; + } + + /// + /// Listen for when a previously opened connection is closed. /// /// Information about who would like notifications about closed connections, and for which socket /// This value is returned to the caller when ConnectionClosedHandler is invoked @@ -130,7 +181,7 @@ public Result AcceptConnection(AcceptConnectionOptions options) /// public ulong AddNotifyPeerConnectionClosed(AddNotifyPeerConnectionClosedOptions options, object clientData, OnRemoteConnectionClosedCallback connectionClosedHandler) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var clientDataAddress = System.IntPtr.Zero; @@ -138,7 +189,7 @@ public ulong AddNotifyPeerConnectionClosed(AddNotifyPeerConnectionClosedOptions var connectionClosedHandlerInternal = new OnRemoteConnectionClosedCallbackInternal(OnRemoteConnectionClosedCallbackInternalImplementation); Helper.AddCallback(ref clientDataAddress, clientData, connectionClosedHandler, connectionClosedHandlerInternal); - var funcResult = EOS_P2P_AddNotifyPeerConnectionClosed(InnerHandle, optionsAddress, clientDataAddress, connectionClosedHandlerInternal); + var funcResult = Bindings.EOS_P2P_AddNotifyPeerConnectionClosed(InnerHandle, optionsAddress, clientDataAddress, connectionClosedHandlerInternal); Helper.TryMarshalDispose(ref optionsAddress); @@ -159,7 +210,7 @@ public ulong AddNotifyPeerConnectionClosed(AddNotifyPeerConnectionClosedOptions /// public ulong AddNotifyPeerConnectionRequest(AddNotifyPeerConnectionRequestOptions options, object clientData, OnIncomingConnectionRequestCallback connectionRequestHandler) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var clientDataAddress = System.IntPtr.Zero; @@ -167,7 +218,7 @@ public ulong AddNotifyPeerConnectionRequest(AddNotifyPeerConnectionRequestOption var connectionRequestHandlerInternal = new OnIncomingConnectionRequestCallbackInternal(OnIncomingConnectionRequestCallbackInternalImplementation); Helper.AddCallback(ref clientDataAddress, clientData, connectionRequestHandler, connectionRequestHandlerInternal); - var funcResult = EOS_P2P_AddNotifyPeerConnectionRequest(InnerHandle, optionsAddress, clientDataAddress, connectionRequestHandlerInternal); + var funcResult = Bindings.EOS_P2P_AddNotifyPeerConnectionRequest(InnerHandle, optionsAddress, clientDataAddress, connectionRequestHandlerInternal); Helper.TryMarshalDispose(ref optionsAddress); @@ -186,10 +237,10 @@ public ulong AddNotifyPeerConnectionRequest(AddNotifyPeerConnectionRequestOption /// public Result CloseConnection(CloseConnectionOptions options) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); - var funcResult = EOS_P2P_CloseConnection(InnerHandle, optionsAddress); + var funcResult = Bindings.EOS_P2P_CloseConnection(InnerHandle, optionsAddress); Helper.TryMarshalDispose(ref optionsAddress); @@ -206,10 +257,10 @@ public Result CloseConnection(CloseConnectionOptions options) /// public Result CloseConnections(CloseConnectionsOptions options) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); - var funcResult = EOS_P2P_CloseConnections(InnerHandle, optionsAddress); + var funcResult = Bindings.EOS_P2P_CloseConnections(InnerHandle, optionsAddress); Helper.TryMarshalDispose(ref optionsAddress); @@ -227,12 +278,12 @@ public Result CloseConnections(CloseConnectionsOptions options) /// public Result GetNATType(GetNATTypeOptions options, out NATType outNATType) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); outNATType = Helper.GetDefault(); - var funcResult = EOS_P2P_GetNATType(InnerHandle, optionsAddress, ref outNATType); + var funcResult = Bindings.EOS_P2P_GetNATType(InnerHandle, optionsAddress, ref outNATType); Helper.TryMarshalDispose(ref optionsAddress); @@ -252,15 +303,40 @@ public Result GetNATType(GetNATTypeOptions options, out NATType outNATType) /// public Result GetNextReceivedPacketSize(GetNextReceivedPacketSizeOptions options, out uint outPacketSizeBytes) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); outPacketSizeBytes = Helper.GetDefault(); - var funcResult = EOS_P2P_GetNextReceivedPacketSize(InnerHandle, optionsAddress, ref outPacketSizeBytes); + var funcResult = Bindings.EOS_P2P_GetNextReceivedPacketSize(InnerHandle, optionsAddress, ref outPacketSizeBytes); + + Helper.TryMarshalDispose(ref optionsAddress); + + return funcResult; + } + + /// + /// Gets the current cached information related to the incoming and outgoing packet queues. + /// + /// Information about what version of the API is supported + /// The current information of the incoming and outgoing packet queues + /// + /// :: - if the input options were valid + /// :: - if the input was invalid in some way + /// + public Result GetPacketQueueInfo(GetPacketQueueInfoOptions options, out PacketQueueInfo outPacketQueueInfo) + { + var optionsAddress = System.IntPtr.Zero; + Helper.TryMarshalSet(ref optionsAddress, options); + + var outPacketQueueInfoInternal = Helper.GetDefault(); + + var funcResult = Bindings.EOS_P2P_GetPacketQueueInfo(InnerHandle, optionsAddress, ref outPacketQueueInfoInternal); Helper.TryMarshalDispose(ref optionsAddress); + Helper.TryMarshalGet(outPacketQueueInfoInternal, out outPacketQueueInfo); + return funcResult; } @@ -276,14 +352,14 @@ public Result GetNextReceivedPacketSize(GetNextReceivedPacketSizeOptions options /// public Result GetPortRange(GetPortRangeOptions options, out ushort outPort, out ushort outNumAdditionalPortsToTry) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); outPort = Helper.GetDefault(); outNumAdditionalPortsToTry = Helper.GetDefault(); - var funcResult = EOS_P2P_GetPortRange(InnerHandle, optionsAddress, ref outPort, ref outNumAdditionalPortsToTry); + var funcResult = Bindings.EOS_P2P_GetPortRange(InnerHandle, optionsAddress, ref outPort, ref outNumAdditionalPortsToTry); Helper.TryMarshalDispose(ref optionsAddress); @@ -301,12 +377,12 @@ public Result GetPortRange(GetPortRangeOptions options, out ushort outPort, out /// public Result GetRelayControl(GetRelayControlOptions options, out RelayControl outRelayControl) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); outRelayControl = Helper.GetDefault(); - var funcResult = EOS_P2P_GetRelayControl(InnerHandle, optionsAddress, ref outRelayControl); + var funcResult = Bindings.EOS_P2P_GetRelayControl(InnerHandle, optionsAddress, ref outRelayControl); Helper.TryMarshalDispose(ref optionsAddress); @@ -317,18 +393,19 @@ public Result GetRelayControl(GetRelayControlOptions options, out RelayControl o /// Query the current NAT-type of our connection. /// /// Information about what version of the API is supported - /// The callback to be fired when we finish querying our NAT type - public void QueryNATType(QueryNATTypeOptions options, object clientData, OnQueryNATTypeCompleteCallback nATTypeQueriedHandler) + /// arbitrary data that is passed back to you in the CompletionDelegate + /// The callback to be fired when we finish querying our NAT type + public void QueryNATType(QueryNATTypeOptions options, object clientData, OnQueryNATTypeCompleteCallback completionDelegate) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var clientDataAddress = System.IntPtr.Zero; - var nATTypeQueriedHandlerInternal = new OnQueryNATTypeCompleteCallbackInternal(OnQueryNATTypeCompleteCallbackInternalImplementation); - Helper.AddCallback(ref clientDataAddress, clientData, nATTypeQueriedHandler, nATTypeQueriedHandlerInternal); + var completionDelegateInternal = new OnQueryNATTypeCompleteCallbackInternal(OnQueryNATTypeCompleteCallbackInternalImplementation); + Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - EOS_P2P_QueryNATType(InnerHandle, optionsAddress, clientDataAddress, nATTypeQueriedHandlerInternal); + Bindings.EOS_P2P_QueryNATType(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); Helper.TryMarshalDispose(ref optionsAddress); } @@ -349,7 +426,7 @@ public void QueryNATType(QueryNATTypeOptions options, object clientData, OnQuery /// public Result ReceivePacket(ReceivePacketOptions options, out ProductUserId outPeerId, out SocketId outSocketId, out byte outChannel, out byte[] outData) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var outPeerIdAddress = System.IntPtr.Zero; @@ -360,9 +437,9 @@ public Result ReceivePacket(ReceivePacketOptions options, out ProductUserId outP System.IntPtr outDataAddress = System.IntPtr.Zero; uint outBytesWritten = MaxPacketSize; - Helper.TryMarshalAllocate(ref outDataAddress, outBytesWritten); + Helper.TryMarshalAllocate(ref outDataAddress, outBytesWritten, out _); - var funcResult = EOS_P2P_ReceivePacket(InnerHandle, optionsAddress, ref outPeerIdAddress, ref outSocketIdInternal, ref outChannel, outDataAddress, ref outBytesWritten); + var funcResult = Bindings.EOS_P2P_ReceivePacket(InnerHandle, optionsAddress, ref outPeerIdAddress, ref outSocketIdInternal, ref outChannel, outDataAddress, ref outBytesWritten); Helper.TryMarshalDispose(ref optionsAddress); @@ -377,25 +454,36 @@ public Result ReceivePacket(ReceivePacketOptions options, out ProductUserId outP } /// - /// Stop notifications for connections being closed on a previously bound handler + /// Stop listening for full incoming packet queue events on a previously bound handler. + /// + /// The previously bound notification ID + public void RemoveNotifyIncomingPacketQueueFull(ulong notificationId) + { + Helper.TryRemoveCallbackByNotificationId(notificationId); + + Bindings.EOS_P2P_RemoveNotifyIncomingPacketQueueFull(InnerHandle, notificationId); + } + + /// + /// Stop notifications for connections being closed on a previously bound handler. /// /// The previously bound notification ID public void RemoveNotifyPeerConnectionClosed(ulong notificationId) { Helper.TryRemoveCallbackByNotificationId(notificationId); - EOS_P2P_RemoveNotifyPeerConnectionClosed(InnerHandle, notificationId); + Bindings.EOS_P2P_RemoveNotifyPeerConnectionClosed(InnerHandle, notificationId); } /// - /// Stop listening for connection requests on a previously bound handler + /// Stop listening for connection requests on a previously bound handler. /// /// The previously bound notification ID public void RemoveNotifyPeerConnectionRequest(ulong notificationId) { Helper.TryRemoveCallbackByNotificationId(notificationId); - EOS_P2P_RemoveNotifyPeerConnectionRequest(InnerHandle, notificationId); + Bindings.EOS_P2P_RemoveNotifyPeerConnectionRequest(InnerHandle, notificationId); } /// @@ -407,14 +495,37 @@ public void RemoveNotifyPeerConnectionRequest(ulong notificationId) /// /// :: - If packet was queued to be sent successfully /// :: - If input was invalid - /// :: - If amount of data being sent is too large + /// :: - If amount of data being sent is too large, or the outgoing packet queue was full /// public Result SendPacket(SendPacketOptions options) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); - var funcResult = EOS_P2P_SendPacket(InnerHandle, optionsAddress); + var funcResult = Bindings.EOS_P2P_SendPacket(InnerHandle, optionsAddress); + + Helper.TryMarshalDispose(ref optionsAddress); + + return funcResult; + } + + /// + /// Sets the maximum packet queue sizes that packets waiting to be sent or received can use. If the packet queue + /// size is made smaller than the current queue size while there are packets in the queue that would push this + /// packet size over, existing packets are kept but new packets may not be added to the full queue until enough + /// packets are sent or received. + /// + /// Information about packet queue size + /// + /// :: - if the input options were valid + /// :: - if the input was invalid in some way + /// + public Result SetPacketQueueSize(SetPacketQueueSizeOptions options) + { + var optionsAddress = System.IntPtr.Zero; + Helper.TryMarshalSet(ref optionsAddress, options); + + var funcResult = Bindings.EOS_P2P_SetPacketQueueSize(InnerHandle, optionsAddress); Helper.TryMarshalDispose(ref optionsAddress); @@ -431,10 +542,10 @@ public Result SendPacket(SendPacketOptions options) /// public Result SetPortRange(SetPortRangeOptions options) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); - var funcResult = EOS_P2P_SetPortRange(InnerHandle, optionsAddress); + var funcResult = Bindings.EOS_P2P_SetPortRange(InnerHandle, optionsAddress); Helper.TryMarshalDispose(ref optionsAddress); @@ -452,10 +563,10 @@ public Result SetPortRange(SetPortRangeOptions options) /// public Result SetRelayControl(SetRelayControlOptions options) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); - var funcResult = EOS_P2P_SetRelayControl(InnerHandle, optionsAddress); + var funcResult = Bindings.EOS_P2P_SetRelayControl(InnerHandle, optionsAddress); Helper.TryMarshalDispose(ref optionsAddress); @@ -473,6 +584,17 @@ internal static void OnIncomingConnectionRequestCallbackInternalImplementation(S } } + [MonoPInvokeCallback(typeof(OnIncomingPacketQueueFullCallbackInternal))] + internal static void OnIncomingPacketQueueFullCallbackInternalImplementation(System.IntPtr data) + { + OnIncomingPacketQueueFullCallback callback; + OnIncomingPacketQueueFullInfo callbackInfo; + if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) + { + callback(callbackInfo); + } + } + [MonoPInvokeCallback(typeof(OnQueryNATTypeCompleteCallbackInternal))] internal static void OnQueryNATTypeCompleteCallbackInternalImplementation(System.IntPtr data) { @@ -494,53 +616,5 @@ internal static void OnRemoteConnectionClosedCallbackInternalImplementation(Syst callback(callbackInfo); } } - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_P2P_AcceptConnection(System.IntPtr handle, System.IntPtr options); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern ulong EOS_P2P_AddNotifyPeerConnectionClosed(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, OnRemoteConnectionClosedCallbackInternal connectionClosedHandler); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern ulong EOS_P2P_AddNotifyPeerConnectionRequest(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, OnIncomingConnectionRequestCallbackInternal connectionRequestHandler); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_P2P_CloseConnection(System.IntPtr handle, System.IntPtr options); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_P2P_CloseConnections(System.IntPtr handle, System.IntPtr options); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_P2P_GetNATType(System.IntPtr handle, System.IntPtr options, ref NATType outNATType); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_P2P_GetNextReceivedPacketSize(System.IntPtr handle, System.IntPtr options, ref uint outPacketSizeBytes); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_P2P_GetPortRange(System.IntPtr handle, System.IntPtr options, ref ushort outPort, ref ushort outNumAdditionalPortsToTry); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_P2P_GetRelayControl(System.IntPtr handle, System.IntPtr options, ref RelayControl outRelayControl); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern void EOS_P2P_QueryNATType(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, OnQueryNATTypeCompleteCallbackInternal nATTypeQueriedHandler); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_P2P_ReceivePacket(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outPeerId, ref SocketIdInternal outSocketId, ref byte outChannel, System.IntPtr outData, ref uint outBytesWritten); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern void EOS_P2P_RemoveNotifyPeerConnectionClosed(System.IntPtr handle, ulong notificationId); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern void EOS_P2P_RemoveNotifyPeerConnectionRequest(System.IntPtr handle, ulong notificationId); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_P2P_SendPacket(System.IntPtr handle, System.IntPtr options); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_P2P_SetPortRange(System.IntPtr handle, System.IntPtr options); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_P2P_SetRelayControl(System.IntPtr handle, System.IntPtr options); } } \ No newline at end of file diff --git a/EOSSDK/Generated/P2P/PacketQueueInfo.cs b/EOSSDK/Generated/P2P/PacketQueueInfo.cs new file mode 100644 index 00000000..aa9b67d3 --- /dev/null +++ b/EOSSDK/Generated/P2P/PacketQueueInfo.cs @@ -0,0 +1,172 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.P2P +{ + /// + /// Information related to the current state of the packet queues. It is possible for the current size + /// to be larger than the maximum size if the maximum size changes or if the maximum queue size is + /// set to . + /// + public class PacketQueueInfo : ISettable + { + /// + /// The maximum size in bytes of the incoming packet queue + /// + public ulong IncomingPacketQueueMaxSizeBytes { get; set; } + + /// + /// The current size in bytes of the incoming packet queue + /// + public ulong IncomingPacketQueueCurrentSizeBytes { get; set; } + + /// + /// The current number of queued packets in the incoming packet queue + /// + public ulong IncomingPacketQueueCurrentPacketCount { get; set; } + + /// + /// The maximum size in bytes of the outgoing packet queue + /// + public ulong OutgoingPacketQueueMaxSizeBytes { get; set; } + + /// + /// The current size in bytes of the outgoing packet queue + /// + public ulong OutgoingPacketQueueCurrentSizeBytes { get; set; } + + /// + /// The current amount of queued packets in the outgoing packet queue + /// + public ulong OutgoingPacketQueueCurrentPacketCount { get; set; } + + internal void Set(PacketQueueInfoInternal? other) + { + if (other != null) + { + IncomingPacketQueueMaxSizeBytes = other.Value.IncomingPacketQueueMaxSizeBytes; + IncomingPacketQueueCurrentSizeBytes = other.Value.IncomingPacketQueueCurrentSizeBytes; + IncomingPacketQueueCurrentPacketCount = other.Value.IncomingPacketQueueCurrentPacketCount; + OutgoingPacketQueueMaxSizeBytes = other.Value.OutgoingPacketQueueMaxSizeBytes; + OutgoingPacketQueueCurrentSizeBytes = other.Value.OutgoingPacketQueueCurrentSizeBytes; + OutgoingPacketQueueCurrentPacketCount = other.Value.OutgoingPacketQueueCurrentPacketCount; + } + } + + public void Set(object other) + { + Set(other as PacketQueueInfoInternal?); + } + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct PacketQueueInfoInternal : ISettable, System.IDisposable + { + private ulong m_IncomingPacketQueueMaxSizeBytes; + private ulong m_IncomingPacketQueueCurrentSizeBytes; + private ulong m_IncomingPacketQueueCurrentPacketCount; + private ulong m_OutgoingPacketQueueMaxSizeBytes; + private ulong m_OutgoingPacketQueueCurrentSizeBytes; + private ulong m_OutgoingPacketQueueCurrentPacketCount; + + public ulong IncomingPacketQueueMaxSizeBytes + { + get + { + return m_IncomingPacketQueueMaxSizeBytes; + } + + set + { + m_IncomingPacketQueueMaxSizeBytes = value; + } + } + + public ulong IncomingPacketQueueCurrentSizeBytes + { + get + { + return m_IncomingPacketQueueCurrentSizeBytes; + } + + set + { + m_IncomingPacketQueueCurrentSizeBytes = value; + } + } + + public ulong IncomingPacketQueueCurrentPacketCount + { + get + { + return m_IncomingPacketQueueCurrentPacketCount; + } + + set + { + m_IncomingPacketQueueCurrentPacketCount = value; + } + } + + public ulong OutgoingPacketQueueMaxSizeBytes + { + get + { + return m_OutgoingPacketQueueMaxSizeBytes; + } + + set + { + m_OutgoingPacketQueueMaxSizeBytes = value; + } + } + + public ulong OutgoingPacketQueueCurrentSizeBytes + { + get + { + return m_OutgoingPacketQueueCurrentSizeBytes; + } + + set + { + m_OutgoingPacketQueueCurrentSizeBytes = value; + } + } + + public ulong OutgoingPacketQueueCurrentPacketCount + { + get + { + return m_OutgoingPacketQueueCurrentPacketCount; + } + + set + { + m_OutgoingPacketQueueCurrentPacketCount = value; + } + } + + public void Set(PacketQueueInfo other) + { + if (other != null) + { + IncomingPacketQueueMaxSizeBytes = other.IncomingPacketQueueMaxSizeBytes; + IncomingPacketQueueCurrentSizeBytes = other.IncomingPacketQueueCurrentSizeBytes; + IncomingPacketQueueCurrentPacketCount = other.IncomingPacketQueueCurrentPacketCount; + OutgoingPacketQueueMaxSizeBytes = other.OutgoingPacketQueueMaxSizeBytes; + OutgoingPacketQueueCurrentSizeBytes = other.OutgoingPacketQueueCurrentSizeBytes; + OutgoingPacketQueueCurrentPacketCount = other.OutgoingPacketQueueCurrentPacketCount; + } + } + + public void Set(object other) + { + Set(other as PacketQueueInfo); + } + + public void Dispose() + { + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/P2P/PacketQueueInfo.cs.meta b/EOSSDK/Generated/P2P/PacketQueueInfo.cs.meta new file mode 100644 index 00000000..f65b0df9 --- /dev/null +++ b/EOSSDK/Generated/P2P/PacketQueueInfo.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 579b9017d0238a24a95136c8bdab350b +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/P2P/ReceivePacketOptions.cs b/EOSSDK/Generated/P2P/ReceivePacketOptions.cs index 2296b41b..2f0d8abd 100644 --- a/EOSSDK/Generated/P2P/ReceivePacketOptions.cs +++ b/EOSSDK/Generated/P2P/ReceivePacketOptions.cs @@ -74,6 +74,7 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_LocalUserId); Helper.TryMarshalDispose(ref m_RequestedChannel); } } diff --git a/EOSSDK/Generated/P2P/SendPacketOptions.cs b/EOSSDK/Generated/P2P/SendPacketOptions.cs index fb947df1..2786a090 100644 --- a/EOSSDK/Generated/P2P/SendPacketOptions.cs +++ b/EOSSDK/Generated/P2P/SendPacketOptions.cs @@ -135,6 +135,8 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_LocalUserId); + Helper.TryMarshalDispose(ref m_RemoteUserId); Helper.TryMarshalDispose(ref m_SocketId); Helper.TryMarshalDispose(ref m_Data); } diff --git a/EOSSDK/Generated/P2P/SetPacketQueueSizeOptions.cs b/EOSSDK/Generated/P2P/SetPacketQueueSizeOptions.cs new file mode 100644 index 00000000..324e8ff5 --- /dev/null +++ b/EOSSDK/Generated/P2P/SetPacketQueueSizeOptions.cs @@ -0,0 +1,64 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.P2P +{ + /// + /// Structure containing information about new packet queue size settings. + /// + public class SetPacketQueueSizeOptions + { + /// + /// The ideal maximum amount of bytes the Incoming packet queue can consume + /// + public ulong IncomingPacketQueueMaxSizeBytes { get; set; } + + /// + /// The ideal maximum amount of bytes the Outgoing packet queue can consume + /// + public ulong OutgoingPacketQueueMaxSizeBytes { get; set; } + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct SetPacketQueueSizeOptionsInternal : ISettable, System.IDisposable + { + private int m_ApiVersion; + private ulong m_IncomingPacketQueueMaxSizeBytes; + private ulong m_OutgoingPacketQueueMaxSizeBytes; + + public ulong IncomingPacketQueueMaxSizeBytes + { + set + { + m_IncomingPacketQueueMaxSizeBytes = value; + } + } + + public ulong OutgoingPacketQueueMaxSizeBytes + { + set + { + m_OutgoingPacketQueueMaxSizeBytes = value; + } + } + + public void Set(SetPacketQueueSizeOptions other) + { + if (other != null) + { + m_ApiVersion = P2PInterface.SetpacketqueuesizeApiLatest; + IncomingPacketQueueMaxSizeBytes = other.IncomingPacketQueueMaxSizeBytes; + OutgoingPacketQueueMaxSizeBytes = other.OutgoingPacketQueueMaxSizeBytes; + } + } + + public void Set(object other) + { + Set(other as SetPacketQueueSizeOptions); + } + + public void Dispose() + { + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/P2P/SetPacketQueueSizeOptions.cs.meta b/EOSSDK/Generated/P2P/SetPacketQueueSizeOptions.cs.meta new file mode 100644 index 00000000..0cbb0687 --- /dev/null +++ b/EOSSDK/Generated/P2P/SetPacketQueueSizeOptions.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: cf979d0102cfcc94eb52929da2bf2850 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/Platform/AllocateMemoryFunc.cs b/EOSSDK/Generated/Platform/AllocateMemoryFunc.cs index ff49268e..3afe1c02 100644 --- a/EOSSDK/Generated/Platform/AllocateMemoryFunc.cs +++ b/EOSSDK/Generated/Platform/AllocateMemoryFunc.cs @@ -12,7 +12,6 @@ namespace Epic.OnlineServices.Platform /// The SDK will always call the provided function with an Alignment that is a power of 2. /// Allocation failures should return a null pointer. /// + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] public delegate System.IntPtr AllocateMemoryFunc(System.UIntPtr sizeInBytes, System.UIntPtr alignment); - - internal delegate System.IntPtr AllocateMemoryFuncInternal(System.UIntPtr sizeInBytes, System.UIntPtr alignment); } \ No newline at end of file diff --git a/EOSSDK/Generated/Platform/InitializeOptions.cs b/EOSSDK/Generated/Platform/InitializeOptions.cs index e55a21d9..a54b4270 100644 --- a/EOSSDK/Generated/Platform/InitializeOptions.cs +++ b/EOSSDK/Generated/Platform/InitializeOptions.cs @@ -11,17 +11,17 @@ public class InitializeOptions /// /// A custom memory allocator, if desired. /// - public AllocateMemoryFunc AllocateMemoryFunction { get; set; } + public System.IntPtr AllocateMemoryFunction { get; set; } /// /// A corresponding memory reallocator. If the AllocateMemoryFunction is nulled, then this field must also be nulled. /// - public ReallocateMemoryFunc ReallocateMemoryFunction { get; set; } + public System.IntPtr ReallocateMemoryFunction { get; set; } /// /// A corresponding memory releaser. If the AllocateMemoryFunction is nulled, then this field must also be nulled. /// - public ReleaseMemoryFunc ReleaseMemoryFunction { get; set; } + public System.IntPtr ReleaseMemoryFunction { get; set; } /// /// The name of the product using the Epic Online Services SDK. @@ -57,54 +57,36 @@ public class InitializeOptions internal struct InitializeOptionsInternal : ISettable, System.IDisposable { private int m_ApiVersion; - private AllocateMemoryFuncInternal m_AllocateMemoryFunction; - private ReallocateMemoryFuncInternal m_ReallocateMemoryFunction; - private ReleaseMemoryFuncInternal m_ReleaseMemoryFunction; + private System.IntPtr m_AllocateMemoryFunction; + private System.IntPtr m_ReallocateMemoryFunction; + private System.IntPtr m_ReleaseMemoryFunction; private System.IntPtr m_ProductName; private System.IntPtr m_ProductVersion; private System.IntPtr m_Reserved; private System.IntPtr m_SystemInitializeOptions; private System.IntPtr m_OverrideThreadAffinity; - private static AllocateMemoryFuncInternal s_AllocateMemoryFunction; - public static AllocateMemoryFuncInternal AllocateMemoryFunction + public System.IntPtr AllocateMemoryFunction { - get + set { - if (s_AllocateMemoryFunction == null) - { - s_AllocateMemoryFunction = new AllocateMemoryFuncInternal(PlatformInterface.AllocateMemoryFuncInternalImplementation); - } - - return s_AllocateMemoryFunction; + m_AllocateMemoryFunction = value; } } - private static ReallocateMemoryFuncInternal s_ReallocateMemoryFunction; - public static ReallocateMemoryFuncInternal ReallocateMemoryFunction + public System.IntPtr ReallocateMemoryFunction { - get + set { - if (s_ReallocateMemoryFunction == null) - { - s_ReallocateMemoryFunction = new ReallocateMemoryFuncInternal(PlatformInterface.ReallocateMemoryFuncInternalImplementation); - } - - return s_ReallocateMemoryFunction; + m_ReallocateMemoryFunction = value; } } - private static ReleaseMemoryFuncInternal s_ReleaseMemoryFunction; - public static ReleaseMemoryFuncInternal ReleaseMemoryFunction + public System.IntPtr ReleaseMemoryFunction { - get + set { - if (s_ReleaseMemoryFunction == null) - { - s_ReleaseMemoryFunction = new ReleaseMemoryFuncInternal(PlatformInterface.ReleaseMemoryFuncInternalImplementation); - } - - return s_ReleaseMemoryFunction; + m_ReleaseMemoryFunction = value; } } @@ -145,9 +127,9 @@ public void Set(InitializeOptions other) if (other != null) { m_ApiVersion = PlatformInterface.InitializeApiLatest; - m_AllocateMemoryFunction = other.AllocateMemoryFunction != null ? AllocateMemoryFunction : null; - m_ReallocateMemoryFunction = other.ReallocateMemoryFunction != null ? ReallocateMemoryFunction : null; - m_ReleaseMemoryFunction = other.ReleaseMemoryFunction != null ? ReleaseMemoryFunction : null; + AllocateMemoryFunction = other.AllocateMemoryFunction; + ReallocateMemoryFunction = other.ReallocateMemoryFunction; + ReleaseMemoryFunction = other.ReleaseMemoryFunction; ProductName = other.ProductName; ProductVersion = other.ProductVersion; int[] reservedData = new int[] { 1, 1 }; @@ -166,6 +148,9 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_AllocateMemoryFunction); + Helper.TryMarshalDispose(ref m_ReallocateMemoryFunction); + Helper.TryMarshalDispose(ref m_ReleaseMemoryFunction); Helper.TryMarshalDispose(ref m_ProductName); Helper.TryMarshalDispose(ref m_ProductVersion); Helper.TryMarshalDispose(ref m_Reserved); diff --git a/EOSSDK/Generated/Platform/Options.cs b/EOSSDK/Generated/Platform/Options.cs index ba55cb04..0277a2d5 100644 --- a/EOSSDK/Generated/Platform/Options.cs +++ b/EOSSDK/Generated/Platform/Options.cs @@ -69,6 +69,11 @@ public class Options /// Zero is interpreted as "perform all available work". /// public uint TickBudgetInMilliseconds { get; set; } + + /// + /// RTC options. Setting to NULL will disable RTC features (e.g. voice) + /// + public RTCOptions RTCOptions { get; set; } } [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] @@ -87,6 +92,7 @@ internal struct OptionsInternal : ISettable, System.IDisposable private PlatformFlags m_Flags; private System.IntPtr m_CacheDirectory; private uint m_TickBudgetInMilliseconds; + private System.IntPtr m_RTCOptions; public System.IntPtr Reserved { @@ -184,6 +190,14 @@ public uint TickBudgetInMilliseconds } } + public RTCOptions RTCOptions + { + set + { + Helper.TryMarshalSet(ref m_RTCOptions, value); + } + } + public void Set(Options other) { if (other != null) @@ -201,6 +215,7 @@ public void Set(Options other) Flags = other.Flags; CacheDirectory = other.CacheDirectory; TickBudgetInMilliseconds = other.TickBudgetInMilliseconds; + RTCOptions = other.RTCOptions; } } @@ -220,6 +235,7 @@ public void Dispose() Helper.TryMarshalDispose(ref m_OverrideLocaleCode); Helper.TryMarshalDispose(ref m_DeploymentId); Helper.TryMarshalDispose(ref m_CacheDirectory); + Helper.TryMarshalDispose(ref m_RTCOptions); } } } \ No newline at end of file diff --git a/EOSSDK/Generated/Platform/PlatformFlags.cs b/EOSSDK/Generated/Platform/PlatformFlags.cs index e9872f4a..c4692885 100644 --- a/EOSSDK/Generated/Platform/PlatformFlags.cs +++ b/EOSSDK/Generated/Platform/PlatformFlags.cs @@ -6,7 +6,7 @@ namespace Epic.OnlineServices.Platform [System.Flags] public enum PlatformFlags : ulong { - None = 0x00000, + None = 0x0, /// /// A bit that indicates the SDK is being loaded in a game editor, like Unity or UE4 Play-in-Editor /// diff --git a/EOSSDK/Generated/Platform/PlatformInterface.cs b/EOSSDK/Generated/Platform/PlatformInterface.cs index 2b62c011..fe1c5293 100644 --- a/EOSSDK/Generated/Platform/PlatformInterface.cs +++ b/EOSSDK/Generated/Platform/PlatformInterface.cs @@ -3,7 +3,7 @@ namespace Epic.OnlineServices.Platform { - public sealed class PlatformInterface : Handle + public sealed partial class PlatformInterface : Handle { public PlatformInterface() { @@ -31,7 +31,12 @@ public PlatformInterface(System.IntPtr innerHandle) : base(innerHandle) public const int LocalecodeMaxLength = 9; - public const int OptionsApiLatest = 9; + public const int OptionsApiLatest = 11; + + /// + /// The most recent version of the API. + /// + public const int RtcoptionsApiLatest = 1; /// /// Checks if the app was launched through the Epic Launcher, and relaunches it through the Epic Launcher if it wasn't. @@ -44,7 +49,7 @@ public PlatformInterface(System.IntPtr innerHandle) : base(innerHandle) /// public Result CheckForLauncherAndRestart() { - var funcResult = EOS_Platform_CheckForLauncherAndRestart(InnerHandle); + var funcResult = Bindings.EOS_Platform_CheckForLauncherAndRestart(InnerHandle); return funcResult; } @@ -61,10 +66,10 @@ public Result CheckForLauncherAndRestart() /// public static PlatformInterface Create(Options options) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); - var funcResult = EOS_Platform_Create(optionsAddress); + var funcResult = Bindings.EOS_Platform_Create(optionsAddress); Helper.TryMarshalDispose(ref optionsAddress); @@ -83,7 +88,7 @@ public static PlatformInterface Create(Options options) /// public Achievements.AchievementsInterface GetAchievementsInterface() { - var funcResult = EOS_Platform_GetAchievementsInterface(InnerHandle); + var funcResult = Bindings.EOS_Platform_GetAchievementsInterface(InnerHandle); Achievements.AchievementsInterface funcResultReturn; Helper.TryMarshalGet(funcResult, out funcResultReturn); @@ -117,9 +122,9 @@ public Result GetActiveCountryCode(EpicAccountId localUserId, out string outBuff System.IntPtr outBufferAddress = System.IntPtr.Zero; int inOutBufferLength = CountrycodeMaxLength + 1; - Helper.TryMarshalAllocate(ref outBufferAddress, inOutBufferLength); + Helper.TryMarshalAllocate(ref outBufferAddress, inOutBufferLength, out _); - var funcResult = EOS_Platform_GetActiveCountryCode(InnerHandle, localUserIdInnerHandle, outBufferAddress, ref inOutBufferLength); + var funcResult = Bindings.EOS_Platform_GetActiveCountryCode(InnerHandle, localUserIdInnerHandle, outBufferAddress, ref inOutBufferLength); Helper.TryMarshalGet(outBufferAddress, out outBuffer); Helper.TryMarshalDispose(ref outBufferAddress); @@ -155,9 +160,9 @@ public Result GetActiveLocaleCode(EpicAccountId localUserId, out string outBuffe System.IntPtr outBufferAddress = System.IntPtr.Zero; int inOutBufferLength = LocalecodeMaxLength + 1; - Helper.TryMarshalAllocate(ref outBufferAddress, inOutBufferLength); + Helper.TryMarshalAllocate(ref outBufferAddress, inOutBufferLength, out _); - var funcResult = EOS_Platform_GetActiveLocaleCode(InnerHandle, localUserIdInnerHandle, outBufferAddress, ref inOutBufferLength); + var funcResult = Bindings.EOS_Platform_GetActiveLocaleCode(InnerHandle, localUserIdInnerHandle, outBufferAddress, ref inOutBufferLength); Helper.TryMarshalGet(outBufferAddress, out outBuffer); Helper.TryMarshalDispose(ref outBufferAddress); @@ -165,6 +170,40 @@ public Result GetActiveLocaleCode(EpicAccountId localUserId, out string outBuffe return funcResult; } + /// + /// Get a handle to the Anti-Cheat Client Interface. + /// eos_anticheatclient.h + /// eos_anticheatclient_types.h + /// + /// + /// handle + /// + public AntiCheatClient.AntiCheatClientInterface GetAntiCheatClientInterface() + { + var funcResult = Bindings.EOS_Platform_GetAntiCheatClientInterface(InnerHandle); + + AntiCheatClient.AntiCheatClientInterface funcResultReturn; + Helper.TryMarshalGet(funcResult, out funcResultReturn); + return funcResultReturn; + } + + /// + /// Get a handle to the Anti-Cheat Server Interface. + /// eos_anticheatserver.h + /// eos_anticheatserver_types.h + /// + /// + /// handle + /// + public AntiCheatServer.AntiCheatServerInterface GetAntiCheatServerInterface() + { + var funcResult = Bindings.EOS_Platform_GetAntiCheatServerInterface(InnerHandle); + + AntiCheatServer.AntiCheatServerInterface funcResultReturn; + Helper.TryMarshalGet(funcResult, out funcResultReturn); + return funcResultReturn; + } + /// /// Get a handle to the Auth Interface. /// eos_auth.h @@ -175,7 +214,7 @@ public Result GetActiveLocaleCode(EpicAccountId localUserId, out string outBuffe /// public Auth.AuthInterface GetAuthInterface() { - var funcResult = EOS_Platform_GetAuthInterface(InnerHandle); + var funcResult = Bindings.EOS_Platform_GetAuthInterface(InnerHandle); Auth.AuthInterface funcResultReturn; Helper.TryMarshalGet(funcResult, out funcResultReturn); @@ -192,7 +231,7 @@ public Auth.AuthInterface GetAuthInterface() /// public Connect.ConnectInterface GetConnectInterface() { - var funcResult = EOS_Platform_GetConnectInterface(InnerHandle); + var funcResult = Bindings.EOS_Platform_GetConnectInterface(InnerHandle); Connect.ConnectInterface funcResultReturn; Helper.TryMarshalGet(funcResult, out funcResultReturn); @@ -209,7 +248,7 @@ public Connect.ConnectInterface GetConnectInterface() /// public Ecom.EcomInterface GetEcomInterface() { - var funcResult = EOS_Platform_GetEcomInterface(InnerHandle); + var funcResult = Bindings.EOS_Platform_GetEcomInterface(InnerHandle); Ecom.EcomInterface funcResultReturn; Helper.TryMarshalGet(funcResult, out funcResultReturn); @@ -226,13 +265,30 @@ public Ecom.EcomInterface GetEcomInterface() /// public Friends.FriendsInterface GetFriendsInterface() { - var funcResult = EOS_Platform_GetFriendsInterface(InnerHandle); + var funcResult = Bindings.EOS_Platform_GetFriendsInterface(InnerHandle); Friends.FriendsInterface funcResultReturn; Helper.TryMarshalGet(funcResult, out funcResultReturn); return funcResultReturn; } + /// + /// Get a handle to the Kids Web Service Interface. + /// eos_kws.h + /// eos_kws_types.h + /// + /// + /// handle + /// + public KWS.KWSInterface GetKWSInterface() + { + var funcResult = Bindings.EOS_Platform_GetKWSInterface(InnerHandle); + + KWS.KWSInterface funcResultReturn; + Helper.TryMarshalGet(funcResult, out funcResultReturn); + return funcResultReturn; + } + /// /// Get a handle to the Leaderboards Interface. /// eos_leaderboards.h @@ -243,7 +299,7 @@ public Friends.FriendsInterface GetFriendsInterface() /// public Leaderboards.LeaderboardsInterface GetLeaderboardsInterface() { - var funcResult = EOS_Platform_GetLeaderboardsInterface(InnerHandle); + var funcResult = Bindings.EOS_Platform_GetLeaderboardsInterface(InnerHandle); Leaderboards.LeaderboardsInterface funcResultReturn; Helper.TryMarshalGet(funcResult, out funcResultReturn); @@ -260,7 +316,7 @@ public Leaderboards.LeaderboardsInterface GetLeaderboardsInterface() /// public Lobby.LobbyInterface GetLobbyInterface() { - var funcResult = EOS_Platform_GetLobbyInterface(InnerHandle); + var funcResult = Bindings.EOS_Platform_GetLobbyInterface(InnerHandle); Lobby.LobbyInterface funcResultReturn; Helper.TryMarshalGet(funcResult, out funcResultReturn); @@ -277,7 +333,7 @@ public Lobby.LobbyInterface GetLobbyInterface() /// public Metrics.MetricsInterface GetMetricsInterface() { - var funcResult = EOS_Platform_GetMetricsInterface(InnerHandle); + var funcResult = Bindings.EOS_Platform_GetMetricsInterface(InnerHandle); Metrics.MetricsInterface funcResultReturn; Helper.TryMarshalGet(funcResult, out funcResultReturn); @@ -294,7 +350,7 @@ public Metrics.MetricsInterface GetMetricsInterface() /// public Mods.ModsInterface GetModsInterface() { - var funcResult = EOS_Platform_GetModsInterface(InnerHandle); + var funcResult = Bindings.EOS_Platform_GetModsInterface(InnerHandle); Mods.ModsInterface funcResultReturn; Helper.TryMarshalGet(funcResult, out funcResultReturn); @@ -323,9 +379,9 @@ public Result GetOverrideCountryCode(out string outBuffer) { System.IntPtr outBufferAddress = System.IntPtr.Zero; int inOutBufferLength = CountrycodeMaxLength + 1; - Helper.TryMarshalAllocate(ref outBufferAddress, inOutBufferLength); + Helper.TryMarshalAllocate(ref outBufferAddress, inOutBufferLength, out _); - var funcResult = EOS_Platform_GetOverrideCountryCode(InnerHandle, outBufferAddress, ref inOutBufferLength); + var funcResult = Bindings.EOS_Platform_GetOverrideCountryCode(InnerHandle, outBufferAddress, ref inOutBufferLength); Helper.TryMarshalGet(outBufferAddress, out outBuffer); Helper.TryMarshalDispose(ref outBufferAddress); @@ -355,9 +411,9 @@ public Result GetOverrideLocaleCode(out string outBuffer) { System.IntPtr outBufferAddress = System.IntPtr.Zero; int inOutBufferLength = LocalecodeMaxLength + 1; - Helper.TryMarshalAllocate(ref outBufferAddress, inOutBufferLength); + Helper.TryMarshalAllocate(ref outBufferAddress, inOutBufferLength, out _); - var funcResult = EOS_Platform_GetOverrideLocaleCode(InnerHandle, outBufferAddress, ref inOutBufferLength); + var funcResult = Bindings.EOS_Platform_GetOverrideLocaleCode(InnerHandle, outBufferAddress, ref inOutBufferLength); Helper.TryMarshalGet(outBufferAddress, out outBuffer); Helper.TryMarshalDispose(ref outBufferAddress); @@ -375,7 +431,7 @@ public Result GetOverrideLocaleCode(out string outBuffer) /// public P2P.P2PInterface GetP2PInterface() { - var funcResult = EOS_Platform_GetP2PInterface(InnerHandle); + var funcResult = Bindings.EOS_Platform_GetP2PInterface(InnerHandle); P2P.P2PInterface funcResultReturn; Helper.TryMarshalGet(funcResult, out funcResultReturn); @@ -392,7 +448,7 @@ public P2P.P2PInterface GetP2PInterface() /// public PlayerDataStorage.PlayerDataStorageInterface GetPlayerDataStorageInterface() { - var funcResult = EOS_Platform_GetPlayerDataStorageInterface(InnerHandle); + var funcResult = Bindings.EOS_Platform_GetPlayerDataStorageInterface(InnerHandle); PlayerDataStorage.PlayerDataStorageInterface funcResultReturn; Helper.TryMarshalGet(funcResult, out funcResultReturn); @@ -409,13 +465,83 @@ public PlayerDataStorage.PlayerDataStorageInterface GetPlayerDataStorageInterfac /// public Presence.PresenceInterface GetPresenceInterface() { - var funcResult = EOS_Platform_GetPresenceInterface(InnerHandle); + var funcResult = Bindings.EOS_Platform_GetPresenceInterface(InnerHandle); Presence.PresenceInterface funcResultReturn; Helper.TryMarshalGet(funcResult, out funcResultReturn); return funcResultReturn; } + /// + /// Get a handle to the RTC Admin interface + /// eos_rtc_admin.h + /// eos_admin_types.h + /// + /// + /// handle + /// + public RTCAdmin.RTCAdminInterface GetRTCAdminInterface() + { + var funcResult = Bindings.EOS_Platform_GetRTCAdminInterface(InnerHandle); + + RTCAdmin.RTCAdminInterface funcResultReturn; + Helper.TryMarshalGet(funcResult, out funcResultReturn); + return funcResultReturn; + } + + /// + /// Get a handle to the Real Time Communications Interface (RTC). + /// From the RTC interface you can retrieve the handle to the audio interface (RTCAudio), which is a component of RTC. + /// + /// eos_rtc.h + /// eos_rtc_types.h + /// + /// + /// handle + /// + public RTC.RTCInterface GetRTCInterface() + { + var funcResult = Bindings.EOS_Platform_GetRTCInterface(InnerHandle); + + RTC.RTCInterface funcResultReturn; + Helper.TryMarshalGet(funcResult, out funcResultReturn); + return funcResultReturn; + } + + /// + /// Get a handle to the Reports Interface. + /// eos_reports.h + /// eos_reports_types.h + /// + /// + /// handle + /// + public Reports.ReportsInterface GetReportsInterface() + { + var funcResult = Bindings.EOS_Platform_GetReportsInterface(InnerHandle); + + Reports.ReportsInterface funcResultReturn; + Helper.TryMarshalGet(funcResult, out funcResultReturn); + return funcResultReturn; + } + + /// + /// Get a handle to the Sanctions Interface. + /// eos_sanctions.h + /// eos_sanctions_types.h + /// + /// + /// handle + /// + public Sanctions.SanctionsInterface GetSanctionsInterface() + { + var funcResult = Bindings.EOS_Platform_GetSanctionsInterface(InnerHandle); + + Sanctions.SanctionsInterface funcResultReturn; + Helper.TryMarshalGet(funcResult, out funcResultReturn); + return funcResultReturn; + } + /// /// Get a handle to the Sessions Interface. /// eos_sessions.h @@ -426,7 +552,7 @@ public Presence.PresenceInterface GetPresenceInterface() /// public Sessions.SessionsInterface GetSessionsInterface() { - var funcResult = EOS_Platform_GetSessionsInterface(InnerHandle); + var funcResult = Bindings.EOS_Platform_GetSessionsInterface(InnerHandle); Sessions.SessionsInterface funcResultReturn; Helper.TryMarshalGet(funcResult, out funcResultReturn); @@ -443,7 +569,7 @@ public Sessions.SessionsInterface GetSessionsInterface() /// public Stats.StatsInterface GetStatsInterface() { - var funcResult = EOS_Platform_GetStatsInterface(InnerHandle); + var funcResult = Bindings.EOS_Platform_GetStatsInterface(InnerHandle); Stats.StatsInterface funcResultReturn; Helper.TryMarshalGet(funcResult, out funcResultReturn); @@ -460,7 +586,7 @@ public Stats.StatsInterface GetStatsInterface() /// public TitleStorage.TitleStorageInterface GetTitleStorageInterface() { - var funcResult = EOS_Platform_GetTitleStorageInterface(InnerHandle); + var funcResult = Bindings.EOS_Platform_GetTitleStorageInterface(InnerHandle); TitleStorage.TitleStorageInterface funcResultReturn; Helper.TryMarshalGet(funcResult, out funcResultReturn); @@ -477,7 +603,7 @@ public TitleStorage.TitleStorageInterface GetTitleStorageInterface() /// public UI.UIInterface GetUIInterface() { - var funcResult = EOS_Platform_GetUIInterface(InnerHandle); + var funcResult = Bindings.EOS_Platform_GetUIInterface(InnerHandle); UI.UIInterface funcResultReturn; Helper.TryMarshalGet(funcResult, out funcResultReturn); @@ -494,7 +620,7 @@ public UI.UIInterface GetUIInterface() /// public UserInfo.UserInfoInterface GetUserInfoInterface() { - var funcResult = EOS_Platform_GetUserInfoInterface(InnerHandle); + var funcResult = Bindings.EOS_Platform_GetUserInfoInterface(InnerHandle); UserInfo.UserInfoInterface funcResultReturn; Helper.TryMarshalGet(funcResult, out funcResultReturn); @@ -517,25 +643,10 @@ public UserInfo.UserInfoInterface GetUserInfoInterface() /// public static Result Initialize(InitializeOptions options) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); - if (options.AllocateMemoryFunction != null) - { - Helper.AddStaticCallback("AllocateMemoryFuncInternalImplementation", options.AllocateMemoryFunction, InitializeOptionsInternal.AllocateMemoryFunction); - } - - if (options.ReallocateMemoryFunction != null) - { - Helper.AddStaticCallback("ReallocateMemoryFuncInternalImplementation", options.ReallocateMemoryFunction, InitializeOptionsInternal.ReallocateMemoryFunction); - } - - if (options.ReleaseMemoryFunction != null) - { - Helper.AddStaticCallback("ReleaseMemoryFuncInternalImplementation", options.ReleaseMemoryFunction, InitializeOptionsInternal.ReleaseMemoryFunction); - } - - var funcResult = EOS_Initialize(optionsAddress); + var funcResult = Bindings.EOS_Initialize(optionsAddress); Helper.TryMarshalDispose(ref optionsAddress); @@ -551,7 +662,7 @@ public static Result Initialize(InitializeOptions options) /// public void Release() { - EOS_Platform_Release(InnerHandle); + Bindings.EOS_Platform_Release(InnerHandle); } /// @@ -567,10 +678,10 @@ public void Release() /// public Result SetOverrideCountryCode(string newCountryCode) { - System.IntPtr newCountryCodeAddress = System.IntPtr.Zero; + var newCountryCodeAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref newCountryCodeAddress, newCountryCode); - var funcResult = EOS_Platform_SetOverrideCountryCode(InnerHandle, newCountryCodeAddress); + var funcResult = Bindings.EOS_Platform_SetOverrideCountryCode(InnerHandle, newCountryCodeAddress); Helper.TryMarshalDispose(ref newCountryCodeAddress); @@ -590,10 +701,10 @@ public Result SetOverrideCountryCode(string newCountryCode) /// public Result SetOverrideLocaleCode(string newLocaleCode) { - System.IntPtr newLocaleCodeAddress = System.IntPtr.Zero; + var newLocaleCodeAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref newLocaleCodeAddress, newLocaleCode); - var funcResult = EOS_Platform_SetOverrideLocaleCode(InnerHandle, newLocaleCodeAddress); + var funcResult = Bindings.EOS_Platform_SetOverrideLocaleCode(InnerHandle, newLocaleCodeAddress); Helper.TryMarshalDispose(ref newLocaleCodeAddress); @@ -613,7 +724,7 @@ public Result SetOverrideLocaleCode(string newLocaleCode) /// public static Result Shutdown() { - var funcResult = EOS_Shutdown(); + var funcResult = Bindings.EOS_Shutdown(); return funcResult; } @@ -624,132 +735,7 @@ public static Result Shutdown() /// public void Tick() { - EOS_Platform_Tick(InnerHandle); - } - - [MonoPInvokeCallback(typeof(AllocateMemoryFuncInternal))] - internal static System.IntPtr AllocateMemoryFuncInternalImplementation(System.UIntPtr sizeInBytes, System.UIntPtr alignment) - { - AllocateMemoryFunc callback; - if (Helper.TryGetStaticCallback("AllocateMemoryFuncInternalImplementation", out callback)) - { - var funcResult = callback(sizeInBytes, alignment); - - return funcResult; - } - - return Helper.GetDefault(); - } - - [MonoPInvokeCallback(typeof(ReallocateMemoryFuncInternal))] - internal static System.IntPtr ReallocateMemoryFuncInternalImplementation(System.IntPtr pointer, System.UIntPtr sizeInBytes, System.UIntPtr alignment) - { - ReallocateMemoryFunc callback; - if (Helper.TryGetStaticCallback("ReallocateMemoryFuncInternalImplementation", out callback)) - { - var funcResult = callback(pointer, sizeInBytes, alignment); - - return funcResult; - } - - return Helper.GetDefault(); - } - - [MonoPInvokeCallback(typeof(ReleaseMemoryFuncInternal))] - internal static void ReleaseMemoryFuncInternalImplementation(System.IntPtr pointer) - { - ReleaseMemoryFunc callback; - if (Helper.TryGetStaticCallback("ReleaseMemoryFuncInternalImplementation", out callback)) - { - callback(pointer); - } + Bindings.EOS_Platform_Tick(InnerHandle); } - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_Platform_CheckForLauncherAndRestart(System.IntPtr handle); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern System.IntPtr EOS_Platform_Create(System.IntPtr options); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern System.IntPtr EOS_Platform_GetAchievementsInterface(System.IntPtr handle); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_Platform_GetActiveCountryCode(System.IntPtr handle, System.IntPtr localUserId, System.IntPtr outBuffer, ref int inOutBufferLength); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_Platform_GetActiveLocaleCode(System.IntPtr handle, System.IntPtr localUserId, System.IntPtr outBuffer, ref int inOutBufferLength); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern System.IntPtr EOS_Platform_GetAuthInterface(System.IntPtr handle); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern System.IntPtr EOS_Platform_GetConnectInterface(System.IntPtr handle); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern System.IntPtr EOS_Platform_GetEcomInterface(System.IntPtr handle); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern System.IntPtr EOS_Platform_GetFriendsInterface(System.IntPtr handle); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern System.IntPtr EOS_Platform_GetLeaderboardsInterface(System.IntPtr handle); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern System.IntPtr EOS_Platform_GetLobbyInterface(System.IntPtr handle); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern System.IntPtr EOS_Platform_GetMetricsInterface(System.IntPtr handle); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern System.IntPtr EOS_Platform_GetModsInterface(System.IntPtr handle); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_Platform_GetOverrideCountryCode(System.IntPtr handle, System.IntPtr outBuffer, ref int inOutBufferLength); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_Platform_GetOverrideLocaleCode(System.IntPtr handle, System.IntPtr outBuffer, ref int inOutBufferLength); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern System.IntPtr EOS_Platform_GetP2PInterface(System.IntPtr handle); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern System.IntPtr EOS_Platform_GetPlayerDataStorageInterface(System.IntPtr handle); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern System.IntPtr EOS_Platform_GetPresenceInterface(System.IntPtr handle); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern System.IntPtr EOS_Platform_GetSessionsInterface(System.IntPtr handle); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern System.IntPtr EOS_Platform_GetStatsInterface(System.IntPtr handle); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern System.IntPtr EOS_Platform_GetTitleStorageInterface(System.IntPtr handle); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern System.IntPtr EOS_Platform_GetUIInterface(System.IntPtr handle); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern System.IntPtr EOS_Platform_GetUserInfoInterface(System.IntPtr handle); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_Initialize(System.IntPtr options); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern void EOS_Platform_Release(System.IntPtr handle); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_Platform_SetOverrideCountryCode(System.IntPtr handle, System.IntPtr newCountryCode); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_Platform_SetOverrideLocaleCode(System.IntPtr handle, System.IntPtr newLocaleCode); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_Shutdown(); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern void EOS_Platform_Tick(System.IntPtr handle); } } \ No newline at end of file diff --git a/EOSSDK/Generated/Platform/RTCOptions.cs b/EOSSDK/Generated/Platform/RTCOptions.cs new file mode 100644 index 00000000..7e7179d9 --- /dev/null +++ b/EOSSDK/Generated/Platform/RTCOptions.cs @@ -0,0 +1,71 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.Platform +{ + /// + /// Platform RTC options. + /// + public class RTCOptions : ISettable + { + /// + /// This field is for platform specific initialization if any. + /// + /// If provided then the structure will be located in /eos_.h. + /// The structure will be named EOS__RTCOptions. + /// + public System.IntPtr PlatformSpecificOptions { get; set; } + + internal void Set(RTCOptionsInternal? other) + { + if (other != null) + { + PlatformSpecificOptions = other.Value.PlatformSpecificOptions; + } + } + + public void Set(object other) + { + Set(other as RTCOptionsInternal?); + } + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct RTCOptionsInternal : ISettable, System.IDisposable + { + private int m_ApiVersion; + private System.IntPtr m_PlatformSpecificOptions; + + public System.IntPtr PlatformSpecificOptions + { + get + { + return m_PlatformSpecificOptions; + } + + set + { + m_PlatformSpecificOptions = value; + } + } + + public void Set(RTCOptions other) + { + if (other != null) + { + m_ApiVersion = PlatformInterface.RtcoptionsApiLatest; + PlatformSpecificOptions = other.PlatformSpecificOptions; + } + } + + public void Set(object other) + { + Set(other as RTCOptions); + } + + public void Dispose() + { + Helper.TryMarshalDispose(ref m_PlatformSpecificOptions); + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/Platform/RTCOptions.cs.meta b/EOSSDK/Generated/Platform/RTCOptions.cs.meta new file mode 100644 index 00000000..bb87b241 --- /dev/null +++ b/EOSSDK/Generated/Platform/RTCOptions.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 3da4aa258e9b1fb4ab19f9ec2448a6e9 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/Platform/ReallocateMemoryFunc.cs b/EOSSDK/Generated/Platform/ReallocateMemoryFunc.cs index 2390de58..002ab194 100644 --- a/EOSSDK/Generated/Platform/ReallocateMemoryFunc.cs +++ b/EOSSDK/Generated/Platform/ReallocateMemoryFunc.cs @@ -11,7 +11,6 @@ namespace Epic.OnlineServices.Platform /// The SDK will always call the provided function with an Alignment that is a power of 2. /// Reallocation failures should return a null pointer. /// + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] public delegate System.IntPtr ReallocateMemoryFunc(System.IntPtr pointer, System.UIntPtr sizeInBytes, System.UIntPtr alignment); - - internal delegate System.IntPtr ReallocateMemoryFuncInternal(System.IntPtr pointer, System.UIntPtr sizeInBytes, System.UIntPtr alignment); } \ No newline at end of file diff --git a/EOSSDK/Generated/Platform/ReleaseMemoryFunc.cs b/EOSSDK/Generated/Platform/ReleaseMemoryFunc.cs index c96b83bc..5bbdd365 100644 --- a/EOSSDK/Generated/Platform/ReleaseMemoryFunc.cs +++ b/EOSSDK/Generated/Platform/ReleaseMemoryFunc.cs @@ -8,7 +8,6 @@ namespace Epic.OnlineServices.Platform /// /// When the SDK is done with memory that has been allocated by a custom allocator passed to , it will call the corresponding memory release function. /// + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] public delegate void ReleaseMemoryFunc(System.IntPtr pointer); - - internal delegate void ReleaseMemoryFuncInternal(System.IntPtr pointer); } \ No newline at end of file diff --git a/EOSSDK/Generated/PlayerDataStorage/CopyFileMetadataAtIndexOptions.cs b/EOSSDK/Generated/PlayerDataStorage/CopyFileMetadataAtIndexOptions.cs index a98d1a60..1c47f067 100644 --- a/EOSSDK/Generated/PlayerDataStorage/CopyFileMetadataAtIndexOptions.cs +++ b/EOSSDK/Generated/PlayerDataStorage/CopyFileMetadataAtIndexOptions.cs @@ -59,6 +59,7 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_LocalUserId); } } } \ No newline at end of file diff --git a/EOSSDK/Generated/PlayerDataStorage/CopyFileMetadataByFilenameOptions.cs b/EOSSDK/Generated/PlayerDataStorage/CopyFileMetadataByFilenameOptions.cs index 921e6af8..e6ac6efc 100644 --- a/EOSSDK/Generated/PlayerDataStorage/CopyFileMetadataByFilenameOptions.cs +++ b/EOSSDK/Generated/PlayerDataStorage/CopyFileMetadataByFilenameOptions.cs @@ -59,6 +59,7 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_LocalUserId); Helper.TryMarshalDispose(ref m_Filename); } } diff --git a/EOSSDK/Generated/PlayerDataStorage/DeleteCacheOptions.cs b/EOSSDK/Generated/PlayerDataStorage/DeleteCacheOptions.cs index aab60262..fe6dbb51 100644 --- a/EOSSDK/Generated/PlayerDataStorage/DeleteCacheOptions.cs +++ b/EOSSDK/Generated/PlayerDataStorage/DeleteCacheOptions.cs @@ -44,6 +44,7 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_LocalUserId); } } } \ No newline at end of file diff --git a/EOSSDK/Generated/PlayerDataStorage/DeleteFileOptions.cs b/EOSSDK/Generated/PlayerDataStorage/DeleteFileOptions.cs index 953ca4a6..29c67489 100644 --- a/EOSSDK/Generated/PlayerDataStorage/DeleteFileOptions.cs +++ b/EOSSDK/Generated/PlayerDataStorage/DeleteFileOptions.cs @@ -59,6 +59,7 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_LocalUserId); Helper.TryMarshalDispose(ref m_Filename); } } diff --git a/EOSSDK/Generated/PlayerDataStorage/DuplicateFileOptions.cs b/EOSSDK/Generated/PlayerDataStorage/DuplicateFileOptions.cs index 8b2d0271..e6d50778 100644 --- a/EOSSDK/Generated/PlayerDataStorage/DuplicateFileOptions.cs +++ b/EOSSDK/Generated/PlayerDataStorage/DuplicateFileOptions.cs @@ -74,6 +74,7 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_LocalUserId); Helper.TryMarshalDispose(ref m_SourceFilename); Helper.TryMarshalDispose(ref m_DestinationFilename); } diff --git a/EOSSDK/Generated/PlayerDataStorage/FileMetadata.cs b/EOSSDK/Generated/PlayerDataStorage/FileMetadata.cs index 0f015ec5..51693e91 100644 --- a/EOSSDK/Generated/PlayerDataStorage/FileMetadata.cs +++ b/EOSSDK/Generated/PlayerDataStorage/FileMetadata.cs @@ -23,6 +23,16 @@ public class FileMetadata : ISettable /// public string Filename { get; set; } + /// + /// The POSIX timestamp when the file was saved last time. + /// + public System.DateTimeOffset? LastModifiedTime { get; set; } + + /// + /// The size of data (payload) in file in unencrypted (original) form. + /// + public uint UnencryptedDataSizeBytes { get; set; } + internal void Set(FileMetadataInternal? other) { if (other != null) @@ -30,6 +40,8 @@ internal void Set(FileMetadataInternal? other) FileSizeBytes = other.Value.FileSizeBytes; MD5Hash = other.Value.MD5Hash; Filename = other.Value.Filename; + LastModifiedTime = other.Value.LastModifiedTime; + UnencryptedDataSizeBytes = other.Value.UnencryptedDataSizeBytes; } } @@ -46,6 +58,8 @@ internal struct FileMetadataInternal : ISettable, System.IDisposable private uint m_FileSizeBytes; private System.IntPtr m_MD5Hash; private System.IntPtr m_Filename; + private long m_LastModifiedTime; + private uint m_UnencryptedDataSizeBytes; public uint FileSizeBytes { @@ -90,6 +104,34 @@ public string Filename } } + public System.DateTimeOffset? LastModifiedTime + { + get + { + System.DateTimeOffset? value; + Helper.TryMarshalGet(m_LastModifiedTime, out value); + return value; + } + + set + { + Helper.TryMarshalSet(ref m_LastModifiedTime, value); + } + } + + public uint UnencryptedDataSizeBytes + { + get + { + return m_UnencryptedDataSizeBytes; + } + + set + { + m_UnencryptedDataSizeBytes = value; + } + } + public void Set(FileMetadata other) { if (other != null) @@ -98,6 +140,8 @@ public void Set(FileMetadata other) FileSizeBytes = other.FileSizeBytes; MD5Hash = other.MD5Hash; Filename = other.Filename; + LastModifiedTime = other.LastModifiedTime; + UnencryptedDataSizeBytes = other.UnencryptedDataSizeBytes; } } diff --git a/EOSSDK/Generated/PlayerDataStorage/GetFileMetadataCountOptions.cs b/EOSSDK/Generated/PlayerDataStorage/GetFileMetadataCountOptions.cs index 2042d318..7b5d7d56 100644 --- a/EOSSDK/Generated/PlayerDataStorage/GetFileMetadataCountOptions.cs +++ b/EOSSDK/Generated/PlayerDataStorage/GetFileMetadataCountOptions.cs @@ -44,6 +44,7 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_LocalUserId); } } } \ No newline at end of file diff --git a/EOSSDK/Generated/PlayerDataStorage/OnDeleteCacheCompleteCallback.cs b/EOSSDK/Generated/PlayerDataStorage/OnDeleteCacheCompleteCallback.cs index 4b6b0d21..f50f663b 100644 --- a/EOSSDK/Generated/PlayerDataStorage/OnDeleteCacheCompleteCallback.cs +++ b/EOSSDK/Generated/PlayerDataStorage/OnDeleteCacheCompleteCallback.cs @@ -8,5 +8,6 @@ namespace Epic.OnlineServices.PlayerDataStorage /// public delegate void OnDeleteCacheCompleteCallback(DeleteCacheCallbackInfo data); + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] internal delegate void OnDeleteCacheCompleteCallbackInternal(System.IntPtr data); } \ No newline at end of file diff --git a/EOSSDK/Generated/PlayerDataStorage/OnDeleteFileCompleteCallback.cs b/EOSSDK/Generated/PlayerDataStorage/OnDeleteFileCompleteCallback.cs index 7a632756..59d54792 100644 --- a/EOSSDK/Generated/PlayerDataStorage/OnDeleteFileCompleteCallback.cs +++ b/EOSSDK/Generated/PlayerDataStorage/OnDeleteFileCompleteCallback.cs @@ -8,5 +8,6 @@ namespace Epic.OnlineServices.PlayerDataStorage /// public delegate void OnDeleteFileCompleteCallback(DeleteFileCallbackInfo data); + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] internal delegate void OnDeleteFileCompleteCallbackInternal(System.IntPtr data); } \ No newline at end of file diff --git a/EOSSDK/Generated/PlayerDataStorage/OnDuplicateFileCompleteCallback.cs b/EOSSDK/Generated/PlayerDataStorage/OnDuplicateFileCompleteCallback.cs index 1f515cec..c4366d9a 100644 --- a/EOSSDK/Generated/PlayerDataStorage/OnDuplicateFileCompleteCallback.cs +++ b/EOSSDK/Generated/PlayerDataStorage/OnDuplicateFileCompleteCallback.cs @@ -8,5 +8,6 @@ namespace Epic.OnlineServices.PlayerDataStorage /// public delegate void OnDuplicateFileCompleteCallback(DuplicateFileCallbackInfo data); + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] internal delegate void OnDuplicateFileCompleteCallbackInternal(System.IntPtr data); } \ No newline at end of file diff --git a/EOSSDK/Generated/PlayerDataStorage/OnFileTransferProgressCallback.cs b/EOSSDK/Generated/PlayerDataStorage/OnFileTransferProgressCallback.cs index 37f75dad..e2f0050c 100644 --- a/EOSSDK/Generated/PlayerDataStorage/OnFileTransferProgressCallback.cs +++ b/EOSSDK/Generated/PlayerDataStorage/OnFileTransferProgressCallback.cs @@ -8,5 +8,6 @@ namespace Epic.OnlineServices.PlayerDataStorage /// public delegate void OnFileTransferProgressCallback(FileTransferProgressCallbackInfo data); + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] internal delegate void OnFileTransferProgressCallbackInternal(System.IntPtr data); } \ No newline at end of file diff --git a/EOSSDK/Generated/PlayerDataStorage/OnQueryFileCompleteCallback.cs b/EOSSDK/Generated/PlayerDataStorage/OnQueryFileCompleteCallback.cs index 1edad13b..0821b993 100644 --- a/EOSSDK/Generated/PlayerDataStorage/OnQueryFileCompleteCallback.cs +++ b/EOSSDK/Generated/PlayerDataStorage/OnQueryFileCompleteCallback.cs @@ -8,5 +8,6 @@ namespace Epic.OnlineServices.PlayerDataStorage /// public delegate void OnQueryFileCompleteCallback(QueryFileCallbackInfo data); + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] internal delegate void OnQueryFileCompleteCallbackInternal(System.IntPtr data); } \ No newline at end of file diff --git a/EOSSDK/Generated/PlayerDataStorage/OnQueryFileListCompleteCallback.cs b/EOSSDK/Generated/PlayerDataStorage/OnQueryFileListCompleteCallback.cs index c4d8b7ec..5b3b658a 100644 --- a/EOSSDK/Generated/PlayerDataStorage/OnQueryFileListCompleteCallback.cs +++ b/EOSSDK/Generated/PlayerDataStorage/OnQueryFileListCompleteCallback.cs @@ -8,5 +8,6 @@ namespace Epic.OnlineServices.PlayerDataStorage /// public delegate void OnQueryFileListCompleteCallback(QueryFileListCallbackInfo data); + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] internal delegate void OnQueryFileListCompleteCallbackInternal(System.IntPtr data); } \ No newline at end of file diff --git a/EOSSDK/Generated/PlayerDataStorage/OnReadFileCompleteCallback.cs b/EOSSDK/Generated/PlayerDataStorage/OnReadFileCompleteCallback.cs index 98a2e4cd..22d25218 100644 --- a/EOSSDK/Generated/PlayerDataStorage/OnReadFileCompleteCallback.cs +++ b/EOSSDK/Generated/PlayerDataStorage/OnReadFileCompleteCallback.cs @@ -8,5 +8,6 @@ namespace Epic.OnlineServices.PlayerDataStorage /// public delegate void OnReadFileCompleteCallback(ReadFileCallbackInfo data); + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] internal delegate void OnReadFileCompleteCallbackInternal(System.IntPtr data); } \ No newline at end of file diff --git a/EOSSDK/Generated/PlayerDataStorage/OnReadFileDataCallback.cs b/EOSSDK/Generated/PlayerDataStorage/OnReadFileDataCallback.cs index d2cc9d21..ff59231c 100644 --- a/EOSSDK/Generated/PlayerDataStorage/OnReadFileDataCallback.cs +++ b/EOSSDK/Generated/PlayerDataStorage/OnReadFileDataCallback.cs @@ -12,5 +12,6 @@ namespace Epic.OnlineServices.PlayerDataStorage /// public delegate ReadResult OnReadFileDataCallback(ReadFileDataCallbackInfo data); + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] internal delegate ReadResult OnReadFileDataCallbackInternal(System.IntPtr data); } \ No newline at end of file diff --git a/EOSSDK/Generated/PlayerDataStorage/OnWriteFileCompleteCallback.cs b/EOSSDK/Generated/PlayerDataStorage/OnWriteFileCompleteCallback.cs index 86aad77e..fb104451 100644 --- a/EOSSDK/Generated/PlayerDataStorage/OnWriteFileCompleteCallback.cs +++ b/EOSSDK/Generated/PlayerDataStorage/OnWriteFileCompleteCallback.cs @@ -8,5 +8,6 @@ namespace Epic.OnlineServices.PlayerDataStorage /// public delegate void OnWriteFileCompleteCallback(WriteFileCallbackInfo data); + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] internal delegate void OnWriteFileCompleteCallbackInternal(System.IntPtr data); } \ No newline at end of file diff --git a/EOSSDK/Generated/PlayerDataStorage/OnWriteFileDataCallback.cs b/EOSSDK/Generated/PlayerDataStorage/OnWriteFileDataCallback.cs index 4fd8a868..ab875774 100644 --- a/EOSSDK/Generated/PlayerDataStorage/OnWriteFileDataCallback.cs +++ b/EOSSDK/Generated/PlayerDataStorage/OnWriteFileDataCallback.cs @@ -14,5 +14,6 @@ namespace Epic.OnlineServices.PlayerDataStorage /// public delegate WriteResult OnWriteFileDataCallback(WriteFileDataCallbackInfo data, out byte[] outDataBuffer); + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] internal delegate WriteResult OnWriteFileDataCallbackInternal(System.IntPtr data, System.IntPtr outDataBuffer, ref uint outDataWritten); } \ No newline at end of file diff --git a/EOSSDK/Generated/PlayerDataStorage/PlayerDataStorageFileTransferRequest.cs b/EOSSDK/Generated/PlayerDataStorage/PlayerDataStorageFileTransferRequest.cs index 6d590990..3018af9b 100644 --- a/EOSSDK/Generated/PlayerDataStorage/PlayerDataStorageFileTransferRequest.cs +++ b/EOSSDK/Generated/PlayerDataStorage/PlayerDataStorageFileTransferRequest.cs @@ -3,7 +3,7 @@ namespace Epic.OnlineServices.PlayerDataStorage { - public sealed class PlayerDataStorageFileTransferRequest : Handle + public sealed partial class PlayerDataStorageFileTransferRequest : Handle { public PlayerDataStorageFileTransferRequest() { @@ -21,7 +21,7 @@ public PlayerDataStorageFileTransferRequest(System.IntPtr innerHandle) : base(in /// public Result CancelRequest() { - var funcResult = EOS_PlayerDataStorageFileTransferRequest_CancelRequest(InnerHandle); + var funcResult = Bindings.EOS_PlayerDataStorageFileTransferRequest_CancelRequest(InnerHandle); return funcResult; } @@ -34,7 +34,7 @@ public Result CancelRequest() /// public Result GetFileRequestState() { - var funcResult = EOS_PlayerDataStorageFileTransferRequest_GetFileRequestState(InnerHandle); + var funcResult = Bindings.EOS_PlayerDataStorageFileTransferRequest_GetFileRequestState(InnerHandle); return funcResult; } @@ -53,9 +53,9 @@ public Result GetFilename(out string outStringBuffer) { System.IntPtr outStringBufferAddress = System.IntPtr.Zero; int outStringLength = PlayerDataStorageInterface.FilenameMaxLengthBytes; - Helper.TryMarshalAllocate(ref outStringBufferAddress, outStringLength); + Helper.TryMarshalAllocate(ref outStringBufferAddress, outStringLength, out _); - var funcResult = EOS_PlayerDataStorageFileTransferRequest_GetFilename(InnerHandle, (uint)outStringLength, outStringBufferAddress, ref outStringLength); + var funcResult = Bindings.EOS_PlayerDataStorageFileTransferRequest_GetFilename(InnerHandle, (uint)outStringLength, outStringBufferAddress, ref outStringLength); Helper.TryMarshalGet(outStringBufferAddress, out outStringBuffer); Helper.TryMarshalDispose(ref outStringBufferAddress); @@ -68,19 +68,7 @@ public Result GetFilename(out string outStringBuffer) /// public void Release() { - EOS_PlayerDataStorageFileTransferRequest_Release(InnerHandle); + Bindings.EOS_PlayerDataStorageFileTransferRequest_Release(InnerHandle); } - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_PlayerDataStorageFileTransferRequest_CancelRequest(System.IntPtr handle); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_PlayerDataStorageFileTransferRequest_GetFileRequestState(System.IntPtr handle); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_PlayerDataStorageFileTransferRequest_GetFilename(System.IntPtr handle, uint filenameStringBufferSizeBytes, System.IntPtr outStringBuffer, ref int outStringLength); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern void EOS_PlayerDataStorageFileTransferRequest_Release(System.IntPtr playerDataStorageFileTransferHandle); } } \ No newline at end of file diff --git a/EOSSDK/Generated/PlayerDataStorage/PlayerDataStorageInterface.cs b/EOSSDK/Generated/PlayerDataStorage/PlayerDataStorageInterface.cs index 9d6ba25e..31ccbebd 100644 --- a/EOSSDK/Generated/PlayerDataStorage/PlayerDataStorageInterface.cs +++ b/EOSSDK/Generated/PlayerDataStorage/PlayerDataStorageInterface.cs @@ -3,7 +3,7 @@ namespace Epic.OnlineServices.PlayerDataStorage { - public sealed class PlayerDataStorageInterface : Handle + public sealed partial class PlayerDataStorageInterface : Handle { public PlayerDataStorageInterface() { @@ -31,7 +31,7 @@ public PlayerDataStorageInterface(System.IntPtr innerHandle) : base(innerHandle) /// public const int FileMaxSizeBytes = (64 * 1024 * 1024); - public const int FilemetadataApiLatest = 1; + public const int FilemetadataApiLatest = 3; /// /// Maximum File Name Length in bytes @@ -61,18 +61,18 @@ public PlayerDataStorageInterface(System.IntPtr innerHandle) : base(innerHandle) /// public Result CopyFileMetadataAtIndex(CopyFileMetadataAtIndexOptions copyFileMetadataOptions, out FileMetadata outMetadata) { - System.IntPtr copyFileMetadataOptionsAddress = new System.IntPtr(); + var copyFileMetadataOptionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref copyFileMetadataOptionsAddress, copyFileMetadataOptions); var outMetadataAddress = System.IntPtr.Zero; - var funcResult = EOS_PlayerDataStorage_CopyFileMetadataAtIndex(InnerHandle, copyFileMetadataOptionsAddress, ref outMetadataAddress); + var funcResult = Bindings.EOS_PlayerDataStorage_CopyFileMetadataAtIndex(InnerHandle, copyFileMetadataOptionsAddress, ref outMetadataAddress); Helper.TryMarshalDispose(ref copyFileMetadataOptionsAddress); if (Helper.TryMarshalGet(outMetadataAddress, out outMetadata)) { - EOS_PlayerDataStorage_FileMetadata_Release(outMetadataAddress); + Bindings.EOS_PlayerDataStorage_FileMetadata_Release(outMetadataAddress); } return funcResult; @@ -89,18 +89,18 @@ public Result CopyFileMetadataAtIndex(CopyFileMetadataAtIndexOptions copyFileMet /// public Result CopyFileMetadataByFilename(CopyFileMetadataByFilenameOptions copyFileMetadataOptions, out FileMetadata outMetadata) { - System.IntPtr copyFileMetadataOptionsAddress = new System.IntPtr(); + var copyFileMetadataOptionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref copyFileMetadataOptionsAddress, copyFileMetadataOptions); var outMetadataAddress = System.IntPtr.Zero; - var funcResult = EOS_PlayerDataStorage_CopyFileMetadataByFilename(InnerHandle, copyFileMetadataOptionsAddress, ref outMetadataAddress); + var funcResult = Bindings.EOS_PlayerDataStorage_CopyFileMetadataByFilename(InnerHandle, copyFileMetadataOptionsAddress, ref outMetadataAddress); Helper.TryMarshalDispose(ref copyFileMetadataOptionsAddress); if (Helper.TryMarshalGet(outMetadataAddress, out outMetadata)) { - EOS_PlayerDataStorage_FileMetadata_Release(outMetadataAddress); + Bindings.EOS_PlayerDataStorage_FileMetadata_Release(outMetadataAddress); } return funcResult; @@ -118,7 +118,7 @@ public Result CopyFileMetadataByFilename(CopyFileMetadataByFilenameOptions copyF /// public Result DeleteCache(DeleteCacheOptions options, object clientData, OnDeleteCacheCompleteCallback completionCallback) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var clientDataAddress = System.IntPtr.Zero; @@ -126,7 +126,7 @@ public Result DeleteCache(DeleteCacheOptions options, object clientData, OnDelet var completionCallbackInternal = new OnDeleteCacheCompleteCallbackInternal(OnDeleteCacheCompleteCallbackInternalImplementation); Helper.AddCallback(ref clientDataAddress, clientData, completionCallback, completionCallbackInternal); - var funcResult = EOS_PlayerDataStorage_DeleteCache(InnerHandle, optionsAddress, clientDataAddress, completionCallbackInternal); + var funcResult = Bindings.EOS_PlayerDataStorage_DeleteCache(InnerHandle, optionsAddress, clientDataAddress, completionCallbackInternal); Helper.TryMarshalDispose(ref optionsAddress); @@ -141,7 +141,7 @@ public Result DeleteCache(DeleteCacheOptions options, object clientData, OnDelet /// This function is called when the delete operation completes public void DeleteFile(DeleteFileOptions deleteOptions, object clientData, OnDeleteFileCompleteCallback completionCallback) { - System.IntPtr deleteOptionsAddress = new System.IntPtr(); + var deleteOptionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref deleteOptionsAddress, deleteOptions); var clientDataAddress = System.IntPtr.Zero; @@ -149,7 +149,7 @@ public void DeleteFile(DeleteFileOptions deleteOptions, object clientData, OnDel var completionCallbackInternal = new OnDeleteFileCompleteCallbackInternal(OnDeleteFileCompleteCallbackInternalImplementation); Helper.AddCallback(ref clientDataAddress, clientData, completionCallback, completionCallbackInternal); - EOS_PlayerDataStorage_DeleteFile(InnerHandle, deleteOptionsAddress, clientDataAddress, completionCallbackInternal); + Bindings.EOS_PlayerDataStorage_DeleteFile(InnerHandle, deleteOptionsAddress, clientDataAddress, completionCallbackInternal); Helper.TryMarshalDispose(ref deleteOptionsAddress); } @@ -163,7 +163,7 @@ public void DeleteFile(DeleteFileOptions deleteOptions, object clientData, OnDel /// This function is called when the duplicate operation completes public void DuplicateFile(DuplicateFileOptions duplicateOptions, object clientData, OnDuplicateFileCompleteCallback completionCallback) { - System.IntPtr duplicateOptionsAddress = new System.IntPtr(); + var duplicateOptionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref duplicateOptionsAddress, duplicateOptions); var clientDataAddress = System.IntPtr.Zero; @@ -171,7 +171,7 @@ public void DuplicateFile(DuplicateFileOptions duplicateOptions, object clientDa var completionCallbackInternal = new OnDuplicateFileCompleteCallbackInternal(OnDuplicateFileCompleteCallbackInternalImplementation); Helper.AddCallback(ref clientDataAddress, clientData, completionCallback, completionCallbackInternal); - EOS_PlayerDataStorage_DuplicateFile(InnerHandle, duplicateOptionsAddress, clientDataAddress, completionCallbackInternal); + Bindings.EOS_PlayerDataStorage_DuplicateFile(InnerHandle, duplicateOptionsAddress, clientDataAddress, completionCallbackInternal); Helper.TryMarshalDispose(ref duplicateOptionsAddress); } @@ -187,12 +187,12 @@ public void DuplicateFile(DuplicateFileOptions duplicateOptions, object clientDa /// public Result GetFileMetadataCount(GetFileMetadataCountOptions getFileMetadataCountOptions, out int outFileMetadataCount) { - System.IntPtr getFileMetadataCountOptionsAddress = new System.IntPtr(); + var getFileMetadataCountOptionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref getFileMetadataCountOptionsAddress, getFileMetadataCountOptions); outFileMetadataCount = Helper.GetDefault(); - var funcResult = EOS_PlayerDataStorage_GetFileMetadataCount(InnerHandle, getFileMetadataCountOptionsAddress, ref outFileMetadataCount); + var funcResult = Bindings.EOS_PlayerDataStorage_GetFileMetadataCount(InnerHandle, getFileMetadataCountOptionsAddress, ref outFileMetadataCount); Helper.TryMarshalDispose(ref getFileMetadataCountOptionsAddress); @@ -211,7 +211,7 @@ public Result GetFileMetadataCount(GetFileMetadataCountOptions getFileMetadataCo /// This function is called when the query operation completes public void QueryFile(QueryFileOptions queryFileOptions, object clientData, OnQueryFileCompleteCallback completionCallback) { - System.IntPtr queryFileOptionsAddress = new System.IntPtr(); + var queryFileOptionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref queryFileOptionsAddress, queryFileOptions); var clientDataAddress = System.IntPtr.Zero; @@ -219,7 +219,7 @@ public void QueryFile(QueryFileOptions queryFileOptions, object clientData, OnQu var completionCallbackInternal = new OnQueryFileCompleteCallbackInternal(OnQueryFileCompleteCallbackInternalImplementation); Helper.AddCallback(ref clientDataAddress, clientData, completionCallback, completionCallbackInternal); - EOS_PlayerDataStorage_QueryFile(InnerHandle, queryFileOptionsAddress, clientDataAddress, completionCallbackInternal); + Bindings.EOS_PlayerDataStorage_QueryFile(InnerHandle, queryFileOptionsAddress, clientDataAddress, completionCallbackInternal); Helper.TryMarshalDispose(ref queryFileOptionsAddress); } @@ -236,7 +236,7 @@ public void QueryFile(QueryFileOptions queryFileOptions, object clientData, OnQu /// This function is called when the query operation completes public void QueryFileList(QueryFileListOptions queryFileListOptions, object clientData, OnQueryFileListCompleteCallback completionCallback) { - System.IntPtr queryFileListOptionsAddress = new System.IntPtr(); + var queryFileListOptionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref queryFileListOptionsAddress, queryFileListOptions); var clientDataAddress = System.IntPtr.Zero; @@ -244,7 +244,7 @@ public void QueryFileList(QueryFileListOptions queryFileListOptions, object clie var completionCallbackInternal = new OnQueryFileListCompleteCallbackInternal(OnQueryFileListCompleteCallbackInternalImplementation); Helper.AddCallback(ref clientDataAddress, clientData, completionCallback, completionCallbackInternal); - EOS_PlayerDataStorage_QueryFileList(InnerHandle, queryFileListOptionsAddress, clientDataAddress, completionCallbackInternal); + Bindings.EOS_PlayerDataStorage_QueryFileList(InnerHandle, queryFileListOptionsAddress, clientDataAddress, completionCallbackInternal); Helper.TryMarshalDispose(ref queryFileListOptionsAddress); } @@ -263,7 +263,7 @@ public void QueryFileList(QueryFileListOptions queryFileListOptions, object clie /// public PlayerDataStorageFileTransferRequest ReadFile(ReadFileOptions readOptions, object clientData, OnReadFileCompleteCallback completionCallback) { - System.IntPtr readOptionsAddress = new System.IntPtr(); + var readOptionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref readOptionsAddress, readOptions); var clientDataAddress = System.IntPtr.Zero; @@ -271,7 +271,7 @@ public PlayerDataStorageFileTransferRequest ReadFile(ReadFileOptions readOptions var completionCallbackInternal = new OnReadFileCompleteCallbackInternal(OnReadFileCompleteCallbackInternalImplementation); Helper.AddCallback(ref clientDataAddress, clientData, completionCallback, completionCallbackInternal, readOptions.ReadFileDataCallback, ReadFileOptionsInternal.ReadFileDataCallback, readOptions.FileTransferProgressCallback, ReadFileOptionsInternal.FileTransferProgressCallback); - var funcResult = EOS_PlayerDataStorage_ReadFile(InnerHandle, readOptionsAddress, clientDataAddress, completionCallbackInternal); + var funcResult = Bindings.EOS_PlayerDataStorage_ReadFile(InnerHandle, readOptionsAddress, clientDataAddress, completionCallbackInternal); Helper.TryMarshalDispose(ref readOptionsAddress); @@ -294,7 +294,7 @@ public PlayerDataStorageFileTransferRequest ReadFile(ReadFileOptions readOptions /// public PlayerDataStorageFileTransferRequest WriteFile(WriteFileOptions writeOptions, object clientData, OnWriteFileCompleteCallback completionCallback) { - System.IntPtr writeOptionsAddress = new System.IntPtr(); + var writeOptionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref writeOptionsAddress, writeOptions); var clientDataAddress = System.IntPtr.Zero; @@ -302,7 +302,7 @@ public PlayerDataStorageFileTransferRequest WriteFile(WriteFileOptions writeOpti var completionCallbackInternal = new OnWriteFileCompleteCallbackInternal(OnWriteFileCompleteCallbackInternalImplementation); Helper.AddCallback(ref clientDataAddress, clientData, completionCallback, completionCallbackInternal, writeOptions.WriteFileDataCallback, WriteFileOptionsInternal.WriteFileDataCallback, writeOptions.FileTransferProgressCallback, WriteFileOptionsInternal.FileTransferProgressCallback); - var funcResult = EOS_PlayerDataStorage_WriteFile(InnerHandle, writeOptionsAddress, clientDataAddress, completionCallbackInternal); + var funcResult = Bindings.EOS_PlayerDataStorage_WriteFile(InnerHandle, writeOptionsAddress, clientDataAddress, completionCallbackInternal); Helper.TryMarshalDispose(ref writeOptionsAddress); @@ -442,38 +442,5 @@ internal static WriteResult OnWriteFileDataCallbackInternalImplementation(System return Helper.GetDefault(); } - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_PlayerDataStorage_CopyFileMetadataAtIndex(System.IntPtr handle, System.IntPtr copyFileMetadataOptions, ref System.IntPtr outMetadata); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_PlayerDataStorage_CopyFileMetadataByFilename(System.IntPtr handle, System.IntPtr copyFileMetadataOptions, ref System.IntPtr outMetadata); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_PlayerDataStorage_DeleteCache(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, OnDeleteCacheCompleteCallbackInternal completionCallback); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern void EOS_PlayerDataStorage_DeleteFile(System.IntPtr handle, System.IntPtr deleteOptions, System.IntPtr clientData, OnDeleteFileCompleteCallbackInternal completionCallback); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern void EOS_PlayerDataStorage_DuplicateFile(System.IntPtr handle, System.IntPtr duplicateOptions, System.IntPtr clientData, OnDuplicateFileCompleteCallbackInternal completionCallback); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_PlayerDataStorage_GetFileMetadataCount(System.IntPtr handle, System.IntPtr getFileMetadataCountOptions, ref int outFileMetadataCount); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern void EOS_PlayerDataStorage_QueryFile(System.IntPtr handle, System.IntPtr queryFileOptions, System.IntPtr clientData, OnQueryFileCompleteCallbackInternal completionCallback); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern void EOS_PlayerDataStorage_QueryFileList(System.IntPtr handle, System.IntPtr queryFileListOptions, System.IntPtr clientData, OnQueryFileListCompleteCallbackInternal completionCallback); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern System.IntPtr EOS_PlayerDataStorage_ReadFile(System.IntPtr handle, System.IntPtr readOptions, System.IntPtr clientData, OnReadFileCompleteCallbackInternal completionCallback); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern void EOS_PlayerDataStorage_FileMetadata_Release(System.IntPtr fileMetadata); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern System.IntPtr EOS_PlayerDataStorage_WriteFile(System.IntPtr handle, System.IntPtr writeOptions, System.IntPtr clientData, OnWriteFileCompleteCallbackInternal completionCallback); } } \ No newline at end of file diff --git a/EOSSDK/Generated/PlayerDataStorage/QueryFileListOptions.cs b/EOSSDK/Generated/PlayerDataStorage/QueryFileListOptions.cs index a45704f0..7dda7ae6 100644 --- a/EOSSDK/Generated/PlayerDataStorage/QueryFileListOptions.cs +++ b/EOSSDK/Generated/PlayerDataStorage/QueryFileListOptions.cs @@ -44,6 +44,7 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_LocalUserId); } } } \ No newline at end of file diff --git a/EOSSDK/Generated/PlayerDataStorage/QueryFileOptions.cs b/EOSSDK/Generated/PlayerDataStorage/QueryFileOptions.cs index b9bf66fe..8ac6301e 100644 --- a/EOSSDK/Generated/PlayerDataStorage/QueryFileOptions.cs +++ b/EOSSDK/Generated/PlayerDataStorage/QueryFileOptions.cs @@ -59,6 +59,7 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_LocalUserId); Helper.TryMarshalDispose(ref m_Filename); } } diff --git a/EOSSDK/Generated/PlayerDataStorage/ReadFileOptions.cs b/EOSSDK/Generated/PlayerDataStorage/ReadFileOptions.cs index a85a60b0..5d2b1c3f 100644 --- a/EOSSDK/Generated/PlayerDataStorage/ReadFileOptions.cs +++ b/EOSSDK/Generated/PlayerDataStorage/ReadFileOptions.cs @@ -41,8 +41,8 @@ internal struct ReadFileOptionsInternal : ISettable, System.IDisposable private System.IntPtr m_LocalUserId; private System.IntPtr m_Filename; private uint m_ReadChunkLengthBytes; - private OnReadFileDataCallbackInternal m_ReadFileDataCallback; - private OnFileTransferProgressCallbackInternal m_FileTransferProgressCallback; + private System.IntPtr m_ReadFileDataCallback; + private System.IntPtr m_FileTransferProgressCallback; public ProductUserId LocalUserId { @@ -104,8 +104,8 @@ public void Set(ReadFileOptions other) LocalUserId = other.LocalUserId; Filename = other.Filename; ReadChunkLengthBytes = other.ReadChunkLengthBytes; - m_ReadFileDataCallback = other.ReadFileDataCallback != null ? ReadFileDataCallback : null; - m_FileTransferProgressCallback = other.FileTransferProgressCallback != null ? FileTransferProgressCallback : null; + m_ReadFileDataCallback = other.ReadFileDataCallback != null ? System.Runtime.InteropServices.Marshal.GetFunctionPointerForDelegate(ReadFileDataCallback) : System.IntPtr.Zero; + m_FileTransferProgressCallback = other.FileTransferProgressCallback != null ? System.Runtime.InteropServices.Marshal.GetFunctionPointerForDelegate(FileTransferProgressCallback) : System.IntPtr.Zero; } } @@ -116,7 +116,10 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_LocalUserId); Helper.TryMarshalDispose(ref m_Filename); + Helper.TryMarshalDispose(ref m_ReadFileDataCallback); + Helper.TryMarshalDispose(ref m_FileTransferProgressCallback); } } } \ No newline at end of file diff --git a/EOSSDK/Generated/PlayerDataStorage/WriteFileOptions.cs b/EOSSDK/Generated/PlayerDataStorage/WriteFileOptions.cs index 2002ef38..afb13241 100644 --- a/EOSSDK/Generated/PlayerDataStorage/WriteFileOptions.cs +++ b/EOSSDK/Generated/PlayerDataStorage/WriteFileOptions.cs @@ -41,8 +41,8 @@ internal struct WriteFileOptionsInternal : ISettable, System.IDisposable private System.IntPtr m_LocalUserId; private System.IntPtr m_Filename; private uint m_ChunkLengthBytes; - private OnWriteFileDataCallbackInternal m_WriteFileDataCallback; - private OnFileTransferProgressCallbackInternal m_FileTransferProgressCallback; + private System.IntPtr m_WriteFileDataCallback; + private System.IntPtr m_FileTransferProgressCallback; public ProductUserId LocalUserId { @@ -104,8 +104,8 @@ public void Set(WriteFileOptions other) LocalUserId = other.LocalUserId; Filename = other.Filename; ChunkLengthBytes = other.ChunkLengthBytes; - m_WriteFileDataCallback = other.WriteFileDataCallback != null ? WriteFileDataCallback : null; - m_FileTransferProgressCallback = other.FileTransferProgressCallback != null ? FileTransferProgressCallback : null; + m_WriteFileDataCallback = other.WriteFileDataCallback != null ? System.Runtime.InteropServices.Marshal.GetFunctionPointerForDelegate(WriteFileDataCallback) : System.IntPtr.Zero; + m_FileTransferProgressCallback = other.FileTransferProgressCallback != null ? System.Runtime.InteropServices.Marshal.GetFunctionPointerForDelegate(FileTransferProgressCallback) : System.IntPtr.Zero; } } @@ -116,7 +116,10 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_LocalUserId); Helper.TryMarshalDispose(ref m_Filename); + Helper.TryMarshalDispose(ref m_WriteFileDataCallback); + Helper.TryMarshalDispose(ref m_FileTransferProgressCallback); } } } \ No newline at end of file diff --git a/EOSSDK/Generated/Presence/CopyPresenceOptions.cs b/EOSSDK/Generated/Presence/CopyPresenceOptions.cs index 3513a534..7904eac6 100644 --- a/EOSSDK/Generated/Presence/CopyPresenceOptions.cs +++ b/EOSSDK/Generated/Presence/CopyPresenceOptions.cs @@ -59,6 +59,8 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_LocalUserId); + Helper.TryMarshalDispose(ref m_TargetUserId); } } } \ No newline at end of file diff --git a/EOSSDK/Generated/Presence/CreatePresenceModificationOptions.cs b/EOSSDK/Generated/Presence/CreatePresenceModificationOptions.cs index edc9773c..dc3e20a6 100644 --- a/EOSSDK/Generated/Presence/CreatePresenceModificationOptions.cs +++ b/EOSSDK/Generated/Presence/CreatePresenceModificationOptions.cs @@ -44,6 +44,7 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_LocalUserId); } } } \ No newline at end of file diff --git a/EOSSDK/Generated/Presence/GetJoinInfoOptions.cs b/EOSSDK/Generated/Presence/GetJoinInfoOptions.cs index fb5f30f9..8749d410 100644 --- a/EOSSDK/Generated/Presence/GetJoinInfoOptions.cs +++ b/EOSSDK/Generated/Presence/GetJoinInfoOptions.cs @@ -59,6 +59,8 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_LocalUserId); + Helper.TryMarshalDispose(ref m_TargetUserId); } } } \ No newline at end of file diff --git a/EOSSDK/Generated/Presence/HasPresenceOptions.cs b/EOSSDK/Generated/Presence/HasPresenceOptions.cs index a4665dc2..2d1a04a6 100644 --- a/EOSSDK/Generated/Presence/HasPresenceOptions.cs +++ b/EOSSDK/Generated/Presence/HasPresenceOptions.cs @@ -59,6 +59,8 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_LocalUserId); + Helper.TryMarshalDispose(ref m_TargetUserId); } } } \ No newline at end of file diff --git a/EOSSDK/Generated/Presence/Info.cs b/EOSSDK/Generated/Presence/Info.cs index d263eb8d..04ffb2cd 100644 --- a/EOSSDK/Generated/Presence/Info.cs +++ b/EOSSDK/Generated/Presence/Info.cs @@ -226,6 +226,7 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_UserId); Helper.TryMarshalDispose(ref m_ProductId); Helper.TryMarshalDispose(ref m_ProductVersion); Helper.TryMarshalDispose(ref m_Platform); diff --git a/EOSSDK/Generated/Presence/OnJoinGameAcceptedCallback.cs b/EOSSDK/Generated/Presence/OnJoinGameAcceptedCallback.cs index 7f0ed9d2..6169c0e2 100644 --- a/EOSSDK/Generated/Presence/OnJoinGameAcceptedCallback.cs +++ b/EOSSDK/Generated/Presence/OnJoinGameAcceptedCallback.cs @@ -12,5 +12,6 @@ namespace Epic.OnlineServices.Presence /// public delegate void OnJoinGameAcceptedCallback(JoinGameAcceptedCallbackInfo data); + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] internal delegate void OnJoinGameAcceptedCallbackInternal(System.IntPtr data); } \ No newline at end of file diff --git a/EOSSDK/Generated/Presence/OnPresenceChangedCallback.cs b/EOSSDK/Generated/Presence/OnPresenceChangedCallback.cs index fcdc9500..b6f5255b 100644 --- a/EOSSDK/Generated/Presence/OnPresenceChangedCallback.cs +++ b/EOSSDK/Generated/Presence/OnPresenceChangedCallback.cs @@ -8,5 +8,6 @@ namespace Epic.OnlineServices.Presence /// public delegate void OnPresenceChangedCallback(PresenceChangedCallbackInfo data); + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] internal delegate void OnPresenceChangedCallbackInternal(System.IntPtr data); } \ No newline at end of file diff --git a/EOSSDK/Generated/Presence/OnQueryPresenceCompleteCallback.cs b/EOSSDK/Generated/Presence/OnQueryPresenceCompleteCallback.cs index ca3171cb..fb1dc7a7 100644 --- a/EOSSDK/Generated/Presence/OnQueryPresenceCompleteCallback.cs +++ b/EOSSDK/Generated/Presence/OnQueryPresenceCompleteCallback.cs @@ -8,5 +8,6 @@ namespace Epic.OnlineServices.Presence /// public delegate void OnQueryPresenceCompleteCallback(QueryPresenceCallbackInfo data); + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] internal delegate void OnQueryPresenceCompleteCallbackInternal(System.IntPtr data); } \ No newline at end of file diff --git a/EOSSDK/Generated/Presence/PresenceInterface.cs b/EOSSDK/Generated/Presence/PresenceInterface.cs index 06f01e7f..7e00aa9d 100644 --- a/EOSSDK/Generated/Presence/PresenceInterface.cs +++ b/EOSSDK/Generated/Presence/PresenceInterface.cs @@ -3,7 +3,7 @@ namespace Epic.OnlineServices.Presence { - public sealed class PresenceInterface : Handle + public sealed partial class PresenceInterface : Handle { public PresenceInterface() { @@ -90,7 +90,7 @@ public PresenceInterface(System.IntPtr innerHandle) : base(innerHandle) /// public ulong AddNotifyJoinGameAccepted(AddNotifyJoinGameAcceptedOptions options, object clientData, OnJoinGameAcceptedCallback notificationFn) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var clientDataAddress = System.IntPtr.Zero; @@ -98,7 +98,7 @@ public ulong AddNotifyJoinGameAccepted(AddNotifyJoinGameAcceptedOptions options, var notificationFnInternal = new OnJoinGameAcceptedCallbackInternal(OnJoinGameAcceptedCallbackInternalImplementation); Helper.AddCallback(ref clientDataAddress, clientData, notificationFn, notificationFnInternal); - var funcResult = EOS_Presence_AddNotifyJoinGameAccepted(InnerHandle, optionsAddress, clientDataAddress, notificationFnInternal); + var funcResult = Bindings.EOS_Presence_AddNotifyJoinGameAccepted(InnerHandle, optionsAddress, clientDataAddress, notificationFnInternal); Helper.TryMarshalDispose(ref optionsAddress); @@ -120,7 +120,7 @@ public ulong AddNotifyJoinGameAccepted(AddNotifyJoinGameAcceptedOptions options, /// public ulong AddNotifyOnPresenceChanged(AddNotifyOnPresenceChangedOptions options, object clientData, OnPresenceChangedCallback notificationHandler) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var clientDataAddress = System.IntPtr.Zero; @@ -128,7 +128,7 @@ public ulong AddNotifyOnPresenceChanged(AddNotifyOnPresenceChangedOptions option var notificationHandlerInternal = new OnPresenceChangedCallbackInternal(OnPresenceChangedCallbackInternalImplementation); Helper.AddCallback(ref clientDataAddress, clientData, notificationHandler, notificationHandlerInternal); - var funcResult = EOS_Presence_AddNotifyOnPresenceChanged(InnerHandle, optionsAddress, clientDataAddress, notificationHandlerInternal); + var funcResult = Bindings.EOS_Presence_AddNotifyOnPresenceChanged(InnerHandle, optionsAddress, clientDataAddress, notificationHandlerInternal); Helper.TryMarshalDispose(ref optionsAddress); @@ -148,18 +148,18 @@ public ulong AddNotifyOnPresenceChanged(AddNotifyOnPresenceChangedOptions option /// public Result CopyPresence(CopyPresenceOptions options, out Info outPresence) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var outPresenceAddress = System.IntPtr.Zero; - var funcResult = EOS_Presence_CopyPresence(InnerHandle, optionsAddress, ref outPresenceAddress); + var funcResult = Bindings.EOS_Presence_CopyPresence(InnerHandle, optionsAddress, ref outPresenceAddress); Helper.TryMarshalDispose(ref optionsAddress); if (Helper.TryMarshalGet(outPresenceAddress, out outPresence)) { - EOS_Presence_Info_Release(outPresenceAddress); + Bindings.EOS_Presence_Info_Release(outPresenceAddress); } return funcResult; @@ -182,12 +182,12 @@ public Result CopyPresence(CopyPresenceOptions options, out Info outPresence) /// public Result CreatePresenceModification(CreatePresenceModificationOptions options, out PresenceModification outPresenceModificationHandle) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var outPresenceModificationHandleAddress = System.IntPtr.Zero; - var funcResult = EOS_Presence_CreatePresenceModification(InnerHandle, optionsAddress, ref outPresenceModificationHandleAddress); + var funcResult = Bindings.EOS_Presence_CreatePresenceModification(InnerHandle, optionsAddress, ref outPresenceModificationHandleAddress); Helper.TryMarshalDispose(ref optionsAddress); @@ -219,14 +219,14 @@ public Result CreatePresenceModification(CreatePresenceModificationOptions optio /// public Result GetJoinInfo(GetJoinInfoOptions options, out string outBuffer) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); System.IntPtr outBufferAddress = System.IntPtr.Zero; int inOutBufferLength = PresenceModification.PresencemodificationJoininfoMaxLength + 1; - Helper.TryMarshalAllocate(ref outBufferAddress, inOutBufferLength); + Helper.TryMarshalAllocate(ref outBufferAddress, inOutBufferLength, out _); - var funcResult = EOS_Presence_GetJoinInfo(InnerHandle, optionsAddress, outBufferAddress, ref inOutBufferLength); + var funcResult = Bindings.EOS_Presence_GetJoinInfo(InnerHandle, optionsAddress, outBufferAddress, ref inOutBufferLength); Helper.TryMarshalDispose(ref optionsAddress); @@ -245,10 +245,10 @@ public Result GetJoinInfo(GetJoinInfoOptions options, out string outBuffer) /// public bool HasPresence(HasPresenceOptions options) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); - var funcResult = EOS_Presence_HasPresence(InnerHandle, optionsAddress); + var funcResult = Bindings.EOS_Presence_HasPresence(InnerHandle, optionsAddress); Helper.TryMarshalDispose(ref optionsAddress); @@ -266,7 +266,7 @@ public bool HasPresence(HasPresenceOptions options) /// Pointer to a function that handles receiving the completion information public void QueryPresence(QueryPresenceOptions options, object clientData, OnQueryPresenceCompleteCallback completionDelegate) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var clientDataAddress = System.IntPtr.Zero; @@ -274,7 +274,7 @@ public void QueryPresence(QueryPresenceOptions options, object clientData, OnQue var completionDelegateInternal = new OnQueryPresenceCompleteCallbackInternal(OnQueryPresenceCompleteCallbackInternalImplementation); Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - EOS_Presence_QueryPresence(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); + Bindings.EOS_Presence_QueryPresence(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); Helper.TryMarshalDispose(ref optionsAddress); } @@ -287,7 +287,7 @@ public void RemoveNotifyJoinGameAccepted(ulong inId) { Helper.TryRemoveCallbackByNotificationId(inId); - EOS_Presence_RemoveNotifyJoinGameAccepted(InnerHandle, inId); + Bindings.EOS_Presence_RemoveNotifyJoinGameAccepted(InnerHandle, inId); } /// @@ -298,7 +298,7 @@ public void RemoveNotifyOnPresenceChanged(ulong notificationId) { Helper.TryRemoveCallbackByNotificationId(notificationId); - EOS_Presence_RemoveNotifyOnPresenceChanged(InnerHandle, notificationId); + Bindings.EOS_Presence_RemoveNotifyOnPresenceChanged(InnerHandle, notificationId); } /// @@ -311,7 +311,7 @@ public void RemoveNotifyOnPresenceChanged(ulong notificationId) /// Pointer to a function that handles receiving the completion information public void SetPresence(SetPresenceOptions options, object clientData, SetPresenceCompleteCallback completionDelegate) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var clientDataAddress = System.IntPtr.Zero; @@ -319,7 +319,7 @@ public void SetPresence(SetPresenceOptions options, object clientData, SetPresen var completionDelegateInternal = new SetPresenceCompleteCallbackInternal(SetPresenceCompleteCallbackInternalImplementation); Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - EOS_Presence_SetPresence(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); + Bindings.EOS_Presence_SetPresence(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); Helper.TryMarshalDispose(ref optionsAddress); } @@ -367,38 +367,5 @@ internal static void SetPresenceCompleteCallbackInternalImplementation(System.In callback(callbackInfo); } } - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern ulong EOS_Presence_AddNotifyJoinGameAccepted(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, OnJoinGameAcceptedCallbackInternal notificationFn); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern ulong EOS_Presence_AddNotifyOnPresenceChanged(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, OnPresenceChangedCallbackInternal notificationHandler); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_Presence_CopyPresence(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outPresence); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_Presence_CreatePresenceModification(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outPresenceModificationHandle); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_Presence_GetJoinInfo(System.IntPtr handle, System.IntPtr options, System.IntPtr outBuffer, ref int inOutBufferLength); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern int EOS_Presence_HasPresence(System.IntPtr handle, System.IntPtr options); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern void EOS_Presence_QueryPresence(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, OnQueryPresenceCompleteCallbackInternal completionDelegate); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern void EOS_Presence_Info_Release(System.IntPtr presenceInfo); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern void EOS_Presence_RemoveNotifyJoinGameAccepted(System.IntPtr handle, ulong inId); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern void EOS_Presence_RemoveNotifyOnPresenceChanged(System.IntPtr handle, ulong notificationId); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern void EOS_Presence_SetPresence(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, SetPresenceCompleteCallbackInternal completionDelegate); } } \ No newline at end of file diff --git a/EOSSDK/Generated/Presence/PresenceModification.cs b/EOSSDK/Generated/Presence/PresenceModification.cs index e8b6eec8..86d977e5 100644 --- a/EOSSDK/Generated/Presence/PresenceModification.cs +++ b/EOSSDK/Generated/Presence/PresenceModification.cs @@ -3,7 +3,7 @@ namespace Epic.OnlineServices.Presence { - public sealed class PresenceModification : Handle + public sealed partial class PresenceModification : Handle { public PresenceModification() { @@ -52,10 +52,10 @@ public PresenceModification(System.IntPtr innerHandle) : base(innerHandle) /// public Result DeleteData(PresenceModificationDeleteDataOptions options) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); - var funcResult = EOS_PresenceModification_DeleteData(InnerHandle, optionsAddress); + var funcResult = Bindings.EOS_PresenceModification_DeleteData(InnerHandle, optionsAddress); Helper.TryMarshalDispose(ref optionsAddress); @@ -70,7 +70,7 @@ public Result DeleteData(PresenceModificationDeleteDataOptions options) /// The presence modification handle to release public void Release() { - EOS_PresenceModification_Release(InnerHandle); + Bindings.EOS_PresenceModification_Release(InnerHandle); } /// @@ -86,10 +86,10 @@ public void Release() /// public Result SetData(PresenceModificationSetDataOptions options) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); - var funcResult = EOS_PresenceModification_SetData(InnerHandle, optionsAddress); + var funcResult = Bindings.EOS_PresenceModification_SetData(InnerHandle, optionsAddress); Helper.TryMarshalDispose(ref optionsAddress); @@ -107,10 +107,10 @@ public Result SetData(PresenceModificationSetDataOptions options) /// public Result SetJoinInfo(PresenceModificationSetJoinInfoOptions options) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); - var funcResult = EOS_PresenceModification_SetJoinInfo(InnerHandle, optionsAddress); + var funcResult = Bindings.EOS_PresenceModification_SetJoinInfo(InnerHandle, optionsAddress); Helper.TryMarshalDispose(ref optionsAddress); @@ -128,10 +128,10 @@ public Result SetJoinInfo(PresenceModificationSetJoinInfoOptions options) /// public Result SetRawRichText(PresenceModificationSetRawRichTextOptions options) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); - var funcResult = EOS_PresenceModification_SetRawRichText(InnerHandle, optionsAddress); + var funcResult = Bindings.EOS_PresenceModification_SetRawRichText(InnerHandle, optionsAddress); Helper.TryMarshalDispose(ref optionsAddress); @@ -147,32 +147,14 @@ public Result SetRawRichText(PresenceModificationSetRawRichTextOptions options) /// public Result SetStatus(PresenceModificationSetStatusOptions options) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); - var funcResult = EOS_PresenceModification_SetStatus(InnerHandle, optionsAddress); + var funcResult = Bindings.EOS_PresenceModification_SetStatus(InnerHandle, optionsAddress); Helper.TryMarshalDispose(ref optionsAddress); return funcResult; } - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_PresenceModification_DeleteData(System.IntPtr handle, System.IntPtr options); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern void EOS_PresenceModification_Release(System.IntPtr presenceModificationHandle); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_PresenceModification_SetData(System.IntPtr handle, System.IntPtr options); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_PresenceModification_SetJoinInfo(System.IntPtr handle, System.IntPtr options); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_PresenceModification_SetRawRichText(System.IntPtr handle, System.IntPtr options); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_PresenceModification_SetStatus(System.IntPtr handle, System.IntPtr options); } } \ No newline at end of file diff --git a/EOSSDK/Generated/Presence/QueryPresenceOptions.cs b/EOSSDK/Generated/Presence/QueryPresenceOptions.cs index 73df4943..921020b6 100644 --- a/EOSSDK/Generated/Presence/QueryPresenceOptions.cs +++ b/EOSSDK/Generated/Presence/QueryPresenceOptions.cs @@ -59,6 +59,8 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_LocalUserId); + Helper.TryMarshalDispose(ref m_TargetUserId); } } } \ No newline at end of file diff --git a/EOSSDK/Generated/Presence/SetPresenceCompleteCallback.cs b/EOSSDK/Generated/Presence/SetPresenceCompleteCallback.cs index fadfe734..b99a5275 100644 --- a/EOSSDK/Generated/Presence/SetPresenceCompleteCallback.cs +++ b/EOSSDK/Generated/Presence/SetPresenceCompleteCallback.cs @@ -8,5 +8,6 @@ namespace Epic.OnlineServices.Presence /// public delegate void SetPresenceCompleteCallback(SetPresenceCallbackInfo data); + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] internal delegate void SetPresenceCompleteCallbackInternal(System.IntPtr data); } \ No newline at end of file diff --git a/EOSSDK/Generated/Presence/SetPresenceOptions.cs b/EOSSDK/Generated/Presence/SetPresenceOptions.cs index d41602b1..da798da4 100644 --- a/EOSSDK/Generated/Presence/SetPresenceOptions.cs +++ b/EOSSDK/Generated/Presence/SetPresenceOptions.cs @@ -59,6 +59,8 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_LocalUserId); + Helper.TryMarshalDispose(ref m_PresenceModificationHandle); } } } \ No newline at end of file diff --git a/EOSSDK/Generated/ProductUserId.cs b/EOSSDK/Generated/ProductUserId.cs index 71df6edd..3e76be0b 100644 --- a/EOSSDK/Generated/ProductUserId.cs +++ b/EOSSDK/Generated/ProductUserId.cs @@ -3,7 +3,7 @@ namespace Epic.OnlineServices { - public sealed class ProductUserId : Handle + public sealed partial class ProductUserId : Handle { public ProductUserId() { @@ -19,20 +19,21 @@ public ProductUserId(System.IntPtr innerHandle) : base(innerHandle) public const int ProductuseridMaxLength = 128; /// - /// Retrieve an from a raw Epic Online Services Account ID string. The input string must be null-terminated. + /// Retrieve an from a raw string representing an Epic Online Services Product User ID. The input string must be null-terminated. + /// NOTE: There is no validation on the string format, this should only be used with values serialized from legitimate sources such as /// - /// The string-ified Epic Online Services Account ID for which to retrieve the + /// The stringified product user ID for which to retrieve the Epic Online Services Product User ID /// - /// The that corresponds to the AccountIdString + /// The that corresponds to the ProductUserIdString /// - public static ProductUserId FromString(string accountIdString) + public static ProductUserId FromString(string productUserIdString) { - System.IntPtr accountIdStringAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref accountIdStringAddress, accountIdString); + var productUserIdStringAddress = System.IntPtr.Zero; + Helper.TryMarshalSet(ref productUserIdStringAddress, productUserIdString); - var funcResult = EOS_ProductUserId_FromString(accountIdStringAddress); + var funcResult = Bindings.EOS_ProductUserId_FromString(productUserIdStringAddress); - Helper.TryMarshalDispose(ref accountIdStringAddress); + Helper.TryMarshalDispose(ref productUserIdStringAddress); ProductUserId funcResultReturn; Helper.TryMarshalGet(funcResult, out funcResultReturn); @@ -41,6 +42,7 @@ public static ProductUserId FromString(string accountIdString) /// /// Check whether or not the given account unique ID is considered valid + /// NOTE: This will return true for any created with as there is no validation /// /// The Product User ID to check for validity /// @@ -48,7 +50,7 @@ public static ProductUserId FromString(string accountIdString) /// public bool IsValid() { - var funcResult = EOS_ProductUserId_IsValid(InnerHandle); + var funcResult = Bindings.EOS_ProductUserId_IsValid(InnerHandle); bool funcResultReturn; Helper.TryMarshalGet(funcResult, out funcResultReturn); @@ -56,10 +58,10 @@ public bool IsValid() } /// - /// Retrieve a null-terminated string-ified Product User ID from an . This is useful for replication of Product User IDs in multiplayer games. + /// Retrieve a null-terminated stringified Product User ID from an . This is useful for replication of Product User IDs in multiplayer games. /// This string will be no larger than + 1 and will only contain UTF8-encoded printable characters (excluding the null-terminator). /// - /// The Product User ID for which to retrieve the string-ified version. + /// The Product User ID for which to retrieve the stringified version. /// The buffer into which the character data should be written /// /// The size of the OutBuffer in characters. @@ -70,16 +72,16 @@ public bool IsValid() /// An that indicates whether the Product User ID string was copied into the OutBuffer. /// - The OutBuffer was filled, and InOutBufferLength contains the number of characters copied into OutBuffer including the null terminator. /// - Either OutBuffer or InOutBufferLength were passed as NULL parameters. - /// - The AccountId is invalid and cannot be string-ified + /// - The AccountId is invalid and cannot be stringified. /// - The OutBuffer is not large enough to receive the Product User ID string. InOutBufferLength contains the required minimum length to perform the operation successfully. /// public Result ToString(out string outBuffer) { System.IntPtr outBufferAddress = System.IntPtr.Zero; int inOutBufferLength = ProductuseridMaxLength + 1; - Helper.TryMarshalAllocate(ref outBufferAddress, inOutBufferLength); + Helper.TryMarshalAllocate(ref outBufferAddress, inOutBufferLength, out _); - var funcResult = EOS_ProductUserId_ToString(InnerHandle, outBufferAddress, ref inOutBufferLength); + var funcResult = Bindings.EOS_ProductUserId_ToString(InnerHandle, outBufferAddress, ref inOutBufferLength); Helper.TryMarshalGet(outBufferAddress, out outBuffer); Helper.TryMarshalDispose(ref outBufferAddress); @@ -87,13 +89,11 @@ public Result ToString(out string outBuffer) return funcResult; } - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern System.IntPtr EOS_ProductUserId_FromString(System.IntPtr accountIdString); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern int EOS_ProductUserId_IsValid(System.IntPtr accountId); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_ProductUserId_ToString(System.IntPtr accountId, System.IntPtr outBuffer, ref int inOutBufferLength); + public override string ToString() + { + string funcResult; + ToString(out funcResult); + return funcResult; + } } } \ No newline at end of file diff --git a/EOSSDK/Generated/RTC.meta b/EOSSDK/Generated/RTC.meta new file mode 100644 index 00000000..5ef7577b --- /dev/null +++ b/EOSSDK/Generated/RTC.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 4a056fa51a4eeaa458c7efeabb36a484 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/RTC/AddNotifyDisconnectedOptions.cs b/EOSSDK/Generated/RTC/AddNotifyDisconnectedOptions.cs new file mode 100644 index 00000000..300fdfaa --- /dev/null +++ b/EOSSDK/Generated/RTC/AddNotifyDisconnectedOptions.cs @@ -0,0 +1,66 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.RTC +{ + /// + /// This struct is used to call . + /// + public class AddNotifyDisconnectedOptions + { + /// + /// The Product User ID of the user trying to request this operation. + /// + public ProductUserId LocalUserId { get; set; } + + /// + /// The room this event is registered on. + /// + public string RoomName { get; set; } + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct AddNotifyDisconnectedOptionsInternal : ISettable, System.IDisposable + { + private int m_ApiVersion; + private System.IntPtr m_LocalUserId; + private System.IntPtr m_RoomName; + + public ProductUserId LocalUserId + { + set + { + Helper.TryMarshalSet(ref m_LocalUserId, value); + } + } + + public string RoomName + { + set + { + Helper.TryMarshalSet(ref m_RoomName, value); + } + } + + public void Set(AddNotifyDisconnectedOptions other) + { + if (other != null) + { + m_ApiVersion = RTCInterface.AddnotifydisconnectedApiLatest; + LocalUserId = other.LocalUserId; + RoomName = other.RoomName; + } + } + + public void Set(object other) + { + Set(other as AddNotifyDisconnectedOptions); + } + + public void Dispose() + { + Helper.TryMarshalDispose(ref m_LocalUserId); + Helper.TryMarshalDispose(ref m_RoomName); + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/RTC/AddNotifyDisconnectedOptions.cs.meta b/EOSSDK/Generated/RTC/AddNotifyDisconnectedOptions.cs.meta new file mode 100644 index 00000000..4ec3df77 --- /dev/null +++ b/EOSSDK/Generated/RTC/AddNotifyDisconnectedOptions.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: f2a54c8ac62785a408cdfe3ed7fe76e4 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/RTC/AddNotifyParticipantStatusChangedOptions.cs b/EOSSDK/Generated/RTC/AddNotifyParticipantStatusChangedOptions.cs new file mode 100644 index 00000000..6b094556 --- /dev/null +++ b/EOSSDK/Generated/RTC/AddNotifyParticipantStatusChangedOptions.cs @@ -0,0 +1,66 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.RTC +{ + /// + /// This struct is used to call . + /// + public class AddNotifyParticipantStatusChangedOptions + { + /// + /// The Product User ID of the user trying to request this operation. + /// + public ProductUserId LocalUserId { get; set; } + + /// + /// The room this event is registered on. + /// + public string RoomName { get; set; } + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct AddNotifyParticipantStatusChangedOptionsInternal : ISettable, System.IDisposable + { + private int m_ApiVersion; + private System.IntPtr m_LocalUserId; + private System.IntPtr m_RoomName; + + public ProductUserId LocalUserId + { + set + { + Helper.TryMarshalSet(ref m_LocalUserId, value); + } + } + + public string RoomName + { + set + { + Helper.TryMarshalSet(ref m_RoomName, value); + } + } + + public void Set(AddNotifyParticipantStatusChangedOptions other) + { + if (other != null) + { + m_ApiVersion = RTCInterface.AddnotifyparticipantstatuschangedApiLatest; + LocalUserId = other.LocalUserId; + RoomName = other.RoomName; + } + } + + public void Set(object other) + { + Set(other as AddNotifyParticipantStatusChangedOptions); + } + + public void Dispose() + { + Helper.TryMarshalDispose(ref m_LocalUserId); + Helper.TryMarshalDispose(ref m_RoomName); + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/RTC/AddNotifyParticipantStatusChangedOptions.cs.meta b/EOSSDK/Generated/RTC/AddNotifyParticipantStatusChangedOptions.cs.meta new file mode 100644 index 00000000..7616eb2b --- /dev/null +++ b/EOSSDK/Generated/RTC/AddNotifyParticipantStatusChangedOptions.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 1ad2047545430f444ab16063e609362a +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/RTC/BlockParticipantCallbackInfo.cs b/EOSSDK/Generated/RTC/BlockParticipantCallbackInfo.cs new file mode 100644 index 00000000..9fddc189 --- /dev/null +++ b/EOSSDK/Generated/RTC/BlockParticipantCallbackInfo.cs @@ -0,0 +1,143 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.RTC +{ + /// + /// This struct is passed in with a call to . + /// + public class BlockParticipantCallbackInfo : ICallbackInfo, ISettable + { + /// + /// This returns: + /// if the channel was successfully blocked. + /// otherwise. + /// + public Result ResultCode { get; private set; } + + /// + /// Client-specified data passed into . + /// + public object ClientData { get; private set; } + + /// + /// The Product User ID of the user who initiated this request. + /// + public ProductUserId LocalUserId { get; private set; } + + /// + /// The room the users should be blocked on. + /// + public string RoomName { get; private set; } + + /// + /// The Product User ID of the participant being blocked + /// + public ProductUserId ParticipantId { get; private set; } + + /// + /// The block state that should have been set + /// + public bool Blocked { get; private set; } + + public Result? GetResultCode() + { + return ResultCode; + } + + internal void Set(BlockParticipantCallbackInfoInternal? other) + { + if (other != null) + { + ResultCode = other.Value.ResultCode; + ClientData = other.Value.ClientData; + LocalUserId = other.Value.LocalUserId; + RoomName = other.Value.RoomName; + ParticipantId = other.Value.ParticipantId; + Blocked = other.Value.Blocked; + } + } + + public void Set(object other) + { + Set(other as BlockParticipantCallbackInfoInternal?); + } + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct BlockParticipantCallbackInfoInternal : ICallbackInfoInternal + { + private Result m_ResultCode; + private System.IntPtr m_ClientData; + private System.IntPtr m_LocalUserId; + private System.IntPtr m_RoomName; + private System.IntPtr m_ParticipantId; + private int m_Blocked; + + public Result ResultCode + { + get + { + return m_ResultCode; + } + } + + public object ClientData + { + get + { + object value; + Helper.TryMarshalGet(m_ClientData, out value); + return value; + } + } + + public System.IntPtr ClientDataAddress + { + get + { + return m_ClientData; + } + } + + public ProductUserId LocalUserId + { + get + { + ProductUserId value; + Helper.TryMarshalGet(m_LocalUserId, out value); + return value; + } + } + + public string RoomName + { + get + { + string value; + Helper.TryMarshalGet(m_RoomName, out value); + return value; + } + } + + public ProductUserId ParticipantId + { + get + { + ProductUserId value; + Helper.TryMarshalGet(m_ParticipantId, out value); + return value; + } + } + + public bool Blocked + { + get + { + bool value; + Helper.TryMarshalGet(m_Blocked, out value); + return value; + } + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/RTC/BlockParticipantCallbackInfo.cs.meta b/EOSSDK/Generated/RTC/BlockParticipantCallbackInfo.cs.meta new file mode 100644 index 00000000..9a564eb6 --- /dev/null +++ b/EOSSDK/Generated/RTC/BlockParticipantCallbackInfo.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 739bb360d284a2d45aa6dbadfabaf09b +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/RTC/BlockParticipantOptions.cs b/EOSSDK/Generated/RTC/BlockParticipantOptions.cs new file mode 100644 index 00000000..0afc0f56 --- /dev/null +++ b/EOSSDK/Generated/RTC/BlockParticipantOptions.cs @@ -0,0 +1,97 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.RTC +{ + /// + /// This struct is passed in with a call to . + /// + public class BlockParticipantOptions + { + /// + /// Product User ID of the user trying to request this operation. + /// + public ProductUserId LocalUserId { get; set; } + + /// + /// The room the users should be blocked on. + /// + public string RoomName { get; set; } + + /// + /// Product User ID of the participant to block + /// + public ProductUserId ParticipantId { get; set; } + + /// + /// Block or unblock the participant + /// + public bool Blocked { get; set; } + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct BlockParticipantOptionsInternal : ISettable, System.IDisposable + { + private int m_ApiVersion; + private System.IntPtr m_LocalUserId; + private System.IntPtr m_RoomName; + private System.IntPtr m_ParticipantId; + private int m_Blocked; + + public ProductUserId LocalUserId + { + set + { + Helper.TryMarshalSet(ref m_LocalUserId, value); + } + } + + public string RoomName + { + set + { + Helper.TryMarshalSet(ref m_RoomName, value); + } + } + + public ProductUserId ParticipantId + { + set + { + Helper.TryMarshalSet(ref m_ParticipantId, value); + } + } + + public bool Blocked + { + set + { + Helper.TryMarshalSet(ref m_Blocked, value); + } + } + + public void Set(BlockParticipantOptions other) + { + if (other != null) + { + m_ApiVersion = RTCInterface.BlockparticipantApiLatest; + LocalUserId = other.LocalUserId; + RoomName = other.RoomName; + ParticipantId = other.ParticipantId; + Blocked = other.Blocked; + } + } + + public void Set(object other) + { + Set(other as BlockParticipantOptions); + } + + public void Dispose() + { + Helper.TryMarshalDispose(ref m_LocalUserId); + Helper.TryMarshalDispose(ref m_RoomName); + Helper.TryMarshalDispose(ref m_ParticipantId); + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/RTC/BlockParticipantOptions.cs.meta b/EOSSDK/Generated/RTC/BlockParticipantOptions.cs.meta new file mode 100644 index 00000000..fca424d9 --- /dev/null +++ b/EOSSDK/Generated/RTC/BlockParticipantOptions.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 2c585c2c02be9be4aa87d483f872ccde +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/RTC/DisconnectedCallbackInfo.cs b/EOSSDK/Generated/RTC/DisconnectedCallbackInfo.cs new file mode 100644 index 00000000..f3c7f6dd --- /dev/null +++ b/EOSSDK/Generated/RTC/DisconnectedCallbackInfo.cs @@ -0,0 +1,112 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.RTC +{ + /// + /// This struct is passed in with a call to registered event. + /// + public class DisconnectedCallbackInfo : ICallbackInfo, ISettable + { + /// + /// This returns: + /// The room was left cleanly. + /// : There was a network issue connecting to the server (retryable). + /// : The user has been kicked by the server (retryable). + /// : A known error occurred during interaction with the server (retryable). + /// Unexpected error (retryable). + /// + public Result ResultCode { get; private set; } + + /// + /// Client-specified data passed into . + /// + public object ClientData { get; private set; } + + /// + /// The Product User ID of the user who initiated this request. + /// + public ProductUserId LocalUserId { get; private set; } + + /// + /// The room associated with this event. + /// + public string RoomName { get; private set; } + + public Result? GetResultCode() + { + return ResultCode; + } + + internal void Set(DisconnectedCallbackInfoInternal? other) + { + if (other != null) + { + ResultCode = other.Value.ResultCode; + ClientData = other.Value.ClientData; + LocalUserId = other.Value.LocalUserId; + RoomName = other.Value.RoomName; + } + } + + public void Set(object other) + { + Set(other as DisconnectedCallbackInfoInternal?); + } + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct DisconnectedCallbackInfoInternal : ICallbackInfoInternal + { + private Result m_ResultCode; + private System.IntPtr m_ClientData; + private System.IntPtr m_LocalUserId; + private System.IntPtr m_RoomName; + + public Result ResultCode + { + get + { + return m_ResultCode; + } + } + + public object ClientData + { + get + { + object value; + Helper.TryMarshalGet(m_ClientData, out value); + return value; + } + } + + public System.IntPtr ClientDataAddress + { + get + { + return m_ClientData; + } + } + + public ProductUserId LocalUserId + { + get + { + ProductUserId value; + Helper.TryMarshalGet(m_LocalUserId, out value); + return value; + } + } + + public string RoomName + { + get + { + string value; + Helper.TryMarshalGet(m_RoomName, out value); + return value; + } + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/RTC/DisconnectedCallbackInfo.cs.meta b/EOSSDK/Generated/RTC/DisconnectedCallbackInfo.cs.meta new file mode 100644 index 00000000..42a2e74d --- /dev/null +++ b/EOSSDK/Generated/RTC/DisconnectedCallbackInfo.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 834ab271cf7d5bf4b9f4bb4e914cb2f5 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/RTC/JoinRoomCallbackInfo.cs b/EOSSDK/Generated/RTC/JoinRoomCallbackInfo.cs new file mode 100644 index 00000000..796784c2 --- /dev/null +++ b/EOSSDK/Generated/RTC/JoinRoomCallbackInfo.cs @@ -0,0 +1,113 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.RTC +{ + /// + /// This struct is passed in with a call to . + /// + public class JoinRoomCallbackInfo : ICallbackInfo, ISettable + { + /// + /// This returns: + /// if the channel was successfully joined. + /// : unable to connect to RTC servers (retryable). + /// : if the token is invalid (not retryable). + /// : if the room cannot accept more participants (not retryable). + /// : if the room name belongs to the Lobby voice system (not retryable). + /// otherwise (retryable). + /// + public Result ResultCode { get; private set; } + + /// + /// Client-specified data passed into . + /// + public object ClientData { get; private set; } + + /// + /// The Product User ID of the user who initiated this request. + /// + public ProductUserId LocalUserId { get; private set; } + + /// + /// The room the user was trying to join. + /// + public string RoomName { get; private set; } + + public Result? GetResultCode() + { + return ResultCode; + } + + internal void Set(JoinRoomCallbackInfoInternal? other) + { + if (other != null) + { + ResultCode = other.Value.ResultCode; + ClientData = other.Value.ClientData; + LocalUserId = other.Value.LocalUserId; + RoomName = other.Value.RoomName; + } + } + + public void Set(object other) + { + Set(other as JoinRoomCallbackInfoInternal?); + } + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct JoinRoomCallbackInfoInternal : ICallbackInfoInternal + { + private Result m_ResultCode; + private System.IntPtr m_ClientData; + private System.IntPtr m_LocalUserId; + private System.IntPtr m_RoomName; + + public Result ResultCode + { + get + { + return m_ResultCode; + } + } + + public object ClientData + { + get + { + object value; + Helper.TryMarshalGet(m_ClientData, out value); + return value; + } + } + + public System.IntPtr ClientDataAddress + { + get + { + return m_ClientData; + } + } + + public ProductUserId LocalUserId + { + get + { + ProductUserId value; + Helper.TryMarshalGet(m_LocalUserId, out value); + return value; + } + } + + public string RoomName + { + get + { + string value; + Helper.TryMarshalGet(m_RoomName, out value); + return value; + } + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/RTC/JoinRoomCallbackInfo.cs.meta b/EOSSDK/Generated/RTC/JoinRoomCallbackInfo.cs.meta new file mode 100644 index 00000000..b9b0af26 --- /dev/null +++ b/EOSSDK/Generated/RTC/JoinRoomCallbackInfo.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: bcdbfd16f9123dc4cb4cad960e768ed6 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/RTC/JoinRoomFlags.cs b/EOSSDK/Generated/RTC/JoinRoomFlags.cs new file mode 100644 index 00000000..3a6fcb1f --- /dev/null +++ b/EOSSDK/Generated/RTC/JoinRoomFlags.cs @@ -0,0 +1,18 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.RTC +{ + [System.Flags] + public enum JoinRoomFlags : uint + { + None = 0x0, + /// + /// Enables echo mode. + /// This can be used during development to have the server send your voice back to you so you don't need 2 clients to test + /// if voice is being sent and received. + /// ::Flags + /// + EnableEcho = 0x01 + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/RTC/JoinRoomFlags.cs.meta b/EOSSDK/Generated/RTC/JoinRoomFlags.cs.meta new file mode 100644 index 00000000..513ae46e --- /dev/null +++ b/EOSSDK/Generated/RTC/JoinRoomFlags.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 30ac5acbc95b25546b15c218546e6925 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/RTC/JoinRoomOptions.cs b/EOSSDK/Generated/RTC/JoinRoomOptions.cs new file mode 100644 index 00000000..f62c1321 --- /dev/null +++ b/EOSSDK/Generated/RTC/JoinRoomOptions.cs @@ -0,0 +1,161 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.RTC +{ + /// + /// This struct is used to call . + /// + public class JoinRoomOptions + { + /// + /// The product user id of the user trying to request this operation. + /// + public ProductUserId LocalUserId { get; set; } + + /// + /// The room the user would like to join. + /// + public string RoomName { get; set; } + + /// + /// The room the user would like to join. + /// + public string ClientBaseUrl { get; set; } + + /// + /// Authorization credential token to join the room. + /// + public string ParticipantToken { get; set; } + + /// + /// The participant id used to join the room. If set to NULL the LocalUserId will be used instead. + /// + public ProductUserId ParticipantId { get; set; } + + /// + /// Join room flags, e.g. . This is a bitwise-or union of the defined flags. + /// + public JoinRoomFlags Flags { get; set; } + + /// + /// Enable or disable Manual Audio Input. If manual audio input is enabled audio recording is not started and the audio + /// buffers must be passed manually using . + /// + public bool ManualAudioInputEnabled { get; set; } + + /// + /// Enable or disable Manual Audio Output. If manual audio output is enabled audio rendering is not started and the audio + /// buffers must be received with and rendered manually. + /// + public bool ManualAudioOutputEnabled { get; set; } + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct JoinRoomOptionsInternal : ISettable, System.IDisposable + { + private int m_ApiVersion; + private System.IntPtr m_LocalUserId; + private System.IntPtr m_RoomName; + private System.IntPtr m_ClientBaseUrl; + private System.IntPtr m_ParticipantToken; + private System.IntPtr m_ParticipantId; + private JoinRoomFlags m_Flags; + private int m_ManualAudioInputEnabled; + private int m_ManualAudioOutputEnabled; + + public ProductUserId LocalUserId + { + set + { + Helper.TryMarshalSet(ref m_LocalUserId, value); + } + } + + public string RoomName + { + set + { + Helper.TryMarshalSet(ref m_RoomName, value); + } + } + + public string ClientBaseUrl + { + set + { + Helper.TryMarshalSet(ref m_ClientBaseUrl, value); + } + } + + public string ParticipantToken + { + set + { + Helper.TryMarshalSet(ref m_ParticipantToken, value); + } + } + + public ProductUserId ParticipantId + { + set + { + Helper.TryMarshalSet(ref m_ParticipantId, value); + } + } + + public JoinRoomFlags Flags + { + set + { + m_Flags = value; + } + } + + public bool ManualAudioInputEnabled + { + set + { + Helper.TryMarshalSet(ref m_ManualAudioInputEnabled, value); + } + } + + public bool ManualAudioOutputEnabled + { + set + { + Helper.TryMarshalSet(ref m_ManualAudioOutputEnabled, value); + } + } + + public void Set(JoinRoomOptions other) + { + if (other != null) + { + m_ApiVersion = RTCInterface.JoinroomApiLatest; + LocalUserId = other.LocalUserId; + RoomName = other.RoomName; + ClientBaseUrl = other.ClientBaseUrl; + ParticipantToken = other.ParticipantToken; + ParticipantId = other.ParticipantId; + Flags = other.Flags; + ManualAudioInputEnabled = other.ManualAudioInputEnabled; + ManualAudioOutputEnabled = other.ManualAudioOutputEnabled; + } + } + + public void Set(object other) + { + Set(other as JoinRoomOptions); + } + + public void Dispose() + { + Helper.TryMarshalDispose(ref m_LocalUserId); + Helper.TryMarshalDispose(ref m_RoomName); + Helper.TryMarshalDispose(ref m_ClientBaseUrl); + Helper.TryMarshalDispose(ref m_ParticipantToken); + Helper.TryMarshalDispose(ref m_ParticipantId); + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/RTC/JoinRoomOptions.cs.meta b/EOSSDK/Generated/RTC/JoinRoomOptions.cs.meta new file mode 100644 index 00000000..330922b9 --- /dev/null +++ b/EOSSDK/Generated/RTC/JoinRoomOptions.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: d011e8b1453d4ba4187fd8d570333360 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/RTC/LeaveRoomCallbackInfo.cs b/EOSSDK/Generated/RTC/LeaveRoomCallbackInfo.cs new file mode 100644 index 00000000..579f5898 --- /dev/null +++ b/EOSSDK/Generated/RTC/LeaveRoomCallbackInfo.cs @@ -0,0 +1,110 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.RTC +{ + /// + /// This struct is passed in with a call to . + /// + public class LeaveRoomCallbackInfo : ICallbackInfo, ISettable + { + /// + /// This returns: + /// if the channel was successfully left. + /// if the room name belongs to the Lobby voice system. + /// otherwise. + /// + public Result ResultCode { get; private set; } + + /// + /// Client-specified data passed into . + /// + public object ClientData { get; private set; } + + /// + /// The Product User ID of the user who initiated this request. + /// + public ProductUserId LocalUserId { get; private set; } + + /// + /// The room the user was trying to leave. + /// + public string RoomName { get; private set; } + + public Result? GetResultCode() + { + return ResultCode; + } + + internal void Set(LeaveRoomCallbackInfoInternal? other) + { + if (other != null) + { + ResultCode = other.Value.ResultCode; + ClientData = other.Value.ClientData; + LocalUserId = other.Value.LocalUserId; + RoomName = other.Value.RoomName; + } + } + + public void Set(object other) + { + Set(other as LeaveRoomCallbackInfoInternal?); + } + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct LeaveRoomCallbackInfoInternal : ICallbackInfoInternal + { + private Result m_ResultCode; + private System.IntPtr m_ClientData; + private System.IntPtr m_LocalUserId; + private System.IntPtr m_RoomName; + + public Result ResultCode + { + get + { + return m_ResultCode; + } + } + + public object ClientData + { + get + { + object value; + Helper.TryMarshalGet(m_ClientData, out value); + return value; + } + } + + public System.IntPtr ClientDataAddress + { + get + { + return m_ClientData; + } + } + + public ProductUserId LocalUserId + { + get + { + ProductUserId value; + Helper.TryMarshalGet(m_LocalUserId, out value); + return value; + } + } + + public string RoomName + { + get + { + string value; + Helper.TryMarshalGet(m_RoomName, out value); + return value; + } + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/RTC/LeaveRoomCallbackInfo.cs.meta b/EOSSDK/Generated/RTC/LeaveRoomCallbackInfo.cs.meta new file mode 100644 index 00000000..4acdd1e1 --- /dev/null +++ b/EOSSDK/Generated/RTC/LeaveRoomCallbackInfo.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: a36a534259d3cfe4d959068a2748623c +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/RTC/LeaveRoomOptions.cs b/EOSSDK/Generated/RTC/LeaveRoomOptions.cs new file mode 100644 index 00000000..9f7ed17d --- /dev/null +++ b/EOSSDK/Generated/RTC/LeaveRoomOptions.cs @@ -0,0 +1,66 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.RTC +{ + /// + /// This struct is used to call . + /// + public class LeaveRoomOptions + { + /// + /// Product User ID of the user requesting to leave the room + /// + public ProductUserId LocalUserId { get; set; } + + /// + /// The room to leave. + /// + public string RoomName { get; set; } + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct LeaveRoomOptionsInternal : ISettable, System.IDisposable + { + private int m_ApiVersion; + private System.IntPtr m_LocalUserId; + private System.IntPtr m_RoomName; + + public ProductUserId LocalUserId + { + set + { + Helper.TryMarshalSet(ref m_LocalUserId, value); + } + } + + public string RoomName + { + set + { + Helper.TryMarshalSet(ref m_RoomName, value); + } + } + + public void Set(LeaveRoomOptions other) + { + if (other != null) + { + m_ApiVersion = RTCInterface.LeaveroomApiLatest; + LocalUserId = other.LocalUserId; + RoomName = other.RoomName; + } + } + + public void Set(object other) + { + Set(other as LeaveRoomOptions); + } + + public void Dispose() + { + Helper.TryMarshalDispose(ref m_LocalUserId); + Helper.TryMarshalDispose(ref m_RoomName); + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/RTC/LeaveRoomOptions.cs.meta b/EOSSDK/Generated/RTC/LeaveRoomOptions.cs.meta new file mode 100644 index 00000000..50500242 --- /dev/null +++ b/EOSSDK/Generated/RTC/LeaveRoomOptions.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: dd8c59e6e1e50be4eac28d2c3a71125b +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/RTC/OnBlockParticipantCallback.cs b/EOSSDK/Generated/RTC/OnBlockParticipantCallback.cs new file mode 100644 index 00000000..e429550e --- /dev/null +++ b/EOSSDK/Generated/RTC/OnBlockParticipantCallback.cs @@ -0,0 +1,13 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.RTC +{ + /// + /// Callback for completion of block participants request. + /// + public delegate void OnBlockParticipantCallback(BlockParticipantCallbackInfo data); + + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void OnBlockParticipantCallbackInternal(System.IntPtr data); +} \ No newline at end of file diff --git a/EOSSDK/Generated/RTC/OnBlockParticipantCallback.cs.meta b/EOSSDK/Generated/RTC/OnBlockParticipantCallback.cs.meta new file mode 100644 index 00000000..846533a5 --- /dev/null +++ b/EOSSDK/Generated/RTC/OnBlockParticipantCallback.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 3f5ae8a07b291e34a838fa35ed845be0 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/RTC/OnDisconnectedCallback.cs b/EOSSDK/Generated/RTC/OnDisconnectedCallback.cs new file mode 100644 index 00000000..dd26ff85 --- /dev/null +++ b/EOSSDK/Generated/RTC/OnDisconnectedCallback.cs @@ -0,0 +1,10 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.RTC +{ + public delegate void OnDisconnectedCallback(DisconnectedCallbackInfo data); + + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void OnDisconnectedCallbackInternal(System.IntPtr data); +} \ No newline at end of file diff --git a/EOSSDK/Generated/RTC/OnDisconnectedCallback.cs.meta b/EOSSDK/Generated/RTC/OnDisconnectedCallback.cs.meta new file mode 100644 index 00000000..dbcf4e29 --- /dev/null +++ b/EOSSDK/Generated/RTC/OnDisconnectedCallback.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: c42be3daadb7b1143ba3af3f34454b27 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/RTC/OnJoinRoomCallback.cs b/EOSSDK/Generated/RTC/OnJoinRoomCallback.cs new file mode 100644 index 00000000..6507d324 --- /dev/null +++ b/EOSSDK/Generated/RTC/OnJoinRoomCallback.cs @@ -0,0 +1,13 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.RTC +{ + /// + /// Callback for completion of room join request. + /// + public delegate void OnJoinRoomCallback(JoinRoomCallbackInfo data); + + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void OnJoinRoomCallbackInternal(System.IntPtr data); +} \ No newline at end of file diff --git a/EOSSDK/Generated/RTC/OnJoinRoomCallback.cs.meta b/EOSSDK/Generated/RTC/OnJoinRoomCallback.cs.meta new file mode 100644 index 00000000..6bc7d847 --- /dev/null +++ b/EOSSDK/Generated/RTC/OnJoinRoomCallback.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: cd256147f3f0f92478b23af03922955d +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/RTC/OnLeaveRoomCallback.cs b/EOSSDK/Generated/RTC/OnLeaveRoomCallback.cs new file mode 100644 index 00000000..79250da7 --- /dev/null +++ b/EOSSDK/Generated/RTC/OnLeaveRoomCallback.cs @@ -0,0 +1,13 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.RTC +{ + /// + /// Callback for completion of room leave request. + /// + public delegate void OnLeaveRoomCallback(LeaveRoomCallbackInfo data); + + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void OnLeaveRoomCallbackInternal(System.IntPtr data); +} \ No newline at end of file diff --git a/EOSSDK/Generated/RTC/OnLeaveRoomCallback.cs.meta b/EOSSDK/Generated/RTC/OnLeaveRoomCallback.cs.meta new file mode 100644 index 00000000..c0954efe --- /dev/null +++ b/EOSSDK/Generated/RTC/OnLeaveRoomCallback.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 3d77a26c2dfb2bc4295a6b5a2a6eac6a +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/RTC/OnParticipantStatusChangedCallback.cs b/EOSSDK/Generated/RTC/OnParticipantStatusChangedCallback.cs new file mode 100644 index 00000000..fa509024 --- /dev/null +++ b/EOSSDK/Generated/RTC/OnParticipantStatusChangedCallback.cs @@ -0,0 +1,10 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.RTC +{ + public delegate void OnParticipantStatusChangedCallback(ParticipantStatusChangedCallbackInfo data); + + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void OnParticipantStatusChangedCallbackInternal(System.IntPtr data); +} \ No newline at end of file diff --git a/EOSSDK/Generated/RTC/OnParticipantStatusChangedCallback.cs.meta b/EOSSDK/Generated/RTC/OnParticipantStatusChangedCallback.cs.meta new file mode 100644 index 00000000..edc55e21 --- /dev/null +++ b/EOSSDK/Generated/RTC/OnParticipantStatusChangedCallback.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: c0b553c9a575b7d4fb84629d0aa515f8 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/RTC/ParticipantMetadata.cs b/EOSSDK/Generated/RTC/ParticipantMetadata.cs new file mode 100644 index 00000000..d2738836 --- /dev/null +++ b/EOSSDK/Generated/RTC/ParticipantMetadata.cs @@ -0,0 +1,94 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.RTC +{ + /// + /// This struct is used to get information about a specific participant metadata item. + /// + public class ParticipantMetadata : ISettable + { + /// + /// The unique key of this metadata item. The max size of the string is . + /// + public string Key { get; set; } + + /// + /// The value of this metadata item. The max size of the string is . + /// + public string Value { get; set; } + + internal void Set(ParticipantMetadataInternal? other) + { + if (other != null) + { + Key = other.Value.Key; + Value = other.Value.Value; + } + } + + public void Set(object other) + { + Set(other as ParticipantMetadataInternal?); + } + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct ParticipantMetadataInternal : ISettable, System.IDisposable + { + private int m_ApiVersion; + private System.IntPtr m_Key; + private System.IntPtr m_Value; + + public string Key + { + get + { + string value; + Helper.TryMarshalGet(m_Key, out value); + return value; + } + + set + { + Helper.TryMarshalSet(ref m_Key, value); + } + } + + public string Value + { + get + { + string value; + Helper.TryMarshalGet(m_Value, out value); + return value; + } + + set + { + Helper.TryMarshalSet(ref m_Value, value); + } + } + + public void Set(ParticipantMetadata other) + { + if (other != null) + { + m_ApiVersion = RTCInterface.ParticipantmetadataApiLatest; + Key = other.Key; + Value = other.Value; + } + } + + public void Set(object other) + { + Set(other as ParticipantMetadata); + } + + public void Dispose() + { + Helper.TryMarshalDispose(ref m_Key); + Helper.TryMarshalDispose(ref m_Value); + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/RTC/ParticipantMetadata.cs.meta b/EOSSDK/Generated/RTC/ParticipantMetadata.cs.meta new file mode 100644 index 00000000..22b1706a --- /dev/null +++ b/EOSSDK/Generated/RTC/ParticipantMetadata.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 534b67119a9a0cb40b43391372345ac2 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/RTC/ParticipantStatusChangedCallbackInfo.cs b/EOSSDK/Generated/RTC/ParticipantStatusChangedCallbackInfo.cs new file mode 100644 index 00000000..f2756d82 --- /dev/null +++ b/EOSSDK/Generated/RTC/ParticipantStatusChangedCallbackInfo.cs @@ -0,0 +1,143 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.RTC +{ + /// + /// This struct is passed in with a call to registered event. + /// + public class ParticipantStatusChangedCallbackInfo : ICallbackInfo, ISettable + { + /// + /// Client-specified data passed into . + /// + public object ClientData { get; private set; } + + /// + /// The Product User ID of the user who initiated this request. + /// + public ProductUserId LocalUserId { get; private set; } + + /// + /// The room associated with this event. + /// + public string RoomName { get; private set; } + + /// + /// The participant whose status changed. + /// + public ProductUserId ParticipantId { get; private set; } + + /// + /// What status change occurred + /// + public RTCParticipantStatus ParticipantStatus { get; private set; } + + /// + /// The participant metadata items. + /// This is only set if ParticipantStatus is + /// + public ParticipantMetadata[] ParticipantMetadata { get; private set; } + + public Result? GetResultCode() + { + return null; + } + + internal void Set(ParticipantStatusChangedCallbackInfoInternal? other) + { + if (other != null) + { + ClientData = other.Value.ClientData; + LocalUserId = other.Value.LocalUserId; + RoomName = other.Value.RoomName; + ParticipantId = other.Value.ParticipantId; + ParticipantStatus = other.Value.ParticipantStatus; + ParticipantMetadata = other.Value.ParticipantMetadata; + } + } + + public void Set(object other) + { + Set(other as ParticipantStatusChangedCallbackInfoInternal?); + } + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct ParticipantStatusChangedCallbackInfoInternal : ICallbackInfoInternal + { + private System.IntPtr m_ClientData; + private System.IntPtr m_LocalUserId; + private System.IntPtr m_RoomName; + private System.IntPtr m_ParticipantId; + private RTCParticipantStatus m_ParticipantStatus; + private uint m_ParticipantMetadataCount; + private System.IntPtr m_ParticipantMetadata; + + public object ClientData + { + get + { + object value; + Helper.TryMarshalGet(m_ClientData, out value); + return value; + } + } + + public System.IntPtr ClientDataAddress + { + get + { + return m_ClientData; + } + } + + public ProductUserId LocalUserId + { + get + { + ProductUserId value; + Helper.TryMarshalGet(m_LocalUserId, out value); + return value; + } + } + + public string RoomName + { + get + { + string value; + Helper.TryMarshalGet(m_RoomName, out value); + return value; + } + } + + public ProductUserId ParticipantId + { + get + { + ProductUserId value; + Helper.TryMarshalGet(m_ParticipantId, out value); + return value; + } + } + + public RTCParticipantStatus ParticipantStatus + { + get + { + return m_ParticipantStatus; + } + } + + public ParticipantMetadata[] ParticipantMetadata + { + get + { + ParticipantMetadata[] value; + Helper.TryMarshalGet(m_ParticipantMetadata, out value, m_ParticipantMetadataCount); + return value; + } + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/RTC/ParticipantStatusChangedCallbackInfo.cs.meta b/EOSSDK/Generated/RTC/ParticipantStatusChangedCallbackInfo.cs.meta new file mode 100644 index 00000000..78701aa5 --- /dev/null +++ b/EOSSDK/Generated/RTC/ParticipantStatusChangedCallbackInfo.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: fd408a794a337c345839c6d3e1f99379 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/RTC/RTCInterface.cs b/EOSSDK/Generated/RTC/RTCInterface.cs new file mode 100644 index 00000000..d15e2e16 --- /dev/null +++ b/EOSSDK/Generated/RTC/RTCInterface.cs @@ -0,0 +1,296 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.RTC +{ + public sealed partial class RTCInterface : Handle + { + public RTCInterface() + { + } + + public RTCInterface(System.IntPtr innerHandle) : base(innerHandle) + { + } + + /// + /// The most recent version of the API. + /// + public const int AddnotifydisconnectedApiLatest = 1; + + /// + /// The most recent version of the API. + /// + public const int AddnotifyparticipantstatuschangedApiLatest = 1; + + /// + /// The most recent version of the API. + /// + public const int BlockparticipantApiLatest = 1; + + /// + /// The most recent version of the API. + /// + public const int JoinroomApiLatest = 1; + + /// + /// The most recent version of the API. + /// + public const int LeaveroomApiLatest = 1; + + /// + /// The most recent version of the struct. + /// + public const int ParticipantmetadataApiLatest = 1; + + public const int ParticipantmetadataKeyMaxcharcount = 256; + + public const int ParticipantmetadataValueMaxcharcount = 256; + + /// + /// Register to receive notifications when disconnected from the room. If the returned NotificationId is valid, you must call + /// when you no longer wish to have your CompletionDelegate called. + /// + /// This function will always return when used with lobby RTC room. To be notified of the connection + /// status of a Lobby-managed RTC room, use the function instead. + /// + /// + /// + /// Arbitrary data that is passed back in the CompletionDelegate + /// The callback to be fired when a presence change occurs + /// + /// Notification ID representing the registered callback if successful, an invalid NotificationId if not + /// + public ulong AddNotifyDisconnected(AddNotifyDisconnectedOptions options, object clientData, OnDisconnectedCallback completionDelegate) + { + var optionsAddress = System.IntPtr.Zero; + Helper.TryMarshalSet(ref optionsAddress, options); + + var clientDataAddress = System.IntPtr.Zero; + + var completionDelegateInternal = new OnDisconnectedCallbackInternal(OnDisconnectedCallbackInternalImplementation); + Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); + + var funcResult = Bindings.EOS_RTC_AddNotifyDisconnected(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); + + Helper.TryMarshalDispose(ref optionsAddress); + + Helper.TryAssignNotificationIdToCallback(clientDataAddress, funcResult); + + return funcResult; + } + + /// + /// Register to receive notifications when a participant's status changes (e.g: join or leave the room). If the returned NotificationId is valid, you must call + /// when you no longer wish to have your CompletionDelegate called. + /// + /// If you register to this notification before joining a room, you will receive a notification for every member already in the room when you join said room. + /// This allows you to know who is already in the room when you join. + /// + /// To be used effectively with a Lobby-managed RTC room, this should be registered during the or completion + /// callbacks when the ResultCode is . If this notification is registered after that point, it is possible to miss notifications for + /// already-existing room participants. + /// + /// + /// + /// Arbitrary data that is passed back in the CompletionDelegate + /// The callback to be fired when a presence change occurs + /// + /// Notification ID representing the registered callback if successful, an invalid NotificationId if not + /// @note This notification is also raised when the local user joins the room, but NOT when the local user leaves the room. + /// + public ulong AddNotifyParticipantStatusChanged(AddNotifyParticipantStatusChangedOptions options, object clientData, OnParticipantStatusChangedCallback completionDelegate) + { + var optionsAddress = System.IntPtr.Zero; + Helper.TryMarshalSet(ref optionsAddress, options); + + var clientDataAddress = System.IntPtr.Zero; + + var completionDelegateInternal = new OnParticipantStatusChangedCallbackInternal(OnParticipantStatusChangedCallbackInternalImplementation); + Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); + + var funcResult = Bindings.EOS_RTC_AddNotifyParticipantStatusChanged(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); + + Helper.TryMarshalDispose(ref optionsAddress); + + Helper.TryAssignNotificationIdToCallback(clientDataAddress, funcResult); + + return funcResult; + } + + /// + /// Use this function to block a participant already connected to the room. After blocking them no media will be sent or received between + /// that user and the local user. This method can be used after receiving the OnParticipantStatusChanged notification. + /// + /// structure containing the parameters for the operation. + /// Arbitrary data that is passed back in the CompletionDelegate + /// a callback that is fired when the async operation completes, either successfully or in error + /// + /// if the operation succeeded + /// if any of the parameters are incorrect + /// if either the local user or specified participant are not in the specified room + /// + public void BlockParticipant(BlockParticipantOptions options, object clientData, OnBlockParticipantCallback completionDelegate) + { + var optionsAddress = System.IntPtr.Zero; + Helper.TryMarshalSet(ref optionsAddress, options); + + var clientDataAddress = System.IntPtr.Zero; + + var completionDelegateInternal = new OnBlockParticipantCallbackInternal(OnBlockParticipantCallbackInternalImplementation); + Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); + + Bindings.EOS_RTC_BlockParticipant(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); + + Helper.TryMarshalDispose(ref optionsAddress); + } + + /// + /// Get a handle to the Audio interface + /// eos_rtc_audio.h + /// eos_rtc_audio_types.h + /// + /// + /// handle + /// + public RTCAudio.RTCAudioInterface GetAudioInterface() + { + var funcResult = Bindings.EOS_RTC_GetAudioInterface(InnerHandle); + + RTCAudio.RTCAudioInterface funcResultReturn; + Helper.TryMarshalGet(funcResult, out funcResultReturn); + return funcResultReturn; + } + + /// + /// Use this function to join a room. + /// + /// This function does not need to called for the Lobby RTC Room system; doing so will return . The lobby system will + /// automatically join and leave RTC Rooms for all lobbies that have RTC rooms enabled. + /// + /// structure containing the parameters for the operation. + /// Arbitrary data that is passed back in the CompletionDelegate + /// a callback that is fired when the async operation completes, either successfully or in error + public void JoinRoom(JoinRoomOptions options, object clientData, OnJoinRoomCallback completionDelegate) + { + var optionsAddress = System.IntPtr.Zero; + Helper.TryMarshalSet(ref optionsAddress, options); + + var clientDataAddress = System.IntPtr.Zero; + + var completionDelegateInternal = new OnJoinRoomCallbackInternal(OnJoinRoomCallbackInternalImplementation); + Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); + + Bindings.EOS_RTC_JoinRoom(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); + + Helper.TryMarshalDispose(ref optionsAddress); + } + + /// + /// Use this function to leave a room and clean up all the resources associated with it. This function has to always be called when the + /// room is abandoned even if the user is already disconnected for other reasons. + /// + /// This function does not need to called for the Lobby RTC Room system; doing so will return . The lobby system will + /// automatically join and leave RTC Rooms for all lobbies that have RTC rooms enabled. + /// + /// structure containing the parameters for the operation. + /// Arbitrary data that is passed back in the CompletionDelegate + /// a callback that is fired when the async operation completes, either successfully or in error + /// + /// if the operation succeeded + /// if any of the parameters are incorrect + /// if not in the specified room + /// + public void LeaveRoom(LeaveRoomOptions options, object clientData, OnLeaveRoomCallback completionDelegate) + { + var optionsAddress = System.IntPtr.Zero; + Helper.TryMarshalSet(ref optionsAddress, options); + + var clientDataAddress = System.IntPtr.Zero; + + var completionDelegateInternal = new OnLeaveRoomCallbackInternal(OnLeaveRoomCallbackInternalImplementation); + Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); + + Bindings.EOS_RTC_LeaveRoom(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); + + Helper.TryMarshalDispose(ref optionsAddress); + } + + /// + /// Unregister a previously bound notification handler from receiving room disconnection notifications + /// + /// The Notification ID representing the registered callback + public void RemoveNotifyDisconnected(ulong notificationId) + { + Helper.TryRemoveCallbackByNotificationId(notificationId); + + Bindings.EOS_RTC_RemoveNotifyDisconnected(InnerHandle, notificationId); + } + + /// + /// Unregister a previously bound notification handler from receiving participant status change notifications + /// + /// The Notification ID representing the registered callback + public void RemoveNotifyParticipantStatusChanged(ulong notificationId) + { + Helper.TryRemoveCallbackByNotificationId(notificationId); + + Bindings.EOS_RTC_RemoveNotifyParticipantStatusChanged(InnerHandle, notificationId); + } + + [MonoPInvokeCallback(typeof(OnBlockParticipantCallbackInternal))] + internal static void OnBlockParticipantCallbackInternalImplementation(System.IntPtr data) + { + OnBlockParticipantCallback callback; + BlockParticipantCallbackInfo callbackInfo; + if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) + { + callback(callbackInfo); + } + } + + [MonoPInvokeCallback(typeof(OnDisconnectedCallbackInternal))] + internal static void OnDisconnectedCallbackInternalImplementation(System.IntPtr data) + { + OnDisconnectedCallback callback; + DisconnectedCallbackInfo callbackInfo; + if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) + { + callback(callbackInfo); + } + } + + [MonoPInvokeCallback(typeof(OnJoinRoomCallbackInternal))] + internal static void OnJoinRoomCallbackInternalImplementation(System.IntPtr data) + { + OnJoinRoomCallback callback; + JoinRoomCallbackInfo callbackInfo; + if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) + { + callback(callbackInfo); + } + } + + [MonoPInvokeCallback(typeof(OnLeaveRoomCallbackInternal))] + internal static void OnLeaveRoomCallbackInternalImplementation(System.IntPtr data) + { + OnLeaveRoomCallback callback; + LeaveRoomCallbackInfo callbackInfo; + if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) + { + callback(callbackInfo); + } + } + + [MonoPInvokeCallback(typeof(OnParticipantStatusChangedCallbackInternal))] + internal static void OnParticipantStatusChangedCallbackInternalImplementation(System.IntPtr data) + { + OnParticipantStatusChangedCallback callback; + ParticipantStatusChangedCallbackInfo callbackInfo; + if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) + { + callback(callbackInfo); + } + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/RTC/RTCInterface.cs.meta b/EOSSDK/Generated/RTC/RTCInterface.cs.meta new file mode 100644 index 00000000..a9d54d99 --- /dev/null +++ b/EOSSDK/Generated/RTC/RTCInterface.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: e8433bca5ea086543a6320a201a19bc3 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/RTC/RTCParticipantStatus.cs b/EOSSDK/Generated/RTC/RTCParticipantStatus.cs new file mode 100644 index 00000000..ed6a6bb1 --- /dev/null +++ b/EOSSDK/Generated/RTC/RTCParticipantStatus.cs @@ -0,0 +1,20 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.RTC +{ + /// + /// Participant RTC's status change + /// + public enum RTCParticipantStatus : int + { + /// + /// Participant joined the room + /// + Joined = 0, + /// + /// Participant left the room + /// + Left = 1 + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/RTC/RTCParticipantStatus.cs.meta b/EOSSDK/Generated/RTC/RTCParticipantStatus.cs.meta new file mode 100644 index 00000000..e6372e4d --- /dev/null +++ b/EOSSDK/Generated/RTC/RTCParticipantStatus.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 6f86f06f0dc215947a6f1bf2dde00d7b +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/RTCAdmin.meta b/EOSSDK/Generated/RTCAdmin.meta new file mode 100644 index 00000000..f8e164ae --- /dev/null +++ b/EOSSDK/Generated/RTCAdmin.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 1c78c615257a5784ea6880e356eb2bb4 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/RTCAdmin/CopyUserTokenByIndexOptions.cs b/EOSSDK/Generated/RTCAdmin/CopyUserTokenByIndexOptions.cs new file mode 100644 index 00000000..85fe6092 --- /dev/null +++ b/EOSSDK/Generated/RTCAdmin/CopyUserTokenByIndexOptions.cs @@ -0,0 +1,65 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.RTCAdmin +{ + /// + /// Input parameters for the function. + /// + public class CopyUserTokenByIndexOptions + { + /// + /// Index of the user token to retrieve from the cache. + /// + public uint UserTokenIndex { get; set; } + + /// + /// Query identifier received as part of a previous query. + /// + /// + public uint QueryId { get; set; } + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct CopyUserTokenByIndexOptionsInternal : ISettable, System.IDisposable + { + private int m_ApiVersion; + private uint m_UserTokenIndex; + private uint m_QueryId; + + public uint UserTokenIndex + { + set + { + m_UserTokenIndex = value; + } + } + + public uint QueryId + { + set + { + m_QueryId = value; + } + } + + public void Set(CopyUserTokenByIndexOptions other) + { + if (other != null) + { + m_ApiVersion = RTCAdminInterface.CopyusertokenbyindexApiLatest; + UserTokenIndex = other.UserTokenIndex; + QueryId = other.QueryId; + } + } + + public void Set(object other) + { + Set(other as CopyUserTokenByIndexOptions); + } + + public void Dispose() + { + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/RTCAdmin/CopyUserTokenByIndexOptions.cs.meta b/EOSSDK/Generated/RTCAdmin/CopyUserTokenByIndexOptions.cs.meta new file mode 100644 index 00000000..d6224959 --- /dev/null +++ b/EOSSDK/Generated/RTCAdmin/CopyUserTokenByIndexOptions.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 13b5e94891466794bb0f308e5df9abc7 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/RTCAdmin/CopyUserTokenByUserIdOptions.cs b/EOSSDK/Generated/RTCAdmin/CopyUserTokenByUserIdOptions.cs new file mode 100644 index 00000000..fed085e0 --- /dev/null +++ b/EOSSDK/Generated/RTCAdmin/CopyUserTokenByUserIdOptions.cs @@ -0,0 +1,66 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.RTCAdmin +{ + /// + /// Input parameters for the function. + /// + public class CopyUserTokenByUserIdOptions + { + /// + /// The Product User ID for the user whose user token we're copying. + /// + public ProductUserId TargetUserId { get; set; } + + /// + /// Query identifier received as part of a previous query. + /// + /// + public uint QueryId { get; set; } + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct CopyUserTokenByUserIdOptionsInternal : ISettable, System.IDisposable + { + private int m_ApiVersion; + private System.IntPtr m_TargetUserId; + private uint m_QueryId; + + public ProductUserId TargetUserId + { + set + { + Helper.TryMarshalSet(ref m_TargetUserId, value); + } + } + + public uint QueryId + { + set + { + m_QueryId = value; + } + } + + public void Set(CopyUserTokenByUserIdOptions other) + { + if (other != null) + { + m_ApiVersion = RTCAdminInterface.CopyusertokenbyuseridApiLatest; + TargetUserId = other.TargetUserId; + QueryId = other.QueryId; + } + } + + public void Set(object other) + { + Set(other as CopyUserTokenByUserIdOptions); + } + + public void Dispose() + { + Helper.TryMarshalDispose(ref m_TargetUserId); + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/RTCAdmin/CopyUserTokenByUserIdOptions.cs.meta b/EOSSDK/Generated/RTCAdmin/CopyUserTokenByUserIdOptions.cs.meta new file mode 100644 index 00000000..6d49899a --- /dev/null +++ b/EOSSDK/Generated/RTCAdmin/CopyUserTokenByUserIdOptions.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: e2fb36d869fe7f24b8fd4b802d593583 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/RTCAdmin/KickCompleteCallbackInfo.cs b/EOSSDK/Generated/RTCAdmin/KickCompleteCallbackInfo.cs new file mode 100644 index 00000000..24dc13d7 --- /dev/null +++ b/EOSSDK/Generated/RTCAdmin/KickCompleteCallbackInfo.cs @@ -0,0 +1,73 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.RTCAdmin +{ + /// + /// Data containing the result information for a kick participant request. + /// + public class KickCompleteCallbackInfo : ICallbackInfo, ISettable + { + /// + /// The code for the operation. indicates that the operation succeeded; other codes indicate errors. + /// + public Result ResultCode { get; private set; } + + /// + /// Client-specified data passed into the kick request + /// + public object ClientData { get; private set; } + + public Result? GetResultCode() + { + return ResultCode; + } + + internal void Set(KickCompleteCallbackInfoInternal? other) + { + if (other != null) + { + ResultCode = other.Value.ResultCode; + ClientData = other.Value.ClientData; + } + } + + public void Set(object other) + { + Set(other as KickCompleteCallbackInfoInternal?); + } + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct KickCompleteCallbackInfoInternal : ICallbackInfoInternal + { + private Result m_ResultCode; + private System.IntPtr m_ClientData; + + public Result ResultCode + { + get + { + return m_ResultCode; + } + } + + public object ClientData + { + get + { + object value; + Helper.TryMarshalGet(m_ClientData, out value); + return value; + } + } + + public System.IntPtr ClientDataAddress + { + get + { + return m_ClientData; + } + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/RTCAdmin/KickCompleteCallbackInfo.cs.meta b/EOSSDK/Generated/RTCAdmin/KickCompleteCallbackInfo.cs.meta new file mode 100644 index 00000000..2438dea8 --- /dev/null +++ b/EOSSDK/Generated/RTCAdmin/KickCompleteCallbackInfo.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 1aa56d837bade634d8efbf6f439a6729 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/RTCAdmin/KickOptions.cs b/EOSSDK/Generated/RTCAdmin/KickOptions.cs new file mode 100644 index 00000000..0dcac664 --- /dev/null +++ b/EOSSDK/Generated/RTCAdmin/KickOptions.cs @@ -0,0 +1,66 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.RTCAdmin +{ + /// + /// Input parameters for the function. + /// + public class KickOptions + { + /// + /// Room name to kick the participant from + /// + public string RoomName { get; set; } + + /// + /// Product User ID of the participant to kick from the room + /// + public ProductUserId TargetUserId { get; set; } + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct KickOptionsInternal : ISettable, System.IDisposable + { + private int m_ApiVersion; + private System.IntPtr m_RoomName; + private System.IntPtr m_TargetUserId; + + public string RoomName + { + set + { + Helper.TryMarshalSet(ref m_RoomName, value); + } + } + + public ProductUserId TargetUserId + { + set + { + Helper.TryMarshalSet(ref m_TargetUserId, value); + } + } + + public void Set(KickOptions other) + { + if (other != null) + { + m_ApiVersion = RTCAdminInterface.KickApiLatest; + RoomName = other.RoomName; + TargetUserId = other.TargetUserId; + } + } + + public void Set(object other) + { + Set(other as KickOptions); + } + + public void Dispose() + { + Helper.TryMarshalDispose(ref m_RoomName); + Helper.TryMarshalDispose(ref m_TargetUserId); + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/RTCAdmin/KickOptions.cs.meta b/EOSSDK/Generated/RTCAdmin/KickOptions.cs.meta new file mode 100644 index 00000000..ea002570 --- /dev/null +++ b/EOSSDK/Generated/RTCAdmin/KickOptions.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: be8e252a74b9c1342899e06fac96b56c +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/RTCAdmin/OnKickCompleteCallback.cs b/EOSSDK/Generated/RTCAdmin/OnKickCompleteCallback.cs new file mode 100644 index 00000000..688c8a8d --- /dev/null +++ b/EOSSDK/Generated/RTCAdmin/OnKickCompleteCallback.cs @@ -0,0 +1,14 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.RTCAdmin +{ + /// + /// Function prototype definition for callbacks passed to + /// + /// An containing the output information and result + public delegate void OnKickCompleteCallback(KickCompleteCallbackInfo data); + + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void OnKickCompleteCallbackInternal(System.IntPtr data); +} \ No newline at end of file diff --git a/EOSSDK/Generated/RTCAdmin/OnKickCompleteCallback.cs.meta b/EOSSDK/Generated/RTCAdmin/OnKickCompleteCallback.cs.meta new file mode 100644 index 00000000..deacb29f --- /dev/null +++ b/EOSSDK/Generated/RTCAdmin/OnKickCompleteCallback.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 1ec16b7886713bb48be90050ea6f091c +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/RTCAdmin/OnQueryJoinRoomTokenCompleteCallback.cs b/EOSSDK/Generated/RTCAdmin/OnQueryJoinRoomTokenCompleteCallback.cs new file mode 100644 index 00000000..6e1dea97 --- /dev/null +++ b/EOSSDK/Generated/RTCAdmin/OnQueryJoinRoomTokenCompleteCallback.cs @@ -0,0 +1,14 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.RTCAdmin +{ + /// + /// Function prototype definition for callbacks passed to + /// + /// An containing the output information and result + public delegate void OnQueryJoinRoomTokenCompleteCallback(QueryJoinRoomTokenCompleteCallbackInfo data); + + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void OnQueryJoinRoomTokenCompleteCallbackInternal(System.IntPtr data); +} \ No newline at end of file diff --git a/EOSSDK/Generated/RTCAdmin/OnQueryJoinRoomTokenCompleteCallback.cs.meta b/EOSSDK/Generated/RTCAdmin/OnQueryJoinRoomTokenCompleteCallback.cs.meta new file mode 100644 index 00000000..6dcfc21d --- /dev/null +++ b/EOSSDK/Generated/RTCAdmin/OnQueryJoinRoomTokenCompleteCallback.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: e9cc4e6bb555b1549965e74b7e4a1ffd +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/RTCAdmin/OnSetParticipantHardMuteCompleteCallback.cs b/EOSSDK/Generated/RTCAdmin/OnSetParticipantHardMuteCompleteCallback.cs new file mode 100644 index 00000000..90699e3d --- /dev/null +++ b/EOSSDK/Generated/RTCAdmin/OnSetParticipantHardMuteCompleteCallback.cs @@ -0,0 +1,10 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.RTCAdmin +{ + public delegate void OnSetParticipantHardMuteCompleteCallback(SetParticipantHardMuteCompleteCallbackInfo data); + + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void OnSetParticipantHardMuteCompleteCallbackInternal(System.IntPtr data); +} \ No newline at end of file diff --git a/EOSSDK/Generated/RTCAdmin/OnSetParticipantHardMuteCompleteCallback.cs.meta b/EOSSDK/Generated/RTCAdmin/OnSetParticipantHardMuteCompleteCallback.cs.meta new file mode 100644 index 00000000..1ef0950f --- /dev/null +++ b/EOSSDK/Generated/RTCAdmin/OnSetParticipantHardMuteCompleteCallback.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 74c588dc14fbfad40a1561ba5c4140c2 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/RTCAdmin/QueryJoinRoomTokenCompleteCallbackInfo.cs b/EOSSDK/Generated/RTCAdmin/QueryJoinRoomTokenCompleteCallbackInfo.cs new file mode 100644 index 00000000..7044cc1e --- /dev/null +++ b/EOSSDK/Generated/RTCAdmin/QueryJoinRoomTokenCompleteCallbackInfo.cs @@ -0,0 +1,140 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.RTCAdmin +{ + /// + /// Data containing the result information for a query join room token request. + /// + public class QueryJoinRoomTokenCompleteCallbackInfo : ICallbackInfo, ISettable + { + /// + /// The code for the operation. indicates that the operation succeeded; other codes indicate errors. + /// + public Result ResultCode { get; private set; } + + /// + /// Context that was passed into . + /// + public object ClientData { get; private set; } + + /// + /// Room the request was made for. + /// + public string RoomName { get; private set; } + + /// + /// URL passed to backend to join room. + /// + public string ClientBaseUrl { get; private set; } + + /// + /// If the query completed successfully, this contains an identifier that should be used to retrieve the tokens. + /// This identifier is only valid for the duration of the callback. + /// + /// + /// + public uint QueryId { get; private set; } + + /// + /// How many token received as result of the query + /// + public uint TokenCount { get; private set; } + + public Result? GetResultCode() + { + return ResultCode; + } + + internal void Set(QueryJoinRoomTokenCompleteCallbackInfoInternal? other) + { + if (other != null) + { + ResultCode = other.Value.ResultCode; + ClientData = other.Value.ClientData; + RoomName = other.Value.RoomName; + ClientBaseUrl = other.Value.ClientBaseUrl; + QueryId = other.Value.QueryId; + TokenCount = other.Value.TokenCount; + } + } + + public void Set(object other) + { + Set(other as QueryJoinRoomTokenCompleteCallbackInfoInternal?); + } + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct QueryJoinRoomTokenCompleteCallbackInfoInternal : ICallbackInfoInternal + { + private Result m_ResultCode; + private System.IntPtr m_ClientData; + private System.IntPtr m_RoomName; + private System.IntPtr m_ClientBaseUrl; + private uint m_QueryId; + private uint m_TokenCount; + + public Result ResultCode + { + get + { + return m_ResultCode; + } + } + + public object ClientData + { + get + { + object value; + Helper.TryMarshalGet(m_ClientData, out value); + return value; + } + } + + public System.IntPtr ClientDataAddress + { + get + { + return m_ClientData; + } + } + + public string RoomName + { + get + { + string value; + Helper.TryMarshalGet(m_RoomName, out value); + return value; + } + } + + public string ClientBaseUrl + { + get + { + string value; + Helper.TryMarshalGet(m_ClientBaseUrl, out value); + return value; + } + } + + public uint QueryId + { + get + { + return m_QueryId; + } + } + + public uint TokenCount + { + get + { + return m_TokenCount; + } + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/RTCAdmin/QueryJoinRoomTokenCompleteCallbackInfo.cs.meta b/EOSSDK/Generated/RTCAdmin/QueryJoinRoomTokenCompleteCallbackInfo.cs.meta new file mode 100644 index 00000000..5a5e40ac --- /dev/null +++ b/EOSSDK/Generated/RTCAdmin/QueryJoinRoomTokenCompleteCallbackInfo.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 8559ffc20f620f74996b4ea8d7f7ed4a +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/RTCAdmin/QueryJoinRoomTokenOptions.cs b/EOSSDK/Generated/RTCAdmin/QueryJoinRoomTokenOptions.cs new file mode 100644 index 00000000..f9be760b --- /dev/null +++ b/EOSSDK/Generated/RTCAdmin/QueryJoinRoomTokenOptions.cs @@ -0,0 +1,103 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.RTCAdmin +{ + /// + /// Input parameters for the function. + /// + public class QueryJoinRoomTokenOptions + { + /// + /// Product User ID for local user who is querying join room tokens. + /// + public ProductUserId LocalUserId { get; set; } + + /// + /// Room name to request a token for. + /// + public string RoomName { get; set; } + + /// + /// An array of Product User IDs indicating the users to retrieve a token for. + /// + public ProductUserId[] TargetUserIds { get; set; } + + /// + /// Array of IP Addresses, one for each of the users we're querying tokens for. + /// There should be TargetUserIdsCount Ip Addresses, you can set an entry to NULL if not known. + /// If TargetUserIpAddresses is set to NULL IP Addresses will be ignored. + /// IPv4 format: "0.0.0.0" + /// IPv6 format: "0:0:0:0:0:0:0:0" + /// + public string TargetUserIpAddresses { get; set; } + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct QueryJoinRoomTokenOptionsInternal : ISettable, System.IDisposable + { + private int m_ApiVersion; + private System.IntPtr m_LocalUserId; + private System.IntPtr m_RoomName; + private System.IntPtr m_TargetUserIds; + private uint m_TargetUserIdsCount; + private System.IntPtr m_TargetUserIpAddresses; + + public ProductUserId LocalUserId + { + set + { + Helper.TryMarshalSet(ref m_LocalUserId, value); + } + } + + public string RoomName + { + set + { + Helper.TryMarshalSet(ref m_RoomName, value); + } + } + + public ProductUserId[] TargetUserIds + { + set + { + Helper.TryMarshalSet(ref m_TargetUserIds, value, out m_TargetUserIdsCount); + } + } + + public string TargetUserIpAddresses + { + set + { + Helper.TryMarshalSet(ref m_TargetUserIpAddresses, value); + } + } + + public void Set(QueryJoinRoomTokenOptions other) + { + if (other != null) + { + m_ApiVersion = RTCAdminInterface.QueryjoinroomtokenApiLatest; + LocalUserId = other.LocalUserId; + RoomName = other.RoomName; + TargetUserIds = other.TargetUserIds; + TargetUserIpAddresses = other.TargetUserIpAddresses; + } + } + + public void Set(object other) + { + Set(other as QueryJoinRoomTokenOptions); + } + + public void Dispose() + { + Helper.TryMarshalDispose(ref m_LocalUserId); + Helper.TryMarshalDispose(ref m_RoomName); + Helper.TryMarshalDispose(ref m_TargetUserIds); + Helper.TryMarshalDispose(ref m_TargetUserIpAddresses); + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/RTCAdmin/QueryJoinRoomTokenOptions.cs.meta b/EOSSDK/Generated/RTCAdmin/QueryJoinRoomTokenOptions.cs.meta new file mode 100644 index 00000000..56813633 --- /dev/null +++ b/EOSSDK/Generated/RTCAdmin/QueryJoinRoomTokenOptions.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: def0db3f5eea2bc41afa42e1b8caada2 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/RTCAdmin/RTCAdminInterface.cs b/EOSSDK/Generated/RTCAdmin/RTCAdminInterface.cs new file mode 100644 index 00000000..ec96ded9 --- /dev/null +++ b/EOSSDK/Generated/RTCAdmin/RTCAdminInterface.cs @@ -0,0 +1,215 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.RTCAdmin +{ + public sealed partial class RTCAdminInterface : Handle + { + public RTCAdminInterface() + { + } + + public RTCAdminInterface(System.IntPtr innerHandle) : base(innerHandle) + { + } + + /// + /// The most recent version of the struct. + /// + public const int CopyusertokenbyindexApiLatest = 2; + + /// + /// The most recent version of the struct. + /// + public const int CopyusertokenbyuseridApiLatest = 2; + + /// + /// The most recent version of the API + /// + public const int KickApiLatest = 1; + + /// + /// The most recent version of the API + /// + public const int QueryjoinroomtokenApiLatest = 2; + + /// + /// The most recent version of the struct. + /// + public const int SetparticipanthardmuteApiLatest = 1; + + /// + /// The most recent version of the struct. + /// + public const int UsertokenApiLatest = 1; + + /// + /// Fetches a user token when called inside of the OnQueryJoinRoomTokenComplete callback. + /// + /// + /// Structure containing the index being accessed + /// + /// The user token for the given index, if it exists and is valid. Use when finished + /// @note The order of the tokens doesn't necessarily match the order of the array specified in the when + /// initiating the query. + /// + /// + /// if the information is available and passed out in OutUserToken + /// if you pass a null pointer for the out parameter + /// if the user token is not found + /// + public Result CopyUserTokenByIndex(CopyUserTokenByIndexOptions options, out UserToken outUserToken) + { + var optionsAddress = System.IntPtr.Zero; + Helper.TryMarshalSet(ref optionsAddress, options); + + var outUserTokenAddress = System.IntPtr.Zero; + + var funcResult = Bindings.EOS_RTCAdmin_CopyUserTokenByIndex(InnerHandle, optionsAddress, ref outUserTokenAddress); + + Helper.TryMarshalDispose(ref optionsAddress); + + if (Helper.TryMarshalGet(outUserTokenAddress, out outUserToken)) + { + Bindings.EOS_RTCAdmin_UserToken_Release(outUserTokenAddress); + } + + return funcResult; + } + + /// + /// Fetches a user token for a given user ID when called inside of the OnQueryJoinRoomTokenComplete callback. + /// + /// + /// Structure containing the user ID being accessed + /// The user token for the given user ID, if it exists and is valid. Use when finished + /// + /// if the information is available and passed out in OutUserToken + /// if you pass a null pointer for the out parameter + /// if the user token is not found + /// + public Result CopyUserTokenByUserId(CopyUserTokenByUserIdOptions options, out UserToken outUserToken) + { + var optionsAddress = System.IntPtr.Zero; + Helper.TryMarshalSet(ref optionsAddress, options); + + var outUserTokenAddress = System.IntPtr.Zero; + + var funcResult = Bindings.EOS_RTCAdmin_CopyUserTokenByUserId(InnerHandle, optionsAddress, ref outUserTokenAddress); + + Helper.TryMarshalDispose(ref optionsAddress); + + if (Helper.TryMarshalGet(outUserTokenAddress, out outUserToken)) + { + Bindings.EOS_RTCAdmin_UserToken_Release(outUserTokenAddress); + } + + return funcResult; + } + + /// + /// Starts an asynchronous task that removes a participant from a room and revokes their token. + /// + /// structure containing the room and user to revoke the token from. + /// arbitrary data that is passed back to you in the CompletionDelegate + /// a callback that is fired when the async operation completes, either successfully or in error + public void Kick(KickOptions options, object clientData, OnKickCompleteCallback completionDelegate) + { + var optionsAddress = System.IntPtr.Zero; + Helper.TryMarshalSet(ref optionsAddress, options); + + var clientDataAddress = System.IntPtr.Zero; + + var completionDelegateInternal = new OnKickCompleteCallbackInternal(OnKickCompleteCallbackInternalImplementation); + Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); + + Bindings.EOS_RTCAdmin_Kick(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); + + Helper.TryMarshalDispose(ref optionsAddress); + } + + /// + /// Query for a list of user tokens for joining a room. + /// + /// Each query generates a query id ( see ) which should be used + /// to retrieve the tokens from inside the callback. + /// + /// Structure containing information about the application whose user tokens we're retrieving. + /// Arbitrary data that is passed back to you in the CompletionDelegate + /// This function is called when the query join room token operation completes. + /// + /// if the operation completes successfully + /// if any of the options are incorrect + /// + public void QueryJoinRoomToken(QueryJoinRoomTokenOptions options, object clientData, OnQueryJoinRoomTokenCompleteCallback completionDelegate) + { + var optionsAddress = System.IntPtr.Zero; + Helper.TryMarshalSet(ref optionsAddress, options); + + var clientDataAddress = System.IntPtr.Zero; + + var completionDelegateInternal = new OnQueryJoinRoomTokenCompleteCallbackInternal(OnQueryJoinRoomTokenCompleteCallbackInternalImplementation); + Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); + + Bindings.EOS_RTCAdmin_QueryJoinRoomToken(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); + + Helper.TryMarshalDispose(ref optionsAddress); + } + + /// + /// Starts an asynchronous task remotely mutes/unmutes a room participant. + /// + /// This remotely mutes the specified participant, so no audio is sent from that participant to any other participant in the room. + /// + /// structure containing the room and user to mute. + /// arbitrary data that is passed back to you in the CompletionDelegate + /// a callback that is fired when the async operation completes, either successfully or in error + public void SetParticipantHardMute(SetParticipantHardMuteOptions options, object clientData, OnSetParticipantHardMuteCompleteCallback completionDelegate) + { + var optionsAddress = System.IntPtr.Zero; + Helper.TryMarshalSet(ref optionsAddress, options); + + var clientDataAddress = System.IntPtr.Zero; + + var completionDelegateInternal = new OnSetParticipantHardMuteCompleteCallbackInternal(OnSetParticipantHardMuteCompleteCallbackInternalImplementation); + Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); + + Bindings.EOS_RTCAdmin_SetParticipantHardMute(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); + + Helper.TryMarshalDispose(ref optionsAddress); + } + + [MonoPInvokeCallback(typeof(OnKickCompleteCallbackInternal))] + internal static void OnKickCompleteCallbackInternalImplementation(System.IntPtr data) + { + OnKickCompleteCallback callback; + KickCompleteCallbackInfo callbackInfo; + if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) + { + callback(callbackInfo); + } + } + + [MonoPInvokeCallback(typeof(OnQueryJoinRoomTokenCompleteCallbackInternal))] + internal static void OnQueryJoinRoomTokenCompleteCallbackInternalImplementation(System.IntPtr data) + { + OnQueryJoinRoomTokenCompleteCallback callback; + QueryJoinRoomTokenCompleteCallbackInfo callbackInfo; + if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) + { + callback(callbackInfo); + } + } + + [MonoPInvokeCallback(typeof(OnSetParticipantHardMuteCompleteCallbackInternal))] + internal static void OnSetParticipantHardMuteCompleteCallbackInternalImplementation(System.IntPtr data) + { + OnSetParticipantHardMuteCompleteCallback callback; + SetParticipantHardMuteCompleteCallbackInfo callbackInfo; + if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) + { + callback(callbackInfo); + } + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/RTCAdmin/RTCAdminInterface.cs.meta b/EOSSDK/Generated/RTCAdmin/RTCAdminInterface.cs.meta new file mode 100644 index 00000000..6b4fa155 --- /dev/null +++ b/EOSSDK/Generated/RTCAdmin/RTCAdminInterface.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: e66a604d904d80342bea0880c27fe1c9 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/RTCAdmin/SetParticipantHardMuteCompleteCallbackInfo.cs b/EOSSDK/Generated/RTCAdmin/SetParticipantHardMuteCompleteCallbackInfo.cs new file mode 100644 index 00000000..0184a0bf --- /dev/null +++ b/EOSSDK/Generated/RTCAdmin/SetParticipantHardMuteCompleteCallbackInfo.cs @@ -0,0 +1,73 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.RTCAdmin +{ + /// + /// Data containing the result information for a hard mute request. + /// + public class SetParticipantHardMuteCompleteCallbackInfo : ICallbackInfo, ISettable + { + /// + /// The code for the operation. indicates that the operation succeeded; other codes indicate errors. + /// + public Result ResultCode { get; private set; } + + /// + /// Client-specified data passed into the hard mute request + /// + public object ClientData { get; private set; } + + public Result? GetResultCode() + { + return ResultCode; + } + + internal void Set(SetParticipantHardMuteCompleteCallbackInfoInternal? other) + { + if (other != null) + { + ResultCode = other.Value.ResultCode; + ClientData = other.Value.ClientData; + } + } + + public void Set(object other) + { + Set(other as SetParticipantHardMuteCompleteCallbackInfoInternal?); + } + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct SetParticipantHardMuteCompleteCallbackInfoInternal : ICallbackInfoInternal + { + private Result m_ResultCode; + private System.IntPtr m_ClientData; + + public Result ResultCode + { + get + { + return m_ResultCode; + } + } + + public object ClientData + { + get + { + object value; + Helper.TryMarshalGet(m_ClientData, out value); + return value; + } + } + + public System.IntPtr ClientDataAddress + { + get + { + return m_ClientData; + } + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/RTCAdmin/SetParticipantHardMuteCompleteCallbackInfo.cs.meta b/EOSSDK/Generated/RTCAdmin/SetParticipantHardMuteCompleteCallbackInfo.cs.meta new file mode 100644 index 00000000..c97e2193 --- /dev/null +++ b/EOSSDK/Generated/RTCAdmin/SetParticipantHardMuteCompleteCallbackInfo.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 7266fe8b09afc1446b95ff2acd01d8e1 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/RTCAdmin/SetParticipantHardMuteOptions.cs b/EOSSDK/Generated/RTCAdmin/SetParticipantHardMuteOptions.cs new file mode 100644 index 00000000..d4485cd5 --- /dev/null +++ b/EOSSDK/Generated/RTCAdmin/SetParticipantHardMuteOptions.cs @@ -0,0 +1,81 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.RTCAdmin +{ + /// + /// Input parameters for the function. + /// + public class SetParticipantHardMuteOptions + { + /// + /// Room to kick the participant from + /// + public string RoomName { get; set; } + + /// + /// Product User ID of the participant to hard mute for every participant in the room. + /// + public ProductUserId TargetUserId { get; set; } + + /// + /// Hard mute status (Mute on or off) + /// + public bool Mute { get; set; } + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct SetParticipantHardMuteOptionsInternal : ISettable, System.IDisposable + { + private int m_ApiVersion; + private System.IntPtr m_RoomName; + private System.IntPtr m_TargetUserId; + private int m_Mute; + + public string RoomName + { + set + { + Helper.TryMarshalSet(ref m_RoomName, value); + } + } + + public ProductUserId TargetUserId + { + set + { + Helper.TryMarshalSet(ref m_TargetUserId, value); + } + } + + public bool Mute + { + set + { + Helper.TryMarshalSet(ref m_Mute, value); + } + } + + public void Set(SetParticipantHardMuteOptions other) + { + if (other != null) + { + m_ApiVersion = RTCAdminInterface.SetparticipanthardmuteApiLatest; + RoomName = other.RoomName; + TargetUserId = other.TargetUserId; + Mute = other.Mute; + } + } + + public void Set(object other) + { + Set(other as SetParticipantHardMuteOptions); + } + + public void Dispose() + { + Helper.TryMarshalDispose(ref m_RoomName); + Helper.TryMarshalDispose(ref m_TargetUserId); + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/RTCAdmin/SetParticipantHardMuteOptions.cs.meta b/EOSSDK/Generated/RTCAdmin/SetParticipantHardMuteOptions.cs.meta new file mode 100644 index 00000000..a3b52eb2 --- /dev/null +++ b/EOSSDK/Generated/RTCAdmin/SetParticipantHardMuteOptions.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: c5c4b7d3c3497744b8c595c114d0b3b3 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/RTCAdmin/UserToken.cs b/EOSSDK/Generated/RTCAdmin/UserToken.cs new file mode 100644 index 00000000..0b1bc215 --- /dev/null +++ b/EOSSDK/Generated/RTCAdmin/UserToken.cs @@ -0,0 +1,94 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.RTCAdmin +{ + /// + /// Contains information about a collection of user tokens for joining a room. + /// + public class UserToken : ISettable + { + /// + /// The Product User ID for the user who owns this user token. + /// + public ProductUserId ProductUserId { get; set; } + + /// + /// Access token to enable a user to join a room + /// + public string Token { get; set; } + + internal void Set(UserTokenInternal? other) + { + if (other != null) + { + ProductUserId = other.Value.ProductUserId; + Token = other.Value.Token; + } + } + + public void Set(object other) + { + Set(other as UserTokenInternal?); + } + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct UserTokenInternal : ISettable, System.IDisposable + { + private int m_ApiVersion; + private System.IntPtr m_ProductUserId; + private System.IntPtr m_Token; + + public ProductUserId ProductUserId + { + get + { + ProductUserId value; + Helper.TryMarshalGet(m_ProductUserId, out value); + return value; + } + + set + { + Helper.TryMarshalSet(ref m_ProductUserId, value); + } + } + + public string Token + { + get + { + string value; + Helper.TryMarshalGet(m_Token, out value); + return value; + } + + set + { + Helper.TryMarshalSet(ref m_Token, value); + } + } + + public void Set(UserToken other) + { + if (other != null) + { + m_ApiVersion = RTCAdminInterface.UsertokenApiLatest; + ProductUserId = other.ProductUserId; + Token = other.Token; + } + } + + public void Set(object other) + { + Set(other as UserToken); + } + + public void Dispose() + { + Helper.TryMarshalDispose(ref m_ProductUserId); + Helper.TryMarshalDispose(ref m_Token); + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/RTCAdmin/UserToken.cs.meta b/EOSSDK/Generated/RTCAdmin/UserToken.cs.meta new file mode 100644 index 00000000..a46ae9a6 --- /dev/null +++ b/EOSSDK/Generated/RTCAdmin/UserToken.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 16617ec7016bc3847b58f3dc4cd1f684 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/RTCAudio.meta b/EOSSDK/Generated/RTCAudio.meta new file mode 100644 index 00000000..7e2d4c3c --- /dev/null +++ b/EOSSDK/Generated/RTCAudio.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 8f2c4951052286b4bb7490ba231b2abc +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/RTCAudio/AddNotifyAudioBeforeRenderOptions.cs b/EOSSDK/Generated/RTCAudio/AddNotifyAudioBeforeRenderOptions.cs new file mode 100644 index 00000000..f724db74 --- /dev/null +++ b/EOSSDK/Generated/RTCAudio/AddNotifyAudioBeforeRenderOptions.cs @@ -0,0 +1,82 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.RTCAudio +{ + /// + /// This struct is used to call . + /// + public class AddNotifyAudioBeforeRenderOptions + { + /// + /// The Product User ID of the user trying to request this operation. + /// + public ProductUserId LocalUserId { get; set; } + + /// + /// The room this event is registered on. + /// + public string RoomName { get; set; } + + /// + /// Mixed audio or unmixed audio. + /// For unmixed audio notifications it is not supported to modify the samples in the callback. + /// + public bool UnmixedAudio { get; set; } + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct AddNotifyAudioBeforeRenderOptionsInternal : ISettable, System.IDisposable + { + private int m_ApiVersion; + private System.IntPtr m_LocalUserId; + private System.IntPtr m_RoomName; + private int m_UnmixedAudio; + + public ProductUserId LocalUserId + { + set + { + Helper.TryMarshalSet(ref m_LocalUserId, value); + } + } + + public string RoomName + { + set + { + Helper.TryMarshalSet(ref m_RoomName, value); + } + } + + public bool UnmixedAudio + { + set + { + Helper.TryMarshalSet(ref m_UnmixedAudio, value); + } + } + + public void Set(AddNotifyAudioBeforeRenderOptions other) + { + if (other != null) + { + m_ApiVersion = RTCAudioInterface.AddnotifyaudiobeforerenderApiLatest; + LocalUserId = other.LocalUserId; + RoomName = other.RoomName; + UnmixedAudio = other.UnmixedAudio; + } + } + + public void Set(object other) + { + Set(other as AddNotifyAudioBeforeRenderOptions); + } + + public void Dispose() + { + Helper.TryMarshalDispose(ref m_LocalUserId); + Helper.TryMarshalDispose(ref m_RoomName); + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/RTCAudio/AddNotifyAudioBeforeRenderOptions.cs.meta b/EOSSDK/Generated/RTCAudio/AddNotifyAudioBeforeRenderOptions.cs.meta new file mode 100644 index 00000000..50c4f2f7 --- /dev/null +++ b/EOSSDK/Generated/RTCAudio/AddNotifyAudioBeforeRenderOptions.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 82e75caf67a8c784cba1308e05e10585 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/RTCAudio/AddNotifyAudioBeforeSendOptions.cs b/EOSSDK/Generated/RTCAudio/AddNotifyAudioBeforeSendOptions.cs new file mode 100644 index 00000000..136931cc --- /dev/null +++ b/EOSSDK/Generated/RTCAudio/AddNotifyAudioBeforeSendOptions.cs @@ -0,0 +1,66 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.RTCAudio +{ + /// + /// This struct is used to call . + /// + public class AddNotifyAudioBeforeSendOptions + { + /// + /// The Product User ID of the user trying to request this operation. + /// + public ProductUserId LocalUserId { get; set; } + + /// + /// The room this event is registered on. + /// + public string RoomName { get; set; } + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct AddNotifyAudioBeforeSendOptionsInternal : ISettable, System.IDisposable + { + private int m_ApiVersion; + private System.IntPtr m_LocalUserId; + private System.IntPtr m_RoomName; + + public ProductUserId LocalUserId + { + set + { + Helper.TryMarshalSet(ref m_LocalUserId, value); + } + } + + public string RoomName + { + set + { + Helper.TryMarshalSet(ref m_RoomName, value); + } + } + + public void Set(AddNotifyAudioBeforeSendOptions other) + { + if (other != null) + { + m_ApiVersion = RTCAudioInterface.AddnotifyaudiobeforesendApiLatest; + LocalUserId = other.LocalUserId; + RoomName = other.RoomName; + } + } + + public void Set(object other) + { + Set(other as AddNotifyAudioBeforeSendOptions); + } + + public void Dispose() + { + Helper.TryMarshalDispose(ref m_LocalUserId); + Helper.TryMarshalDispose(ref m_RoomName); + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/RTCAudio/AddNotifyAudioBeforeSendOptions.cs.meta b/EOSSDK/Generated/RTCAudio/AddNotifyAudioBeforeSendOptions.cs.meta new file mode 100644 index 00000000..32437e73 --- /dev/null +++ b/EOSSDK/Generated/RTCAudio/AddNotifyAudioBeforeSendOptions.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 6bd601411bdf6814cb5a072bc9849a1c +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/RTCAudio/AddNotifyAudioDevicesChangedOptions.cs b/EOSSDK/Generated/RTCAudio/AddNotifyAudioDevicesChangedOptions.cs new file mode 100644 index 00000000..1a95a1a3 --- /dev/null +++ b/EOSSDK/Generated/RTCAudio/AddNotifyAudioDevicesChangedOptions.cs @@ -0,0 +1,35 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.RTCAudio +{ + /// + /// This struct is used to call . + /// + public class AddNotifyAudioDevicesChangedOptions + { + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct AddNotifyAudioDevicesChangedOptionsInternal : ISettable, System.IDisposable + { + private int m_ApiVersion; + + public void Set(AddNotifyAudioDevicesChangedOptions other) + { + if (other != null) + { + m_ApiVersion = RTCAudioInterface.AddnotifyaudiodeviceschangedApiLatest; + } + } + + public void Set(object other) + { + Set(other as AddNotifyAudioDevicesChangedOptions); + } + + public void Dispose() + { + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/RTCAudio/AddNotifyAudioDevicesChangedOptions.cs.meta b/EOSSDK/Generated/RTCAudio/AddNotifyAudioDevicesChangedOptions.cs.meta new file mode 100644 index 00000000..3ec543eb --- /dev/null +++ b/EOSSDK/Generated/RTCAudio/AddNotifyAudioDevicesChangedOptions.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 367649d5d0d3d034c80bfd7d2fb63d86 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/RTCAudio/AddNotifyAudioInputStateOptions.cs b/EOSSDK/Generated/RTCAudio/AddNotifyAudioInputStateOptions.cs new file mode 100644 index 00000000..dabb9bbb --- /dev/null +++ b/EOSSDK/Generated/RTCAudio/AddNotifyAudioInputStateOptions.cs @@ -0,0 +1,66 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.RTCAudio +{ + /// + /// This struct is used to call . + /// + public class AddNotifyAudioInputStateOptions + { + /// + /// The Product User ID of the user trying to request this operation. + /// + public ProductUserId LocalUserId { get; set; } + + /// + /// The room this event is registered on. + /// + public string RoomName { get; set; } + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct AddNotifyAudioInputStateOptionsInternal : ISettable, System.IDisposable + { + private int m_ApiVersion; + private System.IntPtr m_LocalUserId; + private System.IntPtr m_RoomName; + + public ProductUserId LocalUserId + { + set + { + Helper.TryMarshalSet(ref m_LocalUserId, value); + } + } + + public string RoomName + { + set + { + Helper.TryMarshalSet(ref m_RoomName, value); + } + } + + public void Set(AddNotifyAudioInputStateOptions other) + { + if (other != null) + { + m_ApiVersion = RTCAudioInterface.AddnotifyaudioinputstateApiLatest; + LocalUserId = other.LocalUserId; + RoomName = other.RoomName; + } + } + + public void Set(object other) + { + Set(other as AddNotifyAudioInputStateOptions); + } + + public void Dispose() + { + Helper.TryMarshalDispose(ref m_LocalUserId); + Helper.TryMarshalDispose(ref m_RoomName); + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/RTCAudio/AddNotifyAudioInputStateOptions.cs.meta b/EOSSDK/Generated/RTCAudio/AddNotifyAudioInputStateOptions.cs.meta new file mode 100644 index 00000000..7c1f43d1 --- /dev/null +++ b/EOSSDK/Generated/RTCAudio/AddNotifyAudioInputStateOptions.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 71566f6460f48414f92d981f5dbd12ab +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/RTCAudio/AddNotifyAudioOutputStateOptions.cs b/EOSSDK/Generated/RTCAudio/AddNotifyAudioOutputStateOptions.cs new file mode 100644 index 00000000..04639140 --- /dev/null +++ b/EOSSDK/Generated/RTCAudio/AddNotifyAudioOutputStateOptions.cs @@ -0,0 +1,66 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.RTCAudio +{ + /// + /// This struct is used to call . + /// + public class AddNotifyAudioOutputStateOptions + { + /// + /// The Product User ID of the user trying to request this operation. + /// + public ProductUserId LocalUserId { get; set; } + + /// + /// The room this event is registered on. + /// + public string RoomName { get; set; } + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct AddNotifyAudioOutputStateOptionsInternal : ISettable, System.IDisposable + { + private int m_ApiVersion; + private System.IntPtr m_LocalUserId; + private System.IntPtr m_RoomName; + + public ProductUserId LocalUserId + { + set + { + Helper.TryMarshalSet(ref m_LocalUserId, value); + } + } + + public string RoomName + { + set + { + Helper.TryMarshalSet(ref m_RoomName, value); + } + } + + public void Set(AddNotifyAudioOutputStateOptions other) + { + if (other != null) + { + m_ApiVersion = RTCAudioInterface.AddnotifyaudiooutputstateApiLatest; + LocalUserId = other.LocalUserId; + RoomName = other.RoomName; + } + } + + public void Set(object other) + { + Set(other as AddNotifyAudioOutputStateOptions); + } + + public void Dispose() + { + Helper.TryMarshalDispose(ref m_LocalUserId); + Helper.TryMarshalDispose(ref m_RoomName); + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/RTCAudio/AddNotifyAudioOutputStateOptions.cs.meta b/EOSSDK/Generated/RTCAudio/AddNotifyAudioOutputStateOptions.cs.meta new file mode 100644 index 00000000..0bc4482c --- /dev/null +++ b/EOSSDK/Generated/RTCAudio/AddNotifyAudioOutputStateOptions.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 90b840a431631b541ac249c6440d428c +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/RTCAudio/AddNotifyParticipantUpdatedOptions.cs b/EOSSDK/Generated/RTCAudio/AddNotifyParticipantUpdatedOptions.cs new file mode 100644 index 00000000..23e9169c --- /dev/null +++ b/EOSSDK/Generated/RTCAudio/AddNotifyParticipantUpdatedOptions.cs @@ -0,0 +1,66 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.RTCAudio +{ + /// + /// This struct is used to call . + /// + public class AddNotifyParticipantUpdatedOptions + { + /// + /// The Product User ID of the user trying to request this operation. + /// + public ProductUserId LocalUserId { get; set; } + + /// + /// The room this event is registered on. + /// + public string RoomName { get; set; } + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct AddNotifyParticipantUpdatedOptionsInternal : ISettable, System.IDisposable + { + private int m_ApiVersion; + private System.IntPtr m_LocalUserId; + private System.IntPtr m_RoomName; + + public ProductUserId LocalUserId + { + set + { + Helper.TryMarshalSet(ref m_LocalUserId, value); + } + } + + public string RoomName + { + set + { + Helper.TryMarshalSet(ref m_RoomName, value); + } + } + + public void Set(AddNotifyParticipantUpdatedOptions other) + { + if (other != null) + { + m_ApiVersion = RTCAudioInterface.AddnotifyparticipantupdatedApiLatest; + LocalUserId = other.LocalUserId; + RoomName = other.RoomName; + } + } + + public void Set(object other) + { + Set(other as AddNotifyParticipantUpdatedOptions); + } + + public void Dispose() + { + Helper.TryMarshalDispose(ref m_LocalUserId); + Helper.TryMarshalDispose(ref m_RoomName); + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/RTCAudio/AddNotifyParticipantUpdatedOptions.cs.meta b/EOSSDK/Generated/RTCAudio/AddNotifyParticipantUpdatedOptions.cs.meta new file mode 100644 index 00000000..14dbed7c --- /dev/null +++ b/EOSSDK/Generated/RTCAudio/AddNotifyParticipantUpdatedOptions.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: cee9febfca2788440bd4d3e4989abf0e +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/RTCAudio/AudioBeforeRenderCallbackInfo.cs b/EOSSDK/Generated/RTCAudio/AudioBeforeRenderCallbackInfo.cs new file mode 100644 index 00000000..19bbee35 --- /dev/null +++ b/EOSSDK/Generated/RTCAudio/AudioBeforeRenderCallbackInfo.cs @@ -0,0 +1,129 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.RTCAudio +{ + /// + /// This struct is passed in with a call to registered event. + /// + public class AudioBeforeRenderCallbackInfo : ICallbackInfo, ISettable + { + /// + /// Client-specified data passed into . + /// + public object ClientData { get; private set; } + + /// + /// The Product User ID of the user who initiated this request. + /// + public ProductUserId LocalUserId { get; private set; } + + /// + /// The room associated with this event. + /// + public string RoomName { get; private set; } + + /// + /// Audio buffer. + /// If bUnmixedAudio was set to true when setting the notifications (aka: you get buffers per participant), then you should + /// not modify this buffer. + /// + public AudioBuffer Buffer { get; private set; } + + /// + /// The Product User ID of the participant if bUnmixedAudio was set to true when setting the notifications, or empty if + /// bUnmixedAudio was set to false and thus the buffer is the mixed audio of all participants + /// + public ProductUserId ParticipantId { get; private set; } + + public Result? GetResultCode() + { + return null; + } + + internal void Set(AudioBeforeRenderCallbackInfoInternal? other) + { + if (other != null) + { + ClientData = other.Value.ClientData; + LocalUserId = other.Value.LocalUserId; + RoomName = other.Value.RoomName; + Buffer = other.Value.Buffer; + ParticipantId = other.Value.ParticipantId; + } + } + + public void Set(object other) + { + Set(other as AudioBeforeRenderCallbackInfoInternal?); + } + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct AudioBeforeRenderCallbackInfoInternal : ICallbackInfoInternal + { + private System.IntPtr m_ClientData; + private System.IntPtr m_LocalUserId; + private System.IntPtr m_RoomName; + private System.IntPtr m_Buffer; + private System.IntPtr m_ParticipantId; + + public object ClientData + { + get + { + object value; + Helper.TryMarshalGet(m_ClientData, out value); + return value; + } + } + + public System.IntPtr ClientDataAddress + { + get + { + return m_ClientData; + } + } + + public ProductUserId LocalUserId + { + get + { + ProductUserId value; + Helper.TryMarshalGet(m_LocalUserId, out value); + return value; + } + } + + public string RoomName + { + get + { + string value; + Helper.TryMarshalGet(m_RoomName, out value); + return value; + } + } + + public AudioBuffer Buffer + { + get + { + AudioBuffer value; + Helper.TryMarshalGet(m_Buffer, out value); + return value; + } + } + + public ProductUserId ParticipantId + { + get + { + ProductUserId value; + Helper.TryMarshalGet(m_ParticipantId, out value); + return value; + } + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/RTCAudio/AudioBeforeRenderCallbackInfo.cs.meta b/EOSSDK/Generated/RTCAudio/AudioBeforeRenderCallbackInfo.cs.meta new file mode 100644 index 00000000..7c660e26 --- /dev/null +++ b/EOSSDK/Generated/RTCAudio/AudioBeforeRenderCallbackInfo.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 37ec2a30bcf91ef4cbc5849ccf39f8cd +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/RTCAudio/AudioBeforeSendCallbackInfo.cs b/EOSSDK/Generated/RTCAudio/AudioBeforeSendCallbackInfo.cs new file mode 100644 index 00000000..ad9ac329 --- /dev/null +++ b/EOSSDK/Generated/RTCAudio/AudioBeforeSendCallbackInfo.cs @@ -0,0 +1,109 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.RTCAudio +{ + /// + /// This struct is passed in with a call to registered event. + /// + public class AudioBeforeSendCallbackInfo : ICallbackInfo, ISettable + { + /// + /// Client-specified data passed into . + /// + public object ClientData { get; private set; } + + /// + /// The Product User ID of the user who initiated this request. + /// + public ProductUserId LocalUserId { get; private set; } + + /// + /// The room associated with this event. + /// + public string RoomName { get; private set; } + + /// + /// Audio buffer. + /// + public AudioBuffer Buffer { get; private set; } + + public Result? GetResultCode() + { + return null; + } + + internal void Set(AudioBeforeSendCallbackInfoInternal? other) + { + if (other != null) + { + ClientData = other.Value.ClientData; + LocalUserId = other.Value.LocalUserId; + RoomName = other.Value.RoomName; + Buffer = other.Value.Buffer; + } + } + + public void Set(object other) + { + Set(other as AudioBeforeSendCallbackInfoInternal?); + } + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct AudioBeforeSendCallbackInfoInternal : ICallbackInfoInternal + { + private System.IntPtr m_ClientData; + private System.IntPtr m_LocalUserId; + private System.IntPtr m_RoomName; + private System.IntPtr m_Buffer; + + public object ClientData + { + get + { + object value; + Helper.TryMarshalGet(m_ClientData, out value); + return value; + } + } + + public System.IntPtr ClientDataAddress + { + get + { + return m_ClientData; + } + } + + public ProductUserId LocalUserId + { + get + { + ProductUserId value; + Helper.TryMarshalGet(m_LocalUserId, out value); + return value; + } + } + + public string RoomName + { + get + { + string value; + Helper.TryMarshalGet(m_RoomName, out value); + return value; + } + } + + public AudioBuffer Buffer + { + get + { + AudioBuffer value; + Helper.TryMarshalGet(m_Buffer, out value); + return value; + } + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/RTCAudio/AudioBeforeSendCallbackInfo.cs.meta b/EOSSDK/Generated/RTCAudio/AudioBeforeSendCallbackInfo.cs.meta new file mode 100644 index 00000000..5ba455d0 --- /dev/null +++ b/EOSSDK/Generated/RTCAudio/AudioBeforeSendCallbackInfo.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 5746d5df383788e42b935bf941abaaa6 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/RTCAudio/AudioBuffer.cs b/EOSSDK/Generated/RTCAudio/AudioBuffer.cs new file mode 100644 index 00000000..3911183c --- /dev/null +++ b/EOSSDK/Generated/RTCAudio/AudioBuffer.cs @@ -0,0 +1,113 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.RTCAudio +{ + /// + /// This struct is used to represent an audio buffer received in callbacks from and . + /// + public class AudioBuffer : ISettable + { + /// + /// Pointer to the data with the interleaved audio frames in signed 16 bits format. + /// + public short[] Frames { get; set; } + + /// + /// Sample rate for the samples in the Frames buffer. + /// + public uint SampleRate { get; set; } + + /// + /// Number of channels for the samples in the Frames buffer. + /// + public uint Channels { get; set; } + + internal void Set(AudioBufferInternal? other) + { + if (other != null) + { + Frames = other.Value.Frames; + SampleRate = other.Value.SampleRate; + Channels = other.Value.Channels; + } + } + + public void Set(object other) + { + Set(other as AudioBufferInternal?); + } + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct AudioBufferInternal : ISettable, System.IDisposable + { + private int m_ApiVersion; + private System.IntPtr m_Frames; + private uint m_FramesCount; + private uint m_SampleRate; + private uint m_Channels; + + public short[] Frames + { + get + { + short[] value; + Helper.TryMarshalGet(m_Frames, out value, m_FramesCount); + return value; + } + + set + { + Helper.TryMarshalSet(ref m_Frames, value, out m_FramesCount); + } + } + + public uint SampleRate + { + get + { + return m_SampleRate; + } + + set + { + m_SampleRate = value; + } + } + + public uint Channels + { + get + { + return m_Channels; + } + + set + { + m_Channels = value; + } + } + + public void Set(AudioBuffer other) + { + if (other != null) + { + m_ApiVersion = RTCAudioInterface.AudiobufferApiLatest; + Frames = other.Frames; + SampleRate = other.SampleRate; + Channels = other.Channels; + } + } + + public void Set(object other) + { + Set(other as AudioBuffer); + } + + public void Dispose() + { + Helper.TryMarshalDispose(ref m_Frames); + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/RTCAudio/AudioBuffer.cs.meta b/EOSSDK/Generated/RTCAudio/AudioBuffer.cs.meta new file mode 100644 index 00000000..617a96d4 --- /dev/null +++ b/EOSSDK/Generated/RTCAudio/AudioBuffer.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: cf59ae7a63a1d6c43a6150b5e8258877 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/RTCAudio/AudioDevicesChangedCallbackInfo.cs b/EOSSDK/Generated/RTCAudio/AudioDevicesChangedCallbackInfo.cs new file mode 100644 index 00000000..350ba5d3 --- /dev/null +++ b/EOSSDK/Generated/RTCAudio/AudioDevicesChangedCallbackInfo.cs @@ -0,0 +1,58 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.RTCAudio +{ + /// + /// This struct is passed in with a call to registered event. + /// + public class AudioDevicesChangedCallbackInfo : ICallbackInfo, ISettable + { + /// + /// Client-specified data passed into . + /// + public object ClientData { get; private set; } + + public Result? GetResultCode() + { + return null; + } + + internal void Set(AudioDevicesChangedCallbackInfoInternal? other) + { + if (other != null) + { + ClientData = other.Value.ClientData; + } + } + + public void Set(object other) + { + Set(other as AudioDevicesChangedCallbackInfoInternal?); + } + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct AudioDevicesChangedCallbackInfoInternal : ICallbackInfoInternal + { + private System.IntPtr m_ClientData; + + public object ClientData + { + get + { + object value; + Helper.TryMarshalGet(m_ClientData, out value); + return value; + } + } + + public System.IntPtr ClientDataAddress + { + get + { + return m_ClientData; + } + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/RTCAudio/AudioDevicesChangedCallbackInfo.cs.meta b/EOSSDK/Generated/RTCAudio/AudioDevicesChangedCallbackInfo.cs.meta new file mode 100644 index 00000000..d78479a3 --- /dev/null +++ b/EOSSDK/Generated/RTCAudio/AudioDevicesChangedCallbackInfo.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 9953a3168a35c4747960c10acff89ce0 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/RTCAudio/AudioInputDeviceInfo.cs b/EOSSDK/Generated/RTCAudio/AudioInputDeviceInfo.cs new file mode 100644 index 00000000..87c38b44 --- /dev/null +++ b/EOSSDK/Generated/RTCAudio/AudioInputDeviceInfo.cs @@ -0,0 +1,117 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.RTCAudio +{ + /// + /// This struct is used to get information about a specific input device. + /// + public class AudioInputDeviceInfo : ISettable + { + /// + /// True if this is the default audio input device in the system. + /// + public bool DefaultDevice { get; set; } + + /// + /// The persistent unique id of the device. + /// + public string DeviceId { get; set; } + + /// + /// The name of the device + /// + public string DeviceName { get; set; } + + internal void Set(AudioInputDeviceInfoInternal? other) + { + if (other != null) + { + DefaultDevice = other.Value.DefaultDevice; + DeviceId = other.Value.DeviceId; + DeviceName = other.Value.DeviceName; + } + } + + public void Set(object other) + { + Set(other as AudioInputDeviceInfoInternal?); + } + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct AudioInputDeviceInfoInternal : ISettable, System.IDisposable + { + private int m_ApiVersion; + private int m_DefaultDevice; + private System.IntPtr m_DeviceId; + private System.IntPtr m_DeviceName; + + public bool DefaultDevice + { + get + { + bool value; + Helper.TryMarshalGet(m_DefaultDevice, out value); + return value; + } + + set + { + Helper.TryMarshalSet(ref m_DefaultDevice, value); + } + } + + public string DeviceId + { + get + { + string value; + Helper.TryMarshalGet(m_DeviceId, out value); + return value; + } + + set + { + Helper.TryMarshalSet(ref m_DeviceId, value); + } + } + + public string DeviceName + { + get + { + string value; + Helper.TryMarshalGet(m_DeviceName, out value); + return value; + } + + set + { + Helper.TryMarshalSet(ref m_DeviceName, value); + } + } + + public void Set(AudioInputDeviceInfo other) + { + if (other != null) + { + m_ApiVersion = RTCAudioInterface.AudioinputdeviceinfoApiLatest; + DefaultDevice = other.DefaultDevice; + DeviceId = other.DeviceId; + DeviceName = other.DeviceName; + } + } + + public void Set(object other) + { + Set(other as AudioInputDeviceInfo); + } + + public void Dispose() + { + Helper.TryMarshalDispose(ref m_DeviceId); + Helper.TryMarshalDispose(ref m_DeviceName); + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/RTCAudio/AudioInputDeviceInfo.cs.meta b/EOSSDK/Generated/RTCAudio/AudioInputDeviceInfo.cs.meta new file mode 100644 index 00000000..5913e1f0 --- /dev/null +++ b/EOSSDK/Generated/RTCAudio/AudioInputDeviceInfo.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 8081b48c0fb837344848a3fa8e2f53a8 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/RTCAudio/AudioInputStateCallbackInfo.cs b/EOSSDK/Generated/RTCAudio/AudioInputStateCallbackInfo.cs new file mode 100644 index 00000000..570c1f47 --- /dev/null +++ b/EOSSDK/Generated/RTCAudio/AudioInputStateCallbackInfo.cs @@ -0,0 +1,107 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.RTCAudio +{ + /// + /// This struct is passed in with a call to registered event. + /// + public class AudioInputStateCallbackInfo : ICallbackInfo, ISettable + { + /// + /// Client-specified data passed into . + /// + public object ClientData { get; private set; } + + /// + /// The Product User ID of the user who initiated this request. + /// + public ProductUserId LocalUserId { get; private set; } + + /// + /// The room associated with this event. + /// + public string RoomName { get; private set; } + + /// + /// The status of the audio input. + /// + public RTCAudioInputStatus Status { get; private set; } + + public Result? GetResultCode() + { + return null; + } + + internal void Set(AudioInputStateCallbackInfoInternal? other) + { + if (other != null) + { + ClientData = other.Value.ClientData; + LocalUserId = other.Value.LocalUserId; + RoomName = other.Value.RoomName; + Status = other.Value.Status; + } + } + + public void Set(object other) + { + Set(other as AudioInputStateCallbackInfoInternal?); + } + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct AudioInputStateCallbackInfoInternal : ICallbackInfoInternal + { + private System.IntPtr m_ClientData; + private System.IntPtr m_LocalUserId; + private System.IntPtr m_RoomName; + private RTCAudioInputStatus m_Status; + + public object ClientData + { + get + { + object value; + Helper.TryMarshalGet(m_ClientData, out value); + return value; + } + } + + public System.IntPtr ClientDataAddress + { + get + { + return m_ClientData; + } + } + + public ProductUserId LocalUserId + { + get + { + ProductUserId value; + Helper.TryMarshalGet(m_LocalUserId, out value); + return value; + } + } + + public string RoomName + { + get + { + string value; + Helper.TryMarshalGet(m_RoomName, out value); + return value; + } + } + + public RTCAudioInputStatus Status + { + get + { + return m_Status; + } + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/RTCAudio/AudioInputStateCallbackInfo.cs.meta b/EOSSDK/Generated/RTCAudio/AudioInputStateCallbackInfo.cs.meta new file mode 100644 index 00000000..7e168125 --- /dev/null +++ b/EOSSDK/Generated/RTCAudio/AudioInputStateCallbackInfo.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 2cef6f76838d5734f9ff26dbe486c209 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/RTCAudio/AudioOutputDeviceInfo.cs b/EOSSDK/Generated/RTCAudio/AudioOutputDeviceInfo.cs new file mode 100644 index 00000000..0719de1f --- /dev/null +++ b/EOSSDK/Generated/RTCAudio/AudioOutputDeviceInfo.cs @@ -0,0 +1,117 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.RTCAudio +{ + /// + /// This struct is used to get information about a specific input device. + /// + public class AudioOutputDeviceInfo : ISettable + { + /// + /// True if this is the default audio input device in the system. + /// + public bool DefaultDevice { get; set; } + + /// + /// The persistent unique id of the device. + /// + public string DeviceId { get; set; } + + /// + /// The name of the device + /// + public string DeviceName { get; set; } + + internal void Set(AudioOutputDeviceInfoInternal? other) + { + if (other != null) + { + DefaultDevice = other.Value.DefaultDevice; + DeviceId = other.Value.DeviceId; + DeviceName = other.Value.DeviceName; + } + } + + public void Set(object other) + { + Set(other as AudioOutputDeviceInfoInternal?); + } + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct AudioOutputDeviceInfoInternal : ISettable, System.IDisposable + { + private int m_ApiVersion; + private int m_DefaultDevice; + private System.IntPtr m_DeviceId; + private System.IntPtr m_DeviceName; + + public bool DefaultDevice + { + get + { + bool value; + Helper.TryMarshalGet(m_DefaultDevice, out value); + return value; + } + + set + { + Helper.TryMarshalSet(ref m_DefaultDevice, value); + } + } + + public string DeviceId + { + get + { + string value; + Helper.TryMarshalGet(m_DeviceId, out value); + return value; + } + + set + { + Helper.TryMarshalSet(ref m_DeviceId, value); + } + } + + public string DeviceName + { + get + { + string value; + Helper.TryMarshalGet(m_DeviceName, out value); + return value; + } + + set + { + Helper.TryMarshalSet(ref m_DeviceName, value); + } + } + + public void Set(AudioOutputDeviceInfo other) + { + if (other != null) + { + m_ApiVersion = RTCAudioInterface.AudiooutputdeviceinfoApiLatest; + DefaultDevice = other.DefaultDevice; + DeviceId = other.DeviceId; + DeviceName = other.DeviceName; + } + } + + public void Set(object other) + { + Set(other as AudioOutputDeviceInfo); + } + + public void Dispose() + { + Helper.TryMarshalDispose(ref m_DeviceId); + Helper.TryMarshalDispose(ref m_DeviceName); + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/RTCAudio/AudioOutputDeviceInfo.cs.meta b/EOSSDK/Generated/RTCAudio/AudioOutputDeviceInfo.cs.meta new file mode 100644 index 00000000..da28d15e --- /dev/null +++ b/EOSSDK/Generated/RTCAudio/AudioOutputDeviceInfo.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 24ebbd4ae2bb61f468746686a7c9783b +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/RTCAudio/AudioOutputStateCallbackInfo.cs b/EOSSDK/Generated/RTCAudio/AudioOutputStateCallbackInfo.cs new file mode 100644 index 00000000..90e30fab --- /dev/null +++ b/EOSSDK/Generated/RTCAudio/AudioOutputStateCallbackInfo.cs @@ -0,0 +1,107 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.RTCAudio +{ + /// + /// This struct is passed in with a call to registered event. + /// + public class AudioOutputStateCallbackInfo : ICallbackInfo, ISettable + { + /// + /// Client-specified data passed into . + /// + public object ClientData { get; private set; } + + /// + /// The Product User ID of the user who initiated this request. + /// + public ProductUserId LocalUserId { get; private set; } + + /// + /// The room associated with this event. + /// + public string RoomName { get; private set; } + + /// + /// The status of the audio output. + /// + public RTCAudioOutputStatus Status { get; private set; } + + public Result? GetResultCode() + { + return null; + } + + internal void Set(AudioOutputStateCallbackInfoInternal? other) + { + if (other != null) + { + ClientData = other.Value.ClientData; + LocalUserId = other.Value.LocalUserId; + RoomName = other.Value.RoomName; + Status = other.Value.Status; + } + } + + public void Set(object other) + { + Set(other as AudioOutputStateCallbackInfoInternal?); + } + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct AudioOutputStateCallbackInfoInternal : ICallbackInfoInternal + { + private System.IntPtr m_ClientData; + private System.IntPtr m_LocalUserId; + private System.IntPtr m_RoomName; + private RTCAudioOutputStatus m_Status; + + public object ClientData + { + get + { + object value; + Helper.TryMarshalGet(m_ClientData, out value); + return value; + } + } + + public System.IntPtr ClientDataAddress + { + get + { + return m_ClientData; + } + } + + public ProductUserId LocalUserId + { + get + { + ProductUserId value; + Helper.TryMarshalGet(m_LocalUserId, out value); + return value; + } + } + + public string RoomName + { + get + { + string value; + Helper.TryMarshalGet(m_RoomName, out value); + return value; + } + } + + public RTCAudioOutputStatus Status + { + get + { + return m_Status; + } + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/RTCAudio/AudioOutputStateCallbackInfo.cs.meta b/EOSSDK/Generated/RTCAudio/AudioOutputStateCallbackInfo.cs.meta new file mode 100644 index 00000000..2c9b0039 --- /dev/null +++ b/EOSSDK/Generated/RTCAudio/AudioOutputStateCallbackInfo.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: a9950522a21f98d4fbf52961ce5f9355 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/RTCAudio/GetAudioInputDeviceByIndexOptions.cs b/EOSSDK/Generated/RTCAudio/GetAudioInputDeviceByIndexOptions.cs new file mode 100644 index 00000000..a5fb33c1 --- /dev/null +++ b/EOSSDK/Generated/RTCAudio/GetAudioInputDeviceByIndexOptions.cs @@ -0,0 +1,49 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.RTCAudio +{ + /// + /// Input parameters for the function. + /// + public class GetAudioInputDeviceByIndexOptions + { + /// + /// Index of the device info to retrieve. + /// + public uint DeviceInfoIndex { get; set; } + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct GetAudioInputDeviceByIndexOptionsInternal : ISettable, System.IDisposable + { + private int m_ApiVersion; + private uint m_DeviceInfoIndex; + + public uint DeviceInfoIndex + { + set + { + m_DeviceInfoIndex = value; + } + } + + public void Set(GetAudioInputDeviceByIndexOptions other) + { + if (other != null) + { + m_ApiVersion = RTCAudioInterface.GetaudioinputdevicebyindexApiLatest; + DeviceInfoIndex = other.DeviceInfoIndex; + } + } + + public void Set(object other) + { + Set(other as GetAudioInputDeviceByIndexOptions); + } + + public void Dispose() + { + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/RTCAudio/GetAudioInputDeviceByIndexOptions.cs.meta b/EOSSDK/Generated/RTCAudio/GetAudioInputDeviceByIndexOptions.cs.meta new file mode 100644 index 00000000..a678780f --- /dev/null +++ b/EOSSDK/Generated/RTCAudio/GetAudioInputDeviceByIndexOptions.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 669d7d3cf70358d47ad534d1637a01a3 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/RTCAudio/GetAudioInputDevicesCountOptions.cs b/EOSSDK/Generated/RTCAudio/GetAudioInputDevicesCountOptions.cs new file mode 100644 index 00000000..c381c18e --- /dev/null +++ b/EOSSDK/Generated/RTCAudio/GetAudioInputDevicesCountOptions.cs @@ -0,0 +1,35 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.RTCAudio +{ + /// + /// Input parameters for the function. + /// + public class GetAudioInputDevicesCountOptions + { + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct GetAudioInputDevicesCountOptionsInternal : ISettable, System.IDisposable + { + private int m_ApiVersion; + + public void Set(GetAudioInputDevicesCountOptions other) + { + if (other != null) + { + m_ApiVersion = RTCAudioInterface.GetaudioinputdevicescountApiLatest; + } + } + + public void Set(object other) + { + Set(other as GetAudioInputDevicesCountOptions); + } + + public void Dispose() + { + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/RTCAudio/GetAudioInputDevicesCountOptions.cs.meta b/EOSSDK/Generated/RTCAudio/GetAudioInputDevicesCountOptions.cs.meta new file mode 100644 index 00000000..4c28d06e --- /dev/null +++ b/EOSSDK/Generated/RTCAudio/GetAudioInputDevicesCountOptions.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 8faf8aacf2de2e44197c8e3aa04657aa +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/RTCAudio/GetAudioOutputDeviceByIndexOptions.cs b/EOSSDK/Generated/RTCAudio/GetAudioOutputDeviceByIndexOptions.cs new file mode 100644 index 00000000..1f2eac97 --- /dev/null +++ b/EOSSDK/Generated/RTCAudio/GetAudioOutputDeviceByIndexOptions.cs @@ -0,0 +1,49 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.RTCAudio +{ + /// + /// Input parameters for the function. + /// + public class GetAudioOutputDeviceByIndexOptions + { + /// + /// Index of the device info to retrieve. + /// + public uint DeviceInfoIndex { get; set; } + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct GetAudioOutputDeviceByIndexOptionsInternal : ISettable, System.IDisposable + { + private int m_ApiVersion; + private uint m_DeviceInfoIndex; + + public uint DeviceInfoIndex + { + set + { + m_DeviceInfoIndex = value; + } + } + + public void Set(GetAudioOutputDeviceByIndexOptions other) + { + if (other != null) + { + m_ApiVersion = RTCAudioInterface.GetaudiooutputdevicebyindexApiLatest; + DeviceInfoIndex = other.DeviceInfoIndex; + } + } + + public void Set(object other) + { + Set(other as GetAudioOutputDeviceByIndexOptions); + } + + public void Dispose() + { + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/RTCAudio/GetAudioOutputDeviceByIndexOptions.cs.meta b/EOSSDK/Generated/RTCAudio/GetAudioOutputDeviceByIndexOptions.cs.meta new file mode 100644 index 00000000..f0d3e924 --- /dev/null +++ b/EOSSDK/Generated/RTCAudio/GetAudioOutputDeviceByIndexOptions.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: d4c7bcc928bb3b748bf018d46928aeb1 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/RTCAudio/GetAudioOutputDevicesCountOptions.cs b/EOSSDK/Generated/RTCAudio/GetAudioOutputDevicesCountOptions.cs new file mode 100644 index 00000000..96577fc6 --- /dev/null +++ b/EOSSDK/Generated/RTCAudio/GetAudioOutputDevicesCountOptions.cs @@ -0,0 +1,35 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.RTCAudio +{ + /// + /// Output parameters for the function. + /// + public class GetAudioOutputDevicesCountOptions + { + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct GetAudioOutputDevicesCountOptionsInternal : ISettable, System.IDisposable + { + private int m_ApiVersion; + + public void Set(GetAudioOutputDevicesCountOptions other) + { + if (other != null) + { + m_ApiVersion = RTCAudioInterface.GetaudiooutputdevicescountApiLatest; + } + } + + public void Set(object other) + { + Set(other as GetAudioOutputDevicesCountOptions); + } + + public void Dispose() + { + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/RTCAudio/GetAudioOutputDevicesCountOptions.cs.meta b/EOSSDK/Generated/RTCAudio/GetAudioOutputDevicesCountOptions.cs.meta new file mode 100644 index 00000000..7c45c678 --- /dev/null +++ b/EOSSDK/Generated/RTCAudio/GetAudioOutputDevicesCountOptions.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 3f43c9181f84f3a44a0288219bc48637 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/RTCAudio/OnAudioBeforeRenderCallback.cs b/EOSSDK/Generated/RTCAudio/OnAudioBeforeRenderCallback.cs new file mode 100644 index 00000000..1a504602 --- /dev/null +++ b/EOSSDK/Generated/RTCAudio/OnAudioBeforeRenderCallback.cs @@ -0,0 +1,10 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.RTCAudio +{ + public delegate void OnAudioBeforeRenderCallback(AudioBeforeRenderCallbackInfo data); + + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void OnAudioBeforeRenderCallbackInternal(System.IntPtr data); +} \ No newline at end of file diff --git a/EOSSDK/Generated/RTCAudio/OnAudioBeforeRenderCallback.cs.meta b/EOSSDK/Generated/RTCAudio/OnAudioBeforeRenderCallback.cs.meta new file mode 100644 index 00000000..8d235acd --- /dev/null +++ b/EOSSDK/Generated/RTCAudio/OnAudioBeforeRenderCallback.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: d522e0cf157deae42bd7f83e6462542c +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/RTCAudio/OnAudioBeforeSendCallback.cs b/EOSSDK/Generated/RTCAudio/OnAudioBeforeSendCallback.cs new file mode 100644 index 00000000..646bd621 --- /dev/null +++ b/EOSSDK/Generated/RTCAudio/OnAudioBeforeSendCallback.cs @@ -0,0 +1,10 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.RTCAudio +{ + public delegate void OnAudioBeforeSendCallback(AudioBeforeSendCallbackInfo data); + + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void OnAudioBeforeSendCallbackInternal(System.IntPtr data); +} \ No newline at end of file diff --git a/EOSSDK/Generated/RTCAudio/OnAudioBeforeSendCallback.cs.meta b/EOSSDK/Generated/RTCAudio/OnAudioBeforeSendCallback.cs.meta new file mode 100644 index 00000000..50c66e73 --- /dev/null +++ b/EOSSDK/Generated/RTCAudio/OnAudioBeforeSendCallback.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: a15e48dc51b823e4da64020f1d98b2fb +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/RTCAudio/OnAudioDevicesChangedCallback.cs b/EOSSDK/Generated/RTCAudio/OnAudioDevicesChangedCallback.cs new file mode 100644 index 00000000..8957261a --- /dev/null +++ b/EOSSDK/Generated/RTCAudio/OnAudioDevicesChangedCallback.cs @@ -0,0 +1,10 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.RTCAudio +{ + public delegate void OnAudioDevicesChangedCallback(AudioDevicesChangedCallbackInfo data); + + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void OnAudioDevicesChangedCallbackInternal(System.IntPtr data); +} \ No newline at end of file diff --git a/EOSSDK/Generated/RTCAudio/OnAudioDevicesChangedCallback.cs.meta b/EOSSDK/Generated/RTCAudio/OnAudioDevicesChangedCallback.cs.meta new file mode 100644 index 00000000..c51e3bc0 --- /dev/null +++ b/EOSSDK/Generated/RTCAudio/OnAudioDevicesChangedCallback.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: d702dec68c86ff942a20cebe01f7e26a +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/RTCAudio/OnAudioInputStateCallback.cs b/EOSSDK/Generated/RTCAudio/OnAudioInputStateCallback.cs new file mode 100644 index 00000000..0185c196 --- /dev/null +++ b/EOSSDK/Generated/RTCAudio/OnAudioInputStateCallback.cs @@ -0,0 +1,10 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.RTCAudio +{ + public delegate void OnAudioInputStateCallback(AudioInputStateCallbackInfo data); + + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void OnAudioInputStateCallbackInternal(System.IntPtr data); +} \ No newline at end of file diff --git a/EOSSDK/Generated/RTCAudio/OnAudioInputStateCallback.cs.meta b/EOSSDK/Generated/RTCAudio/OnAudioInputStateCallback.cs.meta new file mode 100644 index 00000000..65eae6f8 --- /dev/null +++ b/EOSSDK/Generated/RTCAudio/OnAudioInputStateCallback.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 241507b626fe38c4dbc99f44201327ec +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/RTCAudio/OnAudioOutputStateCallback.cs b/EOSSDK/Generated/RTCAudio/OnAudioOutputStateCallback.cs new file mode 100644 index 00000000..fa087d53 --- /dev/null +++ b/EOSSDK/Generated/RTCAudio/OnAudioOutputStateCallback.cs @@ -0,0 +1,10 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.RTCAudio +{ + public delegate void OnAudioOutputStateCallback(AudioOutputStateCallbackInfo data); + + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void OnAudioOutputStateCallbackInternal(System.IntPtr data); +} \ No newline at end of file diff --git a/EOSSDK/Generated/RTCAudio/OnAudioOutputStateCallback.cs.meta b/EOSSDK/Generated/RTCAudio/OnAudioOutputStateCallback.cs.meta new file mode 100644 index 00000000..38db20d9 --- /dev/null +++ b/EOSSDK/Generated/RTCAudio/OnAudioOutputStateCallback.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 0354a801b8f3a7145b542798a939703a +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/RTCAudio/OnParticipantUpdatedCallback.cs b/EOSSDK/Generated/RTCAudio/OnParticipantUpdatedCallback.cs new file mode 100644 index 00000000..233994c1 --- /dev/null +++ b/EOSSDK/Generated/RTCAudio/OnParticipantUpdatedCallback.cs @@ -0,0 +1,10 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.RTCAudio +{ + public delegate void OnParticipantUpdatedCallback(ParticipantUpdatedCallbackInfo data); + + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void OnParticipantUpdatedCallbackInternal(System.IntPtr data); +} \ No newline at end of file diff --git a/EOSSDK/Generated/RTCAudio/OnParticipantUpdatedCallback.cs.meta b/EOSSDK/Generated/RTCAudio/OnParticipantUpdatedCallback.cs.meta new file mode 100644 index 00000000..e17ea69c --- /dev/null +++ b/EOSSDK/Generated/RTCAudio/OnParticipantUpdatedCallback.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 14b1fade8115fc54a8aabc90b87b68a2 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/RTCAudio/OnUpdateReceivingCallback.cs b/EOSSDK/Generated/RTCAudio/OnUpdateReceivingCallback.cs new file mode 100644 index 00000000..dee658ba --- /dev/null +++ b/EOSSDK/Generated/RTCAudio/OnUpdateReceivingCallback.cs @@ -0,0 +1,13 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.RTCAudio +{ + /// + /// Callback for completion of update receiving request + /// + public delegate void OnUpdateReceivingCallback(UpdateReceivingCallbackInfo data); + + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void OnUpdateReceivingCallbackInternal(System.IntPtr data); +} \ No newline at end of file diff --git a/EOSSDK/Generated/RTCAudio/OnUpdateReceivingCallback.cs.meta b/EOSSDK/Generated/RTCAudio/OnUpdateReceivingCallback.cs.meta new file mode 100644 index 00000000..99d77044 --- /dev/null +++ b/EOSSDK/Generated/RTCAudio/OnUpdateReceivingCallback.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 161a654a89bed2641aac22711c0dafb0 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/RTCAudio/OnUpdateSendingCallback.cs b/EOSSDK/Generated/RTCAudio/OnUpdateSendingCallback.cs new file mode 100644 index 00000000..154aad7f --- /dev/null +++ b/EOSSDK/Generated/RTCAudio/OnUpdateSendingCallback.cs @@ -0,0 +1,13 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.RTCAudio +{ + /// + /// Callback for completion of update sending request. + /// + public delegate void OnUpdateSendingCallback(UpdateSendingCallbackInfo data); + + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void OnUpdateSendingCallbackInternal(System.IntPtr data); +} \ No newline at end of file diff --git a/EOSSDK/Generated/RTCAudio/OnUpdateSendingCallback.cs.meta b/EOSSDK/Generated/RTCAudio/OnUpdateSendingCallback.cs.meta new file mode 100644 index 00000000..651f4ab6 --- /dev/null +++ b/EOSSDK/Generated/RTCAudio/OnUpdateSendingCallback.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 0eed99f5299726c43bc6369b6ce36dd7 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/RTCAudio/ParticipantUpdatedCallbackInfo.cs b/EOSSDK/Generated/RTCAudio/ParticipantUpdatedCallbackInfo.cs new file mode 100644 index 00000000..9d447409 --- /dev/null +++ b/EOSSDK/Generated/RTCAudio/ParticipantUpdatedCallbackInfo.cs @@ -0,0 +1,141 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.RTCAudio +{ + /// + /// This struct is passed in with a call to registered event. + /// + public class ParticipantUpdatedCallbackInfo : ICallbackInfo, ISettable + { + /// + /// Client-specified data passed into . + /// + public object ClientData { get; private set; } + + /// + /// The Product User ID of the user who initiated this request. + /// + public ProductUserId LocalUserId { get; private set; } + + /// + /// The room associated with this event. + /// + public string RoomName { get; private set; } + + /// + /// The participant updated. + /// + public ProductUserId ParticipantId { get; private set; } + + /// + /// The participant speaking / non-speaking status. + /// + public bool Speaking { get; private set; } + + /// + /// The participant audio status (enabled, disabled). + /// + public RTCAudioStatus AudioStatus { get; private set; } + + public Result? GetResultCode() + { + return null; + } + + internal void Set(ParticipantUpdatedCallbackInfoInternal? other) + { + if (other != null) + { + ClientData = other.Value.ClientData; + LocalUserId = other.Value.LocalUserId; + RoomName = other.Value.RoomName; + ParticipantId = other.Value.ParticipantId; + Speaking = other.Value.Speaking; + AudioStatus = other.Value.AudioStatus; + } + } + + public void Set(object other) + { + Set(other as ParticipantUpdatedCallbackInfoInternal?); + } + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct ParticipantUpdatedCallbackInfoInternal : ICallbackInfoInternal + { + private System.IntPtr m_ClientData; + private System.IntPtr m_LocalUserId; + private System.IntPtr m_RoomName; + private System.IntPtr m_ParticipantId; + private int m_Speaking; + private RTCAudioStatus m_AudioStatus; + + public object ClientData + { + get + { + object value; + Helper.TryMarshalGet(m_ClientData, out value); + return value; + } + } + + public System.IntPtr ClientDataAddress + { + get + { + return m_ClientData; + } + } + + public ProductUserId LocalUserId + { + get + { + ProductUserId value; + Helper.TryMarshalGet(m_LocalUserId, out value); + return value; + } + } + + public string RoomName + { + get + { + string value; + Helper.TryMarshalGet(m_RoomName, out value); + return value; + } + } + + public ProductUserId ParticipantId + { + get + { + ProductUserId value; + Helper.TryMarshalGet(m_ParticipantId, out value); + return value; + } + } + + public bool Speaking + { + get + { + bool value; + Helper.TryMarshalGet(m_Speaking, out value); + return value; + } + } + + public RTCAudioStatus AudioStatus + { + get + { + return m_AudioStatus; + } + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/RTCAudio/ParticipantUpdatedCallbackInfo.cs.meta b/EOSSDK/Generated/RTCAudio/ParticipantUpdatedCallbackInfo.cs.meta new file mode 100644 index 00000000..db0cda21 --- /dev/null +++ b/EOSSDK/Generated/RTCAudio/ParticipantUpdatedCallbackInfo.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: bec1c92eba851fa4ab1518a9c3e418c9 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/RTCAudio/RTCAudioInputStatus.cs b/EOSSDK/Generated/RTCAudio/RTCAudioInputStatus.cs new file mode 100644 index 00000000..ae72e6e0 --- /dev/null +++ b/EOSSDK/Generated/RTCAudio/RTCAudioInputStatus.cs @@ -0,0 +1,34 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.RTCAudio +{ + /// + /// An enumeration of the different audio input device statuses. + /// + public enum RTCAudioInputStatus : int + { + /// + /// The device is not in used right now (e.g: you are alone in the room). In such cases, the hardware resources are not allocated. + /// + Idle = 0, + /// + /// The device is being used and capturing audio + /// + Recording = 1, + /// + /// The SDK is in a recording state, but actually capturing silence because the device is exclusively being used by the platform at the moment. + /// This only applies to certain platforms. + /// + RecordingSilent = 2, + /// + /// The SDK is in a recording state, but actually capturing silence because the device is disconnected (e.g: the microphone is not plugged in). + /// This only applies to certain platforms. + /// + RecordingDisconnected = 3, + /// + /// Something failed while trying to use the device + /// + Failed = 4 + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/RTCAudio/RTCAudioInputStatus.cs.meta b/EOSSDK/Generated/RTCAudio/RTCAudioInputStatus.cs.meta new file mode 100644 index 00000000..818a223a --- /dev/null +++ b/EOSSDK/Generated/RTCAudio/RTCAudioInputStatus.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: a5fe9f60cfad8fb4abbabc0af6eb9ada +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/RTCAudio/RTCAudioInterface.cs b/EOSSDK/Generated/RTCAudio/RTCAudioInterface.cs new file mode 100644 index 00000000..c27fdf93 --- /dev/null +++ b/EOSSDK/Generated/RTCAudio/RTCAudioInterface.cs @@ -0,0 +1,725 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.RTCAudio +{ + public sealed partial class RTCAudioInterface : Handle + { + public RTCAudioInterface() + { + } + + public RTCAudioInterface(System.IntPtr innerHandle) : base(innerHandle) + { + } + + /// + /// The most recent version of the API. + /// + public const int AddnotifyaudiobeforerenderApiLatest = 1; + + /// + /// The most recent version of the API. + /// + public const int AddnotifyaudiobeforesendApiLatest = 1; + + /// + /// The most recent version of the API. + /// + public const int AddnotifyaudiodeviceschangedApiLatest = 1; + + /// + /// The most recent version of the API. + /// + public const int AddnotifyaudioinputstateApiLatest = 1; + + /// + /// The most recent version of the API. + /// + public const int AddnotifyaudiooutputstateApiLatest = 1; + + /// + /// The most recent version of the API. + /// + public const int AddnotifyparticipantupdatedApiLatest = 1; + + /// + /// The most recent version of the API + /// + public const int AudiobufferApiLatest = 1; + + /// + /// The most recent version of the struct. + /// + public const int AudioinputdeviceinfoApiLatest = 1; + + /// + /// The most recent version of the struct. + /// + public const int AudiooutputdeviceinfoApiLatest = 1; + + /// + /// The most recent version of the API. + /// + public const int GetaudioinputdevicebyindexApiLatest = 1; + + /// + /// The most recent version of the API. + /// + public const int GetaudioinputdevicescountApiLatest = 1; + + /// + /// The most recent version of the API. + /// + public const int GetaudiooutputdevicebyindexApiLatest = 1; + + /// + /// The most recent version of the API. + /// + public const int GetaudiooutputdevicescountApiLatest = 1; + + /// + /// The most recent version of the API. + /// + public const int RegisterplatformaudiouserApiLatest = 1; + + /// + /// The most recent version of the API. + /// + public const int SendaudioApiLatest = 1; + + /// + /// The most recent version of the API. + /// + public const int SetaudioinputsettingsApiLatest = 1; + + /// + /// The most recent version of the API. + /// + public const int SetaudiooutputsettingsApiLatest = 1; + + /// + /// The most recent version of the API. + /// + public const int UnregisterplatformaudiouserApiLatest = 1; + + /// + /// The most recent version of the API. + /// + public const int UpdatereceivingApiLatest = 1; + + /// + /// The most recent version of the API. + /// + public const int UpdatesendingApiLatest = 1; + + /// + /// Register to receive notifications with remote audio buffers before they are rendered. + /// + /// This gives you access to the audio data received, allowing for example the implementation of custom filters/effects. + /// + /// If the returned NotificationId is valid, you must call when you no longer wish to + /// have your CompletionDelegate called. + /// + /// + /// + /// Arbitrary data that is passed back in the CompletionDelegate + /// The callback to be fired when a presence change occurs + /// + /// Notification ID representing the registered callback if successful, an invalid NotificationId if not + /// + public ulong AddNotifyAudioBeforeRender(AddNotifyAudioBeforeRenderOptions options, object clientData, OnAudioBeforeRenderCallback completionDelegate) + { + var optionsAddress = System.IntPtr.Zero; + Helper.TryMarshalSet(ref optionsAddress, options); + + var clientDataAddress = System.IntPtr.Zero; + + var completionDelegateInternal = new OnAudioBeforeRenderCallbackInternal(OnAudioBeforeRenderCallbackInternalImplementation); + Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); + + var funcResult = Bindings.EOS_RTCAudio_AddNotifyAudioBeforeRender(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); + + Helper.TryMarshalDispose(ref optionsAddress); + + Helper.TryAssignNotificationIdToCallback(clientDataAddress, funcResult); + + return funcResult; + } + + /// + /// Register to receive notifications when local audio buffers are about to be encoded and sent. + /// + /// This gives you access to the audio data about to be sent, allowing for example the implementation of custom filters/effects. + /// + /// If the returned NotificationId is valid, you must call when you no longer wish to + /// have your CompletionDelegate called. + /// + /// + /// + /// Arbitrary data that is passed back in the CompletionDelegate + /// The callback to be fired when a presence change occurs + /// + /// Notification ID representing the registered callback if successful, an invalid NotificationId if not + /// + public ulong AddNotifyAudioBeforeSend(AddNotifyAudioBeforeSendOptions options, object clientData, OnAudioBeforeSendCallback completionDelegate) + { + var optionsAddress = System.IntPtr.Zero; + Helper.TryMarshalSet(ref optionsAddress, options); + + var clientDataAddress = System.IntPtr.Zero; + + var completionDelegateInternal = new OnAudioBeforeSendCallbackInternal(OnAudioBeforeSendCallbackInternalImplementation); + Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); + + var funcResult = Bindings.EOS_RTCAudio_AddNotifyAudioBeforeSend(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); + + Helper.TryMarshalDispose(ref optionsAddress); + + Helper.TryAssignNotificationIdToCallback(clientDataAddress, funcResult); + + return funcResult; + } + + /// + /// Register to receive notifications when an audio device is added or removed to the system. + /// + /// If the returned NotificationId is valid, you must call when you no longer wish + /// to have your CompletionDelegate called. + /// + /// + /// + /// Arbitrary data that is passed back in the CompletionDelegate + /// The callback to be fired when an audio device change occurs + /// + /// Notification ID representing the registered callback if successful, an invalid NotificationId if not + /// + public ulong AddNotifyAudioDevicesChanged(AddNotifyAudioDevicesChangedOptions options, object clientData, OnAudioDevicesChangedCallback completionDelegate) + { + var optionsAddress = System.IntPtr.Zero; + Helper.TryMarshalSet(ref optionsAddress, options); + + var clientDataAddress = System.IntPtr.Zero; + + var completionDelegateInternal = new OnAudioDevicesChangedCallbackInternal(OnAudioDevicesChangedCallbackInternalImplementation); + Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); + + var funcResult = Bindings.EOS_RTCAudio_AddNotifyAudioDevicesChanged(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); + + Helper.TryMarshalDispose(ref optionsAddress); + + Helper.TryAssignNotificationIdToCallback(clientDataAddress, funcResult); + + return funcResult; + } + + /// + /// Register to receive notifications when audio input state changed. + /// + /// If the returned NotificationId is valid, you must call when you no longer wish to + /// have your CompletionDelegate called. + /// + /// + /// + /// Arbitrary data that is passed back in the CompletionDelegate + /// The callback to be fired when audio input state changes + /// + /// Notification ID representing the registered callback if successful, an invalid NotificationId if not + /// + public ulong AddNotifyAudioInputState(AddNotifyAudioInputStateOptions options, object clientData, OnAudioInputStateCallback completionDelegate) + { + var optionsAddress = System.IntPtr.Zero; + Helper.TryMarshalSet(ref optionsAddress, options); + + var clientDataAddress = System.IntPtr.Zero; + + var completionDelegateInternal = new OnAudioInputStateCallbackInternal(OnAudioInputStateCallbackInternalImplementation); + Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); + + var funcResult = Bindings.EOS_RTCAudio_AddNotifyAudioInputState(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); + + Helper.TryMarshalDispose(ref optionsAddress); + + Helper.TryAssignNotificationIdToCallback(clientDataAddress, funcResult); + + return funcResult; + } + + /// + /// Register to receive notifications when audio output state changed. + /// + /// If the returned NotificationId is valid, you must call when you no longer wish to + /// have your CompletionDelegate called. + /// + /// + /// + /// Arbitrary data that is passed back in the CompletionDelegate + /// The callback to be fired when audio output state changes + /// + /// Notification ID representing the registered callback if successful, an invalid NotificationId if not + /// + public ulong AddNotifyAudioOutputState(AddNotifyAudioOutputStateOptions options, object clientData, OnAudioOutputStateCallback completionDelegate) + { + var optionsAddress = System.IntPtr.Zero; + Helper.TryMarshalSet(ref optionsAddress, options); + + var clientDataAddress = System.IntPtr.Zero; + + var completionDelegateInternal = new OnAudioOutputStateCallbackInternal(OnAudioOutputStateCallbackInternalImplementation); + Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); + + var funcResult = Bindings.EOS_RTCAudio_AddNotifyAudioOutputState(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); + + Helper.TryMarshalDispose(ref optionsAddress); + + Helper.TryAssignNotificationIdToCallback(clientDataAddress, funcResult); + + return funcResult; + } + + /// + /// Register to receive notifications when a room participant audio status is updated (f.e when speaking flag changes). + /// + /// If the returned NotificationId is valid, you must call when you no longer wish + /// to have your CompletionDelegate called. + /// + /// + /// + /// Arbitrary data that is passed back in the CompletionDelegate + /// The callback to be fired when a presence change occurs + /// + /// Notification ID representing the registered callback if successful, an invalid NotificationId if not + /// + public ulong AddNotifyParticipantUpdated(AddNotifyParticipantUpdatedOptions options, object clientData, OnParticipantUpdatedCallback completionDelegate) + { + var optionsAddress = System.IntPtr.Zero; + Helper.TryMarshalSet(ref optionsAddress, options); + + var clientDataAddress = System.IntPtr.Zero; + + var completionDelegateInternal = new OnParticipantUpdatedCallbackInternal(OnParticipantUpdatedCallbackInternalImplementation); + Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); + + var funcResult = Bindings.EOS_RTCAudio_AddNotifyParticipantUpdated(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); + + Helper.TryMarshalDispose(ref optionsAddress); + + Helper.TryAssignNotificationIdToCallback(clientDataAddress, funcResult); + + return funcResult; + } + + /// + /// Fetches an audio input device's info from then given index. The returned value should not be cached and important + /// information should be copied off of the result object immediately. + /// + /// + /// + /// structure containing the index being accessed + /// + /// A pointer to the device information, or NULL on error. You should NOT keep hold of this pointer. + /// + public AudioInputDeviceInfo GetAudioInputDeviceByIndex(GetAudioInputDeviceByIndexOptions options) + { + var optionsAddress = System.IntPtr.Zero; + Helper.TryMarshalSet(ref optionsAddress, options); + + var funcResult = Bindings.EOS_RTCAudio_GetAudioInputDeviceByIndex(InnerHandle, optionsAddress); + + Helper.TryMarshalDispose(ref optionsAddress); + + AudioInputDeviceInfo funcResultReturn; + Helper.TryMarshalGet(funcResult, out funcResultReturn); + return funcResultReturn; + } + + /// + /// Returns the number of audio input devices available in the system. + /// + /// The returned value should not be cached and should instead be used immediately with the + /// function. + /// + /// + /// + /// structure containing the parameters for the operation + /// + /// The number of audio input devices + /// + public uint GetAudioInputDevicesCount(GetAudioInputDevicesCountOptions options) + { + var optionsAddress = System.IntPtr.Zero; + Helper.TryMarshalSet(ref optionsAddress, options); + + var funcResult = Bindings.EOS_RTCAudio_GetAudioInputDevicesCount(InnerHandle, optionsAddress); + + Helper.TryMarshalDispose(ref optionsAddress); + + return funcResult; + } + + /// + /// Fetches an audio output device's info from then given index. + /// + /// The returned value should not be cached and important information should be copied off of the result object immediately. + /// + /// + /// + /// structure containing the index being accessed + /// + /// A pointer to the device information, or NULL on error. You should NOT keep hold of this pointer. + /// + public AudioOutputDeviceInfo GetAudioOutputDeviceByIndex(GetAudioOutputDeviceByIndexOptions options) + { + var optionsAddress = System.IntPtr.Zero; + Helper.TryMarshalSet(ref optionsAddress, options); + + var funcResult = Bindings.EOS_RTCAudio_GetAudioOutputDeviceByIndex(InnerHandle, optionsAddress); + + Helper.TryMarshalDispose(ref optionsAddress); + + AudioOutputDeviceInfo funcResultReturn; + Helper.TryMarshalGet(funcResult, out funcResultReturn); + return funcResultReturn; + } + + /// + /// Returns the number of audio output devices available in the system. + /// + /// The returned value should not be cached and should instead be used immediately with the + /// function. + /// + /// + /// + /// structure containing the parameters for the operation + /// + /// The number of audio output devices + /// + public uint GetAudioOutputDevicesCount(GetAudioOutputDevicesCountOptions options) + { + var optionsAddress = System.IntPtr.Zero; + Helper.TryMarshalSet(ref optionsAddress, options); + + var funcResult = Bindings.EOS_RTCAudio_GetAudioOutputDevicesCount(InnerHandle, optionsAddress); + + Helper.TryMarshalDispose(ref optionsAddress); + + return funcResult; + } + + /// + /// Use this function to inform the audio system of a user. + /// + /// This function is only necessary for some platforms. + /// + /// structure containing the parameters for the operation. + /// + /// if the user was successfully registered, otherwise. + /// + public Result RegisterPlatformAudioUser(RegisterPlatformAudioUserOptions options) + { + var optionsAddress = System.IntPtr.Zero; + Helper.TryMarshalSet(ref optionsAddress, options); + + var funcResult = Bindings.EOS_RTCAudio_RegisterPlatformAudioUser(InnerHandle, optionsAddress); + + Helper.TryMarshalDispose(ref optionsAddress); + + return funcResult; + } + + /// + /// Unregister a previously bound notification handler from receiving remote audio buffers before they are rendered. + /// + /// The Notification ID representing the registered callback + public void RemoveNotifyAudioBeforeRender(ulong notificationId) + { + Helper.TryRemoveCallbackByNotificationId(notificationId); + + Bindings.EOS_RTCAudio_RemoveNotifyAudioBeforeRender(InnerHandle, notificationId); + } + + /// + /// Unregister a previously bound notification handler from receiving local audio buffers before they are encoded and sent. + /// + /// The Notification ID representing the registered callback + public void RemoveNotifyAudioBeforeSend(ulong notificationId) + { + Helper.TryRemoveCallbackByNotificationId(notificationId); + + Bindings.EOS_RTCAudio_RemoveNotifyAudioBeforeSend(InnerHandle, notificationId); + } + + /// + /// Unregister a previously bound notification handler from receiving audio devices notifications + /// + /// The Notification ID representing the registered callback + public void RemoveNotifyAudioDevicesChanged(ulong notificationId) + { + Helper.TryRemoveCallbackByNotificationId(notificationId); + + Bindings.EOS_RTCAudio_RemoveNotifyAudioDevicesChanged(InnerHandle, notificationId); + } + + /// + /// Unregister a previously bound notification handler from receiving notifications on audio input state changed. + /// + /// The Notification ID representing the registered callback + public void RemoveNotifyAudioInputState(ulong notificationId) + { + Helper.TryRemoveCallbackByNotificationId(notificationId); + + Bindings.EOS_RTCAudio_RemoveNotifyAudioInputState(InnerHandle, notificationId); + } + + /// + /// Unregister a previously bound notification handler from receiving notifications on audio output state changed. + /// + /// The Notification ID representing the registered callback + public void RemoveNotifyAudioOutputState(ulong notificationId) + { + Helper.TryRemoveCallbackByNotificationId(notificationId); + + Bindings.EOS_RTCAudio_RemoveNotifyAudioOutputState(InnerHandle, notificationId); + } + + /// + /// Unregister a previously bound notification handler from receiving participant updated notifications + /// + /// The Notification ID representing the registered callback + public void RemoveNotifyParticipantUpdated(ulong notificationId) + { + Helper.TryRemoveCallbackByNotificationId(notificationId); + + Bindings.EOS_RTCAudio_RemoveNotifyParticipantUpdated(InnerHandle, notificationId); + } + + /// + /// Use this function to push a new audio buffer to be sent to the participants of a room. + /// + /// This should only be used if Manual Audio Input was enabled locally for the specified room. + /// + /// + /// + /// structure containing the parameters for the operation. + /// + /// if the buffer was successfully queued for sending + /// if any of the parameters are incorrect + /// if the specified room was not found + /// if manual recording was not enabled when joining the room. + /// + public Result SendAudio(SendAudioOptions options) + { + var optionsAddress = System.IntPtr.Zero; + Helper.TryMarshalSet(ref optionsAddress, options); + + var funcResult = Bindings.EOS_RTCAudio_SendAudio(InnerHandle, optionsAddress); + + Helper.TryMarshalDispose(ref optionsAddress); + + return funcResult; + } + + /// + /// Use this function to set audio input settings, such as the active input device, volume, or platform AEC. + /// + /// structure containing the parameters for the operation. + /// + /// if the setting was successful + /// if any of the parameters are incorrect + /// + public Result SetAudioInputSettings(SetAudioInputSettingsOptions options) + { + var optionsAddress = System.IntPtr.Zero; + Helper.TryMarshalSet(ref optionsAddress, options); + + var funcResult = Bindings.EOS_RTCAudio_SetAudioInputSettings(InnerHandle, optionsAddress); + + Helper.TryMarshalDispose(ref optionsAddress); + + return funcResult; + } + + /// + /// Use this function to set audio output settings, such as the active output device or volume. + /// + /// structure containing the parameters for the operation. + /// + /// if the setting was successful + /// if any of the parameters are incorrect + /// + public Result SetAudioOutputSettings(SetAudioOutputSettingsOptions options) + { + var optionsAddress = System.IntPtr.Zero; + Helper.TryMarshalSet(ref optionsAddress, options); + + var funcResult = Bindings.EOS_RTCAudio_SetAudioOutputSettings(InnerHandle, optionsAddress); + + Helper.TryMarshalDispose(ref optionsAddress); + + return funcResult; + } + + /// + /// Use this function to remove a user that was added with . + /// + /// structure containing the parameters for the operation. + /// + /// if the user was successfully unregistered, otherwise. + /// + public Result UnregisterPlatformAudioUser(UnregisterPlatformAudioUserOptions options) + { + var optionsAddress = System.IntPtr.Zero; + Helper.TryMarshalSet(ref optionsAddress, options); + + var funcResult = Bindings.EOS_RTCAudio_UnregisterPlatformAudioUser(InnerHandle, optionsAddress); + + Helper.TryMarshalDispose(ref optionsAddress); + + return funcResult; + } + + /// + /// Use this function to tweak incoming audio options per room. + /// + /// @note Due to internal implementation details, this function requires that you first register to any notification for room + /// + /// structure containing the parameters for the operation. + /// Arbitrary data that is passed back in the CompletionDelegate + /// The callback to be fired when the operation completes, either successfully or in error + /// + /// if the operation succeeded + /// if any of the parameters are incorrect + /// if either the local user or specified participant are not in the room + /// + public void UpdateReceiving(UpdateReceivingOptions options, object clientData, OnUpdateReceivingCallback completionDelegate) + { + var optionsAddress = System.IntPtr.Zero; + Helper.TryMarshalSet(ref optionsAddress, options); + + var clientDataAddress = System.IntPtr.Zero; + + var completionDelegateInternal = new OnUpdateReceivingCallbackInternal(OnUpdateReceivingCallbackInternalImplementation); + Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); + + Bindings.EOS_RTCAudio_UpdateReceiving(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); + + Helper.TryMarshalDispose(ref optionsAddress); + } + + /// + /// Use this function to tweak outgoing audio options per room. + /// + /// @note Due to internal implementation details, this function requires that you first register to any notification for room + /// + /// structure containing the parameters for the operation. + /// Arbitrary data that is passed back in the CompletionDelegate + /// The callback to be fired when the operation completes, either successfully or in error + /// + /// if the operation succeeded + /// if any of the parameters are incorrect + /// if the local user is not in the room + /// + public void UpdateSending(UpdateSendingOptions options, object clientData, OnUpdateSendingCallback completionDelegate) + { + var optionsAddress = System.IntPtr.Zero; + Helper.TryMarshalSet(ref optionsAddress, options); + + var clientDataAddress = System.IntPtr.Zero; + + var completionDelegateInternal = new OnUpdateSendingCallbackInternal(OnUpdateSendingCallbackInternalImplementation); + Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); + + Bindings.EOS_RTCAudio_UpdateSending(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); + + Helper.TryMarshalDispose(ref optionsAddress); + } + + [MonoPInvokeCallback(typeof(OnAudioBeforeRenderCallbackInternal))] + internal static void OnAudioBeforeRenderCallbackInternalImplementation(System.IntPtr data) + { + OnAudioBeforeRenderCallback callback; + AudioBeforeRenderCallbackInfo callbackInfo; + if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) + { + callback(callbackInfo); + } + } + + [MonoPInvokeCallback(typeof(OnAudioBeforeSendCallbackInternal))] + internal static void OnAudioBeforeSendCallbackInternalImplementation(System.IntPtr data) + { + OnAudioBeforeSendCallback callback; + AudioBeforeSendCallbackInfo callbackInfo; + if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) + { + callback(callbackInfo); + } + } + + [MonoPInvokeCallback(typeof(OnAudioDevicesChangedCallbackInternal))] + internal static void OnAudioDevicesChangedCallbackInternalImplementation(System.IntPtr data) + { + OnAudioDevicesChangedCallback callback; + AudioDevicesChangedCallbackInfo callbackInfo; + if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) + { + callback(callbackInfo); + } + } + + [MonoPInvokeCallback(typeof(OnAudioInputStateCallbackInternal))] + internal static void OnAudioInputStateCallbackInternalImplementation(System.IntPtr data) + { + OnAudioInputStateCallback callback; + AudioInputStateCallbackInfo callbackInfo; + if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) + { + callback(callbackInfo); + } + } + + [MonoPInvokeCallback(typeof(OnAudioOutputStateCallbackInternal))] + internal static void OnAudioOutputStateCallbackInternalImplementation(System.IntPtr data) + { + OnAudioOutputStateCallback callback; + AudioOutputStateCallbackInfo callbackInfo; + if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) + { + callback(callbackInfo); + } + } + + [MonoPInvokeCallback(typeof(OnParticipantUpdatedCallbackInternal))] + internal static void OnParticipantUpdatedCallbackInternalImplementation(System.IntPtr data) + { + OnParticipantUpdatedCallback callback; + ParticipantUpdatedCallbackInfo callbackInfo; + if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) + { + callback(callbackInfo); + } + } + + [MonoPInvokeCallback(typeof(OnUpdateReceivingCallbackInternal))] + internal static void OnUpdateReceivingCallbackInternalImplementation(System.IntPtr data) + { + OnUpdateReceivingCallback callback; + UpdateReceivingCallbackInfo callbackInfo; + if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) + { + callback(callbackInfo); + } + } + + [MonoPInvokeCallback(typeof(OnUpdateSendingCallbackInternal))] + internal static void OnUpdateSendingCallbackInternalImplementation(System.IntPtr data) + { + OnUpdateSendingCallback callback; + UpdateSendingCallbackInfo callbackInfo; + if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) + { + callback(callbackInfo); + } + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/RTCAudio/RTCAudioInterface.cs.meta b/EOSSDK/Generated/RTCAudio/RTCAudioInterface.cs.meta new file mode 100644 index 00000000..b0fd9034 --- /dev/null +++ b/EOSSDK/Generated/RTCAudio/RTCAudioInterface.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 5fc6b38d834369d4fb7f61b30980e08a +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/RTCAudio/RTCAudioOutputStatus.cs b/EOSSDK/Generated/RTCAudio/RTCAudioOutputStatus.cs new file mode 100644 index 00000000..9cf4d822 --- /dev/null +++ b/EOSSDK/Generated/RTCAudio/RTCAudioOutputStatus.cs @@ -0,0 +1,24 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.RTCAudio +{ + /// + /// An enumeration of the different audio output device statuses. + /// + public enum RTCAudioOutputStatus : int + { + /// + /// The device is not in used right now (e.g: you are alone in the room). In such cases, the hardware resources are not allocated. + /// + Idle = 0, + /// + /// Device is in use + /// + Playing = 1, + /// + /// Something failed while trying to use the device + /// + Failed = 2 + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/RTCAudio/RTCAudioOutputStatus.cs.meta b/EOSSDK/Generated/RTCAudio/RTCAudioOutputStatus.cs.meta new file mode 100644 index 00000000..6f2fe383 --- /dev/null +++ b/EOSSDK/Generated/RTCAudio/RTCAudioOutputStatus.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 3f03e4ce29b27ce4ea342413eb8e17a9 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/RTCAudio/RTCAudioStatus.cs b/EOSSDK/Generated/RTCAudio/RTCAudioStatus.cs new file mode 100644 index 00000000..656ab2ea --- /dev/null +++ b/EOSSDK/Generated/RTCAudio/RTCAudioStatus.cs @@ -0,0 +1,32 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.RTCAudio +{ + /// + /// An enumeration of the different audio channel statuses. + /// + public enum RTCAudioStatus : int + { + /// + /// Audio unsupported by the source (no devices) + /// + Unsupported = 0, + /// + /// Audio enabled + /// + Enabled = 1, + /// + /// Audio disabled + /// + Disabled = 2, + /// + /// Audio disabled by the administrator + /// + AdminDisabled = 3, + /// + /// Audio channel is disabled temporarily for both sending and receiving + /// + NotListeningDisabled = 4 + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/RTCAudio/RTCAudioStatus.cs.meta b/EOSSDK/Generated/RTCAudio/RTCAudioStatus.cs.meta new file mode 100644 index 00000000..41fe5cac --- /dev/null +++ b/EOSSDK/Generated/RTCAudio/RTCAudioStatus.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 1e9df935d70c0d742b18f49398d8b68c +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/RTCAudio/RegisterPlatformAudioUserOptions.cs b/EOSSDK/Generated/RTCAudio/RegisterPlatformAudioUserOptions.cs new file mode 100644 index 00000000..544a1839 --- /dev/null +++ b/EOSSDK/Generated/RTCAudio/RegisterPlatformAudioUserOptions.cs @@ -0,0 +1,50 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.RTCAudio +{ + /// + /// This struct is used to inform the audio system of a user. + /// + public class RegisterPlatformAudioUserOptions + { + /// + /// Platform dependent user id. + /// + public string UserId { get; set; } + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct RegisterPlatformAudioUserOptionsInternal : ISettable, System.IDisposable + { + private int m_ApiVersion; + private System.IntPtr m_UserId; + + public string UserId + { + set + { + Helper.TryMarshalSet(ref m_UserId, value); + } + } + + public void Set(RegisterPlatformAudioUserOptions other) + { + if (other != null) + { + m_ApiVersion = RTCAudioInterface.RegisterplatformaudiouserApiLatest; + UserId = other.UserId; + } + } + + public void Set(object other) + { + Set(other as RegisterPlatformAudioUserOptions); + } + + public void Dispose() + { + Helper.TryMarshalDispose(ref m_UserId); + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/RTCAudio/RegisterPlatformAudioUserOptions.cs.meta b/EOSSDK/Generated/RTCAudio/RegisterPlatformAudioUserOptions.cs.meta new file mode 100644 index 00000000..8ebe741d --- /dev/null +++ b/EOSSDK/Generated/RTCAudio/RegisterPlatformAudioUserOptions.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: ce0aa68dbd0a6f54ab46e3140a8884f9 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/RTCAudio/SendAudioOptions.cs b/EOSSDK/Generated/RTCAudio/SendAudioOptions.cs new file mode 100644 index 00000000..62c0b098 --- /dev/null +++ b/EOSSDK/Generated/RTCAudio/SendAudioOptions.cs @@ -0,0 +1,83 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.RTCAudio +{ + /// + /// This struct is used to call . + /// + public class SendAudioOptions + { + /// + /// The Product User ID of the user trying to request this operation. + /// + public ProductUserId LocalUserId { get; set; } + + /// + /// The room this event is registered on. + /// + public string RoomName { get; set; } + + /// + /// Audio buffer, which must have a duration of 10 ms. + /// @note The SDK makes a copy of buffer. There is no need to keep the buffer around after calling + /// + public AudioBuffer Buffer { get; set; } + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct SendAudioOptionsInternal : ISettable, System.IDisposable + { + private int m_ApiVersion; + private System.IntPtr m_LocalUserId; + private System.IntPtr m_RoomName; + private System.IntPtr m_Buffer; + + public ProductUserId LocalUserId + { + set + { + Helper.TryMarshalSet(ref m_LocalUserId, value); + } + } + + public string RoomName + { + set + { + Helper.TryMarshalSet(ref m_RoomName, value); + } + } + + public AudioBuffer Buffer + { + set + { + Helper.TryMarshalSet(ref m_Buffer, value); + } + } + + public void Set(SendAudioOptions other) + { + if (other != null) + { + m_ApiVersion = RTCAudioInterface.SendaudioApiLatest; + LocalUserId = other.LocalUserId; + RoomName = other.RoomName; + Buffer = other.Buffer; + } + } + + public void Set(object other) + { + Set(other as SendAudioOptions); + } + + public void Dispose() + { + Helper.TryMarshalDispose(ref m_LocalUserId); + Helper.TryMarshalDispose(ref m_RoomName); + Helper.TryMarshalDispose(ref m_Buffer); + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/RTCAudio/SendAudioOptions.cs.meta b/EOSSDK/Generated/RTCAudio/SendAudioOptions.cs.meta new file mode 100644 index 00000000..ce1115e8 --- /dev/null +++ b/EOSSDK/Generated/RTCAudio/SendAudioOptions.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: f0ece4578afbfb4469de3b4385f4c32a +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/RTCAudio/SetAudioInputSettingsOptions.cs b/EOSSDK/Generated/RTCAudio/SetAudioInputSettingsOptions.cs new file mode 100644 index 00000000..1cb18dec --- /dev/null +++ b/EOSSDK/Generated/RTCAudio/SetAudioInputSettingsOptions.cs @@ -0,0 +1,97 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.RTCAudio +{ + /// + /// This struct is used to call . + /// + public class SetAudioInputSettingsOptions + { + /// + /// The Product User ID of the user trying to request this operation. + /// + public ProductUserId LocalUserId { get; set; } + + /// + /// The device Id to be used for this user. Pass NULL or empty string to use default input device. + /// + public string DeviceId { get; set; } + + /// + /// The volume to be configured for this device (range 0.0 to 100.0). + /// At the moment, the only value that produce any effect is 0.0 (silence). Any other value is ignored and causes no change to the volume. + /// + public float Volume { get; set; } + + /// + /// Enable or disable Platform AEC (Acoustic Echo Cancellation) if available. + /// + public bool PlatformAEC { get; set; } + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct SetAudioInputSettingsOptionsInternal : ISettable, System.IDisposable + { + private int m_ApiVersion; + private System.IntPtr m_LocalUserId; + private System.IntPtr m_DeviceId; + private float m_Volume; + private int m_PlatformAEC; + + public ProductUserId LocalUserId + { + set + { + Helper.TryMarshalSet(ref m_LocalUserId, value); + } + } + + public string DeviceId + { + set + { + Helper.TryMarshalSet(ref m_DeviceId, value); + } + } + + public float Volume + { + set + { + m_Volume = value; + } + } + + public bool PlatformAEC + { + set + { + Helper.TryMarshalSet(ref m_PlatformAEC, value); + } + } + + public void Set(SetAudioInputSettingsOptions other) + { + if (other != null) + { + m_ApiVersion = RTCAudioInterface.SetaudioinputsettingsApiLatest; + LocalUserId = other.LocalUserId; + DeviceId = other.DeviceId; + Volume = other.Volume; + PlatformAEC = other.PlatformAEC; + } + } + + public void Set(object other) + { + Set(other as SetAudioInputSettingsOptions); + } + + public void Dispose() + { + Helper.TryMarshalDispose(ref m_LocalUserId); + Helper.TryMarshalDispose(ref m_DeviceId); + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/RTCAudio/SetAudioInputSettingsOptions.cs.meta b/EOSSDK/Generated/RTCAudio/SetAudioInputSettingsOptions.cs.meta new file mode 100644 index 00000000..253d9a76 --- /dev/null +++ b/EOSSDK/Generated/RTCAudio/SetAudioInputSettingsOptions.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 0349b608ac4e19346bb4280e64936720 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/RTCAudio/SetAudioOutputSettingsOptions.cs b/EOSSDK/Generated/RTCAudio/SetAudioOutputSettingsOptions.cs new file mode 100644 index 00000000..73ecce9f --- /dev/null +++ b/EOSSDK/Generated/RTCAudio/SetAudioOutputSettingsOptions.cs @@ -0,0 +1,82 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.RTCAudio +{ + /// + /// This struct is used to call . + /// + public class SetAudioOutputSettingsOptions + { + /// + /// The Product User ID of the user who initiated this request. + /// + public ProductUserId LocalUserId { get; set; } + + /// + /// The device Id to be used for this user. Pass NULL or empty string to use default output device. + /// + public string DeviceId { get; set; } + + /// + /// The volume to be configured for this device (range 0.0 to 100.0). Volume 50 means that the audio volume is not modified + /// and stays in its source value. + /// + public float Volume { get; set; } + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct SetAudioOutputSettingsOptionsInternal : ISettable, System.IDisposable + { + private int m_ApiVersion; + private System.IntPtr m_LocalUserId; + private System.IntPtr m_DeviceId; + private float m_Volume; + + public ProductUserId LocalUserId + { + set + { + Helper.TryMarshalSet(ref m_LocalUserId, value); + } + } + + public string DeviceId + { + set + { + Helper.TryMarshalSet(ref m_DeviceId, value); + } + } + + public float Volume + { + set + { + m_Volume = value; + } + } + + public void Set(SetAudioOutputSettingsOptions other) + { + if (other != null) + { + m_ApiVersion = RTCAudioInterface.SetaudiooutputsettingsApiLatest; + LocalUserId = other.LocalUserId; + DeviceId = other.DeviceId; + Volume = other.Volume; + } + } + + public void Set(object other) + { + Set(other as SetAudioOutputSettingsOptions); + } + + public void Dispose() + { + Helper.TryMarshalDispose(ref m_LocalUserId); + Helper.TryMarshalDispose(ref m_DeviceId); + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/RTCAudio/SetAudioOutputSettingsOptions.cs.meta b/EOSSDK/Generated/RTCAudio/SetAudioOutputSettingsOptions.cs.meta new file mode 100644 index 00000000..8e89325b --- /dev/null +++ b/EOSSDK/Generated/RTCAudio/SetAudioOutputSettingsOptions.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: a1da8b72e3a37a842bed13ee9f9e322e +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/RTCAudio/UnregisterPlatformAudioUserOptions.cs b/EOSSDK/Generated/RTCAudio/UnregisterPlatformAudioUserOptions.cs new file mode 100644 index 00000000..d629cd17 --- /dev/null +++ b/EOSSDK/Generated/RTCAudio/UnregisterPlatformAudioUserOptions.cs @@ -0,0 +1,50 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.RTCAudio +{ + /// + /// This struct is used to remove a user from the audio system. + /// + public class UnregisterPlatformAudioUserOptions + { + /// + /// The account of a user associated with this event. + /// + public string UserId { get; set; } + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct UnregisterPlatformAudioUserOptionsInternal : ISettable, System.IDisposable + { + private int m_ApiVersion; + private System.IntPtr m_UserId; + + public string UserId + { + set + { + Helper.TryMarshalSet(ref m_UserId, value); + } + } + + public void Set(UnregisterPlatformAudioUserOptions other) + { + if (other != null) + { + m_ApiVersion = RTCAudioInterface.UnregisterplatformaudiouserApiLatest; + UserId = other.UserId; + } + } + + public void Set(object other) + { + Set(other as UnregisterPlatformAudioUserOptions); + } + + public void Dispose() + { + Helper.TryMarshalDispose(ref m_UserId); + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/RTCAudio/UnregisterPlatformAudioUserOptions.cs.meta b/EOSSDK/Generated/RTCAudio/UnregisterPlatformAudioUserOptions.cs.meta new file mode 100644 index 00000000..dc987d61 --- /dev/null +++ b/EOSSDK/Generated/RTCAudio/UnregisterPlatformAudioUserOptions.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: d110cfb7c0d0b1444bca55b9bdf40aa4 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/RTCAudio/UpdateReceivingCallbackInfo.cs b/EOSSDK/Generated/RTCAudio/UpdateReceivingCallbackInfo.cs new file mode 100644 index 00000000..7dec8ff9 --- /dev/null +++ b/EOSSDK/Generated/RTCAudio/UpdateReceivingCallbackInfo.cs @@ -0,0 +1,143 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.RTCAudio +{ + /// + /// This struct is passed in with a call to . + /// + public class UpdateReceivingCallbackInfo : ICallbackInfo, ISettable + { + /// + /// This returns: + /// if the users were successfully unblocked. + /// otherwise. + /// + public Result ResultCode { get; private set; } + + /// + /// Client-specified data passed into . + /// + public object ClientData { get; private set; } + + /// + /// The Product User ID of the user who initiated this request. + /// + public ProductUserId LocalUserId { get; private set; } + + /// + /// The room this settings should be applied on. + /// + public string RoomName { get; private set; } + + /// + /// The participant to modify or null to update the global configuration + /// + public ProductUserId ParticipantId { get; private set; } + + /// + /// Muted or unmuted audio track + /// + public bool AudioEnabled { get; private set; } + + public Result? GetResultCode() + { + return ResultCode; + } + + internal void Set(UpdateReceivingCallbackInfoInternal? other) + { + if (other != null) + { + ResultCode = other.Value.ResultCode; + ClientData = other.Value.ClientData; + LocalUserId = other.Value.LocalUserId; + RoomName = other.Value.RoomName; + ParticipantId = other.Value.ParticipantId; + AudioEnabled = other.Value.AudioEnabled; + } + } + + public void Set(object other) + { + Set(other as UpdateReceivingCallbackInfoInternal?); + } + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct UpdateReceivingCallbackInfoInternal : ICallbackInfoInternal + { + private Result m_ResultCode; + private System.IntPtr m_ClientData; + private System.IntPtr m_LocalUserId; + private System.IntPtr m_RoomName; + private System.IntPtr m_ParticipantId; + private int m_AudioEnabled; + + public Result ResultCode + { + get + { + return m_ResultCode; + } + } + + public object ClientData + { + get + { + object value; + Helper.TryMarshalGet(m_ClientData, out value); + return value; + } + } + + public System.IntPtr ClientDataAddress + { + get + { + return m_ClientData; + } + } + + public ProductUserId LocalUserId + { + get + { + ProductUserId value; + Helper.TryMarshalGet(m_LocalUserId, out value); + return value; + } + } + + public string RoomName + { + get + { + string value; + Helper.TryMarshalGet(m_RoomName, out value); + return value; + } + } + + public ProductUserId ParticipantId + { + get + { + ProductUserId value; + Helper.TryMarshalGet(m_ParticipantId, out value); + return value; + } + } + + public bool AudioEnabled + { + get + { + bool value; + Helper.TryMarshalGet(m_AudioEnabled, out value); + return value; + } + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/RTCAudio/UpdateReceivingCallbackInfo.cs.meta b/EOSSDK/Generated/RTCAudio/UpdateReceivingCallbackInfo.cs.meta new file mode 100644 index 00000000..c90f30ad --- /dev/null +++ b/EOSSDK/Generated/RTCAudio/UpdateReceivingCallbackInfo.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 8ce851f17f2e42d41b85a57af8904ae8 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/RTCAudio/UpdateReceivingOptions.cs b/EOSSDK/Generated/RTCAudio/UpdateReceivingOptions.cs new file mode 100644 index 00000000..646c443b --- /dev/null +++ b/EOSSDK/Generated/RTCAudio/UpdateReceivingOptions.cs @@ -0,0 +1,97 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.RTCAudio +{ + /// + /// This struct is passed in with a call to . + /// + public class UpdateReceivingOptions + { + /// + /// The Product User ID of the user trying to request this operation. + /// + public ProductUserId LocalUserId { get; set; } + + /// + /// The room this settings should be applied on. + /// + public string RoomName { get; set; } + + /// + /// The participant to modify or null to update the global configuration + /// + public ProductUserId ParticipantId { get; set; } + + /// + /// Mute or unmute audio track + /// + public bool AudioEnabled { get; set; } + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct UpdateReceivingOptionsInternal : ISettable, System.IDisposable + { + private int m_ApiVersion; + private System.IntPtr m_LocalUserId; + private System.IntPtr m_RoomName; + private System.IntPtr m_ParticipantId; + private int m_AudioEnabled; + + public ProductUserId LocalUserId + { + set + { + Helper.TryMarshalSet(ref m_LocalUserId, value); + } + } + + public string RoomName + { + set + { + Helper.TryMarshalSet(ref m_RoomName, value); + } + } + + public ProductUserId ParticipantId + { + set + { + Helper.TryMarshalSet(ref m_ParticipantId, value); + } + } + + public bool AudioEnabled + { + set + { + Helper.TryMarshalSet(ref m_AudioEnabled, value); + } + } + + public void Set(UpdateReceivingOptions other) + { + if (other != null) + { + m_ApiVersion = RTCAudioInterface.UpdatereceivingApiLatest; + LocalUserId = other.LocalUserId; + RoomName = other.RoomName; + ParticipantId = other.ParticipantId; + AudioEnabled = other.AudioEnabled; + } + } + + public void Set(object other) + { + Set(other as UpdateReceivingOptions); + } + + public void Dispose() + { + Helper.TryMarshalDispose(ref m_LocalUserId); + Helper.TryMarshalDispose(ref m_RoomName); + Helper.TryMarshalDispose(ref m_ParticipantId); + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/RTCAudio/UpdateReceivingOptions.cs.meta b/EOSSDK/Generated/RTCAudio/UpdateReceivingOptions.cs.meta new file mode 100644 index 00000000..0acaafb5 --- /dev/null +++ b/EOSSDK/Generated/RTCAudio/UpdateReceivingOptions.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 042b43c1d102db74384481ae3b3e1bd4 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/RTCAudio/UpdateSendingCallbackInfo.cs b/EOSSDK/Generated/RTCAudio/UpdateSendingCallbackInfo.cs new file mode 100644 index 00000000..67d0b4c2 --- /dev/null +++ b/EOSSDK/Generated/RTCAudio/UpdateSendingCallbackInfo.cs @@ -0,0 +1,124 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.RTCAudio +{ + /// + /// This struct is passed in with a call to . + /// + public class UpdateSendingCallbackInfo : ICallbackInfo, ISettable + { + /// + /// This returns: + /// if the channel was successfully blocked. + /// otherwise. + /// + public Result ResultCode { get; private set; } + + /// + /// Client-specified data passed into . + /// + public object ClientData { get; private set; } + + /// + /// The Product User ID of the user who initiated this request. + /// + public ProductUserId LocalUserId { get; private set; } + + /// + /// The room this settings should be applied on. + /// + public string RoomName { get; private set; } + + /// + /// Muted or unmuted audio track status + /// + public RTCAudioStatus AudioStatus { get; private set; } + + public Result? GetResultCode() + { + return ResultCode; + } + + internal void Set(UpdateSendingCallbackInfoInternal? other) + { + if (other != null) + { + ResultCode = other.Value.ResultCode; + ClientData = other.Value.ClientData; + LocalUserId = other.Value.LocalUserId; + RoomName = other.Value.RoomName; + AudioStatus = other.Value.AudioStatus; + } + } + + public void Set(object other) + { + Set(other as UpdateSendingCallbackInfoInternal?); + } + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct UpdateSendingCallbackInfoInternal : ICallbackInfoInternal + { + private Result m_ResultCode; + private System.IntPtr m_ClientData; + private System.IntPtr m_LocalUserId; + private System.IntPtr m_RoomName; + private RTCAudioStatus m_AudioStatus; + + public Result ResultCode + { + get + { + return m_ResultCode; + } + } + + public object ClientData + { + get + { + object value; + Helper.TryMarshalGet(m_ClientData, out value); + return value; + } + } + + public System.IntPtr ClientDataAddress + { + get + { + return m_ClientData; + } + } + + public ProductUserId LocalUserId + { + get + { + ProductUserId value; + Helper.TryMarshalGet(m_LocalUserId, out value); + return value; + } + } + + public string RoomName + { + get + { + string value; + Helper.TryMarshalGet(m_RoomName, out value); + return value; + } + } + + public RTCAudioStatus AudioStatus + { + get + { + return m_AudioStatus; + } + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/RTCAudio/UpdateSendingCallbackInfo.cs.meta b/EOSSDK/Generated/RTCAudio/UpdateSendingCallbackInfo.cs.meta new file mode 100644 index 00000000..6d2da804 --- /dev/null +++ b/EOSSDK/Generated/RTCAudio/UpdateSendingCallbackInfo.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 33eb252b56b540046931c1178cd098bb +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/RTCAudio/UpdateSendingOptions.cs b/EOSSDK/Generated/RTCAudio/UpdateSendingOptions.cs new file mode 100644 index 00000000..1f6638fe --- /dev/null +++ b/EOSSDK/Generated/RTCAudio/UpdateSendingOptions.cs @@ -0,0 +1,81 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.RTCAudio +{ + /// + /// This struct is passed in with a call to + /// + public class UpdateSendingOptions + { + /// + /// The Product User ID of the user trying to request this operation. + /// + public ProductUserId LocalUserId { get; set; } + + /// + /// The room this settings should be applied on. + /// + public string RoomName { get; set; } + + /// + /// Muted or unmuted audio track status + /// + public RTCAudioStatus AudioStatus { get; set; } + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct UpdateSendingOptionsInternal : ISettable, System.IDisposable + { + private int m_ApiVersion; + private System.IntPtr m_LocalUserId; + private System.IntPtr m_RoomName; + private RTCAudioStatus m_AudioStatus; + + public ProductUserId LocalUserId + { + set + { + Helper.TryMarshalSet(ref m_LocalUserId, value); + } + } + + public string RoomName + { + set + { + Helper.TryMarshalSet(ref m_RoomName, value); + } + } + + public RTCAudioStatus AudioStatus + { + set + { + m_AudioStatus = value; + } + } + + public void Set(UpdateSendingOptions other) + { + if (other != null) + { + m_ApiVersion = RTCAudioInterface.UpdatesendingApiLatest; + LocalUserId = other.LocalUserId; + RoomName = other.RoomName; + AudioStatus = other.AudioStatus; + } + } + + public void Set(object other) + { + Set(other as UpdateSendingOptions); + } + + public void Dispose() + { + Helper.TryMarshalDispose(ref m_LocalUserId); + Helper.TryMarshalDispose(ref m_RoomName); + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/RTCAudio/UpdateSendingOptions.cs.meta b/EOSSDK/Generated/RTCAudio/UpdateSendingOptions.cs.meta new file mode 100644 index 00000000..dcaebd34 --- /dev/null +++ b/EOSSDK/Generated/RTCAudio/UpdateSendingOptions.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 85c249c64a339c8469c4c3fbcfa84b6a +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/Reports.meta b/EOSSDK/Generated/Reports.meta new file mode 100644 index 00000000..ebbe80ba --- /dev/null +++ b/EOSSDK/Generated/Reports.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 7f26f9005823d0b44a7df1341792b5ae +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/Reports/OnSendPlayerBehaviorReportCompleteCallback.cs b/EOSSDK/Generated/Reports/OnSendPlayerBehaviorReportCompleteCallback.cs new file mode 100644 index 00000000..5791de9e --- /dev/null +++ b/EOSSDK/Generated/Reports/OnSendPlayerBehaviorReportCompleteCallback.cs @@ -0,0 +1,14 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.Reports +{ + /// + /// Function prototype definition for callbacks passed to . + /// + /// A containing the output information and result. + public delegate void OnSendPlayerBehaviorReportCompleteCallback(SendPlayerBehaviorReportCompleteCallbackInfo data); + + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void OnSendPlayerBehaviorReportCompleteCallbackInternal(System.IntPtr data); +} \ No newline at end of file diff --git a/EOSSDK/Generated/Reports/OnSendPlayerBehaviorReportCompleteCallback.cs.meta b/EOSSDK/Generated/Reports/OnSendPlayerBehaviorReportCompleteCallback.cs.meta new file mode 100644 index 00000000..47b64e15 --- /dev/null +++ b/EOSSDK/Generated/Reports/OnSendPlayerBehaviorReportCompleteCallback.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 60651801d9710bb41974093c76ab43ad +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/Reports/PlayerReportsCategory.cs b/EOSSDK/Generated/Reports/PlayerReportsCategory.cs new file mode 100644 index 00000000..c11e47b1 --- /dev/null +++ b/EOSSDK/Generated/Reports/PlayerReportsCategory.cs @@ -0,0 +1,44 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.Reports +{ + /// + /// An enumeration of the different player behavior categories that can be reported. + /// + public enum PlayerReportsCategory : int + { + /// + /// Not used + /// + Invalid = 0, + /// + /// The reported player is cheating + /// + Cheating = 1, + /// + /// The reported player is exploiting the game + /// + Exploiting = 2, + /// + /// The reported player has an offensive profile, name, etc + /// + OffensiveProfile = 3, + /// + /// The reported player is being abusive in chat + /// + VerbalAbuse = 4, + /// + /// The reported player is scamming other players + /// + Scamming = 5, + /// + /// The reported player is spamming chat + /// + Spamming = 6, + /// + /// The player is being reported for something else + /// + Other = 7 + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/Reports/PlayerReportsCategory.cs.meta b/EOSSDK/Generated/Reports/PlayerReportsCategory.cs.meta new file mode 100644 index 00000000..16c8bb6e --- /dev/null +++ b/EOSSDK/Generated/Reports/PlayerReportsCategory.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 9f00ddacacd5b7e40915dcf34556a439 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/Reports/ReportsInterface.cs b/EOSSDK/Generated/Reports/ReportsInterface.cs new file mode 100644 index 00000000..6d5b94b0 --- /dev/null +++ b/EOSSDK/Generated/Reports/ReportsInterface.cs @@ -0,0 +1,63 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.Reports +{ + public sealed partial class ReportsInterface : Handle + { + public ReportsInterface() + { + } + + public ReportsInterface(System.IntPtr innerHandle) : base(innerHandle) + { + } + + /// + /// Max length of a report context JSON payload, not including the null terminator. + /// + public const int ReportcontextMaxLength = 4096; + + /// + /// Max length of a report message text, not including the null terminator. + /// + public const int ReportmessageMaxLength = 512; + + /// + /// The most recent version of the API. + /// + public const int SendplayerbehaviorreportApiLatest = 2; + + /// + /// Sends the provided report directly to the Epic Online Services back-end. + /// + /// Structure containing the player report information. + /// Optional client data provided by the user of the SDK. + /// This function is called when the send operation completes. + public void SendPlayerBehaviorReport(SendPlayerBehaviorReportOptions options, object clientData, OnSendPlayerBehaviorReportCompleteCallback completionDelegate) + { + var optionsAddress = System.IntPtr.Zero; + Helper.TryMarshalSet(ref optionsAddress, options); + + var clientDataAddress = System.IntPtr.Zero; + + var completionDelegateInternal = new OnSendPlayerBehaviorReportCompleteCallbackInternal(OnSendPlayerBehaviorReportCompleteCallbackInternalImplementation); + Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); + + Bindings.EOS_Reports_SendPlayerBehaviorReport(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); + + Helper.TryMarshalDispose(ref optionsAddress); + } + + [MonoPInvokeCallback(typeof(OnSendPlayerBehaviorReportCompleteCallbackInternal))] + internal static void OnSendPlayerBehaviorReportCompleteCallbackInternalImplementation(System.IntPtr data) + { + OnSendPlayerBehaviorReportCompleteCallback callback; + SendPlayerBehaviorReportCompleteCallbackInfo callbackInfo; + if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) + { + callback(callbackInfo); + } + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/Reports/ReportsInterface.cs.meta b/EOSSDK/Generated/Reports/ReportsInterface.cs.meta new file mode 100644 index 00000000..b02ef243 --- /dev/null +++ b/EOSSDK/Generated/Reports/ReportsInterface.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: b5ce7f3683cccb0488c5ee4a8ff9d77a +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/Reports/SendPlayerBehaviorReportCompleteCallbackInfo.cs b/EOSSDK/Generated/Reports/SendPlayerBehaviorReportCompleteCallbackInfo.cs new file mode 100644 index 00000000..fcde539f --- /dev/null +++ b/EOSSDK/Generated/Reports/SendPlayerBehaviorReportCompleteCallbackInfo.cs @@ -0,0 +1,73 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.Reports +{ + /// + /// Output parameters for the function. + /// + public class SendPlayerBehaviorReportCompleteCallbackInfo : ICallbackInfo, ISettable + { + /// + /// The code for the operation. indicates that the operation succeeded; other codes indicate errors. + /// + public Result ResultCode { get; private set; } + + /// + /// Context that was passed into . + /// + public object ClientData { get; private set; } + + public Result? GetResultCode() + { + return ResultCode; + } + + internal void Set(SendPlayerBehaviorReportCompleteCallbackInfoInternal? other) + { + if (other != null) + { + ResultCode = other.Value.ResultCode; + ClientData = other.Value.ClientData; + } + } + + public void Set(object other) + { + Set(other as SendPlayerBehaviorReportCompleteCallbackInfoInternal?); + } + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct SendPlayerBehaviorReportCompleteCallbackInfoInternal : ICallbackInfoInternal + { + private Result m_ResultCode; + private System.IntPtr m_ClientData; + + public Result ResultCode + { + get + { + return m_ResultCode; + } + } + + public object ClientData + { + get + { + object value; + Helper.TryMarshalGet(m_ClientData, out value); + return value; + } + } + + public System.IntPtr ClientDataAddress + { + get + { + return m_ClientData; + } + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/Reports/SendPlayerBehaviorReportCompleteCallbackInfo.cs.meta b/EOSSDK/Generated/Reports/SendPlayerBehaviorReportCompleteCallbackInfo.cs.meta new file mode 100644 index 00000000..46ca68b7 --- /dev/null +++ b/EOSSDK/Generated/Reports/SendPlayerBehaviorReportCompleteCallbackInfo.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 4923af1ecc797044682083b34786b660 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/Reports/SendPlayerBehaviorReportOptions.cs b/EOSSDK/Generated/Reports/SendPlayerBehaviorReportOptions.cs new file mode 100644 index 00000000..36b06321 --- /dev/null +++ b/EOSSDK/Generated/Reports/SendPlayerBehaviorReportOptions.cs @@ -0,0 +1,120 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.Reports +{ + /// + /// Input parameters for the function. + /// + public class SendPlayerBehaviorReportOptions + { + /// + /// Product User ID of the reporting player + /// + public ProductUserId ReporterUserId { get; set; } + + /// + /// Product User ID of the reported player. + /// + public ProductUserId ReportedUserId { get; set; } + + /// + /// Category for the player report. + /// + public PlayerReportsCategory Category { get; set; } + + /// + /// Optional plain text string associated with the report as UTF-8 encoded null-terminated string. + /// + /// The length of the message can be at maximum up to bytes + /// and any excess characters will be truncated upon sending the report. + /// + public string Message { get; set; } + + /// + /// Optional JSON string associated with the report as UTF-8 encoded null-terminated string. + /// This is intended as a way to associate arbitrary structured context information with a report. + /// + /// This string needs to be valid JSON, report will fail otherwise. + /// The length of the context can be at maximum up to bytes, not including the null terminator, report will fail otherwise. + /// + public string Context { get; set; } + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct SendPlayerBehaviorReportOptionsInternal : ISettable, System.IDisposable + { + private int m_ApiVersion; + private System.IntPtr m_ReporterUserId; + private System.IntPtr m_ReportedUserId; + private PlayerReportsCategory m_Category; + private System.IntPtr m_Message; + private System.IntPtr m_Context; + + public ProductUserId ReporterUserId + { + set + { + Helper.TryMarshalSet(ref m_ReporterUserId, value); + } + } + + public ProductUserId ReportedUserId + { + set + { + Helper.TryMarshalSet(ref m_ReportedUserId, value); + } + } + + public PlayerReportsCategory Category + { + set + { + m_Category = value; + } + } + + public string Message + { + set + { + Helper.TryMarshalSet(ref m_Message, value); + } + } + + public string Context + { + set + { + Helper.TryMarshalSet(ref m_Context, value); + } + } + + public void Set(SendPlayerBehaviorReportOptions other) + { + if (other != null) + { + m_ApiVersion = ReportsInterface.SendplayerbehaviorreportApiLatest; + ReporterUserId = other.ReporterUserId; + ReportedUserId = other.ReportedUserId; + Category = other.Category; + Message = other.Message; + Context = other.Context; + } + } + + public void Set(object other) + { + Set(other as SendPlayerBehaviorReportOptions); + } + + public void Dispose() + { + Helper.TryMarshalDispose(ref m_ReporterUserId); + Helper.TryMarshalDispose(ref m_ReportedUserId); + Helper.TryMarshalDispose(ref m_Message); + Helper.TryMarshalDispose(ref m_Context); + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/Reports/SendPlayerBehaviorReportOptions.cs.meta b/EOSSDK/Generated/Reports/SendPlayerBehaviorReportOptions.cs.meta new file mode 100644 index 00000000..5f3fc3b2 --- /dev/null +++ b/EOSSDK/Generated/Reports/SendPlayerBehaviorReportOptions.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 8525abbeb4439624d829ba97beaa4b72 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/Result.cs b/EOSSDK/Generated/Result.cs index c95e3fc0..4baaef28 100644 --- a/EOSSDK/Generated/Result.cs +++ b/EOSSDK/Generated/Result.cs @@ -722,6 +722,86 @@ public enum Result : int /// ModsUnsupportedOS = 11016, /// + /// The anti-cheat client protection is not available. Check that the game was started using the correct launcher. + /// + AntiCheatClientProtectionNotAvailable = 12000, + /// + /// The current anti-cheat mode is incorrect for using this API + /// + AntiCheatInvalidMode = 12001, + /// + /// The ProductId provided to the anti-cheat client helper executable does not match what was used to initialize the EOS SDK + /// + AntiCheatClientProductIdMismatch = 12002, + /// + /// The SandboxId provided to the anti-cheat client helper executable does not match what was used to initialize the EOS SDK + /// + AntiCheatClientSandboxIdMismatch = 12003, + /// + /// (ProtectMessage/UnprotectMessage) No session key is available, but it is required to complete this operation + /// + AntiCheatProtectMessageSessionKeyRequired = 12004, + /// + /// (ProtectMessage/UnprotectMessage) Message integrity is invalid + /// + AntiCheatProtectMessageValidationFailed = 12005, + /// + /// (ProtectMessage/UnprotectMessage) Initialization failed + /// + AntiCheatProtectMessageInitializationFailed = 12006, + /// + /// (RegisterPeer) Peer is already registered + /// + AntiCheatPeerAlreadyRegistered = 12007, + /// + /// (UnregisterPeer) Peer does not exist + /// + AntiCheatPeerNotFound = 12008, + /// + /// (ReceiveMessageFromPeer) Invalid call: Peer is not protected + /// + AntiCheatPeerNotProtected = 12009, + /// + /// EOS RTC room cannot accept more participants + /// + TooManyParticipants = 13000, + /// + /// EOS RTC room already exists + /// + RoomAlreadyExists = 13001, + /// + /// The user kicked out from the room + /// + UserKicked = 13002, + /// + /// The user is banned + /// + UserBanned = 13003, + /// + /// EOS RTC room was left successfully + /// + RoomWasLeft = 13004, + /// + /// Connection dropped due to long timeout + /// + ReconnectionTimegateExpired = 13005, + /// + /// The number of available Snapshot IDs have all been exhausted. + /// + ProgressionSnapshotSnapshotIdUnavailable = 14000, + /// + /// The KWS user does not have a parental email associated with the account. The parent account was unlinked or deleted + /// + ParentEmailMissing = 15000, + /// + /// The KWS user is no longer a minor and trying to update the parent email + /// + UserGraduated = 15001, + /// + /// EOS Android VM not stored + /// + AndroidJavaVMNotStored = 17000, + /// /// An unexpected error that we cannot identify has occurred. /// UnexpectedError = 0x7FFFFFFF diff --git a/EOSSDK/Generated/Sanctions.meta b/EOSSDK/Generated/Sanctions.meta new file mode 100644 index 00000000..ff3f9f59 --- /dev/null +++ b/EOSSDK/Generated/Sanctions.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 60959b091d85165428ea7a0a67c53cf6 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/Sanctions/CopyPlayerSanctionByIndexOptions.cs b/EOSSDK/Generated/Sanctions/CopyPlayerSanctionByIndexOptions.cs new file mode 100644 index 00000000..cd726c07 --- /dev/null +++ b/EOSSDK/Generated/Sanctions/CopyPlayerSanctionByIndexOptions.cs @@ -0,0 +1,65 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.Sanctions +{ + /// + /// Input parameters for the function + /// + public class CopyPlayerSanctionByIndexOptions + { + /// + /// Product User ID of the user whose active sanctions are to be copied + /// + public ProductUserId TargetUserId { get; set; } + + /// + /// Index of the sanction to retrieve from the cache + /// + public uint SanctionIndex { get; set; } + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct CopyPlayerSanctionByIndexOptionsInternal : ISettable, System.IDisposable + { + private int m_ApiVersion; + private System.IntPtr m_TargetUserId; + private uint m_SanctionIndex; + + public ProductUserId TargetUserId + { + set + { + Helper.TryMarshalSet(ref m_TargetUserId, value); + } + } + + public uint SanctionIndex + { + set + { + m_SanctionIndex = value; + } + } + + public void Set(CopyPlayerSanctionByIndexOptions other) + { + if (other != null) + { + m_ApiVersion = SanctionsInterface.CopyplayersanctionbyindexApiLatest; + TargetUserId = other.TargetUserId; + SanctionIndex = other.SanctionIndex; + } + } + + public void Set(object other) + { + Set(other as CopyPlayerSanctionByIndexOptions); + } + + public void Dispose() + { + Helper.TryMarshalDispose(ref m_TargetUserId); + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/Sanctions/CopyPlayerSanctionByIndexOptions.cs.meta b/EOSSDK/Generated/Sanctions/CopyPlayerSanctionByIndexOptions.cs.meta new file mode 100644 index 00000000..73d23ce4 --- /dev/null +++ b/EOSSDK/Generated/Sanctions/CopyPlayerSanctionByIndexOptions.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 72f68e4c3ffcd724aab25b4dc310bdbf +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/Sanctions/GetPlayerSanctionCountOptions.cs b/EOSSDK/Generated/Sanctions/GetPlayerSanctionCountOptions.cs new file mode 100644 index 00000000..1c0583cc --- /dev/null +++ b/EOSSDK/Generated/Sanctions/GetPlayerSanctionCountOptions.cs @@ -0,0 +1,50 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.Sanctions +{ + /// + /// Input parameters for the function. + /// + public class GetPlayerSanctionCountOptions + { + /// + /// Product User ID of the user whose sanction count should be returned + /// + public ProductUserId TargetUserId { get; set; } + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct GetPlayerSanctionCountOptionsInternal : ISettable, System.IDisposable + { + private int m_ApiVersion; + private System.IntPtr m_TargetUserId; + + public ProductUserId TargetUserId + { + set + { + Helper.TryMarshalSet(ref m_TargetUserId, value); + } + } + + public void Set(GetPlayerSanctionCountOptions other) + { + if (other != null) + { + m_ApiVersion = SanctionsInterface.GetplayersanctioncountApiLatest; + TargetUserId = other.TargetUserId; + } + } + + public void Set(object other) + { + Set(other as GetPlayerSanctionCountOptions); + } + + public void Dispose() + { + Helper.TryMarshalDispose(ref m_TargetUserId); + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/Sanctions/GetPlayerSanctionCountOptions.cs.meta b/EOSSDK/Generated/Sanctions/GetPlayerSanctionCountOptions.cs.meta new file mode 100644 index 00000000..fe766eb1 --- /dev/null +++ b/EOSSDK/Generated/Sanctions/GetPlayerSanctionCountOptions.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 9cdb4a917113b64449b825bb76105994 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/Sanctions/OnQueryActivePlayerSanctionsCallback.cs b/EOSSDK/Generated/Sanctions/OnQueryActivePlayerSanctionsCallback.cs new file mode 100644 index 00000000..debd9904 --- /dev/null +++ b/EOSSDK/Generated/Sanctions/OnQueryActivePlayerSanctionsCallback.cs @@ -0,0 +1,14 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.Sanctions +{ + /// + /// Function prototype definition for callbacks passed to + /// + /// A containing the output information and result + public delegate void OnQueryActivePlayerSanctionsCallback(QueryActivePlayerSanctionsCallbackInfo data); + + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void OnQueryActivePlayerSanctionsCallbackInternal(System.IntPtr data); +} \ No newline at end of file diff --git a/EOSSDK/Generated/Sanctions/OnQueryActivePlayerSanctionsCallback.cs.meta b/EOSSDK/Generated/Sanctions/OnQueryActivePlayerSanctionsCallback.cs.meta new file mode 100644 index 00000000..5625867a --- /dev/null +++ b/EOSSDK/Generated/Sanctions/OnQueryActivePlayerSanctionsCallback.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 974e4b4c4754862419167981ebe6df98 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/Sanctions/PlayerSanction.cs b/EOSSDK/Generated/Sanctions/PlayerSanction.cs new file mode 100644 index 00000000..1145ce72 --- /dev/null +++ b/EOSSDK/Generated/Sanctions/PlayerSanction.cs @@ -0,0 +1,91 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.Sanctions +{ + /// + /// Contains information about a single player sanction. + /// + public class PlayerSanction : ISettable + { + /// + /// The POSIX timestamp when the sanction was placed + /// + public long TimePlaced { get; set; } + + /// + /// The action associated with this sanction + /// + public string Action { get; set; } + + internal void Set(PlayerSanctionInternal? other) + { + if (other != null) + { + TimePlaced = other.Value.TimePlaced; + Action = other.Value.Action; + } + } + + public void Set(object other) + { + Set(other as PlayerSanctionInternal?); + } + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct PlayerSanctionInternal : ISettable, System.IDisposable + { + private int m_ApiVersion; + private long m_TimePlaced; + private System.IntPtr m_Action; + + public long TimePlaced + { + get + { + return m_TimePlaced; + } + + set + { + m_TimePlaced = value; + } + } + + public string Action + { + get + { + string value; + Helper.TryMarshalGet(m_Action, out value); + return value; + } + + set + { + Helper.TryMarshalSet(ref m_Action, value); + } + } + + public void Set(PlayerSanction other) + { + if (other != null) + { + m_ApiVersion = SanctionsInterface.PlayersanctionApiLatest; + TimePlaced = other.TimePlaced; + Action = other.Action; + } + } + + public void Set(object other) + { + Set(other as PlayerSanction); + } + + public void Dispose() + { + Helper.TryMarshalDispose(ref m_Action); + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/Sanctions/PlayerSanction.cs.meta b/EOSSDK/Generated/Sanctions/PlayerSanction.cs.meta new file mode 100644 index 00000000..e38fe085 --- /dev/null +++ b/EOSSDK/Generated/Sanctions/PlayerSanction.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 14086e779e1e51e4fbadd258064f3be8 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/Sanctions/QueryActivePlayerSanctionsCallbackInfo.cs b/EOSSDK/Generated/Sanctions/QueryActivePlayerSanctionsCallbackInfo.cs new file mode 100644 index 00000000..1372b124 --- /dev/null +++ b/EOSSDK/Generated/Sanctions/QueryActivePlayerSanctionsCallbackInfo.cs @@ -0,0 +1,107 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.Sanctions +{ + /// + /// Output parameters for the function. + /// + public class QueryActivePlayerSanctionsCallbackInfo : ICallbackInfo, ISettable + { + /// + /// The code for the operation. indicates that the operation succeeded; other codes indicate errors. + /// + public Result ResultCode { get; private set; } + + /// + /// Context that was passed into . + /// + public object ClientData { get; private set; } + + /// + /// Target Product User ID that was passed to . + /// + public ProductUserId TargetUserId { get; private set; } + + /// + /// The Product User ID of the local user who initiated this request, if applicable. + /// + public ProductUserId LocalUserId { get; private set; } + + public Result? GetResultCode() + { + return ResultCode; + } + + internal void Set(QueryActivePlayerSanctionsCallbackInfoInternal? other) + { + if (other != null) + { + ResultCode = other.Value.ResultCode; + ClientData = other.Value.ClientData; + TargetUserId = other.Value.TargetUserId; + LocalUserId = other.Value.LocalUserId; + } + } + + public void Set(object other) + { + Set(other as QueryActivePlayerSanctionsCallbackInfoInternal?); + } + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct QueryActivePlayerSanctionsCallbackInfoInternal : ICallbackInfoInternal + { + private Result m_ResultCode; + private System.IntPtr m_ClientData; + private System.IntPtr m_TargetUserId; + private System.IntPtr m_LocalUserId; + + public Result ResultCode + { + get + { + return m_ResultCode; + } + } + + public object ClientData + { + get + { + object value; + Helper.TryMarshalGet(m_ClientData, out value); + return value; + } + } + + public System.IntPtr ClientDataAddress + { + get + { + return m_ClientData; + } + } + + public ProductUserId TargetUserId + { + get + { + ProductUserId value; + Helper.TryMarshalGet(m_TargetUserId, out value); + return value; + } + } + + public ProductUserId LocalUserId + { + get + { + ProductUserId value; + Helper.TryMarshalGet(m_LocalUserId, out value); + return value; + } + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/Sanctions/QueryActivePlayerSanctionsCallbackInfo.cs.meta b/EOSSDK/Generated/Sanctions/QueryActivePlayerSanctionsCallbackInfo.cs.meta new file mode 100644 index 00000000..a889a78e --- /dev/null +++ b/EOSSDK/Generated/Sanctions/QueryActivePlayerSanctionsCallbackInfo.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: ae2ec33046be37745bc0cb9eb4850c73 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/Sanctions/QueryActivePlayerSanctionsOptions.cs b/EOSSDK/Generated/Sanctions/QueryActivePlayerSanctionsOptions.cs new file mode 100644 index 00000000..b16f8581 --- /dev/null +++ b/EOSSDK/Generated/Sanctions/QueryActivePlayerSanctionsOptions.cs @@ -0,0 +1,66 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.Sanctions +{ + /// + /// Input parameters for the API. + /// + public class QueryActivePlayerSanctionsOptions + { + /// + /// Product User ID of the user whose active sanctions are to be retrieved. + /// + public ProductUserId TargetUserId { get; set; } + + /// + /// The Product User ID of the local user who initiated this request. Dedicated servers should set this to null. + /// + public ProductUserId LocalUserId { get; set; } + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct QueryActivePlayerSanctionsOptionsInternal : ISettable, System.IDisposable + { + private int m_ApiVersion; + private System.IntPtr m_TargetUserId; + private System.IntPtr m_LocalUserId; + + public ProductUserId TargetUserId + { + set + { + Helper.TryMarshalSet(ref m_TargetUserId, value); + } + } + + public ProductUserId LocalUserId + { + set + { + Helper.TryMarshalSet(ref m_LocalUserId, value); + } + } + + public void Set(QueryActivePlayerSanctionsOptions other) + { + if (other != null) + { + m_ApiVersion = SanctionsInterface.QueryactiveplayersanctionsApiLatest; + TargetUserId = other.TargetUserId; + LocalUserId = other.LocalUserId; + } + } + + public void Set(object other) + { + Set(other as QueryActivePlayerSanctionsOptions); + } + + public void Dispose() + { + Helper.TryMarshalDispose(ref m_TargetUserId); + Helper.TryMarshalDispose(ref m_LocalUserId); + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/Sanctions/QueryActivePlayerSanctionsOptions.cs.meta b/EOSSDK/Generated/Sanctions/QueryActivePlayerSanctionsOptions.cs.meta new file mode 100644 index 00000000..012a4c15 --- /dev/null +++ b/EOSSDK/Generated/Sanctions/QueryActivePlayerSanctionsOptions.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: a832c081183678942ad2bf758c1bbbac +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/Sanctions/SanctionsInterface.cs b/EOSSDK/Generated/Sanctions/SanctionsInterface.cs new file mode 100644 index 00000000..66274ee5 --- /dev/null +++ b/EOSSDK/Generated/Sanctions/SanctionsInterface.cs @@ -0,0 +1,126 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.Sanctions +{ + public sealed partial class SanctionsInterface : Handle + { + public SanctionsInterface() + { + } + + public SanctionsInterface(System.IntPtr innerHandle) : base(innerHandle) + { + } + + /// + /// The most recent version of the API. + /// + public const int CopyplayersanctionbyindexApiLatest = 1; + + /// + /// The most recent version of the API. + /// + public const int GetplayersanctioncountApiLatest = 1; + + /// + /// The most recent version of the struct. + /// + public const int PlayersanctionApiLatest = 1; + + /// + /// The most recent version of the API. + /// + public const int QueryactiveplayersanctionsApiLatest = 2; + + /// + /// Copies an active player sanction. + /// You must call QueryActivePlayerSanctions first to retrieve the data from the service backend. + /// On success, must be called on OutSanction to free memory. + /// + /// + /// + /// Structure containing the input parameters + /// The player sanction data for the given index, if it exists and is valid + /// + /// if the information is available and passed out in OutSanction + /// if you pass a null pointer for the out parameter + /// if the player achievement is not found + /// + public Result CopyPlayerSanctionByIndex(CopyPlayerSanctionByIndexOptions options, out PlayerSanction outSanction) + { + var optionsAddress = System.IntPtr.Zero; + Helper.TryMarshalSet(ref optionsAddress, options); + + var outSanctionAddress = System.IntPtr.Zero; + + var funcResult = Bindings.EOS_Sanctions_CopyPlayerSanctionByIndex(InnerHandle, optionsAddress, ref outSanctionAddress); + + Helper.TryMarshalDispose(ref optionsAddress); + + if (Helper.TryMarshalGet(outSanctionAddress, out outSanction)) + { + Bindings.EOS_Sanctions_PlayerSanction_Release(outSanctionAddress); + } + + return funcResult; + } + + /// + /// Fetch the number of player sanctions that have been retrieved for a given player. + /// You must call QueryActivePlayerSanctions first to retrieve the data from the service backend. + /// + /// + /// + /// Structure containing the input parameters + /// + /// Number of available sanctions for this player. + /// + public uint GetPlayerSanctionCount(GetPlayerSanctionCountOptions options) + { + var optionsAddress = System.IntPtr.Zero; + Helper.TryMarshalSet(ref optionsAddress, options); + + var funcResult = Bindings.EOS_Sanctions_GetPlayerSanctionCount(InnerHandle, optionsAddress); + + Helper.TryMarshalDispose(ref optionsAddress); + + return funcResult; + } + + /// + /// Start an asynchronous query to retrieve any active sanctions for a specified user. + /// Call and to retrieve the data. + /// + /// + /// + /// Structure containing the input parameters + /// Arbitrary data that is passed back to you in the CompletionDelegate + /// A callback that is fired when the async operation completes, either successfully or in error + public void QueryActivePlayerSanctions(QueryActivePlayerSanctionsOptions options, object clientData, OnQueryActivePlayerSanctionsCallback completionDelegate) + { + var optionsAddress = System.IntPtr.Zero; + Helper.TryMarshalSet(ref optionsAddress, options); + + var clientDataAddress = System.IntPtr.Zero; + + var completionDelegateInternal = new OnQueryActivePlayerSanctionsCallbackInternal(OnQueryActivePlayerSanctionsCallbackInternalImplementation); + Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); + + Bindings.EOS_Sanctions_QueryActivePlayerSanctions(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); + + Helper.TryMarshalDispose(ref optionsAddress); + } + + [MonoPInvokeCallback(typeof(OnQueryActivePlayerSanctionsCallbackInternal))] + internal static void OnQueryActivePlayerSanctionsCallbackInternalImplementation(System.IntPtr data) + { + OnQueryActivePlayerSanctionsCallback callback; + QueryActivePlayerSanctionsCallbackInfo callbackInfo; + if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) + { + callback(callbackInfo); + } + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/Sanctions/SanctionsInterface.cs.meta b/EOSSDK/Generated/Sanctions/SanctionsInterface.cs.meta new file mode 100644 index 00000000..70d4f544 --- /dev/null +++ b/EOSSDK/Generated/Sanctions/SanctionsInterface.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 4f7bb11692e48554aa7ebb4b55fe884d +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/Sessions/ActiveSession.cs b/EOSSDK/Generated/Sessions/ActiveSession.cs index fb197bd5..f872a734 100644 --- a/EOSSDK/Generated/Sessions/ActiveSession.cs +++ b/EOSSDK/Generated/Sessions/ActiveSession.cs @@ -3,7 +3,7 @@ namespace Epic.OnlineServices.Sessions { - public sealed class ActiveSession : Handle + public sealed partial class ActiveSession : Handle { public ActiveSession() { @@ -49,18 +49,18 @@ public ActiveSession(System.IntPtr innerHandle) : base(innerHandle) /// public Result CopyInfo(ActiveSessionCopyInfoOptions options, out ActiveSessionInfo outActiveSessionInfo) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var outActiveSessionInfoAddress = System.IntPtr.Zero; - var funcResult = EOS_ActiveSession_CopyInfo(InnerHandle, optionsAddress, ref outActiveSessionInfoAddress); + var funcResult = Bindings.EOS_ActiveSession_CopyInfo(InnerHandle, optionsAddress, ref outActiveSessionInfoAddress); Helper.TryMarshalDispose(ref optionsAddress); if (Helper.TryMarshalGet(outActiveSessionInfoAddress, out outActiveSessionInfo)) { - EOS_ActiveSession_Info_Release(outActiveSessionInfoAddress); + Bindings.EOS_ActiveSession_Info_Release(outActiveSessionInfoAddress); } return funcResult; @@ -77,10 +77,10 @@ public Result CopyInfo(ActiveSessionCopyInfoOptions options, out ActiveSessionIn /// public ProductUserId GetRegisteredPlayerByIndex(ActiveSessionGetRegisteredPlayerByIndexOptions options) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); - var funcResult = EOS_ActiveSession_GetRegisteredPlayerByIndex(InnerHandle, optionsAddress); + var funcResult = Bindings.EOS_ActiveSession_GetRegisteredPlayerByIndex(InnerHandle, optionsAddress); Helper.TryMarshalDispose(ref optionsAddress); @@ -98,10 +98,10 @@ public ProductUserId GetRegisteredPlayerByIndex(ActiveSessionGetRegisteredPlayer /// public uint GetRegisteredPlayerCount(ActiveSessionGetRegisteredPlayerCountOptions options) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); - var funcResult = EOS_ActiveSession_GetRegisteredPlayerCount(InnerHandle, optionsAddress); + var funcResult = Bindings.EOS_ActiveSession_GetRegisteredPlayerCount(InnerHandle, optionsAddress); Helper.TryMarshalDispose(ref optionsAddress); @@ -116,22 +116,7 @@ public uint GetRegisteredPlayerCount(ActiveSessionGetRegisteredPlayerCountOption /// - The active session handle to release public void Release() { - EOS_ActiveSession_Release(InnerHandle); + Bindings.EOS_ActiveSession_Release(InnerHandle); } - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_ActiveSession_CopyInfo(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outActiveSessionInfo); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern System.IntPtr EOS_ActiveSession_GetRegisteredPlayerByIndex(System.IntPtr handle, System.IntPtr options); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern uint EOS_ActiveSession_GetRegisteredPlayerCount(System.IntPtr handle, System.IntPtr options); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern void EOS_ActiveSession_Release(System.IntPtr activeSessionHandle); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern void EOS_ActiveSession_Info_Release(System.IntPtr activeSessionInfo); } } \ No newline at end of file diff --git a/EOSSDK/Generated/Sessions/ActiveSessionInfo.cs b/EOSSDK/Generated/Sessions/ActiveSessionInfo.cs index 2bcadf80..56a9ed59 100644 --- a/EOSSDK/Generated/Sessions/ActiveSessionInfo.cs +++ b/EOSSDK/Generated/Sessions/ActiveSessionInfo.cs @@ -132,6 +132,7 @@ public void Set(object other) public void Dispose() { Helper.TryMarshalDispose(ref m_SessionName); + Helper.TryMarshalDispose(ref m_LocalUserId); Helper.TryMarshalDispose(ref m_SessionDetails); } } diff --git a/EOSSDK/Generated/Sessions/AttributeDataValue.cs b/EOSSDK/Generated/Sessions/AttributeDataValue.cs index 727ee936..0ced7ce0 100644 --- a/EOSSDK/Generated/Sessions/AttributeDataValue.cs +++ b/EOSSDK/Generated/Sessions/AttributeDataValue.cs @@ -99,17 +99,17 @@ private set } } - public static implicit operator AttributeDataValue(long? value) + public static implicit operator AttributeDataValue(long value) { return new AttributeDataValue() { AsInt64 = value }; } - public static implicit operator AttributeDataValue(double? value) + public static implicit operator AttributeDataValue(double value) { return new AttributeDataValue() { AsDouble = value }; } - public static implicit operator AttributeDataValue(bool? value) + public static implicit operator AttributeDataValue(bool value) { return new AttributeDataValue() { AsBool = value }; } diff --git a/EOSSDK/Generated/Sessions/CopySessionHandleForPresenceOptions.cs b/EOSSDK/Generated/Sessions/CopySessionHandleForPresenceOptions.cs index 62e19803..c53bf85d 100644 --- a/EOSSDK/Generated/Sessions/CopySessionHandleForPresenceOptions.cs +++ b/EOSSDK/Generated/Sessions/CopySessionHandleForPresenceOptions.cs @@ -44,6 +44,7 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_LocalUserId); } } } \ No newline at end of file diff --git a/EOSSDK/Generated/Sessions/CreateSessionModificationOptions.cs b/EOSSDK/Generated/Sessions/CreateSessionModificationOptions.cs index 3cd20143..b9840139 100644 --- a/EOSSDK/Generated/Sessions/CreateSessionModificationOptions.cs +++ b/EOSSDK/Generated/Sessions/CreateSessionModificationOptions.cs @@ -133,6 +133,7 @@ public void Dispose() { Helper.TryMarshalDispose(ref m_SessionName); Helper.TryMarshalDispose(ref m_BucketId); + Helper.TryMarshalDispose(ref m_LocalUserId); Helper.TryMarshalDispose(ref m_SessionId); } } diff --git a/EOSSDK/Generated/Sessions/GetInviteCountOptions.cs b/EOSSDK/Generated/Sessions/GetInviteCountOptions.cs index c12afabe..8d686b32 100644 --- a/EOSSDK/Generated/Sessions/GetInviteCountOptions.cs +++ b/EOSSDK/Generated/Sessions/GetInviteCountOptions.cs @@ -44,6 +44,7 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_LocalUserId); } } } \ No newline at end of file diff --git a/EOSSDK/Generated/Sessions/GetInviteIdByIndexOptions.cs b/EOSSDK/Generated/Sessions/GetInviteIdByIndexOptions.cs index a17856a3..df4b0a3b 100644 --- a/EOSSDK/Generated/Sessions/GetInviteIdByIndexOptions.cs +++ b/EOSSDK/Generated/Sessions/GetInviteIdByIndexOptions.cs @@ -59,6 +59,7 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_LocalUserId); } } } \ No newline at end of file diff --git a/EOSSDK/Generated/Sessions/IsUserInSessionOptions.cs b/EOSSDK/Generated/Sessions/IsUserInSessionOptions.cs index d4468181..ebf035d6 100644 --- a/EOSSDK/Generated/Sessions/IsUserInSessionOptions.cs +++ b/EOSSDK/Generated/Sessions/IsUserInSessionOptions.cs @@ -60,6 +60,7 @@ public void Set(object other) public void Dispose() { Helper.TryMarshalDispose(ref m_SessionName); + Helper.TryMarshalDispose(ref m_TargetUserId); } } } \ No newline at end of file diff --git a/EOSSDK/Generated/Sessions/JoinSessionOptions.cs b/EOSSDK/Generated/Sessions/JoinSessionOptions.cs index a6aee898..e863b4c4 100644 --- a/EOSSDK/Generated/Sessions/JoinSessionOptions.cs +++ b/EOSSDK/Generated/Sessions/JoinSessionOptions.cs @@ -100,6 +100,8 @@ public void Set(object other) public void Dispose() { Helper.TryMarshalDispose(ref m_SessionName); + Helper.TryMarshalDispose(ref m_SessionHandle); + Helper.TryMarshalDispose(ref m_LocalUserId); } } } \ No newline at end of file diff --git a/EOSSDK/Generated/Sessions/OnDestroySessionCallback.cs b/EOSSDK/Generated/Sessions/OnDestroySessionCallback.cs index 39032788..fc741efb 100644 --- a/EOSSDK/Generated/Sessions/OnDestroySessionCallback.cs +++ b/EOSSDK/Generated/Sessions/OnDestroySessionCallback.cs @@ -9,5 +9,6 @@ namespace Epic.OnlineServices.Sessions /// A containing the output information and result public delegate void OnDestroySessionCallback(DestroySessionCallbackInfo data); + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] internal delegate void OnDestroySessionCallbackInternal(System.IntPtr data); } \ No newline at end of file diff --git a/EOSSDK/Generated/Sessions/OnEndSessionCallback.cs b/EOSSDK/Generated/Sessions/OnEndSessionCallback.cs index 9d8abec2..d6b74758 100644 --- a/EOSSDK/Generated/Sessions/OnEndSessionCallback.cs +++ b/EOSSDK/Generated/Sessions/OnEndSessionCallback.cs @@ -9,5 +9,6 @@ namespace Epic.OnlineServices.Sessions /// A containing the output information and result public delegate void OnEndSessionCallback(EndSessionCallbackInfo data); + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] internal delegate void OnEndSessionCallbackInternal(System.IntPtr data); } \ No newline at end of file diff --git a/EOSSDK/Generated/Sessions/OnJoinSessionAcceptedCallback.cs b/EOSSDK/Generated/Sessions/OnJoinSessionAcceptedCallback.cs index 8ef7d19c..19490dc0 100644 --- a/EOSSDK/Generated/Sessions/OnJoinSessionAcceptedCallback.cs +++ b/EOSSDK/Generated/Sessions/OnJoinSessionAcceptedCallback.cs @@ -14,5 +14,6 @@ namespace Epic.OnlineServices.Sessions /// public delegate void OnJoinSessionAcceptedCallback(JoinSessionAcceptedCallbackInfo data); + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] internal delegate void OnJoinSessionAcceptedCallbackInternal(System.IntPtr data); } \ No newline at end of file diff --git a/EOSSDK/Generated/Sessions/OnJoinSessionCallback.cs b/EOSSDK/Generated/Sessions/OnJoinSessionCallback.cs index f8336857..9b302397 100644 --- a/EOSSDK/Generated/Sessions/OnJoinSessionCallback.cs +++ b/EOSSDK/Generated/Sessions/OnJoinSessionCallback.cs @@ -9,5 +9,6 @@ namespace Epic.OnlineServices.Sessions /// A containing the output information and result public delegate void OnJoinSessionCallback(JoinSessionCallbackInfo data); + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] internal delegate void OnJoinSessionCallbackInternal(System.IntPtr data); } \ No newline at end of file diff --git a/EOSSDK/Generated/Sessions/OnQueryInvitesCallback.cs b/EOSSDK/Generated/Sessions/OnQueryInvitesCallback.cs index 2d4dd231..73185948 100644 --- a/EOSSDK/Generated/Sessions/OnQueryInvitesCallback.cs +++ b/EOSSDK/Generated/Sessions/OnQueryInvitesCallback.cs @@ -9,5 +9,6 @@ namespace Epic.OnlineServices.Sessions /// A CallbackInfo containing the output information and result public delegate void OnQueryInvitesCallback(QueryInvitesCallbackInfo data); + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] internal delegate void OnQueryInvitesCallbackInternal(System.IntPtr data); } \ No newline at end of file diff --git a/EOSSDK/Generated/Sessions/OnRegisterPlayersCallback.cs b/EOSSDK/Generated/Sessions/OnRegisterPlayersCallback.cs index 532a80be..0d6600b9 100644 --- a/EOSSDK/Generated/Sessions/OnRegisterPlayersCallback.cs +++ b/EOSSDK/Generated/Sessions/OnRegisterPlayersCallback.cs @@ -9,5 +9,6 @@ namespace Epic.OnlineServices.Sessions /// A containing the output information and result public delegate void OnRegisterPlayersCallback(RegisterPlayersCallbackInfo data); + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] internal delegate void OnRegisterPlayersCallbackInternal(System.IntPtr data); } \ No newline at end of file diff --git a/EOSSDK/Generated/Sessions/OnRejectInviteCallback.cs b/EOSSDK/Generated/Sessions/OnRejectInviteCallback.cs index 52a1cf48..af5f5d88 100644 --- a/EOSSDK/Generated/Sessions/OnRejectInviteCallback.cs +++ b/EOSSDK/Generated/Sessions/OnRejectInviteCallback.cs @@ -9,5 +9,6 @@ namespace Epic.OnlineServices.Sessions /// A containing the output information and result public delegate void OnRejectInviteCallback(RejectInviteCallbackInfo data); + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] internal delegate void OnRejectInviteCallbackInternal(System.IntPtr data); } \ No newline at end of file diff --git a/EOSSDK/Generated/Sessions/OnSendInviteCallback.cs b/EOSSDK/Generated/Sessions/OnSendInviteCallback.cs index 2aa24b1e..0b0bbf63 100644 --- a/EOSSDK/Generated/Sessions/OnSendInviteCallback.cs +++ b/EOSSDK/Generated/Sessions/OnSendInviteCallback.cs @@ -9,5 +9,6 @@ namespace Epic.OnlineServices.Sessions /// A containing the output information and result public delegate void OnSendInviteCallback(SendInviteCallbackInfo data); + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] internal delegate void OnSendInviteCallbackInternal(System.IntPtr data); } \ No newline at end of file diff --git a/EOSSDK/Generated/Sessions/OnSessionInviteAcceptedCallback.cs b/EOSSDK/Generated/Sessions/OnSessionInviteAcceptedCallback.cs index c2f645a6..4e8e89b8 100644 --- a/EOSSDK/Generated/Sessions/OnSessionInviteAcceptedCallback.cs +++ b/EOSSDK/Generated/Sessions/OnSessionInviteAcceptedCallback.cs @@ -14,5 +14,6 @@ namespace Epic.OnlineServices.Sessions /// public delegate void OnSessionInviteAcceptedCallback(SessionInviteAcceptedCallbackInfo data); + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] internal delegate void OnSessionInviteAcceptedCallbackInternal(System.IntPtr data); } \ No newline at end of file diff --git a/EOSSDK/Generated/Sessions/OnSessionInviteReceivedCallback.cs b/EOSSDK/Generated/Sessions/OnSessionInviteReceivedCallback.cs index 00fb4df2..0f5596c5 100644 --- a/EOSSDK/Generated/Sessions/OnSessionInviteReceivedCallback.cs +++ b/EOSSDK/Generated/Sessions/OnSessionInviteReceivedCallback.cs @@ -9,5 +9,6 @@ namespace Epic.OnlineServices.Sessions /// A containing the output information and result public delegate void OnSessionInviteReceivedCallback(SessionInviteReceivedCallbackInfo data); + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] internal delegate void OnSessionInviteReceivedCallbackInternal(System.IntPtr data); } \ No newline at end of file diff --git a/EOSSDK/Generated/Sessions/OnStartSessionCallback.cs b/EOSSDK/Generated/Sessions/OnStartSessionCallback.cs index 4da7a91a..809557be 100644 --- a/EOSSDK/Generated/Sessions/OnStartSessionCallback.cs +++ b/EOSSDK/Generated/Sessions/OnStartSessionCallback.cs @@ -9,5 +9,6 @@ namespace Epic.OnlineServices.Sessions /// A containing the output information and result public delegate void OnStartSessionCallback(StartSessionCallbackInfo data); + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] internal delegate void OnStartSessionCallbackInternal(System.IntPtr data); } \ No newline at end of file diff --git a/EOSSDK/Generated/Sessions/OnUnregisterPlayersCallback.cs b/EOSSDK/Generated/Sessions/OnUnregisterPlayersCallback.cs index 7bb86dbd..5241a8dd 100644 --- a/EOSSDK/Generated/Sessions/OnUnregisterPlayersCallback.cs +++ b/EOSSDK/Generated/Sessions/OnUnregisterPlayersCallback.cs @@ -9,5 +9,6 @@ namespace Epic.OnlineServices.Sessions /// A containing the output information and result public delegate void OnUnregisterPlayersCallback(UnregisterPlayersCallbackInfo data); + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] internal delegate void OnUnregisterPlayersCallbackInternal(System.IntPtr data); } \ No newline at end of file diff --git a/EOSSDK/Generated/Sessions/OnUpdateSessionCallback.cs b/EOSSDK/Generated/Sessions/OnUpdateSessionCallback.cs index 498ac293..0daca1de 100644 --- a/EOSSDK/Generated/Sessions/OnUpdateSessionCallback.cs +++ b/EOSSDK/Generated/Sessions/OnUpdateSessionCallback.cs @@ -9,5 +9,6 @@ namespace Epic.OnlineServices.Sessions /// A containing the output information and result public delegate void OnUpdateSessionCallback(UpdateSessionCallbackInfo data); + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] internal delegate void OnUpdateSessionCallbackInternal(System.IntPtr data); } \ No newline at end of file diff --git a/EOSSDK/Generated/Sessions/QueryInvitesOptions.cs b/EOSSDK/Generated/Sessions/QueryInvitesOptions.cs index bd573c7f..f263c5d5 100644 --- a/EOSSDK/Generated/Sessions/QueryInvitesOptions.cs +++ b/EOSSDK/Generated/Sessions/QueryInvitesOptions.cs @@ -44,6 +44,7 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_LocalUserId); } } } \ No newline at end of file diff --git a/EOSSDK/Generated/Sessions/RejectInviteOptions.cs b/EOSSDK/Generated/Sessions/RejectInviteOptions.cs index a6ce257f..21d580fb 100644 --- a/EOSSDK/Generated/Sessions/RejectInviteOptions.cs +++ b/EOSSDK/Generated/Sessions/RejectInviteOptions.cs @@ -59,6 +59,7 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_LocalUserId); Helper.TryMarshalDispose(ref m_InviteId); } } diff --git a/EOSSDK/Generated/Sessions/SendInviteOptions.cs b/EOSSDK/Generated/Sessions/SendInviteOptions.cs index 023ca04f..165f7cca 100644 --- a/EOSSDK/Generated/Sessions/SendInviteOptions.cs +++ b/EOSSDK/Generated/Sessions/SendInviteOptions.cs @@ -75,6 +75,8 @@ public void Set(object other) public void Dispose() { Helper.TryMarshalDispose(ref m_SessionName); + Helper.TryMarshalDispose(ref m_LocalUserId); + Helper.TryMarshalDispose(ref m_TargetUserId); } } } \ No newline at end of file diff --git a/EOSSDK/Generated/Sessions/SessionDetails.cs b/EOSSDK/Generated/Sessions/SessionDetails.cs index dd446cd3..ec7d1e93 100644 --- a/EOSSDK/Generated/Sessions/SessionDetails.cs +++ b/EOSSDK/Generated/Sessions/SessionDetails.cs @@ -3,7 +3,7 @@ namespace Epic.OnlineServices.Sessions { - public sealed class SessionDetails : Handle + public sealed partial class SessionDetails : Handle { public SessionDetails() { @@ -64,18 +64,18 @@ public SessionDetails(System.IntPtr innerHandle) : base(innerHandle) /// public Result CopyInfo(SessionDetailsCopyInfoOptions options, out SessionDetailsInfo outSessionInfo) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var outSessionInfoAddress = System.IntPtr.Zero; - var funcResult = EOS_SessionDetails_CopyInfo(InnerHandle, optionsAddress, ref outSessionInfoAddress); + var funcResult = Bindings.EOS_SessionDetails_CopyInfo(InnerHandle, optionsAddress, ref outSessionInfoAddress); Helper.TryMarshalDispose(ref optionsAddress); if (Helper.TryMarshalGet(outSessionInfoAddress, out outSessionInfo)) { - EOS_SessionDetails_Info_Release(outSessionInfoAddress); + Bindings.EOS_SessionDetails_Info_Release(outSessionInfoAddress); } return funcResult; @@ -97,18 +97,18 @@ public Result CopyInfo(SessionDetailsCopyInfoOptions options, out SessionDetails /// public Result CopySessionAttributeByIndex(SessionDetailsCopySessionAttributeByIndexOptions options, out SessionDetailsAttribute outSessionAttribute) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var outSessionAttributeAddress = System.IntPtr.Zero; - var funcResult = EOS_SessionDetails_CopySessionAttributeByIndex(InnerHandle, optionsAddress, ref outSessionAttributeAddress); + var funcResult = Bindings.EOS_SessionDetails_CopySessionAttributeByIndex(InnerHandle, optionsAddress, ref outSessionAttributeAddress); Helper.TryMarshalDispose(ref optionsAddress); if (Helper.TryMarshalGet(outSessionAttributeAddress, out outSessionAttribute)) { - EOS_SessionDetails_Attribute_Release(outSessionAttributeAddress); + Bindings.EOS_SessionDetails_Attribute_Release(outSessionAttributeAddress); } return funcResult; @@ -130,18 +130,18 @@ public Result CopySessionAttributeByIndex(SessionDetailsCopySessionAttributeByIn /// public Result CopySessionAttributeByKey(SessionDetailsCopySessionAttributeByKeyOptions options, out SessionDetailsAttribute outSessionAttribute) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var outSessionAttributeAddress = System.IntPtr.Zero; - var funcResult = EOS_SessionDetails_CopySessionAttributeByKey(InnerHandle, optionsAddress, ref outSessionAttributeAddress); + var funcResult = Bindings.EOS_SessionDetails_CopySessionAttributeByKey(InnerHandle, optionsAddress, ref outSessionAttributeAddress); Helper.TryMarshalDispose(ref optionsAddress); if (Helper.TryMarshalGet(outSessionAttributeAddress, out outSessionAttribute)) { - EOS_SessionDetails_Attribute_Release(outSessionAttributeAddress); + Bindings.EOS_SessionDetails_Attribute_Release(outSessionAttributeAddress); } return funcResult; @@ -156,10 +156,10 @@ public Result CopySessionAttributeByKey(SessionDetailsCopySessionAttributeByKeyO /// public uint GetSessionAttributeCount(SessionDetailsGetSessionAttributeCountOptions options) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); - var funcResult = EOS_SessionDetails_GetSessionAttributeCount(InnerHandle, optionsAddress); + var funcResult = Bindings.EOS_SessionDetails_GetSessionAttributeCount(InnerHandle, optionsAddress); Helper.TryMarshalDispose(ref optionsAddress); @@ -173,28 +173,7 @@ public uint GetSessionAttributeCount(SessionDetailsGetSessionAttributeCountOptio /// - The session handle to release public void Release() { - EOS_SessionDetails_Release(InnerHandle); + Bindings.EOS_SessionDetails_Release(InnerHandle); } - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_SessionDetails_CopyInfo(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outSessionInfo); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_SessionDetails_CopySessionAttributeByIndex(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outSessionAttribute); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_SessionDetails_CopySessionAttributeByKey(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outSessionAttribute); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern uint EOS_SessionDetails_GetSessionAttributeCount(System.IntPtr handle, System.IntPtr options); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern void EOS_SessionDetails_Release(System.IntPtr sessionHandle); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern void EOS_SessionDetails_Attribute_Release(System.IntPtr sessionAttribute); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern void EOS_SessionDetails_Info_Release(System.IntPtr sessionInfo); } } \ No newline at end of file diff --git a/EOSSDK/Generated/Sessions/SessionDetailsCopySessionAttributeByKeyOptions.cs b/EOSSDK/Generated/Sessions/SessionDetailsCopySessionAttributeByKeyOptions.cs index eec48288..e65cc997 100644 --- a/EOSSDK/Generated/Sessions/SessionDetailsCopySessionAttributeByKeyOptions.cs +++ b/EOSSDK/Generated/Sessions/SessionDetailsCopySessionAttributeByKeyOptions.cs @@ -9,6 +9,7 @@ namespace Epic.OnlineServices.Sessions public class SessionDetailsCopySessionAttributeByKeyOptions { /// + /// The name of the key to get the session attribution for /// /// public string AttrKey { get; set; } diff --git a/EOSSDK/Generated/Sessions/SessionModification.cs b/EOSSDK/Generated/Sessions/SessionModification.cs index 35397ed0..3c6fb6e4 100644 --- a/EOSSDK/Generated/Sessions/SessionModification.cs +++ b/EOSSDK/Generated/Sessions/SessionModification.cs @@ -3,7 +3,7 @@ namespace Epic.OnlineServices.Sessions { - public sealed class SessionModification : Handle + public sealed partial class SessionModification : Handle { public SessionModification() { @@ -29,12 +29,12 @@ public SessionModification(System.IntPtr innerHandle) : base(innerHandle) public const int SessionmodificationMaxSessionAttributes = 64; /// - /// Maximum number of characters a session id override + /// Maximum number of characters allowed in the session id override /// public const int SessionmodificationMaxSessionidoverrideLength = 64; /// - /// Minimum number of characters the session id override + /// Minimum number of characters allowed in the session id override /// public const int SessionmodificationMinSessionidoverrideLength = 16; @@ -86,10 +86,10 @@ public SessionModification(System.IntPtr innerHandle) : base(innerHandle) /// public Result AddAttribute(SessionModificationAddAttributeOptions options) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); - var funcResult = EOS_SessionModification_AddAttribute(InnerHandle, optionsAddress); + var funcResult = Bindings.EOS_SessionModification_AddAttribute(InnerHandle, optionsAddress); Helper.TryMarshalDispose(ref optionsAddress); @@ -105,7 +105,7 @@ public Result AddAttribute(SessionModificationAddAttributeOptions options) /// - The session modification handle to release public void Release() { - EOS_SessionModification_Release(InnerHandle); + Bindings.EOS_SessionModification_Release(InnerHandle); } /// @@ -119,10 +119,10 @@ public void Release() /// public Result RemoveAttribute(SessionModificationRemoveAttributeOptions options) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); - var funcResult = EOS_SessionModification_RemoveAttribute(InnerHandle, optionsAddress); + var funcResult = Bindings.EOS_SessionModification_RemoveAttribute(InnerHandle, optionsAddress); Helper.TryMarshalDispose(ref optionsAddress); @@ -142,10 +142,10 @@ public Result RemoveAttribute(SessionModificationRemoveAttributeOptions options) /// public Result SetBucketId(SessionModificationSetBucketIdOptions options) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); - var funcResult = EOS_SessionModification_SetBucketId(InnerHandle, optionsAddress); + var funcResult = Bindings.EOS_SessionModification_SetBucketId(InnerHandle, optionsAddress); Helper.TryMarshalDispose(ref optionsAddress); @@ -167,10 +167,10 @@ public Result SetBucketId(SessionModificationSetBucketIdOptions options) /// public Result SetHostAddress(SessionModificationSetHostAddressOptions options) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); - var funcResult = EOS_SessionModification_SetHostAddress(InnerHandle, optionsAddress); + var funcResult = Bindings.EOS_SessionModification_SetHostAddress(InnerHandle, optionsAddress); Helper.TryMarshalDispose(ref optionsAddress); @@ -188,10 +188,10 @@ public Result SetHostAddress(SessionModificationSetHostAddressOptions options) /// public Result SetInvitesAllowed(SessionModificationSetInvitesAllowedOptions options) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); - var funcResult = EOS_SessionModification_SetInvitesAllowed(InnerHandle, optionsAddress); + var funcResult = Bindings.EOS_SessionModification_SetInvitesAllowed(InnerHandle, optionsAddress); Helper.TryMarshalDispose(ref optionsAddress); @@ -209,10 +209,10 @@ public Result SetInvitesAllowed(SessionModificationSetInvitesAllowedOptions opti /// public Result SetJoinInProgressAllowed(SessionModificationSetJoinInProgressAllowedOptions options) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); - var funcResult = EOS_SessionModification_SetJoinInProgressAllowed(InnerHandle, optionsAddress); + var funcResult = Bindings.EOS_SessionModification_SetJoinInProgressAllowed(InnerHandle, optionsAddress); Helper.TryMarshalDispose(ref optionsAddress); @@ -230,10 +230,10 @@ public Result SetJoinInProgressAllowed(SessionModificationSetJoinInProgressAllow /// public Result SetMaxPlayers(SessionModificationSetMaxPlayersOptions options) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); - var funcResult = EOS_SessionModification_SetMaxPlayers(InnerHandle, optionsAddress); + var funcResult = Bindings.EOS_SessionModification_SetMaxPlayers(InnerHandle, optionsAddress); Helper.TryMarshalDispose(ref optionsAddress); @@ -251,41 +251,14 @@ public Result SetMaxPlayers(SessionModificationSetMaxPlayersOptions options) /// public Result SetPermissionLevel(SessionModificationSetPermissionLevelOptions options) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); - var funcResult = EOS_SessionModification_SetPermissionLevel(InnerHandle, optionsAddress); + var funcResult = Bindings.EOS_SessionModification_SetPermissionLevel(InnerHandle, optionsAddress); Helper.TryMarshalDispose(ref optionsAddress); return funcResult; } - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_SessionModification_AddAttribute(System.IntPtr handle, System.IntPtr options); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern void EOS_SessionModification_Release(System.IntPtr sessionModificationHandle); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_SessionModification_RemoveAttribute(System.IntPtr handle, System.IntPtr options); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_SessionModification_SetBucketId(System.IntPtr handle, System.IntPtr options); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_SessionModification_SetHostAddress(System.IntPtr handle, System.IntPtr options); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_SessionModification_SetInvitesAllowed(System.IntPtr handle, System.IntPtr options); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_SessionModification_SetJoinInProgressAllowed(System.IntPtr handle, System.IntPtr options); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_SessionModification_SetMaxPlayers(System.IntPtr handle, System.IntPtr options); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_SessionModification_SetPermissionLevel(System.IntPtr handle, System.IntPtr options); } } \ No newline at end of file diff --git a/EOSSDK/Generated/Sessions/SessionSearch.cs b/EOSSDK/Generated/Sessions/SessionSearch.cs index 40995166..6f4ca2c6 100644 --- a/EOSSDK/Generated/Sessions/SessionSearch.cs +++ b/EOSSDK/Generated/Sessions/SessionSearch.cs @@ -3,7 +3,7 @@ namespace Epic.OnlineServices.Sessions { - public sealed class SessionSearch : Handle + public sealed partial class SessionSearch : Handle { public SessionSearch() { @@ -68,12 +68,12 @@ public SessionSearch(System.IntPtr innerHandle) : base(innerHandle) /// public Result CopySearchResultByIndex(SessionSearchCopySearchResultByIndexOptions options, out SessionDetails outSessionHandle) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var outSessionHandleAddress = System.IntPtr.Zero; - var funcResult = EOS_SessionSearch_CopySearchResultByIndex(InnerHandle, optionsAddress, ref outSessionHandleAddress); + var funcResult = Bindings.EOS_SessionSearch_CopySearchResultByIndex(InnerHandle, optionsAddress, ref outSessionHandleAddress); Helper.TryMarshalDispose(ref optionsAddress); @@ -96,7 +96,7 @@ public Result CopySearchResultByIndex(SessionSearchCopySearchResultByIndexOption /// public void Find(SessionSearchFindOptions options, object clientData, SessionSearchOnFindCallback completionDelegate) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var clientDataAddress = System.IntPtr.Zero; @@ -104,7 +104,7 @@ public void Find(SessionSearchFindOptions options, object clientData, SessionSea var completionDelegateInternal = new SessionSearchOnFindCallbackInternal(OnFindCallbackInternalImplementation); Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - EOS_SessionSearch_Find(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); + Bindings.EOS_SessionSearch_Find(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); Helper.TryMarshalDispose(ref optionsAddress); } @@ -118,10 +118,10 @@ public void Find(SessionSearchFindOptions options, object clientData, SessionSea /// public uint GetSearchResultCount(SessionSearchGetSearchResultCountOptions options) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); - var funcResult = EOS_SessionSearch_GetSearchResultCount(InnerHandle, optionsAddress); + var funcResult = Bindings.EOS_SessionSearch_GetSearchResultCount(InnerHandle, optionsAddress); Helper.TryMarshalDispose(ref optionsAddress); @@ -135,7 +135,7 @@ public uint GetSearchResultCount(SessionSearchGetSearchResultCountOptions option /// - The session search handle to release public void Release() { - EOS_SessionSearch_Release(InnerHandle); + Bindings.EOS_SessionSearch_Release(InnerHandle); } /// @@ -151,10 +151,10 @@ public void Release() /// public Result RemoveParameter(SessionSearchRemoveParameterOptions options) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); - var funcResult = EOS_SessionSearch_RemoveParameter(InnerHandle, optionsAddress); + var funcResult = Bindings.EOS_SessionSearch_RemoveParameter(InnerHandle, optionsAddress); Helper.TryMarshalDispose(ref optionsAddress); @@ -172,10 +172,10 @@ public Result RemoveParameter(SessionSearchRemoveParameterOptions options) /// public Result SetMaxResults(SessionSearchSetMaxResultsOptions options) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); - var funcResult = EOS_SessionSearch_SetMaxResults(InnerHandle, optionsAddress); + var funcResult = Bindings.EOS_SessionSearch_SetMaxResults(InnerHandle, optionsAddress); Helper.TryMarshalDispose(ref optionsAddress); @@ -195,10 +195,10 @@ public Result SetMaxResults(SessionSearchSetMaxResultsOptions options) /// public Result SetParameter(SessionSearchSetParameterOptions options) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); - var funcResult = EOS_SessionSearch_SetParameter(InnerHandle, optionsAddress); + var funcResult = Bindings.EOS_SessionSearch_SetParameter(InnerHandle, optionsAddress); Helper.TryMarshalDispose(ref optionsAddress); @@ -216,10 +216,10 @@ public Result SetParameter(SessionSearchSetParameterOptions options) /// public Result SetSessionId(SessionSearchSetSessionIdOptions options) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); - var funcResult = EOS_SessionSearch_SetSessionId(InnerHandle, optionsAddress); + var funcResult = Bindings.EOS_SessionSearch_SetSessionId(InnerHandle, optionsAddress); Helper.TryMarshalDispose(ref optionsAddress); @@ -238,10 +238,10 @@ public Result SetSessionId(SessionSearchSetSessionIdOptions options) /// public Result SetTargetUserId(SessionSearchSetTargetUserIdOptions options) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); - var funcResult = EOS_SessionSearch_SetTargetUserId(InnerHandle, optionsAddress); + var funcResult = Bindings.EOS_SessionSearch_SetTargetUserId(InnerHandle, optionsAddress); Helper.TryMarshalDispose(ref optionsAddress); @@ -258,32 +258,5 @@ internal static void OnFindCallbackInternalImplementation(System.IntPtr data) callback(callbackInfo); } } - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_SessionSearch_CopySearchResultByIndex(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outSessionHandle); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern void EOS_SessionSearch_Find(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, SessionSearchOnFindCallbackInternal completionDelegate); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern uint EOS_SessionSearch_GetSearchResultCount(System.IntPtr handle, System.IntPtr options); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern void EOS_SessionSearch_Release(System.IntPtr sessionSearchHandle); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_SessionSearch_RemoveParameter(System.IntPtr handle, System.IntPtr options); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_SessionSearch_SetMaxResults(System.IntPtr handle, System.IntPtr options); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_SessionSearch_SetParameter(System.IntPtr handle, System.IntPtr options); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_SessionSearch_SetSessionId(System.IntPtr handle, System.IntPtr options); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_SessionSearch_SetTargetUserId(System.IntPtr handle, System.IntPtr options); } } \ No newline at end of file diff --git a/EOSSDK/Generated/Sessions/SessionSearchFindOptions.cs b/EOSSDK/Generated/Sessions/SessionSearchFindOptions.cs index eeead096..f3988dc4 100644 --- a/EOSSDK/Generated/Sessions/SessionSearchFindOptions.cs +++ b/EOSSDK/Generated/Sessions/SessionSearchFindOptions.cs @@ -44,6 +44,7 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_LocalUserId); } } } \ No newline at end of file diff --git a/EOSSDK/Generated/Sessions/SessionSearchOnFindCallback.cs b/EOSSDK/Generated/Sessions/SessionSearchOnFindCallback.cs index 1a9ed779..39f2541c 100644 --- a/EOSSDK/Generated/Sessions/SessionSearchOnFindCallback.cs +++ b/EOSSDK/Generated/Sessions/SessionSearchOnFindCallback.cs @@ -9,5 +9,6 @@ namespace Epic.OnlineServices.Sessions /// A containing the output information and result public delegate void SessionSearchOnFindCallback(SessionSearchFindCallbackInfo data); + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] internal delegate void SessionSearchOnFindCallbackInternal(System.IntPtr data); } \ No newline at end of file diff --git a/EOSSDK/Generated/Sessions/SessionSearchSetTargetUserIdOptions.cs b/EOSSDK/Generated/Sessions/SessionSearchSetTargetUserIdOptions.cs index 0303ce1c..9b648a02 100644 --- a/EOSSDK/Generated/Sessions/SessionSearchSetTargetUserIdOptions.cs +++ b/EOSSDK/Generated/Sessions/SessionSearchSetTargetUserIdOptions.cs @@ -44,6 +44,7 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_TargetUserId); } } } \ No newline at end of file diff --git a/EOSSDK/Generated/Sessions/SessionsInterface.cs b/EOSSDK/Generated/Sessions/SessionsInterface.cs index 9894f552..e8fcdb44 100644 --- a/EOSSDK/Generated/Sessions/SessionsInterface.cs +++ b/EOSSDK/Generated/Sessions/SessionsInterface.cs @@ -3,7 +3,7 @@ namespace Epic.OnlineServices.Sessions { - public sealed class SessionsInterface : Handle + public sealed partial class SessionsInterface : Handle { public SessionsInterface() { @@ -195,7 +195,7 @@ public SessionsInterface(System.IntPtr innerHandle) : base(innerHandle) /// public ulong AddNotifyJoinSessionAccepted(AddNotifyJoinSessionAcceptedOptions options, object clientData, OnJoinSessionAcceptedCallback notificationFn) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var clientDataAddress = System.IntPtr.Zero; @@ -203,7 +203,7 @@ public ulong AddNotifyJoinSessionAccepted(AddNotifyJoinSessionAcceptedOptions op var notificationFnInternal = new OnJoinSessionAcceptedCallbackInternal(OnJoinSessionAcceptedCallbackInternalImplementation); Helper.AddCallback(ref clientDataAddress, clientData, notificationFn, notificationFnInternal); - var funcResult = EOS_Sessions_AddNotifyJoinSessionAccepted(InnerHandle, optionsAddress, clientDataAddress, notificationFnInternal); + var funcResult = Bindings.EOS_Sessions_AddNotifyJoinSessionAccepted(InnerHandle, optionsAddress, clientDataAddress, notificationFnInternal); Helper.TryMarshalDispose(ref optionsAddress); @@ -224,7 +224,7 @@ public ulong AddNotifyJoinSessionAccepted(AddNotifyJoinSessionAcceptedOptions op /// public ulong AddNotifySessionInviteAccepted(AddNotifySessionInviteAcceptedOptions options, object clientData, OnSessionInviteAcceptedCallback notificationFn) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var clientDataAddress = System.IntPtr.Zero; @@ -232,7 +232,7 @@ public ulong AddNotifySessionInviteAccepted(AddNotifySessionInviteAcceptedOption var notificationFnInternal = new OnSessionInviteAcceptedCallbackInternal(OnSessionInviteAcceptedCallbackInternalImplementation); Helper.AddCallback(ref clientDataAddress, clientData, notificationFn, notificationFnInternal); - var funcResult = EOS_Sessions_AddNotifySessionInviteAccepted(InnerHandle, optionsAddress, clientDataAddress, notificationFnInternal); + var funcResult = Bindings.EOS_Sessions_AddNotifySessionInviteAccepted(InnerHandle, optionsAddress, clientDataAddress, notificationFnInternal); Helper.TryMarshalDispose(ref optionsAddress); @@ -253,7 +253,7 @@ public ulong AddNotifySessionInviteAccepted(AddNotifySessionInviteAcceptedOption /// public ulong AddNotifySessionInviteReceived(AddNotifySessionInviteReceivedOptions options, object clientData, OnSessionInviteReceivedCallback notificationFn) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var clientDataAddress = System.IntPtr.Zero; @@ -261,7 +261,7 @@ public ulong AddNotifySessionInviteReceived(AddNotifySessionInviteReceivedOption var notificationFnInternal = new OnSessionInviteReceivedCallbackInternal(OnSessionInviteReceivedCallbackInternalImplementation); Helper.AddCallback(ref clientDataAddress, clientData, notificationFn, notificationFnInternal); - var funcResult = EOS_Sessions_AddNotifySessionInviteReceived(InnerHandle, optionsAddress, clientDataAddress, notificationFnInternal); + var funcResult = Bindings.EOS_Sessions_AddNotifySessionInviteReceived(InnerHandle, optionsAddress, clientDataAddress, notificationFnInternal); Helper.TryMarshalDispose(ref optionsAddress); @@ -283,12 +283,12 @@ public ulong AddNotifySessionInviteReceived(AddNotifySessionInviteReceivedOption /// public Result CopyActiveSessionHandle(CopyActiveSessionHandleOptions options, out ActiveSession outSessionHandle) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var outSessionHandleAddress = System.IntPtr.Zero; - var funcResult = EOS_Sessions_CopyActiveSessionHandle(InnerHandle, optionsAddress, ref outSessionHandleAddress); + var funcResult = Bindings.EOS_Sessions_CopyActiveSessionHandle(InnerHandle, optionsAddress, ref outSessionHandleAddress); Helper.TryMarshalDispose(ref optionsAddress); @@ -313,12 +313,12 @@ public Result CopyActiveSessionHandle(CopyActiveSessionHandleOptions options, ou /// public Result CopySessionHandleByInviteId(CopySessionHandleByInviteIdOptions options, out SessionDetails outSessionHandle) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var outSessionHandleAddress = System.IntPtr.Zero; - var funcResult = EOS_Sessions_CopySessionHandleByInviteId(InnerHandle, optionsAddress, ref outSessionHandleAddress); + var funcResult = Bindings.EOS_Sessions_CopySessionHandleByInviteId(InnerHandle, optionsAddress, ref outSessionHandleAddress); Helper.TryMarshalDispose(ref optionsAddress); @@ -343,12 +343,12 @@ public Result CopySessionHandleByInviteId(CopySessionHandleByInviteIdOptions opt /// public Result CopySessionHandleByUiEventId(CopySessionHandleByUiEventIdOptions options, out SessionDetails outSessionHandle) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var outSessionHandleAddress = System.IntPtr.Zero; - var funcResult = EOS_Sessions_CopySessionHandleByUiEventId(InnerHandle, optionsAddress, ref outSessionHandleAddress); + var funcResult = Bindings.EOS_Sessions_CopySessionHandleByUiEventId(InnerHandle, optionsAddress, ref outSessionHandleAddress); Helper.TryMarshalDispose(ref optionsAddress); @@ -373,12 +373,12 @@ public Result CopySessionHandleByUiEventId(CopySessionHandleByUiEventIdOptions o /// public Result CopySessionHandleForPresence(CopySessionHandleForPresenceOptions options, out SessionDetails outSessionHandle) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var outSessionHandleAddress = System.IntPtr.Zero; - var funcResult = EOS_Sessions_CopySessionHandleForPresence(InnerHandle, optionsAddress, ref outSessionHandleAddress); + var funcResult = Bindings.EOS_Sessions_CopySessionHandleForPresence(InnerHandle, optionsAddress, ref outSessionHandleAddress); Helper.TryMarshalDispose(ref optionsAddress); @@ -401,12 +401,12 @@ public Result CopySessionHandleForPresence(CopySessionHandleForPresenceOptions o /// public Result CreateSessionModification(CreateSessionModificationOptions options, out SessionModification outSessionModificationHandle) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var outSessionModificationHandleAddress = System.IntPtr.Zero; - var funcResult = EOS_Sessions_CreateSessionModification(InnerHandle, optionsAddress, ref outSessionModificationHandleAddress); + var funcResult = Bindings.EOS_Sessions_CreateSessionModification(InnerHandle, optionsAddress, ref outSessionModificationHandleAddress); Helper.TryMarshalDispose(ref optionsAddress); @@ -430,12 +430,12 @@ public Result CreateSessionModification(CreateSessionModificationOptions options /// public Result CreateSessionSearch(CreateSessionSearchOptions options, out SessionSearch outSessionSearchHandle) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var outSessionSearchHandleAddress = System.IntPtr.Zero; - var funcResult = EOS_Sessions_CreateSessionSearch(InnerHandle, optionsAddress, ref outSessionSearchHandleAddress); + var funcResult = Bindings.EOS_Sessions_CreateSessionSearch(InnerHandle, optionsAddress, ref outSessionSearchHandleAddress); Helper.TryMarshalDispose(ref optionsAddress); @@ -458,7 +458,7 @@ public Result CreateSessionSearch(CreateSessionSearchOptions options, out Sessio /// public void DestroySession(DestroySessionOptions options, object clientData, OnDestroySessionCallback completionDelegate) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var clientDataAddress = System.IntPtr.Zero; @@ -466,7 +466,7 @@ public void DestroySession(DestroySessionOptions options, object clientData, OnD var completionDelegateInternal = new OnDestroySessionCallbackInternal(OnDestroySessionCallbackInternalImplementation); Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - EOS_Sessions_DestroySession(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); + Bindings.EOS_Sessions_DestroySession(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); Helper.TryMarshalDispose(ref optionsAddress); } @@ -482,10 +482,10 @@ public void DestroySession(DestroySessionOptions options, object clientData, OnD /// public Result DumpSessionState(DumpSessionStateOptions options) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); - var funcResult = EOS_Sessions_DumpSessionState(InnerHandle, optionsAddress); + var funcResult = Bindings.EOS_Sessions_DumpSessionState(InnerHandle, optionsAddress); Helper.TryMarshalDispose(ref optionsAddress); @@ -506,7 +506,7 @@ public Result DumpSessionState(DumpSessionStateOptions options) /// public void EndSession(EndSessionOptions options, object clientData, OnEndSessionCallback completionDelegate) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var clientDataAddress = System.IntPtr.Zero; @@ -514,7 +514,7 @@ public void EndSession(EndSessionOptions options, object clientData, OnEndSessio var completionDelegateInternal = new OnEndSessionCallbackInternal(OnEndSessionCallbackInternalImplementation); Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - EOS_Sessions_EndSession(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); + Bindings.EOS_Sessions_EndSession(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); Helper.TryMarshalDispose(ref optionsAddress); } @@ -528,10 +528,10 @@ public void EndSession(EndSessionOptions options, object clientData, OnEndSessio /// public uint GetInviteCount(GetInviteCountOptions options) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); - var funcResult = EOS_Sessions_GetInviteCount(InnerHandle, optionsAddress); + var funcResult = Bindings.EOS_Sessions_GetInviteCount(InnerHandle, optionsAddress); Helper.TryMarshalDispose(ref optionsAddress); @@ -551,14 +551,14 @@ public uint GetInviteCount(GetInviteCountOptions options) /// public Result GetInviteIdByIndex(GetInviteIdByIndexOptions options, out string outBuffer) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); System.IntPtr outBufferAddress = System.IntPtr.Zero; int inOutBufferLength = InviteidMaxLength + 1; - Helper.TryMarshalAllocate(ref outBufferAddress, inOutBufferLength); + Helper.TryMarshalAllocate(ref outBufferAddress, inOutBufferLength, out _); - var funcResult = EOS_Sessions_GetInviteIdByIndex(InnerHandle, optionsAddress, outBufferAddress, ref inOutBufferLength); + var funcResult = Bindings.EOS_Sessions_GetInviteIdByIndex(InnerHandle, optionsAddress, outBufferAddress, ref inOutBufferLength); Helper.TryMarshalDispose(ref optionsAddress); @@ -582,10 +582,10 @@ public Result GetInviteIdByIndex(GetInviteIdByIndexOptions options, out string o /// public Result IsUserInSession(IsUserInSessionOptions options) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); - var funcResult = EOS_Sessions_IsUserInSession(InnerHandle, optionsAddress); + var funcResult = Bindings.EOS_Sessions_IsUserInSession(InnerHandle, optionsAddress); Helper.TryMarshalDispose(ref optionsAddress); @@ -605,7 +605,7 @@ public Result IsUserInSession(IsUserInSessionOptions options) /// public void JoinSession(JoinSessionOptions options, object clientData, OnJoinSessionCallback completionDelegate) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var clientDataAddress = System.IntPtr.Zero; @@ -613,7 +613,7 @@ public void JoinSession(JoinSessionOptions options, object clientData, OnJoinSes var completionDelegateInternal = new OnJoinSessionCallbackInternal(OnJoinSessionCallbackInternalImplementation); Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - EOS_Sessions_JoinSession(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); + Bindings.EOS_Sessions_JoinSession(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); Helper.TryMarshalDispose(ref optionsAddress); } @@ -626,7 +626,7 @@ public void JoinSession(JoinSessionOptions options, object clientData, OnJoinSes /// A callback that is fired when the query invites operation completes, either successfully or in error public void QueryInvites(QueryInvitesOptions options, object clientData, OnQueryInvitesCallback completionDelegate) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var clientDataAddress = System.IntPtr.Zero; @@ -634,7 +634,7 @@ public void QueryInvites(QueryInvitesOptions options, object clientData, OnQuery var completionDelegateInternal = new OnQueryInvitesCallbackInternal(OnQueryInvitesCallbackInternalImplementation); Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - EOS_Sessions_QueryInvites(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); + Bindings.EOS_Sessions_QueryInvites(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); Helper.TryMarshalDispose(ref optionsAddress); } @@ -654,7 +654,7 @@ public void QueryInvites(QueryInvitesOptions options, object clientData, OnQuery /// public void RegisterPlayers(RegisterPlayersOptions options, object clientData, OnRegisterPlayersCallback completionDelegate) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var clientDataAddress = System.IntPtr.Zero; @@ -662,7 +662,7 @@ public void RegisterPlayers(RegisterPlayersOptions options, object clientData, O var completionDelegateInternal = new OnRegisterPlayersCallbackInternal(OnRegisterPlayersCallbackInternalImplementation); Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - EOS_Sessions_RegisterPlayers(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); + Bindings.EOS_Sessions_RegisterPlayers(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); Helper.TryMarshalDispose(ref optionsAddress); } @@ -680,7 +680,7 @@ public void RegisterPlayers(RegisterPlayersOptions options, object clientData, O /// public void RejectInvite(RejectInviteOptions options, object clientData, OnRejectInviteCallback completionDelegate) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var clientDataAddress = System.IntPtr.Zero; @@ -688,7 +688,7 @@ public void RejectInvite(RejectInviteOptions options, object clientData, OnRejec var completionDelegateInternal = new OnRejectInviteCallbackInternal(OnRejectInviteCallbackInternalImplementation); Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - EOS_Sessions_RejectInvite(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); + Bindings.EOS_Sessions_RejectInvite(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); Helper.TryMarshalDispose(ref optionsAddress); } @@ -701,7 +701,7 @@ public void RemoveNotifyJoinSessionAccepted(ulong inId) { Helper.TryRemoveCallbackByNotificationId(inId); - EOS_Sessions_RemoveNotifyJoinSessionAccepted(InnerHandle, inId); + Bindings.EOS_Sessions_RemoveNotifyJoinSessionAccepted(InnerHandle, inId); } /// @@ -712,7 +712,7 @@ public void RemoveNotifySessionInviteAccepted(ulong inId) { Helper.TryRemoveCallbackByNotificationId(inId); - EOS_Sessions_RemoveNotifySessionInviteAccepted(InnerHandle, inId); + Bindings.EOS_Sessions_RemoveNotifySessionInviteAccepted(InnerHandle, inId); } /// @@ -723,7 +723,7 @@ public void RemoveNotifySessionInviteReceived(ulong inId) { Helper.TryRemoveCallbackByNotificationId(inId); - EOS_Sessions_RemoveNotifySessionInviteReceived(InnerHandle, inId); + Bindings.EOS_Sessions_RemoveNotifySessionInviteReceived(InnerHandle, inId); } /// @@ -739,7 +739,7 @@ public void RemoveNotifySessionInviteReceived(ulong inId) /// public void SendInvite(SendInviteOptions options, object clientData, OnSendInviteCallback completionDelegate) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var clientDataAddress = System.IntPtr.Zero; @@ -747,7 +747,7 @@ public void SendInvite(SendInviteOptions options, object clientData, OnSendInvit var completionDelegateInternal = new OnSendInviteCallbackInternal(OnSendInviteCallbackInternalImplementation); Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - EOS_Sessions_SendInvite(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); + Bindings.EOS_Sessions_SendInvite(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); Helper.TryMarshalDispose(ref optionsAddress); } @@ -766,7 +766,7 @@ public void SendInvite(SendInviteOptions options, object clientData, OnSendInvit /// public void StartSession(StartSessionOptions options, object clientData, OnStartSessionCallback completionDelegate) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var clientDataAddress = System.IntPtr.Zero; @@ -774,7 +774,7 @@ public void StartSession(StartSessionOptions options, object clientData, OnStart var completionDelegateInternal = new OnStartSessionCallbackInternal(OnStartSessionCallbackInternalImplementation); Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - EOS_Sessions_StartSession(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); + Bindings.EOS_Sessions_StartSession(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); Helper.TryMarshalDispose(ref optionsAddress); } @@ -794,7 +794,7 @@ public void StartSession(StartSessionOptions options, object clientData, OnStart /// public void UnregisterPlayers(UnregisterPlayersOptions options, object clientData, OnUnregisterPlayersCallback completionDelegate) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var clientDataAddress = System.IntPtr.Zero; @@ -802,7 +802,7 @@ public void UnregisterPlayers(UnregisterPlayersOptions options, object clientDat var completionDelegateInternal = new OnUnregisterPlayersCallbackInternal(OnUnregisterPlayersCallbackInternalImplementation); Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - EOS_Sessions_UnregisterPlayers(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); + Bindings.EOS_Sessions_UnregisterPlayers(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); Helper.TryMarshalDispose(ref optionsAddress); } @@ -821,7 +821,7 @@ public void UnregisterPlayers(UnregisterPlayersOptions options, object clientDat /// public void UpdateSession(UpdateSessionOptions options, object clientData, OnUpdateSessionCallback completionDelegate) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var clientDataAddress = System.IntPtr.Zero; @@ -829,7 +829,7 @@ public void UpdateSession(UpdateSessionOptions options, object clientData, OnUpd var completionDelegateInternal = new OnUpdateSessionCallbackInternal(OnUpdateSessionCallbackInternalImplementation); Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - EOS_Sessions_UpdateSession(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); + Bindings.EOS_Sessions_UpdateSession(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); Helper.TryMarshalDispose(ref optionsAddress); } @@ -848,12 +848,12 @@ public void UpdateSession(UpdateSessionOptions options, object clientData, OnUpd /// public Result UpdateSessionModification(UpdateSessionModificationOptions options, out SessionModification outSessionModificationHandle) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var outSessionModificationHandleAddress = System.IntPtr.Zero; - var funcResult = EOS_Sessions_UpdateSessionModification(InnerHandle, optionsAddress, ref outSessionModificationHandleAddress); + var funcResult = Bindings.EOS_Sessions_UpdateSessionModification(InnerHandle, optionsAddress, ref outSessionModificationHandleAddress); Helper.TryMarshalDispose(ref optionsAddress); @@ -1004,86 +1004,5 @@ internal static void OnUpdateSessionCallbackInternalImplementation(System.IntPtr callback(callbackInfo); } } - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern ulong EOS_Sessions_AddNotifyJoinSessionAccepted(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, OnJoinSessionAcceptedCallbackInternal notificationFn); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern ulong EOS_Sessions_AddNotifySessionInviteAccepted(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, OnSessionInviteAcceptedCallbackInternal notificationFn); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern ulong EOS_Sessions_AddNotifySessionInviteReceived(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, OnSessionInviteReceivedCallbackInternal notificationFn); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_Sessions_CopyActiveSessionHandle(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outSessionHandle); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_Sessions_CopySessionHandleByInviteId(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outSessionHandle); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_Sessions_CopySessionHandleByUiEventId(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outSessionHandle); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_Sessions_CopySessionHandleForPresence(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outSessionHandle); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_Sessions_CreateSessionModification(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outSessionModificationHandle); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_Sessions_CreateSessionSearch(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outSessionSearchHandle); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern void EOS_Sessions_DestroySession(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, OnDestroySessionCallbackInternal completionDelegate); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_Sessions_DumpSessionState(System.IntPtr handle, System.IntPtr options); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern void EOS_Sessions_EndSession(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, OnEndSessionCallbackInternal completionDelegate); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern uint EOS_Sessions_GetInviteCount(System.IntPtr handle, System.IntPtr options); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_Sessions_GetInviteIdByIndex(System.IntPtr handle, System.IntPtr options, System.IntPtr outBuffer, ref int inOutBufferLength); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_Sessions_IsUserInSession(System.IntPtr handle, System.IntPtr options); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern void EOS_Sessions_JoinSession(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, OnJoinSessionCallbackInternal completionDelegate); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern void EOS_Sessions_QueryInvites(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, OnQueryInvitesCallbackInternal completionDelegate); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern void EOS_Sessions_RegisterPlayers(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, OnRegisterPlayersCallbackInternal completionDelegate); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern void EOS_Sessions_RejectInvite(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, OnRejectInviteCallbackInternal completionDelegate); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern void EOS_Sessions_RemoveNotifyJoinSessionAccepted(System.IntPtr handle, ulong inId); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern void EOS_Sessions_RemoveNotifySessionInviteAccepted(System.IntPtr handle, ulong inId); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern void EOS_Sessions_RemoveNotifySessionInviteReceived(System.IntPtr handle, ulong inId); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern void EOS_Sessions_SendInvite(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, OnSendInviteCallbackInternal completionDelegate); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern void EOS_Sessions_StartSession(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, OnStartSessionCallbackInternal completionDelegate); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern void EOS_Sessions_UnregisterPlayers(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, OnUnregisterPlayersCallbackInternal completionDelegate); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern void EOS_Sessions_UpdateSession(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, OnUpdateSessionCallbackInternal completionDelegate); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_Sessions_UpdateSessionModification(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outSessionModificationHandle); } } \ No newline at end of file diff --git a/EOSSDK/Generated/Sessions/UpdateSessionOptions.cs b/EOSSDK/Generated/Sessions/UpdateSessionOptions.cs index 90a495ba..2317aafb 100644 --- a/EOSSDK/Generated/Sessions/UpdateSessionOptions.cs +++ b/EOSSDK/Generated/Sessions/UpdateSessionOptions.cs @@ -41,6 +41,7 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_SessionModificationHandle); } } } \ No newline at end of file diff --git a/EOSSDK/Generated/Stats/CopyStatByIndexOptions.cs b/EOSSDK/Generated/Stats/CopyStatByIndexOptions.cs index 284cf591..6aa0c125 100644 --- a/EOSSDK/Generated/Stats/CopyStatByIndexOptions.cs +++ b/EOSSDK/Generated/Stats/CopyStatByIndexOptions.cs @@ -59,6 +59,7 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_TargetUserId); } } } \ No newline at end of file diff --git a/EOSSDK/Generated/Stats/CopyStatByNameOptions.cs b/EOSSDK/Generated/Stats/CopyStatByNameOptions.cs index 3041d5a5..1c2359c2 100644 --- a/EOSSDK/Generated/Stats/CopyStatByNameOptions.cs +++ b/EOSSDK/Generated/Stats/CopyStatByNameOptions.cs @@ -59,6 +59,7 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_TargetUserId); Helper.TryMarshalDispose(ref m_Name); } } diff --git a/EOSSDK/Generated/Stats/GetStatCountOptions.cs b/EOSSDK/Generated/Stats/GetStatCountOptions.cs index 36ca9406..3153cca9 100644 --- a/EOSSDK/Generated/Stats/GetStatCountOptions.cs +++ b/EOSSDK/Generated/Stats/GetStatCountOptions.cs @@ -44,6 +44,7 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_TargetUserId); } } } \ No newline at end of file diff --git a/EOSSDK/Generated/Stats/IngestStatOptions.cs b/EOSSDK/Generated/Stats/IngestStatOptions.cs index 69ef9830..008c56b6 100644 --- a/EOSSDK/Generated/Stats/IngestStatOptions.cs +++ b/EOSSDK/Generated/Stats/IngestStatOptions.cs @@ -75,7 +75,9 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_LocalUserId); Helper.TryMarshalDispose(ref m_Stats); + Helper.TryMarshalDispose(ref m_TargetUserId); } } } \ No newline at end of file diff --git a/EOSSDK/Generated/Stats/OnIngestStatCompleteCallback.cs b/EOSSDK/Generated/Stats/OnIngestStatCompleteCallback.cs index faefa0b2..3caf4ad4 100644 --- a/EOSSDK/Generated/Stats/OnIngestStatCompleteCallback.cs +++ b/EOSSDK/Generated/Stats/OnIngestStatCompleteCallback.cs @@ -9,5 +9,6 @@ namespace Epic.OnlineServices.Stats /// A containing the output information and result public delegate void OnIngestStatCompleteCallback(IngestStatCompleteCallbackInfo data); + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] internal delegate void OnIngestStatCompleteCallbackInternal(System.IntPtr data); } \ No newline at end of file diff --git a/EOSSDK/Generated/Stats/OnQueryStatsCompleteCallback.cs b/EOSSDK/Generated/Stats/OnQueryStatsCompleteCallback.cs index d7b80973..7512624b 100644 --- a/EOSSDK/Generated/Stats/OnQueryStatsCompleteCallback.cs +++ b/EOSSDK/Generated/Stats/OnQueryStatsCompleteCallback.cs @@ -10,5 +10,6 @@ namespace Epic.OnlineServices.Stats /// A containing the output information and result public delegate void OnQueryStatsCompleteCallback(OnQueryStatsCompleteCallbackInfo data); + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] internal delegate void OnQueryStatsCompleteCallbackInternal(System.IntPtr data); } \ No newline at end of file diff --git a/EOSSDK/Generated/Stats/QueryStatsOptions.cs b/EOSSDK/Generated/Stats/QueryStatsOptions.cs index 12d1ef0d..90d40d0e 100644 --- a/EOSSDK/Generated/Stats/QueryStatsOptions.cs +++ b/EOSSDK/Generated/Stats/QueryStatsOptions.cs @@ -105,7 +105,9 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_LocalUserId); Helper.TryMarshalDispose(ref m_StatNames); + Helper.TryMarshalDispose(ref m_TargetUserId); } } } \ No newline at end of file diff --git a/EOSSDK/Generated/Stats/StatsInterface.cs b/EOSSDK/Generated/Stats/StatsInterface.cs index 471bc5de..a9f871d8 100644 --- a/EOSSDK/Generated/Stats/StatsInterface.cs +++ b/EOSSDK/Generated/Stats/StatsInterface.cs @@ -3,7 +3,7 @@ namespace Epic.OnlineServices.Stats { - public sealed class StatsInterface : Handle + public sealed partial class StatsInterface : Handle { public StatsInterface() { @@ -41,7 +41,7 @@ public StatsInterface(System.IntPtr innerHandle) : base(innerHandle) /// /// The most recent version of the struct. /// - public const int IngeststatApiLatest = 2; + public const int IngeststatApiLatest = 3; /// /// Maximum number of stats that can be ingested in a single operation. @@ -56,7 +56,7 @@ public StatsInterface(System.IntPtr innerHandle) : base(innerHandle) /// /// The most recent version of the struct. /// - public const int QuerystatsApiLatest = 2; + public const int QuerystatsApiLatest = 3; /// /// The most recent version of the struct. @@ -81,18 +81,18 @@ public StatsInterface(System.IntPtr innerHandle) : base(innerHandle) /// public Result CopyStatByIndex(CopyStatByIndexOptions options, out Stat outStat) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var outStatAddress = System.IntPtr.Zero; - var funcResult = EOS_Stats_CopyStatByIndex(InnerHandle, optionsAddress, ref outStatAddress); + var funcResult = Bindings.EOS_Stats_CopyStatByIndex(InnerHandle, optionsAddress, ref outStatAddress); Helper.TryMarshalDispose(ref optionsAddress); if (Helper.TryMarshalGet(outStatAddress, out outStat)) { - EOS_Stats_Stat_Release(outStatAddress); + Bindings.EOS_Stats_Stat_Release(outStatAddress); } return funcResult; @@ -111,18 +111,18 @@ public Result CopyStatByIndex(CopyStatByIndexOptions options, out Stat outStat) /// public Result CopyStatByName(CopyStatByNameOptions options, out Stat outStat) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var outStatAddress = System.IntPtr.Zero; - var funcResult = EOS_Stats_CopyStatByName(InnerHandle, optionsAddress, ref outStatAddress); + var funcResult = Bindings.EOS_Stats_CopyStatByName(InnerHandle, optionsAddress, ref outStatAddress); Helper.TryMarshalDispose(ref optionsAddress); if (Helper.TryMarshalGet(outStatAddress, out outStat)) { - EOS_Stats_Stat_Release(outStatAddress); + Bindings.EOS_Stats_Stat_Release(outStatAddress); } return funcResult; @@ -138,10 +138,10 @@ public Result CopyStatByName(CopyStatByNameOptions options, out Stat outStat) /// public uint GetStatsCount(GetStatCountOptions options) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); - var funcResult = EOS_Stats_GetStatsCount(InnerHandle, optionsAddress); + var funcResult = Bindings.EOS_Stats_GetStatsCount(InnerHandle, optionsAddress); Helper.TryMarshalDispose(ref optionsAddress); @@ -163,7 +163,7 @@ public uint GetStatsCount(GetStatCountOptions options) /// public void IngestStat(IngestStatOptions options, object clientData, OnIngestStatCompleteCallback completionDelegate) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var clientDataAddress = System.IntPtr.Zero; @@ -171,7 +171,7 @@ public void IngestStat(IngestStatOptions options, object clientData, OnIngestSta var completionDelegateInternal = new OnIngestStatCompleteCallbackInternal(OnIngestStatCompleteCallbackInternalImplementation); Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - EOS_Stats_IngestStat(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); + Bindings.EOS_Stats_IngestStat(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); Helper.TryMarshalDispose(ref optionsAddress); } @@ -189,7 +189,7 @@ public void IngestStat(IngestStatOptions options, object clientData, OnIngestSta /// public void QueryStats(QueryStatsOptions options, object clientData, OnQueryStatsCompleteCallback completionDelegate) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var clientDataAddress = System.IntPtr.Zero; @@ -197,7 +197,7 @@ public void QueryStats(QueryStatsOptions options, object clientData, OnQueryStat var completionDelegateInternal = new OnQueryStatsCompleteCallbackInternal(OnQueryStatsCompleteCallbackInternalImplementation); Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - EOS_Stats_QueryStats(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); + Bindings.EOS_Stats_QueryStats(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); Helper.TryMarshalDispose(ref optionsAddress); } @@ -223,23 +223,5 @@ internal static void OnQueryStatsCompleteCallbackInternalImplementation(System.I callback(callbackInfo); } } - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_Stats_CopyStatByIndex(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outStat); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_Stats_CopyStatByName(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outStat); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern uint EOS_Stats_GetStatsCount(System.IntPtr handle, System.IntPtr options); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern void EOS_Stats_IngestStat(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, OnIngestStatCompleteCallbackInternal completionDelegate); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern void EOS_Stats_QueryStats(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, OnQueryStatsCompleteCallbackInternal completionDelegate); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern void EOS_Stats_Stat_Release(System.IntPtr stat); } } \ No newline at end of file diff --git a/EOSSDK/Generated/TitleStorage/CopyFileMetadataAtIndexOptions.cs b/EOSSDK/Generated/TitleStorage/CopyFileMetadataAtIndexOptions.cs index fd117486..14ac4855 100644 --- a/EOSSDK/Generated/TitleStorage/CopyFileMetadataAtIndexOptions.cs +++ b/EOSSDK/Generated/TitleStorage/CopyFileMetadataAtIndexOptions.cs @@ -59,6 +59,7 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_LocalUserId); } } } \ No newline at end of file diff --git a/EOSSDK/Generated/TitleStorage/CopyFileMetadataByFilenameOptions.cs b/EOSSDK/Generated/TitleStorage/CopyFileMetadataByFilenameOptions.cs index bd26f48b..632826f2 100644 --- a/EOSSDK/Generated/TitleStorage/CopyFileMetadataByFilenameOptions.cs +++ b/EOSSDK/Generated/TitleStorage/CopyFileMetadataByFilenameOptions.cs @@ -59,6 +59,7 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_LocalUserId); Helper.TryMarshalDispose(ref m_Filename); } } diff --git a/EOSSDK/Generated/TitleStorage/DeleteCacheOptions.cs b/EOSSDK/Generated/TitleStorage/DeleteCacheOptions.cs index 5d35ed19..9c48d672 100644 --- a/EOSSDK/Generated/TitleStorage/DeleteCacheOptions.cs +++ b/EOSSDK/Generated/TitleStorage/DeleteCacheOptions.cs @@ -44,6 +44,7 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_LocalUserId); } } } \ No newline at end of file diff --git a/EOSSDK/Generated/TitleStorage/FileMetadata.cs b/EOSSDK/Generated/TitleStorage/FileMetadata.cs index cf57a8d0..53159fbe 100644 --- a/EOSSDK/Generated/TitleStorage/FileMetadata.cs +++ b/EOSSDK/Generated/TitleStorage/FileMetadata.cs @@ -23,6 +23,11 @@ public class FileMetadata : ISettable /// public string Filename { get; set; } + /// + /// The size of data (payload) in file in unencrypted (original) form. + /// + public uint UnencryptedDataSizeBytes { get; set; } + internal void Set(FileMetadataInternal? other) { if (other != null) @@ -30,6 +35,7 @@ internal void Set(FileMetadataInternal? other) FileSizeBytes = other.Value.FileSizeBytes; MD5Hash = other.Value.MD5Hash; Filename = other.Value.Filename; + UnencryptedDataSizeBytes = other.Value.UnencryptedDataSizeBytes; } } @@ -46,6 +52,7 @@ internal struct FileMetadataInternal : ISettable, System.IDisposable private uint m_FileSizeBytes; private System.IntPtr m_MD5Hash; private System.IntPtr m_Filename; + private uint m_UnencryptedDataSizeBytes; public uint FileSizeBytes { @@ -90,6 +97,19 @@ public string Filename } } + public uint UnencryptedDataSizeBytes + { + get + { + return m_UnencryptedDataSizeBytes; + } + + set + { + m_UnencryptedDataSizeBytes = value; + } + } + public void Set(FileMetadata other) { if (other != null) @@ -98,6 +118,7 @@ public void Set(FileMetadata other) FileSizeBytes = other.FileSizeBytes; MD5Hash = other.MD5Hash; Filename = other.Filename; + UnencryptedDataSizeBytes = other.UnencryptedDataSizeBytes; } } diff --git a/EOSSDK/Generated/TitleStorage/GetFileMetadataCountOptions.cs b/EOSSDK/Generated/TitleStorage/GetFileMetadataCountOptions.cs index bc989697..fcb9450a 100644 --- a/EOSSDK/Generated/TitleStorage/GetFileMetadataCountOptions.cs +++ b/EOSSDK/Generated/TitleStorage/GetFileMetadataCountOptions.cs @@ -44,6 +44,7 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_LocalUserId); } } } \ No newline at end of file diff --git a/EOSSDK/Generated/TitleStorage/OnDeleteCacheCompleteCallback.cs b/EOSSDK/Generated/TitleStorage/OnDeleteCacheCompleteCallback.cs index 2b28a9ab..ab02f06d 100644 --- a/EOSSDK/Generated/TitleStorage/OnDeleteCacheCompleteCallback.cs +++ b/EOSSDK/Generated/TitleStorage/OnDeleteCacheCompleteCallback.cs @@ -8,5 +8,6 @@ namespace Epic.OnlineServices.TitleStorage /// public delegate void OnDeleteCacheCompleteCallback(DeleteCacheCallbackInfo data); + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] internal delegate void OnDeleteCacheCompleteCallbackInternal(System.IntPtr data); } \ No newline at end of file diff --git a/EOSSDK/Generated/TitleStorage/OnFileTransferProgressCallback.cs b/EOSSDK/Generated/TitleStorage/OnFileTransferProgressCallback.cs index 15a7eeec..ca0e84d2 100644 --- a/EOSSDK/Generated/TitleStorage/OnFileTransferProgressCallback.cs +++ b/EOSSDK/Generated/TitleStorage/OnFileTransferProgressCallback.cs @@ -8,5 +8,6 @@ namespace Epic.OnlineServices.TitleStorage /// public delegate void OnFileTransferProgressCallback(FileTransferProgressCallbackInfo data); + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] internal delegate void OnFileTransferProgressCallbackInternal(System.IntPtr data); } \ No newline at end of file diff --git a/EOSSDK/Generated/TitleStorage/OnQueryFileCompleteCallback.cs b/EOSSDK/Generated/TitleStorage/OnQueryFileCompleteCallback.cs index 9c8988a4..ece261bc 100644 --- a/EOSSDK/Generated/TitleStorage/OnQueryFileCompleteCallback.cs +++ b/EOSSDK/Generated/TitleStorage/OnQueryFileCompleteCallback.cs @@ -8,5 +8,6 @@ namespace Epic.OnlineServices.TitleStorage /// public delegate void OnQueryFileCompleteCallback(QueryFileCallbackInfo data); + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] internal delegate void OnQueryFileCompleteCallbackInternal(System.IntPtr data); } \ No newline at end of file diff --git a/EOSSDK/Generated/TitleStorage/OnQueryFileListCompleteCallback.cs b/EOSSDK/Generated/TitleStorage/OnQueryFileListCompleteCallback.cs index f9f392d7..e2a033b2 100644 --- a/EOSSDK/Generated/TitleStorage/OnQueryFileListCompleteCallback.cs +++ b/EOSSDK/Generated/TitleStorage/OnQueryFileListCompleteCallback.cs @@ -8,5 +8,6 @@ namespace Epic.OnlineServices.TitleStorage /// public delegate void OnQueryFileListCompleteCallback(QueryFileListCallbackInfo data); + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] internal delegate void OnQueryFileListCompleteCallbackInternal(System.IntPtr data); } \ No newline at end of file diff --git a/EOSSDK/Generated/TitleStorage/OnReadFileCompleteCallback.cs b/EOSSDK/Generated/TitleStorage/OnReadFileCompleteCallback.cs index 1e2b5080..5554c755 100644 --- a/EOSSDK/Generated/TitleStorage/OnReadFileCompleteCallback.cs +++ b/EOSSDK/Generated/TitleStorage/OnReadFileCompleteCallback.cs @@ -8,5 +8,6 @@ namespace Epic.OnlineServices.TitleStorage /// public delegate void OnReadFileCompleteCallback(ReadFileCallbackInfo data); + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] internal delegate void OnReadFileCompleteCallbackInternal(System.IntPtr data); } \ No newline at end of file diff --git a/EOSSDK/Generated/TitleStorage/OnReadFileDataCallback.cs b/EOSSDK/Generated/TitleStorage/OnReadFileDataCallback.cs index 7cffd738..15736b8b 100644 --- a/EOSSDK/Generated/TitleStorage/OnReadFileDataCallback.cs +++ b/EOSSDK/Generated/TitleStorage/OnReadFileDataCallback.cs @@ -12,5 +12,6 @@ namespace Epic.OnlineServices.TitleStorage /// public delegate ReadResult OnReadFileDataCallback(ReadFileDataCallbackInfo data); + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] internal delegate ReadResult OnReadFileDataCallbackInternal(System.IntPtr data); } \ No newline at end of file diff --git a/EOSSDK/Generated/TitleStorage/QueryFileListOptions.cs b/EOSSDK/Generated/TitleStorage/QueryFileListOptions.cs index a85df6fd..1f9ddef3 100644 --- a/EOSSDK/Generated/TitleStorage/QueryFileListOptions.cs +++ b/EOSSDK/Generated/TitleStorage/QueryFileListOptions.cs @@ -60,6 +60,7 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_LocalUserId); Helper.TryMarshalDispose(ref m_ListOfTags); } } diff --git a/EOSSDK/Generated/TitleStorage/QueryFileOptions.cs b/EOSSDK/Generated/TitleStorage/QueryFileOptions.cs index a012c972..20b02c8a 100644 --- a/EOSSDK/Generated/TitleStorage/QueryFileOptions.cs +++ b/EOSSDK/Generated/TitleStorage/QueryFileOptions.cs @@ -59,6 +59,7 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_LocalUserId); Helper.TryMarshalDispose(ref m_Filename); } } diff --git a/EOSSDK/Generated/TitleStorage/ReadFileOptions.cs b/EOSSDK/Generated/TitleStorage/ReadFileOptions.cs index 11aa90db..4782e791 100644 --- a/EOSSDK/Generated/TitleStorage/ReadFileOptions.cs +++ b/EOSSDK/Generated/TitleStorage/ReadFileOptions.cs @@ -41,8 +41,8 @@ internal struct ReadFileOptionsInternal : ISettable, System.IDisposable private System.IntPtr m_LocalUserId; private System.IntPtr m_Filename; private uint m_ReadChunkLengthBytes; - private OnReadFileDataCallbackInternal m_ReadFileDataCallback; - private OnFileTransferProgressCallbackInternal m_FileTransferProgressCallback; + private System.IntPtr m_ReadFileDataCallback; + private System.IntPtr m_FileTransferProgressCallback; public ProductUserId LocalUserId { @@ -104,8 +104,8 @@ public void Set(ReadFileOptions other) LocalUserId = other.LocalUserId; Filename = other.Filename; ReadChunkLengthBytes = other.ReadChunkLengthBytes; - m_ReadFileDataCallback = other.ReadFileDataCallback != null ? ReadFileDataCallback : null; - m_FileTransferProgressCallback = other.FileTransferProgressCallback != null ? FileTransferProgressCallback : null; + m_ReadFileDataCallback = other.ReadFileDataCallback != null ? System.Runtime.InteropServices.Marshal.GetFunctionPointerForDelegate(ReadFileDataCallback) : System.IntPtr.Zero; + m_FileTransferProgressCallback = other.FileTransferProgressCallback != null ? System.Runtime.InteropServices.Marshal.GetFunctionPointerForDelegate(FileTransferProgressCallback) : System.IntPtr.Zero; } } @@ -116,7 +116,10 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_LocalUserId); Helper.TryMarshalDispose(ref m_Filename); + Helper.TryMarshalDispose(ref m_ReadFileDataCallback); + Helper.TryMarshalDispose(ref m_FileTransferProgressCallback); } } } \ No newline at end of file diff --git a/EOSSDK/Generated/TitleStorage/TitleStorageFileTransferRequest.cs b/EOSSDK/Generated/TitleStorage/TitleStorageFileTransferRequest.cs index b80a49c4..2cc40c6b 100644 --- a/EOSSDK/Generated/TitleStorage/TitleStorageFileTransferRequest.cs +++ b/EOSSDK/Generated/TitleStorage/TitleStorageFileTransferRequest.cs @@ -3,7 +3,7 @@ namespace Epic.OnlineServices.TitleStorage { - public sealed class TitleStorageFileTransferRequest : Handle + public sealed partial class TitleStorageFileTransferRequest : Handle { public TitleStorageFileTransferRequest() { @@ -21,7 +21,7 @@ public TitleStorageFileTransferRequest(System.IntPtr innerHandle) : base(innerHa /// public Result CancelRequest() { - var funcResult = EOS_TitleStorageFileTransferRequest_CancelRequest(InnerHandle); + var funcResult = Bindings.EOS_TitleStorageFileTransferRequest_CancelRequest(InnerHandle); return funcResult; } @@ -34,7 +34,7 @@ public Result CancelRequest() /// public Result GetFileRequestState() { - var funcResult = EOS_TitleStorageFileTransferRequest_GetFileRequestState(InnerHandle); + var funcResult = Bindings.EOS_TitleStorageFileTransferRequest_GetFileRequestState(InnerHandle); return funcResult; } @@ -53,9 +53,9 @@ public Result GetFilename(out string outStringBuffer) { System.IntPtr outStringBufferAddress = System.IntPtr.Zero; int outStringLength = TitleStorageInterface.FilenameMaxLengthBytes; - Helper.TryMarshalAllocate(ref outStringBufferAddress, outStringLength); + Helper.TryMarshalAllocate(ref outStringBufferAddress, outStringLength, out _); - var funcResult = EOS_TitleStorageFileTransferRequest_GetFilename(InnerHandle, (uint)outStringLength, outStringBufferAddress, ref outStringLength); + var funcResult = Bindings.EOS_TitleStorageFileTransferRequest_GetFilename(InnerHandle, (uint)outStringLength, outStringBufferAddress, ref outStringLength); Helper.TryMarshalGet(outStringBufferAddress, out outStringBuffer); Helper.TryMarshalDispose(ref outStringBufferAddress); @@ -68,19 +68,7 @@ public Result GetFilename(out string outStringBuffer) /// public void Release() { - EOS_TitleStorageFileTransferRequest_Release(InnerHandle); + Bindings.EOS_TitleStorageFileTransferRequest_Release(InnerHandle); } - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_TitleStorageFileTransferRequest_CancelRequest(System.IntPtr handle); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_TitleStorageFileTransferRequest_GetFileRequestState(System.IntPtr handle); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_TitleStorageFileTransferRequest_GetFilename(System.IntPtr handle, uint filenameStringBufferSizeBytes, System.IntPtr outStringBuffer, ref int outStringLength); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern void EOS_TitleStorageFileTransferRequest_Release(System.IntPtr titleStorageFileTransferHandle); } } \ No newline at end of file diff --git a/EOSSDK/Generated/TitleStorage/TitleStorageInterface.cs b/EOSSDK/Generated/TitleStorage/TitleStorageInterface.cs index 6183a1a4..63e80b47 100644 --- a/EOSSDK/Generated/TitleStorage/TitleStorageInterface.cs +++ b/EOSSDK/Generated/TitleStorage/TitleStorageInterface.cs @@ -3,7 +3,7 @@ namespace Epic.OnlineServices.TitleStorage { - public sealed class TitleStorageInterface : Handle + public sealed partial class TitleStorageInterface : Handle { public TitleStorageInterface() { @@ -31,7 +31,7 @@ public TitleStorageInterface(System.IntPtr innerHandle) : base(innerHandle) /// /// The most recent version of the API. /// - public const int FilemetadataApiLatest = 1; + public const int FilemetadataApiLatest = 2; /// /// Maximum File Name Length in bytes @@ -70,18 +70,18 @@ public TitleStorageInterface(System.IntPtr innerHandle) : base(innerHandle) /// public Result CopyFileMetadataAtIndex(CopyFileMetadataAtIndexOptions options, out FileMetadata outMetadata) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var outMetadataAddress = System.IntPtr.Zero; - var funcResult = EOS_TitleStorage_CopyFileMetadataAtIndex(InnerHandle, optionsAddress, ref outMetadataAddress); + var funcResult = Bindings.EOS_TitleStorage_CopyFileMetadataAtIndex(InnerHandle, optionsAddress, ref outMetadataAddress); Helper.TryMarshalDispose(ref optionsAddress); if (Helper.TryMarshalGet(outMetadataAddress, out outMetadata)) { - EOS_TitleStorage_FileMetadata_Release(outMetadataAddress); + Bindings.EOS_TitleStorage_FileMetadata_Release(outMetadataAddress); } return funcResult; @@ -98,18 +98,18 @@ public Result CopyFileMetadataAtIndex(CopyFileMetadataAtIndexOptions options, ou /// public Result CopyFileMetadataByFilename(CopyFileMetadataByFilenameOptions options, out FileMetadata outMetadata) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var outMetadataAddress = System.IntPtr.Zero; - var funcResult = EOS_TitleStorage_CopyFileMetadataByFilename(InnerHandle, optionsAddress, ref outMetadataAddress); + var funcResult = Bindings.EOS_TitleStorage_CopyFileMetadataByFilename(InnerHandle, optionsAddress, ref outMetadataAddress); Helper.TryMarshalDispose(ref optionsAddress); if (Helper.TryMarshalGet(outMetadataAddress, out outMetadata)) { - EOS_TitleStorage_FileMetadata_Release(outMetadataAddress); + Bindings.EOS_TitleStorage_FileMetadata_Release(outMetadataAddress); } return funcResult; @@ -127,7 +127,7 @@ public Result CopyFileMetadataByFilename(CopyFileMetadataByFilenameOptions optio /// public Result DeleteCache(DeleteCacheOptions options, object clientData, OnDeleteCacheCompleteCallback completionCallback) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var clientDataAddress = System.IntPtr.Zero; @@ -135,7 +135,7 @@ public Result DeleteCache(DeleteCacheOptions options, object clientData, OnDelet var completionCallbackInternal = new OnDeleteCacheCompleteCallbackInternal(OnDeleteCacheCompleteCallbackInternalImplementation); Helper.AddCallback(ref clientDataAddress, clientData, completionCallback, completionCallbackInternal); - var funcResult = EOS_TitleStorage_DeleteCache(InnerHandle, optionsAddress, clientDataAddress, completionCallbackInternal); + var funcResult = Bindings.EOS_TitleStorage_DeleteCache(InnerHandle, optionsAddress, clientDataAddress, completionCallbackInternal); Helper.TryMarshalDispose(ref optionsAddress); @@ -152,10 +152,10 @@ public Result DeleteCache(DeleteCacheOptions options, object clientData, OnDelet /// public uint GetFileMetadataCount(GetFileMetadataCountOptions options) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); - var funcResult = EOS_TitleStorage_GetFileMetadataCount(InnerHandle, optionsAddress); + var funcResult = Bindings.EOS_TitleStorage_GetFileMetadataCount(InnerHandle, optionsAddress); Helper.TryMarshalDispose(ref optionsAddress); @@ -174,7 +174,7 @@ public uint GetFileMetadataCount(GetFileMetadataCountOptions options) /// This function is called when the query operation completes public void QueryFile(QueryFileOptions options, object clientData, OnQueryFileCompleteCallback completionCallback) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var clientDataAddress = System.IntPtr.Zero; @@ -182,7 +182,7 @@ public void QueryFile(QueryFileOptions options, object clientData, OnQueryFileCo var completionCallbackInternal = new OnQueryFileCompleteCallbackInternal(OnQueryFileCompleteCallbackInternalImplementation); Helper.AddCallback(ref clientDataAddress, clientData, completionCallback, completionCallbackInternal); - EOS_TitleStorage_QueryFile(InnerHandle, optionsAddress, clientDataAddress, completionCallbackInternal); + Bindings.EOS_TitleStorage_QueryFile(InnerHandle, optionsAddress, clientDataAddress, completionCallbackInternal); Helper.TryMarshalDispose(ref optionsAddress); } @@ -196,7 +196,7 @@ public void QueryFile(QueryFileOptions options, object clientData, OnQueryFileCo /// This function is called when the query operation completes public void QueryFileList(QueryFileListOptions options, object clientData, OnQueryFileListCompleteCallback completionCallback) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var clientDataAddress = System.IntPtr.Zero; @@ -204,7 +204,7 @@ public void QueryFileList(QueryFileListOptions options, object clientData, OnQue var completionCallbackInternal = new OnQueryFileListCompleteCallbackInternal(OnQueryFileListCompleteCallbackInternalImplementation); Helper.AddCallback(ref clientDataAddress, clientData, completionCallback, completionCallbackInternal); - EOS_TitleStorage_QueryFileList(InnerHandle, optionsAddress, clientDataAddress, completionCallbackInternal); + Bindings.EOS_TitleStorage_QueryFileList(InnerHandle, optionsAddress, clientDataAddress, completionCallbackInternal); Helper.TryMarshalDispose(ref optionsAddress); } @@ -223,7 +223,7 @@ public void QueryFileList(QueryFileListOptions options, object clientData, OnQue /// public TitleStorageFileTransferRequest ReadFile(ReadFileOptions options, object clientData, OnReadFileCompleteCallback completionCallback) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var clientDataAddress = System.IntPtr.Zero; @@ -231,7 +231,7 @@ public TitleStorageFileTransferRequest ReadFile(ReadFileOptions options, object var completionCallbackInternal = new OnReadFileCompleteCallbackInternal(OnReadFileCompleteCallbackInternalImplementation); Helper.AddCallback(ref clientDataAddress, clientData, completionCallback, completionCallbackInternal, options.ReadFileDataCallback, ReadFileOptionsInternal.ReadFileDataCallback, options.FileTransferProgressCallback, ReadFileOptionsInternal.FileTransferProgressCallback); - var funcResult = EOS_TitleStorage_ReadFile(InnerHandle, optionsAddress, clientDataAddress, completionCallbackInternal); + var funcResult = Bindings.EOS_TitleStorage_ReadFile(InnerHandle, optionsAddress, clientDataAddress, completionCallbackInternal); Helper.TryMarshalDispose(ref optionsAddress); @@ -315,29 +315,5 @@ internal static ReadResult OnReadFileDataCallbackInternalImplementation(System.I return Helper.GetDefault(); } - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_TitleStorage_CopyFileMetadataAtIndex(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outMetadata); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_TitleStorage_CopyFileMetadataByFilename(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outMetadata); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_TitleStorage_DeleteCache(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, OnDeleteCacheCompleteCallbackInternal completionCallback); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern uint EOS_TitleStorage_GetFileMetadataCount(System.IntPtr handle, System.IntPtr options); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern void EOS_TitleStorage_QueryFile(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, OnQueryFileCompleteCallbackInternal completionCallback); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern void EOS_TitleStorage_QueryFileList(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, OnQueryFileListCompleteCallbackInternal completionCallback); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern System.IntPtr EOS_TitleStorage_ReadFile(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, OnReadFileCompleteCallbackInternal completionCallback); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern void EOS_TitleStorage_FileMetadata_Release(System.IntPtr fileMetadata); } } \ No newline at end of file diff --git a/EOSSDK/Generated/UI/GetFriendsVisibleOptions.cs b/EOSSDK/Generated/UI/GetFriendsVisibleOptions.cs index fa3c42a1..3526abc0 100644 --- a/EOSSDK/Generated/UI/GetFriendsVisibleOptions.cs +++ b/EOSSDK/Generated/UI/GetFriendsVisibleOptions.cs @@ -44,6 +44,7 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_LocalUserId); } } } \ No newline at end of file diff --git a/EOSSDK/Generated/UI/HideFriendsOptions.cs b/EOSSDK/Generated/UI/HideFriendsOptions.cs index f13e728a..181636de 100644 --- a/EOSSDK/Generated/UI/HideFriendsOptions.cs +++ b/EOSSDK/Generated/UI/HideFriendsOptions.cs @@ -44,6 +44,7 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_LocalUserId); } } } \ No newline at end of file diff --git a/EOSSDK/Generated/UI/OnDisplaySettingsUpdatedCallback.cs b/EOSSDK/Generated/UI/OnDisplaySettingsUpdatedCallback.cs index 810c9f86..94d1beff 100644 --- a/EOSSDK/Generated/UI/OnDisplaySettingsUpdatedCallback.cs +++ b/EOSSDK/Generated/UI/OnDisplaySettingsUpdatedCallback.cs @@ -9,5 +9,6 @@ namespace Epic.OnlineServices.UI /// A containing the current display state. public delegate void OnDisplaySettingsUpdatedCallback(OnDisplaySettingsUpdatedCallbackInfo data); + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] internal delegate void OnDisplaySettingsUpdatedCallbackInternal(System.IntPtr data); } \ No newline at end of file diff --git a/EOSSDK/Generated/UI/OnHideFriendsCallback.cs b/EOSSDK/Generated/UI/OnHideFriendsCallback.cs index 6bd665a0..8d38de85 100644 --- a/EOSSDK/Generated/UI/OnHideFriendsCallback.cs +++ b/EOSSDK/Generated/UI/OnHideFriendsCallback.cs @@ -9,5 +9,6 @@ namespace Epic.OnlineServices.UI /// A containing the output information and result public delegate void OnHideFriendsCallback(HideFriendsCallbackInfo data); + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] internal delegate void OnHideFriendsCallbackInternal(System.IntPtr data); } \ No newline at end of file diff --git a/EOSSDK/Generated/UI/OnShowFriendsCallback.cs b/EOSSDK/Generated/UI/OnShowFriendsCallback.cs index 52b688f9..a309ea43 100644 --- a/EOSSDK/Generated/UI/OnShowFriendsCallback.cs +++ b/EOSSDK/Generated/UI/OnShowFriendsCallback.cs @@ -9,5 +9,6 @@ namespace Epic.OnlineServices.UI /// A containing the output information and result public delegate void OnShowFriendsCallback(ShowFriendsCallbackInfo data); + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] internal delegate void OnShowFriendsCallbackInternal(System.IntPtr data); } \ No newline at end of file diff --git a/EOSSDK/Generated/UI/PrePresentOptions.cs b/EOSSDK/Generated/UI/PrePresentOptions.cs new file mode 100644 index 00000000..d6e633cf --- /dev/null +++ b/EOSSDK/Generated/UI/PrePresentOptions.cs @@ -0,0 +1,50 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.UI +{ + /// + /// Parameters for the function. + /// + public class PrePresentOptions + { + /// + /// Platform specific data. + /// + public System.IntPtr PlatformSpecificData { get; set; } + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct PrePresentOptionsInternal : ISettable, System.IDisposable + { + private int m_ApiVersion; + private System.IntPtr m_PlatformSpecificData; + + public System.IntPtr PlatformSpecificData + { + set + { + m_PlatformSpecificData = value; + } + } + + public void Set(PrePresentOptions other) + { + if (other != null) + { + m_ApiVersion = UIInterface.PrepresentApiLatest; + PlatformSpecificData = other.PlatformSpecificData; + } + } + + public void Set(object other) + { + Set(other as PrePresentOptions); + } + + public void Dispose() + { + Helper.TryMarshalDispose(ref m_PlatformSpecificData); + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/UI/PrePresentOptions.cs.meta b/EOSSDK/Generated/UI/PrePresentOptions.cs.meta new file mode 100644 index 00000000..639ee6cb --- /dev/null +++ b/EOSSDK/Generated/UI/PrePresentOptions.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 35268386f6391d54db20c5f5f3bc8d2a +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/UI/ReportKeyEventOptions.cs b/EOSSDK/Generated/UI/ReportKeyEventOptions.cs new file mode 100644 index 00000000..de364b2e --- /dev/null +++ b/EOSSDK/Generated/UI/ReportKeyEventOptions.cs @@ -0,0 +1,50 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.UI +{ + /// + /// Input parameters for the function. + /// + public class ReportKeyEventOptions + { + /// + /// The input data pushed to the SDK. + /// + public System.IntPtr PlatformSpecificInputData { get; set; } + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct ReportKeyEventOptionsInternal : ISettable, System.IDisposable + { + private int m_ApiVersion; + private System.IntPtr m_PlatformSpecificInputData; + + public System.IntPtr PlatformSpecificInputData + { + set + { + m_PlatformSpecificInputData = value; + } + } + + public void Set(ReportKeyEventOptions other) + { + if (other != null) + { + m_ApiVersion = UIInterface.ReportkeyeventApiLatest; + PlatformSpecificInputData = other.PlatformSpecificInputData; + } + } + + public void Set(object other) + { + Set(other as ReportKeyEventOptions); + } + + public void Dispose() + { + Helper.TryMarshalDispose(ref m_PlatformSpecificInputData); + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/UI/ReportKeyEventOptions.cs.meta b/EOSSDK/Generated/UI/ReportKeyEventOptions.cs.meta new file mode 100644 index 00000000..d868da97 --- /dev/null +++ b/EOSSDK/Generated/UI/ReportKeyEventOptions.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 584f029b2910190409ec230b2faff262 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/UI/ShowFriendsOptions.cs b/EOSSDK/Generated/UI/ShowFriendsOptions.cs index 288c7b80..9840d465 100644 --- a/EOSSDK/Generated/UI/ShowFriendsOptions.cs +++ b/EOSSDK/Generated/UI/ShowFriendsOptions.cs @@ -44,6 +44,7 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_LocalUserId); } } } \ No newline at end of file diff --git a/EOSSDK/Generated/UI/UIInterface.cs b/EOSSDK/Generated/UI/UIInterface.cs index 62e8f5f9..33e05ada 100644 --- a/EOSSDK/Generated/UI/UIInterface.cs +++ b/EOSSDK/Generated/UI/UIInterface.cs @@ -3,7 +3,7 @@ namespace Epic.OnlineServices.UI { - public sealed class UIInterface : Handle + public sealed partial class UIInterface : Handle { public UIInterface() { @@ -48,6 +48,16 @@ public UIInterface(System.IntPtr innerHandle) : base(innerHandle) /// public const int HidefriendsApiLatest = 1; + /// + /// The most recent version of the API. + /// + public const int PrepresentApiLatest = 1; + + /// + /// The most recent version of the API. + /// + public const int ReportkeyeventApiLatest = 1; + /// /// The most recent version of the API. /// @@ -74,10 +84,10 @@ public UIInterface(System.IntPtr innerHandle) : base(innerHandle) /// public Result AcknowledgeEventId(AcknowledgeEventIdOptions options) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); - var funcResult = EOS_UI_AcknowledgeEventId(InnerHandle, optionsAddress); + var funcResult = Bindings.EOS_UI_AcknowledgeEventId(InnerHandle, optionsAddress); Helper.TryMarshalDispose(ref optionsAddress); @@ -97,7 +107,7 @@ public Result AcknowledgeEventId(AcknowledgeEventIdOptions options) /// public ulong AddNotifyDisplaySettingsUpdated(AddNotifyDisplaySettingsUpdatedOptions options, object clientData, OnDisplaySettingsUpdatedCallback notificationFn) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var clientDataAddress = System.IntPtr.Zero; @@ -105,7 +115,7 @@ public ulong AddNotifyDisplaySettingsUpdated(AddNotifyDisplaySettingsUpdatedOpti var notificationFnInternal = new OnDisplaySettingsUpdatedCallbackInternal(OnDisplaySettingsUpdatedCallbackInternalImplementation); Helper.AddCallback(ref clientDataAddress, clientData, notificationFn, notificationFnInternal); - var funcResult = EOS_UI_AddNotifyDisplaySettingsUpdated(InnerHandle, optionsAddress, clientDataAddress, notificationFnInternal); + var funcResult = Bindings.EOS_UI_AddNotifyDisplaySettingsUpdated(InnerHandle, optionsAddress, clientDataAddress, notificationFnInternal); Helper.TryMarshalDispose(ref optionsAddress); @@ -123,10 +133,10 @@ public ulong AddNotifyDisplaySettingsUpdated(AddNotifyDisplaySettingsUpdatedOpti /// public bool GetFriendsVisible(GetFriendsVisibleOptions options) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); - var funcResult = EOS_UI_GetFriendsVisible(InnerHandle, optionsAddress); + var funcResult = Bindings.EOS_UI_GetFriendsVisible(InnerHandle, optionsAddress); Helper.TryMarshalDispose(ref optionsAddress); @@ -143,7 +153,7 @@ public bool GetFriendsVisible(GetFriendsVisibleOptions options) /// public NotificationLocation GetNotificationLocationPreference() { - var funcResult = EOS_UI_GetNotificationLocationPreference(InnerHandle); + var funcResult = Bindings.EOS_UI_GetNotificationLocationPreference(InnerHandle); return funcResult; } @@ -159,10 +169,10 @@ public NotificationLocation GetNotificationLocationPreference() /// public KeyCombination GetToggleFriendsKey(GetToggleFriendsKeyOptions options) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); - var funcResult = EOS_UI_GetToggleFriendsKey(InnerHandle, optionsAddress); + var funcResult = Bindings.EOS_UI_GetToggleFriendsKey(InnerHandle, optionsAddress); Helper.TryMarshalDispose(ref optionsAddress); @@ -183,7 +193,7 @@ public KeyCombination GetToggleFriendsKey(GetToggleFriendsKeyOptions options) /// public void HideFriends(HideFriendsOptions options, object clientData, OnHideFriendsCallback completionDelegate) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var clientDataAddress = System.IntPtr.Zero; @@ -191,7 +201,7 @@ public void HideFriends(HideFriendsOptions options, object clientData, OnHideFri var completionDelegateInternal = new OnHideFriendsCallbackInternal(OnHideFriendsCallbackInternalImplementation); Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - EOS_UI_HideFriends(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); + Bindings.EOS_UI_HideFriends(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); Helper.TryMarshalDispose(ref optionsAddress); } @@ -207,7 +217,7 @@ public void HideFriends(HideFriendsOptions options, object clientData, OnHideFri /// public bool IsValidKeyCombination(KeyCombination keyCombination) { - var funcResult = EOS_UI_IsValidKeyCombination(InnerHandle, keyCombination); + var funcResult = Bindings.EOS_UI_IsValidKeyCombination(InnerHandle, keyCombination); bool funcResultReturn; Helper.TryMarshalGet(funcResult, out funcResultReturn); @@ -222,7 +232,7 @@ public void RemoveNotifyDisplaySettingsUpdated(ulong id) { Helper.TryRemoveCallbackByNotificationId(id); - EOS_UI_RemoveNotifyDisplaySettingsUpdated(InnerHandle, id); + Bindings.EOS_UI_RemoveNotifyDisplaySettingsUpdated(InnerHandle, id); } /// @@ -237,10 +247,10 @@ public void RemoveNotifyDisplaySettingsUpdated(ulong id) /// public Result SetDisplayPreference(SetDisplayPreferenceOptions options) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); - var funcResult = EOS_UI_SetDisplayPreference(InnerHandle, optionsAddress); + var funcResult = Bindings.EOS_UI_SetDisplayPreference(InnerHandle, optionsAddress); Helper.TryMarshalDispose(ref optionsAddress); @@ -263,10 +273,10 @@ public Result SetDisplayPreference(SetDisplayPreferenceOptions options) /// public Result SetToggleFriendsKey(SetToggleFriendsKeyOptions options) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); - var funcResult = EOS_UI_SetToggleFriendsKey(InnerHandle, optionsAddress); + var funcResult = Bindings.EOS_UI_SetToggleFriendsKey(InnerHandle, optionsAddress); Helper.TryMarshalDispose(ref optionsAddress); @@ -287,7 +297,7 @@ public Result SetToggleFriendsKey(SetToggleFriendsKeyOptions options) /// public void ShowFriends(ShowFriendsOptions options, object clientData, OnShowFriendsCallback completionDelegate) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var clientDataAddress = System.IntPtr.Zero; @@ -295,7 +305,7 @@ public void ShowFriends(ShowFriendsOptions options, object clientData, OnShowFri var completionDelegateInternal = new OnShowFriendsCallbackInternal(OnShowFriendsCallbackInternalImplementation); Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - EOS_UI_ShowFriends(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); + Bindings.EOS_UI_ShowFriends(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); Helper.TryMarshalDispose(ref optionsAddress); } @@ -332,38 +342,5 @@ internal static void OnShowFriendsCallbackInternalImplementation(System.IntPtr d callback(callbackInfo); } } - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_UI_AcknowledgeEventId(System.IntPtr handle, System.IntPtr options); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern ulong EOS_UI_AddNotifyDisplaySettingsUpdated(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, OnDisplaySettingsUpdatedCallbackInternal notificationFn); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern int EOS_UI_GetFriendsVisible(System.IntPtr handle, System.IntPtr options); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern NotificationLocation EOS_UI_GetNotificationLocationPreference(System.IntPtr handle); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern KeyCombination EOS_UI_GetToggleFriendsKey(System.IntPtr handle, System.IntPtr options); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern void EOS_UI_HideFriends(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, OnHideFriendsCallbackInternal completionDelegate); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern int EOS_UI_IsValidKeyCombination(System.IntPtr handle, KeyCombination keyCombination); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern void EOS_UI_RemoveNotifyDisplaySettingsUpdated(System.IntPtr handle, ulong id); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_UI_SetDisplayPreference(System.IntPtr handle, System.IntPtr options); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_UI_SetToggleFriendsKey(System.IntPtr handle, System.IntPtr options); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern void EOS_UI_ShowFriends(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, OnShowFriendsCallbackInternal completionDelegate); } } \ No newline at end of file diff --git a/EOSSDK/Generated/UserInfo/CopyExternalUserInfoByAccountIdOptions.cs b/EOSSDK/Generated/UserInfo/CopyExternalUserInfoByAccountIdOptions.cs index 4cc5666c..84d158bf 100644 --- a/EOSSDK/Generated/UserInfo/CopyExternalUserInfoByAccountIdOptions.cs +++ b/EOSSDK/Generated/UserInfo/CopyExternalUserInfoByAccountIdOptions.cs @@ -74,6 +74,8 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_LocalUserId); + Helper.TryMarshalDispose(ref m_TargetUserId); Helper.TryMarshalDispose(ref m_AccountId); } } diff --git a/EOSSDK/Generated/UserInfo/CopyExternalUserInfoByAccountTypeOptions.cs b/EOSSDK/Generated/UserInfo/CopyExternalUserInfoByAccountTypeOptions.cs index 4523af79..3302f609 100644 --- a/EOSSDK/Generated/UserInfo/CopyExternalUserInfoByAccountTypeOptions.cs +++ b/EOSSDK/Generated/UserInfo/CopyExternalUserInfoByAccountTypeOptions.cs @@ -74,6 +74,8 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_LocalUserId); + Helper.TryMarshalDispose(ref m_TargetUserId); } } } \ No newline at end of file diff --git a/EOSSDK/Generated/UserInfo/CopyExternalUserInfoByIndexOptions.cs b/EOSSDK/Generated/UserInfo/CopyExternalUserInfoByIndexOptions.cs index a7bc18a9..3f872e4f 100644 --- a/EOSSDK/Generated/UserInfo/CopyExternalUserInfoByIndexOptions.cs +++ b/EOSSDK/Generated/UserInfo/CopyExternalUserInfoByIndexOptions.cs @@ -74,6 +74,8 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_LocalUserId); + Helper.TryMarshalDispose(ref m_TargetUserId); } } } \ No newline at end of file diff --git a/EOSSDK/Generated/UserInfo/CopyUserInfoOptions.cs b/EOSSDK/Generated/UserInfo/CopyUserInfoOptions.cs index 28e5c818..6f1c0fff 100644 --- a/EOSSDK/Generated/UserInfo/CopyUserInfoOptions.cs +++ b/EOSSDK/Generated/UserInfo/CopyUserInfoOptions.cs @@ -59,6 +59,8 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_LocalUserId); + Helper.TryMarshalDispose(ref m_TargetUserId); } } } \ No newline at end of file diff --git a/EOSSDK/Generated/UserInfo/GetExternalUserInfoCountOptions.cs b/EOSSDK/Generated/UserInfo/GetExternalUserInfoCountOptions.cs index 47db8e3f..b89f6432 100644 --- a/EOSSDK/Generated/UserInfo/GetExternalUserInfoCountOptions.cs +++ b/EOSSDK/Generated/UserInfo/GetExternalUserInfoCountOptions.cs @@ -59,6 +59,8 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_LocalUserId); + Helper.TryMarshalDispose(ref m_TargetUserId); } } } \ No newline at end of file diff --git a/EOSSDK/Generated/UserInfo/OnQueryUserInfoByDisplayNameCallback.cs b/EOSSDK/Generated/UserInfo/OnQueryUserInfoByDisplayNameCallback.cs index 7152be21..c690c940 100644 --- a/EOSSDK/Generated/UserInfo/OnQueryUserInfoByDisplayNameCallback.cs +++ b/EOSSDK/Generated/UserInfo/OnQueryUserInfoByDisplayNameCallback.cs @@ -9,5 +9,6 @@ namespace Epic.OnlineServices.UserInfo /// A containing the output information and result public delegate void OnQueryUserInfoByDisplayNameCallback(QueryUserInfoByDisplayNameCallbackInfo data); + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] internal delegate void OnQueryUserInfoByDisplayNameCallbackInternal(System.IntPtr data); } \ No newline at end of file diff --git a/EOSSDK/Generated/UserInfo/OnQueryUserInfoByExternalAccountCallback.cs b/EOSSDK/Generated/UserInfo/OnQueryUserInfoByExternalAccountCallback.cs index 7ec3e9a9..8dc32081 100644 --- a/EOSSDK/Generated/UserInfo/OnQueryUserInfoByExternalAccountCallback.cs +++ b/EOSSDK/Generated/UserInfo/OnQueryUserInfoByExternalAccountCallback.cs @@ -9,5 +9,6 @@ namespace Epic.OnlineServices.UserInfo /// A containing the output information and result public delegate void OnQueryUserInfoByExternalAccountCallback(QueryUserInfoByExternalAccountCallbackInfo data); + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] internal delegate void OnQueryUserInfoByExternalAccountCallbackInternal(System.IntPtr data); } \ No newline at end of file diff --git a/EOSSDK/Generated/UserInfo/OnQueryUserInfoCallback.cs b/EOSSDK/Generated/UserInfo/OnQueryUserInfoCallback.cs index 46ccaedd..327fc9f9 100644 --- a/EOSSDK/Generated/UserInfo/OnQueryUserInfoCallback.cs +++ b/EOSSDK/Generated/UserInfo/OnQueryUserInfoCallback.cs @@ -9,5 +9,6 @@ namespace Epic.OnlineServices.UserInfo /// A containing the output information and result public delegate void OnQueryUserInfoCallback(QueryUserInfoCallbackInfo data); + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] internal delegate void OnQueryUserInfoCallbackInternal(System.IntPtr data); } \ No newline at end of file diff --git a/EOSSDK/Generated/UserInfo/QueryUserInfoByDisplayNameOptions.cs b/EOSSDK/Generated/UserInfo/QueryUserInfoByDisplayNameOptions.cs index 953bb43b..817bd4a2 100644 --- a/EOSSDK/Generated/UserInfo/QueryUserInfoByDisplayNameOptions.cs +++ b/EOSSDK/Generated/UserInfo/QueryUserInfoByDisplayNameOptions.cs @@ -59,6 +59,7 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_LocalUserId); Helper.TryMarshalDispose(ref m_DisplayName); } } diff --git a/EOSSDK/Generated/UserInfo/QueryUserInfoByExternalAccountOptions.cs b/EOSSDK/Generated/UserInfo/QueryUserInfoByExternalAccountOptions.cs index e8f85c4c..fe418a69 100644 --- a/EOSSDK/Generated/UserInfo/QueryUserInfoByExternalAccountOptions.cs +++ b/EOSSDK/Generated/UserInfo/QueryUserInfoByExternalAccountOptions.cs @@ -74,6 +74,7 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_LocalUserId); Helper.TryMarshalDispose(ref m_ExternalAccountId); } } diff --git a/EOSSDK/Generated/UserInfo/QueryUserInfoOptions.cs b/EOSSDK/Generated/UserInfo/QueryUserInfoOptions.cs index 876d0a53..f9c41ba9 100644 --- a/EOSSDK/Generated/UserInfo/QueryUserInfoOptions.cs +++ b/EOSSDK/Generated/UserInfo/QueryUserInfoOptions.cs @@ -59,6 +59,8 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_LocalUserId); + Helper.TryMarshalDispose(ref m_TargetUserId); } } } \ No newline at end of file diff --git a/EOSSDK/Generated/UserInfo/UserInfoData.cs b/EOSSDK/Generated/UserInfo/UserInfoData.cs index 2ca03374..d661ea95 100644 --- a/EOSSDK/Generated/UserInfo/UserInfoData.cs +++ b/EOSSDK/Generated/UserInfo/UserInfoData.cs @@ -156,6 +156,7 @@ public void Set(object other) public void Dispose() { + Helper.TryMarshalDispose(ref m_UserId); Helper.TryMarshalDispose(ref m_Country); Helper.TryMarshalDispose(ref m_DisplayName); Helper.TryMarshalDispose(ref m_PreferredLanguage); diff --git a/EOSSDK/Generated/UserInfo/UserInfoInterface.cs b/EOSSDK/Generated/UserInfo/UserInfoInterface.cs index 9c4086b5..3a6b184d 100644 --- a/EOSSDK/Generated/UserInfo/UserInfoInterface.cs +++ b/EOSSDK/Generated/UserInfo/UserInfoInterface.cs @@ -3,7 +3,7 @@ namespace Epic.OnlineServices.UserInfo { - public sealed class UserInfoInterface : Handle + public sealed partial class UserInfoInterface : Handle { public UserInfoInterface() { @@ -81,18 +81,18 @@ public UserInfoInterface(System.IntPtr innerHandle) : base(innerHandle) /// public Result CopyExternalUserInfoByAccountId(CopyExternalUserInfoByAccountIdOptions options, out ExternalUserInfo outExternalUserInfo) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var outExternalUserInfoAddress = System.IntPtr.Zero; - var funcResult = EOS_UserInfo_CopyExternalUserInfoByAccountId(InnerHandle, optionsAddress, ref outExternalUserInfoAddress); + var funcResult = Bindings.EOS_UserInfo_CopyExternalUserInfoByAccountId(InnerHandle, optionsAddress, ref outExternalUserInfoAddress); Helper.TryMarshalDispose(ref optionsAddress); if (Helper.TryMarshalGet(outExternalUserInfoAddress, out outExternalUserInfo)) { - EOS_UserInfo_ExternalUserInfo_Release(outExternalUserInfoAddress); + Bindings.EOS_UserInfo_ExternalUserInfo_Release(outExternalUserInfoAddress); } return funcResult; @@ -111,18 +111,18 @@ public Result CopyExternalUserInfoByAccountId(CopyExternalUserInfoByAccountIdOpt /// public Result CopyExternalUserInfoByAccountType(CopyExternalUserInfoByAccountTypeOptions options, out ExternalUserInfo outExternalUserInfo) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var outExternalUserInfoAddress = System.IntPtr.Zero; - var funcResult = EOS_UserInfo_CopyExternalUserInfoByAccountType(InnerHandle, optionsAddress, ref outExternalUserInfoAddress); + var funcResult = Bindings.EOS_UserInfo_CopyExternalUserInfoByAccountType(InnerHandle, optionsAddress, ref outExternalUserInfoAddress); Helper.TryMarshalDispose(ref optionsAddress); if (Helper.TryMarshalGet(outExternalUserInfoAddress, out outExternalUserInfo)) { - EOS_UserInfo_ExternalUserInfo_Release(outExternalUserInfoAddress); + Bindings.EOS_UserInfo_ExternalUserInfo_Release(outExternalUserInfoAddress); } return funcResult; @@ -141,18 +141,18 @@ public Result CopyExternalUserInfoByAccountType(CopyExternalUserInfoByAccountTyp /// public Result CopyExternalUserInfoByIndex(CopyExternalUserInfoByIndexOptions options, out ExternalUserInfo outExternalUserInfo) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var outExternalUserInfoAddress = System.IntPtr.Zero; - var funcResult = EOS_UserInfo_CopyExternalUserInfoByIndex(InnerHandle, optionsAddress, ref outExternalUserInfoAddress); + var funcResult = Bindings.EOS_UserInfo_CopyExternalUserInfoByIndex(InnerHandle, optionsAddress, ref outExternalUserInfoAddress); Helper.TryMarshalDispose(ref optionsAddress); if (Helper.TryMarshalGet(outExternalUserInfoAddress, out outExternalUserInfo)) { - EOS_UserInfo_ExternalUserInfo_Release(outExternalUserInfoAddress); + Bindings.EOS_UserInfo_ExternalUserInfo_Release(outExternalUserInfoAddress); } return funcResult; @@ -175,18 +175,18 @@ public Result CopyExternalUserInfoByIndex(CopyExternalUserInfoByIndexOptions opt /// public Result CopyUserInfo(CopyUserInfoOptions options, out UserInfoData outUserInfo) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var outUserInfoAddress = System.IntPtr.Zero; - var funcResult = EOS_UserInfo_CopyUserInfo(InnerHandle, optionsAddress, ref outUserInfoAddress); + var funcResult = Bindings.EOS_UserInfo_CopyUserInfo(InnerHandle, optionsAddress, ref outUserInfoAddress); Helper.TryMarshalDispose(ref optionsAddress); if (Helper.TryMarshalGet(outUserInfoAddress, out outUserInfo)) { - EOS_UserInfo_Release(outUserInfoAddress); + Bindings.EOS_UserInfo_Release(outUserInfoAddress); } return funcResult; @@ -202,10 +202,10 @@ public Result CopyUserInfo(CopyUserInfoOptions options, out UserInfoData outUser /// public uint GetExternalUserInfoCount(GetExternalUserInfoCountOptions options) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); - var funcResult = EOS_UserInfo_GetExternalUserInfoCount(InnerHandle, optionsAddress); + var funcResult = Bindings.EOS_UserInfo_GetExternalUserInfoCount(InnerHandle, optionsAddress); Helper.TryMarshalDispose(ref optionsAddress); @@ -225,7 +225,7 @@ public uint GetExternalUserInfoCount(GetExternalUserInfoCountOptions options) /// a callback that is fired when the async operation completes, either successfully or in error public void QueryUserInfo(QueryUserInfoOptions options, object clientData, OnQueryUserInfoCallback completionDelegate) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var clientDataAddress = System.IntPtr.Zero; @@ -233,7 +233,7 @@ public void QueryUserInfo(QueryUserInfoOptions options, object clientData, OnQue var completionDelegateInternal = new OnQueryUserInfoCallbackInternal(OnQueryUserInfoCallbackInternalImplementation); Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - EOS_UserInfo_QueryUserInfo(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); + Bindings.EOS_UserInfo_QueryUserInfo(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); Helper.TryMarshalDispose(ref optionsAddress); } @@ -251,7 +251,7 @@ public void QueryUserInfo(QueryUserInfoOptions options, object clientData, OnQue /// a callback that is fired when the async operation completes, either successfully or in error public void QueryUserInfoByDisplayName(QueryUserInfoByDisplayNameOptions options, object clientData, OnQueryUserInfoByDisplayNameCallback completionDelegate) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var clientDataAddress = System.IntPtr.Zero; @@ -259,7 +259,7 @@ public void QueryUserInfoByDisplayName(QueryUserInfoByDisplayNameOptions options var completionDelegateInternal = new OnQueryUserInfoByDisplayNameCallbackInternal(OnQueryUserInfoByDisplayNameCallbackInternalImplementation); Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - EOS_UserInfo_QueryUserInfoByDisplayName(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); + Bindings.EOS_UserInfo_QueryUserInfoByDisplayName(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); Helper.TryMarshalDispose(ref optionsAddress); } @@ -277,7 +277,7 @@ public void QueryUserInfoByDisplayName(QueryUserInfoByDisplayNameOptions options /// a callback that is fired when the async operation completes, either successfully or in error public void QueryUserInfoByExternalAccount(QueryUserInfoByExternalAccountOptions options, object clientData, OnQueryUserInfoByExternalAccountCallback completionDelegate) { - System.IntPtr optionsAddress = new System.IntPtr(); + var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); var clientDataAddress = System.IntPtr.Zero; @@ -285,7 +285,7 @@ public void QueryUserInfoByExternalAccount(QueryUserInfoByExternalAccountOptions var completionDelegateInternal = new OnQueryUserInfoByExternalAccountCallbackInternal(OnQueryUserInfoByExternalAccountCallbackInternalImplementation); Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - EOS_UserInfo_QueryUserInfoByExternalAccount(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); + Bindings.EOS_UserInfo_QueryUserInfoByExternalAccount(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); Helper.TryMarshalDispose(ref optionsAddress); } @@ -322,35 +322,5 @@ internal static void OnQueryUserInfoCallbackInternalImplementation(System.IntPtr callback(callbackInfo); } } - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_UserInfo_CopyExternalUserInfoByAccountId(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outExternalUserInfo); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_UserInfo_CopyExternalUserInfoByAccountType(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outExternalUserInfo); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_UserInfo_CopyExternalUserInfoByIndex(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outExternalUserInfo); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern Result EOS_UserInfo_CopyUserInfo(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outUserInfo); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern uint EOS_UserInfo_GetExternalUserInfoCount(System.IntPtr handle, System.IntPtr options); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern void EOS_UserInfo_QueryUserInfo(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, OnQueryUserInfoCallbackInternal completionDelegate); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern void EOS_UserInfo_QueryUserInfoByDisplayName(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, OnQueryUserInfoByDisplayNameCallbackInternal completionDelegate); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern void EOS_UserInfo_QueryUserInfoByExternalAccount(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, OnQueryUserInfoByExternalAccountCallbackInternal completionDelegate); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern void EOS_UserInfo_Release(System.IntPtr userInfo); - - [System.Runtime.InteropServices.DllImport(Config.BinaryName)] - internal static extern void EOS_UserInfo_ExternalUserInfo_Release(System.IntPtr externalUserInfo); } } \ No newline at end of file diff --git a/EOSSDK/Generated/Windows.meta b/EOSSDK/Generated/Windows.meta new file mode 100644 index 00000000..8a745f40 --- /dev/null +++ b/EOSSDK/Generated/Windows.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: e85b2e01f4f8d394687cc9af647b4559 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/Windows/Platform.meta b/EOSSDK/Generated/Windows/Platform.meta new file mode 100644 index 00000000..6848c183 --- /dev/null +++ b/EOSSDK/Generated/Windows/Platform.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 7ca8a2f7768e91c4fb6f0ffdf673cdbb +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/Windows/Platform/PlatformInterface.cs b/EOSSDK/Generated/Windows/Platform/PlatformInterface.cs new file mode 100644 index 00000000..de9e17a4 --- /dev/null +++ b/EOSSDK/Generated/Windows/Platform/PlatformInterface.cs @@ -0,0 +1,27 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.Platform +{ + public sealed partial class PlatformInterface : Handle + { + /// + /// The most recent version of the structure. + /// + public const int PlatformWindowsrtcoptionsplatformspecificoptionsApiLatest = 1; + + public static PlatformInterface Create(WindowsOptions options) + { + var optionsAddress = System.IntPtr.Zero; + Helper.TryMarshalSet(ref optionsAddress, options); + + var funcResult = Bindings.EOS_Platform_Create(optionsAddress); + + Helper.TryMarshalDispose(ref optionsAddress); + + PlatformInterface funcResultReturn; + Helper.TryMarshalGet(funcResult, out funcResultReturn); + return funcResultReturn; + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/Windows/Platform/PlatformInterface.cs.meta b/EOSSDK/Generated/Windows/Platform/PlatformInterface.cs.meta new file mode 100644 index 00000000..7f93f756 --- /dev/null +++ b/EOSSDK/Generated/Windows/Platform/PlatformInterface.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 6b4467a5a86270e4493ef6dd6d9f774c +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/Windows/Platform/WindowsOptions.cs b/EOSSDK/Generated/Windows/Platform/WindowsOptions.cs new file mode 100644 index 00000000..8ee7eef8 --- /dev/null +++ b/EOSSDK/Generated/Windows/Platform/WindowsOptions.cs @@ -0,0 +1,241 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.Platform +{ + /// + /// Platform options for . + /// + public class WindowsOptions + { + /// + /// A reserved field that should always be nulled. + /// + public System.IntPtr Reserved { get; set; } + + /// + /// The product ID for the running application, found on the dev portal + /// + public string ProductId { get; set; } + + /// + /// The sandbox ID for the running application, found on the dev portal + /// + public string SandboxId { get; set; } + + /// + /// Set of service permissions associated with the running application + /// + public ClientCredentials ClientCredentials { get; set; } + + /// + /// Is this running as a server + /// + public bool IsServer { get; set; } + + /// + /// Used by Player Data Storage and Title Storage. Must be null initialized if unused. 256-bit Encryption Key for file encryption in hexadecimal format (64 hex chars) + /// + public string EncryptionKey { get; set; } + + /// + /// The override country code to use for the logged in user. () + /// + public string OverrideCountryCode { get; set; } + + /// + /// The override locale code to use for the logged in user. This follows ISO 639. () + /// + public string OverrideLocaleCode { get; set; } + + /// + /// The deployment ID for the running application, found on the dev portal + /// + public string DeploymentId { get; set; } + + /// + /// Platform creation flags, e.g. . This is a bitwise-or union of the defined flags. + /// + public PlatformFlags Flags { get; set; } + + /// + /// Used by Player Data Storage and Title Storage. Must be null initialized if unused. Cache directory path. Absolute path to the folder that is going to be used for caching temporary data. The path is created if it's missing. + /// + public string CacheDirectory { get; set; } + + /// + /// A budget, measured in milliseconds, for to do its work. When the budget is met or exceeded (or if no work is available), will return. + /// This allows your game to amortize the cost of SDK work across multiple frames in the event that a lot of work is queued for processing. + /// Zero is interpreted as "perform all available work". + /// + public uint TickBudgetInMilliseconds { get; set; } + + /// + /// RTC options. Setting to NULL will disable RTC features (e.g. voice) + /// + public WindowsRTCOptions RTCOptions { get; set; } + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct WindowsOptionsInternal : ISettable, System.IDisposable + { + private int m_ApiVersion; + private System.IntPtr m_Reserved; + private System.IntPtr m_ProductId; + private System.IntPtr m_SandboxId; + private ClientCredentialsInternal m_ClientCredentials; + private int m_IsServer; + private System.IntPtr m_EncryptionKey; + private System.IntPtr m_OverrideCountryCode; + private System.IntPtr m_OverrideLocaleCode; + private System.IntPtr m_DeploymentId; + private PlatformFlags m_Flags; + private System.IntPtr m_CacheDirectory; + private uint m_TickBudgetInMilliseconds; + private System.IntPtr m_RTCOptions; + + public System.IntPtr Reserved + { + set + { + m_Reserved = value; + } + } + + public string ProductId + { + set + { + Helper.TryMarshalSet(ref m_ProductId, value); + } + } + + public string SandboxId + { + set + { + Helper.TryMarshalSet(ref m_SandboxId, value); + } + } + + public ClientCredentials ClientCredentials + { + set + { + Helper.TryMarshalSet(ref m_ClientCredentials, value); + } + } + + public bool IsServer + { + set + { + Helper.TryMarshalSet(ref m_IsServer, value); + } + } + + public string EncryptionKey + { + set + { + Helper.TryMarshalSet(ref m_EncryptionKey, value); + } + } + + public string OverrideCountryCode + { + set + { + Helper.TryMarshalSet(ref m_OverrideCountryCode, value); + } + } + + public string OverrideLocaleCode + { + set + { + Helper.TryMarshalSet(ref m_OverrideLocaleCode, value); + } + } + + public string DeploymentId + { + set + { + Helper.TryMarshalSet(ref m_DeploymentId, value); + } + } + + public PlatformFlags Flags + { + set + { + m_Flags = value; + } + } + + public string CacheDirectory + { + set + { + Helper.TryMarshalSet(ref m_CacheDirectory, value); + } + } + + public uint TickBudgetInMilliseconds + { + set + { + m_TickBudgetInMilliseconds = value; + } + } + + public WindowsRTCOptions RTCOptions + { + set + { + Helper.TryMarshalSet(ref m_RTCOptions, value); + } + } + + public void Set(WindowsOptions other) + { + if (other != null) + { + m_ApiVersion = PlatformInterface.OptionsApiLatest; + Reserved = other.Reserved; + ProductId = other.ProductId; + SandboxId = other.SandboxId; + ClientCredentials = other.ClientCredentials; + IsServer = other.IsServer; + EncryptionKey = other.EncryptionKey; + OverrideCountryCode = other.OverrideCountryCode; + OverrideLocaleCode = other.OverrideLocaleCode; + DeploymentId = other.DeploymentId; + Flags = other.Flags; + CacheDirectory = other.CacheDirectory; + TickBudgetInMilliseconds = other.TickBudgetInMilliseconds; + RTCOptions = other.RTCOptions; + } + } + + public void Set(object other) + { + Set(other as WindowsOptions); + } + + public void Dispose() + { + Helper.TryMarshalDispose(ref m_Reserved); + Helper.TryMarshalDispose(ref m_ProductId); + Helper.TryMarshalDispose(ref m_SandboxId); + Helper.TryMarshalDispose(ref m_ClientCredentials); + Helper.TryMarshalDispose(ref m_EncryptionKey); + Helper.TryMarshalDispose(ref m_OverrideCountryCode); + Helper.TryMarshalDispose(ref m_OverrideLocaleCode); + Helper.TryMarshalDispose(ref m_DeploymentId); + Helper.TryMarshalDispose(ref m_CacheDirectory); + Helper.TryMarshalDispose(ref m_RTCOptions); + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/Windows/Platform/WindowsOptions.cs.meta b/EOSSDK/Generated/Windows/Platform/WindowsOptions.cs.meta new file mode 100644 index 00000000..67275034 --- /dev/null +++ b/EOSSDK/Generated/Windows/Platform/WindowsOptions.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: ceb0ddc45289a7a499f141df04248ecc +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/Windows/Platform/WindowsRTCOptions.cs b/EOSSDK/Generated/Windows/Platform/WindowsRTCOptions.cs new file mode 100644 index 00000000..1ad8a009 --- /dev/null +++ b/EOSSDK/Generated/Windows/Platform/WindowsRTCOptions.cs @@ -0,0 +1,73 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.Platform +{ + /// + /// Platform RTC options. + /// + public class WindowsRTCOptions : ISettable + { + /// + /// This field is for platform specific initialization if any. + /// + /// If provided then the structure will be located in /eos_.h. + /// The structure will be named EOS__RTCOptions. + /// + public WindowsRTCOptionsPlatformSpecificOptions PlatformSpecificOptions { get; set; } + + internal void Set(WindowsRTCOptionsInternal? other) + { + if (other != null) + { + PlatformSpecificOptions = other.Value.PlatformSpecificOptions; + } + } + + public void Set(object other) + { + Set(other as WindowsRTCOptionsInternal?); + } + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct WindowsRTCOptionsInternal : ISettable, System.IDisposable + { + private int m_ApiVersion; + private System.IntPtr m_PlatformSpecificOptions; + + public WindowsRTCOptionsPlatformSpecificOptions PlatformSpecificOptions + { + get + { + WindowsRTCOptionsPlatformSpecificOptions value; + Helper.TryMarshalGet(m_PlatformSpecificOptions, out value); + return value; + } + + set + { + Helper.TryMarshalSet(ref m_PlatformSpecificOptions, value); + } + } + + public void Set(WindowsRTCOptions other) + { + if (other != null) + { + m_ApiVersion = PlatformInterface.RtcoptionsApiLatest; + PlatformSpecificOptions = other.PlatformSpecificOptions; + } + } + + public void Set(object other) + { + Set(other as WindowsRTCOptions); + } + + public void Dispose() + { + Helper.TryMarshalDispose(ref m_PlatformSpecificOptions); + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/Windows/Platform/WindowsRTCOptions.cs.meta b/EOSSDK/Generated/Windows/Platform/WindowsRTCOptions.cs.meta new file mode 100644 index 00000000..0e545cc9 --- /dev/null +++ b/EOSSDK/Generated/Windows/Platform/WindowsRTCOptions.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: b35c028a47cca484bbdf28a225c56f0a +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/Generated/Windows/Platform/WindowsRTCOptionsPlatformSpecificOptions.cs b/EOSSDK/Generated/Windows/Platform/WindowsRTCOptionsPlatformSpecificOptions.cs new file mode 100644 index 00000000..89775499 --- /dev/null +++ b/EOSSDK/Generated/Windows/Platform/WindowsRTCOptionsPlatformSpecificOptions.cs @@ -0,0 +1,70 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.Platform +{ + /// + /// Options for initializing rtc functionality required for some platforms. + /// + public class WindowsRTCOptionsPlatformSpecificOptions : ISettable + { + /// + /// The absolute path to a `xaudio2_9redist.dll` dependency, including the file name + /// + public string XAudio29DllPath { get; set; } + + internal void Set(WindowsRTCOptionsPlatformSpecificOptionsInternal? other) + { + if (other != null) + { + XAudio29DllPath = other.Value.XAudio29DllPath; + } + } + + public void Set(object other) + { + Set(other as WindowsRTCOptionsPlatformSpecificOptionsInternal?); + } + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct WindowsRTCOptionsPlatformSpecificOptionsInternal : ISettable, System.IDisposable + { + private int m_ApiVersion; + private System.IntPtr m_XAudio29DllPath; + + public string XAudio29DllPath + { + get + { + string value; + Helper.TryMarshalGet(m_XAudio29DllPath, out value); + return value; + } + + set + { + Helper.TryMarshalSet(ref m_XAudio29DllPath, value); + } + } + + public void Set(WindowsRTCOptionsPlatformSpecificOptions other) + { + if (other != null) + { + m_ApiVersion = PlatformInterface.PlatformWindowsrtcoptionsplatformspecificoptionsApiLatest; + XAudio29DllPath = other.XAudio29DllPath; + } + } + + public void Set(object other) + { + Set(other as WindowsRTCOptionsPlatformSpecificOptions); + } + + public void Dispose() + { + Helper.TryMarshalDispose(ref m_XAudio29DllPath); + } + } +} \ No newline at end of file diff --git a/EOSSDK/Generated/Windows/Platform/WindowsRTCOptionsPlatformSpecificOptions.cs.meta b/EOSSDK/Generated/Windows/Platform/WindowsRTCOptionsPlatformSpecificOptions.cs.meta new file mode 100644 index 00000000..b1483b11 --- /dev/null +++ b/EOSSDK/Generated/Windows/Platform/WindowsRTCOptionsPlatformSpecificOptions.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: a90390c9c4f2b4a4ebf5ea3fdb1be310 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/libEOSSDK-Linux-Shipping.so b/EOSSDK/libEOSSDK-Linux-Shipping.so new file mode 100644 index 00000000..84b77f13 Binary files /dev/null and b/EOSSDK/libEOSSDK-Linux-Shipping.so differ diff --git a/EOSSDK/libEOSSDK-Linux-Shipping.so.meta b/EOSSDK/libEOSSDK-Linux-Shipping.so.meta new file mode 100644 index 00000000..5c9ab2a2 --- /dev/null +++ b/EOSSDK/libEOSSDK-Linux-Shipping.so.meta @@ -0,0 +1,27 @@ +fileFormatVersion: 2 +guid: 3cb13ba56ac92914581031be50e8b2fd +PluginImporter: + externalObjects: {} + serializedVersion: 2 + iconMap: {} + executionOrder: {} + defineConstraints: [] + isPreloaded: 0 + isOverridable: 0 + isExplicitlyReferenced: 0 + validateReferences: 1 + platformData: + - first: + Any: + second: + enabled: 1 + settings: {} + - first: + Editor: Editor + second: + enabled: 0 + settings: + DefaultValueInitialized: true + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDK/libEOSSDK-Mac-Shipping.dylib b/EOSSDK/libEOSSDK-Mac-Shipping.dylib new file mode 100644 index 00000000..5f2fc758 Binary files /dev/null and b/EOSSDK/libEOSSDK-Mac-Shipping.dylib differ diff --git a/EOSSDK/libEOSSDK-Mac-Shipping.dylib.meta b/EOSSDK/libEOSSDK-Mac-Shipping.dylib.meta new file mode 100644 index 00000000..041da13a --- /dev/null +++ b/EOSSDK/libEOSSDK-Mac-Shipping.dylib.meta @@ -0,0 +1,32 @@ +fileFormatVersion: 2 +guid: d747fcc61550658458c4c81b7cc5e35f +PluginImporter: + externalObjects: {} + serializedVersion: 2 + iconMap: {} + executionOrder: {} + defineConstraints: [] + isPreloaded: 0 + isOverridable: 0 + isExplicitlyReferenced: 0 + validateReferences: 1 + platformData: + - first: + Any: + second: + enabled: 0 + settings: {} + - first: + Editor: Editor + second: + enabled: 1 + settings: + DefaultValueInitialized: true + - first: + Standalone: OSXUniversal + second: + enabled: 1 + settings: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EOSSDKComponent.cs b/EOSSDKComponent.cs index b893101f..91fb9703 100644 --- a/EOSSDKComponent.cs +++ b/EOSSDKComponent.cs @@ -1,6 +1,10 @@ using Epic.OnlineServices; using Epic.OnlineServices.Logging; using Epic.OnlineServices.Platform; + +using System; +using System.Runtime.InteropServices; + using UnityEngine; /// @@ -15,24 +19,16 @@ namespace EpicTransport { public class EOSSDKComponent : MonoBehaviour { // Unity Inspector shown variables - - // Set these values as appropriate. For more information, see the Developer Portal documentation. - [Header("SDK Keys")] - public string epicProductName = "MyApplication"; - public string epicProductVersion = "1.0"; - public string epicProductId = ""; - public string epicSandboxId = ""; - public string epicDeploymentId = ""; - public string epicClientId = ""; - public string epicClientSecret = ""; + + [SerializeField] + private EosApiKey apiKeys; [Header("User Login")] - public bool autoLogoutInEditor = false; public bool authInterfaceLogin = false; public Epic.OnlineServices.Auth.LoginCredentialType authInterfaceCredentialType = Epic.OnlineServices.Auth.LoginCredentialType.AccountPortal; public uint devAuthToolPort = 7878; public string devAuthToolCredentialName = ""; - public Epic.OnlineServices.Connect.ExternalCredentialType connectInterfaceCredentialType = Epic.OnlineServices.Connect.ExternalCredentialType.DeviceidAccessToken; + public Epic.OnlineServices.ExternalCredentialType connectInterfaceCredentialType = Epic.OnlineServices.ExternalCredentialType.DeviceidAccessToken; public string deviceModel = "PC Windows 64bit"; [SerializeField] private string displayName = "User"; public static string DisplayName { @@ -62,6 +58,8 @@ public static bool CollectPlayerMetrics { // End Unity Inspector shown variables + private ulong authExpirationHandle; + private string authInterfaceLoginCredentialId = null; public static void SetAuthInterfaceLoginCredentialId(string credentialId) => Instance.authInterfaceLoginCredentialId = credentialId; @@ -149,7 +147,22 @@ public static void Tick() { instance.EOS.Tick(); } - void Awake() { + // If we're in editor, we should dynamically load and unload the SDK between play sessions. + // This allows us to initialize the SDK each time the game is run in editor. +#if UNITY_EDITOR + [DllImport("Kernel32.dll")] + private static extern IntPtr LoadLibrary(string lpLibFileName); + + [DllImport("Kernel32.dll")] + private static extern int FreeLibrary(IntPtr hLibModule); + + [DllImport("Kernel32.dll")] + private static extern IntPtr GetProcAddress(IntPtr hModule, string lpProcName); + + private IntPtr libraryPointer; +#endif + + private void Awake() { // Prevent multiple instances if (instance != null) { Destroy(gameObject); @@ -157,6 +170,17 @@ void Awake() { } instance = this; +#if UNITY_EDITOR + var libraryPath = "Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/" + Config.LibraryName; + + libraryPointer = LoadLibrary(libraryPath); + if (libraryPointer == IntPtr.Zero) { + throw new Exception("Failed to load library" + libraryPath); + } + + Bindings.Hook(libraryPointer, GetProcAddress); +#endif + if (!delayedInitialization) { Initialize(); } @@ -166,8 +190,8 @@ protected void InitializeImplementation() { isConnecting = true; var initializeOptions = new InitializeOptions() { - ProductName = epicProductName, - ProductVersion = epicProductVersion + ProductName = apiKeys.epicProductName, + ProductVersion = apiKeys.epicProductVersion }; var initializeResult = PlatformInterface.Initialize(initializeOptions); @@ -184,12 +208,12 @@ protected void InitializeImplementation() { LoggingInterface.SetCallback(message => Logger.EpicDebugLog(message)); var options = new Options() { - ProductId = epicProductId, - SandboxId = epicSandboxId, - DeploymentId = epicDeploymentId, + ProductId = apiKeys.epicProductId, + SandboxId = apiKeys.epicSandboxId, + DeploymentId = apiKeys.epicDeploymentId, ClientCredentials = new ClientCredentials() { - ClientId = epicClientId, - ClientSecret = epicClientSecret + ClientId = apiKeys.epicClientId, + ClientSecret = apiKeys.epicClientSecret }, TickBudgetInMilliseconds = tickBudgetInMilliseconds }; @@ -235,7 +259,7 @@ protected void InitializeImplementation() { EOS.GetAuthInterface().Login(loginOptions, null, OnAuthInterfaceLogin); } else { // Login to Connect Interface - if (connectInterfaceCredentialType == Epic.OnlineServices.Connect.ExternalCredentialType.DeviceidAccessToken) { + if (connectInterfaceCredentialType == Epic.OnlineServices.ExternalCredentialType.DeviceidAccessToken) { Epic.OnlineServices.Connect.CreateDeviceIdOptions createDeviceIdOptions = new Epic.OnlineServices.Connect.CreateDeviceIdOptions(); createDeviceIdOptions.DeviceModel = deviceModel; EOS.GetConnectInterface().CreateDeviceId(createDeviceIdOptions, null, OnCreateDeviceId); @@ -265,9 +289,9 @@ private void OnAuthInterfaceLogin(Epic.OnlineServices.Auth.LoginCallbackInfo log localUserAccountIdString = accountIdString; localUserAccountId = loginCallbackInfo.LocalUserId; } - + ConnectInterfaceLogin(); - } else { + } else if(Epic.OnlineServices.Common.IsOperationComplete(loginCallbackInfo.ResultCode)){ Debug.Log("Login returned " + loginCallbackInfo.ResultCode); } } @@ -275,7 +299,7 @@ private void OnAuthInterfaceLogin(Epic.OnlineServices.Auth.LoginCallbackInfo log private void OnCreateDeviceId(Epic.OnlineServices.Connect.CreateDeviceIdCallbackInfo createDeviceIdCallbackInfo) { if (createDeviceIdCallbackInfo.ResultCode == Result.Success || createDeviceIdCallbackInfo.ResultCode == Result.DuplicateNotAllowed) { ConnectInterfaceLogin(); - } else { + } else if(Epic.OnlineServices.Common.IsOperationComplete(createDeviceIdCallbackInfo.ResultCode)) { Debug.Log("Device ID creation returned " + createDeviceIdCallbackInfo.ResultCode); } } @@ -283,7 +307,7 @@ private void OnCreateDeviceId(Epic.OnlineServices.Connect.CreateDeviceIdCallback private void ConnectInterfaceLogin() { var loginOptions = new Epic.OnlineServices.Connect.LoginOptions(); - if (connectInterfaceCredentialType == Epic.OnlineServices.Connect.ExternalCredentialType.Epic) { + if (connectInterfaceCredentialType == Epic.OnlineServices.ExternalCredentialType.Epic) { Epic.OnlineServices.Auth.Token token; Result result = EOS.GetAuthInterface().CopyUserAuthToken(new Epic.OnlineServices.Auth.CopyUserAuthTokenOptions(), localUserAccountId, out token); @@ -292,7 +316,7 @@ private void ConnectInterfaceLogin() { } else { Debug.LogError("Failed to retrieve User Auth Token"); } - } else if (connectInterfaceCredentialType == Epic.OnlineServices.Connect.ExternalCredentialType.DeviceidAccessToken) { + } else if (connectInterfaceCredentialType == Epic.OnlineServices.ExternalCredentialType.DeviceidAccessToken) { loginOptions.UserLoginInfo = new Epic.OnlineServices.Connect.UserLoginInfo(); loginOptions.UserLoginInfo.DisplayName = displayName; } @@ -319,7 +343,10 @@ private void OnConnectInterfaceLogin(Epic.OnlineServices.Connect.LoginCallbackIn initialized = true; isConnecting = false; - } else { + + var authExpirationOptions = new Epic.OnlineServices.Connect.AddNotifyAuthExpirationOptions(); + authExpirationHandle = EOS.GetConnectInterface().AddNotifyAuthExpiration(authExpirationOptions, null, OnAuthExpiration); + } else if (Epic.OnlineServices.Common.IsOperationComplete(loginCallbackInfo.ResultCode)) { Debug.Log("Login returned " + loginCallbackInfo.ResultCode + "\nRetrying..."); EOS.GetConnectInterface().CreateUser(new Epic.OnlineServices.Connect.CreateUserOptions() { ContinuanceToken = loginCallbackInfo.ContinuanceToken }, null, (Epic.OnlineServices.Connect.CreateUserCallbackInfo cb) => { if (cb.ResultCode != Result.Success) { Debug.Log(cb.ResultCode); return; } @@ -328,9 +355,11 @@ private void OnConnectInterfaceLogin(Epic.OnlineServices.Connect.LoginCallbackIn }); } } - - private void OnAuthInterfaceLogout(Epic.OnlineServices.Auth.LogoutCallbackInfo logoutCallbackInfo) { - + + private void OnAuthExpiration(Epic.OnlineServices.Connect.AuthExpirationCallbackInfo authExpirationCallbackInfo) { + Debug.Log("AuthExpiration callback"); + EOS.GetConnectInterface().RemoveNotifyAuthExpiration(authExpirationHandle); + ConnectInterfaceLogin(); } // Calling tick on a regular interval is required for callbacks to work. @@ -345,30 +374,24 @@ private void LateUpdate() { } } - // When you release and shutdown the SDK library, you cannot initialize it again. - // Make sure this is done at a relevant time in your game's lifecycle. - // If you are working in editor, it is advised you do not release and shutdown the SDK - // as you would be required to restart Unity to initialize the SDK again. - private void OnDestroy() { - if (EOS == null) { - return; - } - - if (Application.isEditor) { - if (autoLogoutInEditor) { - Epic.OnlineServices.Auth.LogoutOptions logoutOptions = new Epic.OnlineServices.Auth.LogoutOptions(); - logoutOptions.LocalUserId = LocalUserAccountId; - - // Callback might not be called since we call Logout in OnDestroy() - EOS.GetAuthInterface().Logout(logoutOptions, null, OnAuthInterfaceLogout); - } - } else { + private void OnApplicationQuit() { + if (EOS != null) { EOS.Release(); EOS = null; PlatformInterface.Shutdown(); } - + // Unhook the library in the editor, this makes it possible to load the library again after stopping to play +#if UNITY_EDITOR + if (libraryPointer != IntPtr.Zero) { + Bindings.Unhook(); + + // Free until the module ref count is 0 + while (FreeLibrary(libraryPointer) != 0) { } + + libraryPointer = IntPtr.Zero; + } +#endif } } } \ No newline at end of file diff --git a/EOSSDKComponent.cs.meta b/EOSSDKComponent.cs.meta new file mode 100644 index 00000000..121a71c0 --- /dev/null +++ b/EOSSDKComponent.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 09c2b9adb023e6547aa45a0e8bf5fcfc +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EosApiKey.cs b/EosApiKey.cs new file mode 100644 index 00000000..ddc037d1 --- /dev/null +++ b/EosApiKey.cs @@ -0,0 +1,23 @@ +using System.Collections; +using System.Collections.Generic; +using UnityEngine; + +/// +/// Create an instance of this scriptable object and assign your eos api keys to it +/// Then add a reference to it to the EOSSDKComponent +/// +/// You can right click in your Project view in unity and choose: +/// Create -> EOS -> API Key +/// in order to create an instance of this scriptable object +/// + +[CreateAssetMenu(fileName = "EosApiKey", menuName = "EOS/API Key", order = 1)] +public class EosApiKey : ScriptableObject { + public string epicProductName = "MyApplication"; + public string epicProductVersion = "1.0"; + public string epicProductId = ""; + public string epicSandboxId = ""; + public string epicDeploymentId = ""; + public string epicClientId = ""; + public string epicClientSecret = ""; +} diff --git a/EosApiKey.cs.meta b/EosApiKey.cs.meta new file mode 100644 index 00000000..762c815e --- /dev/null +++ b/EosApiKey.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 2006c7a2843279e4598781ed39185dd0 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EosTransport.cs b/EosTransport.cs index c06cd9d6..e6d70ce2 100644 --- a/EosTransport.cs +++ b/EosTransport.cs @@ -218,7 +218,7 @@ public override void ServerSend(int connectionId, int channelId, ArraySegment ServerActive() && server.Disconnect(connectionId); + public override void ServerDisconnect(int connectionId) => server.Disconnect(connectionId); public override string ServerGetClientAddress(int connectionId) => ServerActive() ? server.ServerGetClientAddress(connectionId) : string.Empty; public override void ServerStop() { if (ServerActive()) { @@ -279,7 +279,7 @@ public override void Shutdown() { Debug.Log("Transport shut down."); } - public int GetMaxSinglePacketSize(int channelId) => P2PInterface.MaxPacketSize - 1; // 1170 bytes + public int GetMaxSinglePacketSize(int channelId) => P2PInterface.MaxPacketSize - 10; // 1159 bytes, we need to remove 10 bytes for the packet header (id (4 bytes) + fragment (4 bytes) + more fragments (1 byte)) public override int GetMaxPacketSize(int channelId) => P2PInterface.MaxPacketSize * maxFragments; @@ -322,4 +322,4 @@ private void OnDestroy() { } } } -} \ No newline at end of file +} diff --git a/EosTransport.cs.meta b/EosTransport.cs.meta new file mode 100644 index 00000000..ce9a255d --- /dev/null +++ b/EosTransport.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: f5f2d307354f3ea49b3ea12e6763a9fe +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Lobby.meta b/Lobby.meta new file mode 100644 index 00000000..28550835 --- /dev/null +++ b/Lobby.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: e95f05391c4035e4895e5f61f0afe88b +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Lobby/EOSLobby.cs b/Lobby/EOSLobby.cs index 3d8a129d..11e215e7 100644 --- a/Lobby/EOSLobby.cs +++ b/Lobby/EOSLobby.cs @@ -104,12 +104,14 @@ public virtual void Start() { /// Use Epic's overlay to display information to others. /// Optional data that you can to the lobby. By default, there is an empty attribute for searching and an attribute which holds the host's network address. public virtual void CreateLobby(uint maxConnections, LobbyPermissionLevel permissionLevel, bool presenceEnabled, AttributeData[] lobbyData = null) { + EOSSDKComponent.GetLobbyInterface().CreateLobby(new CreateLobbyOptions { //lobby options LocalUserId = EOSSDKComponent.LocalUserProductId, MaxLobbyMembers = maxConnections, PermissionLevel = permissionLevel, PresenceEnabled = presenceEnabled, + BucketId = DefaultAttributeKey, }, null, (CreateLobbyCallbackInfo callback) => { List lobbyReturnData = new List(); @@ -141,6 +143,7 @@ public virtual void CreateLobby(uint maxConnections, LobbyPermissionLevel permis //update the lobby EOSSDKComponent.GetLobbyInterface().UpdateLobby(new UpdateLobbyOptions { LobbyModificationHandle = modHandle }, null, (UpdateLobbyCallbackInfo updateCallback) => { + //if there was an error while updating the lobby, invoke an error event and return if (updateCallback.ResultCode != Result.Success) { CreateLobbyFailed?.Invoke("There was an error while updating the lobby. Error: " + updateCallback.ResultCode); @@ -374,4 +377,12 @@ public void UpdateLobbyAttribute(string key, string newValue) { AttributeData data = new AttributeData { Key = key, Value = newValue }; UpdateAttribute(data); } + + /// + /// Returns the current lobby id + /// + /// current lobby id + public string GetCurrentLobbyId() { + return currentLobbyId; + } } diff --git a/Lobby/EOSLobby.cs.meta b/Lobby/EOSLobby.cs.meta new file mode 100644 index 00000000..9503db9a --- /dev/null +++ b/Lobby/EOSLobby.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 01574b072600be34dbd5de0e569c6c99 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Lobby/EOSLobbyUI.cs.meta b/Lobby/EOSLobbyUI.cs.meta new file mode 100644 index 00000000..46396718 --- /dev/null +++ b/Lobby/EOSLobbyUI.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: db5efa10489208a44a5e560cc56f93ed +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Logger.cs.meta b/Logger.cs.meta new file mode 100644 index 00000000..725d0e9f --- /dev/null +++ b/Logger.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 931e541b7ce0625409e7436900f4d3bf +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Packet.cs.meta b/Packet.cs.meta new file mode 100644 index 00000000..185eb936 --- /dev/null +++ b/Packet.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 024906aad4257f34d8fa7cb029271132 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/RandomString.cs.meta b/RandomString.cs.meta new file mode 100644 index 00000000..20f1db44 --- /dev/null +++ b/RandomString.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 3c57ecc1f6812bc4b983d71742e38a66 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Server.cs b/Server.cs index 984f39a9..6959f0e3 100644 --- a/Server.cs +++ b/Server.cs @@ -119,17 +119,15 @@ protected override void OnReceiveData(byte[] data, ProductUserId clientUserId, i } } - public bool Disconnect(int connectionId) { + public void Disconnect(int connectionId) { if (epicToMirrorIds.TryGetValue(connectionId, out ProductUserId userId)) { SocketId socketId; epicToSocketIds.TryGetValue(userId, out socketId); SendInternal(userId, socketId, InternalMessages.DISCONNECT); epicToMirrorIds.Remove(userId); epicToSocketIds.Remove(userId); - return true; } else { Debug.LogWarning("Trying to disconnect unknown connection id: " + connectionId); - return false; } } diff --git a/Server.cs.meta b/Server.cs.meta new file mode 100644 index 00000000..28990e73 --- /dev/null +++ b/Server.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 305ff3b4caeb22e40bc120454cceaf55 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/ThirdPartyNotices.meta b/ThirdPartyNotices.meta new file mode 100644 index 00000000..391bb6f8 --- /dev/null +++ b/ThirdPartyNotices.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: c5a636e66d4c1cb4487ed2436c3c7480 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/ThirdPartyNotices/ThirdPartySoftwareNotice.txt b/ThirdPartyNotices/ThirdPartySoftwareNotice.txt new file mode 100644 index 00000000..9c9d5541 --- /dev/null +++ b/ThirdPartyNotices/ThirdPartySoftwareNotice.txt @@ -0,0 +1,2509 @@ + +I. CityHash +Copyright (c) 2011 Google, Inc. + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +II. Slicing-by-8 algorithm +Copyright (c) 2004-2006 Intel Corporation. +All Rights Reserved. + +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: + +Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. +Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES +OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE + +III. Expat XML Parser +Copyright (c) 1998-2000 Thai Open Source Software Center Ltd and Clark Cooper +Copyright (c) 2001-2016 Expat maintainers + +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. +IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +IV. ICU 51.2 +NOTICE TO USER: Carefully read the following legal agreement. +BY DOWNLOADING, INSTALLING, COPYING OR OTHERWISE USING UNICODE INC.'S DATA FILES ("DATA FILES"), AND/OR SOFTWARE ("SOFTWARE"), YOU UNEQUIVOCALLY ACCEPT, AND AGREE TO BE BOUND BY, ALL OF THE TERMS AND CONDITIONS OF THIS AGREEMENT. +IF YOU DO NOT AGREE, DO NOT DOWNLOAD, INSTALL, COPY, DISTRIBUTE OR USE THE DATA FILES OR SOFTWARE. + +COPYRIGHT AND PERMISSION NOTICE + +Copyright © 1991-2019 Unicode, Inc. All rights reserved. +Distributed under the Terms of Use in https://www.unicode.org/copyright.html. + +Permission is hereby granted, free of charge, to any person obtaining a copy of the Unicode data files and any associated documentation (the "Data Files") or Unicode software and any associated documentation (the "Software") to deal in the Data Files or Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, and/or sell copies of the Data Files or Software, and to permit persons to whom the Data Files or Software are furnished to do so, provided that either (a) this copyright and permission notice appear with all copies of the Data Files or Software, or (b) this copyright and permission notice appear in associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE +WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall not be used in advertising or otherwise to promote the sale, use or other dealings in these Data Files or Software without prior written authorization of the copyright holder. + + +V. Jemalloc +Licensing + +jemalloc is released under the terms of the following BSD-derived license: +-------------------------------------------------------------------------------- +Copyright (C) 2002-2013 Jason Evans . +All rights reserved. +Copyright (C) 2007-2012 Mozilla Foundation. All rights reserved. +Copyright (C) 2009-2013 Facebook, Inc. All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: +1. Redistributions of source code must retain the above copyright notice(s), this list of conditions and the following disclaimer. +2. Redistributions in binary form must reproduce the above copyright notice(s), this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDER(S) ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER(S) BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +VI. libcurl v7.47.1, v7.48.0, v7.55.1 +COPYRIGHT AND PERMISSION NOTICE + +Copyright (c) 1996 - 2017, Daniel Stenberg, , and many contributors, see the THANKS file. + +All rights reserved. + +Permission to use, copy, modify, and distribute this software for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF THIRD PARTY RIGHTS. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall not be used in advertising or otherwise to promote the sale, use or other dealings in this Software without prior written authorization of the copyright holder. + +VII. [Intentionally Omitted] + +VIII. libwebsockets v1.7.3 +The Epic Games Online Services SDK is based in part on the work of the libwebsockets project (http://libwebsockets.org). Source code for the version of libwebsockets used in Epic Games Online Services SDK can be obtained at https://github.com/EpicGames/ThirdParty + +IX. OpenSSL 1.0.1e +Copyright (c) 1998-2018 The OpenSSL Project. All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, are +permitted provided that the following conditions are met: + +1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. + +2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. + +3. All advertising materials mentioning features or use of this software must display the following acknowledgment: +"This product includes software developed by the OpenSSL Project for use in the OpenSSL Toolkit. (http://www.openssl.org/)" + +4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to endorse or promote products derived from this software without prior written permission. For written permission, please contact openssl-core@openssl.org. + +5. Products derived from this software may not be called "OpenSSL" nor may "OpenSSL" appear in their names without prior written permission of the OpenSSL Project. + +6. Redistributions of any form whatsoever must retain the following acknowledgment: + "This product includes software developed by the OpenSSL Project for use in the OpenSSL Toolkit (http://www.openssl.org/)" + +THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +X. PLCrashReporter 1.2 +Except as noted below, PLCrashReporter is provided under the following license: + + Copyright (c) 2008 - 2014 Plausible Labs Cooperative, Inc. + All rights reserved. + + Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, + EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES + OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND + NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT + HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, + WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING + FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR + OTHER DEALINGS IN THE SOFTWARE. + +Additional contributions have been made under the same license terms as above, with copyright held by their respective authors: + + Damian Morris + Copyright (c) 2010 MOSO Corporation, Pty Ltd. + All rights reserved. + + HockeyApp/Bitstadium + Copyright (c) 2012 HockeyApp, Bit Stadium GmbH. + All rights reserved. + +The protobuf-c library, as well as the PLCrashLogWriterEncoding.c file are licensed as follows: + +Copyright 2008, Dave Benson. + +Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. + +XI. Protobuf +Copyright 2008 Google Inc. All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above +copyright notice, this list of conditions and the following disclaimer +in the documentation and/or other materials provided with the +distribution. + * Neither the name of Google Inc. nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +Code generated by the Protocol Buffer compiler is owned by the owner +of the input file used when generating it. This code is not +standalone and requires a support library to be linked with it. This +support library is itself covered by the above license. + +XII. Protobuf-c +Copyright (c) 2008-2016, Dave Benson and the protobuf-c authors. +All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +The code generated by the protoc-c compiler is owned by the owner of the input files used when generating it. This code is not standalone and requires a support library to be linked with it. This support library is covered by the above license. + +XIII. gflags +Copyright (c) 2006, Google Inc. +All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. + * Neither the name of Google Inc. nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +XIV. LibYUV +Copyright 2011 The LibYuv Project Authors. All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. + * Neither the name of Google nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +XV. WebRTC stable and trunk version +Copyright (c) 2011, The WebRTC project authors. All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. + + * Neither the name of Google nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +XVI. zlib +Copyright (C) 1995-2017 Jean-loup Gailly and Mark Adler + +XVII. DirectXTK +Copyright (c) 2012-2019 Microsoft Corp + +Permission is hereby granted, free of charge, to any person obtaining a copy of this +software and associated documentation files (the "Software"), to deal in the Software +without restriction, including without limitation the rights to use, copy, modify, +merge, publish, distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to the following +conditions: + +The above copyright notice and this permission notice shall be included in all copies +or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, +INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A +PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT +HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF +CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE +OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +XVIII. electron-prebuilt-compile +Copyright (c) 2013-2020 GitHub Inc. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +"Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE +LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION +WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +XIX. Node.js +Node.js is licensed for use as follows: + +""" +Copyright Node.js contributors. All rights reserved. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to +deal in the Software without restriction, including without limitation the +rights to use, copy, modify, merge, publish, distribute, sublicense, and/or +sell copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING +FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS +IN THE SOFTWARE. +""" + +This license applies to parts of Node.js originating from the +https://github.com/joyent/node repository: + +""" +Copyright Joyent, Inc. and other Node contributors. All rights reserved. +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to +deal in the Software without restriction, including without limitation the +rights to use, copy, modify, merge, publish, distribute, sublicense, and/or +sell copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING +FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS +IN THE SOFTWARE. +""" + +The Node.js license applies to all parts of Node.js that are not externally +maintained libraries. + +The externally maintained libraries used by Node.js are: + +- Acorn, located at deps/acorn, is licensed as follows: + """ + MIT License + + Copyright (C) 2012-2018 by various contributors (see AUTHORS) + + Permission is hereby granted, free of charge, to any person obtaining a copy + of this software and associated documentation files (the "Software"), to deal + in the Software without restriction, including without limitation the rights + to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + copies of the Software, and to permit persons to whom the Software is + furnished to do so, subject to the following conditions: + + The above copyright notice and this permission notice shall be included in + all copies or substantial portions of the Software. + + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + THE SOFTWARE. + """ + +- Acorn plugins, located at deps/acorn-plugins, is licensed as follows: + """ + Copyright (C) 2017-2018 by Adrian Heine + + Permission is hereby granted, free of charge, to any person obtaining a copy + of this software and associated documentation files (the "Software"), to deal + in the Software without restriction, including without limitation the rights + to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + copies of the Software, and to permit persons to whom the Software is + furnished to do so, subject to the following conditions: + + The above copyright notice and this permission notice shall be included in + all copies or substantial portions of the Software. + + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + THE SOFTWARE. + """ + +- c-ares, located at deps/cares, is licensed as follows: + """ + Copyright (c) 2007 - 2018, Daniel Stenberg with many contributors, see AUTHORS + file. + + Copyright 1998 by the Massachusetts Institute of Technology. + + Permission to use, copy, modify, and distribute this software and its + documentation for any purpose and without fee is hereby granted, provided that + the above copyright notice appear in all copies and that both that copyright + notice and this permission notice appear in supporting documentation, and that + the name of M.I.T. not be used in advertising or publicity pertaining to + distribution of the software without specific, written prior permission. + M.I.T. makes no representations about the suitability of this software for any + purpose. It is provided "as is" without express or implied warranty. + """ + +- cjs-module-lexer, located at deps/cjs-module-lexer, is licensed as follows: + """ + MIT License + ----------- + + Copyright (C) 2018-2020 Guy Bedford + + Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + + The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + """ + +- ICU, located at deps/icu-small, is licensed as follows: + """ + COPYRIGHT AND PERMISSION NOTICE (ICU 58 and later) + + Copyright © 1991-2020 Unicode, Inc. All rights reserved. + Distributed under the Terms of Use in https://www.unicode.org/copyright.html. + + Permission is hereby granted, free of charge, to any person obtaining + a copy of the Unicode data files and any associated documentation + (the "Data Files") or Unicode software and any associated documentation + (the "Software") to deal in the Data Files or Software + without restriction, including without limitation the rights to use, + copy, modify, merge, publish, distribute, and/or sell copies of + the Data Files or Software, and to permit persons to whom the Data Files + or Software are furnished to do so, provided that either + (a) this copyright and permission notice appear with all copies + of the Data Files or Software, or + (b) this copyright and permission notice appear in associated + Documentation. + + THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF + ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE + WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND + NONINFRINGEMENT OF THIRD PARTY RIGHTS. + IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS + NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL + DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, + DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER + TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR + PERFORMANCE OF THE DATA FILES OR SOFTWARE. + + Except as contained in this notice, the name of a copyright holder + shall not be used in advertising or otherwise to promote the sale, + use or other dealings in these Data Files or Software without prior + written authorization of the copyright holder. + + --------------------- + + Third-Party Software Licenses + + This section contains third-party software notices and/or additional + terms for licensed third-party software components included within ICU + libraries. + + 1. ICU License - ICU 1.8.1 to ICU 57.1 + + COPYRIGHT AND PERMISSION NOTICE + + Copyright (c) 1995-2016 International Business Machines Corporation and others + All rights reserved. + + Permission is hereby granted, free of charge, to any person obtaining + a copy of this software and associated documentation files (the + "Software"), to deal in the Software without restriction, including + without limitation the rights to use, copy, modify, merge, publish, + distribute, and/or sell copies of the Software, and to permit persons + to whom the Software is furnished to do so, provided that the above + copyright notice(s) and this permission notice appear in all copies of + the Software and that both the above copyright notice(s) and this + permission notice appear in supporting documentation. + + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, + EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF + MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT + OF THIRD PARTY RIGHTS. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + HOLDERS INCLUDED IN THIS NOTICE BE LIABLE FOR ANY CLAIM, OR ANY + SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, OR ANY DAMAGES WHATSOEVER + RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF + CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN + CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + + Except as contained in this notice, the name of a copyright holder + shall not be used in advertising or otherwise to promote the sale, use + or other dealings in this Software without prior written authorization + of the copyright holder. + + All trademarks and registered trademarks mentioned herein are the + property of their respective owners. + + 2. Chinese/Japanese Word Break Dictionary Data (cjdict.txt) + + # The Google Chrome software developed by Google is licensed under + # the BSD license. Other software included in this distribution is + # provided under other licenses, as set forth below. + # + # The BSD License + # http://opensource.org/licenses/bsd-license.php + # Copyright (C) 2006-2008, Google Inc. + # + # All rights reserved. + # + # Redistribution and use in source and binary forms, with or without + # modification, are permitted provided that the following conditions are met: + # + # Redistributions of source code must retain the above copyright notice, + # this list of conditions and the following disclaimer. + # Redistributions in binary form must reproduce the above + # copyright notice, this list of conditions and the following + # disclaimer in the documentation and/or other materials provided with + # the distribution. + # Neither the name of Google Inc. nor the names of its + # contributors may be used to endorse or promote products derived from + # this software without specific prior written permission. + # + # + # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + # CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + # INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + # MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + # DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE + # LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + # CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF + # SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR + # BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + # LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + # NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + # SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + # + # + # The word list in cjdict.txt are generated by combining three word lists + # listed below with further processing for compound word breaking. The + # frequency is generated with an iterative training against Google web + # corpora. + # + # * Libtabe (Chinese) + # - https://sourceforge.net/project/?group_id=1519 + # - Its license terms and conditions are shown below. + # + # * IPADIC (Japanese) + # - http://chasen.aist-nara.ac.jp/chasen/distribution.html + # - Its license terms and conditions are shown below. + # + # ---------COPYING.libtabe ---- BEGIN-------------------- + # + # /* + # * Copyright (c) 1999 TaBE Project. + # * Copyright (c) 1999 Pai-Hsiang Hsiao. + # * All rights reserved. + # * + # * Redistribution and use in source and binary forms, with or without + # * modification, are permitted provided that the following conditions + # * are met: + # * + # * . Redistributions of source code must retain the above copyright + # * notice, this list of conditions and the following disclaimer. + # * . Redistributions in binary form must reproduce the above copyright + # * notice, this list of conditions and the following disclaimer in + # * the documentation and/or other materials provided with the + # * distribution. + # * . Neither the name of the TaBE Project nor the names of its + # * contributors may be used to endorse or promote products derived + # * from this software without specific prior written permission. + # * + # * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + # * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + # * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + # * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + # * REGENTS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, + # * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + # * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + # * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + # * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + # * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + # * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED + # * OF THE POSSIBILITY OF SUCH DAMAGE. + # */ + # + # /* + # * Copyright (c) 1999 Computer Systems and Communication Lab, + # * Institute of Information Science, Academia + # * Sinica. All rights reserved. + # * + # * Redistribution and use in source and binary forms, with or without + # * modification, are permitted provided that the following conditions + # * are met: + # * + # * . Redistributions of source code must retain the above copyright + # * notice, this list of conditions and the following disclaimer. + # * . Redistributions in binary form must reproduce the above copyright + # * notice, this list of conditions and the following disclaimer in + # * the documentation and/or other materials provided with the + # * distribution. + # * . Neither the name of the Computer Systems and Communication Lab + # * nor the names of its contributors may be used to endorse or + # * promote products derived from this software without specific + # * prior written permission. + # * + # * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + # * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + # * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + # * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + # * REGENTS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, + # * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + # * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + # * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + # * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + # * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + # * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED + # * OF THE POSSIBILITY OF SUCH DAMAGE. + # */ + # + # Copyright 1996 Chih-Hao Tsai @ Beckman Institute, + # University of Illinois + # c-tsai4@uiuc.edu http://casper.beckman.uiuc.edu/~c-tsai4 + # + # ---------------COPYING.libtabe-----END-------------------------------- + # + # + # ---------------COPYING.ipadic-----BEGIN------------------------------- + # + # Copyright 2000, 2001, 2002, 2003 Nara Institute of Science + # and Technology. All Rights Reserved. + # + # Use, reproduction, and distribution of this software is permitted. + # Any copy of this software, whether in its original form or modified, + # must include both the above copyright notice and the following + # paragraphs. + # + # Nara Institute of Science and Technology (NAIST), + # the copyright holders, disclaims all warranties with regard to this + # software, including all implied warranties of merchantability and + # fitness, in no event shall NAIST be liable for + # any special, indirect or consequential damages or any damages + # whatsoever resulting from loss of use, data or profits, whether in an + # action of contract, negligence or other tortuous action, arising out + # of or in connection with the use or performance of this software. + # + # A large portion of the dictionary entries + # originate from ICOT Free Software. The following conditions for ICOT + # Free Software applies to the current dictionary as well. + # + # Each User may also freely distribute the Program, whether in its + # original form or modified, to any third party or parties, PROVIDED + # that the provisions of Section 3 ("NO WARRANTY") will ALWAYS appear + # on, or be attached to, the Program, which is distributed substantially + # in the same form as set out herein and that such intended + # distribution, if actually made, will neither violate or otherwise + # contravene any of the laws and regulations of the countries having + # jurisdiction over the User or the intended distribution itself. + # + # NO WARRANTY + # + # The program was produced on an experimental basis in the course of the + # research and development conducted during the project and is provided + # to users as so produced on an experimental basis. Accordingly, the + # program is provided without any warranty whatsoever, whether express, + # implied, statutory or otherwise. The term "warranty" used herein + # includes, but is not limited to, any warranty of the quality, + # performance, merchantability and fitness for a particular purpose of + # the program and the nonexistence of any infringement or violation of + # any right of any third party. + # + # Each user of the program will agree and understand, and be deemed to + # have agreed and understood, that there is no warranty whatsoever for + # the program and, accordingly, the entire risk arising from or + # otherwise connected with the program is assumed by the user. + # + # Therefore, neither ICOT, the copyright holder, or any other + # organization that participated in or was otherwise related to the + # development of the program and their respective officials, directors, + # officers and other employees shall be held liable for any and all + # damages, including, without limitation, general, special, incidental + # and consequential damages, arising out of or otherwise in connection + # with the use or inability to use the program or any product, material + # or result produced or otherwise obtained by using the program, + # regardless of whether they have been advised of, or otherwise had + # knowledge of, the possibility of such damages at any time during the + # project or thereafter. Each user will be deemed to have agreed to the + # foregoing by his or her commencement of use of the program. The term + # "use" as used herein includes, but is not limited to, the use, + # modification, copying and distribution of the program and the + # production of secondary products from the program. + # + # In the case where the program, whether in its original form or + # modified, was distributed or delivered to or received by a user from + # any person, organization or entity other than ICOT, unless it makes or + # grants independently of ICOT any specific warranty to the user in + # writing, such person, organization or entity, will also be exempted + # from and not be held liable to the user for any such damages as noted + # above as far as the program is concerned. + # + # ---------------COPYING.ipadic-----END---------------------------------- + + 3. Lao Word Break Dictionary Data (laodict.txt) + + # Copyright (c) 2013 International Business Machines Corporation + # and others. All Rights Reserved. + # + # Project: http://code.google.com/p/lao-dictionary/ + # Dictionary: http://lao-dictionary.googlecode.com/git/Lao-Dictionary.txt + # License: http://lao-dictionary.googlecode.com/git/Lao-Dictionary-LICENSE.txt + # (copied below) + # + # This file is derived from the above dictionary, with slight + # modifications. + # ---------------------------------------------------------------------- + # Copyright (C) 2013 Brian Eugene Wilson, Robert Martin Campbell. + # All rights reserved. + # + # Redistribution and use in source and binary forms, with or without + # modification, + # are permitted provided that the following conditions are met: + # + # + # Redistributions of source code must retain the above copyright notice, this + # list of conditions and the following disclaimer. Redistributions in + # binary form must reproduce the above copyright notice, this list of + # conditions and the following disclaimer in the documentation and/or + # other materials provided with the distribution. + # + # + # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + # "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + # LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + # FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + # COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, + # INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + # (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + # SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + # HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + # STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + # ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED + # OF THE POSSIBILITY OF SUCH DAMAGE. + # -------------------------------------------------------------------------- + + 4. Burmese Word Break Dictionary Data (burmesedict.txt) + + # Copyright (c) 2014 International Business Machines Corporation + # and others. All Rights Reserved. + # + # This list is part of a project hosted at: + # github.com/kanyawtech/myanmar-karen-word-lists + # + # -------------------------------------------------------------------------- + # Copyright (c) 2013, LeRoy Benjamin Sharon + # All rights reserved. + # + # Redistribution and use in source and binary forms, with or without + # modification, are permitted provided that the following conditions + # are met: Redistributions of source code must retain the above + # copyright notice, this list of conditions and the following + # disclaimer. Redistributions in binary form must reproduce the + # above copyright notice, this list of conditions and the following + # disclaimer in the documentation and/or other materials provided + # with the distribution. + # + # Neither the name Myanmar Karen Word Lists, nor the names of its + # contributors may be used to endorse or promote products derived + # from this software without specific prior written permission. + # + # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + # CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + # INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + # MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + # DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS + # BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + # EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED + # TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + # DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON + # ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR + # TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF + # THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + # SUCH DAMAGE. + # -------------------------------------------------------------------------- + + 5. Time Zone Database + + ICU uses the public domain data and code derived from Time Zone + Database for its time zone support. The ownership of the TZ database + is explained in BCP 175: Procedure for Maintaining the Time Zone + Database section 7. + + # 7. Database Ownership + # + # The TZ database itself is not an IETF Contribution or an IETF + # document. Rather it is a pre-existing and regularly updated work + # that is in the public domain, and is intended to remain in the + # public domain. Therefore, BCPs 78 [RFC5378] and 79 [RFC3979] do + # not apply to the TZ Database or contributions that individuals make + # to it. Should any claims be made and substantiated against the TZ + # Database, the organization that is providing the IANA + # Considerations defined in this RFC, under the memorandum of + # understanding with the IETF, currently ICANN, may act in accordance + # with all competent court orders. No ownership claims will be made + # by ICANN or the IETF Trust on the database or the code. Any person + # making a contribution to the database or code waives all rights to + # future claims in that contribution or in the TZ Database. + + 6. Google double-conversion + + Copyright 2006-2011, the V8 project authors. All rights reserved. + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are + met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following + disclaimer in the documentation and/or other materials provided + with the distribution. + * Neither the name of Google Inc. nor the names of its + contributors may be used to endorse or promote products derived + from this software without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + """ + +- libuv, located at deps/uv, is licensed as follows: + """ + libuv is licensed for use as follows: + + ==== + Copyright (c) 2015-present libuv project contributors. + + Permission is hereby granted, free of charge, to any person obtaining a copy + of this software and associated documentation files (the "Software"), to + deal in the Software without restriction, including without limitation the + rights to use, copy, modify, merge, publish, distribute, sublicense, and/or + sell copies of the Software, and to permit persons to whom the Software is + furnished to do so, subject to the following conditions: + + The above copyright notice and this permission notice shall be included in + all copies or substantial portions of the Software. + + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING + FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS + IN THE SOFTWARE. + ==== + + This license applies to parts of libuv originating from the + https://github.com/joyent/libuv repository: + + ==== + + Copyright Joyent, Inc. and other Node contributors. All rights reserved. + Permission is hereby granted, free of charge, to any person obtaining a copy + of this software and associated documentation files (the "Software"), to + deal in the Software without restriction, including without limitation the + rights to use, copy, modify, merge, publish, distribute, sublicense, and/or + sell copies of the Software, and to permit persons to whom the Software is + furnished to do so, subject to the following conditions: + + The above copyright notice and this permission notice shall be included in + all copies or substantial portions of the Software. + + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING + FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS + IN THE SOFTWARE. + + ==== + + This license applies to all parts of libuv that are not externally + maintained libraries. + + The externally maintained libraries used by libuv are: + + - tree.h (from FreeBSD), copyright Niels Provos. Two clause BSD license. + + - inet_pton and inet_ntop implementations, contained in src/inet.c, are + copyright the Internet Systems Consortium, Inc., and licensed under the ISC + license. + + - stdint-msvc2008.h (from msinttypes), copyright Alexander Chemeris. Three + clause BSD license. + + - pthread-fixes.c, copyright Google Inc. and Sony Mobile Communications AB. + Three clause BSD license. + + - android-ifaddrs.h, android-ifaddrs.c, copyright Berkeley Software Design + Inc, Kenneth MacKay and Emergya (Cloud4all, FP7/2007-2013, grant agreement + n° 289016). Three clause BSD license. + """ + +- llhttp, located at deps/llhttp, is licensed as follows: + """ + This software is licensed under the MIT License. + + Copyright Fedor Indutny, 2018. + + Permission is hereby granted, free of charge, to any person obtaining a + copy of this software and associated documentation files (the + "Software"), to deal in the Software without restriction, including + without limitation the rights to use, copy, modify, merge, publish, + distribute, sublicense, and/or sell copies of the Software, and to permit + persons to whom the Software is furnished to do so, subject to the + following conditions: + + The above copyright notice and this permission notice shall be included + in all copies or substantial portions of the Software. + + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS + OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF + MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN + NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, + DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR + OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE + USE OR OTHER DEALINGS IN THE SOFTWARE. + """ + +- OpenSSL, located at deps/openssl, is licensed as follows: + """ + Copyright (c) 1998-2019 The OpenSSL Project. All rights reserved. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions + are met: + + 1. Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + + 2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in + the documentation and/or other materials provided with the + distribution. + + 3. All advertising materials mentioning features or use of this + software must display the following acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit. (http://www.openssl.org/)" + + 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to + endorse or promote products derived from this software without + prior written permission. For written permission, please contact + openssl-core@openssl.org. + + 5. Products derived from this software may not be called "OpenSSL" + nor may "OpenSSL" appear in their names without prior written + permission of the OpenSSL Project. + + 6. Redistributions of any form whatsoever must retain the following + acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit (http://www.openssl.org/)" + + THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY + EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR + ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED + OF THE POSSIBILITY OF SUCH DAMAGE. + ==================================================================== + + This product includes cryptographic software written by Eric Young + (eay@cryptsoft.com). This product includes software written by Tim + Hudson (tjh@cryptsoft.com). + """ + +- Punycode.js, located at lib/punycode.js, is licensed as follows: + """ + Copyright Mathias Bynens + + Permission is hereby granted, free of charge, to any person obtaining + a copy of this software and associated documentation files (the + "Software"), to deal in the Software without restriction, including + without limitation the rights to use, copy, modify, merge, publish, + distribute, sublicense, and/or sell copies of the Software, and to + permit persons to whom the Software is furnished to do so, subject to + the following conditions: + + The above copyright notice and this permission notice shall be + included in all copies or substantial portions of the Software. + + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, + EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF + MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND + NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE + LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION + OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION + WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + """ + +- V8, located at deps/v8, is licensed as follows: + """ + This license applies to all parts of V8 that are not externally + maintained libraries. The externally maintained libraries used by V8 + are: + + - PCRE test suite, located in + test/mjsunit/third_party/regexp-pcre/regexp-pcre.js. This is based on the + test suite from PCRE-7.3, which is copyrighted by the University + of Cambridge and Google, Inc. The copyright notice and license + are embedded in regexp-pcre.js. + + - Layout tests, located in test/mjsunit/third_party/object-keys. These are + based on layout tests from webkit.org which are copyrighted by + Apple Computer, Inc. and released under a 3-clause BSD license. + + - Strongtalk assembler, the basis of the files assembler-arm-inl.h, + assembler-arm.cc, assembler-arm.h, assembler-ia32-inl.h, + assembler-ia32.cc, assembler-ia32.h, assembler-x64-inl.h, + assembler-x64.cc, assembler-x64.h, assembler-mips-inl.h, + assembler-mips.cc, assembler-mips.h, assembler.cc and assembler.h. + This code is copyrighted by Sun Microsystems Inc. and released + under a 3-clause BSD license. + + - Valgrind client API header, located at src/third_party/valgrind/valgrind.h + This is released under the BSD license. + + - The Wasm C/C++ API headers, located at third_party/wasm-api/wasm.{h,hh} + This is released under the Apache license. The API's upstream prototype + implementation also formed the basis of V8's implementation in + src/wasm/c-api.cc. + + These libraries have their own licenses; we recommend you read them, + as their terms may differ from the terms below. + + Further license information can be found in LICENSE files located in + sub-directories. + + Copyright 2014, the V8 project authors. All rights reserved. + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are + met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following + disclaimer in the documentation and/or other materials provided + with the distribution. + * Neither the name of Google Inc. nor the names of its + contributors may be used to endorse or promote products derived + from this software without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + """ + +- SipHash, located at deps/v8/src/third_party/siphash, is licensed as follows: + """ + SipHash reference C implementation + + Copyright (c) 2016 Jean-Philippe Aumasson + + To the extent possible under law, the author(s) have dedicated all + copyright and related and neighboring rights to this software to the public + domain worldwide. This software is distributed without any warranty. + """ + +- zlib, located at deps/zlib, is licensed as follows: + """ + zlib.h -- interface of the 'zlib' general purpose compression library + version 1.2.11, January 15th, 2017 + + Copyright (C) 1995-2017 Jean-loup Gailly and Mark Adler + + This software is provided 'as-is', without any express or implied + warranty. In no event will the authors be held liable for any damages + arising from the use of this software. + + Permission is granted to anyone to use this software for any purpose, + including commercial applications, and to alter it and redistribute it + freely, subject to the following restrictions: + + 1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. + 2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. + 3. This notice may not be removed or altered from any source distribution. + + Jean-loup Gailly Mark Adler + jloup@gzip.org madler@alumni.caltech.edu + """ + +- npm, located at deps/npm, is licensed as follows: + """ + The npm application + Copyright (c) npm, Inc. and Contributors + Licensed on the terms of The Artistic License 2.0 + + Node package dependencies of the npm application + Copyright (c) their respective copyright owners + Licensed on their respective license terms + + The npm public registry at https://registry.npmjs.org + and the npm website at https://www.npmjs.com + Operated by npm, Inc. + Use governed by terms published on https://www.npmjs.com + + "Node.js" + Trademark Joyent, Inc., https://joyent.com + Neither npm nor npm, Inc. are affiliated with Joyent, Inc. + + The Node.js application + Project of Node Foundation, https://nodejs.org + + The npm Logo + Copyright (c) Mathias Pettersson and Brian Hammond + + "Gubblebum Blocky" typeface + Copyright (c) Tjarda Koster, https://jelloween.deviantart.com + Used with permission + + -------- + + The Artistic License 2.0 + + Copyright (c) 2000-2006, The Perl Foundation. + + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + + Preamble + + This license establishes the terms under which a given free software + Package may be copied, modified, distributed, and/or redistributed. + The intent is that the Copyright Holder maintains some artistic + control over the development of that Package while still keeping the + Package available as open source and free software. + + You are always permitted to make arrangements wholly outside of this + license directly with the Copyright Holder of a given Package. If the + terms of this license do not permit the full use that you propose to + make of the Package, you should contact the Copyright Holder and seek + a different licensing arrangement. + + Definitions + + "Copyright Holder" means the individual(s) or organization(s) + named in the copyright notice for the entire Package. + + "Contributor" means any party that has contributed code or other + material to the Package, in accordance with the Copyright Holder's + procedures. + + "You" and "your" means any person who would like to copy, + distribute, or modify the Package. + + "Package" means the collection of files distributed by the + Copyright Holder, and derivatives of that collection and/or of + those files. A given Package may consist of either the Standard + Version, or a Modified Version. + + "Distribute" means providing a copy of the Package or making it + accessible to anyone else, or in the case of a company or + organization, to others outside of your company or organization. + + "Distributor Fee" means any fee that you charge for Distributing + this Package or providing support for this Package to another + party. It does not mean licensing fees. + + "Standard Version" refers to the Package if it has not been + modified, or has been modified only in ways explicitly requested + by the Copyright Holder. + + "Modified Version" means the Package, if it has been changed, and + such changes were not explicitly requested by the Copyright + Holder. + + "Original License" means this Artistic License as Distributed with + the Standard Version of the Package, in its current version or as + it may be modified by The Perl Foundation in the future. + + "Source" form means the source code, documentation source, and + configuration files for the Package. + + "Compiled" form means the compiled bytecode, object code, binary, + or any other form resulting from mechanical transformation or + translation of the Source form. + + Permission for Use and Modification Without Distribution + + (1) You are permitted to use the Standard Version and create and use + Modified Versions for any purpose without restriction, provided that + you do not Distribute the Modified Version. + + Permissions for Redistribution of the Standard Version + + (2) You may Distribute verbatim copies of the Source form of the + Standard Version of this Package in any medium without restriction, + either gratis or for a Distributor Fee, provided that you duplicate + all of the original copyright notices and associated disclaimers. At + your discretion, such verbatim copies may or may not include a + Compiled form of the Package. + + (3) You may apply any bug fixes, portability changes, and other + modifications made available from the Copyright Holder. The resulting + Package will still be considered the Standard Version, and as such + will be subject to the Original License. + + Distribution of Modified Versions of the Package as Source + + (4) You may Distribute your Modified Version as Source (either gratis + or for a Distributor Fee, and with or without a Compiled form of the + Modified Version) provided that you clearly document how it differs + from the Standard Version, including, but not limited to, documenting + any non-standard features, executables, or modules, and provided that + you do at least ONE of the following: + + (a) make the Modified Version available to the Copyright Holder + of the Standard Version, under the Original License, so that the + Copyright Holder may include your modifications in the Standard + Version. + + (b) ensure that installation of your Modified Version does not + prevent the user installing or running the Standard Version. In + addition, the Modified Version must bear a name that is different + from the name of the Standard Version. + + (c) allow anyone who receives a copy of the Modified Version to + make the Source form of the Modified Version available to others + under + + (i) the Original License or + + (ii) a license that permits the licensee to freely copy, + modify and redistribute the Modified Version using the same + licensing terms that apply to the copy that the licensee + received, and requires that the Source form of the Modified + Version, and of any works derived from it, be made freely + available in that license fees are prohibited but Distributor + Fees are allowed. + + Distribution of Compiled Forms of the Standard Version + or Modified Versions without the Source + + (5) You may Distribute Compiled forms of the Standard Version without + the Source, provided that you include complete instructions on how to + get the Source of the Standard Version. Such instructions must be + valid at the time of your distribution. If these instructions, at any + time while you are carrying out such distribution, become invalid, you + must provide new instructions on demand or cease further distribution. + If you provide valid instructions or cease distribution within thirty + days after you become aware that the instructions are invalid, then + you do not forfeit any of your rights under this license. + + (6) You may Distribute a Modified Version in Compiled form without + the Source, provided that you comply with Section 4 with respect to + the Source of the Modified Version. + + Aggregating or Linking the Package + + (7) You may aggregate the Package (either the Standard Version or + Modified Version) with other packages and Distribute the resulting + aggregation provided that you do not charge a licensing fee for the + Package. Distributor Fees are permitted, and licensing fees for other + components in the aggregation are permitted. The terms of this license + apply to the use and Distribution of the Standard or Modified Versions + as included in the aggregation. + + (8) You are permitted to link Modified and Standard Versions with + other works, to embed the Package in a larger work of your own, or to + build stand-alone binary or bytecode versions of applications that + include the Package, and Distribute the result without restriction, + provided the result does not expose a direct interface to the Package. + + Items That are Not Considered Part of a Modified Version + + (9) Works (including, but not limited to, modules and scripts) that + merely extend or make use of the Package, do not, by themselves, cause + the Package to be a Modified Version. In addition, such works are not + considered parts of the Package itself, and are not subject to the + terms of this license. + + General Provisions + + (10) Any use, modification, and distribution of the Standard or + Modified Versions is governed by this Artistic License. By using, + modifying or distributing the Package, you accept this license. Do not + use, modify, or distribute the Package, if you do not accept this + license. + + (11) If your Modified Version has been derived from a Modified + Version made by someone other than you, you are nevertheless required + to ensure that your Modified Version complies with the requirements of + this license. + + (12) This license does not grant you the right to use any trademark, + service mark, tradename, or logo of the Copyright Holder. + + (13) This license includes the non-exclusive, worldwide, + free-of-charge patent license to make, have made, use, offer to sell, + sell, import and otherwise transfer the Package with respect to any + patent claims licensable by the Copyright Holder that are necessarily + infringed by the Package. If you institute patent litigation + (including a cross-claim or counterclaim) against any party alleging + that the Package constitutes direct or contributory patent + infringement, then this Artistic License to you shall terminate on the + date that such litigation is filed. + + (14) Disclaimer of Warranty: + THE PACKAGE IS PROVIDED BY THE COPYRIGHT HOLDER AND CONTRIBUTORS "AS + IS' AND WITHOUT ANY EXPRESS OR IMPLIED WARRANTIES. THE IMPLIED + WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR + NON-INFRINGEMENT ARE DISCLAIMED TO THE EXTENT PERMITTED BY YOUR LOCAL + LAW. UNLESS REQUIRED BY LAW, NO COPYRIGHT HOLDER OR CONTRIBUTOR WILL + BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL + DAMAGES ARISING IN ANY WAY OUT OF THE USE OF THE PACKAGE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + -------- + """ + +- GYP, located at tools/gyp, is licensed as follows: + """ + Copyright (c) 2020 Node.js contributors. All rights reserved. + Copyright (c) 2009 Google Inc. All rights reserved. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are + met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following disclaimer + in the documentation and/or other materials provided with the + distribution. + * Neither the name of Google Inc. nor the names of its + contributors may be used to endorse or promote products derived from + this software without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + """ + +- inspector_protocol, located at tools/inspector_protocol, is licensed as follows: + """ + // Copyright 2016 The Chromium Authors. All rights reserved. + // + // Redistribution and use in source and binary forms, with or without + // modification, are permitted provided that the following conditions are + // met: + // + // * Redistributions of source code must retain the above copyright + // notice, this list of conditions and the following disclaimer. + // * Redistributions in binary form must reproduce the above + // copyright notice, this list of conditions and the following disclaimer + // in the documentation and/or other materials provided with the + // distribution. + // * Neither the name of Google Inc. nor the names of its + // contributors may be used to endorse or promote products derived from + // this software without specific prior written permission. + // + // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + // "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + // LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + // A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + // OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + // SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + // LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + // DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + // THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + """ + +- jinja2, located at tools/inspector_protocol/jinja2, is licensed as follows: + """ + Copyright (c) 2009 by the Jinja Team, see AUTHORS for more details. + + Some rights reserved. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are + met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following + disclaimer in the documentation and/or other materials provided + with the distribution. + + * The names of the contributors may not be used to endorse or + promote products derived from this software without specific + prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + """ + +- markupsafe, located at tools/inspector_protocol/markupsafe, is licensed as follows: + """ + Copyright (c) 2010 by Armin Ronacher and contributors. See AUTHORS + for more details. + + Some rights reserved. + + Redistribution and use in source and binary forms of the software as well + as documentation, with or without modification, are permitted provided + that the following conditions are met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following + disclaimer in the documentation and/or other materials provided + with the distribution. + + * The names of the contributors may not be used to endorse or + promote products derived from this software without specific + prior written permission. + + THIS SOFTWARE AND DOCUMENTATION IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT + NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER + OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + SOFTWARE AND DOCUMENTATION, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH + DAMAGE. + """ + +- cpplint.py, located at tools/cpplint.py, is licensed as follows: + """ + Copyright (c) 2009 Google Inc. All rights reserved. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are + met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following disclaimer + in the documentation and/or other materials provided with the + distribution. + * Neither the name of Google Inc. nor the names of its + contributors may be used to endorse or promote products derived from + this software without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + """ + +- ESLint, located at tools/node_modules/eslint, is licensed as follows: + """ + Copyright JS Foundation and other contributors, https://js.foundation + + Permission is hereby granted, free of charge, to any person obtaining a copy + of this software and associated documentation files (the "Software"), to deal + in the Software without restriction, including without limitation the rights + to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + copies of the Software, and to permit persons to whom the Software is + furnished to do so, subject to the following conditions: + + The above copyright notice and this permission notice shall be included in + all copies or substantial portions of the Software. + + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + THE SOFTWARE. + """ + +- babel-eslint, located at tools/node_modules/babel-eslint, is licensed as follows: + """ + Copyright (c) 2014-2016 Sebastian McKenzie + + MIT License + + Permission is hereby granted, free of charge, to any person obtaining + a copy of this software and associated documentation files (the + "Software"), to deal in the Software without restriction, including + without limitation the rights to use, copy, modify, merge, publish, + distribute, sublicense, and/or sell copies of the Software, and to + permit persons to whom the Software is furnished to do so, subject to + the following conditions: + + The above copyright notice and this permission notice shall be + included in all copies or substantial portions of the Software. + + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, + EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF + MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND + NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE + LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION + OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION + WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + """ + +- gtest, located at test/cctest/gtest, is licensed as follows: + """ + Copyright 2008, Google Inc. + All rights reserved. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are + met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following disclaimer + in the documentation and/or other materials provided with the + distribution. + * Neither the name of Google Inc. nor the names of its + contributors may be used to endorse or promote products derived from + this software without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + """ + +- nghttp2, located at deps/nghttp2, is licensed as follows: + """ + The MIT License + + Copyright (c) 2012, 2014, 2015, 2016 Tatsuhiro Tsujikawa + Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors + + Permission is hereby granted, free of charge, to any person obtaining + a copy of this software and associated documentation files (the + "Software"), to deal in the Software without restriction, including + without limitation the rights to use, copy, modify, merge, publish, + distribute, sublicense, and/or sell copies of the Software, and to + permit persons to whom the Software is furnished to do so, subject to + the following conditions: + + The above copyright notice and this permission notice shall be + included in all copies or substantial portions of the Software. + + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, + EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF + MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND + NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE + LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION + OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION + WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + """ + +- ngtcp2, located at deps/ngtcp2, is licensed as follows: + """ + The MIT License + + Copyright (c) 2016 ngtcp2 contributors + + Permission is hereby granted, free of charge, to any person obtaining + a copy of this software and associated documentation files (the + "Software"), to deal in the Software without restriction, including + without limitation the rights to use, copy, modify, merge, publish, + distribute, sublicense, and/or sell copies of the Software, and to + permit persons to whom the Software is furnished to do so, subject to + the following conditions: + + The above copyright notice and this permission notice shall be + included in all copies or substantial portions of the Software. + + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, + EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF + MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND + NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE + LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION + OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION + WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + """ + +- nghttp3, located at deps/nghttp3, is licensed as follows: + """ + The MIT License + + Copyright (c) 2019 nghttp3 contributors + + Permission is hereby granted, free of charge, to any person obtaining + a copy of this software and associated documentation files (the + "Software"), to deal in the Software without restriction, including + without limitation the rights to use, copy, modify, merge, publish, + distribute, sublicense, and/or sell copies of the Software, and to + permit persons to whom the Software is furnished to do so, subject to + the following conditions: + + The above copyright notice and this permission notice shall be + included in all copies or substantial portions of the Software. + + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, + EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF + MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND + NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE + LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION + OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION + WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + """ + +- node-inspect, located at deps/node-inspect, is licensed as follows: + """ + Copyright Node.js contributors. All rights reserved. + + Permission is hereby granted, free of charge, to any person obtaining a copy + of this software and associated documentation files (the "Software"), to + deal in the Software without restriction, including without limitation the + rights to use, copy, modify, merge, publish, distribute, sublicense, and/or + sell copies of the Software, and to permit persons to whom the Software is + furnished to do so, subject to the following conditions: + + The above copyright notice and this permission notice shall be included in + all copies or substantial portions of the Software. + + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING + FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS + IN THE SOFTWARE. + """ + +- large_pages, located at src/large_pages, is licensed as follows: + """ + Copyright (C) 2018 Intel Corporation + + Permission is hereby granted, free of charge, to any person obtaining a copy + of this software and associated documentation files (the "Software"), + to deal in the Software without restriction, including without limitation + the rights to use, copy, modify, merge, publish, distribute, sublicense, + and/or sell copies of the Software, and to permit persons to whom + the Software is furnished to do so, subject to the following conditions: + + The above copyright notice and this permission notice shall be included + in all copies or substantial portions of the Software. + + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS + OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL + THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES + OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, + ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE + OR OTHER DEALINGS IN THE SOFTWARE. + """ + +- caja, located at lib/internal/freeze_intrinsics.js, is licensed as follows: + """ + Adapted from SES/Caja - Copyright (C) 2011 Google Inc. + Copyright (C) 2018 Agoric + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + """ + +- brotli, located at deps/brotli, is licensed as follows: + """ + Copyright (c) 2009, 2010, 2013-2016 by the Brotli Authors. + + Permission is hereby granted, free of charge, to any person obtaining a copy + of this software and associated documentation files (the "Software"), to deal + in the Software without restriction, including without limitation the rights + to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + copies of the Software, and to permit persons to whom the Software is + furnished to do so, subject to the following conditions: + + The above copyright notice and this permission notice shall be included in + all copies or substantial portions of the Software. + + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + THE SOFTWARE. + """ + +- HdrHistogram, located at deps/histogram, is licensed as follows: + """ + The code in this repository code was Written by Gil Tene, Michael Barker, + and Matt Warren, and released to the public domain, as explained at + http://creativecommons.org/publicdomain/zero/1.0/ + + For users of this code who wish to consume it under the "BSD" license + rather than under the public domain or CC0 contribution text mentioned + above, the code found under this directory is *also* provided under the + following license (commonly referred to as the BSD 2-Clause License). This + license does not detract from the above stated release of the code into + the public domain, and simply represents an additional license granted by + the Author. + + ----------------------------------------------------------------------------- + ** Beginning of "BSD 2-Clause License" text. ** + + Copyright (c) 2012, 2013, 2014 Gil Tene + Copyright (c) 2014 Michael Barker + Copyright (c) 2014 Matt Warren + All rights reserved. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are met: + + 1. Redistributions of source code must retain the above copyright notice, + this list of conditions and the following disclaimer. + + 2. Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE + LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF + SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS + INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN + CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF + THE POSSIBILITY OF SUCH DAMAGE. + """ + +- highlight.js, located at doc/api_assets/highlight.pack.js, is licensed as follows: + """ + BSD 3-Clause License + + Copyright (c) 2006, Ivan Sagalaev. + All rights reserved. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + + * Neither the name of the copyright holder nor the names of its + contributors may be used to endorse or promote products derived from + this software without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE + FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, + OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + """ + +- node-heapdump, located at src/heap_utils.cc, is licensed as follows: + """ + ISC License + + Copyright (c) 2012, Ben Noordhuis + + Permission to use, copy, modify, and/or distribute this software for any + purpose with or without fee is hereby granted, provided that the above + copyright notice and this permission notice appear in all copies. + + THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES + WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR + ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES + WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN + ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF + OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + + === src/compat.h src/compat-inl.h === + + ISC License + + Copyright (c) 2014, StrongLoop Inc. + + Permission to use, copy, modify, and/or distribute this software for any + purpose with or without fee is hereby granted, provided that the above + copyright notice and this permission notice appear in all copies. + + THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES + WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR + ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES + WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN + ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF + OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + """ + +- rimraf, located at lib/internal/fs/rimraf.js, is licensed as follows: + """ + The ISC License + + Copyright (c) Isaac Z. Schlueter and Contributors + + Permission to use, copy, modify, and/or distribute this software for any + purpose with or without fee is hereby granted, provided that the above + copyright notice and this permission notice appear in all copies. + + THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES + WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR + ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES + WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN + ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR + IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + """ + +- uvwasi, located at deps/uvwasi, is licensed as follows: + """ + MIT License + + Copyright (c) 2019 Colin Ihrig and Contributors + + Permission is hereby granted, free of charge, to any person obtaining a copy + of this software and associated documentation files (the "Software"), to deal + in the Software without restriction, including without limitation the rights + to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + copies of the Software, and to permit persons to whom the Software is + furnished to do so, subject to the following conditions: + + The above copyright notice and this permission notice shall be included in all + copies or substantial portions of the Software. + + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + SOFTWARE. + """ + +XX. React +MIT License + +Copyright (c) Facebook, Inc. and its affiliates. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + +XXI. Roboto Font +Apache License +Font data copyright Google 2012 + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + “License” shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + “Licensor” shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + “Legal Entity” shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + “control” means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + “You” (or “Your”) shall mean an individual or Legal Entity + exercising permissions granted by this License. + + “Source” form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + “Object” form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + “Work” shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + “Derivative Works” shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + “Contribution” shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, “submitted” + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as “Not a Contribution.” + + “Contributor” shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a “NOTICE” text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an “AS IS” BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets “[]” + replaced with your own identifying information. (Don’t include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same “printed page” as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the “License”); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an “AS IS” BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + +XXII. Flatbuffers +https://github.com/google/flatbuffers + +Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + +XXIII. cpp-httplib +The MIT License (MIT) + +Copyright (c) 2017 yhirose + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + +XXIV.OpenSSL toolkit + The OpenSSL toolkit stays under a double license, i.e. both the conditions of + the OpenSSL License and the original SSLeay license apply to the toolkit. + See below for the actual license texts. + + OpenSSL License + --------------- + +/* ==================================================================== + * Copyright (c) 1998-2019 The OpenSSL Project. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the + * distribution. + * + * 3. All advertising materials mentioning features or use of this + * software must display the following acknowledgment: + * "This product includes software developed by the OpenSSL Project + * for use in the OpenSSL Toolkit. (http://www.openssl.org/)" + * + * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to + * endorse or promote products derived from this software without + * prior written permission. For written permission, please contact + * openssl-core@openssl.org. + * + * 5. Products derived from this software may not be called "OpenSSL" + * nor may "OpenSSL" appear in their names without prior written + * permission of the OpenSSL Project. + * + * 6. Redistributions of any form whatsoever must retain the following + * acknowledgment: + * "This product includes software developed by the OpenSSL Project + * for use in the OpenSSL Toolkit (http://www.openssl.org/)" + * + * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY + * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR + * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED + * OF THE POSSIBILITY OF SUCH DAMAGE. + * ==================================================================== + * + * This product includes cryptographic software written by Eric Young + * (eay@cryptsoft.com). This product includes software written by Tim + * Hudson (tjh@cryptsoft.com). + * + */ + + Original SSLeay License + ----------------------- + +/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) + * All rights reserved. + * + * This package is an SSL implementation written + * by Eric Young (eay@cryptsoft.com). + * The implementation was written so as to conform with Netscapes SSL. + * + * This library is free for commercial and non-commercial use as long as + * the following conditions are aheared to. The following conditions + * apply to all code found in this distribution, be it the RC4, RSA, + * lhash, DES, etc., code; not just the SSL code. The SSL documentation + * included with this distribution is covered by the same copyright terms + * except that the holder is Tim Hudson (tjh@cryptsoft.com). + * + * Copyright remains Eric Young's, and as such any Copyright notices in + * the code are not to be removed. + * If this package is used in a product, Eric Young should be given attribution + * as the author of the parts of the library used. + * This can be in the form of a textual message at program startup or + * in documentation (online or textual) provided with the package. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * 3. All advertising materials mentioning features or use of this software + * must display the following acknowledgement: + * "This product includes cryptographic software written by + * Eric Young (eay@cryptsoft.com)" + * The word 'cryptographic' can be left out if the rouines from the library + * being used are not cryptographic related :-). + * 4. If you include any Windows specific code (or a derivative thereof) from + * the apps directory (application code) you must include an acknowledgement: + * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" + * + * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + * The licence and distribution terms for any publically available version or + * derivative of this code cannot be changed. i.e. this code cannot simply be + * copied and put under another distribution licence + * [including the GNU Public Licence.] + */ + +XXV. Libcurl +COPYRIGHT AND PERMISSION NOTICE + +Copyright (c) 1996 - 2021, Daniel Stenberg, daniel@haxx.se, and many contributors, see the THANKS file. + +All rights reserved. + +Permission to use, copy, modify, and distribute this software for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF THIRD PARTY RIGHTS. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall not be used in advertising or otherwise to promote the sale, use or other dealings in this Software without prior written authorization of the copyright holder. \ No newline at end of file diff --git a/ThirdPartyNotices/ThirdPartySoftwareNotice.txt.meta b/ThirdPartyNotices/ThirdPartySoftwareNotice.txt.meta new file mode 100644 index 00000000..9771370d --- /dev/null +++ b/ThirdPartyNotices/ThirdPartySoftwareNotice.txt.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: e51da2bfb9f30384d92d73279620bdb8 +TextScriptImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/VERSION.txt b/VERSION.txt index 43064bc5..4f533ab8 100644 --- a/VERSION.txt +++ b/VERSION.txt @@ -1 +1 @@ -v.1.3.0 \ No newline at end of file +v.1.5.0 \ No newline at end of file