diff --git a/Assets/Plugins/EpicOnlineServices/Bin/XSX/EOSSDK-XSX-Shipping.dll b/Assets/Plugins/EpicOnlineServices/Bin/XSX/EOSSDK-XSX-Shipping.dll index 5f09012..207db4c 100644 Binary files a/Assets/Plugins/EpicOnlineServices/Bin/XSX/EOSSDK-XSX-Shipping.dll and b/Assets/Plugins/EpicOnlineServices/Bin/XSX/EOSSDK-XSX-Shipping.dll differ diff --git a/Assets/Plugins/EpicOnlineServices/Bin/XboxOneGDK/EOSSDK-XboxOneGDK-Shipping.dll b/Assets/Plugins/EpicOnlineServices/Bin/XboxOneGDK/EOSSDK-XboxOneGDK-Shipping.dll index 90fcb6b..a5c3739 100644 Binary files a/Assets/Plugins/EpicOnlineServices/Bin/XboxOneGDK/EOSSDK-XboxOneGDK-Shipping.dll and b/Assets/Plugins/EpicOnlineServices/Bin/XboxOneGDK/EOSSDK-XboxOneGDK-Shipping.dll differ diff --git a/Assets/Plugins/EpicOnlineServices/Source/Generated/AntiCheatClient/AntiCheatClientInterface.cs b/Assets/Plugins/EpicOnlineServices/Source/Generated/AntiCheatClient/AntiCheatClientInterface.cs index 5c12865..c4fc98a 100644 --- a/Assets/Plugins/EpicOnlineServices/Source/Generated/AntiCheatClient/AntiCheatClientInterface.cs +++ b/Assets/Plugins/EpicOnlineServices/Source/Generated/AntiCheatClient/AntiCheatClientInterface.cs @@ -278,26 +278,29 @@ namespace Epic.OnlineServices.AntiCheatClient /// 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. + /// session until after restarting the game. Note that this function returns + /// when everything is normal and there is no violation to display. /// /// Structure containing input data. - /// On success, receives a code describing the violation that occurred. + /// 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) + public Result PollStatus(PollStatusOptions options, out AntiCheatClientViolationType outViolationType, out string outMessage) { var optionsAddress = System.IntPtr.Zero; Helper.TryMarshalSet(ref optionsAddress, options); + outViolationType = Helper.GetDefault(); + System.IntPtr outMessageAddress = System.IntPtr.Zero; uint OutMessageLength = options.OutMessageLength; Helper.TryMarshalAllocate(ref outMessageAddress, OutMessageLength); - var funcResult = Bindings.EOS_AntiCheatClient_PollStatus(InnerHandle, optionsAddress, violationType, outMessageAddress); + var funcResult = Bindings.EOS_AntiCheatClient_PollStatus(InnerHandle, optionsAddress, ref outViolationType, outMessageAddress); Helper.TryMarshalDispose(ref optionsAddress); diff --git a/Assets/Plugins/EpicOnlineServices/Source/Generated/Bindings.cs b/Assets/Plugins/EpicOnlineServices/Source/Generated/Bindings.cs index e73cfc1..4cd6c74 100644 --- a/Assets/Plugins/EpicOnlineServices/Source/Generated/Bindings.cs +++ b/Assets/Plugins/EpicOnlineServices/Source/Generated/Bindings.cs @@ -510,6 +510,34 @@ namespace Epic.OnlineServices if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException("EOS_ContinuanceToken_ToString"); EOS_ContinuanceToken_ToString = (EOS_ContinuanceToken_ToStringCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_ContinuanceToken_ToStringCallback)); + functionPointer = getFunctionPointer(libraryHandle, "EOS_CustomInvites_AddNotifyCustomInviteAccepted"); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException("EOS_CustomInvites_AddNotifyCustomInviteAccepted"); + EOS_CustomInvites_AddNotifyCustomInviteAccepted = (EOS_CustomInvites_AddNotifyCustomInviteAcceptedCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_CustomInvites_AddNotifyCustomInviteAcceptedCallback)); + + functionPointer = getFunctionPointer(libraryHandle, "EOS_CustomInvites_AddNotifyCustomInviteReceived"); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException("EOS_CustomInvites_AddNotifyCustomInviteReceived"); + EOS_CustomInvites_AddNotifyCustomInviteReceived = (EOS_CustomInvites_AddNotifyCustomInviteReceivedCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_CustomInvites_AddNotifyCustomInviteReceivedCallback)); + + functionPointer = getFunctionPointer(libraryHandle, "EOS_CustomInvites_FinalizeInvite"); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException("EOS_CustomInvites_FinalizeInvite"); + EOS_CustomInvites_FinalizeInvite = (EOS_CustomInvites_FinalizeInviteCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_CustomInvites_FinalizeInviteCallback)); + + functionPointer = getFunctionPointer(libraryHandle, "EOS_CustomInvites_RemoveNotifyCustomInviteAccepted"); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException("EOS_CustomInvites_RemoveNotifyCustomInviteAccepted"); + EOS_CustomInvites_RemoveNotifyCustomInviteAccepted = (EOS_CustomInvites_RemoveNotifyCustomInviteAcceptedCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_CustomInvites_RemoveNotifyCustomInviteAcceptedCallback)); + + functionPointer = getFunctionPointer(libraryHandle, "EOS_CustomInvites_RemoveNotifyCustomInviteReceived"); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException("EOS_CustomInvites_RemoveNotifyCustomInviteReceived"); + EOS_CustomInvites_RemoveNotifyCustomInviteReceived = (EOS_CustomInvites_RemoveNotifyCustomInviteReceivedCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_CustomInvites_RemoveNotifyCustomInviteReceivedCallback)); + + functionPointer = getFunctionPointer(libraryHandle, "EOS_CustomInvites_SendCustomInvite"); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException("EOS_CustomInvites_SendCustomInvite"); + EOS_CustomInvites_SendCustomInvite = (EOS_CustomInvites_SendCustomInviteCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_CustomInvites_SendCustomInviteCallback)); + + functionPointer = getFunctionPointer(libraryHandle, "EOS_CustomInvites_SetCustomInvite"); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException("EOS_CustomInvites_SetCustomInvite"); + EOS_CustomInvites_SetCustomInvite = (EOS_CustomInvites_SetCustomInviteCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_CustomInvites_SetCustomInviteCallback)); + functionPointer = getFunctionPointer(libraryHandle, "EOS_EResult_IsOperationComplete"); if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException("EOS_EResult_IsOperationComplete"); EOS_EResult_IsOperationComplete = (EOS_EResult_IsOperationCompleteCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_EResult_IsOperationCompleteCallback)); @@ -1242,6 +1270,10 @@ namespace Epic.OnlineServices if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException("EOS_Platform_GetConnectInterface"); EOS_Platform_GetConnectInterface = (EOS_Platform_GetConnectInterfaceCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Platform_GetConnectInterfaceCallback)); + functionPointer = getFunctionPointer(libraryHandle, "EOS_Platform_GetCustomInvitesInterface"); + if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException("EOS_Platform_GetCustomInvitesInterface"); + EOS_Platform_GetCustomInvitesInterface = (EOS_Platform_GetCustomInvitesInterfaceCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Platform_GetCustomInvitesInterfaceCallback)); + functionPointer = getFunctionPointer(libraryHandle, "EOS_Platform_GetEcomInterface"); if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException("EOS_Platform_GetEcomInterface"); EOS_Platform_GetEcomInterface = (EOS_Platform_GetEcomInterfaceCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Platform_GetEcomInterfaceCallback)); @@ -2179,6 +2211,13 @@ namespace Epic.OnlineServices EOS_Connect_UnlinkAccount = null; EOS_Connect_VerifyIdToken = null; EOS_ContinuanceToken_ToString = null; + EOS_CustomInvites_AddNotifyCustomInviteAccepted = null; + EOS_CustomInvites_AddNotifyCustomInviteReceived = null; + EOS_CustomInvites_FinalizeInvite = null; + EOS_CustomInvites_RemoveNotifyCustomInviteAccepted = null; + EOS_CustomInvites_RemoveNotifyCustomInviteReceived = null; + EOS_CustomInvites_SendCustomInvite = null; + EOS_CustomInvites_SetCustomInvite = null; EOS_EResult_IsOperationComplete = null; EOS_EResult_ToString = null; EOS_Ecom_CatalogItem_Release = null; @@ -2362,6 +2401,7 @@ namespace Epic.OnlineServices EOS_Platform_GetAntiCheatServerInterface = null; EOS_Platform_GetAuthInterface = null; EOS_Platform_GetConnectInterface = null; + EOS_Platform_GetCustomInvitesInterface = null; EOS_Platform_GetEcomInterface = null; EOS_Platform_GetFriendsInterface = null; EOS_Platform_GetKWSInterface = null; @@ -2705,7 +2745,7 @@ namespace Epic.OnlineServices 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 delegate Result EOS_AntiCheatClient_PollStatusCallback(System.IntPtr handle, System.IntPtr options, ref AntiCheatClient.AntiCheatClientViolationType outViolationType, System.IntPtr outMessage); internal static EOS_AntiCheatClient_PollStatusCallback EOS_AntiCheatClient_PollStatus; [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] @@ -3052,6 +3092,34 @@ namespace Epic.OnlineServices 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 ulong EOS_CustomInvites_AddNotifyCustomInviteAcceptedCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, CustomInvites.OnCustomInviteAcceptedCallbackInternal notificationFn); + internal static EOS_CustomInvites_AddNotifyCustomInviteAcceptedCallback EOS_CustomInvites_AddNotifyCustomInviteAccepted; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate ulong EOS_CustomInvites_AddNotifyCustomInviteReceivedCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, CustomInvites.OnCustomInviteReceivedCallbackInternal notificationFn); + internal static EOS_CustomInvites_AddNotifyCustomInviteReceivedCallback EOS_CustomInvites_AddNotifyCustomInviteReceived; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_CustomInvites_FinalizeInviteCallback(System.IntPtr handle, System.IntPtr options); + internal static EOS_CustomInvites_FinalizeInviteCallback EOS_CustomInvites_FinalizeInvite; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_CustomInvites_RemoveNotifyCustomInviteAcceptedCallback(System.IntPtr handle, ulong inId); + internal static EOS_CustomInvites_RemoveNotifyCustomInviteAcceptedCallback EOS_CustomInvites_RemoveNotifyCustomInviteAccepted; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_CustomInvites_RemoveNotifyCustomInviteReceivedCallback(System.IntPtr handle, ulong inId); + internal static EOS_CustomInvites_RemoveNotifyCustomInviteReceivedCallback EOS_CustomInvites_RemoveNotifyCustomInviteReceived; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void EOS_CustomInvites_SendCustomInviteCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, CustomInvites.OnSendCustomInviteCallbackInternal completionDelegate); + internal static EOS_CustomInvites_SendCustomInviteCallback EOS_CustomInvites_SendCustomInvite; + + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate Result EOS_CustomInvites_SetCustomInviteCallback(System.IntPtr handle, System.IntPtr options); + internal static EOS_CustomInvites_SetCustomInviteCallback EOS_CustomInvites_SetCustomInvite; + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] internal delegate int EOS_EResult_IsOperationCompleteCallback(Result result); internal static EOS_EResult_IsOperationCompleteCallback EOS_EResult_IsOperationComplete; @@ -3784,6 +3852,10 @@ namespace Epic.OnlineServices 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_GetCustomInvitesInterfaceCallback(System.IntPtr handle); + internal static EOS_Platform_GetCustomInvitesInterfaceCallback EOS_Platform_GetCustomInvitesInterface; + [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] internal delegate System.IntPtr EOS_Platform_GetEcomInterfaceCallback(System.IntPtr handle); internal static EOS_Platform_GetEcomInterfaceCallback EOS_Platform_GetEcomInterface; @@ -4697,7 +4769,7 @@ namespace Epic.OnlineServices internal static extern Result EOS_AntiCheatClient_GetProtectMessageOutputLength(System.IntPtr handle, System.IntPtr options, ref uint outBufferSizeBytes); [DllImport(Config.LibraryName)] - internal static extern Result EOS_AntiCheatClient_PollStatus(System.IntPtr handle, System.IntPtr options, AntiCheatClient.AntiCheatClientViolationType violationType, System.IntPtr outMessage); + internal static extern Result EOS_AntiCheatClient_PollStatus(System.IntPtr handle, System.IntPtr options, ref AntiCheatClient.AntiCheatClientViolationType outViolationType, System.IntPtr outMessage); [DllImport(Config.LibraryName)] internal static extern Result EOS_AntiCheatClient_ProtectMessage(System.IntPtr handle, System.IntPtr options, System.IntPtr outBuffer, ref uint outBytesWritten); @@ -4957,6 +5029,27 @@ namespace Epic.OnlineServices [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 ulong EOS_CustomInvites_AddNotifyCustomInviteAccepted(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, CustomInvites.OnCustomInviteAcceptedCallbackInternal notificationFn); + + [DllImport(Config.LibraryName)] + internal static extern ulong EOS_CustomInvites_AddNotifyCustomInviteReceived(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, CustomInvites.OnCustomInviteReceivedCallbackInternal notificationFn); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_CustomInvites_FinalizeInvite(System.IntPtr handle, System.IntPtr options); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_CustomInvites_RemoveNotifyCustomInviteAccepted(System.IntPtr handle, ulong inId); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_CustomInvites_RemoveNotifyCustomInviteReceived(System.IntPtr handle, ulong inId); + + [DllImport(Config.LibraryName)] + internal static extern void EOS_CustomInvites_SendCustomInvite(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, CustomInvites.OnSendCustomInviteCallbackInternal completionDelegate); + + [DllImport(Config.LibraryName)] + internal static extern Result EOS_CustomInvites_SetCustomInvite(System.IntPtr handle, System.IntPtr options); + [DllImport(Config.LibraryName)] internal static extern int EOS_EResult_IsOperationComplete(Result result); @@ -5506,6 +5599,9 @@ namespace Epic.OnlineServices [DllImport(Config.LibraryName)] internal static extern System.IntPtr EOS_Platform_GetConnectInterface(System.IntPtr handle); + [DllImport(Config.LibraryName)] + internal static extern System.IntPtr EOS_Platform_GetCustomInvitesInterface(System.IntPtr handle); + [DllImport(Config.LibraryName)] internal static extern System.IntPtr EOS_Platform_GetEcomInterface(System.IntPtr handle); diff --git a/Assets/Plugins/EpicOnlineServices/Source/Generated/Connect/ConnectInterface.cs b/Assets/Plugins/EpicOnlineServices/Source/Generated/Connect/ConnectInterface.cs index bc33fa6..e513ff7 100644 --- a/Assets/Plugins/EpicOnlineServices/Source/Generated/Connect/ConnectInterface.cs +++ b/Assets/Plugins/EpicOnlineServices/Source/Generated/Connect/ConnectInterface.cs @@ -454,6 +454,13 @@ namespace Epic.OnlineServices.Connect /// /// The deletion is permanent and it is not possible to recover lost game data and progression /// if the Device ID had not been linked with at least one real external user account. + /// + /// On Android and iOS devices, uninstalling the application will automatically delete any local + /// Device ID credentials created by the application. + /// + /// On Desktop platforms (Linux, macOS, Windows), Device ID credentials are not automatically deleted. + /// Applications may re-use existing Device ID credentials for the local OS user when the application is + /// re-installed, or call the DeleteDeviceId API on the first run to ensure a fresh start for the user. /// /// structure containing operation input parameters /// arbitrary data that is passed back to you in the CompletionDelegate @@ -641,6 +648,9 @@ namespace Epic.OnlineServices.Connect /// /// 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 . + /// + /// @note A common use case is to query other users who are connected through the same account system as the local user. + /// Queries using external account IDs of another account system may not be available, depending on the account system specifics. /// /// 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. @@ -662,7 +672,6 @@ namespace Epic.OnlineServices.Connect /// /// Retrieve the equivalent external account mappings from a list of Product User IDs. - /// This will include data for each external account info found for the linked product IDs. /// /// The values will be cached and retrievable via , , /// or . diff --git a/Assets/Plugins/EpicOnlineServices/Source/Generated/Connect/ExternalAccountInfo.cs b/Assets/Plugins/EpicOnlineServices/Source/Generated/Connect/ExternalAccountInfo.cs index f70869f..b8e88a3 100644 --- a/Assets/Plugins/EpicOnlineServices/Source/Generated/Connect/ExternalAccountInfo.cs +++ b/Assets/Plugins/EpicOnlineServices/Source/Generated/Connect/ExternalAccountInfo.cs @@ -4,7 +4,7 @@ namespace Epic.OnlineServices.Connect { /// - /// Contains information about an external account info + /// Contains information about an external account linked with a Product User ID. /// public class ExternalAccountInfo : ISettable { @@ -20,6 +20,10 @@ namespace Epic.OnlineServices.Connect /// /// External account ID. + /// + /// May be set to an empty string if the AccountIdType of another user belongs + /// to different account system than the local user's authenticated account. + /// The availability of this field is dependent on account system specifics. /// public string AccountId { get; set; } diff --git a/Assets/Plugins/EpicOnlineServices/Source/Generated/Connect/LoginOptions.cs b/Assets/Plugins/EpicOnlineServices/Source/Generated/Connect/LoginOptions.cs index f3cf0d0..a941f27 100644 --- a/Assets/Plugins/EpicOnlineServices/Source/Generated/Connect/LoginOptions.cs +++ b/Assets/Plugins/EpicOnlineServices/Source/Generated/Connect/LoginOptions.cs @@ -16,7 +16,7 @@ namespace Epic.OnlineServices.Connect /// /// Additional non-authoritative information about the local user. /// - /// 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. + /// This field is required to be set and only used when authenticating the user using Amazon, 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/Assets/Plugins/EpicOnlineServices/Source/Generated/Connect/QueryProductUserIdMappingsCallbackInfo.cs b/Assets/Plugins/EpicOnlineServices/Source/Generated/Connect/QueryProductUserIdMappingsCallbackInfo.cs index 2cf83a8..f193930 100644 --- a/Assets/Plugins/EpicOnlineServices/Source/Generated/Connect/QueryProductUserIdMappingsCallbackInfo.cs +++ b/Assets/Plugins/EpicOnlineServices/Source/Generated/Connect/QueryProductUserIdMappingsCallbackInfo.cs @@ -19,7 +19,7 @@ namespace Epic.OnlineServices.Connect public object ClientData { get; private set; } /// - /// The Product User ID of the existing, logged-in user who made the request. + /// The local Product User ID that was passed with the input options. /// public ProductUserId LocalUserId { get; private set; } diff --git a/Assets/Plugins/EpicOnlineServices/Source/Generated/Connect/QueryProductUserIdMappingsOptions.cs b/Assets/Plugins/EpicOnlineServices/Source/Generated/Connect/QueryProductUserIdMappingsOptions.cs index 9f21354..7f6df13 100644 --- a/Assets/Plugins/EpicOnlineServices/Source/Generated/Connect/QueryProductUserIdMappingsOptions.cs +++ b/Assets/Plugins/EpicOnlineServices/Source/Generated/Connect/QueryProductUserIdMappingsOptions.cs @@ -9,7 +9,8 @@ namespace Epic.OnlineServices.Connect public class QueryProductUserIdMappingsOptions { /// - /// The Product User ID of the existing, logged-in user who is querying account mappings. + /// Game Clients set this field to the Product User ID of the local authenticated user querying account mappings. + /// Game Servers set this field to NULL. Usage is allowed given that the configured client policy for server credentials permit it. /// public ProductUserId LocalUserId { get; set; } diff --git a/Assets/Plugins/EpicOnlineServices/Source/Generated/Connect/VerifyIdTokenCallbackInfo.cs b/Assets/Plugins/EpicOnlineServices/Source/Generated/Connect/VerifyIdTokenCallbackInfo.cs index 590a481..4642150 100644 --- a/Assets/Plugins/EpicOnlineServices/Source/Generated/Connect/VerifyIdTokenCallbackInfo.cs +++ b/Assets/Plugins/EpicOnlineServices/Source/Generated/Connect/VerifyIdTokenCallbackInfo.cs @@ -18,6 +18,49 @@ namespace Epic.OnlineServices.Connect /// public object ClientData { get; private set; } + /// + /// The Product User ID associated with the ID token. + /// + public ProductUserId ProductUserId { get; private set; } + + /// + /// Flag set to indicate whether account information is available. + /// Applications must always first check this value to be set before attempting + /// to read the AccountType, AccountId, Platform and DeviceType fields. + /// + /// This flag is always false for users that authenticated using EOS Connect Device ID. + /// + public bool IsAccountInfoPresent { get; private set; } + + /// + /// The identity provider that the user authenticated with to EOS Connect. + /// + /// If bIsAccountInfoPresent is set, this field describes the external account type. + /// + public ExternalAccountType AccountIdType { get; private set; } + + /// + /// The external account ID of the authenticated user. + /// + /// This value may be set to an empty string. + /// + public string AccountId { get; private set; } + + /// + /// Platform that the user is connected from. + /// + /// This value may be set to an empty string. + /// + public string Platform { get; private set; } + + /// + /// Identifies the device type that the user is connected from. + /// Can be used to securely verify that the user is connected through a real Console device. + /// + /// This value may be set to an empty string. + /// + public string DeviceType { get; private set; } + public Result? GetResultCode() { return ResultCode; @@ -29,6 +72,12 @@ namespace Epic.OnlineServices.Connect { ResultCode = other.Value.ResultCode; ClientData = other.Value.ClientData; + ProductUserId = other.Value.ProductUserId; + IsAccountInfoPresent = other.Value.IsAccountInfoPresent; + AccountIdType = other.Value.AccountIdType; + AccountId = other.Value.AccountId; + Platform = other.Value.Platform; + DeviceType = other.Value.DeviceType; } } @@ -43,6 +92,12 @@ namespace Epic.OnlineServices.Connect { private Result m_ResultCode; private System.IntPtr m_ClientData; + private System.IntPtr m_ProductUserId; + private int m_IsAccountInfoPresent; + private ExternalAccountType m_AccountIdType; + private System.IntPtr m_AccountId; + private System.IntPtr m_Platform; + private System.IntPtr m_DeviceType; public Result ResultCode { @@ -69,5 +124,63 @@ namespace Epic.OnlineServices.Connect return m_ClientData; } } + + public ProductUserId ProductUserId + { + get + { + ProductUserId value; + Helper.TryMarshalGet(m_ProductUserId, out value); + return value; + } + } + + public bool IsAccountInfoPresent + { + get + { + bool value; + Helper.TryMarshalGet(m_IsAccountInfoPresent, out value); + return value; + } + } + + public ExternalAccountType AccountIdType + { + get + { + return m_AccountIdType; + } + } + + public string AccountId + { + get + { + string value; + Helper.TryMarshalGet(m_AccountId, out value); + return value; + } + } + + public string Platform + { + get + { + string value; + Helper.TryMarshalGet(m_Platform, out value); + return value; + } + } + + public string DeviceType + { + get + { + string value; + Helper.TryMarshalGet(m_DeviceType, out value); + return value; + } + } } } \ No newline at end of file diff --git a/Assets/Plugins/EpicOnlineServices/Source/Generated/CustomInvites.meta b/Assets/Plugins/EpicOnlineServices/Source/Generated/CustomInvites.meta new file mode 100644 index 0000000..6f3e87b --- /dev/null +++ b/Assets/Plugins/EpicOnlineServices/Source/Generated/CustomInvites.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: f34a4d3184c8f774dbb146151d44e635 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Plugins/EpicOnlineServices/Source/Generated/CustomInvites/AddNotifyCustomInviteAcceptedOptions.cs b/Assets/Plugins/EpicOnlineServices/Source/Generated/CustomInvites/AddNotifyCustomInviteAcceptedOptions.cs new file mode 100644 index 0000000..949c9d2 --- /dev/null +++ b/Assets/Plugins/EpicOnlineServices/Source/Generated/CustomInvites/AddNotifyCustomInviteAcceptedOptions.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.CustomInvites +{ + public class AddNotifyCustomInviteAcceptedOptions + { + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct AddNotifyCustomInviteAcceptedOptionsInternal : ISettable, System.IDisposable + { + private int m_ApiVersion; + + public void Set(AddNotifyCustomInviteAcceptedOptions other) + { + if (other != null) + { + m_ApiVersion = CustomInvitesInterface.AddnotifycustominviteacceptedApiLatest; + } + } + + public void Set(object other) + { + Set(other as AddNotifyCustomInviteAcceptedOptions); + } + + public void Dispose() + { + } + } +} \ No newline at end of file diff --git a/Assets/Plugins/EpicOnlineServices/Source/Generated/CustomInvites/AddNotifyCustomInviteAcceptedOptions.cs.meta b/Assets/Plugins/EpicOnlineServices/Source/Generated/CustomInvites/AddNotifyCustomInviteAcceptedOptions.cs.meta new file mode 100644 index 0000000..b80fc0f --- /dev/null +++ b/Assets/Plugins/EpicOnlineServices/Source/Generated/CustomInvites/AddNotifyCustomInviteAcceptedOptions.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: c8baa0cc40b45a241b72ddbea4f43d65 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Plugins/EpicOnlineServices/Source/Generated/CustomInvites/AddNotifyCustomInviteReceivedOptions.cs b/Assets/Plugins/EpicOnlineServices/Source/Generated/CustomInvites/AddNotifyCustomInviteReceivedOptions.cs new file mode 100644 index 0000000..59aa715 --- /dev/null +++ b/Assets/Plugins/EpicOnlineServices/Source/Generated/CustomInvites/AddNotifyCustomInviteReceivedOptions.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.CustomInvites +{ + public class AddNotifyCustomInviteReceivedOptions + { + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct AddNotifyCustomInviteReceivedOptionsInternal : ISettable, System.IDisposable + { + private int m_ApiVersion; + + public void Set(AddNotifyCustomInviteReceivedOptions other) + { + if (other != null) + { + m_ApiVersion = CustomInvitesInterface.AddnotifycustominvitereceivedApiLatest; + } + } + + public void Set(object other) + { + Set(other as AddNotifyCustomInviteReceivedOptions); + } + + public void Dispose() + { + } + } +} \ No newline at end of file diff --git a/Assets/Plugins/EpicOnlineServices/Source/Generated/CustomInvites/AddNotifyCustomInviteReceivedOptions.cs.meta b/Assets/Plugins/EpicOnlineServices/Source/Generated/CustomInvites/AddNotifyCustomInviteReceivedOptions.cs.meta new file mode 100644 index 0000000..f131266 --- /dev/null +++ b/Assets/Plugins/EpicOnlineServices/Source/Generated/CustomInvites/AddNotifyCustomInviteReceivedOptions.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 5dfa13129160f644088a425336297445 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Plugins/EpicOnlineServices/Source/Generated/CustomInvites/CustomInvitesInterface.cs b/Assets/Plugins/EpicOnlineServices/Source/Generated/CustomInvites/CustomInvitesInterface.cs new file mode 100644 index 0000000..3dc0f04 --- /dev/null +++ b/Assets/Plugins/EpicOnlineServices/Source/Generated/CustomInvites/CustomInvitesInterface.cs @@ -0,0 +1,228 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.CustomInvites +{ + public sealed partial class CustomInvitesInterface : Handle + { + public CustomInvitesInterface() + { + } + + public CustomInvitesInterface(System.IntPtr innerHandle) : base(innerHandle) + { + } + + /// + /// The most recent version of the API. + /// + public const int AddnotifycustominviteacceptedApiLatest = 1; + + /// + /// The most recent version of the API. + /// + public const int AddnotifycustominvitereceivedApiLatest = 1; + + /// + /// The most recent version of the API. + /// + public const int FinalizeinviteApiLatest = 1; + + /// + /// Maximum size of the custom invite payload string + /// + public const int MaxPayloadLength = 500; + + /// + /// The most recent version of the API. + /// + public const int SendcustominviteApiLatest = 1; + + /// + /// The most recent version of the API. + /// + public const int SetcustominviteApiLatest = 1; + + /// + /// Register to receive notifications when a Custom Invite for any logged in local users is accepted via the Social Overlay + /// @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 Custom Invite is accepted via the Social Overlay. + /// + /// handle representing the registered callback + /// + public ulong AddNotifyCustomInviteAccepted(AddNotifyCustomInviteAcceptedOptions options, object clientData, OnCustomInviteAcceptedCallback notificationFn) + { + var optionsAddress = System.IntPtr.Zero; + Helper.TryMarshalSet(ref optionsAddress, options); + + var clientDataAddress = System.IntPtr.Zero; + + var notificationFnInternal = new OnCustomInviteAcceptedCallbackInternal(OnCustomInviteAcceptedCallbackInternalImplementation); + Helper.AddCallback(ref clientDataAddress, clientData, notificationFn, notificationFnInternal); + + var funcResult = Bindings.EOS_CustomInvites_AddNotifyCustomInviteAccepted(InnerHandle, optionsAddress, clientDataAddress, notificationFnInternal); + + Helper.TryMarshalDispose(ref optionsAddress); + + Helper.TryAssignNotificationIdToCallback(clientDataAddress, funcResult); + + return funcResult; + } + + /// + /// Register to receive notifications when a Custom Invite for any logged in local users is received + /// @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 Custom Invite is received. + /// + /// handle representing the registered callback + /// + public ulong AddNotifyCustomInviteReceived(AddNotifyCustomInviteReceivedOptions options, object clientData, OnCustomInviteReceivedCallback notificationFn) + { + var optionsAddress = System.IntPtr.Zero; + Helper.TryMarshalSet(ref optionsAddress, options); + + var clientDataAddress = System.IntPtr.Zero; + + var notificationFnInternal = new OnCustomInviteReceivedCallbackInternal(OnCustomInviteReceivedCallbackInternalImplementation); + Helper.AddCallback(ref clientDataAddress, clientData, notificationFn, notificationFnInternal); + + var funcResult = Bindings.EOS_CustomInvites_AddNotifyCustomInviteReceived(InnerHandle, optionsAddress, clientDataAddress, notificationFnInternal); + + Helper.TryMarshalDispose(ref optionsAddress); + + Helper.TryAssignNotificationIdToCallback(clientDataAddress, funcResult); + + return funcResult; + } + + /// + /// Signal that the title has completed processing a received Custom Invite, and that it should be cleaned up internally and in the Overlay + /// + /// Structure containing information about the request. + /// + /// if the operation completes successfully + /// if any of the option values are incorrect + /// + public Result FinalizeInvite(FinalizeInviteOptions options) + { + var optionsAddress = System.IntPtr.Zero; + Helper.TryMarshalSet(ref optionsAddress, options); + + var funcResult = Bindings.EOS_CustomInvites_FinalizeInvite(InnerHandle, optionsAddress); + + Helper.TryMarshalDispose(ref optionsAddress); + + return funcResult; + } + + /// + /// Unregister from receiving notifications when a Custom Invite for any logged in local users is accepted via the Social Overlay + /// + /// Handle representing the registered callback + public void RemoveNotifyCustomInviteAccepted(ulong inId) + { + Helper.TryRemoveCallbackByNotificationId(inId); + + Bindings.EOS_CustomInvites_RemoveNotifyCustomInviteAccepted(InnerHandle, inId); + } + + /// + /// Unregister from receiving notifications when a Custom Invite for any logged in local users is received + /// + /// Handle representing the registered callback + public void RemoveNotifyCustomInviteReceived(ulong inId) + { + Helper.TryRemoveCallbackByNotificationId(inId); + + Bindings.EOS_CustomInvites_RemoveNotifyCustomInviteReceived(InnerHandle, inId); + } + + /// + /// Sends a Custom Invite that has previously been initialized via SetCustomInvite to a group of users. + /// + /// Structure containing information about the request. + /// 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 values are incorrect + /// if the number of allowed queries is exceeded + /// if SetCustomInvite has not been previously successfully called for this user + /// + public void SendCustomInvite(SendCustomInviteOptions options, object clientData, OnSendCustomInviteCallback completionDelegate) + { + var optionsAddress = System.IntPtr.Zero; + Helper.TryMarshalSet(ref optionsAddress, options); + + var clientDataAddress = System.IntPtr.Zero; + + var completionDelegateInternal = new OnSendCustomInviteCallbackInternal(OnSendCustomInviteCallbackInternalImplementation); + Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); + + Bindings.EOS_CustomInvites_SendCustomInvite(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); + + Helper.TryMarshalDispose(ref optionsAddress); + } + + /// + /// Initializes a Custom Invite with a specified payload in preparation for it to be sent to another user or users. + /// + /// Structure containing information about the request. + /// 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 operation completes successfully + /// if any of the options values are incorrect + /// + public Result SetCustomInvite(SetCustomInviteOptions options) + { + var optionsAddress = System.IntPtr.Zero; + Helper.TryMarshalSet(ref optionsAddress, options); + + var funcResult = Bindings.EOS_CustomInvites_SetCustomInvite(InnerHandle, optionsAddress); + + Helper.TryMarshalDispose(ref optionsAddress); + + return funcResult; + } + + [MonoPInvokeCallback(typeof(OnCustomInviteAcceptedCallbackInternal))] + internal static void OnCustomInviteAcceptedCallbackInternalImplementation(System.IntPtr data) + { + OnCustomInviteAcceptedCallback callback; + OnCustomInviteAcceptedCallbackInfo callbackInfo; + if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) + { + callback(callbackInfo); + } + } + + [MonoPInvokeCallback(typeof(OnCustomInviteReceivedCallbackInternal))] + internal static void OnCustomInviteReceivedCallbackInternalImplementation(System.IntPtr data) + { + OnCustomInviteReceivedCallback callback; + OnCustomInviteReceivedCallbackInfo callbackInfo; + if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) + { + callback(callbackInfo); + } + } + + [MonoPInvokeCallback(typeof(OnSendCustomInviteCallbackInternal))] + internal static void OnSendCustomInviteCallbackInternalImplementation(System.IntPtr data) + { + OnSendCustomInviteCallback callback; + SendCustomInviteCallbackInfo callbackInfo; + if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) + { + callback(callbackInfo); + } + } + } +} \ No newline at end of file diff --git a/Assets/Plugins/EpicOnlineServices/Source/Generated/CustomInvites/CustomInvitesInterface.cs.meta b/Assets/Plugins/EpicOnlineServices/Source/Generated/CustomInvites/CustomInvitesInterface.cs.meta new file mode 100644 index 0000000..eff142b --- /dev/null +++ b/Assets/Plugins/EpicOnlineServices/Source/Generated/CustomInvites/CustomInvitesInterface.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 66eb5d4ceaebf13479ded11540c6d24f +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Plugins/EpicOnlineServices/Source/Generated/CustomInvites/FinalizeInviteOptions.cs b/Assets/Plugins/EpicOnlineServices/Source/Generated/CustomInvites/FinalizeInviteOptions.cs new file mode 100644 index 0000000..fc5af99 --- /dev/null +++ b/Assets/Plugins/EpicOnlineServices/Source/Generated/CustomInvites/FinalizeInviteOptions.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.CustomInvites +{ + public class FinalizeInviteOptions + { + /// + /// User that sent the custom invite + /// + public ProductUserId TargetUserId { get; set; } + + /// + /// Recipient Local user id + /// + public ProductUserId LocalUserId { get; set; } + + /// + /// Id of the Custom Invite accepted + /// + public string CustomInviteId { get; set; } + + /// + /// Result of the Processing operation, transmitted to Social Overlay if applicable + /// + public Result ProcessingResult { get; set; } + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct FinalizeInviteOptionsInternal : ISettable, System.IDisposable + { + private int m_ApiVersion; + private System.IntPtr m_TargetUserId; + private System.IntPtr m_LocalUserId; + private System.IntPtr m_CustomInviteId; + private Result m_ProcessingResult; + + public ProductUserId TargetUserId + { + set + { + Helper.TryMarshalSet(ref m_TargetUserId, value); + } + } + + public ProductUserId LocalUserId + { + set + { + Helper.TryMarshalSet(ref m_LocalUserId, value); + } + } + + public string CustomInviteId + { + set + { + Helper.TryMarshalSet(ref m_CustomInviteId, value); + } + } + + public Result ProcessingResult + { + set + { + m_ProcessingResult = value; + } + } + + public void Set(FinalizeInviteOptions other) + { + if (other != null) + { + m_ApiVersion = CustomInvitesInterface.FinalizeinviteApiLatest; + TargetUserId = other.TargetUserId; + LocalUserId = other.LocalUserId; + CustomInviteId = other.CustomInviteId; + ProcessingResult = other.ProcessingResult; + } + } + + public void Set(object other) + { + Set(other as FinalizeInviteOptions); + } + + public void Dispose() + { + Helper.TryMarshalDispose(ref m_TargetUserId); + Helper.TryMarshalDispose(ref m_LocalUserId); + Helper.TryMarshalDispose(ref m_CustomInviteId); + } + } +} \ No newline at end of file diff --git a/Assets/Plugins/EpicOnlineServices/Source/Generated/CustomInvites/FinalizeInviteOptions.cs.meta b/Assets/Plugins/EpicOnlineServices/Source/Generated/CustomInvites/FinalizeInviteOptions.cs.meta new file mode 100644 index 0000000..bd5794b --- /dev/null +++ b/Assets/Plugins/EpicOnlineServices/Source/Generated/CustomInvites/FinalizeInviteOptions.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: fdc35ceaa226e4e489113267a3170565 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Plugins/EpicOnlineServices/Source/Generated/CustomInvites/OnCustomInviteAcceptedCallback.cs b/Assets/Plugins/EpicOnlineServices/Source/Generated/CustomInvites/OnCustomInviteAcceptedCallback.cs new file mode 100644 index 0000000..0dbb367 --- /dev/null +++ b/Assets/Plugins/EpicOnlineServices/Source/Generated/CustomInvites/OnCustomInviteAcceptedCallback.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.CustomInvites +{ + /// + /// Function prototype definition for notifications that comes from + /// + /// A containing the output information and result + public delegate void OnCustomInviteAcceptedCallback(OnCustomInviteAcceptedCallbackInfo data); + + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void OnCustomInviteAcceptedCallbackInternal(System.IntPtr data); +} \ No newline at end of file diff --git a/Assets/Plugins/EpicOnlineServices/Source/Generated/CustomInvites/OnCustomInviteAcceptedCallback.cs.meta b/Assets/Plugins/EpicOnlineServices/Source/Generated/CustomInvites/OnCustomInviteAcceptedCallback.cs.meta new file mode 100644 index 0000000..5b1aae7 --- /dev/null +++ b/Assets/Plugins/EpicOnlineServices/Source/Generated/CustomInvites/OnCustomInviteAcceptedCallback.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 04924fa1291755c4e90caeae2901a3a7 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Plugins/EpicOnlineServices/Source/Generated/CustomInvites/OnCustomInviteAcceptedCallbackInfo.cs b/Assets/Plugins/EpicOnlineServices/Source/Generated/CustomInvites/OnCustomInviteAcceptedCallbackInfo.cs new file mode 100644 index 0000000..0f6d79c --- /dev/null +++ b/Assets/Plugins/EpicOnlineServices/Source/Generated/CustomInvites/OnCustomInviteAcceptedCallbackInfo.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.CustomInvites +{ + /// + /// Output parameters for the Function. + /// + public class OnCustomInviteAcceptedCallbackInfo : ICallbackInfo, ISettable + { + /// + /// Context that was passed into + /// + public object ClientData { get; private set; } + + /// + /// User that sent the custom invite + /// + public ProductUserId TargetUserId { get; private set; } + + /// + /// Recipient Local user id + /// + public ProductUserId LocalUserId { get; private set; } + + /// + /// Id of the accepted Custom Invite + /// + public string CustomInviteId { get; private set; } + + /// + /// Payload of the accepted Custom Invite + /// + public string Payload { get; private set; } + + public Result? GetResultCode() + { + return null; + } + + internal void Set(OnCustomInviteAcceptedCallbackInfoInternal? other) + { + if (other != null) + { + ClientData = other.Value.ClientData; + TargetUserId = other.Value.TargetUserId; + LocalUserId = other.Value.LocalUserId; + CustomInviteId = other.Value.CustomInviteId; + Payload = other.Value.Payload; + } + } + + public void Set(object other) + { + Set(other as OnCustomInviteAcceptedCallbackInfoInternal?); + } + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct OnCustomInviteAcceptedCallbackInfoInternal : ICallbackInfoInternal + { + private System.IntPtr m_ClientData; + private System.IntPtr m_TargetUserId; + private System.IntPtr m_LocalUserId; + private System.IntPtr m_CustomInviteId; + private System.IntPtr m_Payload; + + 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; + } + } + + public string CustomInviteId + { + get + { + string value; + Helper.TryMarshalGet(m_CustomInviteId, out value); + return value; + } + } + + public string Payload + { + get + { + string value; + Helper.TryMarshalGet(m_Payload, out value); + return value; + } + } + } +} \ No newline at end of file diff --git a/Assets/Plugins/EpicOnlineServices/Source/Generated/CustomInvites/OnCustomInviteAcceptedCallbackInfo.cs.meta b/Assets/Plugins/EpicOnlineServices/Source/Generated/CustomInvites/OnCustomInviteAcceptedCallbackInfo.cs.meta new file mode 100644 index 0000000..eea1f79 --- /dev/null +++ b/Assets/Plugins/EpicOnlineServices/Source/Generated/CustomInvites/OnCustomInviteAcceptedCallbackInfo.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 41faeaf02b9ab0849a99cf66df5accdb +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Plugins/EpicOnlineServices/Source/Generated/CustomInvites/OnCustomInviteReceivedCallback.cs b/Assets/Plugins/EpicOnlineServices/Source/Generated/CustomInvites/OnCustomInviteReceivedCallback.cs new file mode 100644 index 0000000..4b7d4d5 --- /dev/null +++ b/Assets/Plugins/EpicOnlineServices/Source/Generated/CustomInvites/OnCustomInviteReceivedCallback.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.CustomInvites +{ + /// + /// Function prototype definition for notifications that comes from + /// + /// A containing the output information and result + public delegate void OnCustomInviteReceivedCallback(OnCustomInviteReceivedCallbackInfo data); + + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void OnCustomInviteReceivedCallbackInternal(System.IntPtr data); +} \ No newline at end of file diff --git a/Assets/Plugins/EpicOnlineServices/Source/Generated/CustomInvites/OnCustomInviteReceivedCallback.cs.meta b/Assets/Plugins/EpicOnlineServices/Source/Generated/CustomInvites/OnCustomInviteReceivedCallback.cs.meta new file mode 100644 index 0000000..d7166d6 --- /dev/null +++ b/Assets/Plugins/EpicOnlineServices/Source/Generated/CustomInvites/OnCustomInviteReceivedCallback.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 684ebf7882d298546924ad24c5e18d78 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Plugins/EpicOnlineServices/Source/Generated/CustomInvites/OnCustomInviteReceivedCallbackInfo.cs b/Assets/Plugins/EpicOnlineServices/Source/Generated/CustomInvites/OnCustomInviteReceivedCallbackInfo.cs new file mode 100644 index 0000000..d9fdf0e --- /dev/null +++ b/Assets/Plugins/EpicOnlineServices/Source/Generated/CustomInvites/OnCustomInviteReceivedCallbackInfo.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.CustomInvites +{ + /// + /// Output parameters for the Function. + /// + public class OnCustomInviteReceivedCallbackInfo : ICallbackInfo, ISettable + { + /// + /// Context that was passed into + /// + public object ClientData { get; private set; } + + /// + /// User that sent this custom invite + /// + public ProductUserId TargetUserId { get; private set; } + + /// + /// Recipient Local user id + /// + public ProductUserId LocalUserId { get; private set; } + + /// + /// Id of the received Custom Invite + /// + public string CustomInviteId { get; private set; } + + /// + /// Payload of the received Custom Invite + /// + public string Payload { get; private set; } + + public Result? GetResultCode() + { + return null; + } + + internal void Set(OnCustomInviteReceivedCallbackInfoInternal? other) + { + if (other != null) + { + ClientData = other.Value.ClientData; + TargetUserId = other.Value.TargetUserId; + LocalUserId = other.Value.LocalUserId; + CustomInviteId = other.Value.CustomInviteId; + Payload = other.Value.Payload; + } + } + + public void Set(object other) + { + Set(other as OnCustomInviteReceivedCallbackInfoInternal?); + } + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct OnCustomInviteReceivedCallbackInfoInternal : ICallbackInfoInternal + { + private System.IntPtr m_ClientData; + private System.IntPtr m_TargetUserId; + private System.IntPtr m_LocalUserId; + private System.IntPtr m_CustomInviteId; + private System.IntPtr m_Payload; + + 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; + } + } + + public string CustomInviteId + { + get + { + string value; + Helper.TryMarshalGet(m_CustomInviteId, out value); + return value; + } + } + + public string Payload + { + get + { + string value; + Helper.TryMarshalGet(m_Payload, out value); + return value; + } + } + } +} \ No newline at end of file diff --git a/Assets/Plugins/EpicOnlineServices/Source/Generated/CustomInvites/OnCustomInviteReceivedCallbackInfo.cs.meta b/Assets/Plugins/EpicOnlineServices/Source/Generated/CustomInvites/OnCustomInviteReceivedCallbackInfo.cs.meta new file mode 100644 index 0000000..cd7eea2 --- /dev/null +++ b/Assets/Plugins/EpicOnlineServices/Source/Generated/CustomInvites/OnCustomInviteReceivedCallbackInfo.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: dd89ed7b386f11f4eb827f2c432ab5b5 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Plugins/EpicOnlineServices/Source/Generated/CustomInvites/OnSendCustomInviteCallback.cs b/Assets/Plugins/EpicOnlineServices/Source/Generated/CustomInvites/OnSendCustomInviteCallback.cs new file mode 100644 index 0000000..b4bda90 --- /dev/null +++ b/Assets/Plugins/EpicOnlineServices/Source/Generated/CustomInvites/OnSendCustomInviteCallback.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.CustomInvites +{ + /// + /// Function prototype definition for callbacks passed to + /// + /// A containing the output information and result + public delegate void OnSendCustomInviteCallback(SendCustomInviteCallbackInfo data); + + [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] + internal delegate void OnSendCustomInviteCallbackInternal(System.IntPtr data); +} \ No newline at end of file diff --git a/Assets/Plugins/EpicOnlineServices/Source/Generated/CustomInvites/OnSendCustomInviteCallback.cs.meta b/Assets/Plugins/EpicOnlineServices/Source/Generated/CustomInvites/OnSendCustomInviteCallback.cs.meta new file mode 100644 index 0000000..bb895d6 --- /dev/null +++ b/Assets/Plugins/EpicOnlineServices/Source/Generated/CustomInvites/OnSendCustomInviteCallback.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 138c22226d2aaca449c1df7ceb1d1d7f +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Plugins/EpicOnlineServices/Source/Generated/CustomInvites/SendCustomInviteCallbackInfo.cs b/Assets/Plugins/EpicOnlineServices/Source/Generated/CustomInvites/SendCustomInviteCallbackInfo.cs new file mode 100644 index 0000000..b4ef11a --- /dev/null +++ b/Assets/Plugins/EpicOnlineServices/Source/Generated/CustomInvites/SendCustomInviteCallbackInfo.cs @@ -0,0 +1,108 @@ +// Copyright Epic Games, Inc. All Rights Reserved. +// This file is automatically generated. Changes to this file may be overwritten. + +namespace Epic.OnlineServices.CustomInvites +{ + /// + /// Output parameters for the Function. These parameters are received through the callback provided to + /// + public class SendCustomInviteCallbackInfo : 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 sending a CustomInvite + /// + public ProductUserId LocalUserId { get; private set; } + + /// + /// Users to whom the invites were successfully sent (can be different than original call if an invite for same Payload was previously sent) + /// + public ProductUserId[] TargetUserIds { get; private set; } + + public Result? GetResultCode() + { + return ResultCode; + } + + internal void Set(SendCustomInviteCallbackInfoInternal? other) + { + if (other != null) + { + ResultCode = other.Value.ResultCode; + ClientData = other.Value.ClientData; + LocalUserId = other.Value.LocalUserId; + TargetUserIds = other.Value.TargetUserIds; + } + } + + public void Set(object other) + { + Set(other as SendCustomInviteCallbackInfoInternal?); + } + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct SendCustomInviteCallbackInfoInternal : ICallbackInfoInternal + { + private Result m_ResultCode; + private System.IntPtr m_ClientData; + private System.IntPtr m_LocalUserId; + private System.IntPtr m_TargetUserIds; + private uint m_TargetUserIdsCount; + + 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 ProductUserId[] TargetUserIds + { + get + { + ProductUserId[] value; + Helper.TryMarshalGet(m_TargetUserIds, out value, m_TargetUserIdsCount); + return value; + } + } + } +} \ No newline at end of file diff --git a/Assets/Plugins/EpicOnlineServices/Source/Generated/CustomInvites/SendCustomInviteCallbackInfo.cs.meta b/Assets/Plugins/EpicOnlineServices/Source/Generated/CustomInvites/SendCustomInviteCallbackInfo.cs.meta new file mode 100644 index 0000000..4afc2b0 --- /dev/null +++ b/Assets/Plugins/EpicOnlineServices/Source/Generated/CustomInvites/SendCustomInviteCallbackInfo.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 6b008daa9f551ea4c82afd2c750e487b +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Plugins/EpicOnlineServices/Source/Generated/CustomInvites/SendCustomInviteOptions.cs b/Assets/Plugins/EpicOnlineServices/Source/Generated/CustomInvites/SendCustomInviteOptions.cs new file mode 100644 index 0000000..653de74 --- /dev/null +++ b/Assets/Plugins/EpicOnlineServices/Source/Generated/CustomInvites/SendCustomInviteOptions.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.CustomInvites +{ + /// + /// Input parameters for the function. + /// + public class SendCustomInviteOptions + { + /// + /// Local user sending a CustomInvite + /// + public ProductUserId LocalUserId { get; set; } + + /// + /// Users to whom the invites should be sent + /// + public ProductUserId[] TargetUserIds { get; set; } + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct SendCustomInviteOptionsInternal : ISettable, System.IDisposable + { + private int m_ApiVersion; + private System.IntPtr m_LocalUserId; + private System.IntPtr m_TargetUserIds; + private uint m_TargetUserIdsCount; + + public ProductUserId LocalUserId + { + set + { + Helper.TryMarshalSet(ref m_LocalUserId, value); + } + } + + public ProductUserId[] TargetUserIds + { + set + { + Helper.TryMarshalSet(ref m_TargetUserIds, value, out m_TargetUserIdsCount); + } + } + + public void Set(SendCustomInviteOptions other) + { + if (other != null) + { + m_ApiVersion = CustomInvitesInterface.SendcustominviteApiLatest; + LocalUserId = other.LocalUserId; + TargetUserIds = other.TargetUserIds; + } + } + + public void Set(object other) + { + Set(other as SendCustomInviteOptions); + } + + public void Dispose() + { + Helper.TryMarshalDispose(ref m_LocalUserId); + Helper.TryMarshalDispose(ref m_TargetUserIds); + } + } +} \ No newline at end of file diff --git a/Assets/Plugins/EpicOnlineServices/Source/Generated/CustomInvites/SendCustomInviteOptions.cs.meta b/Assets/Plugins/EpicOnlineServices/Source/Generated/CustomInvites/SendCustomInviteOptions.cs.meta new file mode 100644 index 0000000..9b6e761 --- /dev/null +++ b/Assets/Plugins/EpicOnlineServices/Source/Generated/CustomInvites/SendCustomInviteOptions.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 89bc1aa58efc0d74e8ea46b273355ded +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Plugins/EpicOnlineServices/Source/Generated/CustomInvites/SetCustomInviteOptions.cs b/Assets/Plugins/EpicOnlineServices/Source/Generated/CustomInvites/SetCustomInviteOptions.cs new file mode 100644 index 0000000..7ce47b3 --- /dev/null +++ b/Assets/Plugins/EpicOnlineServices/Source/Generated/CustomInvites/SetCustomInviteOptions.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.CustomInvites +{ + public class SetCustomInviteOptions + { + /// + /// Local user creating / sending a Custom Invite + /// + public ProductUserId LocalUserId { get; set; } + + /// + /// String payload for the Custom Invite (must be less than ) + /// + public string Payload { get; set; } + } + + [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] + internal struct SetCustomInviteOptionsInternal : ISettable, System.IDisposable + { + private int m_ApiVersion; + private System.IntPtr m_LocalUserId; + private System.IntPtr m_Payload; + + public ProductUserId LocalUserId + { + set + { + Helper.TryMarshalSet(ref m_LocalUserId, value); + } + } + + public string Payload + { + set + { + Helper.TryMarshalSet(ref m_Payload, value); + } + } + + public void Set(SetCustomInviteOptions other) + { + if (other != null) + { + m_ApiVersion = CustomInvitesInterface.SetcustominviteApiLatest; + LocalUserId = other.LocalUserId; + Payload = other.Payload; + } + } + + public void Set(object other) + { + Set(other as SetCustomInviteOptions); + } + + public void Dispose() + { + Helper.TryMarshalDispose(ref m_LocalUserId); + Helper.TryMarshalDispose(ref m_Payload); + } + } +} \ No newline at end of file diff --git a/Assets/Plugins/EpicOnlineServices/Source/Generated/CustomInvites/SetCustomInviteOptions.cs.meta b/Assets/Plugins/EpicOnlineServices/Source/Generated/CustomInvites/SetCustomInviteOptions.cs.meta new file mode 100644 index 0000000..55ce821 --- /dev/null +++ b/Assets/Plugins/EpicOnlineServices/Source/Generated/CustomInvites/SetCustomInviteOptions.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 1311039ec78180a4a9e8c67c0efacc9b +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Plugins/EpicOnlineServices/Source/Generated/ExternalAccountType.cs b/Assets/Plugins/EpicOnlineServices/Source/Generated/ExternalAccountType.cs index 9597575..20d9875 100644 --- a/Assets/Plugins/EpicOnlineServices/Source/Generated/ExternalAccountType.cs +++ b/Assets/Plugins/EpicOnlineServices/Source/Generated/ExternalAccountType.cs @@ -23,9 +23,6 @@ namespace Epic.OnlineServices 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, /// @@ -66,6 +63,10 @@ namespace Epic.OnlineServices /// /// External account is associated with itch.io /// - Itchio = 12 + Itchio = 12, + /// + /// External account is associated with Amazon + /// + Amazon = 13 } } \ No newline at end of file diff --git a/Assets/Plugins/EpicOnlineServices/Source/Generated/ExternalCredentialType.cs b/Assets/Plugins/EpicOnlineServices/Source/Generated/ExternalCredentialType.cs index 9654711..dd2f9a3 100644 --- a/Assets/Plugins/EpicOnlineServices/Source/Generated/ExternalCredentialType.cs +++ b/Assets/Plugins/EpicOnlineServices/Source/Generated/ExternalCredentialType.cs @@ -16,11 +16,14 @@ namespace Epic.OnlineServices public enum ExternalCredentialType : int { /// - /// Epic Games User Token + /// Epic Account Services Token /// - /// Acquired using that returns ::AccessToken. + /// Using ID Token is preferred, retrieved with that returns ::JsonWebToken. + /// Using Auth Token is supported for backwards compatibility, retrieved with that returns ::AccessToken. /// /// Supported with . + /// + /// /// Epic = 0, /// @@ -169,6 +172,20 @@ namespace Epic.OnlineServices /// /// Supported with . /// - ItchioKey = 15 + ItchioKey = 15, + /// + /// Epic Games ID Token + /// + /// Acquired using that returns ::JsonWebToken. + /// + /// Supported with . + /// + EpicIdToken = 16, + /// + /// Amazon Access Token + /// + /// Supported with . + /// + AmazonAccessToken = 17 } } \ No newline at end of file diff --git a/Assets/Plugins/EpicOnlineServices/Source/Generated/Logging/LogCategory.cs b/Assets/Plugins/EpicOnlineServices/Source/Generated/Logging/LogCategory.cs index bb01d8c..908a486 100644 --- a/Assets/Plugins/EpicOnlineServices/Source/Generated/Logging/LogCategory.cs +++ b/Assets/Plugins/EpicOnlineServices/Source/Generated/Logging/LogCategory.cs @@ -141,6 +141,10 @@ namespace Epic.OnlineServices.Logging /// ReceiptValidator = 32, /// + /// Logs related to the Custom Invites API + /// + CustomInvites = 33, + /// /// Not a real log category. Used by to set the log level for all categories at the same time /// AllCategories = 0x7fffffff diff --git a/Assets/Plugins/EpicOnlineServices/Source/Generated/P2P/OnPeerConnectionEstablishedInfo.cs b/Assets/Plugins/EpicOnlineServices/Source/Generated/P2P/OnPeerConnectionEstablishedInfo.cs index 325b04f..5a53e3f 100644 --- a/Assets/Plugins/EpicOnlineServices/Source/Generated/P2P/OnPeerConnectionEstablishedInfo.cs +++ b/Assets/Plugins/EpicOnlineServices/Source/Generated/P2P/OnPeerConnectionEstablishedInfo.cs @@ -9,7 +9,7 @@ namespace Epic.OnlineServices.P2P public class OnPeerConnectionEstablishedInfo : ICallbackInfo, ISettable { /// - /// Client-specified data passed into EOS_P2P_AddNotifyPeerConnectionEstablishedInfo + /// Client-specified data passed into /// public object ClientData { get; private set; } diff --git a/Assets/Plugins/EpicOnlineServices/Source/Generated/Platform/PlatformInterface.cs b/Assets/Plugins/EpicOnlineServices/Source/Generated/Platform/PlatformInterface.cs index 3c3f8e4..9a704a7 100644 --- a/Assets/Plugins/EpicOnlineServices/Source/Generated/Platform/PlatformInterface.cs +++ b/Assets/Plugins/EpicOnlineServices/Source/Generated/Platform/PlatformInterface.cs @@ -238,6 +238,23 @@ namespace Epic.OnlineServices.Platform return funcResultReturn; } + /// + /// Get a handle to the Custom Invites Interface. + /// eos_custominvites.h + /// eos_custominvites_types.h + /// + /// + /// handle + /// + public CustomInvites.CustomInvitesInterface GetCustomInvitesInterface() + { + var funcResult = Bindings.EOS_Platform_GetCustomInvitesInterface(InnerHandle); + + CustomInvites.CustomInvitesInterface funcResultReturn; + Helper.TryMarshalGet(funcResult, out funcResultReturn); + return funcResultReturn; + } + /// /// Get a handle to the Ecom Interface. /// eos_ecom.h