diff --git a/.gitignore b/.gitignore index 7b8f6834..0925908a 100644 --- a/.gitignore +++ b/.gitignore @@ -3,3 +3,4 @@ obj/ .vs/ __pycache__/ /CodeGen/steam/lib/ +CodeGen/.vscode/settings.json diff --git a/CodeGen/.editorconfig b/CodeGen/.editorconfig new file mode 100644 index 00000000..b3c5df63 --- /dev/null +++ b/CodeGen/.editorconfig @@ -0,0 +1,5 @@ +root = true +charset = utf-8 +indent_size = 4 +indent_style = space +tab_width = 4 \ No newline at end of file diff --git a/CodeGen/.vscode/launch.json b/CodeGen/.vscode/launch.json new file mode 100644 index 00000000..75cf014d --- /dev/null +++ b/CodeGen/.vscode/launch.json @@ -0,0 +1,15 @@ +{ + // 使用 IntelliSense 了解相关属性。 + // 悬停以查看现有属性的描述。 + // 欲了解更多信息,请访问: https://go.microsoft.com/fwlink/?linkid=830387 + "version": "0.2.0", + "configurations": [ + { + "name": "Generator", + "type": "debugpy", + "request": "launch", + "program": "Steamworks.NET_CodeGen.py", + "console": "integratedTerminal" + } + ] +} \ No newline at end of file diff --git a/CodeGen/src/interfaces.py b/CodeGen/src/interfaces.py index c394a689..6f26655b 100644 --- a/CodeGen/src/interfaces.py +++ b/CodeGen/src/interfaces.py @@ -544,12 +544,20 @@ HEADER = None g_NativeMethods = [] + +# AnyCPU wrappers of steam native function +g_NativeAnyCpu = [] +# Underlying dll import class of AnyCPU, used to hold platform specific DllImports +# parsed result are shared between 64bit and 32bit +g_NativeMethodsPlatform = [] + g_Output = [] g_Typedefs = None def main(parser): try: os.makedirs("../com.rlabrecque.steamworks.net/Runtime/autogen/") + os.makedirs("../Standalone/AnyCPU/autogen/") except OSError: pass @@ -564,13 +572,51 @@ def main(parser): with open("../com.rlabrecque.steamworks.net/Runtime/autogen/NativeMethods.cs", "wb") as out: #out.write(bytes(HEADER, "utf-8")) - with open("templates/nativemethods.txt", "r") as f: + with open("templates/nativemethods.txt", "r", encoding="utf-8") as f: + out.write(bytes(f.read(), "utf-8")) + with open("templates/nativemethods_dllimport.txt", "r", encoding="utf-8") as f: out.write(bytes(f.read(), "utf-8")) for line in g_NativeMethods: out.write(bytes(line + "\n", "utf-8")) out.write(bytes("\t}\n", "utf-8")) out.write(bytes("}\n\n", "utf-8")) out.write(bytes("#endif // !DISABLESTEAMWORKS\n", "utf-8")) + + with open("../Standalone/AnyCPU/autogen/NativeMethods.cs", "wb") as anycpu: + with open("templates/nativemethods_anycpu.txt", "r", encoding="utf-8") as f: + anycpu.write(bytes(f.read(), "utf-8")) + + for line in g_NativeAnyCpu: + anycpu.write(bytes(line + "\n", "utf-8")) + anycpu.write(bytes("\t}\n", "utf-8")) + anycpu.write(bytes("}\n\n", "utf-8")) + anycpu.write(bytes("#endif // !DISABLESTEAMWORKS\n", "utf-8")) + + with open("../Standalone/AnyCPU/autogen/NativeMethodsUnderlyingWin64.cs", "wb") as anycpu_win64: + with open("templates/nativemethods_win64.txt", "r", encoding="utf-8") as f: + anycpu_win64.write(bytes(f.read(), "utf-8")) + with open("templates/nativemethods_dllimport.txt", "r", encoding="utf-8") as f: + anycpu_win64.write(bytes(f.read(), "utf-8")) + + for line in g_NativeMethodsPlatform: + anycpu_win64.write(bytes(line + "\n", "utf-8")) + anycpu_win64.write(bytes("\t}\n", "utf-8")) + anycpu_win64.write(bytes("}\n\n", "utf-8")) + anycpu_win64.write(bytes("#endif // !DISABLESTEAMWORKS\n", "utf-8")) + + with open("../Standalone/AnyCPU/autogen/NativeMethodsUnderlying.cs", "wb") as anycpu_general: + with open("templates/nativemethods_general.txt", "r", encoding="utf-8") as f: + anycpu_general.write(bytes(f.read(), "utf-8")) + with open("templates/nativemethods_dllimport.txt", "r", encoding="utf-8") as f: + anycpu_general.write(bytes(f.read(), "utf-8")) + + for line in g_NativeMethodsPlatform: + anycpu_general.write(bytes(line + "\n", "utf-8")) + anycpu_general.write(bytes("\t}\n", "utf-8")) + anycpu_general.write(bytes("}\n\n", "utf-8")) + anycpu_general.write(bytes("#endif // !DISABLESTEAMWORKS\n", "utf-8")) + + def get_arg_attribute(strEntryPoint, arg): return g_FixedAttributeValues.get(strEntryPoint, dict()).get(arg.name, arg.attribute) @@ -610,6 +656,7 @@ def parse_interface(f, interface): if not bGameServerVersion: g_NativeMethods.append("#region " + interface.name[1:]) + g_NativeMethodsPlatform.append("#region " + interface.name[1:]) lastIfStatement = None for func in interface.functions: @@ -652,6 +699,7 @@ def parse_interface(f, interface): if not bGameServerVersion: g_NativeMethods.append("#endregion") + g_NativeMethodsPlatform.append("#endregion") g_Output.append("\t}") @@ -686,23 +734,69 @@ def parse_func(f, interface, func): wrapperreturntype = returntype args = parse_args(strEntryPoint, func.args) - pinvokeargs = args[0] # TODO: NamedTuple + pinvokeargs: str = args[0] # TODO: NamedTuple wrapperargs = args[1] - argnames = args[2] + argnames: str = args[2] stringargs = args[3] outstringargs = args[4][0] outstringsize = args[4][1] args_with_explicit_count = args[5] if not bGameServerVersion: + # generate steam api import g_NativeMethods.append("\t\t[DllImport(NativeLibraryName, EntryPoint = \"SteamAPI_{0}\", CallingConvention = CallingConvention.Cdecl)]".format(strEntryPoint)) - + g_NativeMethodsPlatform.append("\t\t[DllImport(NativeLibraryName, EntryPoint = \"SteamAPI_{0}\", CallingConvention = CallingConvention.Cdecl)]".format(strEntryPoint)) + if returntype == "bool": g_NativeMethods.append("\t\t[return: MarshalAs(UnmanagedType.I1)]") + g_NativeMethodsPlatform.append("\t\t[return: MarshalAs(UnmanagedType.I1)]") g_NativeMethods.append("\t\tpublic static extern {0} {1}({2});".format(returntype, strEntryPoint, pinvokeargs)) g_NativeMethods.append("") - + + g_NativeMethodsPlatform.append("") + g_NativeMethodsPlatform.append("\t\tpublic static extern {0} {1}({2});".format(returntype, strEntryPoint, pinvokeargs)) + g_NativeMethodsPlatform.append("") + + # generate AnyCPU specific code + # build parameter list of wrapped steam function + # sanitize PInvoke attributes first + strAnyCpuCallParameterList = "" + for arg in pinvokeargs.replace("[In, Out]", "").replace("[In]", "").replace("[Out]", "").split(", "): + arg = arg + # cut argument name out + argnameBegin = arg.rfind(" ") + 1 + + wrapperArgName = arg[argnameBegin:] + # handle `ref` or `out` arguments + keywordRefOrOut = "" + if arg.startswith("ref"): + keywordRefOrOut = "ref " + elif arg.startswith("out"): + keywordRefOrOut = "out " + strAnyCpuCallParameterList += keywordRefOrOut + wrapperArgName + ", " + strAnyCpuCallParameterList = strAnyCpuCallParameterList.rstrip(", ") + + callSteamApiExpression = "{0}({1})".format(strEntryPoint, strAnyCpuCallParameterList) + + # for functions that have return value, generate return statement in wrapper + optionalReturn = "" + if returntype != "void": + optionalReturn = "return " + + # build AnyCPU wrapper method body(without braces) + anyCpuWarpperBody = [] + anyCpuWarpperBody.append("\t\t\tif (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) {") + anyCpuWarpperBody.append("\t\t\t\t" + optionalReturn + "NativeMethodsUnderlyingWin64." + callSteamApiExpression + ";") + anyCpuWarpperBody.append("\t\t\t} else {") + anyCpuWarpperBody.append("\t\t\t\t" + optionalReturn + "NativeMethodsUnderlying." + callSteamApiExpression + ";") + anyCpuWarpperBody.append("\t\t\t}") + + strAnyCpuWrapperBody = "" + for line in anyCpuWarpperBody: + strAnyCpuWrapperBody += line + "\n" + + g_NativeAnyCpu.append("\t\tpublic static {0} {1}({2}) {{\n{3}\t\t}}\n".format(returntype, strEntryPoint, pinvokeargs, strAnyCpuWrapperBody)) functionBody = [] if 'GameServer' in interface.name: @@ -926,7 +1020,8 @@ def parse_args(strEntryPoint, args): if __name__ == "__main__": if len(sys.argv) != 2: - print("TODO: Usage Instructions") + print("Usage: indirectly invoked by Steamworks.NET_CodeGen.py" + + "or python3 src/interfaces.py \n") exit() steamworksparser.Settings.fake_gameserver_interfaces = True diff --git a/CodeGen/src/structs.py b/CodeGen/src/structs.py index efc1a2d5..76a21323 100644 --- a/CodeGen/src/structs.py +++ b/CodeGen/src/structs.py @@ -143,13 +143,25 @@ def parse(struct): packsize = g_CustomPackSize.get(structname, "Packsize.value") if g_ExplicitStructs.get(structname, False): + lines.append("#if !STEAMWORKS_STANDALONE_ANYCPU") lines.append("\t[StructLayout(LayoutKind.Explicit, Pack = " + packsize + ")]") + lines.append("#else") + lines.append("\t[StructLayout(LayoutKind.Explicit)]") + lines.append("#endif") elif struct.packsize: customsize = "" if len(struct.fields) == 0: customsize = ", Size = 1" - lines.append("\t[StructLayout(LayoutKind.Sequential, Pack = " + packsize + customsize + ")]") - + + if packsize == "Packsize.value": + lines.append("#if STEAMWORKS_STANDALONE_ANYCPU") + lines.append("\t[StructLayout(LayoutKind.Sequential" + customsize + ")]") + lines.append("#else") + lines.append("\t[StructLayout(LayoutKind.Sequential, Pack = " + packsize + customsize + ")]") + lines.append("#endif") + else: + lines.append("\t[StructLayout(LayoutKind.Sequential, Pack = " + packsize + customsize + ")]") + if struct.callbackid: lines.append("\t[CallbackIdentity(Constants." + struct.callbackid + ")]") diff --git a/CodeGen/templates/custom_types/SteamDatagramTickets/SteamDatagramHostedAddress.cs b/CodeGen/templates/custom_types/SteamDatagramTickets/SteamDatagramHostedAddress.cs index 9daa831d..7a17f45a 100644 --- a/CodeGen/templates/custom_types/SteamDatagramTickets/SteamDatagramHostedAddress.cs +++ b/CodeGen/templates/custom_types/SteamDatagramTickets/SteamDatagramHostedAddress.cs @@ -6,7 +6,11 @@ namespace Steamworks /// need to know what's inside. (Indeed, we don't really want them to /// know, as it could reveal information useful to an attacker.) [System.Serializable] +#if !STEAMWORKS_STANDALONE_ANYCPU [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#else + [StructLayout(LayoutKind.Sequential)] +#endif public struct SteamDatagramHostedAddress { // Size of data blob. diff --git a/CodeGen/templates/custom_types/SteamDatagramTickets/SteamDatagramRelayAuthTicket.cs b/CodeGen/templates/custom_types/SteamDatagramTickets/SteamDatagramRelayAuthTicket.cs index 533aaae4..d82e1c69 100644 --- a/CodeGen/templates/custom_types/SteamDatagramTickets/SteamDatagramRelayAuthTicket.cs +++ b/CodeGen/templates/custom_types/SteamDatagramTickets/SteamDatagramRelayAuthTicket.cs @@ -6,7 +6,11 @@ namespace Steamworks /// need to know what's inside. (Indeed, we don't really want them to /// know, as it could reveal information useful to an attacker.) [System.Serializable] +#if !STEAMWORKS_STANDALONE_ANYCPU [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#else + [StructLayout(LayoutKind.Sequential)] +#endif public struct SteamDatagramRelayAuthTicket { /// Identity of the gameserver we want to talk to. This is required. @@ -81,7 +85,11 @@ public struct SteamDatagramRelayAuthTicket // we collect to partners, but we hope to in the future so that you can // get visibility into network conditions.) // +#if !STEAMWORKS_STANDALONE_ANYCPU [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#else + [StructLayout(LayoutKind.Sequential)] +#endif struct ExtraField { enum EType diff --git a/CodeGen/templates/header.txt b/CodeGen/templates/header.txt index 22fe857f..00254428 100644 --- a/CodeGen/templates/header.txt +++ b/CodeGen/templates/header.txt @@ -5,7 +5,7 @@ // This file is automatically generated. // Changes to this file will be reverted when you update Steamworks.NET -#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX) +#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX || STEAMWORKS_STANDALONE_ANYCPU) #define DISABLESTEAMWORKS #endif diff --git a/CodeGen/templates/nativemethods.txt b/CodeGen/templates/nativemethods.txt index 7274efd8..bd84afee 100644 --- a/CodeGen/templates/nativemethods.txt +++ b/CodeGen/templates/nativemethods.txt @@ -45,312 +45,3 @@ namespace Steamworks { internal const string NativeLibrary_SDKEncryptedAppTicket = "sdkencryptedappticket"; #endif -#region steam_api.h - [DllImport(NativeLibraryName, EntryPoint = "SteamInternal_SteamAPI_Init", CallingConvention = CallingConvention.Cdecl)] - public static extern ESteamAPIInitResult SteamInternal_SteamAPI_Init(InteropHelp.UTF8StringHandle pszInternalCheckInterfaceVersions, IntPtr pOutErrMsg); - - [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_Shutdown", CallingConvention = CallingConvention.Cdecl)] - public static extern void SteamAPI_Shutdown(); - - [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_RestartAppIfNecessary", CallingConvention = CallingConvention.Cdecl)] - [return: MarshalAs(UnmanagedType.I1)] - public static extern bool SteamAPI_RestartAppIfNecessary(AppId_t unOwnAppID); - - [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ReleaseCurrentThreadMemory", CallingConvention = CallingConvention.Cdecl)] - public static extern void SteamAPI_ReleaseCurrentThreadMemory(); - - [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_WriteMiniDump", CallingConvention = CallingConvention.Cdecl)] - public static extern void SteamAPI_WriteMiniDump(uint uStructuredExceptionCode, IntPtr pvExceptionInfo, uint uBuildID); - - [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SetMiniDumpComment", CallingConvention = CallingConvention.Cdecl)] - public static extern void SteamAPI_SetMiniDumpComment(InteropHelp.UTF8StringHandle pchMsg); - - [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_RunCallbacks", CallingConvention = CallingConvention.Cdecl)] - public static extern void SteamAPI_RunCallbacks(); - - [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_RegisterCallback", CallingConvention = CallingConvention.Cdecl)] - public static extern void SteamAPI_RegisterCallback(IntPtr pCallback, int iCallback); - - [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_UnregisterCallback", CallingConvention = CallingConvention.Cdecl)] - public static extern void SteamAPI_UnregisterCallback(IntPtr pCallback); - - [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_RegisterCallResult", CallingConvention = CallingConvention.Cdecl)] - public static extern void SteamAPI_RegisterCallResult(IntPtr pCallback, ulong hAPICall); - - [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_UnregisterCallResult", CallingConvention = CallingConvention.Cdecl)] - public static extern void SteamAPI_UnregisterCallResult(IntPtr pCallback, ulong hAPICall); - - [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_IsSteamRunning", CallingConvention = CallingConvention.Cdecl)] - [return: MarshalAs(UnmanagedType.I1)] - public static extern bool SteamAPI_IsSteamRunning(); - - [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_GetSteamInstallPath", CallingConvention = CallingConvention.Cdecl)] - public static extern int SteamAPI_GetSteamInstallPath(); - - [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_GetHSteamPipe", CallingConvention = CallingConvention.Cdecl)] - public static extern int SteamAPI_GetHSteamPipe(); - - [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SetTryCatchCallbacks", CallingConvention = CallingConvention.Cdecl)] - public static extern void SteamAPI_SetTryCatchCallbacks([MarshalAs(UnmanagedType.I1)] bool bTryCatchCallbacks); - - [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_GetHSteamUser", CallingConvention = CallingConvention.Cdecl)] - public static extern int SteamAPI_GetHSteamUser(); - - [DllImport(NativeLibraryName, EntryPoint = "SteamInternal_ContextInit", CallingConvention = CallingConvention.Cdecl)] - public static extern IntPtr SteamInternal_ContextInit(IntPtr pContextInitData); - - [DllImport(NativeLibraryName, EntryPoint = "SteamInternal_CreateInterface", CallingConvention = CallingConvention.Cdecl)] - public static extern IntPtr SteamInternal_CreateInterface(InteropHelp.UTF8StringHandle ver); - - [DllImport(NativeLibraryName, EntryPoint = "SteamInternal_FindOrCreateUserInterface", CallingConvention = CallingConvention.Cdecl)] - public static extern IntPtr SteamInternal_FindOrCreateUserInterface(HSteamUser hSteamUser, InteropHelp.UTF8StringHandle pszVersion); - - [DllImport(NativeLibraryName, EntryPoint = "SteamInternal_FindOrCreateGameServerInterface", CallingConvention = CallingConvention.Cdecl)] - public static extern IntPtr SteamInternal_FindOrCreateGameServerInterface(HSteamUser hSteamUser, InteropHelp.UTF8StringHandle pszVersion); - - [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_UseBreakpadCrashHandler", CallingConvention = CallingConvention.Cdecl)] - public static extern void SteamAPI_UseBreakpadCrashHandler(InteropHelp.UTF8StringHandle pchVersion, InteropHelp.UTF8StringHandle pchDate, InteropHelp.UTF8StringHandle pchTime, [MarshalAs(UnmanagedType.I1)] bool bFullMemoryDumps, IntPtr pvContext, IntPtr m_pfnPreMinidumpCallback); - - [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SetBreakpadAppID", CallingConvention = CallingConvention.Cdecl)] - public static extern void SteamAPI_SetBreakpadAppID(uint unAppID); - - [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ManualDispatch_Init", CallingConvention = CallingConvention.Cdecl)] - public static extern void SteamAPI_ManualDispatch_Init(); - - [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ManualDispatch_RunFrame", CallingConvention = CallingConvention.Cdecl)] - public static extern void SteamAPI_ManualDispatch_RunFrame(HSteamPipe hSteamPipe); - - [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ManualDispatch_GetNextCallback", CallingConvention = CallingConvention.Cdecl)] - [return: MarshalAs(UnmanagedType.I1)] - public static extern bool SteamAPI_ManualDispatch_GetNextCallback(HSteamPipe hSteamPipe, IntPtr pCallbackMsg); - - [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ManualDispatch_FreeLastCallback", CallingConvention = CallingConvention.Cdecl)] - public static extern void SteamAPI_ManualDispatch_FreeLastCallback(HSteamPipe hSteamPipe); - - [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ManualDispatch_GetAPICallResult", CallingConvention = CallingConvention.Cdecl)] - [return: MarshalAs(UnmanagedType.I1)] - public static extern bool SteamAPI_ManualDispatch_GetAPICallResult(HSteamPipe hSteamPipe, SteamAPICall_t hSteamAPICall, IntPtr pCallback, int cubCallback, int iCallbackExpected, out bool pbFailed); -#endregion -#region steam_gameserver.h - [DllImport(NativeLibraryName, EntryPoint = "SteamGameServer_Shutdown", CallingConvention = CallingConvention.Cdecl)] - public static extern void SteamGameServer_Shutdown(); - - [DllImport(NativeLibraryName, EntryPoint = "SteamGameServer_RunCallbacks", CallingConvention = CallingConvention.Cdecl)] - public static extern void SteamGameServer_RunCallbacks(); - - [DllImport(NativeLibraryName, EntryPoint = "SteamGameServer_ReleaseCurrentThreadMemory", CallingConvention = CallingConvention.Cdecl)] - public static extern void SteamGameServer_ReleaseCurrentThreadMemory(); - - [DllImport(NativeLibraryName, EntryPoint = "SteamGameServer_BSecure", CallingConvention = CallingConvention.Cdecl)] - [return: MarshalAs(UnmanagedType.I1)] - public static extern bool SteamGameServer_BSecure(); - - [DllImport(NativeLibraryName, EntryPoint = "SteamGameServer_GetSteamID", CallingConvention = CallingConvention.Cdecl)] - public static extern ulong SteamGameServer_GetSteamID(); - - [DllImport(NativeLibraryName, EntryPoint = "SteamGameServer_GetHSteamPipe", CallingConvention = CallingConvention.Cdecl)] - public static extern int SteamGameServer_GetHSteamPipe(); - - [DllImport(NativeLibraryName, EntryPoint = "SteamGameServer_GetHSteamUser", CallingConvention = CallingConvention.Cdecl)] - public static extern int SteamGameServer_GetHSteamUser(); - - [DllImport(NativeLibraryName, EntryPoint = "SteamInternal_GameServer_Init_V2", CallingConvention = CallingConvention.Cdecl)] - public static extern ESteamAPIInitResult SteamInternal_GameServer_Init_V2(uint unIP, ushort usGamePort, ushort usQueryPort, EServerMode eServerMode, InteropHelp.UTF8StringHandle pchVersionString, InteropHelp.UTF8StringHandle pszInternalCheckInterfaceVersions, IntPtr pOutErrMsg); -#endregion -#region SteamAPI Accessors - [DllImport(NativeLibraryName, EntryPoint = "SteamClient", CallingConvention = CallingConvention.Cdecl)] - public static extern IntPtr SteamClient(); - - [DllImport(NativeLibraryName, EntryPoint = "SteamGameServerClient", CallingConvention = CallingConvention.Cdecl)] - public static extern IntPtr SteamGameServerClient(); -#endregion -#region SteamNetworkingIPAddr Accessors - [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIPAddr_Clear", CallingConvention = CallingConvention.Cdecl)] - public static extern void SteamAPI_SteamNetworkingIPAddr_Clear(ref SteamNetworkingIPAddr self); - - [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIPAddr_IsIPv6AllZeros", CallingConvention = CallingConvention.Cdecl)] - [return: MarshalAs(UnmanagedType.I1)] - public static extern bool SteamAPI_SteamNetworkingIPAddr_IsIPv6AllZeros(ref SteamNetworkingIPAddr self); - - [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIPAddr_SetIPv6", CallingConvention = CallingConvention.Cdecl)] - public static extern void SteamAPI_SteamNetworkingIPAddr_SetIPv6(ref SteamNetworkingIPAddr self, [In, Out] byte[] ipv6, ushort nPort); - - [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIPAddr_SetIPv4", CallingConvention = CallingConvention.Cdecl)] - public static extern void SteamAPI_SteamNetworkingIPAddr_SetIPv4(ref SteamNetworkingIPAddr self, uint nIP, ushort nPort); - - [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIPAddr_IsIPv4", CallingConvention = CallingConvention.Cdecl)] - [return: MarshalAs(UnmanagedType.I1)] - public static extern bool SteamAPI_SteamNetworkingIPAddr_IsIPv4(ref SteamNetworkingIPAddr self); - - [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIPAddr_GetIPv4", CallingConvention = CallingConvention.Cdecl)] - public static extern uint SteamAPI_SteamNetworkingIPAddr_GetIPv4(ref SteamNetworkingIPAddr self); - - [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIPAddr_SetIPv6LocalHost", CallingConvention = CallingConvention.Cdecl)] - public static extern void SteamAPI_SteamNetworkingIPAddr_SetIPv6LocalHost(ref SteamNetworkingIPAddr self, ushort nPort); - - [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIPAddr_IsLocalHost", CallingConvention = CallingConvention.Cdecl)] - [return: MarshalAs(UnmanagedType.I1)] - public static extern bool SteamAPI_SteamNetworkingIPAddr_IsLocalHost(ref SteamNetworkingIPAddr self); - - [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIPAddr_ToString", CallingConvention = CallingConvention.Cdecl)] - public static extern void SteamAPI_SteamNetworkingIPAddr_ToString(ref SteamNetworkingIPAddr self, IntPtr buf, uint cbBuf, [MarshalAs(UnmanagedType.I1)] bool bWithPort); - - [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIPAddr_ParseString", CallingConvention = CallingConvention.Cdecl)] - [return: MarshalAs(UnmanagedType.I1)] - public static extern bool SteamAPI_SteamNetworkingIPAddr_ParseString(ref SteamNetworkingIPAddr self, InteropHelp.UTF8StringHandle pszStr); - - [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIPAddr_IsEqualTo", CallingConvention = CallingConvention.Cdecl)] - [return: MarshalAs(UnmanagedType.I1)] - public static extern bool SteamAPI_SteamNetworkingIPAddr_IsEqualTo(ref SteamNetworkingIPAddr self, ref SteamNetworkingIPAddr x); - - [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIPAddr_GetFakeIPType", CallingConvention = CallingConvention.Cdecl)] - public static extern ESteamNetworkingFakeIPType SteamAPI_SteamNetworkingIPAddr_GetFakeIPType(ref SteamNetworkingIPAddr self); - - [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIPAddr_IsFakeIP", CallingConvention = CallingConvention.Cdecl)] - [return: MarshalAs(UnmanagedType.I1)] - public static extern bool SteamAPI_SteamNetworkingIPAddr_IsFakeIP(ref SteamNetworkingIPAddr self); -#endregion -#region SteamNetworkingIdentity Accessors - [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIdentity_Clear", CallingConvention = CallingConvention.Cdecl)] - public static extern void SteamAPI_SteamNetworkingIdentity_Clear(ref SteamNetworkingIdentity self); - - [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIdentity_IsInvalid", CallingConvention = CallingConvention.Cdecl)] - [return: MarshalAs(UnmanagedType.I1)] - public static extern bool SteamAPI_SteamNetworkingIdentity_IsInvalid(ref SteamNetworkingIdentity self); - - [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIdentity_SetSteamID", CallingConvention = CallingConvention.Cdecl)] - public static extern void SteamAPI_SteamNetworkingIdentity_SetSteamID(ref SteamNetworkingIdentity self, ulong steamID); - - [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIdentity_GetSteamID", CallingConvention = CallingConvention.Cdecl)] - public static extern ulong SteamAPI_SteamNetworkingIdentity_GetSteamID(ref SteamNetworkingIdentity self); - - [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIdentity_SetSteamID64", CallingConvention = CallingConvention.Cdecl)] - public static extern void SteamAPI_SteamNetworkingIdentity_SetSteamID64(ref SteamNetworkingIdentity self, ulong steamID); - - [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIdentity_GetSteamID64", CallingConvention = CallingConvention.Cdecl)] - public static extern ulong SteamAPI_SteamNetworkingIdentity_GetSteamID64(ref SteamNetworkingIdentity self); - - [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIdentity_SetXboxPairwiseID", CallingConvention = CallingConvention.Cdecl)] - [return: MarshalAs(UnmanagedType.I1)] - public static extern bool SteamAPI_SteamNetworkingIdentity_SetXboxPairwiseID(ref SteamNetworkingIdentity self, InteropHelp.UTF8StringHandle pszString); - - [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIdentity_GetXboxPairwiseID", CallingConvention = CallingConvention.Cdecl)] - public static extern IntPtr SteamAPI_SteamNetworkingIdentity_GetXboxPairwiseID(ref SteamNetworkingIdentity self); - - [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIdentity_SetPSNID", CallingConvention = CallingConvention.Cdecl)] - public static extern void SteamAPI_SteamNetworkingIdentity_SetPSNID(ref SteamNetworkingIdentity self, ulong id); - - [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIdentity_GetPSNID", CallingConvention = CallingConvention.Cdecl)] - public static extern ulong SteamAPI_SteamNetworkingIdentity_GetPSNID(ref SteamNetworkingIdentity self); - - [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIdentity_SetIPAddr", CallingConvention = CallingConvention.Cdecl)] - public static extern IntPtr SteamAPI_SteamNetworkingIdentity_SetIPAddr(ref SteamNetworkingIdentity self, ref SteamNetworkingIPAddr addr); - - [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIdentity_GetIPAddr", CallingConvention = CallingConvention.Cdecl)] - public static extern IntPtr SteamAPI_SteamNetworkingIdentity_GetIPAddr(ref SteamNetworkingIdentity self); - - [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIdentity_SetIPv4Addr", CallingConvention = CallingConvention.Cdecl)] - public static extern void SteamAPI_SteamNetworkingIdentity_SetIPv4Addr(ref SteamNetworkingIdentity self, uint nIPv4, ushort nPort); - - [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIdentity_GetIPv4", CallingConvention = CallingConvention.Cdecl)] - public static extern uint SteamAPI_SteamNetworkingIdentity_GetIPv4(ref SteamNetworkingIdentity self); - - [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIdentity_GetFakeIPType", CallingConvention = CallingConvention.Cdecl)] - public static extern ESteamNetworkingFakeIPType SteamAPI_SteamNetworkingIdentity_GetFakeIPType(ref SteamNetworkingIdentity self); - - [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIdentity_IsFakeIP", CallingConvention = CallingConvention.Cdecl)] - [return: MarshalAs(UnmanagedType.I1)] - public static extern bool SteamAPI_SteamNetworkingIdentity_IsFakeIP(ref SteamNetworkingIdentity self); - - [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIdentity_SetLocalHost", CallingConvention = CallingConvention.Cdecl)] - public static extern void SteamAPI_SteamNetworkingIdentity_SetLocalHost(ref SteamNetworkingIdentity self); - - [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIdentity_IsLocalHost", CallingConvention = CallingConvention.Cdecl)] - [return: MarshalAs(UnmanagedType.I1)] - public static extern bool SteamAPI_SteamNetworkingIdentity_IsLocalHost(ref SteamNetworkingIdentity self); - - [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIdentity_SetGenericString", CallingConvention = CallingConvention.Cdecl)] - [return: MarshalAs(UnmanagedType.I1)] - public static extern bool SteamAPI_SteamNetworkingIdentity_SetGenericString(ref SteamNetworkingIdentity self, InteropHelp.UTF8StringHandle pszString); - - [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIdentity_GetGenericString", CallingConvention = CallingConvention.Cdecl)] - public static extern IntPtr SteamAPI_SteamNetworkingIdentity_GetGenericString(ref SteamNetworkingIdentity self); - - [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIdentity_SetGenericBytes", CallingConvention = CallingConvention.Cdecl)] - [return: MarshalAs(UnmanagedType.I1)] - public static extern bool SteamAPI_SteamNetworkingIdentity_SetGenericBytes(ref SteamNetworkingIdentity self, [In, Out] byte[] data, uint cbLen); - - [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIdentity_GetGenericBytes", CallingConvention = CallingConvention.Cdecl)] - public static extern IntPtr SteamAPI_SteamNetworkingIdentity_GetGenericBytes(ref SteamNetworkingIdentity self, out int cbLen); - - [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIdentity_IsEqualTo", CallingConvention = CallingConvention.Cdecl)] - [return: MarshalAs(UnmanagedType.I1)] - public static extern bool SteamAPI_SteamNetworkingIdentity_IsEqualTo(ref SteamNetworkingIdentity self, ref SteamNetworkingIdentity x); - - [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIdentity_ToString", CallingConvention = CallingConvention.Cdecl)] - public static extern void SteamAPI_SteamNetworkingIdentity_ToString(ref SteamNetworkingIdentity self, IntPtr buf, uint cbBuf); - - [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIdentity_ParseString", CallingConvention = CallingConvention.Cdecl)] - [return: MarshalAs(UnmanagedType.I1)] - public static extern bool SteamAPI_SteamNetworkingIdentity_ParseString(ref SteamNetworkingIdentity self, InteropHelp.UTF8StringHandle pszStr); -#endregion -#region SteamNetworkingMessage_t Accessors - [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingMessage_t_Release", CallingConvention = CallingConvention.Cdecl)] - public static extern void SteamAPI_SteamNetworkingMessage_t_Release(IntPtr self); -#endregion -#region ISteamNetworkingConnectionSignaling Accessors - [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingConnectionSignaling_SendSignal", CallingConvention = CallingConvention.Cdecl)] - [return: MarshalAs(UnmanagedType.I1)] - public static extern bool SteamAPI_ISteamNetworkingConnectionSignaling_SendSignal(ref ISteamNetworkingConnectionSignaling self, HSteamNetConnection hConn, ref SteamNetConnectionInfo_t info, IntPtr pMsg, int cbMsg); - - [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingConnectionSignaling_Release", CallingConvention = CallingConvention.Cdecl)] - public static extern void SteamAPI_ISteamNetworkingConnectionSignaling_Release(ref ISteamNetworkingConnectionSignaling self); -#endregion -#region ISteamNetworkingSignalingRecvContext Accessors - [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingSignalingRecvContext_OnConnectRequest", CallingConvention = CallingConvention.Cdecl)] - public static extern IntPtr SteamAPI_ISteamNetworkingSignalingRecvContext_OnConnectRequest(ref ISteamNetworkingSignalingRecvContext self, HSteamNetConnection hConn, ref SteamNetworkingIdentity identityPeer, int nLocalVirtualPort); - - [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingSignalingRecvContext_SendRejectionSignal", CallingConvention = CallingConvention.Cdecl)] - public static extern void SteamAPI_ISteamNetworkingSignalingRecvContext_SendRejectionSignal(ref ISteamNetworkingSignalingRecvContext self, ref SteamNetworkingIdentity identityPeer, IntPtr pMsg, int cbMsg); -#endregion -#region steamencryptedappticket.h - [DllImport(NativeLibrary_SDKEncryptedAppTicket, CallingConvention = CallingConvention.Cdecl)] - [return: MarshalAs(UnmanagedType.I1)] - public static extern bool SteamEncryptedAppTicket_BDecryptTicket([In, Out] byte[] rgubTicketEncrypted, uint cubTicketEncrypted, [In, Out] byte[] rgubTicketDecrypted, ref uint pcubTicketDecrypted, [MarshalAs(UnmanagedType.LPArray, SizeConst=Constants.k_nSteamEncryptedAppTicketSymmetricKeyLen)] byte[] rgubKey, int cubKey); - - [DllImport(NativeLibrary_SDKEncryptedAppTicket, CallingConvention = CallingConvention.Cdecl)] - [return: MarshalAs(UnmanagedType.I1)] - public static extern bool SteamEncryptedAppTicket_BIsTicketForApp([In, Out] byte[] rgubTicketDecrypted, uint cubTicketDecrypted, AppId_t nAppID); - - [DllImport(NativeLibrary_SDKEncryptedAppTicket, CallingConvention = CallingConvention.Cdecl)] - public static extern uint SteamEncryptedAppTicket_GetTicketIssueTime([In, Out] byte[] rgubTicketDecrypted, uint cubTicketDecrypted); - - [DllImport(NativeLibrary_SDKEncryptedAppTicket, CallingConvention = CallingConvention.Cdecl)] - public static extern void SteamEncryptedAppTicket_GetTicketSteamID([In, Out] byte[] rgubTicketDecrypted, uint cubTicketDecrypted, out CSteamID psteamID); - - [DllImport(NativeLibrary_SDKEncryptedAppTicket, CallingConvention = CallingConvention.Cdecl)] - public static extern uint SteamEncryptedAppTicket_GetTicketAppID([In, Out] byte[] rgubTicketDecrypted, uint cubTicketDecrypted); - - [DllImport(NativeLibrary_SDKEncryptedAppTicket, CallingConvention = CallingConvention.Cdecl)] - [return: MarshalAs(UnmanagedType.I1)] - public static extern bool SteamEncryptedAppTicket_BUserOwnsAppInTicket([In, Out] byte[] rgubTicketDecrypted, uint cubTicketDecrypted, AppId_t nAppID); - - [DllImport(NativeLibrary_SDKEncryptedAppTicket, CallingConvention = CallingConvention.Cdecl)] - [return: MarshalAs(UnmanagedType.I1)] - public static extern bool SteamEncryptedAppTicket_BUserIsVacBanned([In, Out] byte[] rgubTicketDecrypted, uint cubTicketDecrypted); - - [DllImport(NativeLibrary_SDKEncryptedAppTicket, CallingConvention = CallingConvention.Cdecl)] - public static extern IntPtr SteamEncryptedAppTicket_GetUserVariableData([In, Out] byte[] rgubTicketDecrypted, uint cubTicketDecrypted, out uint pcubUserData); - - [DllImport(NativeLibrary_SDKEncryptedAppTicket, CallingConvention = CallingConvention.Cdecl)] - [return: MarshalAs(UnmanagedType.I1)] - public static extern bool SteamEncryptedAppTicket_BIsTicketSigned([In, Out] byte[] rgubTicketDecrypted, uint cubTicketDecrypted, [In, Out] byte[] pubRSAKey, uint cubRSAKey); - - [DllImport(NativeLibrary_SDKEncryptedAppTicket, CallingConvention = CallingConvention.Cdecl)] - [return: MarshalAs(UnmanagedType.I1)] - public static extern bool SteamEncryptedAppTicket_BIsLicenseBorrowed([In, Out] byte[] rgubTicketDecrypted, uint cubTicketDecrypted); - - [DllImport(NativeLibrary_SDKEncryptedAppTicket, CallingConvention = CallingConvention.Cdecl)] - [return: MarshalAs(UnmanagedType.I1)] - public static extern bool SteamEncryptedAppTicket_BIsLicenseTemporary([In, Out] byte[] rgubTicketDecrypted, uint cubTicketDecrypted); -#endregion diff --git a/CodeGen/templates/nativemethods_anycpu.txt b/CodeGen/templates/nativemethods_anycpu.txt new file mode 100644 index 00000000..05861d67 --- /dev/null +++ b/CodeGen/templates/nativemethods_anycpu.txt @@ -0,0 +1,792 @@ +// This file is provided under The MIT License as part of Steamworks.NET. +// Copyright (c) 2013-2025 Riley Labrecque +// Please see the included LICENSE.txt for additional information. + +// This file is automatically generated. +// Changes to this file will be reverted when you update Steamworks.NET + +#if STEAMWORKS_STANDALONE_ANYCPU + +using System.Runtime.InteropServices; +using IntPtr = System.IntPtr; +using Environment = System.Environment; + +#pragma warning disable IDE0130 +namespace Steamworks { +#pragma warning restore + [System.Security.SuppressUnmanagedCodeSecurity()] + internal static class NativeMethods { + // !!!! Changes made to steamapi free functions should also sync with other nativemethods*.txt too. !!!! + +#region steam_api.h + public static ESteamAPIInitResult SteamInternal_SteamAPI_Init(InteropHelp.UTF8StringHandle pszInternalCheckInterfaceVersions, IntPtr pOutErrMsg) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.SteamInternal_SteamAPI_Init(pszInternalCheckInterfaceVersions, pOutErrMsg); + } else { + return NativeMethodsUnderlying.SteamInternal_SteamAPI_Init(pszInternalCheckInterfaceVersions, pOutErrMsg); + } + } + + public static void SteamAPI_Shutdown() { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.SteamAPI_Shutdown(); + } else { + NativeMethodsUnderlying.SteamAPI_Shutdown(); + } + } + [return: MarshalAs(UnmanagedType.I1)] + public static bool SteamAPI_RestartAppIfNecessary(AppId_t unOwnAppID) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.SteamAPI_RestartAppIfNecessary(unOwnAppID); + } else { + return NativeMethodsUnderlying.SteamAPI_RestartAppIfNecessary(unOwnAppID); + } + } + + public static void SteamAPI_ReleaseCurrentThreadMemory() { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.SteamAPI_ReleaseCurrentThreadMemory(); + } else { + NativeMethodsUnderlying.SteamAPI_ReleaseCurrentThreadMemory(); + } + } + + public static void SteamAPI_WriteMiniDump(uint uStructuredExceptionCode, IntPtr pvExceptionInfo, uint uBuildID) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.SteamAPI_WriteMiniDump(uStructuredExceptionCode, pvExceptionInfo, uBuildID); + } else { + NativeMethodsUnderlying.SteamAPI_WriteMiniDump(uStructuredExceptionCode, pvExceptionInfo, uBuildID); + } + } + + public static void SteamAPI_SetMiniDumpComment(InteropHelp.UTF8StringHandle pchMsg) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.SteamAPI_SetMiniDumpComment(pchMsg); + } else { + NativeMethodsUnderlying.SteamAPI_SetMiniDumpComment(pchMsg); + } + } + + public static void SteamAPI_RunCallbacks() { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.SteamAPI_RunCallbacks(); + } else { + NativeMethodsUnderlying.SteamAPI_RunCallbacks(); + } + } + + public static void SteamAPI_RegisterCallback(IntPtr pCallback, int iCallback) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.SteamAPI_RegisterCallback(pCallback, iCallback); + } else { + NativeMethodsUnderlying.SteamAPI_RegisterCallback(pCallback, iCallback); + } + } + + public static void SteamAPI_UnregisterCallback(IntPtr pCallback) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.SteamAPI_UnregisterCallback(pCallback); + } else { + NativeMethodsUnderlying.SteamAPI_UnregisterCallback(pCallback); + } + } + + public static void SteamAPI_RegisterCallResult(IntPtr pCallback, ulong hAPICall) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.SteamAPI_RegisterCallResult(pCallback, hAPICall); + } else { + NativeMethodsUnderlying.SteamAPI_RegisterCallResult(pCallback, hAPICall); + } + } + + public static void SteamAPI_UnregisterCallResult(IntPtr pCallback, ulong hAPICall) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.SteamAPI_UnregisterCallResult(pCallback, hAPICall); + } else { + NativeMethodsUnderlying.SteamAPI_UnregisterCallResult(pCallback, hAPICall); + } + } + + [return: MarshalAs(UnmanagedType.I1)] + public static bool SteamAPI_IsSteamRunning() { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.SteamAPI_IsSteamRunning(); + } else { + return NativeMethodsUnderlying.SteamAPI_IsSteamRunning(); + } + } + + public static int SteamAPI_GetSteamInstallPath() { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.SteamAPI_GetSteamInstallPath(); + } else { + return NativeMethodsUnderlying.SteamAPI_GetSteamInstallPath(); + } + } + + public static int SteamAPI_GetHSteamPipe() { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.SteamAPI_GetHSteamPipe(); + } else { + return NativeMethodsUnderlying.SteamAPI_GetHSteamPipe(); + } + } + + public static void SteamAPI_SetTryCatchCallbacks([MarshalAs(UnmanagedType.I1)] bool bTryCatchCallbacks) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.SteamAPI_SetTryCatchCallbacks(bTryCatchCallbacks); + } else { + NativeMethodsUnderlying.SteamAPI_SetTryCatchCallbacks(bTryCatchCallbacks); + } + } + + public static int SteamAPI_GetHSteamUser() { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.SteamAPI_GetHSteamUser(); + } else { + return NativeMethodsUnderlying.SteamAPI_GetHSteamUser(); + } + } + + public static IntPtr SteamInternal_ContextInit(IntPtr pContextInitData) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.SteamInternal_ContextInit(pContextInitData); + } else { + return NativeMethodsUnderlying.SteamInternal_ContextInit(pContextInitData); + } + } + + public static IntPtr SteamInternal_CreateInterface(InteropHelp.UTF8StringHandle ver) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.SteamInternal_CreateInterface(ver); + } else { + return NativeMethodsUnderlying.SteamInternal_CreateInterface(ver); + } + } + + public static IntPtr SteamInternal_FindOrCreateUserInterface(HSteamUser hSteamUser, InteropHelp.UTF8StringHandle pszVersion) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.SteamInternal_FindOrCreateGameServerInterface(hSteamUser, pszVersion); + } else { + return NativeMethodsUnderlying.SteamInternal_FindOrCreateGameServerInterface(hSteamUser, pszVersion); + } + } + + public static IntPtr SteamInternal_FindOrCreateGameServerInterface(HSteamUser hSteamUser, InteropHelp.UTF8StringHandle pszVersion) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.SteamInternal_FindOrCreateGameServerInterface(hSteamUser, pszVersion); + } else { + return NativeMethodsUnderlying.SteamInternal_FindOrCreateGameServerInterface(hSteamUser, pszVersion); + } + } + + public static void SteamAPI_UseBreakpadCrashHandler(InteropHelp.UTF8StringHandle pchVersion, InteropHelp.UTF8StringHandle pchDate, InteropHelp.UTF8StringHandle pchTime, [MarshalAs(UnmanagedType.I1)] bool bFullMemoryDumps, IntPtr pvContext, IntPtr m_pfnPreMinidumpCallback) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.SteamAPI_UseBreakpadCrashHandler(pchVersion, pchDate, pchTime, bFullMemoryDumps, pvContext, m_pfnPreMinidumpCallback); + } else { + NativeMethodsUnderlying.SteamAPI_UseBreakpadCrashHandler(pchVersion, pchDate, pchTime, bFullMemoryDumps, pvContext, m_pfnPreMinidumpCallback); + } + } + + public static void SteamAPI_SetBreakpadAppID(uint unAppID) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.SteamAPI_SetBreakpadAppID(unAppID); + } else { + NativeMethodsUnderlying.SteamAPI_SetBreakpadAppID(unAppID); + } + } + + public static void SteamAPI_ManualDispatch_Init() { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.SteamAPI_ManualDispatch_Init(); + } else { + NativeMethodsUnderlying.SteamAPI_ManualDispatch_Init(); + } + } + + public static void SteamAPI_ManualDispatch_RunFrame(HSteamPipe hSteamPipe) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.SteamAPI_ManualDispatch_RunFrame(hSteamPipe); + } else { + NativeMethodsUnderlying.SteamAPI_ManualDispatch_RunFrame(hSteamPipe); + } + } + + [return: MarshalAs(UnmanagedType.I1)] + public static bool SteamAPI_ManualDispatch_GetNextCallback(HSteamPipe hSteamPipe, IntPtr pCallbackMsg) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.SteamAPI_ManualDispatch_GetNextCallback(hSteamPipe, pCallbackMsg); + } else { + return NativeMethodsUnderlying.SteamAPI_ManualDispatch_GetNextCallback(hSteamPipe, pCallbackMsg); + } + } + + public static void SteamAPI_ManualDispatch_FreeLastCallback(HSteamPipe hSteamPipe) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.SteamAPI_ManualDispatch_FreeLastCallback(hSteamPipe); + } else { + NativeMethodsUnderlying.SteamAPI_ManualDispatch_FreeLastCallback(hSteamPipe); + } + } + + [return: MarshalAs(UnmanagedType.I1)] + public static bool SteamAPI_ManualDispatch_GetAPICallResult(HSteamPipe hSteamPipe, SteamAPICall_t hSteamAPICall, IntPtr pCallback, int cubCallback, int iCallbackExpected, out bool pbFailed) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.SteamAPI_ManualDispatch_GetAPICallResult(hSteamPipe, hSteamAPICall, pCallback, cubCallback, iCallbackExpected, out pbFailed); + } else { + return NativeMethodsUnderlying.SteamAPI_ManualDispatch_GetAPICallResult(hSteamPipe, hSteamAPICall, pCallback, cubCallback, iCallbackExpected, out pbFailed); + } + } + #endregion + #region steam_gameserver.h + public static void SteamGameServer_Shutdown() { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.SteamGameServer_Shutdown(); + } else { + NativeMethodsUnderlying.SteamGameServer_Shutdown(); + } + } + + public static void SteamGameServer_RunCallbacks() { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.SteamGameServer_RunCallbacks(); + } else { + NativeMethodsUnderlying.SteamGameServer_RunCallbacks(); + } + } + + public static void SteamGameServer_ReleaseCurrentThreadMemory() { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.SteamGameServer_ReleaseCurrentThreadMemory(); + } else { + NativeMethodsUnderlying.SteamGameServer_ReleaseCurrentThreadMemory(); + } + } + // 写好的方法复制到nativemethods_anycpu.txt + + [return: MarshalAs(UnmanagedType.I1)] + public static bool SteamGameServer_BSecure() { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.SteamGameServer_BSecure(); + } else { + return NativeMethodsUnderlying.SteamGameServer_BSecure(); + } + } + + public static ulong SteamGameServer_GetSteamID() { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.SteamGameServer_GetSteamID(); + } else { + return NativeMethodsUnderlying.SteamGameServer_GetSteamID(); + } + } + + public static int SteamGameServer_GetHSteamPipe() { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.SteamGameServer_GetHSteamPipe(); + } else { + return NativeMethodsUnderlying.SteamGameServer_GetHSteamPipe(); + } + } + + public static int SteamGameServer_GetHSteamUser() { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.SteamGameServer_GetHSteamUser(); + } else { + return NativeMethodsUnderlying.SteamGameServer_GetHSteamUser(); + } + } + + public static ESteamAPIInitResult SteamInternal_GameServer_Init_V2(uint unIP, ushort usGamePort, ushort usQueryPort, EServerMode eServerMode, InteropHelp.UTF8StringHandle pchVersionString, InteropHelp.UTF8StringHandle pszInternalCheckInterfaceVersions, IntPtr pOutErrMsg) { + { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.SteamInternal_GameServer_Init_V2(unIP, usGamePort, usQueryPort, eServerMode, pchVersionString, pszInternalCheckInterfaceVersions, pOutErrMsg); + } else { + return NativeMethodsUnderlying.SteamInternal_GameServer_Init_V2(unIP, usGamePort, usQueryPort, eServerMode, pchVersionString, pszInternalCheckInterfaceVersions, pOutErrMsg); + } + } + } +#endregion +#region SteamAPI Accessors + public static IntPtr SteamClient() { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.SteamClient(); + } else { + return NativeMethodsUnderlying.SteamClient(); + } + } + + public static IntPtr SteamGameServerClient() { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.SteamGameServerClient(); + } else { + return NativeMethodsUnderlying.SteamGameServerClient(); + } + } + #endregion + #region SteamNetworkingIPAddr Accessors + public static void SteamAPI_SteamNetworkingIPAddr_Clear(ref SteamNetworkingIPAddr self) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.SteamAPI_SteamNetworkingIPAddr_Clear(ref self); + } else { + NativeMethodsUnderlying.SteamAPI_SteamNetworkingIPAddr_Clear(ref self); + } + } + + [return: MarshalAs(UnmanagedType.I1)] + public static bool SteamAPI_SteamNetworkingIPAddr_IsIPv6AllZeros(ref SteamNetworkingIPAddr self) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.SteamAPI_SteamNetworkingIPAddr_IsIPv6AllZeros(ref self); + } else { + return NativeMethodsUnderlying.SteamAPI_SteamNetworkingIPAddr_IsIPv6AllZeros(ref self); + } + } + + public static void SteamAPI_SteamNetworkingIPAddr_SetIPv6(ref SteamNetworkingIPAddr self, [In, Out] byte[] ipv6, ushort nPort) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.SteamAPI_SteamNetworkingIPAddr_SetIPv6(ref self, ipv6, nPort); + } else { + NativeMethodsUnderlying.SteamAPI_SteamNetworkingIPAddr_SetIPv6(ref self, ipv6, nPort); + } + } + + public static void SteamAPI_SteamNetworkingIPAddr_SetIPv4(ref SteamNetworkingIPAddr self, uint nIP, ushort nPort) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.SteamAPI_SteamNetworkingIPAddr_SetIPv4(ref self, nIP, nPort); + } else { + NativeMethodsUnderlying.SteamAPI_SteamNetworkingIPAddr_SetIPv4(ref self, nIP, nPort); + } + } + + [return: MarshalAs(UnmanagedType.I1)] + public static bool SteamAPI_SteamNetworkingIPAddr_IsIPv4(ref SteamNetworkingIPAddr self) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.SteamAPI_SteamNetworkingIPAddr_IsIPv4(ref self); + } else { + return NativeMethodsUnderlying.SteamAPI_SteamNetworkingIPAddr_IsIPv4(ref self); + } + } + + public static uint SteamAPI_SteamNetworkingIPAddr_GetIPv4(ref SteamNetworkingIPAddr self) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.SteamAPI_SteamNetworkingIPAddr_GetIPv4(ref self); + } else { + return NativeMethodsUnderlying.SteamAPI_SteamNetworkingIPAddr_GetIPv4(ref self); + } + } + + public static void SteamAPI_SteamNetworkingIPAddr_SetIPv6LocalHost(ref SteamNetworkingIPAddr self, ushort nPort) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.SteamAPI_SteamNetworkingIPAddr_SetIPv6LocalHost(ref self, nPort); + } else { + NativeMethodsUnderlying.SteamAPI_SteamNetworkingIPAddr_SetIPv6LocalHost(ref self, nPort); + } + } + + [return: MarshalAs(UnmanagedType.I1)] + public static bool SteamAPI_SteamNetworkingIPAddr_IsLocalHost(ref SteamNetworkingIPAddr self) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.SteamAPI_SteamNetworkingIPAddr_IsLocalHost(ref self); + } else { + return NativeMethodsUnderlying.SteamAPI_SteamNetworkingIPAddr_IsLocalHost(ref self); + } + } + + public static void SteamAPI_SteamNetworkingIPAddr_ToString(ref SteamNetworkingIPAddr self, IntPtr buf, uint cbBuf, [MarshalAs(UnmanagedType.I1)] bool bWithPort) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.SteamAPI_SteamNetworkingIPAddr_ToString(ref self, buf, cbBuf, bWithPort); + } else { + NativeMethodsUnderlying.SteamAPI_SteamNetworkingIPAddr_ToString(ref self, buf, cbBuf, bWithPort); + } + } + + [return: MarshalAs(UnmanagedType.I1)] + public static bool SteamAPI_SteamNetworkingIPAddr_ParseString(ref SteamNetworkingIPAddr self, InteropHelp.UTF8StringHandle pszStr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.SteamAPI_SteamNetworkingIPAddr_ParseString(ref self, pszStr); + } else { + return NativeMethodsUnderlying.SteamAPI_SteamNetworkingIPAddr_ParseString(ref self, pszStr); + } + } + + [return: MarshalAs(UnmanagedType.I1)] + public static bool SteamAPI_SteamNetworkingIPAddr_IsEqualTo(ref SteamNetworkingIPAddr self, ref SteamNetworkingIPAddr x) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.SteamAPI_SteamNetworkingIPAddr_IsEqualTo(ref self, ref x); + } else { + return NativeMethodsUnderlying.SteamAPI_SteamNetworkingIPAddr_IsEqualTo(ref self, ref x); + } + } + + public static ESteamNetworkingFakeIPType SteamAPI_SteamNetworkingIPAddr_GetFakeIPType(ref SteamNetworkingIPAddr self) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.SteamAPI_SteamNetworkingIPAddr_GetFakeIPType(ref self); + } else { + return NativeMethodsUnderlying.SteamAPI_SteamNetworkingIPAddr_GetFakeIPType(ref self); + } + } + + [return: MarshalAs(UnmanagedType.I1)] + public static bool SteamAPI_SteamNetworkingIPAddr_IsFakeIP(ref SteamNetworkingIPAddr self) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.SteamAPI_SteamNetworkingIPAddr_IsFakeIP(ref self); + } else { + return NativeMethodsUnderlying.SteamAPI_SteamNetworkingIPAddr_IsFakeIP(ref self); + } + } + #endregion + #region SteamNetworkingIdentity Accessors + public static void SteamAPI_SteamNetworkingIdentity_Clear(ref SteamNetworkingIdentity self) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.SteamAPI_SteamNetworkingIdentity_Clear(ref self); + } else { + NativeMethodsUnderlying.SteamAPI_SteamNetworkingIdentity_Clear(ref self); + } + } + + [return: MarshalAs(UnmanagedType.I1)] + public static bool SteamAPI_SteamNetworkingIdentity_IsInvalid(ref SteamNetworkingIdentity self) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.SteamAPI_SteamNetworkingIdentity_IsInvalid(ref self); + } else { + return NativeMethodsUnderlying.SteamAPI_SteamNetworkingIdentity_IsInvalid(ref self); + } + } + + public static void SteamAPI_SteamNetworkingIdentity_SetSteamID(ref SteamNetworkingIdentity self, ulong steamID) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.SteamAPI_SteamNetworkingIdentity_SetSteamID(ref self, steamID); + } else { + NativeMethodsUnderlying.SteamAPI_SteamNetworkingIdentity_SetSteamID(ref self, steamID); + } + } + + public static ulong SteamAPI_SteamNetworkingIdentity_GetSteamID(ref SteamNetworkingIdentity self) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.SteamAPI_SteamNetworkingIdentity_GetSteamID(ref self); + } else { + return NativeMethodsUnderlying.SteamAPI_SteamNetworkingIdentity_GetSteamID(ref self); + } + } + + public static void SteamAPI_SteamNetworkingIdentity_SetSteamID64(ref SteamNetworkingIdentity self, ulong steamID) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.SteamAPI_SteamNetworkingIdentity_SetSteamID64(ref self, steamID); + } else { + NativeMethodsUnderlying.SteamAPI_SteamNetworkingIdentity_SetSteamID64(ref self, steamID); + } + } + + public static ulong SteamAPI_SteamNetworkingIdentity_GetSteamID64(ref SteamNetworkingIdentity self) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.SteamAPI_SteamNetworkingIdentity_GetSteamID64(ref self); + } else { + return NativeMethodsUnderlying.SteamAPI_SteamNetworkingIdentity_GetSteamID64(ref self); + } + } + + [return: MarshalAs(UnmanagedType.I1)] + public static bool SteamAPI_SteamNetworkingIdentity_SetXboxPairwiseID(ref SteamNetworkingIdentity self, InteropHelp.UTF8StringHandle pszString) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.SteamAPI_SteamNetworkingIdentity_SetXboxPairwiseID(ref self, pszString); + } else { + return NativeMethodsUnderlying.SteamAPI_SteamNetworkingIdentity_SetXboxPairwiseID(ref self, pszString); + } + } + + public static IntPtr SteamAPI_SteamNetworkingIdentity_GetXboxPairwiseID(ref SteamNetworkingIdentity self) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.SteamAPI_SteamNetworkingIdentity_GetXboxPairwiseID(ref self); + } else { + return NativeMethodsUnderlying.SteamAPI_SteamNetworkingIdentity_GetXboxPairwiseID(ref self); + } + } + + public static void SteamAPI_SteamNetworkingIdentity_SetPSNID(ref SteamNetworkingIdentity self, ulong id) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.SteamAPI_SteamNetworkingIdentity_SetPSNID(ref self, id); + } else { + NativeMethodsUnderlying.SteamAPI_SteamNetworkingIdentity_SetPSNID(ref self, id); + } + } + + public static ulong SteamAPI_SteamNetworkingIdentity_GetPSNID(ref SteamNetworkingIdentity self) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.SteamAPI_SteamNetworkingIdentity_GetPSNID(ref self); + } else { + return NativeMethodsUnderlying.SteamAPI_SteamNetworkingIdentity_GetPSNID(ref self); + } + } + + public static IntPtr SteamAPI_SteamNetworkingIdentity_SetIPAddr(ref SteamNetworkingIdentity self, ref SteamNetworkingIPAddr addr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.SteamAPI_SteamNetworkingIdentity_SetIPAddr(ref self, ref addr); + } else { + return NativeMethodsUnderlying.SteamAPI_SteamNetworkingIdentity_SetIPAddr(ref self, ref addr); + } + } + + public static IntPtr SteamAPI_SteamNetworkingIdentity_GetIPAddr(ref SteamNetworkingIdentity self) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.SteamAPI_SteamNetworkingIdentity_GetIPAddr(ref self); + } else { + return NativeMethodsUnderlying.SteamAPI_SteamNetworkingIdentity_GetIPAddr(ref self); + } + } + + public static void SteamAPI_SteamNetworkingIdentity_SetIPv4Addr(ref SteamNetworkingIdentity self, uint nIPv4, ushort nPort) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.SteamAPI_SteamNetworkingIdentity_SetIPv4Addr(ref self, nIPv4, nPort); + } else { + NativeMethodsUnderlying.SteamAPI_SteamNetworkingIdentity_SetIPv4Addr(ref self, nIPv4, nPort); + } + } + + public static uint SteamAPI_SteamNetworkingIdentity_GetIPv4(ref SteamNetworkingIdentity self) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.SteamAPI_SteamNetworkingIdentity_GetIPv4(ref self); + } else { + return NativeMethodsUnderlying.SteamAPI_SteamNetworkingIdentity_GetIPv4(ref self); + } + } + + public static ESteamNetworkingFakeIPType SteamAPI_SteamNetworkingIdentity_GetFakeIPType(ref SteamNetworkingIdentity self) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.SteamAPI_SteamNetworkingIdentity_GetFakeIPType(ref self); + } else { + return NativeMethodsUnderlying.SteamAPI_SteamNetworkingIdentity_GetFakeIPType(ref self); + } + } + + [return: MarshalAs(UnmanagedType.I1)] + public static bool SteamAPI_SteamNetworkingIdentity_IsFakeIP(ref SteamNetworkingIdentity self) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.SteamAPI_SteamNetworkingIdentity_IsFakeIP(ref self); + } else { + return NativeMethodsUnderlying.SteamAPI_SteamNetworkingIdentity_IsFakeIP(ref self); + } + } + + public static void SteamAPI_SteamNetworkingIdentity_SetLocalHost(ref SteamNetworkingIdentity self) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.SteamAPI_SteamNetworkingIdentity_SetLocalHost(ref self); + } else { + NativeMethodsUnderlying.SteamAPI_SteamNetworkingIdentity_SetLocalHost(ref self); + } + } + + [return: MarshalAs(UnmanagedType.I1)] + public static bool SteamAPI_SteamNetworkingIdentity_IsLocalHost(ref SteamNetworkingIdentity self) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.SteamAPI_SteamNetworkingIdentity_IsLocalHost(ref self); + } else { + return NativeMethodsUnderlying.SteamAPI_SteamNetworkingIdentity_IsLocalHost(ref self); + } + } + + [return: MarshalAs(UnmanagedType.I1)] + public static bool SteamAPI_SteamNetworkingIdentity_SetGenericString(ref SteamNetworkingIdentity self, InteropHelp.UTF8StringHandle pszString) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.SteamAPI_SteamNetworkingIdentity_SetGenericString(ref self, pszString); + } else { + return NativeMethodsUnderlying.SteamAPI_SteamNetworkingIdentity_SetGenericString(ref self, pszString); + } + } + + public static IntPtr SteamAPI_SteamNetworkingIdentity_GetGenericString(ref SteamNetworkingIdentity self) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.SteamAPI_SteamNetworkingIdentity_GetGenericString(ref self); + } else { + return NativeMethodsUnderlying.SteamAPI_SteamNetworkingIdentity_GetGenericString(ref self); + } + } + + [return: MarshalAs(UnmanagedType.I1)] + public static bool SteamAPI_SteamNetworkingIdentity_SetGenericBytes(ref SteamNetworkingIdentity self, [In, Out] byte[] data, uint cbLen) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.SteamAPI_SteamNetworkingIdentity_SetGenericBytes(ref self, data, cbLen); + } else { + return NativeMethodsUnderlying.SteamAPI_SteamNetworkingIdentity_SetGenericBytes(ref self, data, cbLen); + } + } + + public static IntPtr SteamAPI_SteamNetworkingIdentity_GetGenericBytes(ref SteamNetworkingIdentity self, out int cbLen) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.SteamAPI_SteamNetworkingIdentity_GetGenericBytes(ref self, out cbLen); + } else { + return NativeMethodsUnderlying.SteamAPI_SteamNetworkingIdentity_GetGenericBytes(ref self, out cbLen); + } + } + + [return: MarshalAs(UnmanagedType.I1)] + public static bool SteamAPI_SteamNetworkingIdentity_IsEqualTo(ref SteamNetworkingIdentity self, ref SteamNetworkingIdentity x) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.SteamAPI_SteamNetworkingIdentity_IsEqualTo(ref self, ref x); + } else { + return NativeMethodsUnderlying.SteamAPI_SteamNetworkingIdentity_IsEqualTo(ref self, ref x); + } + } + + public static void SteamAPI_SteamNetworkingIdentity_ToString(ref SteamNetworkingIdentity self, IntPtr buf, uint cbBuf) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.SteamAPI_SteamNetworkingIdentity_ToString(ref self, buf, cbBuf); + } else { + NativeMethodsUnderlying.SteamAPI_SteamNetworkingIdentity_ToString(ref self, buf, cbBuf); + } + } + + [return: MarshalAs(UnmanagedType.I1)] + public static bool SteamAPI_SteamNetworkingIdentity_ParseString(ref SteamNetworkingIdentity self, InteropHelp.UTF8StringHandle pszStr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.SteamAPI_SteamNetworkingIdentity_ParseString(ref self, pszStr); + } else { + return NativeMethodsUnderlying.SteamAPI_SteamNetworkingIdentity_ParseString(ref self, pszStr); + } + } + #endregion + #region SteamNetworkingMessage_t Accessors + public static void SteamAPI_SteamNetworkingMessage_t_Release(IntPtr self) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.SteamAPI_SteamNetworkingMessage_t_Release(self); + } else { + NativeMethodsUnderlying.SteamAPI_SteamNetworkingMessage_t_Release(self); + } + } + #endregion + #region ISteamNetworkingConnectionSignaling Accessors + [return: MarshalAs(UnmanagedType.I1)] + public static bool SteamAPI_ISteamNetworkingConnectionSignaling_SendSignal(ref ISteamNetworkingConnectionSignaling self, HSteamNetConnection hConn, ref SteamNetConnectionInfo_t info, IntPtr pMsg, int cbMsg) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.SteamAPI_ISteamNetworkingConnectionSignaling_SendSignal(ref self, hConn, ref info, pMsg, cbMsg); + } else { + return NativeMethodsUnderlying.SteamAPI_ISteamNetworkingConnectionSignaling_SendSignal(ref self, hConn, ref info, pMsg, cbMsg); + } + } + + public static void SteamAPI_ISteamNetworkingConnectionSignaling_Release(ref ISteamNetworkingConnectionSignaling self) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.SteamAPI_ISteamNetworkingConnectionSignaling_Release(ref self); + } else { + NativeMethodsUnderlying.SteamAPI_ISteamNetworkingConnectionSignaling_Release(ref self); + } + } + #endregion + #region ISteamNetworkingSignalingRecvContext Accessors + public static IntPtr SteamAPI_ISteamNetworkingSignalingRecvContext_OnConnectRequest(ref ISteamNetworkingSignalingRecvContext self, + HSteamNetConnection hConn, ref SteamNetworkingIdentity identityPeer, int nLocalVirtualPort) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.SteamAPI_ISteamNetworkingSignalingRecvContext_OnConnectRequest(ref self, hConn, ref identityPeer, nLocalVirtualPort); + } else { + return NativeMethodsUnderlying.SteamAPI_ISteamNetworkingSignalingRecvContext_OnConnectRequest(ref self, hConn, ref identityPeer, nLocalVirtualPort); + } + } + + public static void SteamAPI_ISteamNetworkingSignalingRecvContext_SendRejectionSignal(ref ISteamNetworkingSignalingRecvContext self, + ref SteamNetworkingIdentity identityPeer, IntPtr pMsg, int cbMsg) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.SteamAPI_ISteamNetworkingSignalingRecvContext_SendRejectionSignal(ref self, ref identityPeer, pMsg, cbMsg); + } else { + NativeMethodsUnderlying.SteamAPI_ISteamNetworkingSignalingRecvContext_SendRejectionSignal(ref self, ref identityPeer, pMsg, cbMsg); + } + } + #endregion + #region steamencryptedappticket.h + [return: MarshalAs(UnmanagedType.I1)] + public static bool SteamEncryptedAppTicket_BDecryptTicket([In, Out] byte[] rgubTicketEncrypted, uint cubTicketEncrypted, + [In, Out] byte[] rgubTicketDecrypted, ref uint pcubTicketDecrypted, + [MarshalAs(UnmanagedType.LPArray, SizeConst=Constants.k_nSteamEncryptedAppTicketSymmetricKeyLen)] byte[] rgubKey, int cubKey) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.SteamEncryptedAppTicket_BDecryptTicket(rgubTicketEncrypted, cubTicketEncrypted, rgubTicketDecrypted, ref pcubTicketDecrypted, + rgubKey, cubKey); + } else { + return NativeMethodsUnderlying.SteamEncryptedAppTicket_BDecryptTicket(rgubTicketEncrypted, cubTicketEncrypted, rgubTicketDecrypted, ref pcubTicketDecrypted, + rgubKey, cubKey); + } + } + + [return: MarshalAs(UnmanagedType.I1)] + public static bool SteamEncryptedAppTicket_BIsTicketForApp([In, Out] byte[] rgubTicketDecrypted, uint cubTicketDecrypted, AppId_t nAppID) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.SteamEncryptedAppTicket_BIsTicketForApp(rgubTicketDecrypted, cubTicketDecrypted, nAppID); + } else { + return NativeMethodsUnderlying.SteamEncryptedAppTicket_BIsTicketForApp(rgubTicketDecrypted, cubTicketDecrypted, nAppID); + } + } + + public static uint SteamEncryptedAppTicket_GetTicketIssueTime([In, Out] byte[] rgubTicketDecrypted, uint cubTicketDecrypted) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.SteamEncryptedAppTicket_GetTicketIssueTime(rgubTicketDecrypted, cubTicketDecrypted); + } else { + return NativeMethodsUnderlying.SteamEncryptedAppTicket_GetTicketIssueTime(rgubTicketDecrypted, cubTicketDecrypted); + } + } + + public static void SteamEncryptedAppTicket_GetTicketSteamID([In, Out] byte[] rgubTicketDecrypted, uint cubTicketDecrypted, out CSteamID psteamID) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.SteamEncryptedAppTicket_GetTicketSteamID(rgubTicketDecrypted, cubTicketDecrypted, out psteamID); + } else { + NativeMethodsUnderlying.SteamEncryptedAppTicket_GetTicketSteamID(rgubTicketDecrypted, cubTicketDecrypted, out psteamID); + } + } + + public static uint SteamEncryptedAppTicket_GetTicketAppID([In, Out] byte[] rgubTicketDecrypted, uint cubTicketDecrypted) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.SteamEncryptedAppTicket_GetTicketAppID(rgubTicketDecrypted, cubTicketDecrypted); + } else { + return NativeMethodsUnderlying.SteamEncryptedAppTicket_GetTicketAppID(rgubTicketDecrypted, cubTicketDecrypted); + } + } + + [return: MarshalAs(UnmanagedType.I1)] + public static bool SteamEncryptedAppTicket_BUserOwnsAppInTicket([In, Out] byte[] rgubTicketDecrypted, uint cubTicketDecrypted, AppId_t nAppID) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.SteamEncryptedAppTicket_BUserOwnsAppInTicket(rgubTicketDecrypted, cubTicketDecrypted, nAppID); + } else { + return NativeMethodsUnderlying.SteamEncryptedAppTicket_BUserOwnsAppInTicket(rgubTicketDecrypted, cubTicketDecrypted, nAppID); + } + } + + [return: MarshalAs(UnmanagedType.I1)] + public static bool SteamEncryptedAppTicket_BUserIsVacBanned([In, Out] byte[] rgubTicketDecrypted, uint cubTicketDecrypted) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.SteamEncryptedAppTicket_BUserIsVacBanned(rgubTicketDecrypted, cubTicketDecrypted); + } else { + return NativeMethodsUnderlying.SteamEncryptedAppTicket_BUserIsVacBanned(rgubTicketDecrypted, cubTicketDecrypted); + } + } + + public static IntPtr SteamEncryptedAppTicket_GetUserVariableData([In, Out] byte[] rgubTicketDecrypted, uint cubTicketDecrypted, out uint pcubUserData) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.SteamEncryptedAppTicket_GetUserVariableData(rgubTicketDecrypted, cubTicketDecrypted, out pcubUserData); + } else { + return NativeMethodsUnderlying.SteamEncryptedAppTicket_GetUserVariableData(rgubTicketDecrypted, cubTicketDecrypted, out pcubUserData); + } + } + + [return: MarshalAs(UnmanagedType.I1)] + public static bool SteamEncryptedAppTicket_BIsTicketSigned([In, Out] byte[] rgubTicketDecrypted, uint cubTicketDecrypted, [In, Out] byte[] pubRSAKey, uint cubRSAKey) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.SteamEncryptedAppTicket_BIsTicketSigned(rgubTicketDecrypted, cubTicketDecrypted, pubRSAKey, cubRSAKey); + } else { + return NativeMethodsUnderlying.SteamEncryptedAppTicket_BIsTicketSigned(rgubTicketDecrypted, cubTicketDecrypted, pubRSAKey, cubRSAKey); + } + } + + [return: MarshalAs(UnmanagedType.I1)] + public static bool SteamEncryptedAppTicket_BIsLicenseBorrowed([In, Out] byte[] rgubTicketDecrypted, uint cubTicketDecrypted) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.SteamEncryptedAppTicket_BIsLicenseBorrowed(rgubTicketDecrypted, cubTicketDecrypted); + } else { + return NativeMethodsUnderlying.SteamEncryptedAppTicket_BIsLicenseBorrowed(rgubTicketDecrypted, cubTicketDecrypted); + } + } + + [return: MarshalAs(UnmanagedType.I1)] + public static bool SteamEncryptedAppTicket_BIsLicenseTemporary([In, Out] byte[] rgubTicketDecrypted, uint cubTicketDecrypted) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.SteamEncryptedAppTicket_BIsLicenseTemporary(rgubTicketDecrypted, cubTicketDecrypted); + } else { + return NativeMethodsUnderlying.SteamEncryptedAppTicket_BIsLicenseTemporary(rgubTicketDecrypted, cubTicketDecrypted); + } + } +#endregion diff --git a/CodeGen/templates/nativemethods_dllimport.txt b/CodeGen/templates/nativemethods_dllimport.txt new file mode 100644 index 00000000..7bf08752 --- /dev/null +++ b/CodeGen/templates/nativemethods_dllimport.txt @@ -0,0 +1,310 @@ + // !!!!!! Changes made to steamapi free functions should also sync with other nativemethods_anycpu.txt too. !!!!!! +#region steam_api.h + [DllImport(NativeLibraryName, EntryPoint = "SteamInternal_SteamAPI_Init", CallingConvention = CallingConvention.Cdecl)] + public static extern ESteamAPIInitResult SteamInternal_SteamAPI_Init(InteropHelp.UTF8StringHandle pszInternalCheckInterfaceVersions, IntPtr pOutErrMsg); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_Shutdown", CallingConvention = CallingConvention.Cdecl)] + public static extern void SteamAPI_Shutdown(); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_RestartAppIfNecessary", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + public static extern bool SteamAPI_RestartAppIfNecessary(AppId_t unOwnAppID); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ReleaseCurrentThreadMemory", CallingConvention = CallingConvention.Cdecl)] + public static extern void SteamAPI_ReleaseCurrentThreadMemory(); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_WriteMiniDump", CallingConvention = CallingConvention.Cdecl)] + public static extern void SteamAPI_WriteMiniDump(uint uStructuredExceptionCode, IntPtr pvExceptionInfo, uint uBuildID); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SetMiniDumpComment", CallingConvention = CallingConvention.Cdecl)] + public static extern void SteamAPI_SetMiniDumpComment(InteropHelp.UTF8StringHandle pchMsg); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_RunCallbacks", CallingConvention = CallingConvention.Cdecl)] + public static extern void SteamAPI_RunCallbacks(); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_RegisterCallback", CallingConvention = CallingConvention.Cdecl)] + public static extern void SteamAPI_RegisterCallback(IntPtr pCallback, int iCallback); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_UnregisterCallback", CallingConvention = CallingConvention.Cdecl)] + public static extern void SteamAPI_UnregisterCallback(IntPtr pCallback); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_RegisterCallResult", CallingConvention = CallingConvention.Cdecl)] + public static extern void SteamAPI_RegisterCallResult(IntPtr pCallback, ulong hAPICall); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_UnregisterCallResult", CallingConvention = CallingConvention.Cdecl)] + public static extern void SteamAPI_UnregisterCallResult(IntPtr pCallback, ulong hAPICall); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_IsSteamRunning", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + public static extern bool SteamAPI_IsSteamRunning(); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_GetSteamInstallPath", CallingConvention = CallingConvention.Cdecl)] + public static extern int SteamAPI_GetSteamInstallPath(); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_GetHSteamPipe", CallingConvention = CallingConvention.Cdecl)] + public static extern int SteamAPI_GetHSteamPipe(); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SetTryCatchCallbacks", CallingConvention = CallingConvention.Cdecl)] + public static extern void SteamAPI_SetTryCatchCallbacks([MarshalAs(UnmanagedType.I1)] bool bTryCatchCallbacks); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_GetHSteamUser", CallingConvention = CallingConvention.Cdecl)] + public static extern int SteamAPI_GetHSteamUser(); + + [DllImport(NativeLibraryName, EntryPoint = "SteamInternal_ContextInit", CallingConvention = CallingConvention.Cdecl)] + public static extern IntPtr SteamInternal_ContextInit(IntPtr pContextInitData); + + [DllImport(NativeLibraryName, EntryPoint = "SteamInternal_CreateInterface", CallingConvention = CallingConvention.Cdecl)] + public static extern IntPtr SteamInternal_CreateInterface(InteropHelp.UTF8StringHandle ver); + + [DllImport(NativeLibraryName, EntryPoint = "SteamInternal_FindOrCreateUserInterface", CallingConvention = CallingConvention.Cdecl)] + public static extern IntPtr SteamInternal_FindOrCreateUserInterface(HSteamUser hSteamUser, InteropHelp.UTF8StringHandle pszVersion); + + [DllImport(NativeLibraryName, EntryPoint = "SteamInternal_FindOrCreateGameServerInterface", CallingConvention = CallingConvention.Cdecl)] + public static extern IntPtr SteamInternal_FindOrCreateGameServerInterface(HSteamUser hSteamUser, InteropHelp.UTF8StringHandle pszVersion); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_UseBreakpadCrashHandler", CallingConvention = CallingConvention.Cdecl)] + public static extern void SteamAPI_UseBreakpadCrashHandler(InteropHelp.UTF8StringHandle pchVersion, InteropHelp.UTF8StringHandle pchDate, InteropHelp.UTF8StringHandle pchTime, [MarshalAs(UnmanagedType.I1)] bool bFullMemoryDumps, IntPtr pvContext, IntPtr m_pfnPreMinidumpCallback); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SetBreakpadAppID", CallingConvention = CallingConvention.Cdecl)] + public static extern void SteamAPI_SetBreakpadAppID(uint unAppID); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ManualDispatch_Init", CallingConvention = CallingConvention.Cdecl)] + public static extern void SteamAPI_ManualDispatch_Init(); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ManualDispatch_RunFrame", CallingConvention = CallingConvention.Cdecl)] + public static extern void SteamAPI_ManualDispatch_RunFrame(HSteamPipe hSteamPipe); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ManualDispatch_GetNextCallback", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + public static extern bool SteamAPI_ManualDispatch_GetNextCallback(HSteamPipe hSteamPipe, IntPtr pCallbackMsg); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ManualDispatch_FreeLastCallback", CallingConvention = CallingConvention.Cdecl)] + public static extern void SteamAPI_ManualDispatch_FreeLastCallback(HSteamPipe hSteamPipe); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ManualDispatch_GetAPICallResult", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + public static extern bool SteamAPI_ManualDispatch_GetAPICallResult(HSteamPipe hSteamPipe, SteamAPICall_t hSteamAPICall, IntPtr pCallback, int cubCallback, int iCallbackExpected, out bool pbFailed); +#endregion +#region steam_gameserver.h + [DllImport(NativeLibraryName, EntryPoint = "SteamGameServer_Shutdown", CallingConvention = CallingConvention.Cdecl)] + public static extern void SteamGameServer_Shutdown(); + + [DllImport(NativeLibraryName, EntryPoint = "SteamGameServer_RunCallbacks", CallingConvention = CallingConvention.Cdecl)] + public static extern void SteamGameServer_RunCallbacks(); + + [DllImport(NativeLibraryName, EntryPoint = "SteamGameServer_ReleaseCurrentThreadMemory", CallingConvention = CallingConvention.Cdecl)] + public static extern void SteamGameServer_ReleaseCurrentThreadMemory(); + + [DllImport(NativeLibraryName, EntryPoint = "SteamGameServer_BSecure", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + public static extern bool SteamGameServer_BSecure(); + + [DllImport(NativeLibraryName, EntryPoint = "SteamGameServer_GetSteamID", CallingConvention = CallingConvention.Cdecl)] + public static extern ulong SteamGameServer_GetSteamID(); + + [DllImport(NativeLibraryName, EntryPoint = "SteamGameServer_GetHSteamPipe", CallingConvention = CallingConvention.Cdecl)] + public static extern int SteamGameServer_GetHSteamPipe(); + + [DllImport(NativeLibraryName, EntryPoint = "SteamGameServer_GetHSteamUser", CallingConvention = CallingConvention.Cdecl)] + public static extern int SteamGameServer_GetHSteamUser(); + + [DllImport(NativeLibraryName, EntryPoint = "SteamInternal_GameServer_Init_V2", CallingConvention = CallingConvention.Cdecl)] + public static extern ESteamAPIInitResult SteamInternal_GameServer_Init_V2(uint unIP, ushort usGamePort, ushort usQueryPort, EServerMode eServerMode, InteropHelp.UTF8StringHandle pchVersionString, InteropHelp.UTF8StringHandle pszInternalCheckInterfaceVersions, IntPtr pOutErrMsg); +#endregion +#region SteamAPI Accessors + [DllImport(NativeLibraryName, EntryPoint = "SteamClient", CallingConvention = CallingConvention.Cdecl)] + public static extern IntPtr SteamClient(); + + [DllImport(NativeLibraryName, EntryPoint = "SteamGameServerClient", CallingConvention = CallingConvention.Cdecl)] + public static extern IntPtr SteamGameServerClient(); +#endregion +#region SteamNetworkingIPAddr Accessors + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIPAddr_Clear", CallingConvention = CallingConvention.Cdecl)] + public static extern void SteamAPI_SteamNetworkingIPAddr_Clear(ref SteamNetworkingIPAddr self); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIPAddr_IsIPv6AllZeros", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + public static extern bool SteamAPI_SteamNetworkingIPAddr_IsIPv6AllZeros(ref SteamNetworkingIPAddr self); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIPAddr_SetIPv6", CallingConvention = CallingConvention.Cdecl)] + public static extern void SteamAPI_SteamNetworkingIPAddr_SetIPv6(ref SteamNetworkingIPAddr self, [In, Out] byte[] ipv6, ushort nPort); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIPAddr_SetIPv4", CallingConvention = CallingConvention.Cdecl)] + public static extern void SteamAPI_SteamNetworkingIPAddr_SetIPv4(ref SteamNetworkingIPAddr self, uint nIP, ushort nPort); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIPAddr_IsIPv4", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + public static extern bool SteamAPI_SteamNetworkingIPAddr_IsIPv4(ref SteamNetworkingIPAddr self); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIPAddr_GetIPv4", CallingConvention = CallingConvention.Cdecl)] + public static extern uint SteamAPI_SteamNetworkingIPAddr_GetIPv4(ref SteamNetworkingIPAddr self); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIPAddr_SetIPv6LocalHost", CallingConvention = CallingConvention.Cdecl)] + public static extern void SteamAPI_SteamNetworkingIPAddr_SetIPv6LocalHost(ref SteamNetworkingIPAddr self, ushort nPort); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIPAddr_IsLocalHost", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + public static extern bool SteamAPI_SteamNetworkingIPAddr_IsLocalHost(ref SteamNetworkingIPAddr self); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIPAddr_ToString", CallingConvention = CallingConvention.Cdecl)] + public static extern void SteamAPI_SteamNetworkingIPAddr_ToString(ref SteamNetworkingIPAddr self, IntPtr buf, uint cbBuf, [MarshalAs(UnmanagedType.I1)] bool bWithPort); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIPAddr_ParseString", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + public static extern bool SteamAPI_SteamNetworkingIPAddr_ParseString(ref SteamNetworkingIPAddr self, InteropHelp.UTF8StringHandle pszStr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIPAddr_IsEqualTo", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + public static extern bool SteamAPI_SteamNetworkingIPAddr_IsEqualTo(ref SteamNetworkingIPAddr self, ref SteamNetworkingIPAddr x); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIPAddr_GetFakeIPType", CallingConvention = CallingConvention.Cdecl)] + public static extern ESteamNetworkingFakeIPType SteamAPI_SteamNetworkingIPAddr_GetFakeIPType(ref SteamNetworkingIPAddr self); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIPAddr_IsFakeIP", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + public static extern bool SteamAPI_SteamNetworkingIPAddr_IsFakeIP(ref SteamNetworkingIPAddr self); +#endregion +#region SteamNetworkingIdentity Accessors + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIdentity_Clear", CallingConvention = CallingConvention.Cdecl)] + public static extern void SteamAPI_SteamNetworkingIdentity_Clear(ref SteamNetworkingIdentity self); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIdentity_IsInvalid", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + public static extern bool SteamAPI_SteamNetworkingIdentity_IsInvalid(ref SteamNetworkingIdentity self); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIdentity_SetSteamID", CallingConvention = CallingConvention.Cdecl)] + public static extern void SteamAPI_SteamNetworkingIdentity_SetSteamID(ref SteamNetworkingIdentity self, ulong steamID); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIdentity_GetSteamID", CallingConvention = CallingConvention.Cdecl)] + public static extern ulong SteamAPI_SteamNetworkingIdentity_GetSteamID(ref SteamNetworkingIdentity self); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIdentity_SetSteamID64", CallingConvention = CallingConvention.Cdecl)] + public static extern void SteamAPI_SteamNetworkingIdentity_SetSteamID64(ref SteamNetworkingIdentity self, ulong steamID); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIdentity_GetSteamID64", CallingConvention = CallingConvention.Cdecl)] + public static extern ulong SteamAPI_SteamNetworkingIdentity_GetSteamID64(ref SteamNetworkingIdentity self); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIdentity_SetXboxPairwiseID", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + public static extern bool SteamAPI_SteamNetworkingIdentity_SetXboxPairwiseID(ref SteamNetworkingIdentity self, InteropHelp.UTF8StringHandle pszString); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIdentity_GetXboxPairwiseID", CallingConvention = CallingConvention.Cdecl)] + public static extern IntPtr SteamAPI_SteamNetworkingIdentity_GetXboxPairwiseID(ref SteamNetworkingIdentity self); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIdentity_SetPSNID", CallingConvention = CallingConvention.Cdecl)] + public static extern void SteamAPI_SteamNetworkingIdentity_SetPSNID(ref SteamNetworkingIdentity self, ulong id); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIdentity_GetPSNID", CallingConvention = CallingConvention.Cdecl)] + public static extern ulong SteamAPI_SteamNetworkingIdentity_GetPSNID(ref SteamNetworkingIdentity self); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIdentity_SetIPAddr", CallingConvention = CallingConvention.Cdecl)] + public static extern IntPtr SteamAPI_SteamNetworkingIdentity_SetIPAddr(ref SteamNetworkingIdentity self, ref SteamNetworkingIPAddr addr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIdentity_GetIPAddr", CallingConvention = CallingConvention.Cdecl)] + public static extern IntPtr SteamAPI_SteamNetworkingIdentity_GetIPAddr(ref SteamNetworkingIdentity self); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIdentity_SetIPv4Addr", CallingConvention = CallingConvention.Cdecl)] + public static extern void SteamAPI_SteamNetworkingIdentity_SetIPv4Addr(ref SteamNetworkingIdentity self, uint nIPv4, ushort nPort); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIdentity_GetIPv4", CallingConvention = CallingConvention.Cdecl)] + public static extern uint SteamAPI_SteamNetworkingIdentity_GetIPv4(ref SteamNetworkingIdentity self); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIdentity_GetFakeIPType", CallingConvention = CallingConvention.Cdecl)] + public static extern ESteamNetworkingFakeIPType SteamAPI_SteamNetworkingIdentity_GetFakeIPType(ref SteamNetworkingIdentity self); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIdentity_IsFakeIP", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + public static extern bool SteamAPI_SteamNetworkingIdentity_IsFakeIP(ref SteamNetworkingIdentity self); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIdentity_SetLocalHost", CallingConvention = CallingConvention.Cdecl)] + public static extern void SteamAPI_SteamNetworkingIdentity_SetLocalHost(ref SteamNetworkingIdentity self); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIdentity_IsLocalHost", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + public static extern bool SteamAPI_SteamNetworkingIdentity_IsLocalHost(ref SteamNetworkingIdentity self); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIdentity_SetGenericString", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + public static extern bool SteamAPI_SteamNetworkingIdentity_SetGenericString(ref SteamNetworkingIdentity self, InteropHelp.UTF8StringHandle pszString); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIdentity_GetGenericString", CallingConvention = CallingConvention.Cdecl)] + public static extern IntPtr SteamAPI_SteamNetworkingIdentity_GetGenericString(ref SteamNetworkingIdentity self); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIdentity_SetGenericBytes", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + public static extern bool SteamAPI_SteamNetworkingIdentity_SetGenericBytes(ref SteamNetworkingIdentity self, [In, Out] byte[] data, uint cbLen); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIdentity_GetGenericBytes", CallingConvention = CallingConvention.Cdecl)] + public static extern IntPtr SteamAPI_SteamNetworkingIdentity_GetGenericBytes(ref SteamNetworkingIdentity self, out int cbLen); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIdentity_IsEqualTo", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + public static extern bool SteamAPI_SteamNetworkingIdentity_IsEqualTo(ref SteamNetworkingIdentity self, ref SteamNetworkingIdentity x); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIdentity_ToString", CallingConvention = CallingConvention.Cdecl)] + public static extern void SteamAPI_SteamNetworkingIdentity_ToString(ref SteamNetworkingIdentity self, IntPtr buf, uint cbBuf); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIdentity_ParseString", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + public static extern bool SteamAPI_SteamNetworkingIdentity_ParseString(ref SteamNetworkingIdentity self, InteropHelp.UTF8StringHandle pszStr); +#endregion +#region SteamNetworkingMessage_t Accessors + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingMessage_t_Release", CallingConvention = CallingConvention.Cdecl)] + public static extern void SteamAPI_SteamNetworkingMessage_t_Release(IntPtr self); +#endregion +#region ISteamNetworkingConnectionSignaling Accessors + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingConnectionSignaling_SendSignal", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + public static extern bool SteamAPI_ISteamNetworkingConnectionSignaling_SendSignal(ref ISteamNetworkingConnectionSignaling self, HSteamNetConnection hConn, ref SteamNetConnectionInfo_t info, IntPtr pMsg, int cbMsg); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingConnectionSignaling_Release", CallingConvention = CallingConvention.Cdecl)] + public static extern void SteamAPI_ISteamNetworkingConnectionSignaling_Release(ref ISteamNetworkingConnectionSignaling self); +#endregion +#region ISteamNetworkingSignalingRecvContext Accessors + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingSignalingRecvContext_OnConnectRequest", CallingConvention = CallingConvention.Cdecl)] + public static extern IntPtr SteamAPI_ISteamNetworkingSignalingRecvContext_OnConnectRequest(ref ISteamNetworkingSignalingRecvContext self, HSteamNetConnection hConn, ref SteamNetworkingIdentity identityPeer, int nLocalVirtualPort); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingSignalingRecvContext_SendRejectionSignal", CallingConvention = CallingConvention.Cdecl)] + public static extern void SteamAPI_ISteamNetworkingSignalingRecvContext_SendRejectionSignal(ref ISteamNetworkingSignalingRecvContext self, ref SteamNetworkingIdentity identityPeer, IntPtr pMsg, int cbMsg); +#endregion +#region steamencryptedappticket.h + [DllImport(NativeLibrary_SDKEncryptedAppTicket, CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + public static extern bool SteamEncryptedAppTicket_BDecryptTicket([In, Out] byte[] rgubTicketEncrypted, uint cubTicketEncrypted, [In, Out] byte[] rgubTicketDecrypted, ref uint pcubTicketDecrypted, [MarshalAs(UnmanagedType.LPArray, SizeConst=Constants.k_nSteamEncryptedAppTicketSymmetricKeyLen)] byte[] rgubKey, int cubKey); + + [DllImport(NativeLibrary_SDKEncryptedAppTicket, CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + public static extern bool SteamEncryptedAppTicket_BIsTicketForApp([In, Out] byte[] rgubTicketDecrypted, uint cubTicketDecrypted, AppId_t nAppID); + + [DllImport(NativeLibrary_SDKEncryptedAppTicket, CallingConvention = CallingConvention.Cdecl)] + public static extern uint SteamEncryptedAppTicket_GetTicketIssueTime([In, Out] byte[] rgubTicketDecrypted, uint cubTicketDecrypted); + + [DllImport(NativeLibrary_SDKEncryptedAppTicket, CallingConvention = CallingConvention.Cdecl)] + public static extern void SteamEncryptedAppTicket_GetTicketSteamID([In, Out] byte[] rgubTicketDecrypted, uint cubTicketDecrypted, out CSteamID psteamID); + + [DllImport(NativeLibrary_SDKEncryptedAppTicket, CallingConvention = CallingConvention.Cdecl)] + public static extern uint SteamEncryptedAppTicket_GetTicketAppID([In, Out] byte[] rgubTicketDecrypted, uint cubTicketDecrypted); + + [DllImport(NativeLibrary_SDKEncryptedAppTicket, CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + public static extern bool SteamEncryptedAppTicket_BUserOwnsAppInTicket([In, Out] byte[] rgubTicketDecrypted, uint cubTicketDecrypted, AppId_t nAppID); + + [DllImport(NativeLibrary_SDKEncryptedAppTicket, CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + public static extern bool SteamEncryptedAppTicket_BUserIsVacBanned([In, Out] byte[] rgubTicketDecrypted, uint cubTicketDecrypted); + + [DllImport(NativeLibrary_SDKEncryptedAppTicket, CallingConvention = CallingConvention.Cdecl)] + public static extern IntPtr SteamEncryptedAppTicket_GetUserVariableData([In, Out] byte[] rgubTicketDecrypted, uint cubTicketDecrypted, out uint pcubUserData); + + [DllImport(NativeLibrary_SDKEncryptedAppTicket, CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + public static extern bool SteamEncryptedAppTicket_BIsTicketSigned([In, Out] byte[] rgubTicketDecrypted, uint cubTicketDecrypted, [In, Out] byte[] pubRSAKey, uint cubRSAKey); + + [DllImport(NativeLibrary_SDKEncryptedAppTicket, CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + public static extern bool SteamEncryptedAppTicket_BIsLicenseBorrowed([In, Out] byte[] rgubTicketDecrypted, uint cubTicketDecrypted); + + [DllImport(NativeLibrary_SDKEncryptedAppTicket, CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + public static extern bool SteamEncryptedAppTicket_BIsLicenseTemporary([In, Out] byte[] rgubTicketDecrypted, uint cubTicketDecrypted); +#endregion diff --git a/CodeGen/templates/nativemethods_general.txt b/CodeGen/templates/nativemethods_general.txt new file mode 100644 index 00000000..d92c07db --- /dev/null +++ b/CodeGen/templates/nativemethods_general.txt @@ -0,0 +1,20 @@ +// This file is provided under The MIT License as part of Steamworks.NET. +// Copyright (c) 2013-2025 Riley Labrecque +// Please see the included LICENSE.txt for additional information. + +// This file is automatically generated. +// Changes to this file will be reverted when you update Steamworks.NET + +#if STEAMWORKS_STANDALONE_ANYCPU + +using System.Runtime.InteropServices; +using IntPtr = System.IntPtr; + +#pragma warning disable IDE0130 +namespace Steamworks { +#pragma warning restore + [System.Security.SuppressUnmanagedCodeSecurity()] + /// Imported native functions of steam binary, for most platforms + internal static class NativeMethodsUnderlying { + internal const string NativeLibraryName = "steam_api"; + internal const string NativeLibrary_SDKEncryptedAppTicket = "sdkencryptedappticket"; diff --git a/CodeGen/templates/nativemethods_win64.txt b/CodeGen/templates/nativemethods_win64.txt new file mode 100644 index 00000000..c7d17217 --- /dev/null +++ b/CodeGen/templates/nativemethods_win64.txt @@ -0,0 +1,20 @@ +// This file is provided under The MIT License as part of Steamworks.NET. +// Copyright (c) 2013-2025 Riley Labrecque +// Please see the included LICENSE.txt for additional information. + +// This file is automatically generated. +// Add or remove meth will be reverted when you update Steamworks.NET + +#if STEAMWORKS_STANDALONE_ANYCPU + +using System.Runtime.InteropServices; +using IntPtr = System.IntPtr; + +#pragma warning disable IDE0130 +namespace Steamworks { +#pragma warning restore + [System.Security.SuppressUnmanagedCodeSecurity()] + /// Imported native functions of steam binary, for Windows x64 + internal static class NativeMethodsUnderlyingWin64 { + internal const string NativeLibraryName = "steam_api64"; + internal const string NativeLibrary_SDKEncryptedAppTicket = "sdkencryptedappticket64"; diff --git a/Standalone/.editorconfig b/Standalone/.editorconfig new file mode 100644 index 00000000..68d86a8f --- /dev/null +++ b/Standalone/.editorconfig @@ -0,0 +1,256 @@ +# 如果要从更高级别的目录继承 .editorconfig 设置,请删除以下行 +root = true + +# c# 文件 +[*.cs] + +#### Core EditorConfig 选项 #### + +# 缩进和间距 +indent_size = 4 +indent_style = tab +tab_width = 4 + +# 新行首选项 +end_of_line = crlf +insert_final_newline = false + +#### .NET 代码操作 #### + +# 类型成员 +dotnet_hide_advanced_members = false +dotnet_member_insertion_location = with_other_members_of_the_same_kind +dotnet_property_generation_behavior = prefer_auto_properties + +# 符号搜索 +dotnet_search_reference_assemblies = true + +#### .NET 编码约定 #### + +# 组织 Using +dotnet_separate_import_directive_groups = false +dotnet_sort_system_directives_first = false +file_header_template = unset + +# this. 和 Me. 首选项 +dotnet_style_qualification_for_event = false +dotnet_style_qualification_for_field = false +dotnet_style_qualification_for_method = false +dotnet_style_qualification_for_property = false + +# 语言关键字与 bcl 类型首选项 +dotnet_style_predefined_type_for_locals_parameters_members = true +dotnet_style_predefined_type_for_member_access = true + +# 括号首选项 +dotnet_style_parentheses_in_arithmetic_binary_operators = always_for_clarity +dotnet_style_parentheses_in_other_binary_operators = always_for_clarity +dotnet_style_parentheses_in_other_operators = never_if_unnecessary +dotnet_style_parentheses_in_relational_binary_operators = always_for_clarity + +# 修饰符首选项 +dotnet_style_require_accessibility_modifiers = for_non_interface_members + +# 表达式级首选项 +dotnet_prefer_system_hash_code = true +dotnet_style_coalesce_expression = true +dotnet_style_collection_initializer = true +dotnet_style_explicit_tuple_names = true +dotnet_style_namespace_match_folder = true +dotnet_style_null_propagation = true +dotnet_style_object_initializer = true +dotnet_style_operator_placement_when_wrapping = beginning_of_line +dotnet_style_prefer_auto_properties = true +dotnet_style_prefer_collection_expression = when_types_loosely_match +dotnet_style_prefer_compound_assignment = true +dotnet_style_prefer_conditional_expression_over_assignment = true +dotnet_style_prefer_conditional_expression_over_return = true +dotnet_style_prefer_foreach_explicit_cast_in_source = when_strongly_typed +dotnet_style_prefer_inferred_anonymous_type_member_names = true +dotnet_style_prefer_inferred_tuple_names = true +dotnet_style_prefer_is_null_check_over_reference_equality_method = true +dotnet_style_prefer_simplified_boolean_expressions = true +dotnet_style_prefer_simplified_interpolation = true + +# 字段首选项 +dotnet_style_readonly_field = true + +# 参数首选项 +dotnet_code_quality_unused_parameters = all + +# 禁止显示首选项 +dotnet_remove_unnecessary_suppression_exclusions = none + +# 新行首选项 +dotnet_style_allow_multiple_blank_lines_experimental = true +dotnet_style_allow_statement_immediately_after_block_experimental = true + +#### c# 编码约定 #### + +# var 首选项 +csharp_style_var_elsewhere = false:silent +csharp_style_var_for_built_in_types = false:silent +csharp_style_var_when_type_is_apparent = false:silent + +# Expression-bodied 成员 +csharp_style_expression_bodied_accessors = true:silent +csharp_style_expression_bodied_constructors = false:silent +csharp_style_expression_bodied_indexers = true:silent +csharp_style_expression_bodied_lambdas = true:silent +csharp_style_expression_bodied_local_functions = false:silent +csharp_style_expression_bodied_methods = false:silent +csharp_style_expression_bodied_operators = false:silent +csharp_style_expression_bodied_properties = true:silent + +# 模式匹配首选项 +csharp_style_pattern_matching_over_as_with_null_check = true +csharp_style_pattern_matching_over_is_with_cast_check = true +csharp_style_prefer_extended_property_pattern = true +csharp_style_prefer_not_pattern = true +csharp_style_prefer_pattern_matching = true +csharp_style_prefer_switch_expression = true + +# Null 检查首选项 +csharp_style_conditional_delegate_call = true:suggestion + +# 修饰符首选项 +csharp_prefer_static_anonymous_function = true +csharp_prefer_static_local_function = true +csharp_preferred_modifier_order = public,private,protected,internal,static,extern,new,virtual,abstract,sealed,override,readonly,unsafe,volatile,async +csharp_style_prefer_readonly_struct = true +csharp_style_prefer_readonly_struct_member = true + +# 代码块首选项 +csharp_prefer_braces = true +csharp_prefer_simple_using_statement = true +csharp_prefer_system_threading_lock = true +csharp_style_namespace_declarations = block_scoped +csharp_style_prefer_method_group_conversion = true +csharp_style_prefer_primary_constructors = true +csharp_style_prefer_top_level_statements = true + +# 表达式级首选项 +csharp_prefer_simple_default_expression = true +csharp_style_deconstructed_variable_declaration = true +csharp_style_implicit_object_creation_when_type_is_apparent = true +csharp_style_inlined_variable_declaration = true +csharp_style_prefer_implicitly_typed_lambda_expression = true +csharp_style_prefer_index_operator = true +csharp_style_prefer_local_over_anonymous_function = true +csharp_style_prefer_null_check_over_type_check = true +csharp_style_prefer_range_operator = true +csharp_style_prefer_tuple_swap = true +csharp_style_prefer_unbound_generic_type_in_nameof = true +csharp_style_prefer_utf8_string_literals = true +csharp_style_throw_expression = true +csharp_style_unused_value_assignment_preference = discard_variable +csharp_style_unused_value_expression_statement_preference = discard_variable + +# "using" 指令首选项 +csharp_using_directive_placement = outside_namespace:silent + +# 新行首选项 +csharp_style_allow_blank_line_after_colon_in_constructor_initializer_experimental = true +csharp_style_allow_blank_line_after_token_in_arrow_expression_clause_experimental = true +csharp_style_allow_blank_line_after_token_in_conditional_expression_experimental = true +csharp_style_allow_blank_lines_between_consecutive_braces_experimental = true +csharp_style_allow_embedded_statements_on_same_line_experimental = true + +#### C# 格式规则 #### + +# 新行首选项 +csharp_new_line_before_catch = false +csharp_new_line_before_else = false +csharp_new_line_before_finally = false +csharp_new_line_before_members_in_anonymous_types = true +csharp_new_line_before_members_in_object_initializers = false +csharp_new_line_before_open_brace = none +csharp_new_line_between_query_expression_clauses = true + +# 缩进首选项 +csharp_indent_block_contents = true +csharp_indent_braces = false +csharp_indent_case_contents = true +csharp_indent_case_contents_when_block = false +csharp_indent_labels = one_less_than_current +csharp_indent_switch_labels = true + +# 空格键首选项 +csharp_space_after_cast = false +csharp_space_after_colon_in_inheritance_clause = true +csharp_space_after_comma = true +csharp_space_after_dot = false +csharp_space_after_keywords_in_control_flow_statements = true +csharp_space_after_semicolon_in_for_statement = true +csharp_space_around_binary_operators = before_and_after +csharp_space_around_declaration_statements = false +csharp_space_before_colon_in_inheritance_clause = true +csharp_space_before_comma = false +csharp_space_before_dot = false +csharp_space_before_open_square_brackets = false +csharp_space_before_semicolon_in_for_statement = false +csharp_space_between_empty_square_brackets = false +csharp_space_between_method_call_empty_parameter_list_parentheses = false +csharp_space_between_method_call_name_and_opening_parenthesis = false +csharp_space_between_method_call_parameter_list_parentheses = false +csharp_space_between_method_declaration_empty_parameter_list_parentheses = false +csharp_space_between_method_declaration_name_and_open_parenthesis = false +csharp_space_between_method_declaration_parameter_list_parentheses = false +csharp_space_between_parentheses = false +csharp_space_between_square_brackets = false + +# 包装首选项 +csharp_preserve_single_line_blocks = true +csharp_preserve_single_line_statements = true + +#### 命名样式 #### + +# 命名规则 + +dotnet_naming_rule.interface_should_be_begins_with_i.severity = suggestion +dotnet_naming_rule.interface_should_be_begins_with_i.symbols = interface +dotnet_naming_rule.interface_should_be_begins_with_i.style = begins_with_i + +dotnet_naming_rule.types_should_be_pascal_case.severity = suggestion +dotnet_naming_rule.types_should_be_pascal_case.symbols = types +dotnet_naming_rule.types_should_be_pascal_case.style = pascal_case + +dotnet_naming_rule.non_field_members_should_be_pascal_case.severity = suggestion +dotnet_naming_rule.non_field_members_should_be_pascal_case.symbols = non_field_members +dotnet_naming_rule.non_field_members_should_be_pascal_case.style = pascal_case + +# 符号规范 + +dotnet_naming_symbols.interface.applicable_kinds = interface +dotnet_naming_symbols.interface.applicable_accessibilities = public, internal, private, protected, protected_internal, private_protected +dotnet_naming_symbols.interface.required_modifiers = + +dotnet_naming_symbols.types.applicable_kinds = class, struct, interface, enum +dotnet_naming_symbols.types.applicable_accessibilities = public, internal, private, protected, protected_internal, private_protected +dotnet_naming_symbols.types.required_modifiers = + +dotnet_naming_symbols.non_field_members.applicable_kinds = property, event, method +dotnet_naming_symbols.non_field_members.applicable_accessibilities = public, internal, private, protected, protected_internal, private_protected +dotnet_naming_symbols.non_field_members.required_modifiers = + +# 命名样式 + +dotnet_naming_style.pascal_case.required_prefix = +dotnet_naming_style.pascal_case.required_suffix = +dotnet_naming_style.pascal_case.word_separator = +dotnet_naming_style.pascal_case.capitalization = pascal_case + +dotnet_naming_style.begins_with_i.required_prefix = I +dotnet_naming_style.begins_with_i.required_suffix = +dotnet_naming_style.begins_with_i.word_separator = +dotnet_naming_style.begins_with_i.capitalization = pascal_case + +[*.{cs,vb}] +end_of_line = crlf +dotnet_style_qualification_for_field = false:silent +dotnet_style_qualification_for_property = false:silent +dotnet_style_qualification_for_method = false:silent +dotnet_style_qualification_for_event = false:silent +tab_width = 4 +indent_size = 4 +dotnet_style_operator_placement_when_wrapping = beginning_of_line \ No newline at end of file diff --git a/Standalone/AnyCPU/autogen/NativeMethods.cs b/Standalone/AnyCPU/autogen/NativeMethods.cs new file mode 100644 index 00000000..86c043fe --- /dev/null +++ b/Standalone/AnyCPU/autogen/NativeMethods.cs @@ -0,0 +1,7868 @@ +// This file is provided under The MIT License as part of Steamworks.NET. +// Copyright (c) 2013-2025 Riley Labrecque +// Please see the included LICENSE.txt for additional information. + +// This file is automatically generated. +// Changes to this file will be reverted when you update Steamworks.NET + +#if STEAMWORKS_STANDALONE_ANYCPU + +using System.Runtime.InteropServices; +using IntPtr = System.IntPtr; +using Environment = System.Environment; + +#pragma warning disable IDE0130 +namespace Steamworks { +#pragma warning restore + [System.Security.SuppressUnmanagedCodeSecurity()] + internal static class NativeMethods { + // !!!! Changes made to steamapi free functions should also sync with other nativemethods*.txt too. !!!! + +#region steam_api.h + public static ESteamAPIInitResult SteamInternal_SteamAPI_Init(InteropHelp.UTF8StringHandle pszInternalCheckInterfaceVersions, IntPtr pOutErrMsg) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.SteamInternal_SteamAPI_Init(pszInternalCheckInterfaceVersions, pOutErrMsg); + } else { + return NativeMethodsUnderlying.SteamInternal_SteamAPI_Init(pszInternalCheckInterfaceVersions, pOutErrMsg); + } + } + + public static void SteamAPI_Shutdown() { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.SteamAPI_Shutdown(); + } else { + NativeMethodsUnderlying.SteamAPI_Shutdown(); + } + } + [return: MarshalAs(UnmanagedType.I1)] + public static bool SteamAPI_RestartAppIfNecessary(AppId_t unOwnAppID) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.SteamAPI_RestartAppIfNecessary(unOwnAppID); + } else { + return NativeMethodsUnderlying.SteamAPI_RestartAppIfNecessary(unOwnAppID); + } + } + + public static void SteamAPI_ReleaseCurrentThreadMemory() { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.SteamAPI_ReleaseCurrentThreadMemory(); + } else { + NativeMethodsUnderlying.SteamAPI_ReleaseCurrentThreadMemory(); + } + } + + public static void SteamAPI_WriteMiniDump(uint uStructuredExceptionCode, IntPtr pvExceptionInfo, uint uBuildID) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.SteamAPI_WriteMiniDump(uStructuredExceptionCode, pvExceptionInfo, uBuildID); + } else { + NativeMethodsUnderlying.SteamAPI_WriteMiniDump(uStructuredExceptionCode, pvExceptionInfo, uBuildID); + } + } + + public static void SteamAPI_SetMiniDumpComment(InteropHelp.UTF8StringHandle pchMsg) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.SteamAPI_SetMiniDumpComment(pchMsg); + } else { + NativeMethodsUnderlying.SteamAPI_SetMiniDumpComment(pchMsg); + } + } + + public static void SteamAPI_RunCallbacks() { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.SteamAPI_RunCallbacks(); + } else { + NativeMethodsUnderlying.SteamAPI_RunCallbacks(); + } + } + + public static void SteamAPI_RegisterCallback(IntPtr pCallback, int iCallback) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.SteamAPI_RegisterCallback(pCallback, iCallback); + } else { + NativeMethodsUnderlying.SteamAPI_RegisterCallback(pCallback, iCallback); + } + } + + public static void SteamAPI_UnregisterCallback(IntPtr pCallback) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.SteamAPI_UnregisterCallback(pCallback); + } else { + NativeMethodsUnderlying.SteamAPI_UnregisterCallback(pCallback); + } + } + + public static void SteamAPI_RegisterCallResult(IntPtr pCallback, ulong hAPICall) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.SteamAPI_RegisterCallResult(pCallback, hAPICall); + } else { + NativeMethodsUnderlying.SteamAPI_RegisterCallResult(pCallback, hAPICall); + } + } + + public static void SteamAPI_UnregisterCallResult(IntPtr pCallback, ulong hAPICall) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.SteamAPI_UnregisterCallResult(pCallback, hAPICall); + } else { + NativeMethodsUnderlying.SteamAPI_UnregisterCallResult(pCallback, hAPICall); + } + } + + [return: MarshalAs(UnmanagedType.I1)] + public static bool SteamAPI_IsSteamRunning() { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.SteamAPI_IsSteamRunning(); + } else { + return NativeMethodsUnderlying.SteamAPI_IsSteamRunning(); + } + } + + public static int SteamAPI_GetSteamInstallPath() { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.SteamAPI_GetSteamInstallPath(); + } else { + return NativeMethodsUnderlying.SteamAPI_GetSteamInstallPath(); + } + } + + public static int SteamAPI_GetHSteamPipe() { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.SteamAPI_GetHSteamPipe(); + } else { + return NativeMethodsUnderlying.SteamAPI_GetHSteamPipe(); + } + } + + public static void SteamAPI_SetTryCatchCallbacks([MarshalAs(UnmanagedType.I1)] bool bTryCatchCallbacks) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.SteamAPI_SetTryCatchCallbacks(bTryCatchCallbacks); + } else { + NativeMethodsUnderlying.SteamAPI_SetTryCatchCallbacks(bTryCatchCallbacks); + } + } + + public static int SteamAPI_GetHSteamUser() { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.SteamAPI_GetHSteamUser(); + } else { + return NativeMethodsUnderlying.SteamAPI_GetHSteamUser(); + } + } + + public static IntPtr SteamInternal_ContextInit(IntPtr pContextInitData) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.SteamInternal_ContextInit(pContextInitData); + } else { + return NativeMethodsUnderlying.SteamInternal_ContextInit(pContextInitData); + } + } + + public static IntPtr SteamInternal_CreateInterface(InteropHelp.UTF8StringHandle ver) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.SteamInternal_CreateInterface(ver); + } else { + return NativeMethodsUnderlying.SteamInternal_CreateInterface(ver); + } + } + + public static IntPtr SteamInternal_FindOrCreateUserInterface(HSteamUser hSteamUser, InteropHelp.UTF8StringHandle pszVersion) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.SteamInternal_FindOrCreateGameServerInterface(hSteamUser, pszVersion); + } else { + return NativeMethodsUnderlying.SteamInternal_FindOrCreateGameServerInterface(hSteamUser, pszVersion); + } + } + + public static IntPtr SteamInternal_FindOrCreateGameServerInterface(HSteamUser hSteamUser, InteropHelp.UTF8StringHandle pszVersion) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.SteamInternal_FindOrCreateGameServerInterface(hSteamUser, pszVersion); + } else { + return NativeMethodsUnderlying.SteamInternal_FindOrCreateGameServerInterface(hSteamUser, pszVersion); + } + } + + public static void SteamAPI_UseBreakpadCrashHandler(InteropHelp.UTF8StringHandle pchVersion, InteropHelp.UTF8StringHandle pchDate, InteropHelp.UTF8StringHandle pchTime, [MarshalAs(UnmanagedType.I1)] bool bFullMemoryDumps, IntPtr pvContext, IntPtr m_pfnPreMinidumpCallback) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.SteamAPI_UseBreakpadCrashHandler(pchVersion, pchDate, pchTime, bFullMemoryDumps, pvContext, m_pfnPreMinidumpCallback); + } else { + NativeMethodsUnderlying.SteamAPI_UseBreakpadCrashHandler(pchVersion, pchDate, pchTime, bFullMemoryDumps, pvContext, m_pfnPreMinidumpCallback); + } + } + + public static void SteamAPI_SetBreakpadAppID(uint unAppID) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.SteamAPI_SetBreakpadAppID(unAppID); + } else { + NativeMethodsUnderlying.SteamAPI_SetBreakpadAppID(unAppID); + } + } + + public static void SteamAPI_ManualDispatch_Init() { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.SteamAPI_ManualDispatch_Init(); + } else { + NativeMethodsUnderlying.SteamAPI_ManualDispatch_Init(); + } + } + + public static void SteamAPI_ManualDispatch_RunFrame(HSteamPipe hSteamPipe) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.SteamAPI_ManualDispatch_RunFrame(hSteamPipe); + } else { + NativeMethodsUnderlying.SteamAPI_ManualDispatch_RunFrame(hSteamPipe); + } + } + + [return: MarshalAs(UnmanagedType.I1)] + public static bool SteamAPI_ManualDispatch_GetNextCallback(HSteamPipe hSteamPipe, IntPtr pCallbackMsg) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.SteamAPI_ManualDispatch_GetNextCallback(hSteamPipe, pCallbackMsg); + } else { + return NativeMethodsUnderlying.SteamAPI_ManualDispatch_GetNextCallback(hSteamPipe, pCallbackMsg); + } + } + + public static void SteamAPI_ManualDispatch_FreeLastCallback(HSteamPipe hSteamPipe) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.SteamAPI_ManualDispatch_FreeLastCallback(hSteamPipe); + } else { + NativeMethodsUnderlying.SteamAPI_ManualDispatch_FreeLastCallback(hSteamPipe); + } + } + + [return: MarshalAs(UnmanagedType.I1)] + public static bool SteamAPI_ManualDispatch_GetAPICallResult(HSteamPipe hSteamPipe, SteamAPICall_t hSteamAPICall, IntPtr pCallback, int cubCallback, int iCallbackExpected, out bool pbFailed) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.SteamAPI_ManualDispatch_GetAPICallResult(hSteamPipe, hSteamAPICall, pCallback, cubCallback, iCallbackExpected, out pbFailed); + } else { + return NativeMethodsUnderlying.SteamAPI_ManualDispatch_GetAPICallResult(hSteamPipe, hSteamAPICall, pCallback, cubCallback, iCallbackExpected, out pbFailed); + } + } + #endregion + #region steam_gameserver.h + public static void SteamGameServer_Shutdown() { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.SteamGameServer_Shutdown(); + } else { + NativeMethodsUnderlying.SteamGameServer_Shutdown(); + } + } + + public static void SteamGameServer_RunCallbacks() { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.SteamGameServer_RunCallbacks(); + } else { + NativeMethodsUnderlying.SteamGameServer_RunCallbacks(); + } + } + + public static void SteamGameServer_ReleaseCurrentThreadMemory() { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.SteamGameServer_ReleaseCurrentThreadMemory(); + } else { + NativeMethodsUnderlying.SteamGameServer_ReleaseCurrentThreadMemory(); + } + } + // 写好的方法复制到nativemethods_anycpu.txt + + [return: MarshalAs(UnmanagedType.I1)] + public static bool SteamGameServer_BSecure() { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.SteamGameServer_BSecure(); + } else { + return NativeMethodsUnderlying.SteamGameServer_BSecure(); + } + } + + public static ulong SteamGameServer_GetSteamID() { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.SteamGameServer_GetSteamID(); + } else { + return NativeMethodsUnderlying.SteamGameServer_GetSteamID(); + } + } + + public static int SteamGameServer_GetHSteamPipe() { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.SteamGameServer_GetHSteamPipe(); + } else { + return NativeMethodsUnderlying.SteamGameServer_GetHSteamPipe(); + } + } + + public static int SteamGameServer_GetHSteamUser() { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.SteamGameServer_GetHSteamUser(); + } else { + return NativeMethodsUnderlying.SteamGameServer_GetHSteamUser(); + } + } + + public static ESteamAPIInitResult SteamInternal_GameServer_Init_V2(uint unIP, ushort usGamePort, ushort usQueryPort, EServerMode eServerMode, InteropHelp.UTF8StringHandle pchVersionString, InteropHelp.UTF8StringHandle pszInternalCheckInterfaceVersions, IntPtr pOutErrMsg) { + { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.SteamInternal_GameServer_Init_V2(unIP, usGamePort, usQueryPort, eServerMode, pchVersionString, pszInternalCheckInterfaceVersions, pOutErrMsg); + } else { + return NativeMethodsUnderlying.SteamInternal_GameServer_Init_V2(unIP, usGamePort, usQueryPort, eServerMode, pchVersionString, pszInternalCheckInterfaceVersions, pOutErrMsg); + } + } + } +#endregion +#region SteamAPI Accessors + public static IntPtr SteamClient() { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.SteamClient(); + } else { + return NativeMethodsUnderlying.SteamClient(); + } + } + + public static IntPtr SteamGameServerClient() { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.SteamGameServerClient(); + } else { + return NativeMethodsUnderlying.SteamGameServerClient(); + } + } + #endregion + #region SteamNetworkingIPAddr Accessors + public static void SteamAPI_SteamNetworkingIPAddr_Clear(ref SteamNetworkingIPAddr self) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.SteamAPI_SteamNetworkingIPAddr_Clear(ref self); + } else { + NativeMethodsUnderlying.SteamAPI_SteamNetworkingIPAddr_Clear(ref self); + } + } + + [return: MarshalAs(UnmanagedType.I1)] + public static bool SteamAPI_SteamNetworkingIPAddr_IsIPv6AllZeros(ref SteamNetworkingIPAddr self) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.SteamAPI_SteamNetworkingIPAddr_IsIPv6AllZeros(ref self); + } else { + return NativeMethodsUnderlying.SteamAPI_SteamNetworkingIPAddr_IsIPv6AllZeros(ref self); + } + } + + public static void SteamAPI_SteamNetworkingIPAddr_SetIPv6(ref SteamNetworkingIPAddr self, [In, Out] byte[] ipv6, ushort nPort) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.SteamAPI_SteamNetworkingIPAddr_SetIPv6(ref self, ipv6, nPort); + } else { + NativeMethodsUnderlying.SteamAPI_SteamNetworkingIPAddr_SetIPv6(ref self, ipv6, nPort); + } + } + + public static void SteamAPI_SteamNetworkingIPAddr_SetIPv4(ref SteamNetworkingIPAddr self, uint nIP, ushort nPort) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.SteamAPI_SteamNetworkingIPAddr_SetIPv4(ref self, nIP, nPort); + } else { + NativeMethodsUnderlying.SteamAPI_SteamNetworkingIPAddr_SetIPv4(ref self, nIP, nPort); + } + } + + [return: MarshalAs(UnmanagedType.I1)] + public static bool SteamAPI_SteamNetworkingIPAddr_IsIPv4(ref SteamNetworkingIPAddr self) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.SteamAPI_SteamNetworkingIPAddr_IsIPv4(ref self); + } else { + return NativeMethodsUnderlying.SteamAPI_SteamNetworkingIPAddr_IsIPv4(ref self); + } + } + + public static uint SteamAPI_SteamNetworkingIPAddr_GetIPv4(ref SteamNetworkingIPAddr self) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.SteamAPI_SteamNetworkingIPAddr_GetIPv4(ref self); + } else { + return NativeMethodsUnderlying.SteamAPI_SteamNetworkingIPAddr_GetIPv4(ref self); + } + } + + public static void SteamAPI_SteamNetworkingIPAddr_SetIPv6LocalHost(ref SteamNetworkingIPAddr self, ushort nPort) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.SteamAPI_SteamNetworkingIPAddr_SetIPv6LocalHost(ref self, nPort); + } else { + NativeMethodsUnderlying.SteamAPI_SteamNetworkingIPAddr_SetIPv6LocalHost(ref self, nPort); + } + } + + [return: MarshalAs(UnmanagedType.I1)] + public static bool SteamAPI_SteamNetworkingIPAddr_IsLocalHost(ref SteamNetworkingIPAddr self) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.SteamAPI_SteamNetworkingIPAddr_IsLocalHost(ref self); + } else { + return NativeMethodsUnderlying.SteamAPI_SteamNetworkingIPAddr_IsLocalHost(ref self); + } + } + + public static void SteamAPI_SteamNetworkingIPAddr_ToString(ref SteamNetworkingIPAddr self, IntPtr buf, uint cbBuf, [MarshalAs(UnmanagedType.I1)] bool bWithPort) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.SteamAPI_SteamNetworkingIPAddr_ToString(ref self, buf, cbBuf, bWithPort); + } else { + NativeMethodsUnderlying.SteamAPI_SteamNetworkingIPAddr_ToString(ref self, buf, cbBuf, bWithPort); + } + } + + [return: MarshalAs(UnmanagedType.I1)] + public static bool SteamAPI_SteamNetworkingIPAddr_ParseString(ref SteamNetworkingIPAddr self, InteropHelp.UTF8StringHandle pszStr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.SteamAPI_SteamNetworkingIPAddr_ParseString(ref self, pszStr); + } else { + return NativeMethodsUnderlying.SteamAPI_SteamNetworkingIPAddr_ParseString(ref self, pszStr); + } + } + + [return: MarshalAs(UnmanagedType.I1)] + public static bool SteamAPI_SteamNetworkingIPAddr_IsEqualTo(ref SteamNetworkingIPAddr self, ref SteamNetworkingIPAddr x) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.SteamAPI_SteamNetworkingIPAddr_IsEqualTo(ref self, ref x); + } else { + return NativeMethodsUnderlying.SteamAPI_SteamNetworkingIPAddr_IsEqualTo(ref self, ref x); + } + } + + public static ESteamNetworkingFakeIPType SteamAPI_SteamNetworkingIPAddr_GetFakeIPType(ref SteamNetworkingIPAddr self) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.SteamAPI_SteamNetworkingIPAddr_GetFakeIPType(ref self); + } else { + return NativeMethodsUnderlying.SteamAPI_SteamNetworkingIPAddr_GetFakeIPType(ref self); + } + } + + [return: MarshalAs(UnmanagedType.I1)] + public static bool SteamAPI_SteamNetworkingIPAddr_IsFakeIP(ref SteamNetworkingIPAddr self) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.SteamAPI_SteamNetworkingIPAddr_IsFakeIP(ref self); + } else { + return NativeMethodsUnderlying.SteamAPI_SteamNetworkingIPAddr_IsFakeIP(ref self); + } + } + #endregion + #region SteamNetworkingIdentity Accessors + public static void SteamAPI_SteamNetworkingIdentity_Clear(ref SteamNetworkingIdentity self) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.SteamAPI_SteamNetworkingIdentity_Clear(ref self); + } else { + NativeMethodsUnderlying.SteamAPI_SteamNetworkingIdentity_Clear(ref self); + } + } + + [return: MarshalAs(UnmanagedType.I1)] + public static bool SteamAPI_SteamNetworkingIdentity_IsInvalid(ref SteamNetworkingIdentity self) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.SteamAPI_SteamNetworkingIdentity_IsInvalid(ref self); + } else { + return NativeMethodsUnderlying.SteamAPI_SteamNetworkingIdentity_IsInvalid(ref self); + } + } + + public static void SteamAPI_SteamNetworkingIdentity_SetSteamID(ref SteamNetworkingIdentity self, ulong steamID) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.SteamAPI_SteamNetworkingIdentity_SetSteamID(ref self, steamID); + } else { + NativeMethodsUnderlying.SteamAPI_SteamNetworkingIdentity_SetSteamID(ref self, steamID); + } + } + + public static ulong SteamAPI_SteamNetworkingIdentity_GetSteamID(ref SteamNetworkingIdentity self) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.SteamAPI_SteamNetworkingIdentity_GetSteamID(ref self); + } else { + return NativeMethodsUnderlying.SteamAPI_SteamNetworkingIdentity_GetSteamID(ref self); + } + } + + public static void SteamAPI_SteamNetworkingIdentity_SetSteamID64(ref SteamNetworkingIdentity self, ulong steamID) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.SteamAPI_SteamNetworkingIdentity_SetSteamID64(ref self, steamID); + } else { + NativeMethodsUnderlying.SteamAPI_SteamNetworkingIdentity_SetSteamID64(ref self, steamID); + } + } + + public static ulong SteamAPI_SteamNetworkingIdentity_GetSteamID64(ref SteamNetworkingIdentity self) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.SteamAPI_SteamNetworkingIdentity_GetSteamID64(ref self); + } else { + return NativeMethodsUnderlying.SteamAPI_SteamNetworkingIdentity_GetSteamID64(ref self); + } + } + + [return: MarshalAs(UnmanagedType.I1)] + public static bool SteamAPI_SteamNetworkingIdentity_SetXboxPairwiseID(ref SteamNetworkingIdentity self, InteropHelp.UTF8StringHandle pszString) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.SteamAPI_SteamNetworkingIdentity_SetXboxPairwiseID(ref self, pszString); + } else { + return NativeMethodsUnderlying.SteamAPI_SteamNetworkingIdentity_SetXboxPairwiseID(ref self, pszString); + } + } + + public static IntPtr SteamAPI_SteamNetworkingIdentity_GetXboxPairwiseID(ref SteamNetworkingIdentity self) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.SteamAPI_SteamNetworkingIdentity_GetXboxPairwiseID(ref self); + } else { + return NativeMethodsUnderlying.SteamAPI_SteamNetworkingIdentity_GetXboxPairwiseID(ref self); + } + } + + public static void SteamAPI_SteamNetworkingIdentity_SetPSNID(ref SteamNetworkingIdentity self, ulong id) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.SteamAPI_SteamNetworkingIdentity_SetPSNID(ref self, id); + } else { + NativeMethodsUnderlying.SteamAPI_SteamNetworkingIdentity_SetPSNID(ref self, id); + } + } + + public static ulong SteamAPI_SteamNetworkingIdentity_GetPSNID(ref SteamNetworkingIdentity self) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.SteamAPI_SteamNetworkingIdentity_GetPSNID(ref self); + } else { + return NativeMethodsUnderlying.SteamAPI_SteamNetworkingIdentity_GetPSNID(ref self); + } + } + + public static IntPtr SteamAPI_SteamNetworkingIdentity_SetIPAddr(ref SteamNetworkingIdentity self, ref SteamNetworkingIPAddr addr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.SteamAPI_SteamNetworkingIdentity_SetIPAddr(ref self, ref addr); + } else { + return NativeMethodsUnderlying.SteamAPI_SteamNetworkingIdentity_SetIPAddr(ref self, ref addr); + } + } + + public static IntPtr SteamAPI_SteamNetworkingIdentity_GetIPAddr(ref SteamNetworkingIdentity self) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.SteamAPI_SteamNetworkingIdentity_GetIPAddr(ref self); + } else { + return NativeMethodsUnderlying.SteamAPI_SteamNetworkingIdentity_GetIPAddr(ref self); + } + } + + public static void SteamAPI_SteamNetworkingIdentity_SetIPv4Addr(ref SteamNetworkingIdentity self, uint nIPv4, ushort nPort) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.SteamAPI_SteamNetworkingIdentity_SetIPv4Addr(ref self, nIPv4, nPort); + } else { + NativeMethodsUnderlying.SteamAPI_SteamNetworkingIdentity_SetIPv4Addr(ref self, nIPv4, nPort); + } + } + + public static uint SteamAPI_SteamNetworkingIdentity_GetIPv4(ref SteamNetworkingIdentity self) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.SteamAPI_SteamNetworkingIdentity_GetIPv4(ref self); + } else { + return NativeMethodsUnderlying.SteamAPI_SteamNetworkingIdentity_GetIPv4(ref self); + } + } + + public static ESteamNetworkingFakeIPType SteamAPI_SteamNetworkingIdentity_GetFakeIPType(ref SteamNetworkingIdentity self) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.SteamAPI_SteamNetworkingIdentity_GetFakeIPType(ref self); + } else { + return NativeMethodsUnderlying.SteamAPI_SteamNetworkingIdentity_GetFakeIPType(ref self); + } + } + + [return: MarshalAs(UnmanagedType.I1)] + public static bool SteamAPI_SteamNetworkingIdentity_IsFakeIP(ref SteamNetworkingIdentity self) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.SteamAPI_SteamNetworkingIdentity_IsFakeIP(ref self); + } else { + return NativeMethodsUnderlying.SteamAPI_SteamNetworkingIdentity_IsFakeIP(ref self); + } + } + + public static void SteamAPI_SteamNetworkingIdentity_SetLocalHost(ref SteamNetworkingIdentity self) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.SteamAPI_SteamNetworkingIdentity_SetLocalHost(ref self); + } else { + NativeMethodsUnderlying.SteamAPI_SteamNetworkingIdentity_SetLocalHost(ref self); + } + } + + [return: MarshalAs(UnmanagedType.I1)] + public static bool SteamAPI_SteamNetworkingIdentity_IsLocalHost(ref SteamNetworkingIdentity self) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.SteamAPI_SteamNetworkingIdentity_IsLocalHost(ref self); + } else { + return NativeMethodsUnderlying.SteamAPI_SteamNetworkingIdentity_IsLocalHost(ref self); + } + } + + [return: MarshalAs(UnmanagedType.I1)] + public static bool SteamAPI_SteamNetworkingIdentity_SetGenericString(ref SteamNetworkingIdentity self, InteropHelp.UTF8StringHandle pszString) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.SteamAPI_SteamNetworkingIdentity_SetGenericString(ref self, pszString); + } else { + return NativeMethodsUnderlying.SteamAPI_SteamNetworkingIdentity_SetGenericString(ref self, pszString); + } + } + + public static IntPtr SteamAPI_SteamNetworkingIdentity_GetGenericString(ref SteamNetworkingIdentity self) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.SteamAPI_SteamNetworkingIdentity_GetGenericString(ref self); + } else { + return NativeMethodsUnderlying.SteamAPI_SteamNetworkingIdentity_GetGenericString(ref self); + } + } + + [return: MarshalAs(UnmanagedType.I1)] + public static bool SteamAPI_SteamNetworkingIdentity_SetGenericBytes(ref SteamNetworkingIdentity self, [In, Out] byte[] data, uint cbLen) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.SteamAPI_SteamNetworkingIdentity_SetGenericBytes(ref self, data, cbLen); + } else { + return NativeMethodsUnderlying.SteamAPI_SteamNetworkingIdentity_SetGenericBytes(ref self, data, cbLen); + } + } + + public static IntPtr SteamAPI_SteamNetworkingIdentity_GetGenericBytes(ref SteamNetworkingIdentity self, out int cbLen) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.SteamAPI_SteamNetworkingIdentity_GetGenericBytes(ref self, out cbLen); + } else { + return NativeMethodsUnderlying.SteamAPI_SteamNetworkingIdentity_GetGenericBytes(ref self, out cbLen); + } + } + + [return: MarshalAs(UnmanagedType.I1)] + public static bool SteamAPI_SteamNetworkingIdentity_IsEqualTo(ref SteamNetworkingIdentity self, ref SteamNetworkingIdentity x) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.SteamAPI_SteamNetworkingIdentity_IsEqualTo(ref self, ref x); + } else { + return NativeMethodsUnderlying.SteamAPI_SteamNetworkingIdentity_IsEqualTo(ref self, ref x); + } + } + + public static void SteamAPI_SteamNetworkingIdentity_ToString(ref SteamNetworkingIdentity self, IntPtr buf, uint cbBuf) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.SteamAPI_SteamNetworkingIdentity_ToString(ref self, buf, cbBuf); + } else { + NativeMethodsUnderlying.SteamAPI_SteamNetworkingIdentity_ToString(ref self, buf, cbBuf); + } + } + + [return: MarshalAs(UnmanagedType.I1)] + public static bool SteamAPI_SteamNetworkingIdentity_ParseString(ref SteamNetworkingIdentity self, InteropHelp.UTF8StringHandle pszStr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.SteamAPI_SteamNetworkingIdentity_ParseString(ref self, pszStr); + } else { + return NativeMethodsUnderlying.SteamAPI_SteamNetworkingIdentity_ParseString(ref self, pszStr); + } + } + #endregion + #region SteamNetworkingMessage_t Accessors + public static void SteamAPI_SteamNetworkingMessage_t_Release(IntPtr self) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.SteamAPI_SteamNetworkingMessage_t_Release(self); + } else { + NativeMethodsUnderlying.SteamAPI_SteamNetworkingMessage_t_Release(self); + } + } + #endregion + #region ISteamNetworkingConnectionSignaling Accessors + [return: MarshalAs(UnmanagedType.I1)] + public static bool SteamAPI_ISteamNetworkingConnectionSignaling_SendSignal(ref ISteamNetworkingConnectionSignaling self, HSteamNetConnection hConn, ref SteamNetConnectionInfo_t info, IntPtr pMsg, int cbMsg) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.SteamAPI_ISteamNetworkingConnectionSignaling_SendSignal(ref self, hConn, ref info, pMsg, cbMsg); + } else { + return NativeMethodsUnderlying.SteamAPI_ISteamNetworkingConnectionSignaling_SendSignal(ref self, hConn, ref info, pMsg, cbMsg); + } + } + + public static void SteamAPI_ISteamNetworkingConnectionSignaling_Release(ref ISteamNetworkingConnectionSignaling self) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.SteamAPI_ISteamNetworkingConnectionSignaling_Release(ref self); + } else { + NativeMethodsUnderlying.SteamAPI_ISteamNetworkingConnectionSignaling_Release(ref self); + } + } + #endregion + #region ISteamNetworkingSignalingRecvContext Accessors + public static IntPtr SteamAPI_ISteamNetworkingSignalingRecvContext_OnConnectRequest(ref ISteamNetworkingSignalingRecvContext self, + HSteamNetConnection hConn, ref SteamNetworkingIdentity identityPeer, int nLocalVirtualPort) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.SteamAPI_ISteamNetworkingSignalingRecvContext_OnConnectRequest(ref self, hConn, ref identityPeer, nLocalVirtualPort); + } else { + return NativeMethodsUnderlying.SteamAPI_ISteamNetworkingSignalingRecvContext_OnConnectRequest(ref self, hConn, ref identityPeer, nLocalVirtualPort); + } + } + + public static void SteamAPI_ISteamNetworkingSignalingRecvContext_SendRejectionSignal(ref ISteamNetworkingSignalingRecvContext self, + ref SteamNetworkingIdentity identityPeer, IntPtr pMsg, int cbMsg) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.SteamAPI_ISteamNetworkingSignalingRecvContext_SendRejectionSignal(ref self, ref identityPeer, pMsg, cbMsg); + } else { + NativeMethodsUnderlying.SteamAPI_ISteamNetworkingSignalingRecvContext_SendRejectionSignal(ref self, ref identityPeer, pMsg, cbMsg); + } + } + #endregion + #region steamencryptedappticket.h + [return: MarshalAs(UnmanagedType.I1)] + public static bool SteamEncryptedAppTicket_BDecryptTicket([In, Out] byte[] rgubTicketEncrypted, uint cubTicketEncrypted, + [In, Out] byte[] rgubTicketDecrypted, ref uint pcubTicketDecrypted, + [MarshalAs(UnmanagedType.LPArray, SizeConst=Constants.k_nSteamEncryptedAppTicketSymmetricKeyLen)] byte[] rgubKey, int cubKey) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.SteamEncryptedAppTicket_BDecryptTicket(rgubTicketEncrypted, cubTicketEncrypted, rgubTicketDecrypted, ref pcubTicketDecrypted, + rgubKey, cubKey); + } else { + return NativeMethodsUnderlying.SteamEncryptedAppTicket_BDecryptTicket(rgubTicketEncrypted, cubTicketEncrypted, rgubTicketDecrypted, ref pcubTicketDecrypted, + rgubKey, cubKey); + } + } + + [return: MarshalAs(UnmanagedType.I1)] + public static bool SteamEncryptedAppTicket_BIsTicketForApp([In, Out] byte[] rgubTicketDecrypted, uint cubTicketDecrypted, AppId_t nAppID) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.SteamEncryptedAppTicket_BIsTicketForApp(rgubTicketDecrypted, cubTicketDecrypted, nAppID); + } else { + return NativeMethodsUnderlying.SteamEncryptedAppTicket_BIsTicketForApp(rgubTicketDecrypted, cubTicketDecrypted, nAppID); + } + } + + public static uint SteamEncryptedAppTicket_GetTicketIssueTime([In, Out] byte[] rgubTicketDecrypted, uint cubTicketDecrypted) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.SteamEncryptedAppTicket_GetTicketIssueTime(rgubTicketDecrypted, cubTicketDecrypted); + } else { + return NativeMethodsUnderlying.SteamEncryptedAppTicket_GetTicketIssueTime(rgubTicketDecrypted, cubTicketDecrypted); + } + } + + public static void SteamEncryptedAppTicket_GetTicketSteamID([In, Out] byte[] rgubTicketDecrypted, uint cubTicketDecrypted, out CSteamID psteamID) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.SteamEncryptedAppTicket_GetTicketSteamID(rgubTicketDecrypted, cubTicketDecrypted, out psteamID); + } else { + NativeMethodsUnderlying.SteamEncryptedAppTicket_GetTicketSteamID(rgubTicketDecrypted, cubTicketDecrypted, out psteamID); + } + } + + public static uint SteamEncryptedAppTicket_GetTicketAppID([In, Out] byte[] rgubTicketDecrypted, uint cubTicketDecrypted) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.SteamEncryptedAppTicket_GetTicketAppID(rgubTicketDecrypted, cubTicketDecrypted); + } else { + return NativeMethodsUnderlying.SteamEncryptedAppTicket_GetTicketAppID(rgubTicketDecrypted, cubTicketDecrypted); + } + } + + [return: MarshalAs(UnmanagedType.I1)] + public static bool SteamEncryptedAppTicket_BUserOwnsAppInTicket([In, Out] byte[] rgubTicketDecrypted, uint cubTicketDecrypted, AppId_t nAppID) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.SteamEncryptedAppTicket_BUserOwnsAppInTicket(rgubTicketDecrypted, cubTicketDecrypted, nAppID); + } else { + return NativeMethodsUnderlying.SteamEncryptedAppTicket_BUserOwnsAppInTicket(rgubTicketDecrypted, cubTicketDecrypted, nAppID); + } + } + + [return: MarshalAs(UnmanagedType.I1)] + public static bool SteamEncryptedAppTicket_BUserIsVacBanned([In, Out] byte[] rgubTicketDecrypted, uint cubTicketDecrypted) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.SteamEncryptedAppTicket_BUserIsVacBanned(rgubTicketDecrypted, cubTicketDecrypted); + } else { + return NativeMethodsUnderlying.SteamEncryptedAppTicket_BUserIsVacBanned(rgubTicketDecrypted, cubTicketDecrypted); + } + } + + public static IntPtr SteamEncryptedAppTicket_GetUserVariableData([In, Out] byte[] rgubTicketDecrypted, uint cubTicketDecrypted, out uint pcubUserData) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.SteamEncryptedAppTicket_GetUserVariableData(rgubTicketDecrypted, cubTicketDecrypted, out pcubUserData); + } else { + return NativeMethodsUnderlying.SteamEncryptedAppTicket_GetUserVariableData(rgubTicketDecrypted, cubTicketDecrypted, out pcubUserData); + } + } + + [return: MarshalAs(UnmanagedType.I1)] + public static bool SteamEncryptedAppTicket_BIsTicketSigned([In, Out] byte[] rgubTicketDecrypted, uint cubTicketDecrypted, [In, Out] byte[] pubRSAKey, uint cubRSAKey) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.SteamEncryptedAppTicket_BIsTicketSigned(rgubTicketDecrypted, cubTicketDecrypted, pubRSAKey, cubRSAKey); + } else { + return NativeMethodsUnderlying.SteamEncryptedAppTicket_BIsTicketSigned(rgubTicketDecrypted, cubTicketDecrypted, pubRSAKey, cubRSAKey); + } + } + + [return: MarshalAs(UnmanagedType.I1)] + public static bool SteamEncryptedAppTicket_BIsLicenseBorrowed([In, Out] byte[] rgubTicketDecrypted, uint cubTicketDecrypted) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.SteamEncryptedAppTicket_BIsLicenseBorrowed(rgubTicketDecrypted, cubTicketDecrypted); + } else { + return NativeMethodsUnderlying.SteamEncryptedAppTicket_BIsLicenseBorrowed(rgubTicketDecrypted, cubTicketDecrypted); + } + } + + [return: MarshalAs(UnmanagedType.I1)] + public static bool SteamEncryptedAppTicket_BIsLicenseTemporary([In, Out] byte[] rgubTicketDecrypted, uint cubTicketDecrypted) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.SteamEncryptedAppTicket_BIsLicenseTemporary(rgubTicketDecrypted, cubTicketDecrypted); + } else { + return NativeMethodsUnderlying.SteamEncryptedAppTicket_BIsLicenseTemporary(rgubTicketDecrypted, cubTicketDecrypted); + } + } +#endregion + public static bool ISteamApps_BIsSubscribed(IntPtr instancePtr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamApps_BIsSubscribed(instancePtr); + } else { + return NativeMethodsUnderlying.ISteamApps_BIsSubscribed(instancePtr); + } + } + + public static bool ISteamApps_BIsLowViolence(IntPtr instancePtr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamApps_BIsLowViolence(instancePtr); + } else { + return NativeMethodsUnderlying.ISteamApps_BIsLowViolence(instancePtr); + } + } + + public static bool ISteamApps_BIsCybercafe(IntPtr instancePtr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamApps_BIsCybercafe(instancePtr); + } else { + return NativeMethodsUnderlying.ISteamApps_BIsCybercafe(instancePtr); + } + } + + public static bool ISteamApps_BIsVACBanned(IntPtr instancePtr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamApps_BIsVACBanned(instancePtr); + } else { + return NativeMethodsUnderlying.ISteamApps_BIsVACBanned(instancePtr); + } + } + + public static IntPtr ISteamApps_GetCurrentGameLanguage(IntPtr instancePtr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamApps_GetCurrentGameLanguage(instancePtr); + } else { + return NativeMethodsUnderlying.ISteamApps_GetCurrentGameLanguage(instancePtr); + } + } + + public static IntPtr ISteamApps_GetAvailableGameLanguages(IntPtr instancePtr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamApps_GetAvailableGameLanguages(instancePtr); + } else { + return NativeMethodsUnderlying.ISteamApps_GetAvailableGameLanguages(instancePtr); + } + } + + public static bool ISteamApps_BIsSubscribedApp(IntPtr instancePtr, AppId_t appID) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamApps_BIsSubscribedApp(instancePtr, appID); + } else { + return NativeMethodsUnderlying.ISteamApps_BIsSubscribedApp(instancePtr, appID); + } + } + + public static bool ISteamApps_BIsDlcInstalled(IntPtr instancePtr, AppId_t appID) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamApps_BIsDlcInstalled(instancePtr, appID); + } else { + return NativeMethodsUnderlying.ISteamApps_BIsDlcInstalled(instancePtr, appID); + } + } + + public static uint ISteamApps_GetEarliestPurchaseUnixTime(IntPtr instancePtr, AppId_t nAppID) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamApps_GetEarliestPurchaseUnixTime(instancePtr, nAppID); + } else { + return NativeMethodsUnderlying.ISteamApps_GetEarliestPurchaseUnixTime(instancePtr, nAppID); + } + } + + public static bool ISteamApps_BIsSubscribedFromFreeWeekend(IntPtr instancePtr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamApps_BIsSubscribedFromFreeWeekend(instancePtr); + } else { + return NativeMethodsUnderlying.ISteamApps_BIsSubscribedFromFreeWeekend(instancePtr); + } + } + + public static int ISteamApps_GetDLCCount(IntPtr instancePtr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamApps_GetDLCCount(instancePtr); + } else { + return NativeMethodsUnderlying.ISteamApps_GetDLCCount(instancePtr); + } + } + + public static bool ISteamApps_BGetDLCDataByIndex(IntPtr instancePtr, int iDLC, out AppId_t pAppID, out bool pbAvailable, IntPtr pchName, int cchNameBufferSize) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamApps_BGetDLCDataByIndex(instancePtr, iDLC, out pAppID, out pbAvailable, pchName, cchNameBufferSize); + } else { + return NativeMethodsUnderlying.ISteamApps_BGetDLCDataByIndex(instancePtr, iDLC, out pAppID, out pbAvailable, pchName, cchNameBufferSize); + } + } + + public static void ISteamApps_InstallDLC(IntPtr instancePtr, AppId_t nAppID) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamApps_InstallDLC(instancePtr, nAppID); + } else { + NativeMethodsUnderlying.ISteamApps_InstallDLC(instancePtr, nAppID); + } + } + + public static void ISteamApps_UninstallDLC(IntPtr instancePtr, AppId_t nAppID) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamApps_UninstallDLC(instancePtr, nAppID); + } else { + NativeMethodsUnderlying.ISteamApps_UninstallDLC(instancePtr, nAppID); + } + } + + public static void ISteamApps_RequestAppProofOfPurchaseKey(IntPtr instancePtr, AppId_t nAppID) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamApps_RequestAppProofOfPurchaseKey(instancePtr, nAppID); + } else { + NativeMethodsUnderlying.ISteamApps_RequestAppProofOfPurchaseKey(instancePtr, nAppID); + } + } + + public static bool ISteamApps_GetCurrentBetaName(IntPtr instancePtr, IntPtr pchName, int cchNameBufferSize) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamApps_GetCurrentBetaName(instancePtr, pchName, cchNameBufferSize); + } else { + return NativeMethodsUnderlying.ISteamApps_GetCurrentBetaName(instancePtr, pchName, cchNameBufferSize); + } + } + + public static bool ISteamApps_MarkContentCorrupt(IntPtr instancePtr, [MarshalAs(UnmanagedType.I1)] bool bMissingFilesOnly) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamApps_MarkContentCorrupt(instancePtr, bMissingFilesOnly); + } else { + return NativeMethodsUnderlying.ISteamApps_MarkContentCorrupt(instancePtr, bMissingFilesOnly); + } + } + + public static uint ISteamApps_GetInstalledDepots(IntPtr instancePtr, AppId_t appID, [In, Out] DepotId_t[] pvecDepots, uint cMaxDepots) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamApps_GetInstalledDepots(instancePtr, appID, pvecDepots, cMaxDepots); + } else { + return NativeMethodsUnderlying.ISteamApps_GetInstalledDepots(instancePtr, appID, pvecDepots, cMaxDepots); + } + } + + public static uint ISteamApps_GetAppInstallDir(IntPtr instancePtr, AppId_t appID, IntPtr pchFolder, uint cchFolderBufferSize) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamApps_GetAppInstallDir(instancePtr, appID, pchFolder, cchFolderBufferSize); + } else { + return NativeMethodsUnderlying.ISteamApps_GetAppInstallDir(instancePtr, appID, pchFolder, cchFolderBufferSize); + } + } + + public static bool ISteamApps_BIsAppInstalled(IntPtr instancePtr, AppId_t appID) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamApps_BIsAppInstalled(instancePtr, appID); + } else { + return NativeMethodsUnderlying.ISteamApps_BIsAppInstalled(instancePtr, appID); + } + } + + public static ulong ISteamApps_GetAppOwner(IntPtr instancePtr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamApps_GetAppOwner(instancePtr); + } else { + return NativeMethodsUnderlying.ISteamApps_GetAppOwner(instancePtr); + } + } + + public static IntPtr ISteamApps_GetLaunchQueryParam(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchKey) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamApps_GetLaunchQueryParam(instancePtr, pchKey); + } else { + return NativeMethodsUnderlying.ISteamApps_GetLaunchQueryParam(instancePtr, pchKey); + } + } + + public static bool ISteamApps_GetDlcDownloadProgress(IntPtr instancePtr, AppId_t nAppID, out ulong punBytesDownloaded, out ulong punBytesTotal) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamApps_GetDlcDownloadProgress(instancePtr, nAppID, out punBytesDownloaded, out punBytesTotal); + } else { + return NativeMethodsUnderlying.ISteamApps_GetDlcDownloadProgress(instancePtr, nAppID, out punBytesDownloaded, out punBytesTotal); + } + } + + public static int ISteamApps_GetAppBuildId(IntPtr instancePtr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamApps_GetAppBuildId(instancePtr); + } else { + return NativeMethodsUnderlying.ISteamApps_GetAppBuildId(instancePtr); + } + } + + public static void ISteamApps_RequestAllProofOfPurchaseKeys(IntPtr instancePtr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamApps_RequestAllProofOfPurchaseKeys(instancePtr); + } else { + NativeMethodsUnderlying.ISteamApps_RequestAllProofOfPurchaseKeys(instancePtr); + } + } + + public static ulong ISteamApps_GetFileDetails(IntPtr instancePtr, InteropHelp.UTF8StringHandle pszFileName) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamApps_GetFileDetails(instancePtr, pszFileName); + } else { + return NativeMethodsUnderlying.ISteamApps_GetFileDetails(instancePtr, pszFileName); + } + } + + public static int ISteamApps_GetLaunchCommandLine(IntPtr instancePtr, IntPtr pszCommandLine, int cubCommandLine) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamApps_GetLaunchCommandLine(instancePtr, pszCommandLine, cubCommandLine); + } else { + return NativeMethodsUnderlying.ISteamApps_GetLaunchCommandLine(instancePtr, pszCommandLine, cubCommandLine); + } + } + + public static bool ISteamApps_BIsSubscribedFromFamilySharing(IntPtr instancePtr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamApps_BIsSubscribedFromFamilySharing(instancePtr); + } else { + return NativeMethodsUnderlying.ISteamApps_BIsSubscribedFromFamilySharing(instancePtr); + } + } + + public static bool ISteamApps_BIsTimedTrial(IntPtr instancePtr, out uint punSecondsAllowed, out uint punSecondsPlayed) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamApps_BIsTimedTrial(instancePtr, out punSecondsAllowed, out punSecondsPlayed); + } else { + return NativeMethodsUnderlying.ISteamApps_BIsTimedTrial(instancePtr, out punSecondsAllowed, out punSecondsPlayed); + } + } + + public static bool ISteamApps_SetDlcContext(IntPtr instancePtr, AppId_t nAppID) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamApps_SetDlcContext(instancePtr, nAppID); + } else { + return NativeMethodsUnderlying.ISteamApps_SetDlcContext(instancePtr, nAppID); + } + } + + public static int ISteamApps_GetNumBetas(IntPtr instancePtr, out int pnAvailable, out int pnPrivate) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamApps_GetNumBetas(instancePtr, out pnAvailable, out pnPrivate); + } else { + return NativeMethodsUnderlying.ISteamApps_GetNumBetas(instancePtr, out pnAvailable, out pnPrivate); + } + } + + public static bool ISteamApps_GetBetaInfo(IntPtr instancePtr, int iBetaIndex, out uint punFlags, out uint punBuildID, IntPtr pchBetaName, int cchBetaName, IntPtr pchDescription, int cchDescription) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamApps_GetBetaInfo(instancePtr, iBetaIndex, out punFlags, out punBuildID, pchBetaName, cchBetaName, pchDescription, cchDescription); + } else { + return NativeMethodsUnderlying.ISteamApps_GetBetaInfo(instancePtr, iBetaIndex, out punFlags, out punBuildID, pchBetaName, cchBetaName, pchDescription, cchDescription); + } + } + + public static bool ISteamApps_SetActiveBeta(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchBetaName) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamApps_SetActiveBeta(instancePtr, pchBetaName); + } else { + return NativeMethodsUnderlying.ISteamApps_SetActiveBeta(instancePtr, pchBetaName); + } + } + + public static int ISteamClient_CreateSteamPipe(IntPtr instancePtr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamClient_CreateSteamPipe(instancePtr); + } else { + return NativeMethodsUnderlying.ISteamClient_CreateSteamPipe(instancePtr); + } + } + + public static bool ISteamClient_BReleaseSteamPipe(IntPtr instancePtr, HSteamPipe hSteamPipe) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamClient_BReleaseSteamPipe(instancePtr, hSteamPipe); + } else { + return NativeMethodsUnderlying.ISteamClient_BReleaseSteamPipe(instancePtr, hSteamPipe); + } + } + + public static int ISteamClient_ConnectToGlobalUser(IntPtr instancePtr, HSteamPipe hSteamPipe) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamClient_ConnectToGlobalUser(instancePtr, hSteamPipe); + } else { + return NativeMethodsUnderlying.ISteamClient_ConnectToGlobalUser(instancePtr, hSteamPipe); + } + } + + public static int ISteamClient_CreateLocalUser(IntPtr instancePtr, out HSteamPipe phSteamPipe, EAccountType eAccountType) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamClient_CreateLocalUser(instancePtr, out phSteamPipe, eAccountType); + } else { + return NativeMethodsUnderlying.ISteamClient_CreateLocalUser(instancePtr, out phSteamPipe, eAccountType); + } + } + + public static void ISteamClient_ReleaseUser(IntPtr instancePtr, HSteamPipe hSteamPipe, HSteamUser hUser) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamClient_ReleaseUser(instancePtr, hSteamPipe, hUser); + } else { + NativeMethodsUnderlying.ISteamClient_ReleaseUser(instancePtr, hSteamPipe, hUser); + } + } + + public static IntPtr ISteamClient_GetISteamUser(IntPtr instancePtr, HSteamUser hSteamUser, HSteamPipe hSteamPipe, InteropHelp.UTF8StringHandle pchVersion) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamClient_GetISteamUser(instancePtr, hSteamUser, hSteamPipe, pchVersion); + } else { + return NativeMethodsUnderlying.ISteamClient_GetISteamUser(instancePtr, hSteamUser, hSteamPipe, pchVersion); + } + } + + public static IntPtr ISteamClient_GetISteamGameServer(IntPtr instancePtr, HSteamUser hSteamUser, HSteamPipe hSteamPipe, InteropHelp.UTF8StringHandle pchVersion) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamClient_GetISteamGameServer(instancePtr, hSteamUser, hSteamPipe, pchVersion); + } else { + return NativeMethodsUnderlying.ISteamClient_GetISteamGameServer(instancePtr, hSteamUser, hSteamPipe, pchVersion); + } + } + + public static void ISteamClient_SetLocalIPBinding(IntPtr instancePtr, ref SteamIPAddress_t unIP, ushort usPort) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamClient_SetLocalIPBinding(instancePtr, ref unIP, usPort); + } else { + NativeMethodsUnderlying.ISteamClient_SetLocalIPBinding(instancePtr, ref unIP, usPort); + } + } + + public static IntPtr ISteamClient_GetISteamFriends(IntPtr instancePtr, HSteamUser hSteamUser, HSteamPipe hSteamPipe, InteropHelp.UTF8StringHandle pchVersion) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamClient_GetISteamFriends(instancePtr, hSteamUser, hSteamPipe, pchVersion); + } else { + return NativeMethodsUnderlying.ISteamClient_GetISteamFriends(instancePtr, hSteamUser, hSteamPipe, pchVersion); + } + } + + public static IntPtr ISteamClient_GetISteamUtils(IntPtr instancePtr, HSteamPipe hSteamPipe, InteropHelp.UTF8StringHandle pchVersion) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamClient_GetISteamUtils(instancePtr, hSteamPipe, pchVersion); + } else { + return NativeMethodsUnderlying.ISteamClient_GetISteamUtils(instancePtr, hSteamPipe, pchVersion); + } + } + + public static IntPtr ISteamClient_GetISteamMatchmaking(IntPtr instancePtr, HSteamUser hSteamUser, HSteamPipe hSteamPipe, InteropHelp.UTF8StringHandle pchVersion) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamClient_GetISteamMatchmaking(instancePtr, hSteamUser, hSteamPipe, pchVersion); + } else { + return NativeMethodsUnderlying.ISteamClient_GetISteamMatchmaking(instancePtr, hSteamUser, hSteamPipe, pchVersion); + } + } + + public static IntPtr ISteamClient_GetISteamMatchmakingServers(IntPtr instancePtr, HSteamUser hSteamUser, HSteamPipe hSteamPipe, InteropHelp.UTF8StringHandle pchVersion) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamClient_GetISteamMatchmakingServers(instancePtr, hSteamUser, hSteamPipe, pchVersion); + } else { + return NativeMethodsUnderlying.ISteamClient_GetISteamMatchmakingServers(instancePtr, hSteamUser, hSteamPipe, pchVersion); + } + } + + public static IntPtr ISteamClient_GetISteamGenericInterface(IntPtr instancePtr, HSteamUser hSteamUser, HSteamPipe hSteamPipe, InteropHelp.UTF8StringHandle pchVersion) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamClient_GetISteamGenericInterface(instancePtr, hSteamUser, hSteamPipe, pchVersion); + } else { + return NativeMethodsUnderlying.ISteamClient_GetISteamGenericInterface(instancePtr, hSteamUser, hSteamPipe, pchVersion); + } + } + + public static IntPtr ISteamClient_GetISteamUserStats(IntPtr instancePtr, HSteamUser hSteamUser, HSteamPipe hSteamPipe, InteropHelp.UTF8StringHandle pchVersion) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamClient_GetISteamUserStats(instancePtr, hSteamUser, hSteamPipe, pchVersion); + } else { + return NativeMethodsUnderlying.ISteamClient_GetISteamUserStats(instancePtr, hSteamUser, hSteamPipe, pchVersion); + } + } + + public static IntPtr ISteamClient_GetISteamGameServerStats(IntPtr instancePtr, HSteamUser hSteamuser, HSteamPipe hSteamPipe, InteropHelp.UTF8StringHandle pchVersion) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamClient_GetISteamGameServerStats(instancePtr, hSteamuser, hSteamPipe, pchVersion); + } else { + return NativeMethodsUnderlying.ISteamClient_GetISteamGameServerStats(instancePtr, hSteamuser, hSteamPipe, pchVersion); + } + } + + public static IntPtr ISteamClient_GetISteamApps(IntPtr instancePtr, HSteamUser hSteamUser, HSteamPipe hSteamPipe, InteropHelp.UTF8StringHandle pchVersion) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamClient_GetISteamApps(instancePtr, hSteamUser, hSteamPipe, pchVersion); + } else { + return NativeMethodsUnderlying.ISteamClient_GetISteamApps(instancePtr, hSteamUser, hSteamPipe, pchVersion); + } + } + + public static IntPtr ISteamClient_GetISteamNetworking(IntPtr instancePtr, HSteamUser hSteamUser, HSteamPipe hSteamPipe, InteropHelp.UTF8StringHandle pchVersion) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamClient_GetISteamNetworking(instancePtr, hSteamUser, hSteamPipe, pchVersion); + } else { + return NativeMethodsUnderlying.ISteamClient_GetISteamNetworking(instancePtr, hSteamUser, hSteamPipe, pchVersion); + } + } + + public static IntPtr ISteamClient_GetISteamRemoteStorage(IntPtr instancePtr, HSteamUser hSteamuser, HSteamPipe hSteamPipe, InteropHelp.UTF8StringHandle pchVersion) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamClient_GetISteamRemoteStorage(instancePtr, hSteamuser, hSteamPipe, pchVersion); + } else { + return NativeMethodsUnderlying.ISteamClient_GetISteamRemoteStorage(instancePtr, hSteamuser, hSteamPipe, pchVersion); + } + } + + public static IntPtr ISteamClient_GetISteamScreenshots(IntPtr instancePtr, HSteamUser hSteamuser, HSteamPipe hSteamPipe, InteropHelp.UTF8StringHandle pchVersion) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamClient_GetISteamScreenshots(instancePtr, hSteamuser, hSteamPipe, pchVersion); + } else { + return NativeMethodsUnderlying.ISteamClient_GetISteamScreenshots(instancePtr, hSteamuser, hSteamPipe, pchVersion); + } + } + + public static IntPtr ISteamClient_GetISteamGameSearch(IntPtr instancePtr, HSteamUser hSteamuser, HSteamPipe hSteamPipe, InteropHelp.UTF8StringHandle pchVersion) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamClient_GetISteamGameSearch(instancePtr, hSteamuser, hSteamPipe, pchVersion); + } else { + return NativeMethodsUnderlying.ISteamClient_GetISteamGameSearch(instancePtr, hSteamuser, hSteamPipe, pchVersion); + } + } + + public static uint ISteamClient_GetIPCCallCount(IntPtr instancePtr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamClient_GetIPCCallCount(instancePtr); + } else { + return NativeMethodsUnderlying.ISteamClient_GetIPCCallCount(instancePtr); + } + } + + public static void ISteamClient_SetWarningMessageHook(IntPtr instancePtr, SteamAPIWarningMessageHook_t pFunction) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamClient_SetWarningMessageHook(instancePtr, pFunction); + } else { + NativeMethodsUnderlying.ISteamClient_SetWarningMessageHook(instancePtr, pFunction); + } + } + + public static bool ISteamClient_BShutdownIfAllPipesClosed(IntPtr instancePtr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamClient_BShutdownIfAllPipesClosed(instancePtr); + } else { + return NativeMethodsUnderlying.ISteamClient_BShutdownIfAllPipesClosed(instancePtr); + } + } + + public static IntPtr ISteamClient_GetISteamHTTP(IntPtr instancePtr, HSteamUser hSteamuser, HSteamPipe hSteamPipe, InteropHelp.UTF8StringHandle pchVersion) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamClient_GetISteamHTTP(instancePtr, hSteamuser, hSteamPipe, pchVersion); + } else { + return NativeMethodsUnderlying.ISteamClient_GetISteamHTTP(instancePtr, hSteamuser, hSteamPipe, pchVersion); + } + } + + public static IntPtr ISteamClient_GetISteamController(IntPtr instancePtr, HSteamUser hSteamUser, HSteamPipe hSteamPipe, InteropHelp.UTF8StringHandle pchVersion) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamClient_GetISteamController(instancePtr, hSteamUser, hSteamPipe, pchVersion); + } else { + return NativeMethodsUnderlying.ISteamClient_GetISteamController(instancePtr, hSteamUser, hSteamPipe, pchVersion); + } + } + + public static IntPtr ISteamClient_GetISteamUGC(IntPtr instancePtr, HSteamUser hSteamUser, HSteamPipe hSteamPipe, InteropHelp.UTF8StringHandle pchVersion) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamClient_GetISteamUGC(instancePtr, hSteamUser, hSteamPipe, pchVersion); + } else { + return NativeMethodsUnderlying.ISteamClient_GetISteamUGC(instancePtr, hSteamUser, hSteamPipe, pchVersion); + } + } + + public static IntPtr ISteamClient_GetISteamMusic(IntPtr instancePtr, HSteamUser hSteamuser, HSteamPipe hSteamPipe, InteropHelp.UTF8StringHandle pchVersion) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamClient_GetISteamMusic(instancePtr, hSteamuser, hSteamPipe, pchVersion); + } else { + return NativeMethodsUnderlying.ISteamClient_GetISteamMusic(instancePtr, hSteamuser, hSteamPipe, pchVersion); + } + } + + public static IntPtr ISteamClient_GetISteamMusicRemote(IntPtr instancePtr, HSteamUser hSteamuser, HSteamPipe hSteamPipe, InteropHelp.UTF8StringHandle pchVersion) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamClient_GetISteamMusicRemote(instancePtr, hSteamuser, hSteamPipe, pchVersion); + } else { + return NativeMethodsUnderlying.ISteamClient_GetISteamMusicRemote(instancePtr, hSteamuser, hSteamPipe, pchVersion); + } + } + + public static IntPtr ISteamClient_GetISteamHTMLSurface(IntPtr instancePtr, HSteamUser hSteamuser, HSteamPipe hSteamPipe, InteropHelp.UTF8StringHandle pchVersion) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamClient_GetISteamHTMLSurface(instancePtr, hSteamuser, hSteamPipe, pchVersion); + } else { + return NativeMethodsUnderlying.ISteamClient_GetISteamHTMLSurface(instancePtr, hSteamuser, hSteamPipe, pchVersion); + } + } + + public static IntPtr ISteamClient_GetISteamInventory(IntPtr instancePtr, HSteamUser hSteamuser, HSteamPipe hSteamPipe, InteropHelp.UTF8StringHandle pchVersion) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamClient_GetISteamInventory(instancePtr, hSteamuser, hSteamPipe, pchVersion); + } else { + return NativeMethodsUnderlying.ISteamClient_GetISteamInventory(instancePtr, hSteamuser, hSteamPipe, pchVersion); + } + } + + public static IntPtr ISteamClient_GetISteamVideo(IntPtr instancePtr, HSteamUser hSteamuser, HSteamPipe hSteamPipe, InteropHelp.UTF8StringHandle pchVersion) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamClient_GetISteamVideo(instancePtr, hSteamuser, hSteamPipe, pchVersion); + } else { + return NativeMethodsUnderlying.ISteamClient_GetISteamVideo(instancePtr, hSteamuser, hSteamPipe, pchVersion); + } + } + + public static IntPtr ISteamClient_GetISteamParentalSettings(IntPtr instancePtr, HSteamUser hSteamuser, HSteamPipe hSteamPipe, InteropHelp.UTF8StringHandle pchVersion) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamClient_GetISteamParentalSettings(instancePtr, hSteamuser, hSteamPipe, pchVersion); + } else { + return NativeMethodsUnderlying.ISteamClient_GetISteamParentalSettings(instancePtr, hSteamuser, hSteamPipe, pchVersion); + } + } + + public static IntPtr ISteamClient_GetISteamInput(IntPtr instancePtr, HSteamUser hSteamUser, HSteamPipe hSteamPipe, InteropHelp.UTF8StringHandle pchVersion) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamClient_GetISteamInput(instancePtr, hSteamUser, hSteamPipe, pchVersion); + } else { + return NativeMethodsUnderlying.ISteamClient_GetISteamInput(instancePtr, hSteamUser, hSteamPipe, pchVersion); + } + } + + public static IntPtr ISteamClient_GetISteamParties(IntPtr instancePtr, HSteamUser hSteamUser, HSteamPipe hSteamPipe, InteropHelp.UTF8StringHandle pchVersion) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamClient_GetISteamParties(instancePtr, hSteamUser, hSteamPipe, pchVersion); + } else { + return NativeMethodsUnderlying.ISteamClient_GetISteamParties(instancePtr, hSteamUser, hSteamPipe, pchVersion); + } + } + + public static IntPtr ISteamClient_GetISteamRemotePlay(IntPtr instancePtr, HSteamUser hSteamUser, HSteamPipe hSteamPipe, InteropHelp.UTF8StringHandle pchVersion) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamClient_GetISteamRemotePlay(instancePtr, hSteamUser, hSteamPipe, pchVersion); + } else { + return NativeMethodsUnderlying.ISteamClient_GetISteamRemotePlay(instancePtr, hSteamUser, hSteamPipe, pchVersion); + } + } + + public static IntPtr ISteamFriends_GetPersonaName(IntPtr instancePtr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamFriends_GetPersonaName(instancePtr); + } else { + return NativeMethodsUnderlying.ISteamFriends_GetPersonaName(instancePtr); + } + } + + public static ulong ISteamFriends_SetPersonaName(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchPersonaName) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamFriends_SetPersonaName(instancePtr, pchPersonaName); + } else { + return NativeMethodsUnderlying.ISteamFriends_SetPersonaName(instancePtr, pchPersonaName); + } + } + + public static EPersonaState ISteamFriends_GetPersonaState(IntPtr instancePtr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamFriends_GetPersonaState(instancePtr); + } else { + return NativeMethodsUnderlying.ISteamFriends_GetPersonaState(instancePtr); + } + } + + public static int ISteamFriends_GetFriendCount(IntPtr instancePtr, EFriendFlags iFriendFlags) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamFriends_GetFriendCount(instancePtr, iFriendFlags); + } else { + return NativeMethodsUnderlying.ISteamFriends_GetFriendCount(instancePtr, iFriendFlags); + } + } + + public static ulong ISteamFriends_GetFriendByIndex(IntPtr instancePtr, int iFriend, EFriendFlags iFriendFlags) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamFriends_GetFriendByIndex(instancePtr, iFriend, iFriendFlags); + } else { + return NativeMethodsUnderlying.ISteamFriends_GetFriendByIndex(instancePtr, iFriend, iFriendFlags); + } + } + + public static EFriendRelationship ISteamFriends_GetFriendRelationship(IntPtr instancePtr, CSteamID steamIDFriend) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamFriends_GetFriendRelationship(instancePtr, steamIDFriend); + } else { + return NativeMethodsUnderlying.ISteamFriends_GetFriendRelationship(instancePtr, steamIDFriend); + } + } + + public static EPersonaState ISteamFriends_GetFriendPersonaState(IntPtr instancePtr, CSteamID steamIDFriend) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamFriends_GetFriendPersonaState(instancePtr, steamIDFriend); + } else { + return NativeMethodsUnderlying.ISteamFriends_GetFriendPersonaState(instancePtr, steamIDFriend); + } + } + + public static IntPtr ISteamFriends_GetFriendPersonaName(IntPtr instancePtr, CSteamID steamIDFriend) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamFriends_GetFriendPersonaName(instancePtr, steamIDFriend); + } else { + return NativeMethodsUnderlying.ISteamFriends_GetFriendPersonaName(instancePtr, steamIDFriend); + } + } + + public static bool ISteamFriends_GetFriendGamePlayed(IntPtr instancePtr, CSteamID steamIDFriend, out FriendGameInfo_t pFriendGameInfo) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamFriends_GetFriendGamePlayed(instancePtr, steamIDFriend, out pFriendGameInfo); + } else { + return NativeMethodsUnderlying.ISteamFriends_GetFriendGamePlayed(instancePtr, steamIDFriend, out pFriendGameInfo); + } + } + + public static IntPtr ISteamFriends_GetFriendPersonaNameHistory(IntPtr instancePtr, CSteamID steamIDFriend, int iPersonaName) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamFriends_GetFriendPersonaNameHistory(instancePtr, steamIDFriend, iPersonaName); + } else { + return NativeMethodsUnderlying.ISteamFriends_GetFriendPersonaNameHistory(instancePtr, steamIDFriend, iPersonaName); + } + } + + public static int ISteamFriends_GetFriendSteamLevel(IntPtr instancePtr, CSteamID steamIDFriend) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamFriends_GetFriendSteamLevel(instancePtr, steamIDFriend); + } else { + return NativeMethodsUnderlying.ISteamFriends_GetFriendSteamLevel(instancePtr, steamIDFriend); + } + } + + public static IntPtr ISteamFriends_GetPlayerNickname(IntPtr instancePtr, CSteamID steamIDPlayer) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamFriends_GetPlayerNickname(instancePtr, steamIDPlayer); + } else { + return NativeMethodsUnderlying.ISteamFriends_GetPlayerNickname(instancePtr, steamIDPlayer); + } + } + + public static int ISteamFriends_GetFriendsGroupCount(IntPtr instancePtr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamFriends_GetFriendsGroupCount(instancePtr); + } else { + return NativeMethodsUnderlying.ISteamFriends_GetFriendsGroupCount(instancePtr); + } + } + + public static short ISteamFriends_GetFriendsGroupIDByIndex(IntPtr instancePtr, int iFG) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamFriends_GetFriendsGroupIDByIndex(instancePtr, iFG); + } else { + return NativeMethodsUnderlying.ISteamFriends_GetFriendsGroupIDByIndex(instancePtr, iFG); + } + } + + public static IntPtr ISteamFriends_GetFriendsGroupName(IntPtr instancePtr, FriendsGroupID_t friendsGroupID) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamFriends_GetFriendsGroupName(instancePtr, friendsGroupID); + } else { + return NativeMethodsUnderlying.ISteamFriends_GetFriendsGroupName(instancePtr, friendsGroupID); + } + } + + public static int ISteamFriends_GetFriendsGroupMembersCount(IntPtr instancePtr, FriendsGroupID_t friendsGroupID) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamFriends_GetFriendsGroupMembersCount(instancePtr, friendsGroupID); + } else { + return NativeMethodsUnderlying.ISteamFriends_GetFriendsGroupMembersCount(instancePtr, friendsGroupID); + } + } + + public static void ISteamFriends_GetFriendsGroupMembersList(IntPtr instancePtr, FriendsGroupID_t friendsGroupID, [In, Out] CSteamID[] pOutSteamIDMembers, int nMembersCount) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamFriends_GetFriendsGroupMembersList(instancePtr, friendsGroupID, pOutSteamIDMembers, nMembersCount); + } else { + NativeMethodsUnderlying.ISteamFriends_GetFriendsGroupMembersList(instancePtr, friendsGroupID, pOutSteamIDMembers, nMembersCount); + } + } + + public static bool ISteamFriends_HasFriend(IntPtr instancePtr, CSteamID steamIDFriend, EFriendFlags iFriendFlags) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamFriends_HasFriend(instancePtr, steamIDFriend, iFriendFlags); + } else { + return NativeMethodsUnderlying.ISteamFriends_HasFriend(instancePtr, steamIDFriend, iFriendFlags); + } + } + + public static int ISteamFriends_GetClanCount(IntPtr instancePtr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamFriends_GetClanCount(instancePtr); + } else { + return NativeMethodsUnderlying.ISteamFriends_GetClanCount(instancePtr); + } + } + + public static ulong ISteamFriends_GetClanByIndex(IntPtr instancePtr, int iClan) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamFriends_GetClanByIndex(instancePtr, iClan); + } else { + return NativeMethodsUnderlying.ISteamFriends_GetClanByIndex(instancePtr, iClan); + } + } + + public static IntPtr ISteamFriends_GetClanName(IntPtr instancePtr, CSteamID steamIDClan) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamFriends_GetClanName(instancePtr, steamIDClan); + } else { + return NativeMethodsUnderlying.ISteamFriends_GetClanName(instancePtr, steamIDClan); + } + } + + public static IntPtr ISteamFriends_GetClanTag(IntPtr instancePtr, CSteamID steamIDClan) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamFriends_GetClanTag(instancePtr, steamIDClan); + } else { + return NativeMethodsUnderlying.ISteamFriends_GetClanTag(instancePtr, steamIDClan); + } + } + + public static bool ISteamFriends_GetClanActivityCounts(IntPtr instancePtr, CSteamID steamIDClan, out int pnOnline, out int pnInGame, out int pnChatting) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamFriends_GetClanActivityCounts(instancePtr, steamIDClan, out pnOnline, out pnInGame, out pnChatting); + } else { + return NativeMethodsUnderlying.ISteamFriends_GetClanActivityCounts(instancePtr, steamIDClan, out pnOnline, out pnInGame, out pnChatting); + } + } + + public static ulong ISteamFriends_DownloadClanActivityCounts(IntPtr instancePtr, [In, Out] CSteamID[] psteamIDClans, int cClansToRequest) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamFriends_DownloadClanActivityCounts(instancePtr, psteamIDClans, cClansToRequest); + } else { + return NativeMethodsUnderlying.ISteamFriends_DownloadClanActivityCounts(instancePtr, psteamIDClans, cClansToRequest); + } + } + + public static int ISteamFriends_GetFriendCountFromSource(IntPtr instancePtr, CSteamID steamIDSource) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamFriends_GetFriendCountFromSource(instancePtr, steamIDSource); + } else { + return NativeMethodsUnderlying.ISteamFriends_GetFriendCountFromSource(instancePtr, steamIDSource); + } + } + + public static ulong ISteamFriends_GetFriendFromSourceByIndex(IntPtr instancePtr, CSteamID steamIDSource, int iFriend) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamFriends_GetFriendFromSourceByIndex(instancePtr, steamIDSource, iFriend); + } else { + return NativeMethodsUnderlying.ISteamFriends_GetFriendFromSourceByIndex(instancePtr, steamIDSource, iFriend); + } + } + + public static bool ISteamFriends_IsUserInSource(IntPtr instancePtr, CSteamID steamIDUser, CSteamID steamIDSource) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamFriends_IsUserInSource(instancePtr, steamIDUser, steamIDSource); + } else { + return NativeMethodsUnderlying.ISteamFriends_IsUserInSource(instancePtr, steamIDUser, steamIDSource); + } + } + + public static void ISteamFriends_SetInGameVoiceSpeaking(IntPtr instancePtr, CSteamID steamIDUser, [MarshalAs(UnmanagedType.I1)] bool bSpeaking) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamFriends_SetInGameVoiceSpeaking(instancePtr, steamIDUser, bSpeaking); + } else { + NativeMethodsUnderlying.ISteamFriends_SetInGameVoiceSpeaking(instancePtr, steamIDUser, bSpeaking); + } + } + + public static void ISteamFriends_ActivateGameOverlay(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchDialog) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamFriends_ActivateGameOverlay(instancePtr, pchDialog); + } else { + NativeMethodsUnderlying.ISteamFriends_ActivateGameOverlay(instancePtr, pchDialog); + } + } + + public static void ISteamFriends_ActivateGameOverlayToUser(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchDialog, CSteamID steamID) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamFriends_ActivateGameOverlayToUser(instancePtr, pchDialog, steamID); + } else { + NativeMethodsUnderlying.ISteamFriends_ActivateGameOverlayToUser(instancePtr, pchDialog, steamID); + } + } + + public static void ISteamFriends_ActivateGameOverlayToWebPage(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchURL, EActivateGameOverlayToWebPageMode eMode) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamFriends_ActivateGameOverlayToWebPage(instancePtr, pchURL, eMode); + } else { + NativeMethodsUnderlying.ISteamFriends_ActivateGameOverlayToWebPage(instancePtr, pchURL, eMode); + } + } + + public static void ISteamFriends_ActivateGameOverlayToStore(IntPtr instancePtr, AppId_t nAppID, EOverlayToStoreFlag eFlag) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamFriends_ActivateGameOverlayToStore(instancePtr, nAppID, eFlag); + } else { + NativeMethodsUnderlying.ISteamFriends_ActivateGameOverlayToStore(instancePtr, nAppID, eFlag); + } + } + + public static void ISteamFriends_SetPlayedWith(IntPtr instancePtr, CSteamID steamIDUserPlayedWith) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamFriends_SetPlayedWith(instancePtr, steamIDUserPlayedWith); + } else { + NativeMethodsUnderlying.ISteamFriends_SetPlayedWith(instancePtr, steamIDUserPlayedWith); + } + } + + public static void ISteamFriends_ActivateGameOverlayInviteDialog(IntPtr instancePtr, CSteamID steamIDLobby) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamFriends_ActivateGameOverlayInviteDialog(instancePtr, steamIDLobby); + } else { + NativeMethodsUnderlying.ISteamFriends_ActivateGameOverlayInviteDialog(instancePtr, steamIDLobby); + } + } + + public static int ISteamFriends_GetSmallFriendAvatar(IntPtr instancePtr, CSteamID steamIDFriend) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamFriends_GetSmallFriendAvatar(instancePtr, steamIDFriend); + } else { + return NativeMethodsUnderlying.ISteamFriends_GetSmallFriendAvatar(instancePtr, steamIDFriend); + } + } + + public static int ISteamFriends_GetMediumFriendAvatar(IntPtr instancePtr, CSteamID steamIDFriend) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamFriends_GetMediumFriendAvatar(instancePtr, steamIDFriend); + } else { + return NativeMethodsUnderlying.ISteamFriends_GetMediumFriendAvatar(instancePtr, steamIDFriend); + } + } + + public static int ISteamFriends_GetLargeFriendAvatar(IntPtr instancePtr, CSteamID steamIDFriend) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamFriends_GetLargeFriendAvatar(instancePtr, steamIDFriend); + } else { + return NativeMethodsUnderlying.ISteamFriends_GetLargeFriendAvatar(instancePtr, steamIDFriend); + } + } + + public static bool ISteamFriends_RequestUserInformation(IntPtr instancePtr, CSteamID steamIDUser, [MarshalAs(UnmanagedType.I1)] bool bRequireNameOnly) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamFriends_RequestUserInformation(instancePtr, steamIDUser, bRequireNameOnly); + } else { + return NativeMethodsUnderlying.ISteamFriends_RequestUserInformation(instancePtr, steamIDUser, bRequireNameOnly); + } + } + + public static ulong ISteamFriends_RequestClanOfficerList(IntPtr instancePtr, CSteamID steamIDClan) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamFriends_RequestClanOfficerList(instancePtr, steamIDClan); + } else { + return NativeMethodsUnderlying.ISteamFriends_RequestClanOfficerList(instancePtr, steamIDClan); + } + } + + public static ulong ISteamFriends_GetClanOwner(IntPtr instancePtr, CSteamID steamIDClan) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamFriends_GetClanOwner(instancePtr, steamIDClan); + } else { + return NativeMethodsUnderlying.ISteamFriends_GetClanOwner(instancePtr, steamIDClan); + } + } + + public static int ISteamFriends_GetClanOfficerCount(IntPtr instancePtr, CSteamID steamIDClan) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamFriends_GetClanOfficerCount(instancePtr, steamIDClan); + } else { + return NativeMethodsUnderlying.ISteamFriends_GetClanOfficerCount(instancePtr, steamIDClan); + } + } + + public static ulong ISteamFriends_GetClanOfficerByIndex(IntPtr instancePtr, CSteamID steamIDClan, int iOfficer) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamFriends_GetClanOfficerByIndex(instancePtr, steamIDClan, iOfficer); + } else { + return NativeMethodsUnderlying.ISteamFriends_GetClanOfficerByIndex(instancePtr, steamIDClan, iOfficer); + } + } + + public static uint ISteamFriends_GetUserRestrictions(IntPtr instancePtr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamFriends_GetUserRestrictions(instancePtr); + } else { + return NativeMethodsUnderlying.ISteamFriends_GetUserRestrictions(instancePtr); + } + } + + public static bool ISteamFriends_SetRichPresence(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchKey, InteropHelp.UTF8StringHandle pchValue) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamFriends_SetRichPresence(instancePtr, pchKey, pchValue); + } else { + return NativeMethodsUnderlying.ISteamFriends_SetRichPresence(instancePtr, pchKey, pchValue); + } + } + + public static void ISteamFriends_ClearRichPresence(IntPtr instancePtr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamFriends_ClearRichPresence(instancePtr); + } else { + NativeMethodsUnderlying.ISteamFriends_ClearRichPresence(instancePtr); + } + } + + public static IntPtr ISteamFriends_GetFriendRichPresence(IntPtr instancePtr, CSteamID steamIDFriend, InteropHelp.UTF8StringHandle pchKey) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamFriends_GetFriendRichPresence(instancePtr, steamIDFriend, pchKey); + } else { + return NativeMethodsUnderlying.ISteamFriends_GetFriendRichPresence(instancePtr, steamIDFriend, pchKey); + } + } + + public static int ISteamFriends_GetFriendRichPresenceKeyCount(IntPtr instancePtr, CSteamID steamIDFriend) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamFriends_GetFriendRichPresenceKeyCount(instancePtr, steamIDFriend); + } else { + return NativeMethodsUnderlying.ISteamFriends_GetFriendRichPresenceKeyCount(instancePtr, steamIDFriend); + } + } + + public static IntPtr ISteamFriends_GetFriendRichPresenceKeyByIndex(IntPtr instancePtr, CSteamID steamIDFriend, int iKey) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamFriends_GetFriendRichPresenceKeyByIndex(instancePtr, steamIDFriend, iKey); + } else { + return NativeMethodsUnderlying.ISteamFriends_GetFriendRichPresenceKeyByIndex(instancePtr, steamIDFriend, iKey); + } + } + + public static void ISteamFriends_RequestFriendRichPresence(IntPtr instancePtr, CSteamID steamIDFriend) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamFriends_RequestFriendRichPresence(instancePtr, steamIDFriend); + } else { + NativeMethodsUnderlying.ISteamFriends_RequestFriendRichPresence(instancePtr, steamIDFriend); + } + } + + public static bool ISteamFriends_InviteUserToGame(IntPtr instancePtr, CSteamID steamIDFriend, InteropHelp.UTF8StringHandle pchConnectString) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamFriends_InviteUserToGame(instancePtr, steamIDFriend, pchConnectString); + } else { + return NativeMethodsUnderlying.ISteamFriends_InviteUserToGame(instancePtr, steamIDFriend, pchConnectString); + } + } + + public static int ISteamFriends_GetCoplayFriendCount(IntPtr instancePtr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamFriends_GetCoplayFriendCount(instancePtr); + } else { + return NativeMethodsUnderlying.ISteamFriends_GetCoplayFriendCount(instancePtr); + } + } + + public static ulong ISteamFriends_GetCoplayFriend(IntPtr instancePtr, int iCoplayFriend) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamFriends_GetCoplayFriend(instancePtr, iCoplayFriend); + } else { + return NativeMethodsUnderlying.ISteamFriends_GetCoplayFriend(instancePtr, iCoplayFriend); + } + } + + public static int ISteamFriends_GetFriendCoplayTime(IntPtr instancePtr, CSteamID steamIDFriend) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamFriends_GetFriendCoplayTime(instancePtr, steamIDFriend); + } else { + return NativeMethodsUnderlying.ISteamFriends_GetFriendCoplayTime(instancePtr, steamIDFriend); + } + } + + public static uint ISteamFriends_GetFriendCoplayGame(IntPtr instancePtr, CSteamID steamIDFriend) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamFriends_GetFriendCoplayGame(instancePtr, steamIDFriend); + } else { + return NativeMethodsUnderlying.ISteamFriends_GetFriendCoplayGame(instancePtr, steamIDFriend); + } + } + + public static ulong ISteamFriends_JoinClanChatRoom(IntPtr instancePtr, CSteamID steamIDClan) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamFriends_JoinClanChatRoom(instancePtr, steamIDClan); + } else { + return NativeMethodsUnderlying.ISteamFriends_JoinClanChatRoom(instancePtr, steamIDClan); + } + } + + public static bool ISteamFriends_LeaveClanChatRoom(IntPtr instancePtr, CSteamID steamIDClan) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamFriends_LeaveClanChatRoom(instancePtr, steamIDClan); + } else { + return NativeMethodsUnderlying.ISteamFriends_LeaveClanChatRoom(instancePtr, steamIDClan); + } + } + + public static int ISteamFriends_GetClanChatMemberCount(IntPtr instancePtr, CSteamID steamIDClan) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamFriends_GetClanChatMemberCount(instancePtr, steamIDClan); + } else { + return NativeMethodsUnderlying.ISteamFriends_GetClanChatMemberCount(instancePtr, steamIDClan); + } + } + + public static ulong ISteamFriends_GetChatMemberByIndex(IntPtr instancePtr, CSteamID steamIDClan, int iUser) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamFriends_GetChatMemberByIndex(instancePtr, steamIDClan, iUser); + } else { + return NativeMethodsUnderlying.ISteamFriends_GetChatMemberByIndex(instancePtr, steamIDClan, iUser); + } + } + + public static bool ISteamFriends_SendClanChatMessage(IntPtr instancePtr, CSteamID steamIDClanChat, InteropHelp.UTF8StringHandle pchText) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamFriends_SendClanChatMessage(instancePtr, steamIDClanChat, pchText); + } else { + return NativeMethodsUnderlying.ISteamFriends_SendClanChatMessage(instancePtr, steamIDClanChat, pchText); + } + } + + public static int ISteamFriends_GetClanChatMessage(IntPtr instancePtr, CSteamID steamIDClanChat, int iMessage, IntPtr prgchText, int cchTextMax, out EChatEntryType peChatEntryType, out CSteamID psteamidChatter) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamFriends_GetClanChatMessage(instancePtr, steamIDClanChat, iMessage, prgchText, cchTextMax, out peChatEntryType, out psteamidChatter); + } else { + return NativeMethodsUnderlying.ISteamFriends_GetClanChatMessage(instancePtr, steamIDClanChat, iMessage, prgchText, cchTextMax, out peChatEntryType, out psteamidChatter); + } + } + + public static bool ISteamFriends_IsClanChatAdmin(IntPtr instancePtr, CSteamID steamIDClanChat, CSteamID steamIDUser) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamFriends_IsClanChatAdmin(instancePtr, steamIDClanChat, steamIDUser); + } else { + return NativeMethodsUnderlying.ISteamFriends_IsClanChatAdmin(instancePtr, steamIDClanChat, steamIDUser); + } + } + + public static bool ISteamFriends_IsClanChatWindowOpenInSteam(IntPtr instancePtr, CSteamID steamIDClanChat) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamFriends_IsClanChatWindowOpenInSteam(instancePtr, steamIDClanChat); + } else { + return NativeMethodsUnderlying.ISteamFriends_IsClanChatWindowOpenInSteam(instancePtr, steamIDClanChat); + } + } + + public static bool ISteamFriends_OpenClanChatWindowInSteam(IntPtr instancePtr, CSteamID steamIDClanChat) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamFriends_OpenClanChatWindowInSteam(instancePtr, steamIDClanChat); + } else { + return NativeMethodsUnderlying.ISteamFriends_OpenClanChatWindowInSteam(instancePtr, steamIDClanChat); + } + } + + public static bool ISteamFriends_CloseClanChatWindowInSteam(IntPtr instancePtr, CSteamID steamIDClanChat) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamFriends_CloseClanChatWindowInSteam(instancePtr, steamIDClanChat); + } else { + return NativeMethodsUnderlying.ISteamFriends_CloseClanChatWindowInSteam(instancePtr, steamIDClanChat); + } + } + + public static bool ISteamFriends_SetListenForFriendsMessages(IntPtr instancePtr, [MarshalAs(UnmanagedType.I1)] bool bInterceptEnabled) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamFriends_SetListenForFriendsMessages(instancePtr, bInterceptEnabled); + } else { + return NativeMethodsUnderlying.ISteamFriends_SetListenForFriendsMessages(instancePtr, bInterceptEnabled); + } + } + + public static bool ISteamFriends_ReplyToFriendMessage(IntPtr instancePtr, CSteamID steamIDFriend, InteropHelp.UTF8StringHandle pchMsgToSend) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamFriends_ReplyToFriendMessage(instancePtr, steamIDFriend, pchMsgToSend); + } else { + return NativeMethodsUnderlying.ISteamFriends_ReplyToFriendMessage(instancePtr, steamIDFriend, pchMsgToSend); + } + } + + public static int ISteamFriends_GetFriendMessage(IntPtr instancePtr, CSteamID steamIDFriend, int iMessageID, IntPtr pvData, int cubData, out EChatEntryType peChatEntryType) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamFriends_GetFriendMessage(instancePtr, steamIDFriend, iMessageID, pvData, cubData, out peChatEntryType); + } else { + return NativeMethodsUnderlying.ISteamFriends_GetFriendMessage(instancePtr, steamIDFriend, iMessageID, pvData, cubData, out peChatEntryType); + } + } + + public static ulong ISteamFriends_GetFollowerCount(IntPtr instancePtr, CSteamID steamID) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamFriends_GetFollowerCount(instancePtr, steamID); + } else { + return NativeMethodsUnderlying.ISteamFriends_GetFollowerCount(instancePtr, steamID); + } + } + + public static ulong ISteamFriends_IsFollowing(IntPtr instancePtr, CSteamID steamID) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamFriends_IsFollowing(instancePtr, steamID); + } else { + return NativeMethodsUnderlying.ISteamFriends_IsFollowing(instancePtr, steamID); + } + } + + public static ulong ISteamFriends_EnumerateFollowingList(IntPtr instancePtr, uint unStartIndex) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamFriends_EnumerateFollowingList(instancePtr, unStartIndex); + } else { + return NativeMethodsUnderlying.ISteamFriends_EnumerateFollowingList(instancePtr, unStartIndex); + } + } + + public static bool ISteamFriends_IsClanPublic(IntPtr instancePtr, CSteamID steamIDClan) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamFriends_IsClanPublic(instancePtr, steamIDClan); + } else { + return NativeMethodsUnderlying.ISteamFriends_IsClanPublic(instancePtr, steamIDClan); + } + } + + public static bool ISteamFriends_IsClanOfficialGameGroup(IntPtr instancePtr, CSteamID steamIDClan) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamFriends_IsClanOfficialGameGroup(instancePtr, steamIDClan); + } else { + return NativeMethodsUnderlying.ISteamFriends_IsClanOfficialGameGroup(instancePtr, steamIDClan); + } + } + + public static int ISteamFriends_GetNumChatsWithUnreadPriorityMessages(IntPtr instancePtr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamFriends_GetNumChatsWithUnreadPriorityMessages(instancePtr); + } else { + return NativeMethodsUnderlying.ISteamFriends_GetNumChatsWithUnreadPriorityMessages(instancePtr); + } + } + + public static void ISteamFriends_ActivateGameOverlayRemotePlayTogetherInviteDialog(IntPtr instancePtr, CSteamID steamIDLobby) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamFriends_ActivateGameOverlayRemotePlayTogetherInviteDialog(instancePtr, steamIDLobby); + } else { + NativeMethodsUnderlying.ISteamFriends_ActivateGameOverlayRemotePlayTogetherInviteDialog(instancePtr, steamIDLobby); + } + } + + public static bool ISteamFriends_RegisterProtocolInOverlayBrowser(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchProtocol) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamFriends_RegisterProtocolInOverlayBrowser(instancePtr, pchProtocol); + } else { + return NativeMethodsUnderlying.ISteamFriends_RegisterProtocolInOverlayBrowser(instancePtr, pchProtocol); + } + } + + public static void ISteamFriends_ActivateGameOverlayInviteDialogConnectString(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchConnectString) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamFriends_ActivateGameOverlayInviteDialogConnectString(instancePtr, pchConnectString); + } else { + NativeMethodsUnderlying.ISteamFriends_ActivateGameOverlayInviteDialogConnectString(instancePtr, pchConnectString); + } + } + + public static ulong ISteamFriends_RequestEquippedProfileItems(IntPtr instancePtr, CSteamID steamID) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamFriends_RequestEquippedProfileItems(instancePtr, steamID); + } else { + return NativeMethodsUnderlying.ISteamFriends_RequestEquippedProfileItems(instancePtr, steamID); + } + } + + public static bool ISteamFriends_BHasEquippedProfileItem(IntPtr instancePtr, CSteamID steamID, ECommunityProfileItemType itemType) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamFriends_BHasEquippedProfileItem(instancePtr, steamID, itemType); + } else { + return NativeMethodsUnderlying.ISteamFriends_BHasEquippedProfileItem(instancePtr, steamID, itemType); + } + } + + public static IntPtr ISteamFriends_GetProfileItemPropertyString(IntPtr instancePtr, CSteamID steamID, ECommunityProfileItemType itemType, ECommunityProfileItemProperty prop) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamFriends_GetProfileItemPropertyString(instancePtr, steamID, itemType, prop); + } else { + return NativeMethodsUnderlying.ISteamFriends_GetProfileItemPropertyString(instancePtr, steamID, itemType, prop); + } + } + + public static uint ISteamFriends_GetProfileItemPropertyUint(IntPtr instancePtr, CSteamID steamID, ECommunityProfileItemType itemType, ECommunityProfileItemProperty prop) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamFriends_GetProfileItemPropertyUint(instancePtr, steamID, itemType, prop); + } else { + return NativeMethodsUnderlying.ISteamFriends_GetProfileItemPropertyUint(instancePtr, steamID, itemType, prop); + } + } + + public static void ISteamGameServer_SetProduct(IntPtr instancePtr, InteropHelp.UTF8StringHandle pszProduct) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamGameServer_SetProduct(instancePtr, pszProduct); + } else { + NativeMethodsUnderlying.ISteamGameServer_SetProduct(instancePtr, pszProduct); + } + } + + public static void ISteamGameServer_SetGameDescription(IntPtr instancePtr, InteropHelp.UTF8StringHandle pszGameDescription) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamGameServer_SetGameDescription(instancePtr, pszGameDescription); + } else { + NativeMethodsUnderlying.ISteamGameServer_SetGameDescription(instancePtr, pszGameDescription); + } + } + + public static void ISteamGameServer_SetModDir(IntPtr instancePtr, InteropHelp.UTF8StringHandle pszModDir) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamGameServer_SetModDir(instancePtr, pszModDir); + } else { + NativeMethodsUnderlying.ISteamGameServer_SetModDir(instancePtr, pszModDir); + } + } + + public static void ISteamGameServer_SetDedicatedServer(IntPtr instancePtr, [MarshalAs(UnmanagedType.I1)] bool bDedicated) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamGameServer_SetDedicatedServer(instancePtr, bDedicated); + } else { + NativeMethodsUnderlying.ISteamGameServer_SetDedicatedServer(instancePtr, bDedicated); + } + } + + public static void ISteamGameServer_LogOn(IntPtr instancePtr, InteropHelp.UTF8StringHandle pszToken) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamGameServer_LogOn(instancePtr, pszToken); + } else { + NativeMethodsUnderlying.ISteamGameServer_LogOn(instancePtr, pszToken); + } + } + + public static void ISteamGameServer_LogOnAnonymous(IntPtr instancePtr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamGameServer_LogOnAnonymous(instancePtr); + } else { + NativeMethodsUnderlying.ISteamGameServer_LogOnAnonymous(instancePtr); + } + } + + public static void ISteamGameServer_LogOff(IntPtr instancePtr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamGameServer_LogOff(instancePtr); + } else { + NativeMethodsUnderlying.ISteamGameServer_LogOff(instancePtr); + } + } + + public static bool ISteamGameServer_BLoggedOn(IntPtr instancePtr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamGameServer_BLoggedOn(instancePtr); + } else { + return NativeMethodsUnderlying.ISteamGameServer_BLoggedOn(instancePtr); + } + } + + public static bool ISteamGameServer_BSecure(IntPtr instancePtr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamGameServer_BSecure(instancePtr); + } else { + return NativeMethodsUnderlying.ISteamGameServer_BSecure(instancePtr); + } + } + + public static ulong ISteamGameServer_GetSteamID(IntPtr instancePtr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamGameServer_GetSteamID(instancePtr); + } else { + return NativeMethodsUnderlying.ISteamGameServer_GetSteamID(instancePtr); + } + } + + public static bool ISteamGameServer_WasRestartRequested(IntPtr instancePtr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamGameServer_WasRestartRequested(instancePtr); + } else { + return NativeMethodsUnderlying.ISteamGameServer_WasRestartRequested(instancePtr); + } + } + + public static void ISteamGameServer_SetMaxPlayerCount(IntPtr instancePtr, int cPlayersMax) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamGameServer_SetMaxPlayerCount(instancePtr, cPlayersMax); + } else { + NativeMethodsUnderlying.ISteamGameServer_SetMaxPlayerCount(instancePtr, cPlayersMax); + } + } + + public static void ISteamGameServer_SetBotPlayerCount(IntPtr instancePtr, int cBotplayers) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamGameServer_SetBotPlayerCount(instancePtr, cBotplayers); + } else { + NativeMethodsUnderlying.ISteamGameServer_SetBotPlayerCount(instancePtr, cBotplayers); + } + } + + public static void ISteamGameServer_SetServerName(IntPtr instancePtr, InteropHelp.UTF8StringHandle pszServerName) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamGameServer_SetServerName(instancePtr, pszServerName); + } else { + NativeMethodsUnderlying.ISteamGameServer_SetServerName(instancePtr, pszServerName); + } + } + + public static void ISteamGameServer_SetMapName(IntPtr instancePtr, InteropHelp.UTF8StringHandle pszMapName) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamGameServer_SetMapName(instancePtr, pszMapName); + } else { + NativeMethodsUnderlying.ISteamGameServer_SetMapName(instancePtr, pszMapName); + } + } + + public static void ISteamGameServer_SetPasswordProtected(IntPtr instancePtr, [MarshalAs(UnmanagedType.I1)] bool bPasswordProtected) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamGameServer_SetPasswordProtected(instancePtr, bPasswordProtected); + } else { + NativeMethodsUnderlying.ISteamGameServer_SetPasswordProtected(instancePtr, bPasswordProtected); + } + } + + public static void ISteamGameServer_SetSpectatorPort(IntPtr instancePtr, ushort unSpectatorPort) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamGameServer_SetSpectatorPort(instancePtr, unSpectatorPort); + } else { + NativeMethodsUnderlying.ISteamGameServer_SetSpectatorPort(instancePtr, unSpectatorPort); + } + } + + public static void ISteamGameServer_SetSpectatorServerName(IntPtr instancePtr, InteropHelp.UTF8StringHandle pszSpectatorServerName) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamGameServer_SetSpectatorServerName(instancePtr, pszSpectatorServerName); + } else { + NativeMethodsUnderlying.ISteamGameServer_SetSpectatorServerName(instancePtr, pszSpectatorServerName); + } + } + + public static void ISteamGameServer_ClearAllKeyValues(IntPtr instancePtr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamGameServer_ClearAllKeyValues(instancePtr); + } else { + NativeMethodsUnderlying.ISteamGameServer_ClearAllKeyValues(instancePtr); + } + } + + public static void ISteamGameServer_SetKeyValue(IntPtr instancePtr, InteropHelp.UTF8StringHandle pKey, InteropHelp.UTF8StringHandle pValue) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamGameServer_SetKeyValue(instancePtr, pKey, pValue); + } else { + NativeMethodsUnderlying.ISteamGameServer_SetKeyValue(instancePtr, pKey, pValue); + } + } + + public static void ISteamGameServer_SetGameTags(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchGameTags) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamGameServer_SetGameTags(instancePtr, pchGameTags); + } else { + NativeMethodsUnderlying.ISteamGameServer_SetGameTags(instancePtr, pchGameTags); + } + } + + public static void ISteamGameServer_SetGameData(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchGameData) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamGameServer_SetGameData(instancePtr, pchGameData); + } else { + NativeMethodsUnderlying.ISteamGameServer_SetGameData(instancePtr, pchGameData); + } + } + + public static void ISteamGameServer_SetRegion(IntPtr instancePtr, InteropHelp.UTF8StringHandle pszRegion) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamGameServer_SetRegion(instancePtr, pszRegion); + } else { + NativeMethodsUnderlying.ISteamGameServer_SetRegion(instancePtr, pszRegion); + } + } + + public static void ISteamGameServer_SetAdvertiseServerActive(IntPtr instancePtr, [MarshalAs(UnmanagedType.I1)] bool bActive) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamGameServer_SetAdvertiseServerActive(instancePtr, bActive); + } else { + NativeMethodsUnderlying.ISteamGameServer_SetAdvertiseServerActive(instancePtr, bActive); + } + } + + public static uint ISteamGameServer_GetAuthSessionTicket(IntPtr instancePtr, byte[] pTicket, int cbMaxTicket, out uint pcbTicket, ref SteamNetworkingIdentity pSnid) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamGameServer_GetAuthSessionTicket(instancePtr, pTicket, cbMaxTicket, out pcbTicket, ref pSnid); + } else { + return NativeMethodsUnderlying.ISteamGameServer_GetAuthSessionTicket(instancePtr, pTicket, cbMaxTicket, out pcbTicket, ref pSnid); + } + } + + public static EBeginAuthSessionResult ISteamGameServer_BeginAuthSession(IntPtr instancePtr, byte[] pAuthTicket, int cbAuthTicket, CSteamID steamID) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamGameServer_BeginAuthSession(instancePtr, pAuthTicket, cbAuthTicket, steamID); + } else { + return NativeMethodsUnderlying.ISteamGameServer_BeginAuthSession(instancePtr, pAuthTicket, cbAuthTicket, steamID); + } + } + + public static void ISteamGameServer_EndAuthSession(IntPtr instancePtr, CSteamID steamID) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamGameServer_EndAuthSession(instancePtr, steamID); + } else { + NativeMethodsUnderlying.ISteamGameServer_EndAuthSession(instancePtr, steamID); + } + } + + public static void ISteamGameServer_CancelAuthTicket(IntPtr instancePtr, HAuthTicket hAuthTicket) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamGameServer_CancelAuthTicket(instancePtr, hAuthTicket); + } else { + NativeMethodsUnderlying.ISteamGameServer_CancelAuthTicket(instancePtr, hAuthTicket); + } + } + + public static EUserHasLicenseForAppResult ISteamGameServer_UserHasLicenseForApp(IntPtr instancePtr, CSteamID steamID, AppId_t appID) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamGameServer_UserHasLicenseForApp(instancePtr, steamID, appID); + } else { + return NativeMethodsUnderlying.ISteamGameServer_UserHasLicenseForApp(instancePtr, steamID, appID); + } + } + + public static bool ISteamGameServer_RequestUserGroupStatus(IntPtr instancePtr, CSteamID steamIDUser, CSteamID steamIDGroup) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamGameServer_RequestUserGroupStatus(instancePtr, steamIDUser, steamIDGroup); + } else { + return NativeMethodsUnderlying.ISteamGameServer_RequestUserGroupStatus(instancePtr, steamIDUser, steamIDGroup); + } + } + + public static void ISteamGameServer_GetGameplayStats(IntPtr instancePtr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamGameServer_GetGameplayStats(instancePtr); + } else { + NativeMethodsUnderlying.ISteamGameServer_GetGameplayStats(instancePtr); + } + } + + public static ulong ISteamGameServer_GetServerReputation(IntPtr instancePtr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamGameServer_GetServerReputation(instancePtr); + } else { + return NativeMethodsUnderlying.ISteamGameServer_GetServerReputation(instancePtr); + } + } + + public static SteamIPAddress_t ISteamGameServer_GetPublicIP(IntPtr instancePtr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamGameServer_GetPublicIP(instancePtr); + } else { + return NativeMethodsUnderlying.ISteamGameServer_GetPublicIP(instancePtr); + } + } + + public static bool ISteamGameServer_HandleIncomingPacket(IntPtr instancePtr, byte[] pData, int cbData, uint srcIP, ushort srcPort) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamGameServer_HandleIncomingPacket(instancePtr, pData, cbData, srcIP, srcPort); + } else { + return NativeMethodsUnderlying.ISteamGameServer_HandleIncomingPacket(instancePtr, pData, cbData, srcIP, srcPort); + } + } + + public static int ISteamGameServer_GetNextOutgoingPacket(IntPtr instancePtr, byte[] pOut, int cbMaxOut, out uint pNetAdr, out ushort pPort) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamGameServer_GetNextOutgoingPacket(instancePtr, pOut, cbMaxOut, out pNetAdr, out pPort); + } else { + return NativeMethodsUnderlying.ISteamGameServer_GetNextOutgoingPacket(instancePtr, pOut, cbMaxOut, out pNetAdr, out pPort); + } + } + + public static ulong ISteamGameServer_AssociateWithClan(IntPtr instancePtr, CSteamID steamIDClan) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamGameServer_AssociateWithClan(instancePtr, steamIDClan); + } else { + return NativeMethodsUnderlying.ISteamGameServer_AssociateWithClan(instancePtr, steamIDClan); + } + } + + public static ulong ISteamGameServer_ComputeNewPlayerCompatibility(IntPtr instancePtr, CSteamID steamIDNewPlayer) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamGameServer_ComputeNewPlayerCompatibility(instancePtr, steamIDNewPlayer); + } else { + return NativeMethodsUnderlying.ISteamGameServer_ComputeNewPlayerCompatibility(instancePtr, steamIDNewPlayer); + } + } + + public static bool ISteamGameServer_SendUserConnectAndAuthenticate_DEPRECATED(IntPtr instancePtr, uint unIPClient, byte[] pvAuthBlob, uint cubAuthBlobSize, out CSteamID pSteamIDUser) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamGameServer_SendUserConnectAndAuthenticate_DEPRECATED(instancePtr, unIPClient, pvAuthBlob, cubAuthBlobSize, out pSteamIDUser); + } else { + return NativeMethodsUnderlying.ISteamGameServer_SendUserConnectAndAuthenticate_DEPRECATED(instancePtr, unIPClient, pvAuthBlob, cubAuthBlobSize, out pSteamIDUser); + } + } + + public static ulong ISteamGameServer_CreateUnauthenticatedUserConnection(IntPtr instancePtr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamGameServer_CreateUnauthenticatedUserConnection(instancePtr); + } else { + return NativeMethodsUnderlying.ISteamGameServer_CreateUnauthenticatedUserConnection(instancePtr); + } + } + + public static void ISteamGameServer_SendUserDisconnect_DEPRECATED(IntPtr instancePtr, CSteamID steamIDUser) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamGameServer_SendUserDisconnect_DEPRECATED(instancePtr, steamIDUser); + } else { + NativeMethodsUnderlying.ISteamGameServer_SendUserDisconnect_DEPRECATED(instancePtr, steamIDUser); + } + } + + public static bool ISteamGameServer_BUpdateUserData(IntPtr instancePtr, CSteamID steamIDUser, InteropHelp.UTF8StringHandle pchPlayerName, uint uScore) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamGameServer_BUpdateUserData(instancePtr, steamIDUser, pchPlayerName, uScore); + } else { + return NativeMethodsUnderlying.ISteamGameServer_BUpdateUserData(instancePtr, steamIDUser, pchPlayerName, uScore); + } + } + + public static ulong ISteamGameServerStats_RequestUserStats(IntPtr instancePtr, CSteamID steamIDUser) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamGameServerStats_RequestUserStats(instancePtr, steamIDUser); + } else { + return NativeMethodsUnderlying.ISteamGameServerStats_RequestUserStats(instancePtr, steamIDUser); + } + } + + public static bool ISteamGameServerStats_GetUserStatInt32(IntPtr instancePtr, CSteamID steamIDUser, InteropHelp.UTF8StringHandle pchName, out int pData) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamGameServerStats_GetUserStatInt32(instancePtr, steamIDUser, pchName, out pData); + } else { + return NativeMethodsUnderlying.ISteamGameServerStats_GetUserStatInt32(instancePtr, steamIDUser, pchName, out pData); + } + } + + public static bool ISteamGameServerStats_GetUserStatFloat(IntPtr instancePtr, CSteamID steamIDUser, InteropHelp.UTF8StringHandle pchName, out float pData) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamGameServerStats_GetUserStatFloat(instancePtr, steamIDUser, pchName, out pData); + } else { + return NativeMethodsUnderlying.ISteamGameServerStats_GetUserStatFloat(instancePtr, steamIDUser, pchName, out pData); + } + } + + public static bool ISteamGameServerStats_GetUserAchievement(IntPtr instancePtr, CSteamID steamIDUser, InteropHelp.UTF8StringHandle pchName, out bool pbAchieved) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamGameServerStats_GetUserAchievement(instancePtr, steamIDUser, pchName, out pbAchieved); + } else { + return NativeMethodsUnderlying.ISteamGameServerStats_GetUserAchievement(instancePtr, steamIDUser, pchName, out pbAchieved); + } + } + + public static bool ISteamGameServerStats_SetUserStatInt32(IntPtr instancePtr, CSteamID steamIDUser, InteropHelp.UTF8StringHandle pchName, int nData) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamGameServerStats_SetUserStatInt32(instancePtr, steamIDUser, pchName, nData); + } else { + return NativeMethodsUnderlying.ISteamGameServerStats_SetUserStatInt32(instancePtr, steamIDUser, pchName, nData); + } + } + + public static bool ISteamGameServerStats_SetUserStatFloat(IntPtr instancePtr, CSteamID steamIDUser, InteropHelp.UTF8StringHandle pchName, float fData) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamGameServerStats_SetUserStatFloat(instancePtr, steamIDUser, pchName, fData); + } else { + return NativeMethodsUnderlying.ISteamGameServerStats_SetUserStatFloat(instancePtr, steamIDUser, pchName, fData); + } + } + + public static bool ISteamGameServerStats_UpdateUserAvgRateStat(IntPtr instancePtr, CSteamID steamIDUser, InteropHelp.UTF8StringHandle pchName, float flCountThisSession, double dSessionLength) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamGameServerStats_UpdateUserAvgRateStat(instancePtr, steamIDUser, pchName, flCountThisSession, dSessionLength); + } else { + return NativeMethodsUnderlying.ISteamGameServerStats_UpdateUserAvgRateStat(instancePtr, steamIDUser, pchName, flCountThisSession, dSessionLength); + } + } + + public static bool ISteamGameServerStats_SetUserAchievement(IntPtr instancePtr, CSteamID steamIDUser, InteropHelp.UTF8StringHandle pchName) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamGameServerStats_SetUserAchievement(instancePtr, steamIDUser, pchName); + } else { + return NativeMethodsUnderlying.ISteamGameServerStats_SetUserAchievement(instancePtr, steamIDUser, pchName); + } + } + + public static bool ISteamGameServerStats_ClearUserAchievement(IntPtr instancePtr, CSteamID steamIDUser, InteropHelp.UTF8StringHandle pchName) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamGameServerStats_ClearUserAchievement(instancePtr, steamIDUser, pchName); + } else { + return NativeMethodsUnderlying.ISteamGameServerStats_ClearUserAchievement(instancePtr, steamIDUser, pchName); + } + } + + public static ulong ISteamGameServerStats_StoreUserStats(IntPtr instancePtr, CSteamID steamIDUser) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamGameServerStats_StoreUserStats(instancePtr, steamIDUser); + } else { + return NativeMethodsUnderlying.ISteamGameServerStats_StoreUserStats(instancePtr, steamIDUser); + } + } + + public static bool ISteamHTMLSurface_Init(IntPtr instancePtr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamHTMLSurface_Init(instancePtr); + } else { + return NativeMethodsUnderlying.ISteamHTMLSurface_Init(instancePtr); + } + } + + public static bool ISteamHTMLSurface_Shutdown(IntPtr instancePtr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamHTMLSurface_Shutdown(instancePtr); + } else { + return NativeMethodsUnderlying.ISteamHTMLSurface_Shutdown(instancePtr); + } + } + + public static ulong ISteamHTMLSurface_CreateBrowser(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchUserAgent, InteropHelp.UTF8StringHandle pchUserCSS) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamHTMLSurface_CreateBrowser(instancePtr, pchUserAgent, pchUserCSS); + } else { + return NativeMethodsUnderlying.ISteamHTMLSurface_CreateBrowser(instancePtr, pchUserAgent, pchUserCSS); + } + } + + public static void ISteamHTMLSurface_RemoveBrowser(IntPtr instancePtr, HHTMLBrowser unBrowserHandle) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamHTMLSurface_RemoveBrowser(instancePtr, unBrowserHandle); + } else { + NativeMethodsUnderlying.ISteamHTMLSurface_RemoveBrowser(instancePtr, unBrowserHandle); + } + } + + public static void ISteamHTMLSurface_LoadURL(IntPtr instancePtr, HHTMLBrowser unBrowserHandle, InteropHelp.UTF8StringHandle pchURL, InteropHelp.UTF8StringHandle pchPostData) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamHTMLSurface_LoadURL(instancePtr, unBrowserHandle, pchURL, pchPostData); + } else { + NativeMethodsUnderlying.ISteamHTMLSurface_LoadURL(instancePtr, unBrowserHandle, pchURL, pchPostData); + } + } + + public static void ISteamHTMLSurface_SetSize(IntPtr instancePtr, HHTMLBrowser unBrowserHandle, uint unWidth, uint unHeight) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamHTMLSurface_SetSize(instancePtr, unBrowserHandle, unWidth, unHeight); + } else { + NativeMethodsUnderlying.ISteamHTMLSurface_SetSize(instancePtr, unBrowserHandle, unWidth, unHeight); + } + } + + public static void ISteamHTMLSurface_StopLoad(IntPtr instancePtr, HHTMLBrowser unBrowserHandle) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamHTMLSurface_StopLoad(instancePtr, unBrowserHandle); + } else { + NativeMethodsUnderlying.ISteamHTMLSurface_StopLoad(instancePtr, unBrowserHandle); + } + } + + public static void ISteamHTMLSurface_Reload(IntPtr instancePtr, HHTMLBrowser unBrowserHandle) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamHTMLSurface_Reload(instancePtr, unBrowserHandle); + } else { + NativeMethodsUnderlying.ISteamHTMLSurface_Reload(instancePtr, unBrowserHandle); + } + } + + public static void ISteamHTMLSurface_GoBack(IntPtr instancePtr, HHTMLBrowser unBrowserHandle) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamHTMLSurface_GoBack(instancePtr, unBrowserHandle); + } else { + NativeMethodsUnderlying.ISteamHTMLSurface_GoBack(instancePtr, unBrowserHandle); + } + } + + public static void ISteamHTMLSurface_GoForward(IntPtr instancePtr, HHTMLBrowser unBrowserHandle) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamHTMLSurface_GoForward(instancePtr, unBrowserHandle); + } else { + NativeMethodsUnderlying.ISteamHTMLSurface_GoForward(instancePtr, unBrowserHandle); + } + } + + public static void ISteamHTMLSurface_AddHeader(IntPtr instancePtr, HHTMLBrowser unBrowserHandle, InteropHelp.UTF8StringHandle pchKey, InteropHelp.UTF8StringHandle pchValue) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamHTMLSurface_AddHeader(instancePtr, unBrowserHandle, pchKey, pchValue); + } else { + NativeMethodsUnderlying.ISteamHTMLSurface_AddHeader(instancePtr, unBrowserHandle, pchKey, pchValue); + } + } + + public static void ISteamHTMLSurface_ExecuteJavascript(IntPtr instancePtr, HHTMLBrowser unBrowserHandle, InteropHelp.UTF8StringHandle pchScript) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamHTMLSurface_ExecuteJavascript(instancePtr, unBrowserHandle, pchScript); + } else { + NativeMethodsUnderlying.ISteamHTMLSurface_ExecuteJavascript(instancePtr, unBrowserHandle, pchScript); + } + } + + public static void ISteamHTMLSurface_MouseUp(IntPtr instancePtr, HHTMLBrowser unBrowserHandle, EHTMLMouseButton eMouseButton) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamHTMLSurface_MouseUp(instancePtr, unBrowserHandle, eMouseButton); + } else { + NativeMethodsUnderlying.ISteamHTMLSurface_MouseUp(instancePtr, unBrowserHandle, eMouseButton); + } + } + + public static void ISteamHTMLSurface_MouseDown(IntPtr instancePtr, HHTMLBrowser unBrowserHandle, EHTMLMouseButton eMouseButton) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamHTMLSurface_MouseDown(instancePtr, unBrowserHandle, eMouseButton); + } else { + NativeMethodsUnderlying.ISteamHTMLSurface_MouseDown(instancePtr, unBrowserHandle, eMouseButton); + } + } + + public static void ISteamHTMLSurface_MouseDoubleClick(IntPtr instancePtr, HHTMLBrowser unBrowserHandle, EHTMLMouseButton eMouseButton) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamHTMLSurface_MouseDoubleClick(instancePtr, unBrowserHandle, eMouseButton); + } else { + NativeMethodsUnderlying.ISteamHTMLSurface_MouseDoubleClick(instancePtr, unBrowserHandle, eMouseButton); + } + } + + public static void ISteamHTMLSurface_MouseMove(IntPtr instancePtr, HHTMLBrowser unBrowserHandle, int x, int y) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamHTMLSurface_MouseMove(instancePtr, unBrowserHandle, x, y); + } else { + NativeMethodsUnderlying.ISteamHTMLSurface_MouseMove(instancePtr, unBrowserHandle, x, y); + } + } + + public static void ISteamHTMLSurface_MouseWheel(IntPtr instancePtr, HHTMLBrowser unBrowserHandle, int nDelta) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamHTMLSurface_MouseWheel(instancePtr, unBrowserHandle, nDelta); + } else { + NativeMethodsUnderlying.ISteamHTMLSurface_MouseWheel(instancePtr, unBrowserHandle, nDelta); + } + } + + public static void ISteamHTMLSurface_KeyDown(IntPtr instancePtr, HHTMLBrowser unBrowserHandle, uint nNativeKeyCode, EHTMLKeyModifiers eHTMLKeyModifiers, [MarshalAs(UnmanagedType.I1)] bool bIsSystemKey) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamHTMLSurface_KeyDown(instancePtr, unBrowserHandle, nNativeKeyCode, eHTMLKeyModifiers, bIsSystemKey); + } else { + NativeMethodsUnderlying.ISteamHTMLSurface_KeyDown(instancePtr, unBrowserHandle, nNativeKeyCode, eHTMLKeyModifiers, bIsSystemKey); + } + } + + public static void ISteamHTMLSurface_KeyUp(IntPtr instancePtr, HHTMLBrowser unBrowserHandle, uint nNativeKeyCode, EHTMLKeyModifiers eHTMLKeyModifiers) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamHTMLSurface_KeyUp(instancePtr, unBrowserHandle, nNativeKeyCode, eHTMLKeyModifiers); + } else { + NativeMethodsUnderlying.ISteamHTMLSurface_KeyUp(instancePtr, unBrowserHandle, nNativeKeyCode, eHTMLKeyModifiers); + } + } + + public static void ISteamHTMLSurface_KeyChar(IntPtr instancePtr, HHTMLBrowser unBrowserHandle, uint cUnicodeChar, EHTMLKeyModifiers eHTMLKeyModifiers) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamHTMLSurface_KeyChar(instancePtr, unBrowserHandle, cUnicodeChar, eHTMLKeyModifiers); + } else { + NativeMethodsUnderlying.ISteamHTMLSurface_KeyChar(instancePtr, unBrowserHandle, cUnicodeChar, eHTMLKeyModifiers); + } + } + + public static void ISteamHTMLSurface_SetHorizontalScroll(IntPtr instancePtr, HHTMLBrowser unBrowserHandle, uint nAbsolutePixelScroll) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamHTMLSurface_SetHorizontalScroll(instancePtr, unBrowserHandle, nAbsolutePixelScroll); + } else { + NativeMethodsUnderlying.ISteamHTMLSurface_SetHorizontalScroll(instancePtr, unBrowserHandle, nAbsolutePixelScroll); + } + } + + public static void ISteamHTMLSurface_SetVerticalScroll(IntPtr instancePtr, HHTMLBrowser unBrowserHandle, uint nAbsolutePixelScroll) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamHTMLSurface_SetVerticalScroll(instancePtr, unBrowserHandle, nAbsolutePixelScroll); + } else { + NativeMethodsUnderlying.ISteamHTMLSurface_SetVerticalScroll(instancePtr, unBrowserHandle, nAbsolutePixelScroll); + } + } + + public static void ISteamHTMLSurface_SetKeyFocus(IntPtr instancePtr, HHTMLBrowser unBrowserHandle, [MarshalAs(UnmanagedType.I1)] bool bHasKeyFocus) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamHTMLSurface_SetKeyFocus(instancePtr, unBrowserHandle, bHasKeyFocus); + } else { + NativeMethodsUnderlying.ISteamHTMLSurface_SetKeyFocus(instancePtr, unBrowserHandle, bHasKeyFocus); + } + } + + public static void ISteamHTMLSurface_ViewSource(IntPtr instancePtr, HHTMLBrowser unBrowserHandle) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamHTMLSurface_ViewSource(instancePtr, unBrowserHandle); + } else { + NativeMethodsUnderlying.ISteamHTMLSurface_ViewSource(instancePtr, unBrowserHandle); + } + } + + public static void ISteamHTMLSurface_CopyToClipboard(IntPtr instancePtr, HHTMLBrowser unBrowserHandle) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamHTMLSurface_CopyToClipboard(instancePtr, unBrowserHandle); + } else { + NativeMethodsUnderlying.ISteamHTMLSurface_CopyToClipboard(instancePtr, unBrowserHandle); + } + } + + public static void ISteamHTMLSurface_PasteFromClipboard(IntPtr instancePtr, HHTMLBrowser unBrowserHandle) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamHTMLSurface_PasteFromClipboard(instancePtr, unBrowserHandle); + } else { + NativeMethodsUnderlying.ISteamHTMLSurface_PasteFromClipboard(instancePtr, unBrowserHandle); + } + } + + public static void ISteamHTMLSurface_Find(IntPtr instancePtr, HHTMLBrowser unBrowserHandle, InteropHelp.UTF8StringHandle pchSearchStr, [MarshalAs(UnmanagedType.I1)] bool bCurrentlyInFind, [MarshalAs(UnmanagedType.I1)] bool bReverse) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamHTMLSurface_Find(instancePtr, unBrowserHandle, pchSearchStr, bCurrentlyInFind, bReverse); + } else { + NativeMethodsUnderlying.ISteamHTMLSurface_Find(instancePtr, unBrowserHandle, pchSearchStr, bCurrentlyInFind, bReverse); + } + } + + public static void ISteamHTMLSurface_StopFind(IntPtr instancePtr, HHTMLBrowser unBrowserHandle) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamHTMLSurface_StopFind(instancePtr, unBrowserHandle); + } else { + NativeMethodsUnderlying.ISteamHTMLSurface_StopFind(instancePtr, unBrowserHandle); + } + } + + public static void ISteamHTMLSurface_GetLinkAtPosition(IntPtr instancePtr, HHTMLBrowser unBrowserHandle, int x, int y) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamHTMLSurface_GetLinkAtPosition(instancePtr, unBrowserHandle, x, y); + } else { + NativeMethodsUnderlying.ISteamHTMLSurface_GetLinkAtPosition(instancePtr, unBrowserHandle, x, y); + } + } + + public static void ISteamHTMLSurface_SetCookie(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchHostname, InteropHelp.UTF8StringHandle pchKey, InteropHelp.UTF8StringHandle pchValue, InteropHelp.UTF8StringHandle pchPath, uint nExpires, [MarshalAs(UnmanagedType.I1)] bool bSecure, [MarshalAs(UnmanagedType.I1)] bool bHTTPOnly) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamHTMLSurface_SetCookie(instancePtr, pchHostname, pchKey, pchValue, pchPath, nExpires, bSecure, bHTTPOnly); + } else { + NativeMethodsUnderlying.ISteamHTMLSurface_SetCookie(instancePtr, pchHostname, pchKey, pchValue, pchPath, nExpires, bSecure, bHTTPOnly); + } + } + + public static void ISteamHTMLSurface_SetPageScaleFactor(IntPtr instancePtr, HHTMLBrowser unBrowserHandle, float flZoom, int nPointX, int nPointY) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamHTMLSurface_SetPageScaleFactor(instancePtr, unBrowserHandle, flZoom, nPointX, nPointY); + } else { + NativeMethodsUnderlying.ISteamHTMLSurface_SetPageScaleFactor(instancePtr, unBrowserHandle, flZoom, nPointX, nPointY); + } + } + + public static void ISteamHTMLSurface_SetBackgroundMode(IntPtr instancePtr, HHTMLBrowser unBrowserHandle, [MarshalAs(UnmanagedType.I1)] bool bBackgroundMode) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamHTMLSurface_SetBackgroundMode(instancePtr, unBrowserHandle, bBackgroundMode); + } else { + NativeMethodsUnderlying.ISteamHTMLSurface_SetBackgroundMode(instancePtr, unBrowserHandle, bBackgroundMode); + } + } + + public static void ISteamHTMLSurface_SetDPIScalingFactor(IntPtr instancePtr, HHTMLBrowser unBrowserHandle, float flDPIScaling) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamHTMLSurface_SetDPIScalingFactor(instancePtr, unBrowserHandle, flDPIScaling); + } else { + NativeMethodsUnderlying.ISteamHTMLSurface_SetDPIScalingFactor(instancePtr, unBrowserHandle, flDPIScaling); + } + } + + public static void ISteamHTMLSurface_OpenDeveloperTools(IntPtr instancePtr, HHTMLBrowser unBrowserHandle) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamHTMLSurface_OpenDeveloperTools(instancePtr, unBrowserHandle); + } else { + NativeMethodsUnderlying.ISteamHTMLSurface_OpenDeveloperTools(instancePtr, unBrowserHandle); + } + } + + public static void ISteamHTMLSurface_AllowStartRequest(IntPtr instancePtr, HHTMLBrowser unBrowserHandle, [MarshalAs(UnmanagedType.I1)] bool bAllowed) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamHTMLSurface_AllowStartRequest(instancePtr, unBrowserHandle, bAllowed); + } else { + NativeMethodsUnderlying.ISteamHTMLSurface_AllowStartRequest(instancePtr, unBrowserHandle, bAllowed); + } + } + + public static void ISteamHTMLSurface_JSDialogResponse(IntPtr instancePtr, HHTMLBrowser unBrowserHandle, [MarshalAs(UnmanagedType.I1)] bool bResult) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamHTMLSurface_JSDialogResponse(instancePtr, unBrowserHandle, bResult); + } else { + NativeMethodsUnderlying.ISteamHTMLSurface_JSDialogResponse(instancePtr, unBrowserHandle, bResult); + } + } + + public static void ISteamHTMLSurface_FileLoadDialogResponse(IntPtr instancePtr, HHTMLBrowser unBrowserHandle, IntPtr pchSelectedFiles) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamHTMLSurface_FileLoadDialogResponse(instancePtr, unBrowserHandle, pchSelectedFiles); + } else { + NativeMethodsUnderlying.ISteamHTMLSurface_FileLoadDialogResponse(instancePtr, unBrowserHandle, pchSelectedFiles); + } + } + + public static uint ISteamHTTP_CreateHTTPRequest(IntPtr instancePtr, EHTTPMethod eHTTPRequestMethod, InteropHelp.UTF8StringHandle pchAbsoluteURL) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamHTTP_CreateHTTPRequest(instancePtr, eHTTPRequestMethod, pchAbsoluteURL); + } else { + return NativeMethodsUnderlying.ISteamHTTP_CreateHTTPRequest(instancePtr, eHTTPRequestMethod, pchAbsoluteURL); + } + } + + public static bool ISteamHTTP_SetHTTPRequestContextValue(IntPtr instancePtr, HTTPRequestHandle hRequest, ulong ulContextValue) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamHTTP_SetHTTPRequestContextValue(instancePtr, hRequest, ulContextValue); + } else { + return NativeMethodsUnderlying.ISteamHTTP_SetHTTPRequestContextValue(instancePtr, hRequest, ulContextValue); + } + } + + public static bool ISteamHTTP_SetHTTPRequestNetworkActivityTimeout(IntPtr instancePtr, HTTPRequestHandle hRequest, uint unTimeoutSeconds) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamHTTP_SetHTTPRequestNetworkActivityTimeout(instancePtr, hRequest, unTimeoutSeconds); + } else { + return NativeMethodsUnderlying.ISteamHTTP_SetHTTPRequestNetworkActivityTimeout(instancePtr, hRequest, unTimeoutSeconds); + } + } + + public static bool ISteamHTTP_SetHTTPRequestHeaderValue(IntPtr instancePtr, HTTPRequestHandle hRequest, InteropHelp.UTF8StringHandle pchHeaderName, InteropHelp.UTF8StringHandle pchHeaderValue) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamHTTP_SetHTTPRequestHeaderValue(instancePtr, hRequest, pchHeaderName, pchHeaderValue); + } else { + return NativeMethodsUnderlying.ISteamHTTP_SetHTTPRequestHeaderValue(instancePtr, hRequest, pchHeaderName, pchHeaderValue); + } + } + + public static bool ISteamHTTP_SetHTTPRequestGetOrPostParameter(IntPtr instancePtr, HTTPRequestHandle hRequest, InteropHelp.UTF8StringHandle pchParamName, InteropHelp.UTF8StringHandle pchParamValue) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamHTTP_SetHTTPRequestGetOrPostParameter(instancePtr, hRequest, pchParamName, pchParamValue); + } else { + return NativeMethodsUnderlying.ISteamHTTP_SetHTTPRequestGetOrPostParameter(instancePtr, hRequest, pchParamName, pchParamValue); + } + } + + public static bool ISteamHTTP_SendHTTPRequest(IntPtr instancePtr, HTTPRequestHandle hRequest, out SteamAPICall_t pCallHandle) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamHTTP_SendHTTPRequest(instancePtr, hRequest, out pCallHandle); + } else { + return NativeMethodsUnderlying.ISteamHTTP_SendHTTPRequest(instancePtr, hRequest, out pCallHandle); + } + } + + public static bool ISteamHTTP_SendHTTPRequestAndStreamResponse(IntPtr instancePtr, HTTPRequestHandle hRequest, out SteamAPICall_t pCallHandle) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamHTTP_SendHTTPRequestAndStreamResponse(instancePtr, hRequest, out pCallHandle); + } else { + return NativeMethodsUnderlying.ISteamHTTP_SendHTTPRequestAndStreamResponse(instancePtr, hRequest, out pCallHandle); + } + } + + public static bool ISteamHTTP_DeferHTTPRequest(IntPtr instancePtr, HTTPRequestHandle hRequest) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamHTTP_DeferHTTPRequest(instancePtr, hRequest); + } else { + return NativeMethodsUnderlying.ISteamHTTP_DeferHTTPRequest(instancePtr, hRequest); + } + } + + public static bool ISteamHTTP_PrioritizeHTTPRequest(IntPtr instancePtr, HTTPRequestHandle hRequest) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamHTTP_PrioritizeHTTPRequest(instancePtr, hRequest); + } else { + return NativeMethodsUnderlying.ISteamHTTP_PrioritizeHTTPRequest(instancePtr, hRequest); + } + } + + public static bool ISteamHTTP_GetHTTPResponseHeaderSize(IntPtr instancePtr, HTTPRequestHandle hRequest, InteropHelp.UTF8StringHandle pchHeaderName, out uint unResponseHeaderSize) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamHTTP_GetHTTPResponseHeaderSize(instancePtr, hRequest, pchHeaderName, out unResponseHeaderSize); + } else { + return NativeMethodsUnderlying.ISteamHTTP_GetHTTPResponseHeaderSize(instancePtr, hRequest, pchHeaderName, out unResponseHeaderSize); + } + } + + public static bool ISteamHTTP_GetHTTPResponseHeaderValue(IntPtr instancePtr, HTTPRequestHandle hRequest, InteropHelp.UTF8StringHandle pchHeaderName, byte[] pHeaderValueBuffer, uint unBufferSize) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamHTTP_GetHTTPResponseHeaderValue(instancePtr, hRequest, pchHeaderName, pHeaderValueBuffer, unBufferSize); + } else { + return NativeMethodsUnderlying.ISteamHTTP_GetHTTPResponseHeaderValue(instancePtr, hRequest, pchHeaderName, pHeaderValueBuffer, unBufferSize); + } + } + + public static bool ISteamHTTP_GetHTTPResponseBodySize(IntPtr instancePtr, HTTPRequestHandle hRequest, out uint unBodySize) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamHTTP_GetHTTPResponseBodySize(instancePtr, hRequest, out unBodySize); + } else { + return NativeMethodsUnderlying.ISteamHTTP_GetHTTPResponseBodySize(instancePtr, hRequest, out unBodySize); + } + } + + public static bool ISteamHTTP_GetHTTPResponseBodyData(IntPtr instancePtr, HTTPRequestHandle hRequest, byte[] pBodyDataBuffer, uint unBufferSize) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamHTTP_GetHTTPResponseBodyData(instancePtr, hRequest, pBodyDataBuffer, unBufferSize); + } else { + return NativeMethodsUnderlying.ISteamHTTP_GetHTTPResponseBodyData(instancePtr, hRequest, pBodyDataBuffer, unBufferSize); + } + } + + public static bool ISteamHTTP_GetHTTPStreamingResponseBodyData(IntPtr instancePtr, HTTPRequestHandle hRequest, uint cOffset, byte[] pBodyDataBuffer, uint unBufferSize) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamHTTP_GetHTTPStreamingResponseBodyData(instancePtr, hRequest, cOffset, pBodyDataBuffer, unBufferSize); + } else { + return NativeMethodsUnderlying.ISteamHTTP_GetHTTPStreamingResponseBodyData(instancePtr, hRequest, cOffset, pBodyDataBuffer, unBufferSize); + } + } + + public static bool ISteamHTTP_ReleaseHTTPRequest(IntPtr instancePtr, HTTPRequestHandle hRequest) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamHTTP_ReleaseHTTPRequest(instancePtr, hRequest); + } else { + return NativeMethodsUnderlying.ISteamHTTP_ReleaseHTTPRequest(instancePtr, hRequest); + } + } + + public static bool ISteamHTTP_GetHTTPDownloadProgressPct(IntPtr instancePtr, HTTPRequestHandle hRequest, out float pflPercentOut) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamHTTP_GetHTTPDownloadProgressPct(instancePtr, hRequest, out pflPercentOut); + } else { + return NativeMethodsUnderlying.ISteamHTTP_GetHTTPDownloadProgressPct(instancePtr, hRequest, out pflPercentOut); + } + } + + public static bool ISteamHTTP_SetHTTPRequestRawPostBody(IntPtr instancePtr, HTTPRequestHandle hRequest, InteropHelp.UTF8StringHandle pchContentType, byte[] pubBody, uint unBodyLen) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamHTTP_SetHTTPRequestRawPostBody(instancePtr, hRequest, pchContentType, pubBody, unBodyLen); + } else { + return NativeMethodsUnderlying.ISteamHTTP_SetHTTPRequestRawPostBody(instancePtr, hRequest, pchContentType, pubBody, unBodyLen); + } + } + + public static uint ISteamHTTP_CreateCookieContainer(IntPtr instancePtr, [MarshalAs(UnmanagedType.I1)] bool bAllowResponsesToModify) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamHTTP_CreateCookieContainer(instancePtr, bAllowResponsesToModify); + } else { + return NativeMethodsUnderlying.ISteamHTTP_CreateCookieContainer(instancePtr, bAllowResponsesToModify); + } + } + + public static bool ISteamHTTP_ReleaseCookieContainer(IntPtr instancePtr, HTTPCookieContainerHandle hCookieContainer) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamHTTP_ReleaseCookieContainer(instancePtr, hCookieContainer); + } else { + return NativeMethodsUnderlying.ISteamHTTP_ReleaseCookieContainer(instancePtr, hCookieContainer); + } + } + + public static bool ISteamHTTP_SetCookie(IntPtr instancePtr, HTTPCookieContainerHandle hCookieContainer, InteropHelp.UTF8StringHandle pchHost, InteropHelp.UTF8StringHandle pchUrl, InteropHelp.UTF8StringHandle pchCookie) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamHTTP_SetCookie(instancePtr, hCookieContainer, pchHost, pchUrl, pchCookie); + } else { + return NativeMethodsUnderlying.ISteamHTTP_SetCookie(instancePtr, hCookieContainer, pchHost, pchUrl, pchCookie); + } + } + + public static bool ISteamHTTP_SetHTTPRequestCookieContainer(IntPtr instancePtr, HTTPRequestHandle hRequest, HTTPCookieContainerHandle hCookieContainer) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamHTTP_SetHTTPRequestCookieContainer(instancePtr, hRequest, hCookieContainer); + } else { + return NativeMethodsUnderlying.ISteamHTTP_SetHTTPRequestCookieContainer(instancePtr, hRequest, hCookieContainer); + } + } + + public static bool ISteamHTTP_SetHTTPRequestUserAgentInfo(IntPtr instancePtr, HTTPRequestHandle hRequest, InteropHelp.UTF8StringHandle pchUserAgentInfo) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamHTTP_SetHTTPRequestUserAgentInfo(instancePtr, hRequest, pchUserAgentInfo); + } else { + return NativeMethodsUnderlying.ISteamHTTP_SetHTTPRequestUserAgentInfo(instancePtr, hRequest, pchUserAgentInfo); + } + } + + public static bool ISteamHTTP_SetHTTPRequestRequiresVerifiedCertificate(IntPtr instancePtr, HTTPRequestHandle hRequest, [MarshalAs(UnmanagedType.I1)] bool bRequireVerifiedCertificate) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamHTTP_SetHTTPRequestRequiresVerifiedCertificate(instancePtr, hRequest, bRequireVerifiedCertificate); + } else { + return NativeMethodsUnderlying.ISteamHTTP_SetHTTPRequestRequiresVerifiedCertificate(instancePtr, hRequest, bRequireVerifiedCertificate); + } + } + + public static bool ISteamHTTP_SetHTTPRequestAbsoluteTimeoutMS(IntPtr instancePtr, HTTPRequestHandle hRequest, uint unMilliseconds) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamHTTP_SetHTTPRequestAbsoluteTimeoutMS(instancePtr, hRequest, unMilliseconds); + } else { + return NativeMethodsUnderlying.ISteamHTTP_SetHTTPRequestAbsoluteTimeoutMS(instancePtr, hRequest, unMilliseconds); + } + } + + public static bool ISteamHTTP_GetHTTPRequestWasTimedOut(IntPtr instancePtr, HTTPRequestHandle hRequest, out bool pbWasTimedOut) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamHTTP_GetHTTPRequestWasTimedOut(instancePtr, hRequest, out pbWasTimedOut); + } else { + return NativeMethodsUnderlying.ISteamHTTP_GetHTTPRequestWasTimedOut(instancePtr, hRequest, out pbWasTimedOut); + } + } + + public static bool ISteamInput_Init(IntPtr instancePtr, [MarshalAs(UnmanagedType.I1)] bool bExplicitlyCallRunFrame) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamInput_Init(instancePtr, bExplicitlyCallRunFrame); + } else { + return NativeMethodsUnderlying.ISteamInput_Init(instancePtr, bExplicitlyCallRunFrame); + } + } + + public static bool ISteamInput_Shutdown(IntPtr instancePtr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamInput_Shutdown(instancePtr); + } else { + return NativeMethodsUnderlying.ISteamInput_Shutdown(instancePtr); + } + } + + public static bool ISteamInput_SetInputActionManifestFilePath(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchInputActionManifestAbsolutePath) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamInput_SetInputActionManifestFilePath(instancePtr, pchInputActionManifestAbsolutePath); + } else { + return NativeMethodsUnderlying.ISteamInput_SetInputActionManifestFilePath(instancePtr, pchInputActionManifestAbsolutePath); + } + } + + public static void ISteamInput_RunFrame(IntPtr instancePtr, [MarshalAs(UnmanagedType.I1)] bool bReservedValue) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamInput_RunFrame(instancePtr, bReservedValue); + } else { + NativeMethodsUnderlying.ISteamInput_RunFrame(instancePtr, bReservedValue); + } + } + + public static bool ISteamInput_BWaitForData(IntPtr instancePtr, [MarshalAs(UnmanagedType.I1)] bool bWaitForever, uint unTimeout) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamInput_BWaitForData(instancePtr, bWaitForever, unTimeout); + } else { + return NativeMethodsUnderlying.ISteamInput_BWaitForData(instancePtr, bWaitForever, unTimeout); + } + } + + public static bool ISteamInput_BNewDataAvailable(IntPtr instancePtr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamInput_BNewDataAvailable(instancePtr); + } else { + return NativeMethodsUnderlying.ISteamInput_BNewDataAvailable(instancePtr); + } + } + + public static int ISteamInput_GetConnectedControllers(IntPtr instancePtr, [In, Out] InputHandle_t[] handlesOut) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamInput_GetConnectedControllers(instancePtr, handlesOut); + } else { + return NativeMethodsUnderlying.ISteamInput_GetConnectedControllers(instancePtr, handlesOut); + } + } + + public static void ISteamInput_EnableDeviceCallbacks(IntPtr instancePtr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamInput_EnableDeviceCallbacks(instancePtr); + } else { + NativeMethodsUnderlying.ISteamInput_EnableDeviceCallbacks(instancePtr); + } + } + + public static void ISteamInput_EnableActionEventCallbacks(IntPtr instancePtr, SteamInputActionEventCallbackPointer pCallback) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamInput_EnableActionEventCallbacks(instancePtr, pCallback); + } else { + NativeMethodsUnderlying.ISteamInput_EnableActionEventCallbacks(instancePtr, pCallback); + } + } + + public static ulong ISteamInput_GetActionSetHandle(IntPtr instancePtr, InteropHelp.UTF8StringHandle pszActionSetName) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamInput_GetActionSetHandle(instancePtr, pszActionSetName); + } else { + return NativeMethodsUnderlying.ISteamInput_GetActionSetHandle(instancePtr, pszActionSetName); + } + } + + public static void ISteamInput_ActivateActionSet(IntPtr instancePtr, InputHandle_t inputHandle, InputActionSetHandle_t actionSetHandle) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamInput_ActivateActionSet(instancePtr, inputHandle, actionSetHandle); + } else { + NativeMethodsUnderlying.ISteamInput_ActivateActionSet(instancePtr, inputHandle, actionSetHandle); + } + } + + public static ulong ISteamInput_GetCurrentActionSet(IntPtr instancePtr, InputHandle_t inputHandle) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamInput_GetCurrentActionSet(instancePtr, inputHandle); + } else { + return NativeMethodsUnderlying.ISteamInput_GetCurrentActionSet(instancePtr, inputHandle); + } + } + + public static void ISteamInput_ActivateActionSetLayer(IntPtr instancePtr, InputHandle_t inputHandle, InputActionSetHandle_t actionSetLayerHandle) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamInput_ActivateActionSetLayer(instancePtr, inputHandle, actionSetLayerHandle); + } else { + NativeMethodsUnderlying.ISteamInput_ActivateActionSetLayer(instancePtr, inputHandle, actionSetLayerHandle); + } + } + + public static void ISteamInput_DeactivateActionSetLayer(IntPtr instancePtr, InputHandle_t inputHandle, InputActionSetHandle_t actionSetLayerHandle) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamInput_DeactivateActionSetLayer(instancePtr, inputHandle, actionSetLayerHandle); + } else { + NativeMethodsUnderlying.ISteamInput_DeactivateActionSetLayer(instancePtr, inputHandle, actionSetLayerHandle); + } + } + + public static void ISteamInput_DeactivateAllActionSetLayers(IntPtr instancePtr, InputHandle_t inputHandle) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamInput_DeactivateAllActionSetLayers(instancePtr, inputHandle); + } else { + NativeMethodsUnderlying.ISteamInput_DeactivateAllActionSetLayers(instancePtr, inputHandle); + } + } + + public static int ISteamInput_GetActiveActionSetLayers(IntPtr instancePtr, InputHandle_t inputHandle, [In, Out] InputActionSetHandle_t[] handlesOut) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamInput_GetActiveActionSetLayers(instancePtr, inputHandle, handlesOut); + } else { + return NativeMethodsUnderlying.ISteamInput_GetActiveActionSetLayers(instancePtr, inputHandle, handlesOut); + } + } + + public static ulong ISteamInput_GetDigitalActionHandle(IntPtr instancePtr, InteropHelp.UTF8StringHandle pszActionName) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamInput_GetDigitalActionHandle(instancePtr, pszActionName); + } else { + return NativeMethodsUnderlying.ISteamInput_GetDigitalActionHandle(instancePtr, pszActionName); + } + } + + public static InputDigitalActionData_t ISteamInput_GetDigitalActionData(IntPtr instancePtr, InputHandle_t inputHandle, InputDigitalActionHandle_t digitalActionHandle) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamInput_GetDigitalActionData(instancePtr, inputHandle, digitalActionHandle); + } else { + return NativeMethodsUnderlying.ISteamInput_GetDigitalActionData(instancePtr, inputHandle, digitalActionHandle); + } + } + + public static int ISteamInput_GetDigitalActionOrigins(IntPtr instancePtr, InputHandle_t inputHandle, InputActionSetHandle_t actionSetHandle, InputDigitalActionHandle_t digitalActionHandle, [In, Out] EInputActionOrigin[] originsOut) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamInput_GetDigitalActionOrigins(instancePtr, inputHandle, actionSetHandle, digitalActionHandle, originsOut); + } else { + return NativeMethodsUnderlying.ISteamInput_GetDigitalActionOrigins(instancePtr, inputHandle, actionSetHandle, digitalActionHandle, originsOut); + } + } + + public static IntPtr ISteamInput_GetStringForDigitalActionName(IntPtr instancePtr, InputDigitalActionHandle_t eActionHandle) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamInput_GetStringForDigitalActionName(instancePtr, eActionHandle); + } else { + return NativeMethodsUnderlying.ISteamInput_GetStringForDigitalActionName(instancePtr, eActionHandle); + } + } + + public static ulong ISteamInput_GetAnalogActionHandle(IntPtr instancePtr, InteropHelp.UTF8StringHandle pszActionName) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamInput_GetAnalogActionHandle(instancePtr, pszActionName); + } else { + return NativeMethodsUnderlying.ISteamInput_GetAnalogActionHandle(instancePtr, pszActionName); + } + } + + public static InputAnalogActionData_t ISteamInput_GetAnalogActionData(IntPtr instancePtr, InputHandle_t inputHandle, InputAnalogActionHandle_t analogActionHandle) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamInput_GetAnalogActionData(instancePtr, inputHandle, analogActionHandle); + } else { + return NativeMethodsUnderlying.ISteamInput_GetAnalogActionData(instancePtr, inputHandle, analogActionHandle); + } + } + + public static int ISteamInput_GetAnalogActionOrigins(IntPtr instancePtr, InputHandle_t inputHandle, InputActionSetHandle_t actionSetHandle, InputAnalogActionHandle_t analogActionHandle, [In, Out] EInputActionOrigin[] originsOut) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamInput_GetAnalogActionOrigins(instancePtr, inputHandle, actionSetHandle, analogActionHandle, originsOut); + } else { + return NativeMethodsUnderlying.ISteamInput_GetAnalogActionOrigins(instancePtr, inputHandle, actionSetHandle, analogActionHandle, originsOut); + } + } + + public static IntPtr ISteamInput_GetGlyphPNGForActionOrigin(IntPtr instancePtr, EInputActionOrigin eOrigin, ESteamInputGlyphSize eSize, uint unFlags) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamInput_GetGlyphPNGForActionOrigin(instancePtr, eOrigin, eSize, unFlags); + } else { + return NativeMethodsUnderlying.ISteamInput_GetGlyphPNGForActionOrigin(instancePtr, eOrigin, eSize, unFlags); + } + } + + public static IntPtr ISteamInput_GetGlyphSVGForActionOrigin(IntPtr instancePtr, EInputActionOrigin eOrigin, uint unFlags) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamInput_GetGlyphSVGForActionOrigin(instancePtr, eOrigin, unFlags); + } else { + return NativeMethodsUnderlying.ISteamInput_GetGlyphSVGForActionOrigin(instancePtr, eOrigin, unFlags); + } + } + + public static IntPtr ISteamInput_GetGlyphForActionOrigin_Legacy(IntPtr instancePtr, EInputActionOrigin eOrigin) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamInput_GetGlyphForActionOrigin_Legacy(instancePtr, eOrigin); + } else { + return NativeMethodsUnderlying.ISteamInput_GetGlyphForActionOrigin_Legacy(instancePtr, eOrigin); + } + } + + public static IntPtr ISteamInput_GetStringForActionOrigin(IntPtr instancePtr, EInputActionOrigin eOrigin) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamInput_GetStringForActionOrigin(instancePtr, eOrigin); + } else { + return NativeMethodsUnderlying.ISteamInput_GetStringForActionOrigin(instancePtr, eOrigin); + } + } + + public static IntPtr ISteamInput_GetStringForAnalogActionName(IntPtr instancePtr, InputAnalogActionHandle_t eActionHandle) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamInput_GetStringForAnalogActionName(instancePtr, eActionHandle); + } else { + return NativeMethodsUnderlying.ISteamInput_GetStringForAnalogActionName(instancePtr, eActionHandle); + } + } + + public static void ISteamInput_StopAnalogActionMomentum(IntPtr instancePtr, InputHandle_t inputHandle, InputAnalogActionHandle_t eAction) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamInput_StopAnalogActionMomentum(instancePtr, inputHandle, eAction); + } else { + NativeMethodsUnderlying.ISteamInput_StopAnalogActionMomentum(instancePtr, inputHandle, eAction); + } + } + + public static InputMotionData_t ISteamInput_GetMotionData(IntPtr instancePtr, InputHandle_t inputHandle) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamInput_GetMotionData(instancePtr, inputHandle); + } else { + return NativeMethodsUnderlying.ISteamInput_GetMotionData(instancePtr, inputHandle); + } + } + + public static void ISteamInput_TriggerVibration(IntPtr instancePtr, InputHandle_t inputHandle, ushort usLeftSpeed, ushort usRightSpeed) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamInput_TriggerVibration(instancePtr, inputHandle, usLeftSpeed, usRightSpeed); + } else { + NativeMethodsUnderlying.ISteamInput_TriggerVibration(instancePtr, inputHandle, usLeftSpeed, usRightSpeed); + } + } + + public static void ISteamInput_TriggerVibrationExtended(IntPtr instancePtr, InputHandle_t inputHandle, ushort usLeftSpeed, ushort usRightSpeed, ushort usLeftTriggerSpeed, ushort usRightTriggerSpeed) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamInput_TriggerVibrationExtended(instancePtr, inputHandle, usLeftSpeed, usRightSpeed, usLeftTriggerSpeed, usRightTriggerSpeed); + } else { + NativeMethodsUnderlying.ISteamInput_TriggerVibrationExtended(instancePtr, inputHandle, usLeftSpeed, usRightSpeed, usLeftTriggerSpeed, usRightTriggerSpeed); + } + } + + public static void ISteamInput_TriggerSimpleHapticEvent(IntPtr instancePtr, InputHandle_t inputHandle, EControllerHapticLocation eHapticLocation, byte nIntensity, char nGainDB, byte nOtherIntensity, char nOtherGainDB) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamInput_TriggerSimpleHapticEvent(instancePtr, inputHandle, eHapticLocation, nIntensity, nGainDB, nOtherIntensity, nOtherGainDB); + } else { + NativeMethodsUnderlying.ISteamInput_TriggerSimpleHapticEvent(instancePtr, inputHandle, eHapticLocation, nIntensity, nGainDB, nOtherIntensity, nOtherGainDB); + } + } + + public static void ISteamInput_SetLEDColor(IntPtr instancePtr, InputHandle_t inputHandle, byte nColorR, byte nColorG, byte nColorB, uint nFlags) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamInput_SetLEDColor(instancePtr, inputHandle, nColorR, nColorG, nColorB, nFlags); + } else { + NativeMethodsUnderlying.ISteamInput_SetLEDColor(instancePtr, inputHandle, nColorR, nColorG, nColorB, nFlags); + } + } + + public static void ISteamInput_Legacy_TriggerHapticPulse(IntPtr instancePtr, InputHandle_t inputHandle, ESteamControllerPad eTargetPad, ushort usDurationMicroSec) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamInput_Legacy_TriggerHapticPulse(instancePtr, inputHandle, eTargetPad, usDurationMicroSec); + } else { + NativeMethodsUnderlying.ISteamInput_Legacy_TriggerHapticPulse(instancePtr, inputHandle, eTargetPad, usDurationMicroSec); + } + } + + public static void ISteamInput_Legacy_TriggerRepeatedHapticPulse(IntPtr instancePtr, InputHandle_t inputHandle, ESteamControllerPad eTargetPad, ushort usDurationMicroSec, ushort usOffMicroSec, ushort unRepeat, uint nFlags) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamInput_Legacy_TriggerRepeatedHapticPulse(instancePtr, inputHandle, eTargetPad, usDurationMicroSec, usOffMicroSec, unRepeat, nFlags); + } else { + NativeMethodsUnderlying.ISteamInput_Legacy_TriggerRepeatedHapticPulse(instancePtr, inputHandle, eTargetPad, usDurationMicroSec, usOffMicroSec, unRepeat, nFlags); + } + } + + public static bool ISteamInput_ShowBindingPanel(IntPtr instancePtr, InputHandle_t inputHandle) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamInput_ShowBindingPanel(instancePtr, inputHandle); + } else { + return NativeMethodsUnderlying.ISteamInput_ShowBindingPanel(instancePtr, inputHandle); + } + } + + public static ESteamInputType ISteamInput_GetInputTypeForHandle(IntPtr instancePtr, InputHandle_t inputHandle) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamInput_GetInputTypeForHandle(instancePtr, inputHandle); + } else { + return NativeMethodsUnderlying.ISteamInput_GetInputTypeForHandle(instancePtr, inputHandle); + } + } + + public static ulong ISteamInput_GetControllerForGamepadIndex(IntPtr instancePtr, int nIndex) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamInput_GetControllerForGamepadIndex(instancePtr, nIndex); + } else { + return NativeMethodsUnderlying.ISteamInput_GetControllerForGamepadIndex(instancePtr, nIndex); + } + } + + public static int ISteamInput_GetGamepadIndexForController(IntPtr instancePtr, InputHandle_t ulinputHandle) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamInput_GetGamepadIndexForController(instancePtr, ulinputHandle); + } else { + return NativeMethodsUnderlying.ISteamInput_GetGamepadIndexForController(instancePtr, ulinputHandle); + } + } + + public static IntPtr ISteamInput_GetStringForXboxOrigin(IntPtr instancePtr, EXboxOrigin eOrigin) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamInput_GetStringForXboxOrigin(instancePtr, eOrigin); + } else { + return NativeMethodsUnderlying.ISteamInput_GetStringForXboxOrigin(instancePtr, eOrigin); + } + } + + public static IntPtr ISteamInput_GetGlyphForXboxOrigin(IntPtr instancePtr, EXboxOrigin eOrigin) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamInput_GetGlyphForXboxOrigin(instancePtr, eOrigin); + } else { + return NativeMethodsUnderlying.ISteamInput_GetGlyphForXboxOrigin(instancePtr, eOrigin); + } + } + + public static EInputActionOrigin ISteamInput_GetActionOriginFromXboxOrigin(IntPtr instancePtr, InputHandle_t inputHandle, EXboxOrigin eOrigin) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamInput_GetActionOriginFromXboxOrigin(instancePtr, inputHandle, eOrigin); + } else { + return NativeMethodsUnderlying.ISteamInput_GetActionOriginFromXboxOrigin(instancePtr, inputHandle, eOrigin); + } + } + + public static EInputActionOrigin ISteamInput_TranslateActionOrigin(IntPtr instancePtr, ESteamInputType eDestinationInputType, EInputActionOrigin eSourceOrigin) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamInput_TranslateActionOrigin(instancePtr, eDestinationInputType, eSourceOrigin); + } else { + return NativeMethodsUnderlying.ISteamInput_TranslateActionOrigin(instancePtr, eDestinationInputType, eSourceOrigin); + } + } + + public static bool ISteamInput_GetDeviceBindingRevision(IntPtr instancePtr, InputHandle_t inputHandle, out int pMajor, out int pMinor) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamInput_GetDeviceBindingRevision(instancePtr, inputHandle, out pMajor, out pMinor); + } else { + return NativeMethodsUnderlying.ISteamInput_GetDeviceBindingRevision(instancePtr, inputHandle, out pMajor, out pMinor); + } + } + + public static uint ISteamInput_GetRemotePlaySessionID(IntPtr instancePtr, InputHandle_t inputHandle) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamInput_GetRemotePlaySessionID(instancePtr, inputHandle); + } else { + return NativeMethodsUnderlying.ISteamInput_GetRemotePlaySessionID(instancePtr, inputHandle); + } + } + + public static ushort ISteamInput_GetSessionInputConfigurationSettings(IntPtr instancePtr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamInput_GetSessionInputConfigurationSettings(instancePtr); + } else { + return NativeMethodsUnderlying.ISteamInput_GetSessionInputConfigurationSettings(instancePtr); + } + } + + public static void ISteamInput_SetDualSenseTriggerEffect(IntPtr instancePtr, InputHandle_t inputHandle, IntPtr pParam) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamInput_SetDualSenseTriggerEffect(instancePtr, inputHandle, pParam); + } else { + NativeMethodsUnderlying.ISteamInput_SetDualSenseTriggerEffect(instancePtr, inputHandle, pParam); + } + } + + public static EResult ISteamInventory_GetResultStatus(IntPtr instancePtr, SteamInventoryResult_t resultHandle) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamInventory_GetResultStatus(instancePtr, resultHandle); + } else { + return NativeMethodsUnderlying.ISteamInventory_GetResultStatus(instancePtr, resultHandle); + } + } + + public static bool ISteamInventory_GetResultItems(IntPtr instancePtr, SteamInventoryResult_t resultHandle, [In, Out] SteamItemDetails_t[] pOutItemsArray, ref uint punOutItemsArraySize) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamInventory_GetResultItems(instancePtr, resultHandle, pOutItemsArray, ref punOutItemsArraySize); + } else { + return NativeMethodsUnderlying.ISteamInventory_GetResultItems(instancePtr, resultHandle, pOutItemsArray, ref punOutItemsArraySize); + } + } + + public static bool ISteamInventory_GetResultItemProperty(IntPtr instancePtr, SteamInventoryResult_t resultHandle, uint unItemIndex, InteropHelp.UTF8StringHandle pchPropertyName, IntPtr pchValueBuffer, ref uint punValueBufferSizeOut) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamInventory_GetResultItemProperty(instancePtr, resultHandle, unItemIndex, pchPropertyName, pchValueBuffer, ref punValueBufferSizeOut); + } else { + return NativeMethodsUnderlying.ISteamInventory_GetResultItemProperty(instancePtr, resultHandle, unItemIndex, pchPropertyName, pchValueBuffer, ref punValueBufferSizeOut); + } + } + + public static uint ISteamInventory_GetResultTimestamp(IntPtr instancePtr, SteamInventoryResult_t resultHandle) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamInventory_GetResultTimestamp(instancePtr, resultHandle); + } else { + return NativeMethodsUnderlying.ISteamInventory_GetResultTimestamp(instancePtr, resultHandle); + } + } + + public static bool ISteamInventory_CheckResultSteamID(IntPtr instancePtr, SteamInventoryResult_t resultHandle, CSteamID steamIDExpected) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamInventory_CheckResultSteamID(instancePtr, resultHandle, steamIDExpected); + } else { + return NativeMethodsUnderlying.ISteamInventory_CheckResultSteamID(instancePtr, resultHandle, steamIDExpected); + } + } + + public static void ISteamInventory_DestroyResult(IntPtr instancePtr, SteamInventoryResult_t resultHandle) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamInventory_DestroyResult(instancePtr, resultHandle); + } else { + NativeMethodsUnderlying.ISteamInventory_DestroyResult(instancePtr, resultHandle); + } + } + + public static bool ISteamInventory_GetAllItems(IntPtr instancePtr, out SteamInventoryResult_t pResultHandle) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamInventory_GetAllItems(instancePtr, out pResultHandle); + } else { + return NativeMethodsUnderlying.ISteamInventory_GetAllItems(instancePtr, out pResultHandle); + } + } + + public static bool ISteamInventory_GetItemsByID(IntPtr instancePtr, out SteamInventoryResult_t pResultHandle, [In, Out] SteamItemInstanceID_t[] pInstanceIDs, uint unCountInstanceIDs) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamInventory_GetItemsByID(instancePtr, out pResultHandle, pInstanceIDs, unCountInstanceIDs); + } else { + return NativeMethodsUnderlying.ISteamInventory_GetItemsByID(instancePtr, out pResultHandle, pInstanceIDs, unCountInstanceIDs); + } + } + + public static bool ISteamInventory_SerializeResult(IntPtr instancePtr, SteamInventoryResult_t resultHandle, byte[] pOutBuffer, out uint punOutBufferSize) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamInventory_SerializeResult(instancePtr, resultHandle, pOutBuffer, out punOutBufferSize); + } else { + return NativeMethodsUnderlying.ISteamInventory_SerializeResult(instancePtr, resultHandle, pOutBuffer, out punOutBufferSize); + } + } + + public static bool ISteamInventory_DeserializeResult(IntPtr instancePtr, out SteamInventoryResult_t pOutResultHandle, byte[] pBuffer, uint unBufferSize, [MarshalAs(UnmanagedType.I1)] bool bRESERVED_MUST_BE_FALSE) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamInventory_DeserializeResult(instancePtr, out pOutResultHandle, pBuffer, unBufferSize, bRESERVED_MUST_BE_FALSE); + } else { + return NativeMethodsUnderlying.ISteamInventory_DeserializeResult(instancePtr, out pOutResultHandle, pBuffer, unBufferSize, bRESERVED_MUST_BE_FALSE); + } + } + + public static bool ISteamInventory_GenerateItems(IntPtr instancePtr, out SteamInventoryResult_t pResultHandle, [In, Out] SteamItemDef_t[] pArrayItemDefs, [In, Out] uint[] punArrayQuantity, uint unArrayLength) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamInventory_GenerateItems(instancePtr, out pResultHandle, pArrayItemDefs, punArrayQuantity, unArrayLength); + } else { + return NativeMethodsUnderlying.ISteamInventory_GenerateItems(instancePtr, out pResultHandle, pArrayItemDefs, punArrayQuantity, unArrayLength); + } + } + + public static bool ISteamInventory_GrantPromoItems(IntPtr instancePtr, out SteamInventoryResult_t pResultHandle) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamInventory_GrantPromoItems(instancePtr, out pResultHandle); + } else { + return NativeMethodsUnderlying.ISteamInventory_GrantPromoItems(instancePtr, out pResultHandle); + } + } + + public static bool ISteamInventory_AddPromoItem(IntPtr instancePtr, out SteamInventoryResult_t pResultHandle, SteamItemDef_t itemDef) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamInventory_AddPromoItem(instancePtr, out pResultHandle, itemDef); + } else { + return NativeMethodsUnderlying.ISteamInventory_AddPromoItem(instancePtr, out pResultHandle, itemDef); + } + } + + public static bool ISteamInventory_AddPromoItems(IntPtr instancePtr, out SteamInventoryResult_t pResultHandle, [In, Out] SteamItemDef_t[] pArrayItemDefs, uint unArrayLength) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamInventory_AddPromoItems(instancePtr, out pResultHandle, pArrayItemDefs, unArrayLength); + } else { + return NativeMethodsUnderlying.ISteamInventory_AddPromoItems(instancePtr, out pResultHandle, pArrayItemDefs, unArrayLength); + } + } + + public static bool ISteamInventory_ConsumeItem(IntPtr instancePtr, out SteamInventoryResult_t pResultHandle, SteamItemInstanceID_t itemConsume, uint unQuantity) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamInventory_ConsumeItem(instancePtr, out pResultHandle, itemConsume, unQuantity); + } else { + return NativeMethodsUnderlying.ISteamInventory_ConsumeItem(instancePtr, out pResultHandle, itemConsume, unQuantity); + } + } + + public static bool ISteamInventory_ExchangeItems(IntPtr instancePtr, out SteamInventoryResult_t pResultHandle, [In, Out] SteamItemDef_t[] pArrayGenerate, [In, Out] uint[] punArrayGenerateQuantity, uint unArrayGenerateLength, [In, Out] SteamItemInstanceID_t[] pArrayDestroy, [In, Out] uint[] punArrayDestroyQuantity, uint unArrayDestroyLength) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamInventory_ExchangeItems(instancePtr, out pResultHandle, pArrayGenerate, punArrayGenerateQuantity, unArrayGenerateLength, pArrayDestroy, punArrayDestroyQuantity, unArrayDestroyLength); + } else { + return NativeMethodsUnderlying.ISteamInventory_ExchangeItems(instancePtr, out pResultHandle, pArrayGenerate, punArrayGenerateQuantity, unArrayGenerateLength, pArrayDestroy, punArrayDestroyQuantity, unArrayDestroyLength); + } + } + + public static bool ISteamInventory_TransferItemQuantity(IntPtr instancePtr, out SteamInventoryResult_t pResultHandle, SteamItemInstanceID_t itemIdSource, uint unQuantity, SteamItemInstanceID_t itemIdDest) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamInventory_TransferItemQuantity(instancePtr, out pResultHandle, itemIdSource, unQuantity, itemIdDest); + } else { + return NativeMethodsUnderlying.ISteamInventory_TransferItemQuantity(instancePtr, out pResultHandle, itemIdSource, unQuantity, itemIdDest); + } + } + + public static void ISteamInventory_SendItemDropHeartbeat(IntPtr instancePtr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamInventory_SendItemDropHeartbeat(instancePtr); + } else { + NativeMethodsUnderlying.ISteamInventory_SendItemDropHeartbeat(instancePtr); + } + } + + public static bool ISteamInventory_TriggerItemDrop(IntPtr instancePtr, out SteamInventoryResult_t pResultHandle, SteamItemDef_t dropListDefinition) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamInventory_TriggerItemDrop(instancePtr, out pResultHandle, dropListDefinition); + } else { + return NativeMethodsUnderlying.ISteamInventory_TriggerItemDrop(instancePtr, out pResultHandle, dropListDefinition); + } + } + + public static bool ISteamInventory_TradeItems(IntPtr instancePtr, out SteamInventoryResult_t pResultHandle, CSteamID steamIDTradePartner, [In, Out] SteamItemInstanceID_t[] pArrayGive, [In, Out] uint[] pArrayGiveQuantity, uint nArrayGiveLength, [In, Out] SteamItemInstanceID_t[] pArrayGet, [In, Out] uint[] pArrayGetQuantity, uint nArrayGetLength) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamInventory_TradeItems(instancePtr, out pResultHandle, steamIDTradePartner, pArrayGive, pArrayGiveQuantity, nArrayGiveLength, pArrayGet, pArrayGetQuantity, nArrayGetLength); + } else { + return NativeMethodsUnderlying.ISteamInventory_TradeItems(instancePtr, out pResultHandle, steamIDTradePartner, pArrayGive, pArrayGiveQuantity, nArrayGiveLength, pArrayGet, pArrayGetQuantity, nArrayGetLength); + } + } + + public static bool ISteamInventory_LoadItemDefinitions(IntPtr instancePtr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamInventory_LoadItemDefinitions(instancePtr); + } else { + return NativeMethodsUnderlying.ISteamInventory_LoadItemDefinitions(instancePtr); + } + } + + public static bool ISteamInventory_GetItemDefinitionIDs(IntPtr instancePtr, [In, Out] SteamItemDef_t[] pItemDefIDs, ref uint punItemDefIDsArraySize) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamInventory_GetItemDefinitionIDs(instancePtr, pItemDefIDs, ref punItemDefIDsArraySize); + } else { + return NativeMethodsUnderlying.ISteamInventory_GetItemDefinitionIDs(instancePtr, pItemDefIDs, ref punItemDefIDsArraySize); + } + } + + public static bool ISteamInventory_GetItemDefinitionProperty(IntPtr instancePtr, SteamItemDef_t iDefinition, InteropHelp.UTF8StringHandle pchPropertyName, IntPtr pchValueBuffer, ref uint punValueBufferSizeOut) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamInventory_GetItemDefinitionProperty(instancePtr, iDefinition, pchPropertyName, pchValueBuffer, ref punValueBufferSizeOut); + } else { + return NativeMethodsUnderlying.ISteamInventory_GetItemDefinitionProperty(instancePtr, iDefinition, pchPropertyName, pchValueBuffer, ref punValueBufferSizeOut); + } + } + + public static ulong ISteamInventory_RequestEligiblePromoItemDefinitionsIDs(IntPtr instancePtr, CSteamID steamID) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamInventory_RequestEligiblePromoItemDefinitionsIDs(instancePtr, steamID); + } else { + return NativeMethodsUnderlying.ISteamInventory_RequestEligiblePromoItemDefinitionsIDs(instancePtr, steamID); + } + } + + public static bool ISteamInventory_GetEligiblePromoItemDefinitionIDs(IntPtr instancePtr, CSteamID steamID, [In, Out] SteamItemDef_t[] pItemDefIDs, ref uint punItemDefIDsArraySize) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamInventory_GetEligiblePromoItemDefinitionIDs(instancePtr, steamID, pItemDefIDs, ref punItemDefIDsArraySize); + } else { + return NativeMethodsUnderlying.ISteamInventory_GetEligiblePromoItemDefinitionIDs(instancePtr, steamID, pItemDefIDs, ref punItemDefIDsArraySize); + } + } + + public static ulong ISteamInventory_StartPurchase(IntPtr instancePtr, [In, Out] SteamItemDef_t[] pArrayItemDefs, [In, Out] uint[] punArrayQuantity, uint unArrayLength) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamInventory_StartPurchase(instancePtr, pArrayItemDefs, punArrayQuantity, unArrayLength); + } else { + return NativeMethodsUnderlying.ISteamInventory_StartPurchase(instancePtr, pArrayItemDefs, punArrayQuantity, unArrayLength); + } + } + + public static ulong ISteamInventory_RequestPrices(IntPtr instancePtr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamInventory_RequestPrices(instancePtr); + } else { + return NativeMethodsUnderlying.ISteamInventory_RequestPrices(instancePtr); + } + } + + public static uint ISteamInventory_GetNumItemsWithPrices(IntPtr instancePtr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamInventory_GetNumItemsWithPrices(instancePtr); + } else { + return NativeMethodsUnderlying.ISteamInventory_GetNumItemsWithPrices(instancePtr); + } + } + + public static bool ISteamInventory_GetItemsWithPrices(IntPtr instancePtr, [In, Out] SteamItemDef_t[] pArrayItemDefs, [In, Out] ulong[] pCurrentPrices, [In, Out] ulong[] pBasePrices, uint unArrayLength) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamInventory_GetItemsWithPrices(instancePtr, pArrayItemDefs, pCurrentPrices, pBasePrices, unArrayLength); + } else { + return NativeMethodsUnderlying.ISteamInventory_GetItemsWithPrices(instancePtr, pArrayItemDefs, pCurrentPrices, pBasePrices, unArrayLength); + } + } + + public static bool ISteamInventory_GetItemPrice(IntPtr instancePtr, SteamItemDef_t iDefinition, out ulong pCurrentPrice, out ulong pBasePrice) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamInventory_GetItemPrice(instancePtr, iDefinition, out pCurrentPrice, out pBasePrice); + } else { + return NativeMethodsUnderlying.ISteamInventory_GetItemPrice(instancePtr, iDefinition, out pCurrentPrice, out pBasePrice); + } + } + + public static ulong ISteamInventory_StartUpdateProperties(IntPtr instancePtr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamInventory_StartUpdateProperties(instancePtr); + } else { + return NativeMethodsUnderlying.ISteamInventory_StartUpdateProperties(instancePtr); + } + } + + public static bool ISteamInventory_RemoveProperty(IntPtr instancePtr, SteamInventoryUpdateHandle_t handle, SteamItemInstanceID_t nItemID, InteropHelp.UTF8StringHandle pchPropertyName) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamInventory_RemoveProperty(instancePtr, handle, nItemID, pchPropertyName); + } else { + return NativeMethodsUnderlying.ISteamInventory_RemoveProperty(instancePtr, handle, nItemID, pchPropertyName); + } + } + + public static bool ISteamInventory_SetPropertyString(IntPtr instancePtr, SteamInventoryUpdateHandle_t handle, SteamItemInstanceID_t nItemID, InteropHelp.UTF8StringHandle pchPropertyName, InteropHelp.UTF8StringHandle pchPropertyValue) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamInventory_SetPropertyString(instancePtr, handle, nItemID, pchPropertyName, pchPropertyValue); + } else { + return NativeMethodsUnderlying.ISteamInventory_SetPropertyString(instancePtr, handle, nItemID, pchPropertyName, pchPropertyValue); + } + } + + public static bool ISteamInventory_SetPropertyBool(IntPtr instancePtr, SteamInventoryUpdateHandle_t handle, SteamItemInstanceID_t nItemID, InteropHelp.UTF8StringHandle pchPropertyName, [MarshalAs(UnmanagedType.I1)] bool bValue) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamInventory_SetPropertyBool(instancePtr, handle, nItemID, pchPropertyName, bValue); + } else { + return NativeMethodsUnderlying.ISteamInventory_SetPropertyBool(instancePtr, handle, nItemID, pchPropertyName, bValue); + } + } + + public static bool ISteamInventory_SetPropertyInt64(IntPtr instancePtr, SteamInventoryUpdateHandle_t handle, SteamItemInstanceID_t nItemID, InteropHelp.UTF8StringHandle pchPropertyName, long nValue) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamInventory_SetPropertyInt64(instancePtr, handle, nItemID, pchPropertyName, nValue); + } else { + return NativeMethodsUnderlying.ISteamInventory_SetPropertyInt64(instancePtr, handle, nItemID, pchPropertyName, nValue); + } + } + + public static bool ISteamInventory_SetPropertyFloat(IntPtr instancePtr, SteamInventoryUpdateHandle_t handle, SteamItemInstanceID_t nItemID, InteropHelp.UTF8StringHandle pchPropertyName, float flValue) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamInventory_SetPropertyFloat(instancePtr, handle, nItemID, pchPropertyName, flValue); + } else { + return NativeMethodsUnderlying.ISteamInventory_SetPropertyFloat(instancePtr, handle, nItemID, pchPropertyName, flValue); + } + } + + public static bool ISteamInventory_SubmitUpdateProperties(IntPtr instancePtr, SteamInventoryUpdateHandle_t handle, out SteamInventoryResult_t pResultHandle) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamInventory_SubmitUpdateProperties(instancePtr, handle, out pResultHandle); + } else { + return NativeMethodsUnderlying.ISteamInventory_SubmitUpdateProperties(instancePtr, handle, out pResultHandle); + } + } + + public static bool ISteamInventory_InspectItem(IntPtr instancePtr, out SteamInventoryResult_t pResultHandle, InteropHelp.UTF8StringHandle pchItemToken) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamInventory_InspectItem(instancePtr, out pResultHandle, pchItemToken); + } else { + return NativeMethodsUnderlying.ISteamInventory_InspectItem(instancePtr, out pResultHandle, pchItemToken); + } + } + + public static int ISteamMatchmaking_GetFavoriteGameCount(IntPtr instancePtr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamMatchmaking_GetFavoriteGameCount(instancePtr); + } else { + return NativeMethodsUnderlying.ISteamMatchmaking_GetFavoriteGameCount(instancePtr); + } + } + + public static bool ISteamMatchmaking_GetFavoriteGame(IntPtr instancePtr, int iGame, out AppId_t pnAppID, out uint pnIP, out ushort pnConnPort, out ushort pnQueryPort, out uint punFlags, out uint pRTime32LastPlayedOnServer) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamMatchmaking_GetFavoriteGame(instancePtr, iGame, out pnAppID, out pnIP, out pnConnPort, out pnQueryPort, out punFlags, out pRTime32LastPlayedOnServer); + } else { + return NativeMethodsUnderlying.ISteamMatchmaking_GetFavoriteGame(instancePtr, iGame, out pnAppID, out pnIP, out pnConnPort, out pnQueryPort, out punFlags, out pRTime32LastPlayedOnServer); + } + } + + public static int ISteamMatchmaking_AddFavoriteGame(IntPtr instancePtr, AppId_t nAppID, uint nIP, ushort nConnPort, ushort nQueryPort, uint unFlags, uint rTime32LastPlayedOnServer) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamMatchmaking_AddFavoriteGame(instancePtr, nAppID, nIP, nConnPort, nQueryPort, unFlags, rTime32LastPlayedOnServer); + } else { + return NativeMethodsUnderlying.ISteamMatchmaking_AddFavoriteGame(instancePtr, nAppID, nIP, nConnPort, nQueryPort, unFlags, rTime32LastPlayedOnServer); + } + } + + public static bool ISteamMatchmaking_RemoveFavoriteGame(IntPtr instancePtr, AppId_t nAppID, uint nIP, ushort nConnPort, ushort nQueryPort, uint unFlags) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamMatchmaking_RemoveFavoriteGame(instancePtr, nAppID, nIP, nConnPort, nQueryPort, unFlags); + } else { + return NativeMethodsUnderlying.ISteamMatchmaking_RemoveFavoriteGame(instancePtr, nAppID, nIP, nConnPort, nQueryPort, unFlags); + } + } + + public static ulong ISteamMatchmaking_RequestLobbyList(IntPtr instancePtr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamMatchmaking_RequestLobbyList(instancePtr); + } else { + return NativeMethodsUnderlying.ISteamMatchmaking_RequestLobbyList(instancePtr); + } + } + + public static void ISteamMatchmaking_AddRequestLobbyListStringFilter(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchKeyToMatch, InteropHelp.UTF8StringHandle pchValueToMatch, ELobbyComparison eComparisonType) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamMatchmaking_AddRequestLobbyListStringFilter(instancePtr, pchKeyToMatch, pchValueToMatch, eComparisonType); + } else { + NativeMethodsUnderlying.ISteamMatchmaking_AddRequestLobbyListStringFilter(instancePtr, pchKeyToMatch, pchValueToMatch, eComparisonType); + } + } + + public static void ISteamMatchmaking_AddRequestLobbyListNumericalFilter(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchKeyToMatch, int nValueToMatch, ELobbyComparison eComparisonType) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamMatchmaking_AddRequestLobbyListNumericalFilter(instancePtr, pchKeyToMatch, nValueToMatch, eComparisonType); + } else { + NativeMethodsUnderlying.ISteamMatchmaking_AddRequestLobbyListNumericalFilter(instancePtr, pchKeyToMatch, nValueToMatch, eComparisonType); + } + } + + public static void ISteamMatchmaking_AddRequestLobbyListNearValueFilter(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchKeyToMatch, int nValueToBeCloseTo) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamMatchmaking_AddRequestLobbyListNearValueFilter(instancePtr, pchKeyToMatch, nValueToBeCloseTo); + } else { + NativeMethodsUnderlying.ISteamMatchmaking_AddRequestLobbyListNearValueFilter(instancePtr, pchKeyToMatch, nValueToBeCloseTo); + } + } + + public static void ISteamMatchmaking_AddRequestLobbyListFilterSlotsAvailable(IntPtr instancePtr, int nSlotsAvailable) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamMatchmaking_AddRequestLobbyListFilterSlotsAvailable(instancePtr, nSlotsAvailable); + } else { + NativeMethodsUnderlying.ISteamMatchmaking_AddRequestLobbyListFilterSlotsAvailable(instancePtr, nSlotsAvailable); + } + } + + public static void ISteamMatchmaking_AddRequestLobbyListDistanceFilter(IntPtr instancePtr, ELobbyDistanceFilter eLobbyDistanceFilter) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamMatchmaking_AddRequestLobbyListDistanceFilter(instancePtr, eLobbyDistanceFilter); + } else { + NativeMethodsUnderlying.ISteamMatchmaking_AddRequestLobbyListDistanceFilter(instancePtr, eLobbyDistanceFilter); + } + } + + public static void ISteamMatchmaking_AddRequestLobbyListResultCountFilter(IntPtr instancePtr, int cMaxResults) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamMatchmaking_AddRequestLobbyListResultCountFilter(instancePtr, cMaxResults); + } else { + NativeMethodsUnderlying.ISteamMatchmaking_AddRequestLobbyListResultCountFilter(instancePtr, cMaxResults); + } + } + + public static void ISteamMatchmaking_AddRequestLobbyListCompatibleMembersFilter(IntPtr instancePtr, CSteamID steamIDLobby) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamMatchmaking_AddRequestLobbyListCompatibleMembersFilter(instancePtr, steamIDLobby); + } else { + NativeMethodsUnderlying.ISteamMatchmaking_AddRequestLobbyListCompatibleMembersFilter(instancePtr, steamIDLobby); + } + } + + public static ulong ISteamMatchmaking_GetLobbyByIndex(IntPtr instancePtr, int iLobby) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamMatchmaking_GetLobbyByIndex(instancePtr, iLobby); + } else { + return NativeMethodsUnderlying.ISteamMatchmaking_GetLobbyByIndex(instancePtr, iLobby); + } + } + + public static ulong ISteamMatchmaking_CreateLobby(IntPtr instancePtr, ELobbyType eLobbyType, int cMaxMembers) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamMatchmaking_CreateLobby(instancePtr, eLobbyType, cMaxMembers); + } else { + return NativeMethodsUnderlying.ISteamMatchmaking_CreateLobby(instancePtr, eLobbyType, cMaxMembers); + } + } + + public static ulong ISteamMatchmaking_JoinLobby(IntPtr instancePtr, CSteamID steamIDLobby) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamMatchmaking_JoinLobby(instancePtr, steamIDLobby); + } else { + return NativeMethodsUnderlying.ISteamMatchmaking_JoinLobby(instancePtr, steamIDLobby); + } + } + + public static void ISteamMatchmaking_LeaveLobby(IntPtr instancePtr, CSteamID steamIDLobby) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamMatchmaking_LeaveLobby(instancePtr, steamIDLobby); + } else { + NativeMethodsUnderlying.ISteamMatchmaking_LeaveLobby(instancePtr, steamIDLobby); + } + } + + public static bool ISteamMatchmaking_InviteUserToLobby(IntPtr instancePtr, CSteamID steamIDLobby, CSteamID steamIDInvitee) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamMatchmaking_InviteUserToLobby(instancePtr, steamIDLobby, steamIDInvitee); + } else { + return NativeMethodsUnderlying.ISteamMatchmaking_InviteUserToLobby(instancePtr, steamIDLobby, steamIDInvitee); + } + } + + public static int ISteamMatchmaking_GetNumLobbyMembers(IntPtr instancePtr, CSteamID steamIDLobby) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamMatchmaking_GetNumLobbyMembers(instancePtr, steamIDLobby); + } else { + return NativeMethodsUnderlying.ISteamMatchmaking_GetNumLobbyMembers(instancePtr, steamIDLobby); + } + } + + public static ulong ISteamMatchmaking_GetLobbyMemberByIndex(IntPtr instancePtr, CSteamID steamIDLobby, int iMember) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamMatchmaking_GetLobbyMemberByIndex(instancePtr, steamIDLobby, iMember); + } else { + return NativeMethodsUnderlying.ISteamMatchmaking_GetLobbyMemberByIndex(instancePtr, steamIDLobby, iMember); + } + } + + public static IntPtr ISteamMatchmaking_GetLobbyData(IntPtr instancePtr, CSteamID steamIDLobby, InteropHelp.UTF8StringHandle pchKey) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamMatchmaking_GetLobbyData(instancePtr, steamIDLobby, pchKey); + } else { + return NativeMethodsUnderlying.ISteamMatchmaking_GetLobbyData(instancePtr, steamIDLobby, pchKey); + } + } + + public static bool ISteamMatchmaking_SetLobbyData(IntPtr instancePtr, CSteamID steamIDLobby, InteropHelp.UTF8StringHandle pchKey, InteropHelp.UTF8StringHandle pchValue) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamMatchmaking_SetLobbyData(instancePtr, steamIDLobby, pchKey, pchValue); + } else { + return NativeMethodsUnderlying.ISteamMatchmaking_SetLobbyData(instancePtr, steamIDLobby, pchKey, pchValue); + } + } + + public static int ISteamMatchmaking_GetLobbyDataCount(IntPtr instancePtr, CSteamID steamIDLobby) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamMatchmaking_GetLobbyDataCount(instancePtr, steamIDLobby); + } else { + return NativeMethodsUnderlying.ISteamMatchmaking_GetLobbyDataCount(instancePtr, steamIDLobby); + } + } + + public static bool ISteamMatchmaking_GetLobbyDataByIndex(IntPtr instancePtr, CSteamID steamIDLobby, int iLobbyData, IntPtr pchKey, int cchKeyBufferSize, IntPtr pchValue, int cchValueBufferSize) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamMatchmaking_GetLobbyDataByIndex(instancePtr, steamIDLobby, iLobbyData, pchKey, cchKeyBufferSize, pchValue, cchValueBufferSize); + } else { + return NativeMethodsUnderlying.ISteamMatchmaking_GetLobbyDataByIndex(instancePtr, steamIDLobby, iLobbyData, pchKey, cchKeyBufferSize, pchValue, cchValueBufferSize); + } + } + + public static bool ISteamMatchmaking_DeleteLobbyData(IntPtr instancePtr, CSteamID steamIDLobby, InteropHelp.UTF8StringHandle pchKey) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamMatchmaking_DeleteLobbyData(instancePtr, steamIDLobby, pchKey); + } else { + return NativeMethodsUnderlying.ISteamMatchmaking_DeleteLobbyData(instancePtr, steamIDLobby, pchKey); + } + } + + public static IntPtr ISteamMatchmaking_GetLobbyMemberData(IntPtr instancePtr, CSteamID steamIDLobby, CSteamID steamIDUser, InteropHelp.UTF8StringHandle pchKey) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamMatchmaking_GetLobbyMemberData(instancePtr, steamIDLobby, steamIDUser, pchKey); + } else { + return NativeMethodsUnderlying.ISteamMatchmaking_GetLobbyMemberData(instancePtr, steamIDLobby, steamIDUser, pchKey); + } + } + + public static void ISteamMatchmaking_SetLobbyMemberData(IntPtr instancePtr, CSteamID steamIDLobby, InteropHelp.UTF8StringHandle pchKey, InteropHelp.UTF8StringHandle pchValue) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamMatchmaking_SetLobbyMemberData(instancePtr, steamIDLobby, pchKey, pchValue); + } else { + NativeMethodsUnderlying.ISteamMatchmaking_SetLobbyMemberData(instancePtr, steamIDLobby, pchKey, pchValue); + } + } + + public static bool ISteamMatchmaking_SendLobbyChatMsg(IntPtr instancePtr, CSteamID steamIDLobby, byte[] pvMsgBody, int cubMsgBody) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamMatchmaking_SendLobbyChatMsg(instancePtr, steamIDLobby, pvMsgBody, cubMsgBody); + } else { + return NativeMethodsUnderlying.ISteamMatchmaking_SendLobbyChatMsg(instancePtr, steamIDLobby, pvMsgBody, cubMsgBody); + } + } + + public static int ISteamMatchmaking_GetLobbyChatEntry(IntPtr instancePtr, CSteamID steamIDLobby, int iChatID, out CSteamID pSteamIDUser, byte[] pvData, int cubData, out EChatEntryType peChatEntryType) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamMatchmaking_GetLobbyChatEntry(instancePtr, steamIDLobby, iChatID, out pSteamIDUser, pvData, cubData, out peChatEntryType); + } else { + return NativeMethodsUnderlying.ISteamMatchmaking_GetLobbyChatEntry(instancePtr, steamIDLobby, iChatID, out pSteamIDUser, pvData, cubData, out peChatEntryType); + } + } + + public static bool ISteamMatchmaking_RequestLobbyData(IntPtr instancePtr, CSteamID steamIDLobby) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamMatchmaking_RequestLobbyData(instancePtr, steamIDLobby); + } else { + return NativeMethodsUnderlying.ISteamMatchmaking_RequestLobbyData(instancePtr, steamIDLobby); + } + } + + public static void ISteamMatchmaking_SetLobbyGameServer(IntPtr instancePtr, CSteamID steamIDLobby, uint unGameServerIP, ushort unGameServerPort, CSteamID steamIDGameServer) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamMatchmaking_SetLobbyGameServer(instancePtr, steamIDLobby, unGameServerIP, unGameServerPort, steamIDGameServer); + } else { + NativeMethodsUnderlying.ISteamMatchmaking_SetLobbyGameServer(instancePtr, steamIDLobby, unGameServerIP, unGameServerPort, steamIDGameServer); + } + } + + public static bool ISteamMatchmaking_GetLobbyGameServer(IntPtr instancePtr, CSteamID steamIDLobby, out uint punGameServerIP, out ushort punGameServerPort, out CSteamID psteamIDGameServer) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamMatchmaking_GetLobbyGameServer(instancePtr, steamIDLobby, out punGameServerIP, out punGameServerPort, out psteamIDGameServer); + } else { + return NativeMethodsUnderlying.ISteamMatchmaking_GetLobbyGameServer(instancePtr, steamIDLobby, out punGameServerIP, out punGameServerPort, out psteamIDGameServer); + } + } + + public static bool ISteamMatchmaking_SetLobbyMemberLimit(IntPtr instancePtr, CSteamID steamIDLobby, int cMaxMembers) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamMatchmaking_SetLobbyMemberLimit(instancePtr, steamIDLobby, cMaxMembers); + } else { + return NativeMethodsUnderlying.ISteamMatchmaking_SetLobbyMemberLimit(instancePtr, steamIDLobby, cMaxMembers); + } + } + + public static int ISteamMatchmaking_GetLobbyMemberLimit(IntPtr instancePtr, CSteamID steamIDLobby) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamMatchmaking_GetLobbyMemberLimit(instancePtr, steamIDLobby); + } else { + return NativeMethodsUnderlying.ISteamMatchmaking_GetLobbyMemberLimit(instancePtr, steamIDLobby); + } + } + + public static bool ISteamMatchmaking_SetLobbyType(IntPtr instancePtr, CSteamID steamIDLobby, ELobbyType eLobbyType) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamMatchmaking_SetLobbyType(instancePtr, steamIDLobby, eLobbyType); + } else { + return NativeMethodsUnderlying.ISteamMatchmaking_SetLobbyType(instancePtr, steamIDLobby, eLobbyType); + } + } + + public static bool ISteamMatchmaking_SetLobbyJoinable(IntPtr instancePtr, CSteamID steamIDLobby, [MarshalAs(UnmanagedType.I1)] bool bLobbyJoinable) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamMatchmaking_SetLobbyJoinable(instancePtr, steamIDLobby, bLobbyJoinable); + } else { + return NativeMethodsUnderlying.ISteamMatchmaking_SetLobbyJoinable(instancePtr, steamIDLobby, bLobbyJoinable); + } + } + + public static ulong ISteamMatchmaking_GetLobbyOwner(IntPtr instancePtr, CSteamID steamIDLobby) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamMatchmaking_GetLobbyOwner(instancePtr, steamIDLobby); + } else { + return NativeMethodsUnderlying.ISteamMatchmaking_GetLobbyOwner(instancePtr, steamIDLobby); + } + } + + public static bool ISteamMatchmaking_SetLobbyOwner(IntPtr instancePtr, CSteamID steamIDLobby, CSteamID steamIDNewOwner) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamMatchmaking_SetLobbyOwner(instancePtr, steamIDLobby, steamIDNewOwner); + } else { + return NativeMethodsUnderlying.ISteamMatchmaking_SetLobbyOwner(instancePtr, steamIDLobby, steamIDNewOwner); + } + } + + public static bool ISteamMatchmaking_SetLinkedLobby(IntPtr instancePtr, CSteamID steamIDLobby, CSteamID steamIDLobbyDependent) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamMatchmaking_SetLinkedLobby(instancePtr, steamIDLobby, steamIDLobbyDependent); + } else { + return NativeMethodsUnderlying.ISteamMatchmaking_SetLinkedLobby(instancePtr, steamIDLobby, steamIDLobbyDependent); + } + } + + public static void ISteamMatchmaking_CheckForPSNGameBootInvite(IntPtr instancePtr, uint iGameBootAttributes) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamMatchmaking_CheckForPSNGameBootInvite(instancePtr, iGameBootAttributes); + } else { + NativeMethodsUnderlying.ISteamMatchmaking_CheckForPSNGameBootInvite(instancePtr, iGameBootAttributes); + } + } + + public static IntPtr ISteamMatchmakingServers_RequestInternetServerList(IntPtr instancePtr, AppId_t iApp, IntPtr ppchFilters, uint nFilters, IntPtr pRequestServersResponse) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamMatchmakingServers_RequestInternetServerList(instancePtr, iApp, ppchFilters, nFilters, pRequestServersResponse); + } else { + return NativeMethodsUnderlying.ISteamMatchmakingServers_RequestInternetServerList(instancePtr, iApp, ppchFilters, nFilters, pRequestServersResponse); + } + } + + public static IntPtr ISteamMatchmakingServers_RequestLANServerList(IntPtr instancePtr, AppId_t iApp, IntPtr pRequestServersResponse) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamMatchmakingServers_RequestLANServerList(instancePtr, iApp, pRequestServersResponse); + } else { + return NativeMethodsUnderlying.ISteamMatchmakingServers_RequestLANServerList(instancePtr, iApp, pRequestServersResponse); + } + } + + public static IntPtr ISteamMatchmakingServers_RequestFriendsServerList(IntPtr instancePtr, AppId_t iApp, IntPtr ppchFilters, uint nFilters, IntPtr pRequestServersResponse) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamMatchmakingServers_RequestFriendsServerList(instancePtr, iApp, ppchFilters, nFilters, pRequestServersResponse); + } else { + return NativeMethodsUnderlying.ISteamMatchmakingServers_RequestFriendsServerList(instancePtr, iApp, ppchFilters, nFilters, pRequestServersResponse); + } + } + + public static IntPtr ISteamMatchmakingServers_RequestFavoritesServerList(IntPtr instancePtr, AppId_t iApp, IntPtr ppchFilters, uint nFilters, IntPtr pRequestServersResponse) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamMatchmakingServers_RequestFavoritesServerList(instancePtr, iApp, ppchFilters, nFilters, pRequestServersResponse); + } else { + return NativeMethodsUnderlying.ISteamMatchmakingServers_RequestFavoritesServerList(instancePtr, iApp, ppchFilters, nFilters, pRequestServersResponse); + } + } + + public static IntPtr ISteamMatchmakingServers_RequestHistoryServerList(IntPtr instancePtr, AppId_t iApp, IntPtr ppchFilters, uint nFilters, IntPtr pRequestServersResponse) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamMatchmakingServers_RequestHistoryServerList(instancePtr, iApp, ppchFilters, nFilters, pRequestServersResponse); + } else { + return NativeMethodsUnderlying.ISteamMatchmakingServers_RequestHistoryServerList(instancePtr, iApp, ppchFilters, nFilters, pRequestServersResponse); + } + } + + public static IntPtr ISteamMatchmakingServers_RequestSpectatorServerList(IntPtr instancePtr, AppId_t iApp, IntPtr ppchFilters, uint nFilters, IntPtr pRequestServersResponse) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamMatchmakingServers_RequestSpectatorServerList(instancePtr, iApp, ppchFilters, nFilters, pRequestServersResponse); + } else { + return NativeMethodsUnderlying.ISteamMatchmakingServers_RequestSpectatorServerList(instancePtr, iApp, ppchFilters, nFilters, pRequestServersResponse); + } + } + + public static void ISteamMatchmakingServers_ReleaseRequest(IntPtr instancePtr, HServerListRequest hServerListRequest) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamMatchmakingServers_ReleaseRequest(instancePtr, hServerListRequest); + } else { + NativeMethodsUnderlying.ISteamMatchmakingServers_ReleaseRequest(instancePtr, hServerListRequest); + } + } + + public static IntPtr ISteamMatchmakingServers_GetServerDetails(IntPtr instancePtr, HServerListRequest hRequest, int iServer) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamMatchmakingServers_GetServerDetails(instancePtr, hRequest, iServer); + } else { + return NativeMethodsUnderlying.ISteamMatchmakingServers_GetServerDetails(instancePtr, hRequest, iServer); + } + } + + public static void ISteamMatchmakingServers_CancelQuery(IntPtr instancePtr, HServerListRequest hRequest) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamMatchmakingServers_CancelQuery(instancePtr, hRequest); + } else { + NativeMethodsUnderlying.ISteamMatchmakingServers_CancelQuery(instancePtr, hRequest); + } + } + + public static void ISteamMatchmakingServers_RefreshQuery(IntPtr instancePtr, HServerListRequest hRequest) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamMatchmakingServers_RefreshQuery(instancePtr, hRequest); + } else { + NativeMethodsUnderlying.ISteamMatchmakingServers_RefreshQuery(instancePtr, hRequest); + } + } + + public static bool ISteamMatchmakingServers_IsRefreshing(IntPtr instancePtr, HServerListRequest hRequest) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamMatchmakingServers_IsRefreshing(instancePtr, hRequest); + } else { + return NativeMethodsUnderlying.ISteamMatchmakingServers_IsRefreshing(instancePtr, hRequest); + } + } + + public static int ISteamMatchmakingServers_GetServerCount(IntPtr instancePtr, HServerListRequest hRequest) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamMatchmakingServers_GetServerCount(instancePtr, hRequest); + } else { + return NativeMethodsUnderlying.ISteamMatchmakingServers_GetServerCount(instancePtr, hRequest); + } + } + + public static void ISteamMatchmakingServers_RefreshServer(IntPtr instancePtr, HServerListRequest hRequest, int iServer) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamMatchmakingServers_RefreshServer(instancePtr, hRequest, iServer); + } else { + NativeMethodsUnderlying.ISteamMatchmakingServers_RefreshServer(instancePtr, hRequest, iServer); + } + } + + public static int ISteamMatchmakingServers_PingServer(IntPtr instancePtr, uint unIP, ushort usPort, IntPtr pRequestServersResponse) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamMatchmakingServers_PingServer(instancePtr, unIP, usPort, pRequestServersResponse); + } else { + return NativeMethodsUnderlying.ISteamMatchmakingServers_PingServer(instancePtr, unIP, usPort, pRequestServersResponse); + } + } + + public static int ISteamMatchmakingServers_PlayerDetails(IntPtr instancePtr, uint unIP, ushort usPort, IntPtr pRequestServersResponse) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamMatchmakingServers_PlayerDetails(instancePtr, unIP, usPort, pRequestServersResponse); + } else { + return NativeMethodsUnderlying.ISteamMatchmakingServers_PlayerDetails(instancePtr, unIP, usPort, pRequestServersResponse); + } + } + + public static int ISteamMatchmakingServers_ServerRules(IntPtr instancePtr, uint unIP, ushort usPort, IntPtr pRequestServersResponse) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamMatchmakingServers_ServerRules(instancePtr, unIP, usPort, pRequestServersResponse); + } else { + return NativeMethodsUnderlying.ISteamMatchmakingServers_ServerRules(instancePtr, unIP, usPort, pRequestServersResponse); + } + } + + public static void ISteamMatchmakingServers_CancelServerQuery(IntPtr instancePtr, HServerQuery hServerQuery) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamMatchmakingServers_CancelServerQuery(instancePtr, hServerQuery); + } else { + NativeMethodsUnderlying.ISteamMatchmakingServers_CancelServerQuery(instancePtr, hServerQuery); + } + } + + public static EGameSearchErrorCode_t ISteamGameSearch_AddGameSearchParams(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchKeyToFind, InteropHelp.UTF8StringHandle pchValuesToFind) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamGameSearch_AddGameSearchParams(instancePtr, pchKeyToFind, pchValuesToFind); + } else { + return NativeMethodsUnderlying.ISteamGameSearch_AddGameSearchParams(instancePtr, pchKeyToFind, pchValuesToFind); + } + } + + public static EGameSearchErrorCode_t ISteamGameSearch_SearchForGameWithLobby(IntPtr instancePtr, CSteamID steamIDLobby, int nPlayerMin, int nPlayerMax) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamGameSearch_SearchForGameWithLobby(instancePtr, steamIDLobby, nPlayerMin, nPlayerMax); + } else { + return NativeMethodsUnderlying.ISteamGameSearch_SearchForGameWithLobby(instancePtr, steamIDLobby, nPlayerMin, nPlayerMax); + } + } + + public static EGameSearchErrorCode_t ISteamGameSearch_SearchForGameSolo(IntPtr instancePtr, int nPlayerMin, int nPlayerMax) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamGameSearch_SearchForGameSolo(instancePtr, nPlayerMin, nPlayerMax); + } else { + return NativeMethodsUnderlying.ISteamGameSearch_SearchForGameSolo(instancePtr, nPlayerMin, nPlayerMax); + } + } + + public static EGameSearchErrorCode_t ISteamGameSearch_AcceptGame(IntPtr instancePtr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamGameSearch_AcceptGame(instancePtr); + } else { + return NativeMethodsUnderlying.ISteamGameSearch_AcceptGame(instancePtr); + } + } + + public static EGameSearchErrorCode_t ISteamGameSearch_DeclineGame(IntPtr instancePtr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamGameSearch_DeclineGame(instancePtr); + } else { + return NativeMethodsUnderlying.ISteamGameSearch_DeclineGame(instancePtr); + } + } + + public static EGameSearchErrorCode_t ISteamGameSearch_RetrieveConnectionDetails(IntPtr instancePtr, CSteamID steamIDHost, IntPtr pchConnectionDetails, int cubConnectionDetails) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamGameSearch_RetrieveConnectionDetails(instancePtr, steamIDHost, pchConnectionDetails, cubConnectionDetails); + } else { + return NativeMethodsUnderlying.ISteamGameSearch_RetrieveConnectionDetails(instancePtr, steamIDHost, pchConnectionDetails, cubConnectionDetails); + } + } + + public static EGameSearchErrorCode_t ISteamGameSearch_EndGameSearch(IntPtr instancePtr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamGameSearch_EndGameSearch(instancePtr); + } else { + return NativeMethodsUnderlying.ISteamGameSearch_EndGameSearch(instancePtr); + } + } + + public static EGameSearchErrorCode_t ISteamGameSearch_SetGameHostParams(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchKey, InteropHelp.UTF8StringHandle pchValue) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamGameSearch_SetGameHostParams(instancePtr, pchKey, pchValue); + } else { + return NativeMethodsUnderlying.ISteamGameSearch_SetGameHostParams(instancePtr, pchKey, pchValue); + } + } + + public static EGameSearchErrorCode_t ISteamGameSearch_SetConnectionDetails(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchConnectionDetails, int cubConnectionDetails) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamGameSearch_SetConnectionDetails(instancePtr, pchConnectionDetails, cubConnectionDetails); + } else { + return NativeMethodsUnderlying.ISteamGameSearch_SetConnectionDetails(instancePtr, pchConnectionDetails, cubConnectionDetails); + } + } + + public static EGameSearchErrorCode_t ISteamGameSearch_RequestPlayersForGame(IntPtr instancePtr, int nPlayerMin, int nPlayerMax, int nMaxTeamSize) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamGameSearch_RequestPlayersForGame(instancePtr, nPlayerMin, nPlayerMax, nMaxTeamSize); + } else { + return NativeMethodsUnderlying.ISteamGameSearch_RequestPlayersForGame(instancePtr, nPlayerMin, nPlayerMax, nMaxTeamSize); + } + } + + public static EGameSearchErrorCode_t ISteamGameSearch_HostConfirmGameStart(IntPtr instancePtr, ulong ullUniqueGameID) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamGameSearch_HostConfirmGameStart(instancePtr, ullUniqueGameID); + } else { + return NativeMethodsUnderlying.ISteamGameSearch_HostConfirmGameStart(instancePtr, ullUniqueGameID); + } + } + + public static EGameSearchErrorCode_t ISteamGameSearch_CancelRequestPlayersForGame(IntPtr instancePtr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamGameSearch_CancelRequestPlayersForGame(instancePtr); + } else { + return NativeMethodsUnderlying.ISteamGameSearch_CancelRequestPlayersForGame(instancePtr); + } + } + + public static EGameSearchErrorCode_t ISteamGameSearch_SubmitPlayerResult(IntPtr instancePtr, ulong ullUniqueGameID, CSteamID steamIDPlayer, EPlayerResult_t EPlayerResult) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamGameSearch_SubmitPlayerResult(instancePtr, ullUniqueGameID, steamIDPlayer, EPlayerResult); + } else { + return NativeMethodsUnderlying.ISteamGameSearch_SubmitPlayerResult(instancePtr, ullUniqueGameID, steamIDPlayer, EPlayerResult); + } + } + + public static EGameSearchErrorCode_t ISteamGameSearch_EndGame(IntPtr instancePtr, ulong ullUniqueGameID) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamGameSearch_EndGame(instancePtr, ullUniqueGameID); + } else { + return NativeMethodsUnderlying.ISteamGameSearch_EndGame(instancePtr, ullUniqueGameID); + } + } + + public static uint ISteamParties_GetNumActiveBeacons(IntPtr instancePtr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamParties_GetNumActiveBeacons(instancePtr); + } else { + return NativeMethodsUnderlying.ISteamParties_GetNumActiveBeacons(instancePtr); + } + } + + public static ulong ISteamParties_GetBeaconByIndex(IntPtr instancePtr, uint unIndex) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamParties_GetBeaconByIndex(instancePtr, unIndex); + } else { + return NativeMethodsUnderlying.ISteamParties_GetBeaconByIndex(instancePtr, unIndex); + } + } + + public static bool ISteamParties_GetBeaconDetails(IntPtr instancePtr, PartyBeaconID_t ulBeaconID, out CSteamID pSteamIDBeaconOwner, out SteamPartyBeaconLocation_t pLocation, IntPtr pchMetadata, int cchMetadata) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamParties_GetBeaconDetails(instancePtr, ulBeaconID, out pSteamIDBeaconOwner, out pLocation, pchMetadata, cchMetadata); + } else { + return NativeMethodsUnderlying.ISteamParties_GetBeaconDetails(instancePtr, ulBeaconID, out pSteamIDBeaconOwner, out pLocation, pchMetadata, cchMetadata); + } + } + + public static ulong ISteamParties_JoinParty(IntPtr instancePtr, PartyBeaconID_t ulBeaconID) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamParties_JoinParty(instancePtr, ulBeaconID); + } else { + return NativeMethodsUnderlying.ISteamParties_JoinParty(instancePtr, ulBeaconID); + } + } + + public static bool ISteamParties_GetNumAvailableBeaconLocations(IntPtr instancePtr, out uint puNumLocations) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamParties_GetNumAvailableBeaconLocations(instancePtr, out puNumLocations); + } else { + return NativeMethodsUnderlying.ISteamParties_GetNumAvailableBeaconLocations(instancePtr, out puNumLocations); + } + } + + public static bool ISteamParties_GetAvailableBeaconLocations(IntPtr instancePtr, [In, Out] SteamPartyBeaconLocation_t[] pLocationList, uint uMaxNumLocations) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamParties_GetAvailableBeaconLocations(instancePtr, pLocationList, uMaxNumLocations); + } else { + return NativeMethodsUnderlying.ISteamParties_GetAvailableBeaconLocations(instancePtr, pLocationList, uMaxNumLocations); + } + } + + public static ulong ISteamParties_CreateBeacon(IntPtr instancePtr, uint unOpenSlots, ref SteamPartyBeaconLocation_t pBeaconLocation, InteropHelp.UTF8StringHandle pchConnectString, InteropHelp.UTF8StringHandle pchMetadata) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamParties_CreateBeacon(instancePtr, unOpenSlots, ref pBeaconLocation, pchConnectString, pchMetadata); + } else { + return NativeMethodsUnderlying.ISteamParties_CreateBeacon(instancePtr, unOpenSlots, ref pBeaconLocation, pchConnectString, pchMetadata); + } + } + + public static void ISteamParties_OnReservationCompleted(IntPtr instancePtr, PartyBeaconID_t ulBeacon, CSteamID steamIDUser) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamParties_OnReservationCompleted(instancePtr, ulBeacon, steamIDUser); + } else { + NativeMethodsUnderlying.ISteamParties_OnReservationCompleted(instancePtr, ulBeacon, steamIDUser); + } + } + + public static void ISteamParties_CancelReservation(IntPtr instancePtr, PartyBeaconID_t ulBeacon, CSteamID steamIDUser) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamParties_CancelReservation(instancePtr, ulBeacon, steamIDUser); + } else { + NativeMethodsUnderlying.ISteamParties_CancelReservation(instancePtr, ulBeacon, steamIDUser); + } + } + + public static ulong ISteamParties_ChangeNumOpenSlots(IntPtr instancePtr, PartyBeaconID_t ulBeacon, uint unOpenSlots) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamParties_ChangeNumOpenSlots(instancePtr, ulBeacon, unOpenSlots); + } else { + return NativeMethodsUnderlying.ISteamParties_ChangeNumOpenSlots(instancePtr, ulBeacon, unOpenSlots); + } + } + + public static bool ISteamParties_DestroyBeacon(IntPtr instancePtr, PartyBeaconID_t ulBeacon) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamParties_DestroyBeacon(instancePtr, ulBeacon); + } else { + return NativeMethodsUnderlying.ISteamParties_DestroyBeacon(instancePtr, ulBeacon); + } + } + + public static bool ISteamParties_GetBeaconLocationData(IntPtr instancePtr, SteamPartyBeaconLocation_t BeaconLocation, ESteamPartyBeaconLocationData eData, IntPtr pchDataStringOut, int cchDataStringOut) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamParties_GetBeaconLocationData(instancePtr, BeaconLocation, eData, pchDataStringOut, cchDataStringOut); + } else { + return NativeMethodsUnderlying.ISteamParties_GetBeaconLocationData(instancePtr, BeaconLocation, eData, pchDataStringOut, cchDataStringOut); + } + } + + public static bool ISteamMusic_BIsEnabled(IntPtr instancePtr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamMusic_BIsEnabled(instancePtr); + } else { + return NativeMethodsUnderlying.ISteamMusic_BIsEnabled(instancePtr); + } + } + + public static bool ISteamMusic_BIsPlaying(IntPtr instancePtr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamMusic_BIsPlaying(instancePtr); + } else { + return NativeMethodsUnderlying.ISteamMusic_BIsPlaying(instancePtr); + } + } + + public static AudioPlayback_Status ISteamMusic_GetPlaybackStatus(IntPtr instancePtr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamMusic_GetPlaybackStatus(instancePtr); + } else { + return NativeMethodsUnderlying.ISteamMusic_GetPlaybackStatus(instancePtr); + } + } + + public static void ISteamMusic_Play(IntPtr instancePtr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamMusic_Play(instancePtr); + } else { + NativeMethodsUnderlying.ISteamMusic_Play(instancePtr); + } + } + + public static void ISteamMusic_Pause(IntPtr instancePtr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamMusic_Pause(instancePtr); + } else { + NativeMethodsUnderlying.ISteamMusic_Pause(instancePtr); + } + } + + public static void ISteamMusic_PlayPrevious(IntPtr instancePtr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamMusic_PlayPrevious(instancePtr); + } else { + NativeMethodsUnderlying.ISteamMusic_PlayPrevious(instancePtr); + } + } + + public static void ISteamMusic_PlayNext(IntPtr instancePtr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamMusic_PlayNext(instancePtr); + } else { + NativeMethodsUnderlying.ISteamMusic_PlayNext(instancePtr); + } + } + + public static void ISteamMusic_SetVolume(IntPtr instancePtr, float flVolume) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamMusic_SetVolume(instancePtr, flVolume); + } else { + NativeMethodsUnderlying.ISteamMusic_SetVolume(instancePtr, flVolume); + } + } + + public static float ISteamMusic_GetVolume(IntPtr instancePtr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamMusic_GetVolume(instancePtr); + } else { + return NativeMethodsUnderlying.ISteamMusic_GetVolume(instancePtr); + } + } + + public static bool ISteamMusicRemote_RegisterSteamMusicRemote(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchName) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamMusicRemote_RegisterSteamMusicRemote(instancePtr, pchName); + } else { + return NativeMethodsUnderlying.ISteamMusicRemote_RegisterSteamMusicRemote(instancePtr, pchName); + } + } + + public static bool ISteamMusicRemote_DeregisterSteamMusicRemote(IntPtr instancePtr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamMusicRemote_DeregisterSteamMusicRemote(instancePtr); + } else { + return NativeMethodsUnderlying.ISteamMusicRemote_DeregisterSteamMusicRemote(instancePtr); + } + } + + public static bool ISteamMusicRemote_BIsCurrentMusicRemote(IntPtr instancePtr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamMusicRemote_BIsCurrentMusicRemote(instancePtr); + } else { + return NativeMethodsUnderlying.ISteamMusicRemote_BIsCurrentMusicRemote(instancePtr); + } + } + + public static bool ISteamMusicRemote_BActivationSuccess(IntPtr instancePtr, [MarshalAs(UnmanagedType.I1)] bool bValue) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamMusicRemote_BActivationSuccess(instancePtr, bValue); + } else { + return NativeMethodsUnderlying.ISteamMusicRemote_BActivationSuccess(instancePtr, bValue); + } + } + + public static bool ISteamMusicRemote_SetDisplayName(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchDisplayName) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamMusicRemote_SetDisplayName(instancePtr, pchDisplayName); + } else { + return NativeMethodsUnderlying.ISteamMusicRemote_SetDisplayName(instancePtr, pchDisplayName); + } + } + + public static bool ISteamMusicRemote_SetPNGIcon_64x64(IntPtr instancePtr, byte[] pvBuffer, uint cbBufferLength) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamMusicRemote_SetPNGIcon_64x64(instancePtr, pvBuffer, cbBufferLength); + } else { + return NativeMethodsUnderlying.ISteamMusicRemote_SetPNGIcon_64x64(instancePtr, pvBuffer, cbBufferLength); + } + } + + public static bool ISteamMusicRemote_EnablePlayPrevious(IntPtr instancePtr, [MarshalAs(UnmanagedType.I1)] bool bValue) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamMusicRemote_EnablePlayPrevious(instancePtr, bValue); + } else { + return NativeMethodsUnderlying.ISteamMusicRemote_EnablePlayPrevious(instancePtr, bValue); + } + } + + public static bool ISteamMusicRemote_EnablePlayNext(IntPtr instancePtr, [MarshalAs(UnmanagedType.I1)] bool bValue) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamMusicRemote_EnablePlayNext(instancePtr, bValue); + } else { + return NativeMethodsUnderlying.ISteamMusicRemote_EnablePlayNext(instancePtr, bValue); + } + } + + public static bool ISteamMusicRemote_EnableShuffled(IntPtr instancePtr, [MarshalAs(UnmanagedType.I1)] bool bValue) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamMusicRemote_EnableShuffled(instancePtr, bValue); + } else { + return NativeMethodsUnderlying.ISteamMusicRemote_EnableShuffled(instancePtr, bValue); + } + } + + public static bool ISteamMusicRemote_EnableLooped(IntPtr instancePtr, [MarshalAs(UnmanagedType.I1)] bool bValue) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamMusicRemote_EnableLooped(instancePtr, bValue); + } else { + return NativeMethodsUnderlying.ISteamMusicRemote_EnableLooped(instancePtr, bValue); + } + } + + public static bool ISteamMusicRemote_EnableQueue(IntPtr instancePtr, [MarshalAs(UnmanagedType.I1)] bool bValue) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamMusicRemote_EnableQueue(instancePtr, bValue); + } else { + return NativeMethodsUnderlying.ISteamMusicRemote_EnableQueue(instancePtr, bValue); + } + } + + public static bool ISteamMusicRemote_EnablePlaylists(IntPtr instancePtr, [MarshalAs(UnmanagedType.I1)] bool bValue) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamMusicRemote_EnablePlaylists(instancePtr, bValue); + } else { + return NativeMethodsUnderlying.ISteamMusicRemote_EnablePlaylists(instancePtr, bValue); + } + } + + public static bool ISteamMusicRemote_UpdatePlaybackStatus(IntPtr instancePtr, AudioPlayback_Status nStatus) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamMusicRemote_UpdatePlaybackStatus(instancePtr, nStatus); + } else { + return NativeMethodsUnderlying.ISteamMusicRemote_UpdatePlaybackStatus(instancePtr, nStatus); + } + } + + public static bool ISteamMusicRemote_UpdateShuffled(IntPtr instancePtr, [MarshalAs(UnmanagedType.I1)] bool bValue) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamMusicRemote_UpdateShuffled(instancePtr, bValue); + } else { + return NativeMethodsUnderlying.ISteamMusicRemote_UpdateShuffled(instancePtr, bValue); + } + } + + public static bool ISteamMusicRemote_UpdateLooped(IntPtr instancePtr, [MarshalAs(UnmanagedType.I1)] bool bValue) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamMusicRemote_UpdateLooped(instancePtr, bValue); + } else { + return NativeMethodsUnderlying.ISteamMusicRemote_UpdateLooped(instancePtr, bValue); + } + } + + public static bool ISteamMusicRemote_UpdateVolume(IntPtr instancePtr, float flValue) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamMusicRemote_UpdateVolume(instancePtr, flValue); + } else { + return NativeMethodsUnderlying.ISteamMusicRemote_UpdateVolume(instancePtr, flValue); + } + } + + public static bool ISteamMusicRemote_CurrentEntryWillChange(IntPtr instancePtr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamMusicRemote_CurrentEntryWillChange(instancePtr); + } else { + return NativeMethodsUnderlying.ISteamMusicRemote_CurrentEntryWillChange(instancePtr); + } + } + + public static bool ISteamMusicRemote_CurrentEntryIsAvailable(IntPtr instancePtr, [MarshalAs(UnmanagedType.I1)] bool bAvailable) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamMusicRemote_CurrentEntryIsAvailable(instancePtr, bAvailable); + } else { + return NativeMethodsUnderlying.ISteamMusicRemote_CurrentEntryIsAvailable(instancePtr, bAvailable); + } + } + + public static bool ISteamMusicRemote_UpdateCurrentEntryText(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchText) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamMusicRemote_UpdateCurrentEntryText(instancePtr, pchText); + } else { + return NativeMethodsUnderlying.ISteamMusicRemote_UpdateCurrentEntryText(instancePtr, pchText); + } + } + + public static bool ISteamMusicRemote_UpdateCurrentEntryElapsedSeconds(IntPtr instancePtr, int nValue) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamMusicRemote_UpdateCurrentEntryElapsedSeconds(instancePtr, nValue); + } else { + return NativeMethodsUnderlying.ISteamMusicRemote_UpdateCurrentEntryElapsedSeconds(instancePtr, nValue); + } + } + + public static bool ISteamMusicRemote_UpdateCurrentEntryCoverArt(IntPtr instancePtr, byte[] pvBuffer, uint cbBufferLength) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamMusicRemote_UpdateCurrentEntryCoverArt(instancePtr, pvBuffer, cbBufferLength); + } else { + return NativeMethodsUnderlying.ISteamMusicRemote_UpdateCurrentEntryCoverArt(instancePtr, pvBuffer, cbBufferLength); + } + } + + public static bool ISteamMusicRemote_CurrentEntryDidChange(IntPtr instancePtr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamMusicRemote_CurrentEntryDidChange(instancePtr); + } else { + return NativeMethodsUnderlying.ISteamMusicRemote_CurrentEntryDidChange(instancePtr); + } + } + + public static bool ISteamMusicRemote_QueueWillChange(IntPtr instancePtr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamMusicRemote_QueueWillChange(instancePtr); + } else { + return NativeMethodsUnderlying.ISteamMusicRemote_QueueWillChange(instancePtr); + } + } + + public static bool ISteamMusicRemote_ResetQueueEntries(IntPtr instancePtr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamMusicRemote_ResetQueueEntries(instancePtr); + } else { + return NativeMethodsUnderlying.ISteamMusicRemote_ResetQueueEntries(instancePtr); + } + } + + public static bool ISteamMusicRemote_SetQueueEntry(IntPtr instancePtr, int nID, int nPosition, InteropHelp.UTF8StringHandle pchEntryText) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamMusicRemote_SetQueueEntry(instancePtr, nID, nPosition, pchEntryText); + } else { + return NativeMethodsUnderlying.ISteamMusicRemote_SetQueueEntry(instancePtr, nID, nPosition, pchEntryText); + } + } + + public static bool ISteamMusicRemote_SetCurrentQueueEntry(IntPtr instancePtr, int nID) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamMusicRemote_SetCurrentQueueEntry(instancePtr, nID); + } else { + return NativeMethodsUnderlying.ISteamMusicRemote_SetCurrentQueueEntry(instancePtr, nID); + } + } + + public static bool ISteamMusicRemote_QueueDidChange(IntPtr instancePtr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamMusicRemote_QueueDidChange(instancePtr); + } else { + return NativeMethodsUnderlying.ISteamMusicRemote_QueueDidChange(instancePtr); + } + } + + public static bool ISteamMusicRemote_PlaylistWillChange(IntPtr instancePtr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamMusicRemote_PlaylistWillChange(instancePtr); + } else { + return NativeMethodsUnderlying.ISteamMusicRemote_PlaylistWillChange(instancePtr); + } + } + + public static bool ISteamMusicRemote_ResetPlaylistEntries(IntPtr instancePtr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamMusicRemote_ResetPlaylistEntries(instancePtr); + } else { + return NativeMethodsUnderlying.ISteamMusicRemote_ResetPlaylistEntries(instancePtr); + } + } + + public static bool ISteamMusicRemote_SetPlaylistEntry(IntPtr instancePtr, int nID, int nPosition, InteropHelp.UTF8StringHandle pchEntryText) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamMusicRemote_SetPlaylistEntry(instancePtr, nID, nPosition, pchEntryText); + } else { + return NativeMethodsUnderlying.ISteamMusicRemote_SetPlaylistEntry(instancePtr, nID, nPosition, pchEntryText); + } + } + + public static bool ISteamMusicRemote_SetCurrentPlaylistEntry(IntPtr instancePtr, int nID) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamMusicRemote_SetCurrentPlaylistEntry(instancePtr, nID); + } else { + return NativeMethodsUnderlying.ISteamMusicRemote_SetCurrentPlaylistEntry(instancePtr, nID); + } + } + + public static bool ISteamMusicRemote_PlaylistDidChange(IntPtr instancePtr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamMusicRemote_PlaylistDidChange(instancePtr); + } else { + return NativeMethodsUnderlying.ISteamMusicRemote_PlaylistDidChange(instancePtr); + } + } + + public static bool ISteamNetworking_SendP2PPacket(IntPtr instancePtr, CSteamID steamIDRemote, byte[] pubData, uint cubData, EP2PSend eP2PSendType, int nChannel) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamNetworking_SendP2PPacket(instancePtr, steamIDRemote, pubData, cubData, eP2PSendType, nChannel); + } else { + return NativeMethodsUnderlying.ISteamNetworking_SendP2PPacket(instancePtr, steamIDRemote, pubData, cubData, eP2PSendType, nChannel); + } + } + + public static bool ISteamNetworking_IsP2PPacketAvailable(IntPtr instancePtr, out uint pcubMsgSize, int nChannel) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamNetworking_IsP2PPacketAvailable(instancePtr, out pcubMsgSize, nChannel); + } else { + return NativeMethodsUnderlying.ISteamNetworking_IsP2PPacketAvailable(instancePtr, out pcubMsgSize, nChannel); + } + } + + public static bool ISteamNetworking_ReadP2PPacket(IntPtr instancePtr, byte[] pubDest, uint cubDest, out uint pcubMsgSize, out CSteamID psteamIDRemote, int nChannel) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamNetworking_ReadP2PPacket(instancePtr, pubDest, cubDest, out pcubMsgSize, out psteamIDRemote, nChannel); + } else { + return NativeMethodsUnderlying.ISteamNetworking_ReadP2PPacket(instancePtr, pubDest, cubDest, out pcubMsgSize, out psteamIDRemote, nChannel); + } + } + + public static bool ISteamNetworking_AcceptP2PSessionWithUser(IntPtr instancePtr, CSteamID steamIDRemote) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamNetworking_AcceptP2PSessionWithUser(instancePtr, steamIDRemote); + } else { + return NativeMethodsUnderlying.ISteamNetworking_AcceptP2PSessionWithUser(instancePtr, steamIDRemote); + } + } + + public static bool ISteamNetworking_CloseP2PSessionWithUser(IntPtr instancePtr, CSteamID steamIDRemote) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamNetworking_CloseP2PSessionWithUser(instancePtr, steamIDRemote); + } else { + return NativeMethodsUnderlying.ISteamNetworking_CloseP2PSessionWithUser(instancePtr, steamIDRemote); + } + } + + public static bool ISteamNetworking_CloseP2PChannelWithUser(IntPtr instancePtr, CSteamID steamIDRemote, int nChannel) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamNetworking_CloseP2PChannelWithUser(instancePtr, steamIDRemote, nChannel); + } else { + return NativeMethodsUnderlying.ISteamNetworking_CloseP2PChannelWithUser(instancePtr, steamIDRemote, nChannel); + } + } + + public static bool ISteamNetworking_GetP2PSessionState(IntPtr instancePtr, CSteamID steamIDRemote, out P2PSessionState_t pConnectionState) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamNetworking_GetP2PSessionState(instancePtr, steamIDRemote, out pConnectionState); + } else { + return NativeMethodsUnderlying.ISteamNetworking_GetP2PSessionState(instancePtr, steamIDRemote, out pConnectionState); + } + } + + public static bool ISteamNetworking_AllowP2PPacketRelay(IntPtr instancePtr, [MarshalAs(UnmanagedType.I1)] bool bAllow) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamNetworking_AllowP2PPacketRelay(instancePtr, bAllow); + } else { + return NativeMethodsUnderlying.ISteamNetworking_AllowP2PPacketRelay(instancePtr, bAllow); + } + } + + public static uint ISteamNetworking_CreateListenSocket(IntPtr instancePtr, int nVirtualP2PPort, SteamIPAddress_t nIP, ushort nPort, [MarshalAs(UnmanagedType.I1)] bool bAllowUseOfPacketRelay) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamNetworking_CreateListenSocket(instancePtr, nVirtualP2PPort, nIP, nPort, bAllowUseOfPacketRelay); + } else { + return NativeMethodsUnderlying.ISteamNetworking_CreateListenSocket(instancePtr, nVirtualP2PPort, nIP, nPort, bAllowUseOfPacketRelay); + } + } + + public static uint ISteamNetworking_CreateP2PConnectionSocket(IntPtr instancePtr, CSteamID steamIDTarget, int nVirtualPort, int nTimeoutSec, [MarshalAs(UnmanagedType.I1)] bool bAllowUseOfPacketRelay) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamNetworking_CreateP2PConnectionSocket(instancePtr, steamIDTarget, nVirtualPort, nTimeoutSec, bAllowUseOfPacketRelay); + } else { + return NativeMethodsUnderlying.ISteamNetworking_CreateP2PConnectionSocket(instancePtr, steamIDTarget, nVirtualPort, nTimeoutSec, bAllowUseOfPacketRelay); + } + } + + public static uint ISteamNetworking_CreateConnectionSocket(IntPtr instancePtr, SteamIPAddress_t nIP, ushort nPort, int nTimeoutSec) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamNetworking_CreateConnectionSocket(instancePtr, nIP, nPort, nTimeoutSec); + } else { + return NativeMethodsUnderlying.ISteamNetworking_CreateConnectionSocket(instancePtr, nIP, nPort, nTimeoutSec); + } + } + + public static bool ISteamNetworking_DestroySocket(IntPtr instancePtr, SNetSocket_t hSocket, [MarshalAs(UnmanagedType.I1)] bool bNotifyRemoteEnd) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamNetworking_DestroySocket(instancePtr, hSocket, bNotifyRemoteEnd); + } else { + return NativeMethodsUnderlying.ISteamNetworking_DestroySocket(instancePtr, hSocket, bNotifyRemoteEnd); + } + } + + public static bool ISteamNetworking_DestroyListenSocket(IntPtr instancePtr, SNetListenSocket_t hSocket, [MarshalAs(UnmanagedType.I1)] bool bNotifyRemoteEnd) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamNetworking_DestroyListenSocket(instancePtr, hSocket, bNotifyRemoteEnd); + } else { + return NativeMethodsUnderlying.ISteamNetworking_DestroyListenSocket(instancePtr, hSocket, bNotifyRemoteEnd); + } + } + + public static bool ISteamNetworking_SendDataOnSocket(IntPtr instancePtr, SNetSocket_t hSocket, byte[] pubData, uint cubData, [MarshalAs(UnmanagedType.I1)] bool bReliable) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamNetworking_SendDataOnSocket(instancePtr, hSocket, pubData, cubData, bReliable); + } else { + return NativeMethodsUnderlying.ISteamNetworking_SendDataOnSocket(instancePtr, hSocket, pubData, cubData, bReliable); + } + } + + public static bool ISteamNetworking_IsDataAvailableOnSocket(IntPtr instancePtr, SNetSocket_t hSocket, out uint pcubMsgSize) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamNetworking_IsDataAvailableOnSocket(instancePtr, hSocket, out pcubMsgSize); + } else { + return NativeMethodsUnderlying.ISteamNetworking_IsDataAvailableOnSocket(instancePtr, hSocket, out pcubMsgSize); + } + } + + public static bool ISteamNetworking_RetrieveDataFromSocket(IntPtr instancePtr, SNetSocket_t hSocket, byte[] pubDest, uint cubDest, out uint pcubMsgSize) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamNetworking_RetrieveDataFromSocket(instancePtr, hSocket, pubDest, cubDest, out pcubMsgSize); + } else { + return NativeMethodsUnderlying.ISteamNetworking_RetrieveDataFromSocket(instancePtr, hSocket, pubDest, cubDest, out pcubMsgSize); + } + } + + public static bool ISteamNetworking_IsDataAvailable(IntPtr instancePtr, SNetListenSocket_t hListenSocket, out uint pcubMsgSize, out SNetSocket_t phSocket) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamNetworking_IsDataAvailable(instancePtr, hListenSocket, out pcubMsgSize, out phSocket); + } else { + return NativeMethodsUnderlying.ISteamNetworking_IsDataAvailable(instancePtr, hListenSocket, out pcubMsgSize, out phSocket); + } + } + + public static bool ISteamNetworking_RetrieveData(IntPtr instancePtr, SNetListenSocket_t hListenSocket, byte[] pubDest, uint cubDest, out uint pcubMsgSize, out SNetSocket_t phSocket) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamNetworking_RetrieveData(instancePtr, hListenSocket, pubDest, cubDest, out pcubMsgSize, out phSocket); + } else { + return NativeMethodsUnderlying.ISteamNetworking_RetrieveData(instancePtr, hListenSocket, pubDest, cubDest, out pcubMsgSize, out phSocket); + } + } + + public static bool ISteamNetworking_GetSocketInfo(IntPtr instancePtr, SNetSocket_t hSocket, out CSteamID pSteamIDRemote, out int peSocketStatus, out SteamIPAddress_t punIPRemote, out ushort punPortRemote) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamNetworking_GetSocketInfo(instancePtr, hSocket, out pSteamIDRemote, out peSocketStatus, out punIPRemote, out punPortRemote); + } else { + return NativeMethodsUnderlying.ISteamNetworking_GetSocketInfo(instancePtr, hSocket, out pSteamIDRemote, out peSocketStatus, out punIPRemote, out punPortRemote); + } + } + + public static bool ISteamNetworking_GetListenSocketInfo(IntPtr instancePtr, SNetListenSocket_t hListenSocket, out SteamIPAddress_t pnIP, out ushort pnPort) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamNetworking_GetListenSocketInfo(instancePtr, hListenSocket, out pnIP, out pnPort); + } else { + return NativeMethodsUnderlying.ISteamNetworking_GetListenSocketInfo(instancePtr, hListenSocket, out pnIP, out pnPort); + } + } + + public static ESNetSocketConnectionType ISteamNetworking_GetSocketConnectionType(IntPtr instancePtr, SNetSocket_t hSocket) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamNetworking_GetSocketConnectionType(instancePtr, hSocket); + } else { + return NativeMethodsUnderlying.ISteamNetworking_GetSocketConnectionType(instancePtr, hSocket); + } + } + + public static int ISteamNetworking_GetMaxPacketSize(IntPtr instancePtr, SNetSocket_t hSocket) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamNetworking_GetMaxPacketSize(instancePtr, hSocket); + } else { + return NativeMethodsUnderlying.ISteamNetworking_GetMaxPacketSize(instancePtr, hSocket); + } + } + + public static EResult ISteamNetworkingMessages_SendMessageToUser(IntPtr instancePtr, ref SteamNetworkingIdentity identityRemote, IntPtr pubData, uint cubData, int nSendFlags, int nRemoteChannel) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamNetworkingMessages_SendMessageToUser(instancePtr, ref identityRemote, pubData, cubData, nSendFlags, nRemoteChannel); + } else { + return NativeMethodsUnderlying.ISteamNetworkingMessages_SendMessageToUser(instancePtr, ref identityRemote, pubData, cubData, nSendFlags, nRemoteChannel); + } + } + + public static int ISteamNetworkingMessages_ReceiveMessagesOnChannel(IntPtr instancePtr, int nLocalChannel, [In, Out] IntPtr[] ppOutMessages, int nMaxMessages) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamNetworkingMessages_ReceiveMessagesOnChannel(instancePtr, nLocalChannel, ppOutMessages, nMaxMessages); + } else { + return NativeMethodsUnderlying.ISteamNetworkingMessages_ReceiveMessagesOnChannel(instancePtr, nLocalChannel, ppOutMessages, nMaxMessages); + } + } + + public static bool ISteamNetworkingMessages_AcceptSessionWithUser(IntPtr instancePtr, ref SteamNetworkingIdentity identityRemote) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamNetworkingMessages_AcceptSessionWithUser(instancePtr, ref identityRemote); + } else { + return NativeMethodsUnderlying.ISteamNetworkingMessages_AcceptSessionWithUser(instancePtr, ref identityRemote); + } + } + + public static bool ISteamNetworkingMessages_CloseSessionWithUser(IntPtr instancePtr, ref SteamNetworkingIdentity identityRemote) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamNetworkingMessages_CloseSessionWithUser(instancePtr, ref identityRemote); + } else { + return NativeMethodsUnderlying.ISteamNetworkingMessages_CloseSessionWithUser(instancePtr, ref identityRemote); + } + } + + public static bool ISteamNetworkingMessages_CloseChannelWithUser(IntPtr instancePtr, ref SteamNetworkingIdentity identityRemote, int nLocalChannel) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamNetworkingMessages_CloseChannelWithUser(instancePtr, ref identityRemote, nLocalChannel); + } else { + return NativeMethodsUnderlying.ISteamNetworkingMessages_CloseChannelWithUser(instancePtr, ref identityRemote, nLocalChannel); + } + } + + public static ESteamNetworkingConnectionState ISteamNetworkingMessages_GetSessionConnectionInfo(IntPtr instancePtr, ref SteamNetworkingIdentity identityRemote, out SteamNetConnectionInfo_t pConnectionInfo, out SteamNetConnectionRealTimeStatus_t pQuickStatus) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamNetworkingMessages_GetSessionConnectionInfo(instancePtr, ref identityRemote, out pConnectionInfo, out pQuickStatus); + } else { + return NativeMethodsUnderlying.ISteamNetworkingMessages_GetSessionConnectionInfo(instancePtr, ref identityRemote, out pConnectionInfo, out pQuickStatus); + } + } + + public static uint ISteamNetworkingSockets_CreateListenSocketIP(IntPtr instancePtr, ref SteamNetworkingIPAddr localAddress, int nOptions, [In, Out] SteamNetworkingConfigValue_t[] pOptions) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamNetworkingSockets_CreateListenSocketIP(instancePtr, ref localAddress, nOptions, pOptions); + } else { + return NativeMethodsUnderlying.ISteamNetworkingSockets_CreateListenSocketIP(instancePtr, ref localAddress, nOptions, pOptions); + } + } + + public static uint ISteamNetworkingSockets_ConnectByIPAddress(IntPtr instancePtr, ref SteamNetworkingIPAddr address, int nOptions, [In, Out] SteamNetworkingConfigValue_t[] pOptions) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamNetworkingSockets_ConnectByIPAddress(instancePtr, ref address, nOptions, pOptions); + } else { + return NativeMethodsUnderlying.ISteamNetworkingSockets_ConnectByIPAddress(instancePtr, ref address, nOptions, pOptions); + } + } + + public static uint ISteamNetworkingSockets_CreateListenSocketP2P(IntPtr instancePtr, int nLocalVirtualPort, int nOptions, [In, Out] SteamNetworkingConfigValue_t[] pOptions) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamNetworkingSockets_CreateListenSocketP2P(instancePtr, nLocalVirtualPort, nOptions, pOptions); + } else { + return NativeMethodsUnderlying.ISteamNetworkingSockets_CreateListenSocketP2P(instancePtr, nLocalVirtualPort, nOptions, pOptions); + } + } + + public static uint ISteamNetworkingSockets_ConnectP2P(IntPtr instancePtr, ref SteamNetworkingIdentity identityRemote, int nRemoteVirtualPort, int nOptions, [In, Out] SteamNetworkingConfigValue_t[] pOptions) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamNetworkingSockets_ConnectP2P(instancePtr, ref identityRemote, nRemoteVirtualPort, nOptions, pOptions); + } else { + return NativeMethodsUnderlying.ISteamNetworkingSockets_ConnectP2P(instancePtr, ref identityRemote, nRemoteVirtualPort, nOptions, pOptions); + } + } + + public static EResult ISteamNetworkingSockets_AcceptConnection(IntPtr instancePtr, HSteamNetConnection hConn) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamNetworkingSockets_AcceptConnection(instancePtr, hConn); + } else { + return NativeMethodsUnderlying.ISteamNetworkingSockets_AcceptConnection(instancePtr, hConn); + } + } + + public static bool ISteamNetworkingSockets_CloseConnection(IntPtr instancePtr, HSteamNetConnection hPeer, int nReason, InteropHelp.UTF8StringHandle pszDebug, [MarshalAs(UnmanagedType.I1)] bool bEnableLinger) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamNetworkingSockets_CloseConnection(instancePtr, hPeer, nReason, pszDebug, bEnableLinger); + } else { + return NativeMethodsUnderlying.ISteamNetworkingSockets_CloseConnection(instancePtr, hPeer, nReason, pszDebug, bEnableLinger); + } + } + + public static bool ISteamNetworkingSockets_CloseListenSocket(IntPtr instancePtr, HSteamListenSocket hSocket) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamNetworkingSockets_CloseListenSocket(instancePtr, hSocket); + } else { + return NativeMethodsUnderlying.ISteamNetworkingSockets_CloseListenSocket(instancePtr, hSocket); + } + } + + public static bool ISteamNetworkingSockets_SetConnectionUserData(IntPtr instancePtr, HSteamNetConnection hPeer, long nUserData) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamNetworkingSockets_SetConnectionUserData(instancePtr, hPeer, nUserData); + } else { + return NativeMethodsUnderlying.ISteamNetworkingSockets_SetConnectionUserData(instancePtr, hPeer, nUserData); + } + } + + public static long ISteamNetworkingSockets_GetConnectionUserData(IntPtr instancePtr, HSteamNetConnection hPeer) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamNetworkingSockets_GetConnectionUserData(instancePtr, hPeer); + } else { + return NativeMethodsUnderlying.ISteamNetworkingSockets_GetConnectionUserData(instancePtr, hPeer); + } + } + + public static void ISteamNetworkingSockets_SetConnectionName(IntPtr instancePtr, HSteamNetConnection hPeer, InteropHelp.UTF8StringHandle pszName) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamNetworkingSockets_SetConnectionName(instancePtr, hPeer, pszName); + } else { + NativeMethodsUnderlying.ISteamNetworkingSockets_SetConnectionName(instancePtr, hPeer, pszName); + } + } + + public static bool ISteamNetworkingSockets_GetConnectionName(IntPtr instancePtr, HSteamNetConnection hPeer, IntPtr pszName, int nMaxLen) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamNetworkingSockets_GetConnectionName(instancePtr, hPeer, pszName, nMaxLen); + } else { + return NativeMethodsUnderlying.ISteamNetworkingSockets_GetConnectionName(instancePtr, hPeer, pszName, nMaxLen); + } + } + + public static EResult ISteamNetworkingSockets_SendMessageToConnection(IntPtr instancePtr, HSteamNetConnection hConn, IntPtr pData, uint cbData, int nSendFlags, out long pOutMessageNumber) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamNetworkingSockets_SendMessageToConnection(instancePtr, hConn, pData, cbData, nSendFlags, out pOutMessageNumber); + } else { + return NativeMethodsUnderlying.ISteamNetworkingSockets_SendMessageToConnection(instancePtr, hConn, pData, cbData, nSendFlags, out pOutMessageNumber); + } + } + + public static void ISteamNetworkingSockets_SendMessages(IntPtr instancePtr, int nMessages, [In, Out] IntPtr[] pMessages, [In, Out] long[] pOutMessageNumberOrResult) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamNetworkingSockets_SendMessages(instancePtr, nMessages, pMessages, pOutMessageNumberOrResult); + } else { + NativeMethodsUnderlying.ISteamNetworkingSockets_SendMessages(instancePtr, nMessages, pMessages, pOutMessageNumberOrResult); + } + } + + public static EResult ISteamNetworkingSockets_FlushMessagesOnConnection(IntPtr instancePtr, HSteamNetConnection hConn) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamNetworkingSockets_FlushMessagesOnConnection(instancePtr, hConn); + } else { + return NativeMethodsUnderlying.ISteamNetworkingSockets_FlushMessagesOnConnection(instancePtr, hConn); + } + } + + public static int ISteamNetworkingSockets_ReceiveMessagesOnConnection(IntPtr instancePtr, HSteamNetConnection hConn, [In, Out] IntPtr[] ppOutMessages, int nMaxMessages) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamNetworkingSockets_ReceiveMessagesOnConnection(instancePtr, hConn, ppOutMessages, nMaxMessages); + } else { + return NativeMethodsUnderlying.ISteamNetworkingSockets_ReceiveMessagesOnConnection(instancePtr, hConn, ppOutMessages, nMaxMessages); + } + } + + public static bool ISteamNetworkingSockets_GetConnectionInfo(IntPtr instancePtr, HSteamNetConnection hConn, out SteamNetConnectionInfo_t pInfo) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamNetworkingSockets_GetConnectionInfo(instancePtr, hConn, out pInfo); + } else { + return NativeMethodsUnderlying.ISteamNetworkingSockets_GetConnectionInfo(instancePtr, hConn, out pInfo); + } + } + + public static EResult ISteamNetworkingSockets_GetConnectionRealTimeStatus(IntPtr instancePtr, HSteamNetConnection hConn, ref SteamNetConnectionRealTimeStatus_t pStatus, int nLanes, ref SteamNetConnectionRealTimeLaneStatus_t pLanes) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamNetworkingSockets_GetConnectionRealTimeStatus(instancePtr, hConn, ref pStatus, nLanes, ref pLanes); + } else { + return NativeMethodsUnderlying.ISteamNetworkingSockets_GetConnectionRealTimeStatus(instancePtr, hConn, ref pStatus, nLanes, ref pLanes); + } + } + + public static int ISteamNetworkingSockets_GetDetailedConnectionStatus(IntPtr instancePtr, HSteamNetConnection hConn, IntPtr pszBuf, int cbBuf) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamNetworkingSockets_GetDetailedConnectionStatus(instancePtr, hConn, pszBuf, cbBuf); + } else { + return NativeMethodsUnderlying.ISteamNetworkingSockets_GetDetailedConnectionStatus(instancePtr, hConn, pszBuf, cbBuf); + } + } + + public static bool ISteamNetworkingSockets_GetListenSocketAddress(IntPtr instancePtr, HSteamListenSocket hSocket, out SteamNetworkingIPAddr address) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamNetworkingSockets_GetListenSocketAddress(instancePtr, hSocket, out address); + } else { + return NativeMethodsUnderlying.ISteamNetworkingSockets_GetListenSocketAddress(instancePtr, hSocket, out address); + } + } + + public static bool ISteamNetworkingSockets_CreateSocketPair(IntPtr instancePtr, out HSteamNetConnection pOutConnection1, out HSteamNetConnection pOutConnection2, [MarshalAs(UnmanagedType.I1)] bool bUseNetworkLoopback, ref SteamNetworkingIdentity pIdentity1, ref SteamNetworkingIdentity pIdentity2) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamNetworkingSockets_CreateSocketPair(instancePtr, out pOutConnection1, out pOutConnection2, bUseNetworkLoopback, ref pIdentity1, ref pIdentity2); + } else { + return NativeMethodsUnderlying.ISteamNetworkingSockets_CreateSocketPair(instancePtr, out pOutConnection1, out pOutConnection2, bUseNetworkLoopback, ref pIdentity1, ref pIdentity2); + } + } + + public static EResult ISteamNetworkingSockets_ConfigureConnectionLanes(IntPtr instancePtr, HSteamNetConnection hConn, int nNumLanes, [In, Out] int[] pLanePriorities, [In, Out] ushort[] pLaneWeights) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamNetworkingSockets_ConfigureConnectionLanes(instancePtr, hConn, nNumLanes, pLanePriorities, pLaneWeights); + } else { + return NativeMethodsUnderlying.ISteamNetworkingSockets_ConfigureConnectionLanes(instancePtr, hConn, nNumLanes, pLanePriorities, pLaneWeights); + } + } + + public static bool ISteamNetworkingSockets_GetIdentity(IntPtr instancePtr, out SteamNetworkingIdentity pIdentity) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamNetworkingSockets_GetIdentity(instancePtr, out pIdentity); + } else { + return NativeMethodsUnderlying.ISteamNetworkingSockets_GetIdentity(instancePtr, out pIdentity); + } + } + + public static ESteamNetworkingAvailability ISteamNetworkingSockets_InitAuthentication(IntPtr instancePtr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamNetworkingSockets_InitAuthentication(instancePtr); + } else { + return NativeMethodsUnderlying.ISteamNetworkingSockets_InitAuthentication(instancePtr); + } + } + + public static ESteamNetworkingAvailability ISteamNetworkingSockets_GetAuthenticationStatus(IntPtr instancePtr, out SteamNetAuthenticationStatus_t pDetails) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamNetworkingSockets_GetAuthenticationStatus(instancePtr, out pDetails); + } else { + return NativeMethodsUnderlying.ISteamNetworkingSockets_GetAuthenticationStatus(instancePtr, out pDetails); + } + } + + public static uint ISteamNetworkingSockets_CreatePollGroup(IntPtr instancePtr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamNetworkingSockets_CreatePollGroup(instancePtr); + } else { + return NativeMethodsUnderlying.ISteamNetworkingSockets_CreatePollGroup(instancePtr); + } + } + + public static bool ISteamNetworkingSockets_DestroyPollGroup(IntPtr instancePtr, HSteamNetPollGroup hPollGroup) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamNetworkingSockets_DestroyPollGroup(instancePtr, hPollGroup); + } else { + return NativeMethodsUnderlying.ISteamNetworkingSockets_DestroyPollGroup(instancePtr, hPollGroup); + } + } + + public static bool ISteamNetworkingSockets_SetConnectionPollGroup(IntPtr instancePtr, HSteamNetConnection hConn, HSteamNetPollGroup hPollGroup) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamNetworkingSockets_SetConnectionPollGroup(instancePtr, hConn, hPollGroup); + } else { + return NativeMethodsUnderlying.ISteamNetworkingSockets_SetConnectionPollGroup(instancePtr, hConn, hPollGroup); + } + } + + public static int ISteamNetworkingSockets_ReceiveMessagesOnPollGroup(IntPtr instancePtr, HSteamNetPollGroup hPollGroup, [In, Out] IntPtr[] ppOutMessages, int nMaxMessages) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamNetworkingSockets_ReceiveMessagesOnPollGroup(instancePtr, hPollGroup, ppOutMessages, nMaxMessages); + } else { + return NativeMethodsUnderlying.ISteamNetworkingSockets_ReceiveMessagesOnPollGroup(instancePtr, hPollGroup, ppOutMessages, nMaxMessages); + } + } + + public static bool ISteamNetworkingSockets_ReceivedRelayAuthTicket(IntPtr instancePtr, IntPtr pvTicket, int cbTicket, out SteamDatagramRelayAuthTicket pOutParsedTicket) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamNetworkingSockets_ReceivedRelayAuthTicket(instancePtr, pvTicket, cbTicket, out pOutParsedTicket); + } else { + return NativeMethodsUnderlying.ISteamNetworkingSockets_ReceivedRelayAuthTicket(instancePtr, pvTicket, cbTicket, out pOutParsedTicket); + } + } + + public static int ISteamNetworkingSockets_FindRelayAuthTicketForServer(IntPtr instancePtr, ref SteamNetworkingIdentity identityGameServer, int nRemoteVirtualPort, out SteamDatagramRelayAuthTicket pOutParsedTicket) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamNetworkingSockets_FindRelayAuthTicketForServer(instancePtr, ref identityGameServer, nRemoteVirtualPort, out pOutParsedTicket); + } else { + return NativeMethodsUnderlying.ISteamNetworkingSockets_FindRelayAuthTicketForServer(instancePtr, ref identityGameServer, nRemoteVirtualPort, out pOutParsedTicket); + } + } + + public static uint ISteamNetworkingSockets_ConnectToHostedDedicatedServer(IntPtr instancePtr, ref SteamNetworkingIdentity identityTarget, int nRemoteVirtualPort, int nOptions, [In, Out] SteamNetworkingConfigValue_t[] pOptions) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamNetworkingSockets_ConnectToHostedDedicatedServer(instancePtr, ref identityTarget, nRemoteVirtualPort, nOptions, pOptions); + } else { + return NativeMethodsUnderlying.ISteamNetworkingSockets_ConnectToHostedDedicatedServer(instancePtr, ref identityTarget, nRemoteVirtualPort, nOptions, pOptions); + } + } + + public static ushort ISteamNetworkingSockets_GetHostedDedicatedServerPort(IntPtr instancePtr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamNetworkingSockets_GetHostedDedicatedServerPort(instancePtr); + } else { + return NativeMethodsUnderlying.ISteamNetworkingSockets_GetHostedDedicatedServerPort(instancePtr); + } + } + + public static uint ISteamNetworkingSockets_GetHostedDedicatedServerPOPID(IntPtr instancePtr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamNetworkingSockets_GetHostedDedicatedServerPOPID(instancePtr); + } else { + return NativeMethodsUnderlying.ISteamNetworkingSockets_GetHostedDedicatedServerPOPID(instancePtr); + } + } + + public static EResult ISteamNetworkingSockets_GetHostedDedicatedServerAddress(IntPtr instancePtr, out SteamDatagramHostedAddress pRouting) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamNetworkingSockets_GetHostedDedicatedServerAddress(instancePtr, out pRouting); + } else { + return NativeMethodsUnderlying.ISteamNetworkingSockets_GetHostedDedicatedServerAddress(instancePtr, out pRouting); + } + } + + public static uint ISteamNetworkingSockets_CreateHostedDedicatedServerListenSocket(IntPtr instancePtr, int nLocalVirtualPort, int nOptions, [In, Out] SteamNetworkingConfigValue_t[] pOptions) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamNetworkingSockets_CreateHostedDedicatedServerListenSocket(instancePtr, nLocalVirtualPort, nOptions, pOptions); + } else { + return NativeMethodsUnderlying.ISteamNetworkingSockets_CreateHostedDedicatedServerListenSocket(instancePtr, nLocalVirtualPort, nOptions, pOptions); + } + } + + public static EResult ISteamNetworkingSockets_GetGameCoordinatorServerLogin(IntPtr instancePtr, IntPtr pLoginInfo, out int pcbSignedBlob, IntPtr pBlob) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamNetworkingSockets_GetGameCoordinatorServerLogin(instancePtr, pLoginInfo, out pcbSignedBlob, pBlob); + } else { + return NativeMethodsUnderlying.ISteamNetworkingSockets_GetGameCoordinatorServerLogin(instancePtr, pLoginInfo, out pcbSignedBlob, pBlob); + } + } + + public static uint ISteamNetworkingSockets_ConnectP2PCustomSignaling(IntPtr instancePtr, out ISteamNetworkingConnectionSignaling pSignaling, ref SteamNetworkingIdentity pPeerIdentity, int nRemoteVirtualPort, int nOptions, [In, Out] SteamNetworkingConfigValue_t[] pOptions) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamNetworkingSockets_ConnectP2PCustomSignaling(instancePtr, out pSignaling, ref pPeerIdentity, nRemoteVirtualPort, nOptions, pOptions); + } else { + return NativeMethodsUnderlying.ISteamNetworkingSockets_ConnectP2PCustomSignaling(instancePtr, out pSignaling, ref pPeerIdentity, nRemoteVirtualPort, nOptions, pOptions); + } + } + + public static bool ISteamNetworkingSockets_ReceivedP2PCustomSignal(IntPtr instancePtr, IntPtr pMsg, int cbMsg, out ISteamNetworkingSignalingRecvContext pContext) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamNetworkingSockets_ReceivedP2PCustomSignal(instancePtr, pMsg, cbMsg, out pContext); + } else { + return NativeMethodsUnderlying.ISteamNetworkingSockets_ReceivedP2PCustomSignal(instancePtr, pMsg, cbMsg, out pContext); + } + } + + public static bool ISteamNetworkingSockets_GetCertificateRequest(IntPtr instancePtr, out int pcbBlob, IntPtr pBlob, out SteamNetworkingErrMsg errMsg) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamNetworkingSockets_GetCertificateRequest(instancePtr, out pcbBlob, pBlob, out errMsg); + } else { + return NativeMethodsUnderlying.ISteamNetworkingSockets_GetCertificateRequest(instancePtr, out pcbBlob, pBlob, out errMsg); + } + } + + public static bool ISteamNetworkingSockets_SetCertificate(IntPtr instancePtr, IntPtr pCertificate, int cbCertificate, out SteamNetworkingErrMsg errMsg) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamNetworkingSockets_SetCertificate(instancePtr, pCertificate, cbCertificate, out errMsg); + } else { + return NativeMethodsUnderlying.ISteamNetworkingSockets_SetCertificate(instancePtr, pCertificate, cbCertificate, out errMsg); + } + } + + public static void ISteamNetworkingSockets_ResetIdentity(IntPtr instancePtr, ref SteamNetworkingIdentity pIdentity) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamNetworkingSockets_ResetIdentity(instancePtr, ref pIdentity); + } else { + NativeMethodsUnderlying.ISteamNetworkingSockets_ResetIdentity(instancePtr, ref pIdentity); + } + } + + public static void ISteamNetworkingSockets_RunCallbacks(IntPtr instancePtr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamNetworkingSockets_RunCallbacks(instancePtr); + } else { + NativeMethodsUnderlying.ISteamNetworkingSockets_RunCallbacks(instancePtr); + } + } + + public static bool ISteamNetworkingSockets_BeginAsyncRequestFakeIP(IntPtr instancePtr, int nNumPorts) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamNetworkingSockets_BeginAsyncRequestFakeIP(instancePtr, nNumPorts); + } else { + return NativeMethodsUnderlying.ISteamNetworkingSockets_BeginAsyncRequestFakeIP(instancePtr, nNumPorts); + } + } + + public static void ISteamNetworkingSockets_GetFakeIP(IntPtr instancePtr, int idxFirstPort, out SteamNetworkingFakeIPResult_t pInfo) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamNetworkingSockets_GetFakeIP(instancePtr, idxFirstPort, out pInfo); + } else { + NativeMethodsUnderlying.ISteamNetworkingSockets_GetFakeIP(instancePtr, idxFirstPort, out pInfo); + } + } + + public static uint ISteamNetworkingSockets_CreateListenSocketP2PFakeIP(IntPtr instancePtr, int idxFakePort, int nOptions, [In, Out] SteamNetworkingConfigValue_t[] pOptions) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamNetworkingSockets_CreateListenSocketP2PFakeIP(instancePtr, idxFakePort, nOptions, pOptions); + } else { + return NativeMethodsUnderlying.ISteamNetworkingSockets_CreateListenSocketP2PFakeIP(instancePtr, idxFakePort, nOptions, pOptions); + } + } + + public static EResult ISteamNetworkingSockets_GetRemoteFakeIPForConnection(IntPtr instancePtr, HSteamNetConnection hConn, out SteamNetworkingIPAddr pOutAddr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamNetworkingSockets_GetRemoteFakeIPForConnection(instancePtr, hConn, out pOutAddr); + } else { + return NativeMethodsUnderlying.ISteamNetworkingSockets_GetRemoteFakeIPForConnection(instancePtr, hConn, out pOutAddr); + } + } + + public static IntPtr ISteamNetworkingSockets_CreateFakeUDPPort(IntPtr instancePtr, int idxFakeServerPort) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamNetworkingSockets_CreateFakeUDPPort(instancePtr, idxFakeServerPort); + } else { + return NativeMethodsUnderlying.ISteamNetworkingSockets_CreateFakeUDPPort(instancePtr, idxFakeServerPort); + } + } + + public static IntPtr ISteamNetworkingUtils_AllocateMessage(IntPtr instancePtr, int cbAllocateBuffer) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamNetworkingUtils_AllocateMessage(instancePtr, cbAllocateBuffer); + } else { + return NativeMethodsUnderlying.ISteamNetworkingUtils_AllocateMessage(instancePtr, cbAllocateBuffer); + } + } + + public static void ISteamNetworkingUtils_InitRelayNetworkAccess(IntPtr instancePtr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamNetworkingUtils_InitRelayNetworkAccess(instancePtr); + } else { + NativeMethodsUnderlying.ISteamNetworkingUtils_InitRelayNetworkAccess(instancePtr); + } + } + + public static ESteamNetworkingAvailability ISteamNetworkingUtils_GetRelayNetworkStatus(IntPtr instancePtr, out SteamRelayNetworkStatus_t pDetails) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamNetworkingUtils_GetRelayNetworkStatus(instancePtr, out pDetails); + } else { + return NativeMethodsUnderlying.ISteamNetworkingUtils_GetRelayNetworkStatus(instancePtr, out pDetails); + } + } + + public static float ISteamNetworkingUtils_GetLocalPingLocation(IntPtr instancePtr, out SteamNetworkPingLocation_t result) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamNetworkingUtils_GetLocalPingLocation(instancePtr, out result); + } else { + return NativeMethodsUnderlying.ISteamNetworkingUtils_GetLocalPingLocation(instancePtr, out result); + } + } + + public static int ISteamNetworkingUtils_EstimatePingTimeBetweenTwoLocations(IntPtr instancePtr, ref SteamNetworkPingLocation_t location1, ref SteamNetworkPingLocation_t location2) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamNetworkingUtils_EstimatePingTimeBetweenTwoLocations(instancePtr, ref location1, ref location2); + } else { + return NativeMethodsUnderlying.ISteamNetworkingUtils_EstimatePingTimeBetweenTwoLocations(instancePtr, ref location1, ref location2); + } + } + + public static int ISteamNetworkingUtils_EstimatePingTimeFromLocalHost(IntPtr instancePtr, ref SteamNetworkPingLocation_t remoteLocation) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamNetworkingUtils_EstimatePingTimeFromLocalHost(instancePtr, ref remoteLocation); + } else { + return NativeMethodsUnderlying.ISteamNetworkingUtils_EstimatePingTimeFromLocalHost(instancePtr, ref remoteLocation); + } + } + + public static void ISteamNetworkingUtils_ConvertPingLocationToString(IntPtr instancePtr, ref SteamNetworkPingLocation_t location, IntPtr pszBuf, int cchBufSize) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamNetworkingUtils_ConvertPingLocationToString(instancePtr, ref location, pszBuf, cchBufSize); + } else { + NativeMethodsUnderlying.ISteamNetworkingUtils_ConvertPingLocationToString(instancePtr, ref location, pszBuf, cchBufSize); + } + } + + public static bool ISteamNetworkingUtils_ParsePingLocationString(IntPtr instancePtr, InteropHelp.UTF8StringHandle pszString, out SteamNetworkPingLocation_t result) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamNetworkingUtils_ParsePingLocationString(instancePtr, pszString, out result); + } else { + return NativeMethodsUnderlying.ISteamNetworkingUtils_ParsePingLocationString(instancePtr, pszString, out result); + } + } + + public static bool ISteamNetworkingUtils_CheckPingDataUpToDate(IntPtr instancePtr, float flMaxAgeSeconds) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamNetworkingUtils_CheckPingDataUpToDate(instancePtr, flMaxAgeSeconds); + } else { + return NativeMethodsUnderlying.ISteamNetworkingUtils_CheckPingDataUpToDate(instancePtr, flMaxAgeSeconds); + } + } + + public static int ISteamNetworkingUtils_GetPingToDataCenter(IntPtr instancePtr, SteamNetworkingPOPID popID, out SteamNetworkingPOPID pViaRelayPoP) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamNetworkingUtils_GetPingToDataCenter(instancePtr, popID, out pViaRelayPoP); + } else { + return NativeMethodsUnderlying.ISteamNetworkingUtils_GetPingToDataCenter(instancePtr, popID, out pViaRelayPoP); + } + } + + public static int ISteamNetworkingUtils_GetDirectPingToPOP(IntPtr instancePtr, SteamNetworkingPOPID popID) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamNetworkingUtils_GetDirectPingToPOP(instancePtr, popID); + } else { + return NativeMethodsUnderlying.ISteamNetworkingUtils_GetDirectPingToPOP(instancePtr, popID); + } + } + + public static int ISteamNetworkingUtils_GetPOPCount(IntPtr instancePtr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamNetworkingUtils_GetPOPCount(instancePtr); + } else { + return NativeMethodsUnderlying.ISteamNetworkingUtils_GetPOPCount(instancePtr); + } + } + + public static int ISteamNetworkingUtils_GetPOPList(IntPtr instancePtr, out SteamNetworkingPOPID list, int nListSz) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamNetworkingUtils_GetPOPList(instancePtr, out list, nListSz); + } else { + return NativeMethodsUnderlying.ISteamNetworkingUtils_GetPOPList(instancePtr, out list, nListSz); + } + } + + public static long ISteamNetworkingUtils_GetLocalTimestamp(IntPtr instancePtr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamNetworkingUtils_GetLocalTimestamp(instancePtr); + } else { + return NativeMethodsUnderlying.ISteamNetworkingUtils_GetLocalTimestamp(instancePtr); + } + } + + public static void ISteamNetworkingUtils_SetDebugOutputFunction(IntPtr instancePtr, ESteamNetworkingSocketsDebugOutputType eDetailLevel, FSteamNetworkingSocketsDebugOutput pfnFunc) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamNetworkingUtils_SetDebugOutputFunction(instancePtr, eDetailLevel, pfnFunc); + } else { + NativeMethodsUnderlying.ISteamNetworkingUtils_SetDebugOutputFunction(instancePtr, eDetailLevel, pfnFunc); + } + } + + public static bool ISteamNetworkingUtils_IsFakeIPv4(IntPtr instancePtr, uint nIPv4) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamNetworkingUtils_IsFakeIPv4(instancePtr, nIPv4); + } else { + return NativeMethodsUnderlying.ISteamNetworkingUtils_IsFakeIPv4(instancePtr, nIPv4); + } + } + + public static ESteamNetworkingFakeIPType ISteamNetworkingUtils_GetIPv4FakeIPType(IntPtr instancePtr, uint nIPv4) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamNetworkingUtils_GetIPv4FakeIPType(instancePtr, nIPv4); + } else { + return NativeMethodsUnderlying.ISteamNetworkingUtils_GetIPv4FakeIPType(instancePtr, nIPv4); + } + } + + public static EResult ISteamNetworkingUtils_GetRealIdentityForFakeIP(IntPtr instancePtr, ref SteamNetworkingIPAddr fakeIP, out SteamNetworkingIdentity pOutRealIdentity) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamNetworkingUtils_GetRealIdentityForFakeIP(instancePtr, ref fakeIP, out pOutRealIdentity); + } else { + return NativeMethodsUnderlying.ISteamNetworkingUtils_GetRealIdentityForFakeIP(instancePtr, ref fakeIP, out pOutRealIdentity); + } + } + + public static bool ISteamNetworkingUtils_SetConfigValue(IntPtr instancePtr, ESteamNetworkingConfigValue eValue, ESteamNetworkingConfigScope eScopeType, IntPtr scopeObj, ESteamNetworkingConfigDataType eDataType, IntPtr pArg) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamNetworkingUtils_SetConfigValue(instancePtr, eValue, eScopeType, scopeObj, eDataType, pArg); + } else { + return NativeMethodsUnderlying.ISteamNetworkingUtils_SetConfigValue(instancePtr, eValue, eScopeType, scopeObj, eDataType, pArg); + } + } + + public static ESteamNetworkingGetConfigValueResult ISteamNetworkingUtils_GetConfigValue(IntPtr instancePtr, ESteamNetworkingConfigValue eValue, ESteamNetworkingConfigScope eScopeType, IntPtr scopeObj, out ESteamNetworkingConfigDataType pOutDataType, IntPtr pResult, ref ulong cbResult) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamNetworkingUtils_GetConfigValue(instancePtr, eValue, eScopeType, scopeObj, out pOutDataType, pResult, ref cbResult); + } else { + return NativeMethodsUnderlying.ISteamNetworkingUtils_GetConfigValue(instancePtr, eValue, eScopeType, scopeObj, out pOutDataType, pResult, ref cbResult); + } + } + + public static IntPtr ISteamNetworkingUtils_GetConfigValueInfo(IntPtr instancePtr, ESteamNetworkingConfigValue eValue, out ESteamNetworkingConfigDataType pOutDataType, out ESteamNetworkingConfigScope pOutScope) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamNetworkingUtils_GetConfigValueInfo(instancePtr, eValue, out pOutDataType, out pOutScope); + } else { + return NativeMethodsUnderlying.ISteamNetworkingUtils_GetConfigValueInfo(instancePtr, eValue, out pOutDataType, out pOutScope); + } + } + + public static ESteamNetworkingConfigValue ISteamNetworkingUtils_IterateGenericEditableConfigValues(IntPtr instancePtr, ESteamNetworkingConfigValue eCurrent, [MarshalAs(UnmanagedType.I1)] bool bEnumerateDevVars) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamNetworkingUtils_IterateGenericEditableConfigValues(instancePtr, eCurrent, bEnumerateDevVars); + } else { + return NativeMethodsUnderlying.ISteamNetworkingUtils_IterateGenericEditableConfigValues(instancePtr, eCurrent, bEnumerateDevVars); + } + } + + public static void ISteamNetworkingUtils_SteamNetworkingIPAddr_ToString(IntPtr instancePtr, ref SteamNetworkingIPAddr addr, IntPtr buf, uint cbBuf, [MarshalAs(UnmanagedType.I1)] bool bWithPort) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamNetworkingUtils_SteamNetworkingIPAddr_ToString(instancePtr, ref addr, buf, cbBuf, bWithPort); + } else { + NativeMethodsUnderlying.ISteamNetworkingUtils_SteamNetworkingIPAddr_ToString(instancePtr, ref addr, buf, cbBuf, bWithPort); + } + } + + public static bool ISteamNetworkingUtils_SteamNetworkingIPAddr_ParseString(IntPtr instancePtr, out SteamNetworkingIPAddr pAddr, InteropHelp.UTF8StringHandle pszStr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamNetworkingUtils_SteamNetworkingIPAddr_ParseString(instancePtr, out pAddr, pszStr); + } else { + return NativeMethodsUnderlying.ISteamNetworkingUtils_SteamNetworkingIPAddr_ParseString(instancePtr, out pAddr, pszStr); + } + } + + public static ESteamNetworkingFakeIPType ISteamNetworkingUtils_SteamNetworkingIPAddr_GetFakeIPType(IntPtr instancePtr, ref SteamNetworkingIPAddr addr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamNetworkingUtils_SteamNetworkingIPAddr_GetFakeIPType(instancePtr, ref addr); + } else { + return NativeMethodsUnderlying.ISteamNetworkingUtils_SteamNetworkingIPAddr_GetFakeIPType(instancePtr, ref addr); + } + } + + public static void ISteamNetworkingUtils_SteamNetworkingIdentity_ToString(IntPtr instancePtr, ref SteamNetworkingIdentity identity, IntPtr buf, uint cbBuf) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamNetworkingUtils_SteamNetworkingIdentity_ToString(instancePtr, ref identity, buf, cbBuf); + } else { + NativeMethodsUnderlying.ISteamNetworkingUtils_SteamNetworkingIdentity_ToString(instancePtr, ref identity, buf, cbBuf); + } + } + + public static bool ISteamNetworkingUtils_SteamNetworkingIdentity_ParseString(IntPtr instancePtr, out SteamNetworkingIdentity pIdentity, InteropHelp.UTF8StringHandle pszStr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamNetworkingUtils_SteamNetworkingIdentity_ParseString(instancePtr, out pIdentity, pszStr); + } else { + return NativeMethodsUnderlying.ISteamNetworkingUtils_SteamNetworkingIdentity_ParseString(instancePtr, out pIdentity, pszStr); + } + } + + public static bool ISteamParentalSettings_BIsParentalLockEnabled(IntPtr instancePtr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamParentalSettings_BIsParentalLockEnabled(instancePtr); + } else { + return NativeMethodsUnderlying.ISteamParentalSettings_BIsParentalLockEnabled(instancePtr); + } + } + + public static bool ISteamParentalSettings_BIsParentalLockLocked(IntPtr instancePtr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamParentalSettings_BIsParentalLockLocked(instancePtr); + } else { + return NativeMethodsUnderlying.ISteamParentalSettings_BIsParentalLockLocked(instancePtr); + } + } + + public static bool ISteamParentalSettings_BIsAppBlocked(IntPtr instancePtr, AppId_t nAppID) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamParentalSettings_BIsAppBlocked(instancePtr, nAppID); + } else { + return NativeMethodsUnderlying.ISteamParentalSettings_BIsAppBlocked(instancePtr, nAppID); + } + } + + public static bool ISteamParentalSettings_BIsAppInBlockList(IntPtr instancePtr, AppId_t nAppID) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamParentalSettings_BIsAppInBlockList(instancePtr, nAppID); + } else { + return NativeMethodsUnderlying.ISteamParentalSettings_BIsAppInBlockList(instancePtr, nAppID); + } + } + + public static bool ISteamParentalSettings_BIsFeatureBlocked(IntPtr instancePtr, EParentalFeature eFeature) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamParentalSettings_BIsFeatureBlocked(instancePtr, eFeature); + } else { + return NativeMethodsUnderlying.ISteamParentalSettings_BIsFeatureBlocked(instancePtr, eFeature); + } + } + + public static bool ISteamParentalSettings_BIsFeatureInBlockList(IntPtr instancePtr, EParentalFeature eFeature) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamParentalSettings_BIsFeatureInBlockList(instancePtr, eFeature); + } else { + return NativeMethodsUnderlying.ISteamParentalSettings_BIsFeatureInBlockList(instancePtr, eFeature); + } + } + + public static uint ISteamRemotePlay_GetSessionCount(IntPtr instancePtr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamRemotePlay_GetSessionCount(instancePtr); + } else { + return NativeMethodsUnderlying.ISteamRemotePlay_GetSessionCount(instancePtr); + } + } + + public static uint ISteamRemotePlay_GetSessionID(IntPtr instancePtr, int iSessionIndex) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamRemotePlay_GetSessionID(instancePtr, iSessionIndex); + } else { + return NativeMethodsUnderlying.ISteamRemotePlay_GetSessionID(instancePtr, iSessionIndex); + } + } + + public static ulong ISteamRemotePlay_GetSessionSteamID(IntPtr instancePtr, RemotePlaySessionID_t unSessionID) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamRemotePlay_GetSessionSteamID(instancePtr, unSessionID); + } else { + return NativeMethodsUnderlying.ISteamRemotePlay_GetSessionSteamID(instancePtr, unSessionID); + } + } + + public static IntPtr ISteamRemotePlay_GetSessionClientName(IntPtr instancePtr, RemotePlaySessionID_t unSessionID) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamRemotePlay_GetSessionClientName(instancePtr, unSessionID); + } else { + return NativeMethodsUnderlying.ISteamRemotePlay_GetSessionClientName(instancePtr, unSessionID); + } + } + + public static ESteamDeviceFormFactor ISteamRemotePlay_GetSessionClientFormFactor(IntPtr instancePtr, RemotePlaySessionID_t unSessionID) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamRemotePlay_GetSessionClientFormFactor(instancePtr, unSessionID); + } else { + return NativeMethodsUnderlying.ISteamRemotePlay_GetSessionClientFormFactor(instancePtr, unSessionID); + } + } + + public static bool ISteamRemotePlay_BGetSessionClientResolution(IntPtr instancePtr, RemotePlaySessionID_t unSessionID, out int pnResolutionX, out int pnResolutionY) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamRemotePlay_BGetSessionClientResolution(instancePtr, unSessionID, out pnResolutionX, out pnResolutionY); + } else { + return NativeMethodsUnderlying.ISteamRemotePlay_BGetSessionClientResolution(instancePtr, unSessionID, out pnResolutionX, out pnResolutionY); + } + } + + public static bool ISteamRemotePlay_BStartRemotePlayTogether(IntPtr instancePtr, [MarshalAs(UnmanagedType.I1)] bool bShowOverlay) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamRemotePlay_BStartRemotePlayTogether(instancePtr, bShowOverlay); + } else { + return NativeMethodsUnderlying.ISteamRemotePlay_BStartRemotePlayTogether(instancePtr, bShowOverlay); + } + } + + public static bool ISteamRemotePlay_BSendRemotePlayTogetherInvite(IntPtr instancePtr, CSteamID steamIDFriend) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamRemotePlay_BSendRemotePlayTogetherInvite(instancePtr, steamIDFriend); + } else { + return NativeMethodsUnderlying.ISteamRemotePlay_BSendRemotePlayTogetherInvite(instancePtr, steamIDFriend); + } + } + + public static bool ISteamRemoteStorage_FileWrite(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchFile, byte[] pvData, int cubData) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamRemoteStorage_FileWrite(instancePtr, pchFile, pvData, cubData); + } else { + return NativeMethodsUnderlying.ISteamRemoteStorage_FileWrite(instancePtr, pchFile, pvData, cubData); + } + } + + public static int ISteamRemoteStorage_FileRead(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchFile, byte[] pvData, int cubDataToRead) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamRemoteStorage_FileRead(instancePtr, pchFile, pvData, cubDataToRead); + } else { + return NativeMethodsUnderlying.ISteamRemoteStorage_FileRead(instancePtr, pchFile, pvData, cubDataToRead); + } + } + + public static ulong ISteamRemoteStorage_FileWriteAsync(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchFile, byte[] pvData, uint cubData) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamRemoteStorage_FileWriteAsync(instancePtr, pchFile, pvData, cubData); + } else { + return NativeMethodsUnderlying.ISteamRemoteStorage_FileWriteAsync(instancePtr, pchFile, pvData, cubData); + } + } + + public static ulong ISteamRemoteStorage_FileReadAsync(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchFile, uint nOffset, uint cubToRead) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamRemoteStorage_FileReadAsync(instancePtr, pchFile, nOffset, cubToRead); + } else { + return NativeMethodsUnderlying.ISteamRemoteStorage_FileReadAsync(instancePtr, pchFile, nOffset, cubToRead); + } + } + + public static bool ISteamRemoteStorage_FileReadAsyncComplete(IntPtr instancePtr, SteamAPICall_t hReadCall, byte[] pvBuffer, uint cubToRead) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamRemoteStorage_FileReadAsyncComplete(instancePtr, hReadCall, pvBuffer, cubToRead); + } else { + return NativeMethodsUnderlying.ISteamRemoteStorage_FileReadAsyncComplete(instancePtr, hReadCall, pvBuffer, cubToRead); + } + } + + public static bool ISteamRemoteStorage_FileForget(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchFile) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamRemoteStorage_FileForget(instancePtr, pchFile); + } else { + return NativeMethodsUnderlying.ISteamRemoteStorage_FileForget(instancePtr, pchFile); + } + } + + public static bool ISteamRemoteStorage_FileDelete(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchFile) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamRemoteStorage_FileDelete(instancePtr, pchFile); + } else { + return NativeMethodsUnderlying.ISteamRemoteStorage_FileDelete(instancePtr, pchFile); + } + } + + public static ulong ISteamRemoteStorage_FileShare(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchFile) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamRemoteStorage_FileShare(instancePtr, pchFile); + } else { + return NativeMethodsUnderlying.ISteamRemoteStorage_FileShare(instancePtr, pchFile); + } + } + + public static bool ISteamRemoteStorage_SetSyncPlatforms(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchFile, ERemoteStoragePlatform eRemoteStoragePlatform) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamRemoteStorage_SetSyncPlatforms(instancePtr, pchFile, eRemoteStoragePlatform); + } else { + return NativeMethodsUnderlying.ISteamRemoteStorage_SetSyncPlatforms(instancePtr, pchFile, eRemoteStoragePlatform); + } + } + + public static ulong ISteamRemoteStorage_FileWriteStreamOpen(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchFile) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamRemoteStorage_FileWriteStreamOpen(instancePtr, pchFile); + } else { + return NativeMethodsUnderlying.ISteamRemoteStorage_FileWriteStreamOpen(instancePtr, pchFile); + } + } + + public static bool ISteamRemoteStorage_FileWriteStreamWriteChunk(IntPtr instancePtr, UGCFileWriteStreamHandle_t writeHandle, byte[] pvData, int cubData) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamRemoteStorage_FileWriteStreamWriteChunk(instancePtr, writeHandle, pvData, cubData); + } else { + return NativeMethodsUnderlying.ISteamRemoteStorage_FileWriteStreamWriteChunk(instancePtr, writeHandle, pvData, cubData); + } + } + + public static bool ISteamRemoteStorage_FileWriteStreamClose(IntPtr instancePtr, UGCFileWriteStreamHandle_t writeHandle) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamRemoteStorage_FileWriteStreamClose(instancePtr, writeHandle); + } else { + return NativeMethodsUnderlying.ISteamRemoteStorage_FileWriteStreamClose(instancePtr, writeHandle); + } + } + + public static bool ISteamRemoteStorage_FileWriteStreamCancel(IntPtr instancePtr, UGCFileWriteStreamHandle_t writeHandle) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamRemoteStorage_FileWriteStreamCancel(instancePtr, writeHandle); + } else { + return NativeMethodsUnderlying.ISteamRemoteStorage_FileWriteStreamCancel(instancePtr, writeHandle); + } + } + + public static bool ISteamRemoteStorage_FileExists(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchFile) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamRemoteStorage_FileExists(instancePtr, pchFile); + } else { + return NativeMethodsUnderlying.ISteamRemoteStorage_FileExists(instancePtr, pchFile); + } + } + + public static bool ISteamRemoteStorage_FilePersisted(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchFile) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamRemoteStorage_FilePersisted(instancePtr, pchFile); + } else { + return NativeMethodsUnderlying.ISteamRemoteStorage_FilePersisted(instancePtr, pchFile); + } + } + + public static int ISteamRemoteStorage_GetFileSize(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchFile) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamRemoteStorage_GetFileSize(instancePtr, pchFile); + } else { + return NativeMethodsUnderlying.ISteamRemoteStorage_GetFileSize(instancePtr, pchFile); + } + } + + public static long ISteamRemoteStorage_GetFileTimestamp(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchFile) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamRemoteStorage_GetFileTimestamp(instancePtr, pchFile); + } else { + return NativeMethodsUnderlying.ISteamRemoteStorage_GetFileTimestamp(instancePtr, pchFile); + } + } + + public static ERemoteStoragePlatform ISteamRemoteStorage_GetSyncPlatforms(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchFile) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamRemoteStorage_GetSyncPlatforms(instancePtr, pchFile); + } else { + return NativeMethodsUnderlying.ISteamRemoteStorage_GetSyncPlatforms(instancePtr, pchFile); + } + } + + public static int ISteamRemoteStorage_GetFileCount(IntPtr instancePtr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamRemoteStorage_GetFileCount(instancePtr); + } else { + return NativeMethodsUnderlying.ISteamRemoteStorage_GetFileCount(instancePtr); + } + } + + public static IntPtr ISteamRemoteStorage_GetFileNameAndSize(IntPtr instancePtr, int iFile, out int pnFileSizeInBytes) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamRemoteStorage_GetFileNameAndSize(instancePtr, iFile, out pnFileSizeInBytes); + } else { + return NativeMethodsUnderlying.ISteamRemoteStorage_GetFileNameAndSize(instancePtr, iFile, out pnFileSizeInBytes); + } + } + + public static bool ISteamRemoteStorage_GetQuota(IntPtr instancePtr, out ulong pnTotalBytes, out ulong puAvailableBytes) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamRemoteStorage_GetQuota(instancePtr, out pnTotalBytes, out puAvailableBytes); + } else { + return NativeMethodsUnderlying.ISteamRemoteStorage_GetQuota(instancePtr, out pnTotalBytes, out puAvailableBytes); + } + } + + public static bool ISteamRemoteStorage_IsCloudEnabledForAccount(IntPtr instancePtr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamRemoteStorage_IsCloudEnabledForAccount(instancePtr); + } else { + return NativeMethodsUnderlying.ISteamRemoteStorage_IsCloudEnabledForAccount(instancePtr); + } + } + + public static bool ISteamRemoteStorage_IsCloudEnabledForApp(IntPtr instancePtr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamRemoteStorage_IsCloudEnabledForApp(instancePtr); + } else { + return NativeMethodsUnderlying.ISteamRemoteStorage_IsCloudEnabledForApp(instancePtr); + } + } + + public static void ISteamRemoteStorage_SetCloudEnabledForApp(IntPtr instancePtr, [MarshalAs(UnmanagedType.I1)] bool bEnabled) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamRemoteStorage_SetCloudEnabledForApp(instancePtr, bEnabled); + } else { + NativeMethodsUnderlying.ISteamRemoteStorage_SetCloudEnabledForApp(instancePtr, bEnabled); + } + } + + public static ulong ISteamRemoteStorage_UGCDownload(IntPtr instancePtr, UGCHandle_t hContent, uint unPriority) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamRemoteStorage_UGCDownload(instancePtr, hContent, unPriority); + } else { + return NativeMethodsUnderlying.ISteamRemoteStorage_UGCDownload(instancePtr, hContent, unPriority); + } + } + + public static bool ISteamRemoteStorage_GetUGCDownloadProgress(IntPtr instancePtr, UGCHandle_t hContent, out int pnBytesDownloaded, out int pnBytesExpected) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamRemoteStorage_GetUGCDownloadProgress(instancePtr, hContent, out pnBytesDownloaded, out pnBytesExpected); + } else { + return NativeMethodsUnderlying.ISteamRemoteStorage_GetUGCDownloadProgress(instancePtr, hContent, out pnBytesDownloaded, out pnBytesExpected); + } + } + + public static bool ISteamRemoteStorage_GetUGCDetails(IntPtr instancePtr, UGCHandle_t hContent, out AppId_t pnAppID, out IntPtr ppchName, out int pnFileSizeInBytes, out CSteamID pSteamIDOwner) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamRemoteStorage_GetUGCDetails(instancePtr, hContent, out pnAppID, out ppchName, out pnFileSizeInBytes, out pSteamIDOwner); + } else { + return NativeMethodsUnderlying.ISteamRemoteStorage_GetUGCDetails(instancePtr, hContent, out pnAppID, out ppchName, out pnFileSizeInBytes, out pSteamIDOwner); + } + } + + public static int ISteamRemoteStorage_UGCRead(IntPtr instancePtr, UGCHandle_t hContent, byte[] pvData, int cubDataToRead, uint cOffset, EUGCReadAction eAction) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamRemoteStorage_UGCRead(instancePtr, hContent, pvData, cubDataToRead, cOffset, eAction); + } else { + return NativeMethodsUnderlying.ISteamRemoteStorage_UGCRead(instancePtr, hContent, pvData, cubDataToRead, cOffset, eAction); + } + } + + public static int ISteamRemoteStorage_GetCachedUGCCount(IntPtr instancePtr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamRemoteStorage_GetCachedUGCCount(instancePtr); + } else { + return NativeMethodsUnderlying.ISteamRemoteStorage_GetCachedUGCCount(instancePtr); + } + } + + public static ulong ISteamRemoteStorage_GetCachedUGCHandle(IntPtr instancePtr, int iCachedContent) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamRemoteStorage_GetCachedUGCHandle(instancePtr, iCachedContent); + } else { + return NativeMethodsUnderlying.ISteamRemoteStorage_GetCachedUGCHandle(instancePtr, iCachedContent); + } + } + + public static ulong ISteamRemoteStorage_PublishWorkshopFile(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchFile, InteropHelp.UTF8StringHandle pchPreviewFile, AppId_t nConsumerAppId, InteropHelp.UTF8StringHandle pchTitle, InteropHelp.UTF8StringHandle pchDescription, ERemoteStoragePublishedFileVisibility eVisibility, IntPtr pTags, EWorkshopFileType eWorkshopFileType) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamRemoteStorage_PublishWorkshopFile(instancePtr, pchFile, pchPreviewFile, nConsumerAppId, pchTitle, pchDescription, eVisibility, pTags, eWorkshopFileType); + } else { + return NativeMethodsUnderlying.ISteamRemoteStorage_PublishWorkshopFile(instancePtr, pchFile, pchPreviewFile, nConsumerAppId, pchTitle, pchDescription, eVisibility, pTags, eWorkshopFileType); + } + } + + public static ulong ISteamRemoteStorage_CreatePublishedFileUpdateRequest(IntPtr instancePtr, PublishedFileId_t unPublishedFileId) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamRemoteStorage_CreatePublishedFileUpdateRequest(instancePtr, unPublishedFileId); + } else { + return NativeMethodsUnderlying.ISteamRemoteStorage_CreatePublishedFileUpdateRequest(instancePtr, unPublishedFileId); + } + } + + public static bool ISteamRemoteStorage_UpdatePublishedFileFile(IntPtr instancePtr, PublishedFileUpdateHandle_t updateHandle, InteropHelp.UTF8StringHandle pchFile) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamRemoteStorage_UpdatePublishedFileFile(instancePtr, updateHandle, pchFile); + } else { + return NativeMethodsUnderlying.ISteamRemoteStorage_UpdatePublishedFileFile(instancePtr, updateHandle, pchFile); + } + } + + public static bool ISteamRemoteStorage_UpdatePublishedFilePreviewFile(IntPtr instancePtr, PublishedFileUpdateHandle_t updateHandle, InteropHelp.UTF8StringHandle pchPreviewFile) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamRemoteStorage_UpdatePublishedFilePreviewFile(instancePtr, updateHandle, pchPreviewFile); + } else { + return NativeMethodsUnderlying.ISteamRemoteStorage_UpdatePublishedFilePreviewFile(instancePtr, updateHandle, pchPreviewFile); + } + } + + public static bool ISteamRemoteStorage_UpdatePublishedFileTitle(IntPtr instancePtr, PublishedFileUpdateHandle_t updateHandle, InteropHelp.UTF8StringHandle pchTitle) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamRemoteStorage_UpdatePublishedFileTitle(instancePtr, updateHandle, pchTitle); + } else { + return NativeMethodsUnderlying.ISteamRemoteStorage_UpdatePublishedFileTitle(instancePtr, updateHandle, pchTitle); + } + } + + public static bool ISteamRemoteStorage_UpdatePublishedFileDescription(IntPtr instancePtr, PublishedFileUpdateHandle_t updateHandle, InteropHelp.UTF8StringHandle pchDescription) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamRemoteStorage_UpdatePublishedFileDescription(instancePtr, updateHandle, pchDescription); + } else { + return NativeMethodsUnderlying.ISteamRemoteStorage_UpdatePublishedFileDescription(instancePtr, updateHandle, pchDescription); + } + } + + public static bool ISteamRemoteStorage_UpdatePublishedFileVisibility(IntPtr instancePtr, PublishedFileUpdateHandle_t updateHandle, ERemoteStoragePublishedFileVisibility eVisibility) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamRemoteStorage_UpdatePublishedFileVisibility(instancePtr, updateHandle, eVisibility); + } else { + return NativeMethodsUnderlying.ISteamRemoteStorage_UpdatePublishedFileVisibility(instancePtr, updateHandle, eVisibility); + } + } + + public static bool ISteamRemoteStorage_UpdatePublishedFileTags(IntPtr instancePtr, PublishedFileUpdateHandle_t updateHandle, IntPtr pTags) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamRemoteStorage_UpdatePublishedFileTags(instancePtr, updateHandle, pTags); + } else { + return NativeMethodsUnderlying.ISteamRemoteStorage_UpdatePublishedFileTags(instancePtr, updateHandle, pTags); + } + } + + public static ulong ISteamRemoteStorage_CommitPublishedFileUpdate(IntPtr instancePtr, PublishedFileUpdateHandle_t updateHandle) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamRemoteStorage_CommitPublishedFileUpdate(instancePtr, updateHandle); + } else { + return NativeMethodsUnderlying.ISteamRemoteStorage_CommitPublishedFileUpdate(instancePtr, updateHandle); + } + } + + public static ulong ISteamRemoteStorage_GetPublishedFileDetails(IntPtr instancePtr, PublishedFileId_t unPublishedFileId, uint unMaxSecondsOld) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamRemoteStorage_GetPublishedFileDetails(instancePtr, unPublishedFileId, unMaxSecondsOld); + } else { + return NativeMethodsUnderlying.ISteamRemoteStorage_GetPublishedFileDetails(instancePtr, unPublishedFileId, unMaxSecondsOld); + } + } + + public static ulong ISteamRemoteStorage_DeletePublishedFile(IntPtr instancePtr, PublishedFileId_t unPublishedFileId) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamRemoteStorage_DeletePublishedFile(instancePtr, unPublishedFileId); + } else { + return NativeMethodsUnderlying.ISteamRemoteStorage_DeletePublishedFile(instancePtr, unPublishedFileId); + } + } + + public static ulong ISteamRemoteStorage_EnumerateUserPublishedFiles(IntPtr instancePtr, uint unStartIndex) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamRemoteStorage_EnumerateUserPublishedFiles(instancePtr, unStartIndex); + } else { + return NativeMethodsUnderlying.ISteamRemoteStorage_EnumerateUserPublishedFiles(instancePtr, unStartIndex); + } + } + + public static ulong ISteamRemoteStorage_SubscribePublishedFile(IntPtr instancePtr, PublishedFileId_t unPublishedFileId) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamRemoteStorage_SubscribePublishedFile(instancePtr, unPublishedFileId); + } else { + return NativeMethodsUnderlying.ISteamRemoteStorage_SubscribePublishedFile(instancePtr, unPublishedFileId); + } + } + + public static ulong ISteamRemoteStorage_EnumerateUserSubscribedFiles(IntPtr instancePtr, uint unStartIndex) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamRemoteStorage_EnumerateUserSubscribedFiles(instancePtr, unStartIndex); + } else { + return NativeMethodsUnderlying.ISteamRemoteStorage_EnumerateUserSubscribedFiles(instancePtr, unStartIndex); + } + } + + public static ulong ISteamRemoteStorage_UnsubscribePublishedFile(IntPtr instancePtr, PublishedFileId_t unPublishedFileId) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamRemoteStorage_UnsubscribePublishedFile(instancePtr, unPublishedFileId); + } else { + return NativeMethodsUnderlying.ISteamRemoteStorage_UnsubscribePublishedFile(instancePtr, unPublishedFileId); + } + } + + public static bool ISteamRemoteStorage_UpdatePublishedFileSetChangeDescription(IntPtr instancePtr, PublishedFileUpdateHandle_t updateHandle, InteropHelp.UTF8StringHandle pchChangeDescription) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamRemoteStorage_UpdatePublishedFileSetChangeDescription(instancePtr, updateHandle, pchChangeDescription); + } else { + return NativeMethodsUnderlying.ISteamRemoteStorage_UpdatePublishedFileSetChangeDescription(instancePtr, updateHandle, pchChangeDescription); + } + } + + public static ulong ISteamRemoteStorage_GetPublishedItemVoteDetails(IntPtr instancePtr, PublishedFileId_t unPublishedFileId) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamRemoteStorage_GetPublishedItemVoteDetails(instancePtr, unPublishedFileId); + } else { + return NativeMethodsUnderlying.ISteamRemoteStorage_GetPublishedItemVoteDetails(instancePtr, unPublishedFileId); + } + } + + public static ulong ISteamRemoteStorage_UpdateUserPublishedItemVote(IntPtr instancePtr, PublishedFileId_t unPublishedFileId, [MarshalAs(UnmanagedType.I1)] bool bVoteUp) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamRemoteStorage_UpdateUserPublishedItemVote(instancePtr, unPublishedFileId, bVoteUp); + } else { + return NativeMethodsUnderlying.ISteamRemoteStorage_UpdateUserPublishedItemVote(instancePtr, unPublishedFileId, bVoteUp); + } + } + + public static ulong ISteamRemoteStorage_GetUserPublishedItemVoteDetails(IntPtr instancePtr, PublishedFileId_t unPublishedFileId) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamRemoteStorage_GetUserPublishedItemVoteDetails(instancePtr, unPublishedFileId); + } else { + return NativeMethodsUnderlying.ISteamRemoteStorage_GetUserPublishedItemVoteDetails(instancePtr, unPublishedFileId); + } + } + + public static ulong ISteamRemoteStorage_EnumerateUserSharedWorkshopFiles(IntPtr instancePtr, CSteamID steamId, uint unStartIndex, IntPtr pRequiredTags, IntPtr pExcludedTags) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamRemoteStorage_EnumerateUserSharedWorkshopFiles(instancePtr, steamId, unStartIndex, pRequiredTags, pExcludedTags); + } else { + return NativeMethodsUnderlying.ISteamRemoteStorage_EnumerateUserSharedWorkshopFiles(instancePtr, steamId, unStartIndex, pRequiredTags, pExcludedTags); + } + } + + public static ulong ISteamRemoteStorage_PublishVideo(IntPtr instancePtr, EWorkshopVideoProvider eVideoProvider, InteropHelp.UTF8StringHandle pchVideoAccount, InteropHelp.UTF8StringHandle pchVideoIdentifier, InteropHelp.UTF8StringHandle pchPreviewFile, AppId_t nConsumerAppId, InteropHelp.UTF8StringHandle pchTitle, InteropHelp.UTF8StringHandle pchDescription, ERemoteStoragePublishedFileVisibility eVisibility, IntPtr pTags) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamRemoteStorage_PublishVideo(instancePtr, eVideoProvider, pchVideoAccount, pchVideoIdentifier, pchPreviewFile, nConsumerAppId, pchTitle, pchDescription, eVisibility, pTags); + } else { + return NativeMethodsUnderlying.ISteamRemoteStorage_PublishVideo(instancePtr, eVideoProvider, pchVideoAccount, pchVideoIdentifier, pchPreviewFile, nConsumerAppId, pchTitle, pchDescription, eVisibility, pTags); + } + } + + public static ulong ISteamRemoteStorage_SetUserPublishedFileAction(IntPtr instancePtr, PublishedFileId_t unPublishedFileId, EWorkshopFileAction eAction) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamRemoteStorage_SetUserPublishedFileAction(instancePtr, unPublishedFileId, eAction); + } else { + return NativeMethodsUnderlying.ISteamRemoteStorage_SetUserPublishedFileAction(instancePtr, unPublishedFileId, eAction); + } + } + + public static ulong ISteamRemoteStorage_EnumeratePublishedFilesByUserAction(IntPtr instancePtr, EWorkshopFileAction eAction, uint unStartIndex) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamRemoteStorage_EnumeratePublishedFilesByUserAction(instancePtr, eAction, unStartIndex); + } else { + return NativeMethodsUnderlying.ISteamRemoteStorage_EnumeratePublishedFilesByUserAction(instancePtr, eAction, unStartIndex); + } + } + + public static ulong ISteamRemoteStorage_EnumeratePublishedWorkshopFiles(IntPtr instancePtr, EWorkshopEnumerationType eEnumerationType, uint unStartIndex, uint unCount, uint unDays, IntPtr pTags, IntPtr pUserTags) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamRemoteStorage_EnumeratePublishedWorkshopFiles(instancePtr, eEnumerationType, unStartIndex, unCount, unDays, pTags, pUserTags); + } else { + return NativeMethodsUnderlying.ISteamRemoteStorage_EnumeratePublishedWorkshopFiles(instancePtr, eEnumerationType, unStartIndex, unCount, unDays, pTags, pUserTags); + } + } + + public static ulong ISteamRemoteStorage_UGCDownloadToLocation(IntPtr instancePtr, UGCHandle_t hContent, InteropHelp.UTF8StringHandle pchLocation, uint unPriority) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamRemoteStorage_UGCDownloadToLocation(instancePtr, hContent, pchLocation, unPriority); + } else { + return NativeMethodsUnderlying.ISteamRemoteStorage_UGCDownloadToLocation(instancePtr, hContent, pchLocation, unPriority); + } + } + + public static int ISteamRemoteStorage_GetLocalFileChangeCount(IntPtr instancePtr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamRemoteStorage_GetLocalFileChangeCount(instancePtr); + } else { + return NativeMethodsUnderlying.ISteamRemoteStorage_GetLocalFileChangeCount(instancePtr); + } + } + + public static IntPtr ISteamRemoteStorage_GetLocalFileChange(IntPtr instancePtr, int iFile, out ERemoteStorageLocalFileChange pEChangeType, out ERemoteStorageFilePathType pEFilePathType) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamRemoteStorage_GetLocalFileChange(instancePtr, iFile, out pEChangeType, out pEFilePathType); + } else { + return NativeMethodsUnderlying.ISteamRemoteStorage_GetLocalFileChange(instancePtr, iFile, out pEChangeType, out pEFilePathType); + } + } + + public static bool ISteamRemoteStorage_BeginFileWriteBatch(IntPtr instancePtr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamRemoteStorage_BeginFileWriteBatch(instancePtr); + } else { + return NativeMethodsUnderlying.ISteamRemoteStorage_BeginFileWriteBatch(instancePtr); + } + } + + public static bool ISteamRemoteStorage_EndFileWriteBatch(IntPtr instancePtr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamRemoteStorage_EndFileWriteBatch(instancePtr); + } else { + return NativeMethodsUnderlying.ISteamRemoteStorage_EndFileWriteBatch(instancePtr); + } + } + + public static uint ISteamScreenshots_WriteScreenshot(IntPtr instancePtr, byte[] pubRGB, uint cubRGB, int nWidth, int nHeight) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamScreenshots_WriteScreenshot(instancePtr, pubRGB, cubRGB, nWidth, nHeight); + } else { + return NativeMethodsUnderlying.ISteamScreenshots_WriteScreenshot(instancePtr, pubRGB, cubRGB, nWidth, nHeight); + } + } + + public static uint ISteamScreenshots_AddScreenshotToLibrary(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchFilename, InteropHelp.UTF8StringHandle pchThumbnailFilename, int nWidth, int nHeight) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamScreenshots_AddScreenshotToLibrary(instancePtr, pchFilename, pchThumbnailFilename, nWidth, nHeight); + } else { + return NativeMethodsUnderlying.ISteamScreenshots_AddScreenshotToLibrary(instancePtr, pchFilename, pchThumbnailFilename, nWidth, nHeight); + } + } + + public static void ISteamScreenshots_TriggerScreenshot(IntPtr instancePtr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamScreenshots_TriggerScreenshot(instancePtr); + } else { + NativeMethodsUnderlying.ISteamScreenshots_TriggerScreenshot(instancePtr); + } + } + + public static void ISteamScreenshots_HookScreenshots(IntPtr instancePtr, [MarshalAs(UnmanagedType.I1)] bool bHook) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamScreenshots_HookScreenshots(instancePtr, bHook); + } else { + NativeMethodsUnderlying.ISteamScreenshots_HookScreenshots(instancePtr, bHook); + } + } + + public static bool ISteamScreenshots_SetLocation(IntPtr instancePtr, ScreenshotHandle hScreenshot, InteropHelp.UTF8StringHandle pchLocation) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamScreenshots_SetLocation(instancePtr, hScreenshot, pchLocation); + } else { + return NativeMethodsUnderlying.ISteamScreenshots_SetLocation(instancePtr, hScreenshot, pchLocation); + } + } + + public static bool ISteamScreenshots_TagUser(IntPtr instancePtr, ScreenshotHandle hScreenshot, CSteamID steamID) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamScreenshots_TagUser(instancePtr, hScreenshot, steamID); + } else { + return NativeMethodsUnderlying.ISteamScreenshots_TagUser(instancePtr, hScreenshot, steamID); + } + } + + public static bool ISteamScreenshots_TagPublishedFile(IntPtr instancePtr, ScreenshotHandle hScreenshot, PublishedFileId_t unPublishedFileID) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamScreenshots_TagPublishedFile(instancePtr, hScreenshot, unPublishedFileID); + } else { + return NativeMethodsUnderlying.ISteamScreenshots_TagPublishedFile(instancePtr, hScreenshot, unPublishedFileID); + } + } + + public static bool ISteamScreenshots_IsScreenshotsHooked(IntPtr instancePtr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamScreenshots_IsScreenshotsHooked(instancePtr); + } else { + return NativeMethodsUnderlying.ISteamScreenshots_IsScreenshotsHooked(instancePtr); + } + } + + public static uint ISteamScreenshots_AddVRScreenshotToLibrary(IntPtr instancePtr, EVRScreenshotType eType, InteropHelp.UTF8StringHandle pchFilename, InteropHelp.UTF8StringHandle pchVRFilename) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamScreenshots_AddVRScreenshotToLibrary(instancePtr, eType, pchFilename, pchVRFilename); + } else { + return NativeMethodsUnderlying.ISteamScreenshots_AddVRScreenshotToLibrary(instancePtr, eType, pchFilename, pchVRFilename); + } + } + + public static void ISteamTimeline_SetTimelineTooltip(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchDescription, float flTimeDelta) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamTimeline_SetTimelineTooltip(instancePtr, pchDescription, flTimeDelta); + } else { + NativeMethodsUnderlying.ISteamTimeline_SetTimelineTooltip(instancePtr, pchDescription, flTimeDelta); + } + } + + public static void ISteamTimeline_ClearTimelineTooltip(IntPtr instancePtr, float flTimeDelta) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamTimeline_ClearTimelineTooltip(instancePtr, flTimeDelta); + } else { + NativeMethodsUnderlying.ISteamTimeline_ClearTimelineTooltip(instancePtr, flTimeDelta); + } + } + + public static void ISteamTimeline_SetTimelineGameMode(IntPtr instancePtr, ETimelineGameMode eMode) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamTimeline_SetTimelineGameMode(instancePtr, eMode); + } else { + NativeMethodsUnderlying.ISteamTimeline_SetTimelineGameMode(instancePtr, eMode); + } + } + + public static ulong ISteamTimeline_AddInstantaneousTimelineEvent(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchTitle, InteropHelp.UTF8StringHandle pchDescription, InteropHelp.UTF8StringHandle pchIcon, uint unIconPriority, float flStartOffsetSeconds, ETimelineEventClipPriority ePossibleClip) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamTimeline_AddInstantaneousTimelineEvent(instancePtr, pchTitle, pchDescription, pchIcon, unIconPriority, flStartOffsetSeconds, ePossibleClip); + } else { + return NativeMethodsUnderlying.ISteamTimeline_AddInstantaneousTimelineEvent(instancePtr, pchTitle, pchDescription, pchIcon, unIconPriority, flStartOffsetSeconds, ePossibleClip); + } + } + + public static ulong ISteamTimeline_AddRangeTimelineEvent(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchTitle, InteropHelp.UTF8StringHandle pchDescription, InteropHelp.UTF8StringHandle pchIcon, uint unIconPriority, float flStartOffsetSeconds, float flDuration, ETimelineEventClipPriority ePossibleClip) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamTimeline_AddRangeTimelineEvent(instancePtr, pchTitle, pchDescription, pchIcon, unIconPriority, flStartOffsetSeconds, flDuration, ePossibleClip); + } else { + return NativeMethodsUnderlying.ISteamTimeline_AddRangeTimelineEvent(instancePtr, pchTitle, pchDescription, pchIcon, unIconPriority, flStartOffsetSeconds, flDuration, ePossibleClip); + } + } + + public static ulong ISteamTimeline_StartRangeTimelineEvent(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchTitle, InteropHelp.UTF8StringHandle pchDescription, InteropHelp.UTF8StringHandle pchIcon, uint unPriority, float flStartOffsetSeconds, ETimelineEventClipPriority ePossibleClip) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamTimeline_StartRangeTimelineEvent(instancePtr, pchTitle, pchDescription, pchIcon, unPriority, flStartOffsetSeconds, ePossibleClip); + } else { + return NativeMethodsUnderlying.ISteamTimeline_StartRangeTimelineEvent(instancePtr, pchTitle, pchDescription, pchIcon, unPriority, flStartOffsetSeconds, ePossibleClip); + } + } + + public static void ISteamTimeline_UpdateRangeTimelineEvent(IntPtr instancePtr, TimelineEventHandle_t ulEvent, InteropHelp.UTF8StringHandle pchTitle, InteropHelp.UTF8StringHandle pchDescription, InteropHelp.UTF8StringHandle pchIcon, uint unPriority, ETimelineEventClipPriority ePossibleClip) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamTimeline_UpdateRangeTimelineEvent(instancePtr, ulEvent, pchTitle, pchDescription, pchIcon, unPriority, ePossibleClip); + } else { + NativeMethodsUnderlying.ISteamTimeline_UpdateRangeTimelineEvent(instancePtr, ulEvent, pchTitle, pchDescription, pchIcon, unPriority, ePossibleClip); + } + } + + public static void ISteamTimeline_EndRangeTimelineEvent(IntPtr instancePtr, TimelineEventHandle_t ulEvent, float flEndOffsetSeconds) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamTimeline_EndRangeTimelineEvent(instancePtr, ulEvent, flEndOffsetSeconds); + } else { + NativeMethodsUnderlying.ISteamTimeline_EndRangeTimelineEvent(instancePtr, ulEvent, flEndOffsetSeconds); + } + } + + public static void ISteamTimeline_RemoveTimelineEvent(IntPtr instancePtr, TimelineEventHandle_t ulEvent) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamTimeline_RemoveTimelineEvent(instancePtr, ulEvent); + } else { + NativeMethodsUnderlying.ISteamTimeline_RemoveTimelineEvent(instancePtr, ulEvent); + } + } + + public static ulong ISteamTimeline_DoesEventRecordingExist(IntPtr instancePtr, TimelineEventHandle_t ulEvent) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamTimeline_DoesEventRecordingExist(instancePtr, ulEvent); + } else { + return NativeMethodsUnderlying.ISteamTimeline_DoesEventRecordingExist(instancePtr, ulEvent); + } + } + + public static void ISteamTimeline_StartGamePhase(IntPtr instancePtr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamTimeline_StartGamePhase(instancePtr); + } else { + NativeMethodsUnderlying.ISteamTimeline_StartGamePhase(instancePtr); + } + } + + public static void ISteamTimeline_EndGamePhase(IntPtr instancePtr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamTimeline_EndGamePhase(instancePtr); + } else { + NativeMethodsUnderlying.ISteamTimeline_EndGamePhase(instancePtr); + } + } + + public static void ISteamTimeline_SetGamePhaseID(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchPhaseID) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamTimeline_SetGamePhaseID(instancePtr, pchPhaseID); + } else { + NativeMethodsUnderlying.ISteamTimeline_SetGamePhaseID(instancePtr, pchPhaseID); + } + } + + public static ulong ISteamTimeline_DoesGamePhaseRecordingExist(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchPhaseID) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamTimeline_DoesGamePhaseRecordingExist(instancePtr, pchPhaseID); + } else { + return NativeMethodsUnderlying.ISteamTimeline_DoesGamePhaseRecordingExist(instancePtr, pchPhaseID); + } + } + + public static void ISteamTimeline_AddGamePhaseTag(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchTagName, InteropHelp.UTF8StringHandle pchTagIcon, InteropHelp.UTF8StringHandle pchTagGroup, uint unPriority) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamTimeline_AddGamePhaseTag(instancePtr, pchTagName, pchTagIcon, pchTagGroup, unPriority); + } else { + NativeMethodsUnderlying.ISteamTimeline_AddGamePhaseTag(instancePtr, pchTagName, pchTagIcon, pchTagGroup, unPriority); + } + } + + public static void ISteamTimeline_SetGamePhaseAttribute(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchAttributeGroup, InteropHelp.UTF8StringHandle pchAttributeValue, uint unPriority) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamTimeline_SetGamePhaseAttribute(instancePtr, pchAttributeGroup, pchAttributeValue, unPriority); + } else { + NativeMethodsUnderlying.ISteamTimeline_SetGamePhaseAttribute(instancePtr, pchAttributeGroup, pchAttributeValue, unPriority); + } + } + + public static void ISteamTimeline_OpenOverlayToGamePhase(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchPhaseID) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamTimeline_OpenOverlayToGamePhase(instancePtr, pchPhaseID); + } else { + NativeMethodsUnderlying.ISteamTimeline_OpenOverlayToGamePhase(instancePtr, pchPhaseID); + } + } + + public static void ISteamTimeline_OpenOverlayToTimelineEvent(IntPtr instancePtr, TimelineEventHandle_t ulEvent) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamTimeline_OpenOverlayToTimelineEvent(instancePtr, ulEvent); + } else { + NativeMethodsUnderlying.ISteamTimeline_OpenOverlayToTimelineEvent(instancePtr, ulEvent); + } + } + + public static ulong ISteamUGC_CreateQueryUserUGCRequest(IntPtr instancePtr, AccountID_t unAccountID, EUserUGCList eListType, EUGCMatchingUGCType eMatchingUGCType, EUserUGCListSortOrder eSortOrder, AppId_t nCreatorAppID, AppId_t nConsumerAppID, uint unPage) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUGC_CreateQueryUserUGCRequest(instancePtr, unAccountID, eListType, eMatchingUGCType, eSortOrder, nCreatorAppID, nConsumerAppID, unPage); + } else { + return NativeMethodsUnderlying.ISteamUGC_CreateQueryUserUGCRequest(instancePtr, unAccountID, eListType, eMatchingUGCType, eSortOrder, nCreatorAppID, nConsumerAppID, unPage); + } + } + + public static ulong ISteamUGC_CreateQueryAllUGCRequestPage(IntPtr instancePtr, EUGCQuery eQueryType, EUGCMatchingUGCType eMatchingeMatchingUGCTypeFileType, AppId_t nCreatorAppID, AppId_t nConsumerAppID, uint unPage) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUGC_CreateQueryAllUGCRequestPage(instancePtr, eQueryType, eMatchingeMatchingUGCTypeFileType, nCreatorAppID, nConsumerAppID, unPage); + } else { + return NativeMethodsUnderlying.ISteamUGC_CreateQueryAllUGCRequestPage(instancePtr, eQueryType, eMatchingeMatchingUGCTypeFileType, nCreatorAppID, nConsumerAppID, unPage); + } + } + + public static ulong ISteamUGC_CreateQueryAllUGCRequestCursor(IntPtr instancePtr, EUGCQuery eQueryType, EUGCMatchingUGCType eMatchingeMatchingUGCTypeFileType, AppId_t nCreatorAppID, AppId_t nConsumerAppID, InteropHelp.UTF8StringHandle pchCursor) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUGC_CreateQueryAllUGCRequestCursor(instancePtr, eQueryType, eMatchingeMatchingUGCTypeFileType, nCreatorAppID, nConsumerAppID, pchCursor); + } else { + return NativeMethodsUnderlying.ISteamUGC_CreateQueryAllUGCRequestCursor(instancePtr, eQueryType, eMatchingeMatchingUGCTypeFileType, nCreatorAppID, nConsumerAppID, pchCursor); + } + } + + public static ulong ISteamUGC_CreateQueryUGCDetailsRequest(IntPtr instancePtr, [In, Out] PublishedFileId_t[] pvecPublishedFileID, uint unNumPublishedFileIDs) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUGC_CreateQueryUGCDetailsRequest(instancePtr, pvecPublishedFileID, unNumPublishedFileIDs); + } else { + return NativeMethodsUnderlying.ISteamUGC_CreateQueryUGCDetailsRequest(instancePtr, pvecPublishedFileID, unNumPublishedFileIDs); + } + } + + public static ulong ISteamUGC_SendQueryUGCRequest(IntPtr instancePtr, UGCQueryHandle_t handle) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUGC_SendQueryUGCRequest(instancePtr, handle); + } else { + return NativeMethodsUnderlying.ISteamUGC_SendQueryUGCRequest(instancePtr, handle); + } + } + + public static bool ISteamUGC_GetQueryUGCResult(IntPtr instancePtr, UGCQueryHandle_t handle, uint index, out SteamUGCDetails_t pDetails) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUGC_GetQueryUGCResult(instancePtr, handle, index, out pDetails); + } else { + return NativeMethodsUnderlying.ISteamUGC_GetQueryUGCResult(instancePtr, handle, index, out pDetails); + } + } + + public static uint ISteamUGC_GetQueryUGCNumTags(IntPtr instancePtr, UGCQueryHandle_t handle, uint index) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUGC_GetQueryUGCNumTags(instancePtr, handle, index); + } else { + return NativeMethodsUnderlying.ISteamUGC_GetQueryUGCNumTags(instancePtr, handle, index); + } + } + + public static bool ISteamUGC_GetQueryUGCTag(IntPtr instancePtr, UGCQueryHandle_t handle, uint index, uint indexTag, IntPtr pchValue, uint cchValueSize) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUGC_GetQueryUGCTag(instancePtr, handle, index, indexTag, pchValue, cchValueSize); + } else { + return NativeMethodsUnderlying.ISteamUGC_GetQueryUGCTag(instancePtr, handle, index, indexTag, pchValue, cchValueSize); + } + } + + public static bool ISteamUGC_GetQueryUGCTagDisplayName(IntPtr instancePtr, UGCQueryHandle_t handle, uint index, uint indexTag, IntPtr pchValue, uint cchValueSize) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUGC_GetQueryUGCTagDisplayName(instancePtr, handle, index, indexTag, pchValue, cchValueSize); + } else { + return NativeMethodsUnderlying.ISteamUGC_GetQueryUGCTagDisplayName(instancePtr, handle, index, indexTag, pchValue, cchValueSize); + } + } + + public static bool ISteamUGC_GetQueryUGCPreviewURL(IntPtr instancePtr, UGCQueryHandle_t handle, uint index, IntPtr pchURL, uint cchURLSize) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUGC_GetQueryUGCPreviewURL(instancePtr, handle, index, pchURL, cchURLSize); + } else { + return NativeMethodsUnderlying.ISteamUGC_GetQueryUGCPreviewURL(instancePtr, handle, index, pchURL, cchURLSize); + } + } + + public static bool ISteamUGC_GetQueryUGCMetadata(IntPtr instancePtr, UGCQueryHandle_t handle, uint index, IntPtr pchMetadata, uint cchMetadatasize) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUGC_GetQueryUGCMetadata(instancePtr, handle, index, pchMetadata, cchMetadatasize); + } else { + return NativeMethodsUnderlying.ISteamUGC_GetQueryUGCMetadata(instancePtr, handle, index, pchMetadata, cchMetadatasize); + } + } + + public static bool ISteamUGC_GetQueryUGCChildren(IntPtr instancePtr, UGCQueryHandle_t handle, uint index, [In, Out] PublishedFileId_t[] pvecPublishedFileID, uint cMaxEntries) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUGC_GetQueryUGCChildren(instancePtr, handle, index, pvecPublishedFileID, cMaxEntries); + } else { + return NativeMethodsUnderlying.ISteamUGC_GetQueryUGCChildren(instancePtr, handle, index, pvecPublishedFileID, cMaxEntries); + } + } + + public static bool ISteamUGC_GetQueryUGCStatistic(IntPtr instancePtr, UGCQueryHandle_t handle, uint index, EItemStatistic eStatType, out ulong pStatValue) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUGC_GetQueryUGCStatistic(instancePtr, handle, index, eStatType, out pStatValue); + } else { + return NativeMethodsUnderlying.ISteamUGC_GetQueryUGCStatistic(instancePtr, handle, index, eStatType, out pStatValue); + } + } + + public static uint ISteamUGC_GetQueryUGCNumAdditionalPreviews(IntPtr instancePtr, UGCQueryHandle_t handle, uint index) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUGC_GetQueryUGCNumAdditionalPreviews(instancePtr, handle, index); + } else { + return NativeMethodsUnderlying.ISteamUGC_GetQueryUGCNumAdditionalPreviews(instancePtr, handle, index); + } + } + + public static bool ISteamUGC_GetQueryUGCAdditionalPreview(IntPtr instancePtr, UGCQueryHandle_t handle, uint index, uint previewIndex, IntPtr pchURLOrVideoID, uint cchURLSize, IntPtr pchOriginalFileName, uint cchOriginalFileNameSize, out EItemPreviewType pPreviewType) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUGC_GetQueryUGCAdditionalPreview(instancePtr, handle, index, previewIndex, pchURLOrVideoID, cchURLSize, pchOriginalFileName, cchOriginalFileNameSize, out pPreviewType); + } else { + return NativeMethodsUnderlying.ISteamUGC_GetQueryUGCAdditionalPreview(instancePtr, handle, index, previewIndex, pchURLOrVideoID, cchURLSize, pchOriginalFileName, cchOriginalFileNameSize, out pPreviewType); + } + } + + public static uint ISteamUGC_GetQueryUGCNumKeyValueTags(IntPtr instancePtr, UGCQueryHandle_t handle, uint index) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUGC_GetQueryUGCNumKeyValueTags(instancePtr, handle, index); + } else { + return NativeMethodsUnderlying.ISteamUGC_GetQueryUGCNumKeyValueTags(instancePtr, handle, index); + } + } + + public static bool ISteamUGC_GetQueryUGCKeyValueTag(IntPtr instancePtr, UGCQueryHandle_t handle, uint index, uint keyValueTagIndex, IntPtr pchKey, uint cchKeySize, IntPtr pchValue, uint cchValueSize) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUGC_GetQueryUGCKeyValueTag(instancePtr, handle, index, keyValueTagIndex, pchKey, cchKeySize, pchValue, cchValueSize); + } else { + return NativeMethodsUnderlying.ISteamUGC_GetQueryUGCKeyValueTag(instancePtr, handle, index, keyValueTagIndex, pchKey, cchKeySize, pchValue, cchValueSize); + } + } + + public static bool ISteamUGC_GetQueryFirstUGCKeyValueTag(IntPtr instancePtr, UGCQueryHandle_t handle, uint index, InteropHelp.UTF8StringHandle pchKey, IntPtr pchValue, uint cchValueSize) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUGC_GetQueryFirstUGCKeyValueTag(instancePtr, handle, index, pchKey, pchValue, cchValueSize); + } else { + return NativeMethodsUnderlying.ISteamUGC_GetQueryFirstUGCKeyValueTag(instancePtr, handle, index, pchKey, pchValue, cchValueSize); + } + } + + public static uint ISteamUGC_GetNumSupportedGameVersions(IntPtr instancePtr, UGCQueryHandle_t handle, uint index) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUGC_GetNumSupportedGameVersions(instancePtr, handle, index); + } else { + return NativeMethodsUnderlying.ISteamUGC_GetNumSupportedGameVersions(instancePtr, handle, index); + } + } + + public static bool ISteamUGC_GetSupportedGameVersionData(IntPtr instancePtr, UGCQueryHandle_t handle, uint index, uint versionIndex, IntPtr pchGameBranchMin, IntPtr pchGameBranchMax, uint cchGameBranchSize) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUGC_GetSupportedGameVersionData(instancePtr, handle, index, versionIndex, pchGameBranchMin, pchGameBranchMax, cchGameBranchSize); + } else { + return NativeMethodsUnderlying.ISteamUGC_GetSupportedGameVersionData(instancePtr, handle, index, versionIndex, pchGameBranchMin, pchGameBranchMax, cchGameBranchSize); + } + } + + public static uint ISteamUGC_GetQueryUGCContentDescriptors(IntPtr instancePtr, UGCQueryHandle_t handle, uint index, [In, Out] EUGCContentDescriptorID[] pvecDescriptors, uint cMaxEntries) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUGC_GetQueryUGCContentDescriptors(instancePtr, handle, index, pvecDescriptors, cMaxEntries); + } else { + return NativeMethodsUnderlying.ISteamUGC_GetQueryUGCContentDescriptors(instancePtr, handle, index, pvecDescriptors, cMaxEntries); + } + } + + public static bool ISteamUGC_ReleaseQueryUGCRequest(IntPtr instancePtr, UGCQueryHandle_t handle) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUGC_ReleaseQueryUGCRequest(instancePtr, handle); + } else { + return NativeMethodsUnderlying.ISteamUGC_ReleaseQueryUGCRequest(instancePtr, handle); + } + } + + public static bool ISteamUGC_AddRequiredTag(IntPtr instancePtr, UGCQueryHandle_t handle, InteropHelp.UTF8StringHandle pTagName) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUGC_AddRequiredTag(instancePtr, handle, pTagName); + } else { + return NativeMethodsUnderlying.ISteamUGC_AddRequiredTag(instancePtr, handle, pTagName); + } + } + + public static bool ISteamUGC_AddRequiredTagGroup(IntPtr instancePtr, UGCQueryHandle_t handle, IntPtr pTagGroups) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUGC_AddRequiredTagGroup(instancePtr, handle, pTagGroups); + } else { + return NativeMethodsUnderlying.ISteamUGC_AddRequiredTagGroup(instancePtr, handle, pTagGroups); + } + } + + public static bool ISteamUGC_AddExcludedTag(IntPtr instancePtr, UGCQueryHandle_t handle, InteropHelp.UTF8StringHandle pTagName) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUGC_AddExcludedTag(instancePtr, handle, pTagName); + } else { + return NativeMethodsUnderlying.ISteamUGC_AddExcludedTag(instancePtr, handle, pTagName); + } + } + + public static bool ISteamUGC_SetReturnOnlyIDs(IntPtr instancePtr, UGCQueryHandle_t handle, [MarshalAs(UnmanagedType.I1)] bool bReturnOnlyIDs) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUGC_SetReturnOnlyIDs(instancePtr, handle, bReturnOnlyIDs); + } else { + return NativeMethodsUnderlying.ISteamUGC_SetReturnOnlyIDs(instancePtr, handle, bReturnOnlyIDs); + } + } + + public static bool ISteamUGC_SetReturnKeyValueTags(IntPtr instancePtr, UGCQueryHandle_t handle, [MarshalAs(UnmanagedType.I1)] bool bReturnKeyValueTags) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUGC_SetReturnKeyValueTags(instancePtr, handle, bReturnKeyValueTags); + } else { + return NativeMethodsUnderlying.ISteamUGC_SetReturnKeyValueTags(instancePtr, handle, bReturnKeyValueTags); + } + } + + public static bool ISteamUGC_SetReturnLongDescription(IntPtr instancePtr, UGCQueryHandle_t handle, [MarshalAs(UnmanagedType.I1)] bool bReturnLongDescription) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUGC_SetReturnLongDescription(instancePtr, handle, bReturnLongDescription); + } else { + return NativeMethodsUnderlying.ISteamUGC_SetReturnLongDescription(instancePtr, handle, bReturnLongDescription); + } + } + + public static bool ISteamUGC_SetReturnMetadata(IntPtr instancePtr, UGCQueryHandle_t handle, [MarshalAs(UnmanagedType.I1)] bool bReturnMetadata) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUGC_SetReturnMetadata(instancePtr, handle, bReturnMetadata); + } else { + return NativeMethodsUnderlying.ISteamUGC_SetReturnMetadata(instancePtr, handle, bReturnMetadata); + } + } + + public static bool ISteamUGC_SetReturnChildren(IntPtr instancePtr, UGCQueryHandle_t handle, [MarshalAs(UnmanagedType.I1)] bool bReturnChildren) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUGC_SetReturnChildren(instancePtr, handle, bReturnChildren); + } else { + return NativeMethodsUnderlying.ISteamUGC_SetReturnChildren(instancePtr, handle, bReturnChildren); + } + } + + public static bool ISteamUGC_SetReturnAdditionalPreviews(IntPtr instancePtr, UGCQueryHandle_t handle, [MarshalAs(UnmanagedType.I1)] bool bReturnAdditionalPreviews) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUGC_SetReturnAdditionalPreviews(instancePtr, handle, bReturnAdditionalPreviews); + } else { + return NativeMethodsUnderlying.ISteamUGC_SetReturnAdditionalPreviews(instancePtr, handle, bReturnAdditionalPreviews); + } + } + + public static bool ISteamUGC_SetReturnTotalOnly(IntPtr instancePtr, UGCQueryHandle_t handle, [MarshalAs(UnmanagedType.I1)] bool bReturnTotalOnly) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUGC_SetReturnTotalOnly(instancePtr, handle, bReturnTotalOnly); + } else { + return NativeMethodsUnderlying.ISteamUGC_SetReturnTotalOnly(instancePtr, handle, bReturnTotalOnly); + } + } + + public static bool ISteamUGC_SetReturnPlaytimeStats(IntPtr instancePtr, UGCQueryHandle_t handle, uint unDays) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUGC_SetReturnPlaytimeStats(instancePtr, handle, unDays); + } else { + return NativeMethodsUnderlying.ISteamUGC_SetReturnPlaytimeStats(instancePtr, handle, unDays); + } + } + + public static bool ISteamUGC_SetLanguage(IntPtr instancePtr, UGCQueryHandle_t handle, InteropHelp.UTF8StringHandle pchLanguage) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUGC_SetLanguage(instancePtr, handle, pchLanguage); + } else { + return NativeMethodsUnderlying.ISteamUGC_SetLanguage(instancePtr, handle, pchLanguage); + } + } + + public static bool ISteamUGC_SetAllowCachedResponse(IntPtr instancePtr, UGCQueryHandle_t handle, uint unMaxAgeSeconds) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUGC_SetAllowCachedResponse(instancePtr, handle, unMaxAgeSeconds); + } else { + return NativeMethodsUnderlying.ISteamUGC_SetAllowCachedResponse(instancePtr, handle, unMaxAgeSeconds); + } + } + + public static bool ISteamUGC_SetAdminQuery(IntPtr instancePtr, UGCUpdateHandle_t handle, [MarshalAs(UnmanagedType.I1)] bool bAdminQuery) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUGC_SetAdminQuery(instancePtr, handle, bAdminQuery); + } else { + return NativeMethodsUnderlying.ISteamUGC_SetAdminQuery(instancePtr, handle, bAdminQuery); + } + } + + public static bool ISteamUGC_SetCloudFileNameFilter(IntPtr instancePtr, UGCQueryHandle_t handle, InteropHelp.UTF8StringHandle pMatchCloudFileName) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUGC_SetCloudFileNameFilter(instancePtr, handle, pMatchCloudFileName); + } else { + return NativeMethodsUnderlying.ISteamUGC_SetCloudFileNameFilter(instancePtr, handle, pMatchCloudFileName); + } + } + + public static bool ISteamUGC_SetMatchAnyTag(IntPtr instancePtr, UGCQueryHandle_t handle, [MarshalAs(UnmanagedType.I1)] bool bMatchAnyTag) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUGC_SetMatchAnyTag(instancePtr, handle, bMatchAnyTag); + } else { + return NativeMethodsUnderlying.ISteamUGC_SetMatchAnyTag(instancePtr, handle, bMatchAnyTag); + } + } + + public static bool ISteamUGC_SetSearchText(IntPtr instancePtr, UGCQueryHandle_t handle, InteropHelp.UTF8StringHandle pSearchText) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUGC_SetSearchText(instancePtr, handle, pSearchText); + } else { + return NativeMethodsUnderlying.ISteamUGC_SetSearchText(instancePtr, handle, pSearchText); + } + } + + public static bool ISteamUGC_SetRankedByTrendDays(IntPtr instancePtr, UGCQueryHandle_t handle, uint unDays) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUGC_SetRankedByTrendDays(instancePtr, handle, unDays); + } else { + return NativeMethodsUnderlying.ISteamUGC_SetRankedByTrendDays(instancePtr, handle, unDays); + } + } + + public static bool ISteamUGC_SetTimeCreatedDateRange(IntPtr instancePtr, UGCQueryHandle_t handle, uint rtStart, uint rtEnd) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUGC_SetTimeCreatedDateRange(instancePtr, handle, rtStart, rtEnd); + } else { + return NativeMethodsUnderlying.ISteamUGC_SetTimeCreatedDateRange(instancePtr, handle, rtStart, rtEnd); + } + } + + public static bool ISteamUGC_SetTimeUpdatedDateRange(IntPtr instancePtr, UGCQueryHandle_t handle, uint rtStart, uint rtEnd) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUGC_SetTimeUpdatedDateRange(instancePtr, handle, rtStart, rtEnd); + } else { + return NativeMethodsUnderlying.ISteamUGC_SetTimeUpdatedDateRange(instancePtr, handle, rtStart, rtEnd); + } + } + + public static bool ISteamUGC_AddRequiredKeyValueTag(IntPtr instancePtr, UGCQueryHandle_t handle, InteropHelp.UTF8StringHandle pKey, InteropHelp.UTF8StringHandle pValue) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUGC_AddRequiredKeyValueTag(instancePtr, handle, pKey, pValue); + } else { + return NativeMethodsUnderlying.ISteamUGC_AddRequiredKeyValueTag(instancePtr, handle, pKey, pValue); + } + } + + public static ulong ISteamUGC_RequestUGCDetails(IntPtr instancePtr, PublishedFileId_t nPublishedFileID, uint unMaxAgeSeconds) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUGC_RequestUGCDetails(instancePtr, nPublishedFileID, unMaxAgeSeconds); + } else { + return NativeMethodsUnderlying.ISteamUGC_RequestUGCDetails(instancePtr, nPublishedFileID, unMaxAgeSeconds); + } + } + + public static ulong ISteamUGC_CreateItem(IntPtr instancePtr, AppId_t nConsumerAppId, EWorkshopFileType eFileType) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUGC_CreateItem(instancePtr, nConsumerAppId, eFileType); + } else { + return NativeMethodsUnderlying.ISteamUGC_CreateItem(instancePtr, nConsumerAppId, eFileType); + } + } + + public static ulong ISteamUGC_StartItemUpdate(IntPtr instancePtr, AppId_t nConsumerAppId, PublishedFileId_t nPublishedFileID) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUGC_StartItemUpdate(instancePtr, nConsumerAppId, nPublishedFileID); + } else { + return NativeMethodsUnderlying.ISteamUGC_StartItemUpdate(instancePtr, nConsumerAppId, nPublishedFileID); + } + } + + public static bool ISteamUGC_SetItemTitle(IntPtr instancePtr, UGCUpdateHandle_t handle, InteropHelp.UTF8StringHandle pchTitle) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUGC_SetItemTitle(instancePtr, handle, pchTitle); + } else { + return NativeMethodsUnderlying.ISteamUGC_SetItemTitle(instancePtr, handle, pchTitle); + } + } + + public static bool ISteamUGC_SetItemDescription(IntPtr instancePtr, UGCUpdateHandle_t handle, InteropHelp.UTF8StringHandle pchDescription) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUGC_SetItemDescription(instancePtr, handle, pchDescription); + } else { + return NativeMethodsUnderlying.ISteamUGC_SetItemDescription(instancePtr, handle, pchDescription); + } + } + + public static bool ISteamUGC_SetItemUpdateLanguage(IntPtr instancePtr, UGCUpdateHandle_t handle, InteropHelp.UTF8StringHandle pchLanguage) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUGC_SetItemUpdateLanguage(instancePtr, handle, pchLanguage); + } else { + return NativeMethodsUnderlying.ISteamUGC_SetItemUpdateLanguage(instancePtr, handle, pchLanguage); + } + } + + public static bool ISteamUGC_SetItemMetadata(IntPtr instancePtr, UGCUpdateHandle_t handle, InteropHelp.UTF8StringHandle pchMetaData) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUGC_SetItemMetadata(instancePtr, handle, pchMetaData); + } else { + return NativeMethodsUnderlying.ISteamUGC_SetItemMetadata(instancePtr, handle, pchMetaData); + } + } + + public static bool ISteamUGC_SetItemVisibility(IntPtr instancePtr, UGCUpdateHandle_t handle, ERemoteStoragePublishedFileVisibility eVisibility) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUGC_SetItemVisibility(instancePtr, handle, eVisibility); + } else { + return NativeMethodsUnderlying.ISteamUGC_SetItemVisibility(instancePtr, handle, eVisibility); + } + } + + public static bool ISteamUGC_SetItemTags(IntPtr instancePtr, UGCUpdateHandle_t updateHandle, IntPtr pTags, [MarshalAs(UnmanagedType.I1)] bool bAllowAdminTags) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUGC_SetItemTags(instancePtr, updateHandle, pTags, bAllowAdminTags); + } else { + return NativeMethodsUnderlying.ISteamUGC_SetItemTags(instancePtr, updateHandle, pTags, bAllowAdminTags); + } + } + + public static bool ISteamUGC_SetItemContent(IntPtr instancePtr, UGCUpdateHandle_t handle, InteropHelp.UTF8StringHandle pszContentFolder) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUGC_SetItemContent(instancePtr, handle, pszContentFolder); + } else { + return NativeMethodsUnderlying.ISteamUGC_SetItemContent(instancePtr, handle, pszContentFolder); + } + } + + public static bool ISteamUGC_SetItemPreview(IntPtr instancePtr, UGCUpdateHandle_t handle, InteropHelp.UTF8StringHandle pszPreviewFile) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUGC_SetItemPreview(instancePtr, handle, pszPreviewFile); + } else { + return NativeMethodsUnderlying.ISteamUGC_SetItemPreview(instancePtr, handle, pszPreviewFile); + } + } + + public static bool ISteamUGC_SetAllowLegacyUpload(IntPtr instancePtr, UGCUpdateHandle_t handle, [MarshalAs(UnmanagedType.I1)] bool bAllowLegacyUpload) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUGC_SetAllowLegacyUpload(instancePtr, handle, bAllowLegacyUpload); + } else { + return NativeMethodsUnderlying.ISteamUGC_SetAllowLegacyUpload(instancePtr, handle, bAllowLegacyUpload); + } + } + + public static bool ISteamUGC_RemoveAllItemKeyValueTags(IntPtr instancePtr, UGCUpdateHandle_t handle) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUGC_RemoveAllItemKeyValueTags(instancePtr, handle); + } else { + return NativeMethodsUnderlying.ISteamUGC_RemoveAllItemKeyValueTags(instancePtr, handle); + } + } + + public static bool ISteamUGC_RemoveItemKeyValueTags(IntPtr instancePtr, UGCUpdateHandle_t handle, InteropHelp.UTF8StringHandle pchKey) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUGC_RemoveItemKeyValueTags(instancePtr, handle, pchKey); + } else { + return NativeMethodsUnderlying.ISteamUGC_RemoveItemKeyValueTags(instancePtr, handle, pchKey); + } + } + + public static bool ISteamUGC_AddItemKeyValueTag(IntPtr instancePtr, UGCUpdateHandle_t handle, InteropHelp.UTF8StringHandle pchKey, InteropHelp.UTF8StringHandle pchValue) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUGC_AddItemKeyValueTag(instancePtr, handle, pchKey, pchValue); + } else { + return NativeMethodsUnderlying.ISteamUGC_AddItemKeyValueTag(instancePtr, handle, pchKey, pchValue); + } + } + + public static bool ISteamUGC_AddItemPreviewFile(IntPtr instancePtr, UGCUpdateHandle_t handle, InteropHelp.UTF8StringHandle pszPreviewFile, EItemPreviewType type) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUGC_AddItemPreviewFile(instancePtr, handle, pszPreviewFile, type); + } else { + return NativeMethodsUnderlying.ISteamUGC_AddItemPreviewFile(instancePtr, handle, pszPreviewFile, type); + } + } + + public static bool ISteamUGC_AddItemPreviewVideo(IntPtr instancePtr, UGCUpdateHandle_t handle, InteropHelp.UTF8StringHandle pszVideoID) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUGC_AddItemPreviewVideo(instancePtr, handle, pszVideoID); + } else { + return NativeMethodsUnderlying.ISteamUGC_AddItemPreviewVideo(instancePtr, handle, pszVideoID); + } + } + + public static bool ISteamUGC_UpdateItemPreviewFile(IntPtr instancePtr, UGCUpdateHandle_t handle, uint index, InteropHelp.UTF8StringHandle pszPreviewFile) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUGC_UpdateItemPreviewFile(instancePtr, handle, index, pszPreviewFile); + } else { + return NativeMethodsUnderlying.ISteamUGC_UpdateItemPreviewFile(instancePtr, handle, index, pszPreviewFile); + } + } + + public static bool ISteamUGC_UpdateItemPreviewVideo(IntPtr instancePtr, UGCUpdateHandle_t handle, uint index, InteropHelp.UTF8StringHandle pszVideoID) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUGC_UpdateItemPreviewVideo(instancePtr, handle, index, pszVideoID); + } else { + return NativeMethodsUnderlying.ISteamUGC_UpdateItemPreviewVideo(instancePtr, handle, index, pszVideoID); + } + } + + public static bool ISteamUGC_RemoveItemPreview(IntPtr instancePtr, UGCUpdateHandle_t handle, uint index) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUGC_RemoveItemPreview(instancePtr, handle, index); + } else { + return NativeMethodsUnderlying.ISteamUGC_RemoveItemPreview(instancePtr, handle, index); + } + } + + public static bool ISteamUGC_AddContentDescriptor(IntPtr instancePtr, UGCUpdateHandle_t handle, EUGCContentDescriptorID descid) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUGC_AddContentDescriptor(instancePtr, handle, descid); + } else { + return NativeMethodsUnderlying.ISteamUGC_AddContentDescriptor(instancePtr, handle, descid); + } + } + + public static bool ISteamUGC_RemoveContentDescriptor(IntPtr instancePtr, UGCUpdateHandle_t handle, EUGCContentDescriptorID descid) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUGC_RemoveContentDescriptor(instancePtr, handle, descid); + } else { + return NativeMethodsUnderlying.ISteamUGC_RemoveContentDescriptor(instancePtr, handle, descid); + } + } + + public static bool ISteamUGC_SetRequiredGameVersions(IntPtr instancePtr, UGCUpdateHandle_t handle, InteropHelp.UTF8StringHandle pszGameBranchMin, InteropHelp.UTF8StringHandle pszGameBranchMax) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUGC_SetRequiredGameVersions(instancePtr, handle, pszGameBranchMin, pszGameBranchMax); + } else { + return NativeMethodsUnderlying.ISteamUGC_SetRequiredGameVersions(instancePtr, handle, pszGameBranchMin, pszGameBranchMax); + } + } + + public static ulong ISteamUGC_SubmitItemUpdate(IntPtr instancePtr, UGCUpdateHandle_t handle, InteropHelp.UTF8StringHandle pchChangeNote) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUGC_SubmitItemUpdate(instancePtr, handle, pchChangeNote); + } else { + return NativeMethodsUnderlying.ISteamUGC_SubmitItemUpdate(instancePtr, handle, pchChangeNote); + } + } + + public static EItemUpdateStatus ISteamUGC_GetItemUpdateProgress(IntPtr instancePtr, UGCUpdateHandle_t handle, out ulong punBytesProcessed, out ulong punBytesTotal) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUGC_GetItemUpdateProgress(instancePtr, handle, out punBytesProcessed, out punBytesTotal); + } else { + return NativeMethodsUnderlying.ISteamUGC_GetItemUpdateProgress(instancePtr, handle, out punBytesProcessed, out punBytesTotal); + } + } + + public static ulong ISteamUGC_SetUserItemVote(IntPtr instancePtr, PublishedFileId_t nPublishedFileID, [MarshalAs(UnmanagedType.I1)] bool bVoteUp) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUGC_SetUserItemVote(instancePtr, nPublishedFileID, bVoteUp); + } else { + return NativeMethodsUnderlying.ISteamUGC_SetUserItemVote(instancePtr, nPublishedFileID, bVoteUp); + } + } + + public static ulong ISteamUGC_GetUserItemVote(IntPtr instancePtr, PublishedFileId_t nPublishedFileID) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUGC_GetUserItemVote(instancePtr, nPublishedFileID); + } else { + return NativeMethodsUnderlying.ISteamUGC_GetUserItemVote(instancePtr, nPublishedFileID); + } + } + + public static ulong ISteamUGC_AddItemToFavorites(IntPtr instancePtr, AppId_t nAppId, PublishedFileId_t nPublishedFileID) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUGC_AddItemToFavorites(instancePtr, nAppId, nPublishedFileID); + } else { + return NativeMethodsUnderlying.ISteamUGC_AddItemToFavorites(instancePtr, nAppId, nPublishedFileID); + } + } + + public static ulong ISteamUGC_RemoveItemFromFavorites(IntPtr instancePtr, AppId_t nAppId, PublishedFileId_t nPublishedFileID) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUGC_RemoveItemFromFavorites(instancePtr, nAppId, nPublishedFileID); + } else { + return NativeMethodsUnderlying.ISteamUGC_RemoveItemFromFavorites(instancePtr, nAppId, nPublishedFileID); + } + } + + public static ulong ISteamUGC_SubscribeItem(IntPtr instancePtr, PublishedFileId_t nPublishedFileID) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUGC_SubscribeItem(instancePtr, nPublishedFileID); + } else { + return NativeMethodsUnderlying.ISteamUGC_SubscribeItem(instancePtr, nPublishedFileID); + } + } + + public static ulong ISteamUGC_UnsubscribeItem(IntPtr instancePtr, PublishedFileId_t nPublishedFileID) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUGC_UnsubscribeItem(instancePtr, nPublishedFileID); + } else { + return NativeMethodsUnderlying.ISteamUGC_UnsubscribeItem(instancePtr, nPublishedFileID); + } + } + + public static uint ISteamUGC_GetNumSubscribedItems(IntPtr instancePtr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUGC_GetNumSubscribedItems(instancePtr); + } else { + return NativeMethodsUnderlying.ISteamUGC_GetNumSubscribedItems(instancePtr); + } + } + + public static uint ISteamUGC_GetSubscribedItems(IntPtr instancePtr, [In, Out] PublishedFileId_t[] pvecPublishedFileID, uint cMaxEntries) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUGC_GetSubscribedItems(instancePtr, pvecPublishedFileID, cMaxEntries); + } else { + return NativeMethodsUnderlying.ISteamUGC_GetSubscribedItems(instancePtr, pvecPublishedFileID, cMaxEntries); + } + } + + public static uint ISteamUGC_GetItemState(IntPtr instancePtr, PublishedFileId_t nPublishedFileID) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUGC_GetItemState(instancePtr, nPublishedFileID); + } else { + return NativeMethodsUnderlying.ISteamUGC_GetItemState(instancePtr, nPublishedFileID); + } + } + + public static bool ISteamUGC_GetItemInstallInfo(IntPtr instancePtr, PublishedFileId_t nPublishedFileID, out ulong punSizeOnDisk, IntPtr pchFolder, uint cchFolderSize, out uint punTimeStamp) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUGC_GetItemInstallInfo(instancePtr, nPublishedFileID, out punSizeOnDisk, pchFolder, cchFolderSize, out punTimeStamp); + } else { + return NativeMethodsUnderlying.ISteamUGC_GetItemInstallInfo(instancePtr, nPublishedFileID, out punSizeOnDisk, pchFolder, cchFolderSize, out punTimeStamp); + } + } + + public static bool ISteamUGC_GetItemDownloadInfo(IntPtr instancePtr, PublishedFileId_t nPublishedFileID, out ulong punBytesDownloaded, out ulong punBytesTotal) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUGC_GetItemDownloadInfo(instancePtr, nPublishedFileID, out punBytesDownloaded, out punBytesTotal); + } else { + return NativeMethodsUnderlying.ISteamUGC_GetItemDownloadInfo(instancePtr, nPublishedFileID, out punBytesDownloaded, out punBytesTotal); + } + } + + public static bool ISteamUGC_DownloadItem(IntPtr instancePtr, PublishedFileId_t nPublishedFileID, [MarshalAs(UnmanagedType.I1)] bool bHighPriority) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUGC_DownloadItem(instancePtr, nPublishedFileID, bHighPriority); + } else { + return NativeMethodsUnderlying.ISteamUGC_DownloadItem(instancePtr, nPublishedFileID, bHighPriority); + } + } + + public static bool ISteamUGC_BInitWorkshopForGameServer(IntPtr instancePtr, DepotId_t unWorkshopDepotID, InteropHelp.UTF8StringHandle pszFolder) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUGC_BInitWorkshopForGameServer(instancePtr, unWorkshopDepotID, pszFolder); + } else { + return NativeMethodsUnderlying.ISteamUGC_BInitWorkshopForGameServer(instancePtr, unWorkshopDepotID, pszFolder); + } + } + + public static void ISteamUGC_SuspendDownloads(IntPtr instancePtr, [MarshalAs(UnmanagedType.I1)] bool bSuspend) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamUGC_SuspendDownloads(instancePtr, bSuspend); + } else { + NativeMethodsUnderlying.ISteamUGC_SuspendDownloads(instancePtr, bSuspend); + } + } + + public static ulong ISteamUGC_StartPlaytimeTracking(IntPtr instancePtr, [In, Out] PublishedFileId_t[] pvecPublishedFileID, uint unNumPublishedFileIDs) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUGC_StartPlaytimeTracking(instancePtr, pvecPublishedFileID, unNumPublishedFileIDs); + } else { + return NativeMethodsUnderlying.ISteamUGC_StartPlaytimeTracking(instancePtr, pvecPublishedFileID, unNumPublishedFileIDs); + } + } + + public static ulong ISteamUGC_StopPlaytimeTracking(IntPtr instancePtr, [In, Out] PublishedFileId_t[] pvecPublishedFileID, uint unNumPublishedFileIDs) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUGC_StopPlaytimeTracking(instancePtr, pvecPublishedFileID, unNumPublishedFileIDs); + } else { + return NativeMethodsUnderlying.ISteamUGC_StopPlaytimeTracking(instancePtr, pvecPublishedFileID, unNumPublishedFileIDs); + } + } + + public static ulong ISteamUGC_StopPlaytimeTrackingForAllItems(IntPtr instancePtr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUGC_StopPlaytimeTrackingForAllItems(instancePtr); + } else { + return NativeMethodsUnderlying.ISteamUGC_StopPlaytimeTrackingForAllItems(instancePtr); + } + } + + public static ulong ISteamUGC_AddDependency(IntPtr instancePtr, PublishedFileId_t nParentPublishedFileID, PublishedFileId_t nChildPublishedFileID) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUGC_AddDependency(instancePtr, nParentPublishedFileID, nChildPublishedFileID); + } else { + return NativeMethodsUnderlying.ISteamUGC_AddDependency(instancePtr, nParentPublishedFileID, nChildPublishedFileID); + } + } + + public static ulong ISteamUGC_RemoveDependency(IntPtr instancePtr, PublishedFileId_t nParentPublishedFileID, PublishedFileId_t nChildPublishedFileID) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUGC_RemoveDependency(instancePtr, nParentPublishedFileID, nChildPublishedFileID); + } else { + return NativeMethodsUnderlying.ISteamUGC_RemoveDependency(instancePtr, nParentPublishedFileID, nChildPublishedFileID); + } + } + + public static ulong ISteamUGC_AddAppDependency(IntPtr instancePtr, PublishedFileId_t nPublishedFileID, AppId_t nAppID) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUGC_AddAppDependency(instancePtr, nPublishedFileID, nAppID); + } else { + return NativeMethodsUnderlying.ISteamUGC_AddAppDependency(instancePtr, nPublishedFileID, nAppID); + } + } + + public static ulong ISteamUGC_RemoveAppDependency(IntPtr instancePtr, PublishedFileId_t nPublishedFileID, AppId_t nAppID) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUGC_RemoveAppDependency(instancePtr, nPublishedFileID, nAppID); + } else { + return NativeMethodsUnderlying.ISteamUGC_RemoveAppDependency(instancePtr, nPublishedFileID, nAppID); + } + } + + public static ulong ISteamUGC_GetAppDependencies(IntPtr instancePtr, PublishedFileId_t nPublishedFileID) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUGC_GetAppDependencies(instancePtr, nPublishedFileID); + } else { + return NativeMethodsUnderlying.ISteamUGC_GetAppDependencies(instancePtr, nPublishedFileID); + } + } + + public static ulong ISteamUGC_DeleteItem(IntPtr instancePtr, PublishedFileId_t nPublishedFileID) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUGC_DeleteItem(instancePtr, nPublishedFileID); + } else { + return NativeMethodsUnderlying.ISteamUGC_DeleteItem(instancePtr, nPublishedFileID); + } + } + + public static bool ISteamUGC_ShowWorkshopEULA(IntPtr instancePtr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUGC_ShowWorkshopEULA(instancePtr); + } else { + return NativeMethodsUnderlying.ISteamUGC_ShowWorkshopEULA(instancePtr); + } + } + + public static ulong ISteamUGC_GetWorkshopEULAStatus(IntPtr instancePtr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUGC_GetWorkshopEULAStatus(instancePtr); + } else { + return NativeMethodsUnderlying.ISteamUGC_GetWorkshopEULAStatus(instancePtr); + } + } + + public static uint ISteamUGC_GetUserContentDescriptorPreferences(IntPtr instancePtr, [In, Out] EUGCContentDescriptorID[] pvecDescriptors, uint cMaxEntries) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUGC_GetUserContentDescriptorPreferences(instancePtr, pvecDescriptors, cMaxEntries); + } else { + return NativeMethodsUnderlying.ISteamUGC_GetUserContentDescriptorPreferences(instancePtr, pvecDescriptors, cMaxEntries); + } + } + + public static int ISteamUser_GetHSteamUser(IntPtr instancePtr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUser_GetHSteamUser(instancePtr); + } else { + return NativeMethodsUnderlying.ISteamUser_GetHSteamUser(instancePtr); + } + } + + public static bool ISteamUser_BLoggedOn(IntPtr instancePtr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUser_BLoggedOn(instancePtr); + } else { + return NativeMethodsUnderlying.ISteamUser_BLoggedOn(instancePtr); + } + } + + public static ulong ISteamUser_GetSteamID(IntPtr instancePtr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUser_GetSteamID(instancePtr); + } else { + return NativeMethodsUnderlying.ISteamUser_GetSteamID(instancePtr); + } + } + + public static int ISteamUser_InitiateGameConnection_DEPRECATED(IntPtr instancePtr, byte[] pAuthBlob, int cbMaxAuthBlob, CSteamID steamIDGameServer, uint unIPServer, ushort usPortServer, [MarshalAs(UnmanagedType.I1)] bool bSecure) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUser_InitiateGameConnection_DEPRECATED(instancePtr, pAuthBlob, cbMaxAuthBlob, steamIDGameServer, unIPServer, usPortServer, bSecure); + } else { + return NativeMethodsUnderlying.ISteamUser_InitiateGameConnection_DEPRECATED(instancePtr, pAuthBlob, cbMaxAuthBlob, steamIDGameServer, unIPServer, usPortServer, bSecure); + } + } + + public static void ISteamUser_TerminateGameConnection_DEPRECATED(IntPtr instancePtr, uint unIPServer, ushort usPortServer) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamUser_TerminateGameConnection_DEPRECATED(instancePtr, unIPServer, usPortServer); + } else { + NativeMethodsUnderlying.ISteamUser_TerminateGameConnection_DEPRECATED(instancePtr, unIPServer, usPortServer); + } + } + + public static void ISteamUser_TrackAppUsageEvent(IntPtr instancePtr, CGameID gameID, int eAppUsageEvent, InteropHelp.UTF8StringHandle pchExtraInfo) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamUser_TrackAppUsageEvent(instancePtr, gameID, eAppUsageEvent, pchExtraInfo); + } else { + NativeMethodsUnderlying.ISteamUser_TrackAppUsageEvent(instancePtr, gameID, eAppUsageEvent, pchExtraInfo); + } + } + + public static bool ISteamUser_GetUserDataFolder(IntPtr instancePtr, IntPtr pchBuffer, int cubBuffer) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUser_GetUserDataFolder(instancePtr, pchBuffer, cubBuffer); + } else { + return NativeMethodsUnderlying.ISteamUser_GetUserDataFolder(instancePtr, pchBuffer, cubBuffer); + } + } + + public static void ISteamUser_StartVoiceRecording(IntPtr instancePtr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamUser_StartVoiceRecording(instancePtr); + } else { + NativeMethodsUnderlying.ISteamUser_StartVoiceRecording(instancePtr); + } + } + + public static void ISteamUser_StopVoiceRecording(IntPtr instancePtr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamUser_StopVoiceRecording(instancePtr); + } else { + NativeMethodsUnderlying.ISteamUser_StopVoiceRecording(instancePtr); + } + } + + public static EVoiceResult ISteamUser_GetAvailableVoice(IntPtr instancePtr, out uint pcbCompressed, IntPtr pcbUncompressed_Deprecated, uint nUncompressedVoiceDesiredSampleRate_Deprecated) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUser_GetAvailableVoice(instancePtr, out pcbCompressed, pcbUncompressed_Deprecated, nUncompressedVoiceDesiredSampleRate_Deprecated); + } else { + return NativeMethodsUnderlying.ISteamUser_GetAvailableVoice(instancePtr, out pcbCompressed, pcbUncompressed_Deprecated, nUncompressedVoiceDesiredSampleRate_Deprecated); + } + } + + public static EVoiceResult ISteamUser_GetVoice(IntPtr instancePtr, [MarshalAs(UnmanagedType.I1)] bool bWantCompressed, byte[] pDestBuffer, uint cbDestBufferSize, out uint nBytesWritten, [MarshalAs(UnmanagedType.I1)] bool bWantUncompressed_Deprecated, IntPtr pUncompressedDestBuffer_Deprecated, uint cbUncompressedDestBufferSize_Deprecated, IntPtr nUncompressBytesWritten_Deprecated, uint nUncompressedVoiceDesiredSampleRate_Deprecated) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUser_GetVoice(instancePtr, bWantCompressed, pDestBuffer, cbDestBufferSize, out nBytesWritten, bWantUncompressed_Deprecated, pUncompressedDestBuffer_Deprecated, cbUncompressedDestBufferSize_Deprecated, nUncompressBytesWritten_Deprecated, nUncompressedVoiceDesiredSampleRate_Deprecated); + } else { + return NativeMethodsUnderlying.ISteamUser_GetVoice(instancePtr, bWantCompressed, pDestBuffer, cbDestBufferSize, out nBytesWritten, bWantUncompressed_Deprecated, pUncompressedDestBuffer_Deprecated, cbUncompressedDestBufferSize_Deprecated, nUncompressBytesWritten_Deprecated, nUncompressedVoiceDesiredSampleRate_Deprecated); + } + } + + public static EVoiceResult ISteamUser_DecompressVoice(IntPtr instancePtr, byte[] pCompressed, uint cbCompressed, byte[] pDestBuffer, uint cbDestBufferSize, out uint nBytesWritten, uint nDesiredSampleRate) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUser_DecompressVoice(instancePtr, pCompressed, cbCompressed, pDestBuffer, cbDestBufferSize, out nBytesWritten, nDesiredSampleRate); + } else { + return NativeMethodsUnderlying.ISteamUser_DecompressVoice(instancePtr, pCompressed, cbCompressed, pDestBuffer, cbDestBufferSize, out nBytesWritten, nDesiredSampleRate); + } + } + + public static uint ISteamUser_GetVoiceOptimalSampleRate(IntPtr instancePtr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUser_GetVoiceOptimalSampleRate(instancePtr); + } else { + return NativeMethodsUnderlying.ISteamUser_GetVoiceOptimalSampleRate(instancePtr); + } + } + + public static uint ISteamUser_GetAuthSessionTicket(IntPtr instancePtr, byte[] pTicket, int cbMaxTicket, out uint pcbTicket, ref SteamNetworkingIdentity pSteamNetworkingIdentity) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUser_GetAuthSessionTicket(instancePtr, pTicket, cbMaxTicket, out pcbTicket, ref pSteamNetworkingIdentity); + } else { + return NativeMethodsUnderlying.ISteamUser_GetAuthSessionTicket(instancePtr, pTicket, cbMaxTicket, out pcbTicket, ref pSteamNetworkingIdentity); + } + } + + public static uint ISteamUser_GetAuthTicketForWebApi(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchIdentity) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUser_GetAuthTicketForWebApi(instancePtr, pchIdentity); + } else { + return NativeMethodsUnderlying.ISteamUser_GetAuthTicketForWebApi(instancePtr, pchIdentity); + } + } + + public static EBeginAuthSessionResult ISteamUser_BeginAuthSession(IntPtr instancePtr, byte[] pAuthTicket, int cbAuthTicket, CSteamID steamID) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUser_BeginAuthSession(instancePtr, pAuthTicket, cbAuthTicket, steamID); + } else { + return NativeMethodsUnderlying.ISteamUser_BeginAuthSession(instancePtr, pAuthTicket, cbAuthTicket, steamID); + } + } + + public static void ISteamUser_EndAuthSession(IntPtr instancePtr, CSteamID steamID) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamUser_EndAuthSession(instancePtr, steamID); + } else { + NativeMethodsUnderlying.ISteamUser_EndAuthSession(instancePtr, steamID); + } + } + + public static void ISteamUser_CancelAuthTicket(IntPtr instancePtr, HAuthTicket hAuthTicket) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamUser_CancelAuthTicket(instancePtr, hAuthTicket); + } else { + NativeMethodsUnderlying.ISteamUser_CancelAuthTicket(instancePtr, hAuthTicket); + } + } + + public static EUserHasLicenseForAppResult ISteamUser_UserHasLicenseForApp(IntPtr instancePtr, CSteamID steamID, AppId_t appID) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUser_UserHasLicenseForApp(instancePtr, steamID, appID); + } else { + return NativeMethodsUnderlying.ISteamUser_UserHasLicenseForApp(instancePtr, steamID, appID); + } + } + + public static bool ISteamUser_BIsBehindNAT(IntPtr instancePtr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUser_BIsBehindNAT(instancePtr); + } else { + return NativeMethodsUnderlying.ISteamUser_BIsBehindNAT(instancePtr); + } + } + + public static void ISteamUser_AdvertiseGame(IntPtr instancePtr, CSteamID steamIDGameServer, uint unIPServer, ushort usPortServer) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamUser_AdvertiseGame(instancePtr, steamIDGameServer, unIPServer, usPortServer); + } else { + NativeMethodsUnderlying.ISteamUser_AdvertiseGame(instancePtr, steamIDGameServer, unIPServer, usPortServer); + } + } + + public static ulong ISteamUser_RequestEncryptedAppTicket(IntPtr instancePtr, byte[] pDataToInclude, int cbDataToInclude) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUser_RequestEncryptedAppTicket(instancePtr, pDataToInclude, cbDataToInclude); + } else { + return NativeMethodsUnderlying.ISteamUser_RequestEncryptedAppTicket(instancePtr, pDataToInclude, cbDataToInclude); + } + } + + public static bool ISteamUser_GetEncryptedAppTicket(IntPtr instancePtr, byte[] pTicket, int cbMaxTicket, out uint pcbTicket) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUser_GetEncryptedAppTicket(instancePtr, pTicket, cbMaxTicket, out pcbTicket); + } else { + return NativeMethodsUnderlying.ISteamUser_GetEncryptedAppTicket(instancePtr, pTicket, cbMaxTicket, out pcbTicket); + } + } + + public static int ISteamUser_GetGameBadgeLevel(IntPtr instancePtr, int nSeries, [MarshalAs(UnmanagedType.I1)] bool bFoil) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUser_GetGameBadgeLevel(instancePtr, nSeries, bFoil); + } else { + return NativeMethodsUnderlying.ISteamUser_GetGameBadgeLevel(instancePtr, nSeries, bFoil); + } + } + + public static int ISteamUser_GetPlayerSteamLevel(IntPtr instancePtr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUser_GetPlayerSteamLevel(instancePtr); + } else { + return NativeMethodsUnderlying.ISteamUser_GetPlayerSteamLevel(instancePtr); + } + } + + public static ulong ISteamUser_RequestStoreAuthURL(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchRedirectURL) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUser_RequestStoreAuthURL(instancePtr, pchRedirectURL); + } else { + return NativeMethodsUnderlying.ISteamUser_RequestStoreAuthURL(instancePtr, pchRedirectURL); + } + } + + public static bool ISteamUser_BIsPhoneVerified(IntPtr instancePtr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUser_BIsPhoneVerified(instancePtr); + } else { + return NativeMethodsUnderlying.ISteamUser_BIsPhoneVerified(instancePtr); + } + } + + public static bool ISteamUser_BIsTwoFactorEnabled(IntPtr instancePtr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUser_BIsTwoFactorEnabled(instancePtr); + } else { + return NativeMethodsUnderlying.ISteamUser_BIsTwoFactorEnabled(instancePtr); + } + } + + public static bool ISteamUser_BIsPhoneIdentifying(IntPtr instancePtr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUser_BIsPhoneIdentifying(instancePtr); + } else { + return NativeMethodsUnderlying.ISteamUser_BIsPhoneIdentifying(instancePtr); + } + } + + public static bool ISteamUser_BIsPhoneRequiringVerification(IntPtr instancePtr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUser_BIsPhoneRequiringVerification(instancePtr); + } else { + return NativeMethodsUnderlying.ISteamUser_BIsPhoneRequiringVerification(instancePtr); + } + } + + public static ulong ISteamUser_GetMarketEligibility(IntPtr instancePtr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUser_GetMarketEligibility(instancePtr); + } else { + return NativeMethodsUnderlying.ISteamUser_GetMarketEligibility(instancePtr); + } + } + + public static ulong ISteamUser_GetDurationControl(IntPtr instancePtr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUser_GetDurationControl(instancePtr); + } else { + return NativeMethodsUnderlying.ISteamUser_GetDurationControl(instancePtr); + } + } + + public static bool ISteamUser_BSetDurationControlOnlineState(IntPtr instancePtr, EDurationControlOnlineState eNewState) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUser_BSetDurationControlOnlineState(instancePtr, eNewState); + } else { + return NativeMethodsUnderlying.ISteamUser_BSetDurationControlOnlineState(instancePtr, eNewState); + } + } + + public static bool ISteamUserStats_GetStatInt32(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchName, out int pData) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUserStats_GetStatInt32(instancePtr, pchName, out pData); + } else { + return NativeMethodsUnderlying.ISteamUserStats_GetStatInt32(instancePtr, pchName, out pData); + } + } + + public static bool ISteamUserStats_GetStatFloat(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchName, out float pData) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUserStats_GetStatFloat(instancePtr, pchName, out pData); + } else { + return NativeMethodsUnderlying.ISteamUserStats_GetStatFloat(instancePtr, pchName, out pData); + } + } + + public static bool ISteamUserStats_SetStatInt32(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchName, int nData) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUserStats_SetStatInt32(instancePtr, pchName, nData); + } else { + return NativeMethodsUnderlying.ISteamUserStats_SetStatInt32(instancePtr, pchName, nData); + } + } + + public static bool ISteamUserStats_SetStatFloat(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchName, float fData) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUserStats_SetStatFloat(instancePtr, pchName, fData); + } else { + return NativeMethodsUnderlying.ISteamUserStats_SetStatFloat(instancePtr, pchName, fData); + } + } + + public static bool ISteamUserStats_UpdateAvgRateStat(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchName, float flCountThisSession, double dSessionLength) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUserStats_UpdateAvgRateStat(instancePtr, pchName, flCountThisSession, dSessionLength); + } else { + return NativeMethodsUnderlying.ISteamUserStats_UpdateAvgRateStat(instancePtr, pchName, flCountThisSession, dSessionLength); + } + } + + public static bool ISteamUserStats_GetAchievement(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchName, out bool pbAchieved) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUserStats_GetAchievement(instancePtr, pchName, out pbAchieved); + } else { + return NativeMethodsUnderlying.ISteamUserStats_GetAchievement(instancePtr, pchName, out pbAchieved); + } + } + + public static bool ISteamUserStats_SetAchievement(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchName) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUserStats_SetAchievement(instancePtr, pchName); + } else { + return NativeMethodsUnderlying.ISteamUserStats_SetAchievement(instancePtr, pchName); + } + } + + public static bool ISteamUserStats_ClearAchievement(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchName) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUserStats_ClearAchievement(instancePtr, pchName); + } else { + return NativeMethodsUnderlying.ISteamUserStats_ClearAchievement(instancePtr, pchName); + } + } + + public static bool ISteamUserStats_GetAchievementAndUnlockTime(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchName, out bool pbAchieved, out uint punUnlockTime) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUserStats_GetAchievementAndUnlockTime(instancePtr, pchName, out pbAchieved, out punUnlockTime); + } else { + return NativeMethodsUnderlying.ISteamUserStats_GetAchievementAndUnlockTime(instancePtr, pchName, out pbAchieved, out punUnlockTime); + } + } + + public static bool ISteamUserStats_StoreStats(IntPtr instancePtr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUserStats_StoreStats(instancePtr); + } else { + return NativeMethodsUnderlying.ISteamUserStats_StoreStats(instancePtr); + } + } + + public static int ISteamUserStats_GetAchievementIcon(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchName) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUserStats_GetAchievementIcon(instancePtr, pchName); + } else { + return NativeMethodsUnderlying.ISteamUserStats_GetAchievementIcon(instancePtr, pchName); + } + } + + public static IntPtr ISteamUserStats_GetAchievementDisplayAttribute(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchName, InteropHelp.UTF8StringHandle pchKey) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUserStats_GetAchievementDisplayAttribute(instancePtr, pchName, pchKey); + } else { + return NativeMethodsUnderlying.ISteamUserStats_GetAchievementDisplayAttribute(instancePtr, pchName, pchKey); + } + } + + public static bool ISteamUserStats_IndicateAchievementProgress(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchName, uint nCurProgress, uint nMaxProgress) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUserStats_IndicateAchievementProgress(instancePtr, pchName, nCurProgress, nMaxProgress); + } else { + return NativeMethodsUnderlying.ISteamUserStats_IndicateAchievementProgress(instancePtr, pchName, nCurProgress, nMaxProgress); + } + } + + public static uint ISteamUserStats_GetNumAchievements(IntPtr instancePtr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUserStats_GetNumAchievements(instancePtr); + } else { + return NativeMethodsUnderlying.ISteamUserStats_GetNumAchievements(instancePtr); + } + } + + public static IntPtr ISteamUserStats_GetAchievementName(IntPtr instancePtr, uint iAchievement) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUserStats_GetAchievementName(instancePtr, iAchievement); + } else { + return NativeMethodsUnderlying.ISteamUserStats_GetAchievementName(instancePtr, iAchievement); + } + } + + public static ulong ISteamUserStats_RequestUserStats(IntPtr instancePtr, CSteamID steamIDUser) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUserStats_RequestUserStats(instancePtr, steamIDUser); + } else { + return NativeMethodsUnderlying.ISteamUserStats_RequestUserStats(instancePtr, steamIDUser); + } + } + + public static bool ISteamUserStats_GetUserStatInt32(IntPtr instancePtr, CSteamID steamIDUser, InteropHelp.UTF8StringHandle pchName, out int pData) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUserStats_GetUserStatInt32(instancePtr, steamIDUser, pchName, out pData); + } else { + return NativeMethodsUnderlying.ISteamUserStats_GetUserStatInt32(instancePtr, steamIDUser, pchName, out pData); + } + } + + public static bool ISteamUserStats_GetUserStatFloat(IntPtr instancePtr, CSteamID steamIDUser, InteropHelp.UTF8StringHandle pchName, out float pData) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUserStats_GetUserStatFloat(instancePtr, steamIDUser, pchName, out pData); + } else { + return NativeMethodsUnderlying.ISteamUserStats_GetUserStatFloat(instancePtr, steamIDUser, pchName, out pData); + } + } + + public static bool ISteamUserStats_GetUserAchievement(IntPtr instancePtr, CSteamID steamIDUser, InteropHelp.UTF8StringHandle pchName, out bool pbAchieved) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUserStats_GetUserAchievement(instancePtr, steamIDUser, pchName, out pbAchieved); + } else { + return NativeMethodsUnderlying.ISteamUserStats_GetUserAchievement(instancePtr, steamIDUser, pchName, out pbAchieved); + } + } + + public static bool ISteamUserStats_GetUserAchievementAndUnlockTime(IntPtr instancePtr, CSteamID steamIDUser, InteropHelp.UTF8StringHandle pchName, out bool pbAchieved, out uint punUnlockTime) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUserStats_GetUserAchievementAndUnlockTime(instancePtr, steamIDUser, pchName, out pbAchieved, out punUnlockTime); + } else { + return NativeMethodsUnderlying.ISteamUserStats_GetUserAchievementAndUnlockTime(instancePtr, steamIDUser, pchName, out pbAchieved, out punUnlockTime); + } + } + + public static bool ISteamUserStats_ResetAllStats(IntPtr instancePtr, [MarshalAs(UnmanagedType.I1)] bool bAchievementsToo) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUserStats_ResetAllStats(instancePtr, bAchievementsToo); + } else { + return NativeMethodsUnderlying.ISteamUserStats_ResetAllStats(instancePtr, bAchievementsToo); + } + } + + public static ulong ISteamUserStats_FindOrCreateLeaderboard(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchLeaderboardName, ELeaderboardSortMethod eLeaderboardSortMethod, ELeaderboardDisplayType eLeaderboardDisplayType) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUserStats_FindOrCreateLeaderboard(instancePtr, pchLeaderboardName, eLeaderboardSortMethod, eLeaderboardDisplayType); + } else { + return NativeMethodsUnderlying.ISteamUserStats_FindOrCreateLeaderboard(instancePtr, pchLeaderboardName, eLeaderboardSortMethod, eLeaderboardDisplayType); + } + } + + public static ulong ISteamUserStats_FindLeaderboard(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchLeaderboardName) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUserStats_FindLeaderboard(instancePtr, pchLeaderboardName); + } else { + return NativeMethodsUnderlying.ISteamUserStats_FindLeaderboard(instancePtr, pchLeaderboardName); + } + } + + public static IntPtr ISteamUserStats_GetLeaderboardName(IntPtr instancePtr, SteamLeaderboard_t hSteamLeaderboard) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUserStats_GetLeaderboardName(instancePtr, hSteamLeaderboard); + } else { + return NativeMethodsUnderlying.ISteamUserStats_GetLeaderboardName(instancePtr, hSteamLeaderboard); + } + } + + public static int ISteamUserStats_GetLeaderboardEntryCount(IntPtr instancePtr, SteamLeaderboard_t hSteamLeaderboard) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUserStats_GetLeaderboardEntryCount(instancePtr, hSteamLeaderboard); + } else { + return NativeMethodsUnderlying.ISteamUserStats_GetLeaderboardEntryCount(instancePtr, hSteamLeaderboard); + } + } + + public static ELeaderboardSortMethod ISteamUserStats_GetLeaderboardSortMethod(IntPtr instancePtr, SteamLeaderboard_t hSteamLeaderboard) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUserStats_GetLeaderboardSortMethod(instancePtr, hSteamLeaderboard); + } else { + return NativeMethodsUnderlying.ISteamUserStats_GetLeaderboardSortMethod(instancePtr, hSteamLeaderboard); + } + } + + public static ELeaderboardDisplayType ISteamUserStats_GetLeaderboardDisplayType(IntPtr instancePtr, SteamLeaderboard_t hSteamLeaderboard) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUserStats_GetLeaderboardDisplayType(instancePtr, hSteamLeaderboard); + } else { + return NativeMethodsUnderlying.ISteamUserStats_GetLeaderboardDisplayType(instancePtr, hSteamLeaderboard); + } + } + + public static ulong ISteamUserStats_DownloadLeaderboardEntries(IntPtr instancePtr, SteamLeaderboard_t hSteamLeaderboard, ELeaderboardDataRequest eLeaderboardDataRequest, int nRangeStart, int nRangeEnd) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUserStats_DownloadLeaderboardEntries(instancePtr, hSteamLeaderboard, eLeaderboardDataRequest, nRangeStart, nRangeEnd); + } else { + return NativeMethodsUnderlying.ISteamUserStats_DownloadLeaderboardEntries(instancePtr, hSteamLeaderboard, eLeaderboardDataRequest, nRangeStart, nRangeEnd); + } + } + + public static ulong ISteamUserStats_DownloadLeaderboardEntriesForUsers(IntPtr instancePtr, SteamLeaderboard_t hSteamLeaderboard, [In, Out] CSteamID[] prgUsers, int cUsers) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUserStats_DownloadLeaderboardEntriesForUsers(instancePtr, hSteamLeaderboard, prgUsers, cUsers); + } else { + return NativeMethodsUnderlying.ISteamUserStats_DownloadLeaderboardEntriesForUsers(instancePtr, hSteamLeaderboard, prgUsers, cUsers); + } + } + + public static bool ISteamUserStats_GetDownloadedLeaderboardEntry(IntPtr instancePtr, SteamLeaderboardEntries_t hSteamLeaderboardEntries, int index, out LeaderboardEntry_t pLeaderboardEntry, [In, Out] int[] pDetails, int cDetailsMax) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUserStats_GetDownloadedLeaderboardEntry(instancePtr, hSteamLeaderboardEntries, index, out pLeaderboardEntry, pDetails, cDetailsMax); + } else { + return NativeMethodsUnderlying.ISteamUserStats_GetDownloadedLeaderboardEntry(instancePtr, hSteamLeaderboardEntries, index, out pLeaderboardEntry, pDetails, cDetailsMax); + } + } + + public static ulong ISteamUserStats_UploadLeaderboardScore(IntPtr instancePtr, SteamLeaderboard_t hSteamLeaderboard, ELeaderboardUploadScoreMethod eLeaderboardUploadScoreMethod, int nScore, [In, Out] int[] pScoreDetails, int cScoreDetailsCount) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUserStats_UploadLeaderboardScore(instancePtr, hSteamLeaderboard, eLeaderboardUploadScoreMethod, nScore, pScoreDetails, cScoreDetailsCount); + } else { + return NativeMethodsUnderlying.ISteamUserStats_UploadLeaderboardScore(instancePtr, hSteamLeaderboard, eLeaderboardUploadScoreMethod, nScore, pScoreDetails, cScoreDetailsCount); + } + } + + public static ulong ISteamUserStats_AttachLeaderboardUGC(IntPtr instancePtr, SteamLeaderboard_t hSteamLeaderboard, UGCHandle_t hUGC) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUserStats_AttachLeaderboardUGC(instancePtr, hSteamLeaderboard, hUGC); + } else { + return NativeMethodsUnderlying.ISteamUserStats_AttachLeaderboardUGC(instancePtr, hSteamLeaderboard, hUGC); + } + } + + public static ulong ISteamUserStats_GetNumberOfCurrentPlayers(IntPtr instancePtr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUserStats_GetNumberOfCurrentPlayers(instancePtr); + } else { + return NativeMethodsUnderlying.ISteamUserStats_GetNumberOfCurrentPlayers(instancePtr); + } + } + + public static ulong ISteamUserStats_RequestGlobalAchievementPercentages(IntPtr instancePtr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUserStats_RequestGlobalAchievementPercentages(instancePtr); + } else { + return NativeMethodsUnderlying.ISteamUserStats_RequestGlobalAchievementPercentages(instancePtr); + } + } + + public static int ISteamUserStats_GetMostAchievedAchievementInfo(IntPtr instancePtr, IntPtr pchName, uint unNameBufLen, out float pflPercent, out bool pbAchieved) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUserStats_GetMostAchievedAchievementInfo(instancePtr, pchName, unNameBufLen, out pflPercent, out pbAchieved); + } else { + return NativeMethodsUnderlying.ISteamUserStats_GetMostAchievedAchievementInfo(instancePtr, pchName, unNameBufLen, out pflPercent, out pbAchieved); + } + } + + public static int ISteamUserStats_GetNextMostAchievedAchievementInfo(IntPtr instancePtr, int iIteratorPrevious, IntPtr pchName, uint unNameBufLen, out float pflPercent, out bool pbAchieved) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUserStats_GetNextMostAchievedAchievementInfo(instancePtr, iIteratorPrevious, pchName, unNameBufLen, out pflPercent, out pbAchieved); + } else { + return NativeMethodsUnderlying.ISteamUserStats_GetNextMostAchievedAchievementInfo(instancePtr, iIteratorPrevious, pchName, unNameBufLen, out pflPercent, out pbAchieved); + } + } + + public static bool ISteamUserStats_GetAchievementAchievedPercent(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchName, out float pflPercent) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUserStats_GetAchievementAchievedPercent(instancePtr, pchName, out pflPercent); + } else { + return NativeMethodsUnderlying.ISteamUserStats_GetAchievementAchievedPercent(instancePtr, pchName, out pflPercent); + } + } + + public static ulong ISteamUserStats_RequestGlobalStats(IntPtr instancePtr, int nHistoryDays) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUserStats_RequestGlobalStats(instancePtr, nHistoryDays); + } else { + return NativeMethodsUnderlying.ISteamUserStats_RequestGlobalStats(instancePtr, nHistoryDays); + } + } + + public static bool ISteamUserStats_GetGlobalStatInt64(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchStatName, out long pData) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUserStats_GetGlobalStatInt64(instancePtr, pchStatName, out pData); + } else { + return NativeMethodsUnderlying.ISteamUserStats_GetGlobalStatInt64(instancePtr, pchStatName, out pData); + } + } + + public static bool ISteamUserStats_GetGlobalStatDouble(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchStatName, out double pData) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUserStats_GetGlobalStatDouble(instancePtr, pchStatName, out pData); + } else { + return NativeMethodsUnderlying.ISteamUserStats_GetGlobalStatDouble(instancePtr, pchStatName, out pData); + } + } + + public static int ISteamUserStats_GetGlobalStatHistoryInt64(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchStatName, [In, Out] long[] pData, uint cubData) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUserStats_GetGlobalStatHistoryInt64(instancePtr, pchStatName, pData, cubData); + } else { + return NativeMethodsUnderlying.ISteamUserStats_GetGlobalStatHistoryInt64(instancePtr, pchStatName, pData, cubData); + } + } + + public static int ISteamUserStats_GetGlobalStatHistoryDouble(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchStatName, [In, Out] double[] pData, uint cubData) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUserStats_GetGlobalStatHistoryDouble(instancePtr, pchStatName, pData, cubData); + } else { + return NativeMethodsUnderlying.ISteamUserStats_GetGlobalStatHistoryDouble(instancePtr, pchStatName, pData, cubData); + } + } + + public static bool ISteamUserStats_GetAchievementProgressLimitsInt32(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchName, out int pnMinProgress, out int pnMaxProgress) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUserStats_GetAchievementProgressLimitsInt32(instancePtr, pchName, out pnMinProgress, out pnMaxProgress); + } else { + return NativeMethodsUnderlying.ISteamUserStats_GetAchievementProgressLimitsInt32(instancePtr, pchName, out pnMinProgress, out pnMaxProgress); + } + } + + public static bool ISteamUserStats_GetAchievementProgressLimitsFloat(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchName, out float pfMinProgress, out float pfMaxProgress) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUserStats_GetAchievementProgressLimitsFloat(instancePtr, pchName, out pfMinProgress, out pfMaxProgress); + } else { + return NativeMethodsUnderlying.ISteamUserStats_GetAchievementProgressLimitsFloat(instancePtr, pchName, out pfMinProgress, out pfMaxProgress); + } + } + + public static uint ISteamUtils_GetSecondsSinceAppActive(IntPtr instancePtr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUtils_GetSecondsSinceAppActive(instancePtr); + } else { + return NativeMethodsUnderlying.ISteamUtils_GetSecondsSinceAppActive(instancePtr); + } + } + + public static uint ISteamUtils_GetSecondsSinceComputerActive(IntPtr instancePtr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUtils_GetSecondsSinceComputerActive(instancePtr); + } else { + return NativeMethodsUnderlying.ISteamUtils_GetSecondsSinceComputerActive(instancePtr); + } + } + + public static EUniverse ISteamUtils_GetConnectedUniverse(IntPtr instancePtr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUtils_GetConnectedUniverse(instancePtr); + } else { + return NativeMethodsUnderlying.ISteamUtils_GetConnectedUniverse(instancePtr); + } + } + + public static uint ISteamUtils_GetServerRealTime(IntPtr instancePtr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUtils_GetServerRealTime(instancePtr); + } else { + return NativeMethodsUnderlying.ISteamUtils_GetServerRealTime(instancePtr); + } + } + + public static IntPtr ISteamUtils_GetIPCountry(IntPtr instancePtr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUtils_GetIPCountry(instancePtr); + } else { + return NativeMethodsUnderlying.ISteamUtils_GetIPCountry(instancePtr); + } + } + + public static bool ISteamUtils_GetImageSize(IntPtr instancePtr, int iImage, out uint pnWidth, out uint pnHeight) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUtils_GetImageSize(instancePtr, iImage, out pnWidth, out pnHeight); + } else { + return NativeMethodsUnderlying.ISteamUtils_GetImageSize(instancePtr, iImage, out pnWidth, out pnHeight); + } + } + + public static bool ISteamUtils_GetImageRGBA(IntPtr instancePtr, int iImage, byte[] pubDest, int nDestBufferSize) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUtils_GetImageRGBA(instancePtr, iImage, pubDest, nDestBufferSize); + } else { + return NativeMethodsUnderlying.ISteamUtils_GetImageRGBA(instancePtr, iImage, pubDest, nDestBufferSize); + } + } + + public static byte ISteamUtils_GetCurrentBatteryPower(IntPtr instancePtr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUtils_GetCurrentBatteryPower(instancePtr); + } else { + return NativeMethodsUnderlying.ISteamUtils_GetCurrentBatteryPower(instancePtr); + } + } + + public static uint ISteamUtils_GetAppID(IntPtr instancePtr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUtils_GetAppID(instancePtr); + } else { + return NativeMethodsUnderlying.ISteamUtils_GetAppID(instancePtr); + } + } + + public static void ISteamUtils_SetOverlayNotificationPosition(IntPtr instancePtr, ENotificationPosition eNotificationPosition) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamUtils_SetOverlayNotificationPosition(instancePtr, eNotificationPosition); + } else { + NativeMethodsUnderlying.ISteamUtils_SetOverlayNotificationPosition(instancePtr, eNotificationPosition); + } + } + + public static bool ISteamUtils_IsAPICallCompleted(IntPtr instancePtr, SteamAPICall_t hSteamAPICall, out bool pbFailed) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUtils_IsAPICallCompleted(instancePtr, hSteamAPICall, out pbFailed); + } else { + return NativeMethodsUnderlying.ISteamUtils_IsAPICallCompleted(instancePtr, hSteamAPICall, out pbFailed); + } + } + + public static ESteamAPICallFailure ISteamUtils_GetAPICallFailureReason(IntPtr instancePtr, SteamAPICall_t hSteamAPICall) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUtils_GetAPICallFailureReason(instancePtr, hSteamAPICall); + } else { + return NativeMethodsUnderlying.ISteamUtils_GetAPICallFailureReason(instancePtr, hSteamAPICall); + } + } + + public static bool ISteamUtils_GetAPICallResult(IntPtr instancePtr, SteamAPICall_t hSteamAPICall, IntPtr pCallback, int cubCallback, int iCallbackExpected, out bool pbFailed) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUtils_GetAPICallResult(instancePtr, hSteamAPICall, pCallback, cubCallback, iCallbackExpected, out pbFailed); + } else { + return NativeMethodsUnderlying.ISteamUtils_GetAPICallResult(instancePtr, hSteamAPICall, pCallback, cubCallback, iCallbackExpected, out pbFailed); + } + } + + public static uint ISteamUtils_GetIPCCallCount(IntPtr instancePtr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUtils_GetIPCCallCount(instancePtr); + } else { + return NativeMethodsUnderlying.ISteamUtils_GetIPCCallCount(instancePtr); + } + } + + public static void ISteamUtils_SetWarningMessageHook(IntPtr instancePtr, SteamAPIWarningMessageHook_t pFunction) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamUtils_SetWarningMessageHook(instancePtr, pFunction); + } else { + NativeMethodsUnderlying.ISteamUtils_SetWarningMessageHook(instancePtr, pFunction); + } + } + + public static bool ISteamUtils_IsOverlayEnabled(IntPtr instancePtr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUtils_IsOverlayEnabled(instancePtr); + } else { + return NativeMethodsUnderlying.ISteamUtils_IsOverlayEnabled(instancePtr); + } + } + + public static bool ISteamUtils_BOverlayNeedsPresent(IntPtr instancePtr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUtils_BOverlayNeedsPresent(instancePtr); + } else { + return NativeMethodsUnderlying.ISteamUtils_BOverlayNeedsPresent(instancePtr); + } + } + + public static ulong ISteamUtils_CheckFileSignature(IntPtr instancePtr, InteropHelp.UTF8StringHandle szFileName) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUtils_CheckFileSignature(instancePtr, szFileName); + } else { + return NativeMethodsUnderlying.ISteamUtils_CheckFileSignature(instancePtr, szFileName); + } + } + + public static bool ISteamUtils_ShowGamepadTextInput(IntPtr instancePtr, EGamepadTextInputMode eInputMode, EGamepadTextInputLineMode eLineInputMode, InteropHelp.UTF8StringHandle pchDescription, uint unCharMax, InteropHelp.UTF8StringHandle pchExistingText) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUtils_ShowGamepadTextInput(instancePtr, eInputMode, eLineInputMode, pchDescription, unCharMax, pchExistingText); + } else { + return NativeMethodsUnderlying.ISteamUtils_ShowGamepadTextInput(instancePtr, eInputMode, eLineInputMode, pchDescription, unCharMax, pchExistingText); + } + } + + public static uint ISteamUtils_GetEnteredGamepadTextLength(IntPtr instancePtr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUtils_GetEnteredGamepadTextLength(instancePtr); + } else { + return NativeMethodsUnderlying.ISteamUtils_GetEnteredGamepadTextLength(instancePtr); + } + } + + public static bool ISteamUtils_GetEnteredGamepadTextInput(IntPtr instancePtr, IntPtr pchText, uint cchText) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUtils_GetEnteredGamepadTextInput(instancePtr, pchText, cchText); + } else { + return NativeMethodsUnderlying.ISteamUtils_GetEnteredGamepadTextInput(instancePtr, pchText, cchText); + } + } + + public static IntPtr ISteamUtils_GetSteamUILanguage(IntPtr instancePtr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUtils_GetSteamUILanguage(instancePtr); + } else { + return NativeMethodsUnderlying.ISteamUtils_GetSteamUILanguage(instancePtr); + } + } + + public static bool ISteamUtils_IsSteamRunningInVR(IntPtr instancePtr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUtils_IsSteamRunningInVR(instancePtr); + } else { + return NativeMethodsUnderlying.ISteamUtils_IsSteamRunningInVR(instancePtr); + } + } + + public static void ISteamUtils_SetOverlayNotificationInset(IntPtr instancePtr, int nHorizontalInset, int nVerticalInset) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamUtils_SetOverlayNotificationInset(instancePtr, nHorizontalInset, nVerticalInset); + } else { + NativeMethodsUnderlying.ISteamUtils_SetOverlayNotificationInset(instancePtr, nHorizontalInset, nVerticalInset); + } + } + + public static bool ISteamUtils_IsSteamInBigPictureMode(IntPtr instancePtr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUtils_IsSteamInBigPictureMode(instancePtr); + } else { + return NativeMethodsUnderlying.ISteamUtils_IsSteamInBigPictureMode(instancePtr); + } + } + + public static void ISteamUtils_StartVRDashboard(IntPtr instancePtr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamUtils_StartVRDashboard(instancePtr); + } else { + NativeMethodsUnderlying.ISteamUtils_StartVRDashboard(instancePtr); + } + } + + public static bool ISteamUtils_IsVRHeadsetStreamingEnabled(IntPtr instancePtr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUtils_IsVRHeadsetStreamingEnabled(instancePtr); + } else { + return NativeMethodsUnderlying.ISteamUtils_IsVRHeadsetStreamingEnabled(instancePtr); + } + } + + public static void ISteamUtils_SetVRHeadsetStreamingEnabled(IntPtr instancePtr, [MarshalAs(UnmanagedType.I1)] bool bEnabled) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamUtils_SetVRHeadsetStreamingEnabled(instancePtr, bEnabled); + } else { + NativeMethodsUnderlying.ISteamUtils_SetVRHeadsetStreamingEnabled(instancePtr, bEnabled); + } + } + + public static bool ISteamUtils_IsSteamChinaLauncher(IntPtr instancePtr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUtils_IsSteamChinaLauncher(instancePtr); + } else { + return NativeMethodsUnderlying.ISteamUtils_IsSteamChinaLauncher(instancePtr); + } + } + + public static bool ISteamUtils_InitFilterText(IntPtr instancePtr, uint unFilterOptions) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUtils_InitFilterText(instancePtr, unFilterOptions); + } else { + return NativeMethodsUnderlying.ISteamUtils_InitFilterText(instancePtr, unFilterOptions); + } + } + + public static int ISteamUtils_FilterText(IntPtr instancePtr, ETextFilteringContext eContext, CSteamID sourceSteamID, InteropHelp.UTF8StringHandle pchInputMessage, IntPtr pchOutFilteredText, uint nByteSizeOutFilteredText) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUtils_FilterText(instancePtr, eContext, sourceSteamID, pchInputMessage, pchOutFilteredText, nByteSizeOutFilteredText); + } else { + return NativeMethodsUnderlying.ISteamUtils_FilterText(instancePtr, eContext, sourceSteamID, pchInputMessage, pchOutFilteredText, nByteSizeOutFilteredText); + } + } + + public static ESteamIPv6ConnectivityState ISteamUtils_GetIPv6ConnectivityState(IntPtr instancePtr, ESteamIPv6ConnectivityProtocol eProtocol) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUtils_GetIPv6ConnectivityState(instancePtr, eProtocol); + } else { + return NativeMethodsUnderlying.ISteamUtils_GetIPv6ConnectivityState(instancePtr, eProtocol); + } + } + + public static bool ISteamUtils_IsSteamRunningOnSteamDeck(IntPtr instancePtr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUtils_IsSteamRunningOnSteamDeck(instancePtr); + } else { + return NativeMethodsUnderlying.ISteamUtils_IsSteamRunningOnSteamDeck(instancePtr); + } + } + + public static bool ISteamUtils_ShowFloatingGamepadTextInput(IntPtr instancePtr, EFloatingGamepadTextInputMode eKeyboardMode, int nTextFieldXPosition, int nTextFieldYPosition, int nTextFieldWidth, int nTextFieldHeight) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUtils_ShowFloatingGamepadTextInput(instancePtr, eKeyboardMode, nTextFieldXPosition, nTextFieldYPosition, nTextFieldWidth, nTextFieldHeight); + } else { + return NativeMethodsUnderlying.ISteamUtils_ShowFloatingGamepadTextInput(instancePtr, eKeyboardMode, nTextFieldXPosition, nTextFieldYPosition, nTextFieldWidth, nTextFieldHeight); + } + } + + public static void ISteamUtils_SetGameLauncherMode(IntPtr instancePtr, [MarshalAs(UnmanagedType.I1)] bool bLauncherMode) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamUtils_SetGameLauncherMode(instancePtr, bLauncherMode); + } else { + NativeMethodsUnderlying.ISteamUtils_SetGameLauncherMode(instancePtr, bLauncherMode); + } + } + + public static bool ISteamUtils_DismissFloatingGamepadTextInput(IntPtr instancePtr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUtils_DismissFloatingGamepadTextInput(instancePtr); + } else { + return NativeMethodsUnderlying.ISteamUtils_DismissFloatingGamepadTextInput(instancePtr); + } + } + + public static bool ISteamUtils_DismissGamepadTextInput(IntPtr instancePtr) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamUtils_DismissGamepadTextInput(instancePtr); + } else { + return NativeMethodsUnderlying.ISteamUtils_DismissGamepadTextInput(instancePtr); + } + } + + public static void ISteamVideo_GetVideoURL(IntPtr instancePtr, AppId_t unVideoAppID) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamVideo_GetVideoURL(instancePtr, unVideoAppID); + } else { + NativeMethodsUnderlying.ISteamVideo_GetVideoURL(instancePtr, unVideoAppID); + } + } + + public static bool ISteamVideo_IsBroadcasting(IntPtr instancePtr, out int pnNumViewers) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamVideo_IsBroadcasting(instancePtr, out pnNumViewers); + } else { + return NativeMethodsUnderlying.ISteamVideo_IsBroadcasting(instancePtr, out pnNumViewers); + } + } + + public static void ISteamVideo_GetOPFSettings(IntPtr instancePtr, AppId_t unVideoAppID) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + NativeMethodsUnderlyingWin64.ISteamVideo_GetOPFSettings(instancePtr, unVideoAppID); + } else { + NativeMethodsUnderlying.ISteamVideo_GetOPFSettings(instancePtr, unVideoAppID); + } + } + + public static bool ISteamVideo_GetOPFStringForApp(IntPtr instancePtr, AppId_t unVideoAppID, IntPtr pchBuffer, ref int pnBufferSize) { + if (Environment.Is64BitProcess && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + return NativeMethodsUnderlyingWin64.ISteamVideo_GetOPFStringForApp(instancePtr, unVideoAppID, pchBuffer, ref pnBufferSize); + } else { + return NativeMethodsUnderlying.ISteamVideo_GetOPFStringForApp(instancePtr, unVideoAppID, pchBuffer, ref pnBufferSize); + } + } + + } +} + +#endif // !DISABLESTEAMWORKS diff --git a/Standalone/AnyCPU/autogen/NativeMethodsUnderlying.cs b/Standalone/AnyCPU/autogen/NativeMethodsUnderlying.cs new file mode 100644 index 00000000..f99db180 --- /dev/null +++ b/Standalone/AnyCPU/autogen/NativeMethodsUnderlying.cs @@ -0,0 +1,4283 @@ +// This file is provided under The MIT License as part of Steamworks.NET. +// Copyright (c) 2013-2025 Riley Labrecque +// Please see the included LICENSE.txt for additional information. + +// This file is automatically generated. +// Changes to this file will be reverted when you update Steamworks.NET + +#if STEAMWORKS_STANDALONE_ANYCPU + +using System.Runtime.InteropServices; +using IntPtr = System.IntPtr; + +#pragma warning disable IDE0130 +namespace Steamworks { +#pragma warning restore + [System.Security.SuppressUnmanagedCodeSecurity()] + /// Imported native functions of steam binary, for most platforms + internal static class NativeMethodsUnderlying { + internal const string NativeLibraryName = "steam_api"; + internal const string NativeLibrary_SDKEncryptedAppTicket = "sdkencryptedappticket"; + + // !!!! Changes made to steamapi free functions should also sync with other nativemethods*.txt too. !!!! +#region steam_api.h + [DllImport(NativeLibraryName, EntryPoint = "SteamInternal_SteamAPI_Init", CallingConvention = CallingConvention.Cdecl)] + public static extern ESteamAPIInitResult SteamInternal_SteamAPI_Init(InteropHelp.UTF8StringHandle pszInternalCheckInterfaceVersions, IntPtr pOutErrMsg); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_Shutdown", CallingConvention = CallingConvention.Cdecl)] + public static extern void SteamAPI_Shutdown(); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_RestartAppIfNecessary", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + public static extern bool SteamAPI_RestartAppIfNecessary(AppId_t unOwnAppID); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ReleaseCurrentThreadMemory", CallingConvention = CallingConvention.Cdecl)] + public static extern void SteamAPI_ReleaseCurrentThreadMemory(); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_WriteMiniDump", CallingConvention = CallingConvention.Cdecl)] + public static extern void SteamAPI_WriteMiniDump(uint uStructuredExceptionCode, IntPtr pvExceptionInfo, uint uBuildID); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SetMiniDumpComment", CallingConvention = CallingConvention.Cdecl)] + public static extern void SteamAPI_SetMiniDumpComment(InteropHelp.UTF8StringHandle pchMsg); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_RunCallbacks", CallingConvention = CallingConvention.Cdecl)] + public static extern void SteamAPI_RunCallbacks(); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_RegisterCallback", CallingConvention = CallingConvention.Cdecl)] + public static extern void SteamAPI_RegisterCallback(IntPtr pCallback, int iCallback); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_UnregisterCallback", CallingConvention = CallingConvention.Cdecl)] + public static extern void SteamAPI_UnregisterCallback(IntPtr pCallback); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_RegisterCallResult", CallingConvention = CallingConvention.Cdecl)] + public static extern void SteamAPI_RegisterCallResult(IntPtr pCallback, ulong hAPICall); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_UnregisterCallResult", CallingConvention = CallingConvention.Cdecl)] + public static extern void SteamAPI_UnregisterCallResult(IntPtr pCallback, ulong hAPICall); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_IsSteamRunning", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + public static extern bool SteamAPI_IsSteamRunning(); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_GetSteamInstallPath", CallingConvention = CallingConvention.Cdecl)] + public static extern int SteamAPI_GetSteamInstallPath(); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_GetHSteamPipe", CallingConvention = CallingConvention.Cdecl)] + public static extern int SteamAPI_GetHSteamPipe(); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SetTryCatchCallbacks", CallingConvention = CallingConvention.Cdecl)] + public static extern void SteamAPI_SetTryCatchCallbacks([MarshalAs(UnmanagedType.I1)] bool bTryCatchCallbacks); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_GetHSteamUser", CallingConvention = CallingConvention.Cdecl)] + public static extern int SteamAPI_GetHSteamUser(); + + [DllImport(NativeLibraryName, EntryPoint = "SteamInternal_ContextInit", CallingConvention = CallingConvention.Cdecl)] + public static extern IntPtr SteamInternal_ContextInit(IntPtr pContextInitData); + + [DllImport(NativeLibraryName, EntryPoint = "SteamInternal_CreateInterface", CallingConvention = CallingConvention.Cdecl)] + public static extern IntPtr SteamInternal_CreateInterface(InteropHelp.UTF8StringHandle ver); + + [DllImport(NativeLibraryName, EntryPoint = "SteamInternal_FindOrCreateUserInterface", CallingConvention = CallingConvention.Cdecl)] + public static extern IntPtr SteamInternal_FindOrCreateUserInterface(HSteamUser hSteamUser, InteropHelp.UTF8StringHandle pszVersion); + + [DllImport(NativeLibraryName, EntryPoint = "SteamInternal_FindOrCreateGameServerInterface", CallingConvention = CallingConvention.Cdecl)] + public static extern IntPtr SteamInternal_FindOrCreateGameServerInterface(HSteamUser hSteamUser, InteropHelp.UTF8StringHandle pszVersion); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_UseBreakpadCrashHandler", CallingConvention = CallingConvention.Cdecl)] + public static extern void SteamAPI_UseBreakpadCrashHandler(InteropHelp.UTF8StringHandle pchVersion, InteropHelp.UTF8StringHandle pchDate, InteropHelp.UTF8StringHandle pchTime, [MarshalAs(UnmanagedType.I1)] bool bFullMemoryDumps, IntPtr pvContext, IntPtr m_pfnPreMinidumpCallback); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SetBreakpadAppID", CallingConvention = CallingConvention.Cdecl)] + public static extern void SteamAPI_SetBreakpadAppID(uint unAppID); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ManualDispatch_Init", CallingConvention = CallingConvention.Cdecl)] + public static extern void SteamAPI_ManualDispatch_Init(); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ManualDispatch_RunFrame", CallingConvention = CallingConvention.Cdecl)] + public static extern void SteamAPI_ManualDispatch_RunFrame(HSteamPipe hSteamPipe); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ManualDispatch_GetNextCallback", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + public static extern bool SteamAPI_ManualDispatch_GetNextCallback(HSteamPipe hSteamPipe, IntPtr pCallbackMsg); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ManualDispatch_FreeLastCallback", CallingConvention = CallingConvention.Cdecl)] + public static extern void SteamAPI_ManualDispatch_FreeLastCallback(HSteamPipe hSteamPipe); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ManualDispatch_GetAPICallResult", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + public static extern bool SteamAPI_ManualDispatch_GetAPICallResult(HSteamPipe hSteamPipe, SteamAPICall_t hSteamAPICall, IntPtr pCallback, int cubCallback, int iCallbackExpected, out bool pbFailed); +#endregion +#region steam_gameserver.h + [DllImport(NativeLibraryName, EntryPoint = "SteamGameServer_Shutdown", CallingConvention = CallingConvention.Cdecl)] + public static extern void SteamGameServer_Shutdown(); + + [DllImport(NativeLibraryName, EntryPoint = "SteamGameServer_RunCallbacks", CallingConvention = CallingConvention.Cdecl)] + public static extern void SteamGameServer_RunCallbacks(); + + [DllImport(NativeLibraryName, EntryPoint = "SteamGameServer_ReleaseCurrentThreadMemory", CallingConvention = CallingConvention.Cdecl)] + public static extern void SteamGameServer_ReleaseCurrentThreadMemory(); + + [DllImport(NativeLibraryName, EntryPoint = "SteamGameServer_BSecure", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + public static extern bool SteamGameServer_BSecure(); + + [DllImport(NativeLibraryName, EntryPoint = "SteamGameServer_GetSteamID", CallingConvention = CallingConvention.Cdecl)] + public static extern ulong SteamGameServer_GetSteamID(); + + [DllImport(NativeLibraryName, EntryPoint = "SteamGameServer_GetHSteamPipe", CallingConvention = CallingConvention.Cdecl)] + public static extern int SteamGameServer_GetHSteamPipe(); + + [DllImport(NativeLibraryName, EntryPoint = "SteamGameServer_GetHSteamUser", CallingConvention = CallingConvention.Cdecl)] + public static extern int SteamGameServer_GetHSteamUser(); + + [DllImport(NativeLibraryName, EntryPoint = "SteamInternal_GameServer_Init_V2", CallingConvention = CallingConvention.Cdecl)] + public static extern ESteamAPIInitResult SteamInternal_GameServer_Init_V2(uint unIP, ushort usGamePort, ushort usQueryPort, EServerMode eServerMode, InteropHelp.UTF8StringHandle pchVersionString, InteropHelp.UTF8StringHandle pszInternalCheckInterfaceVersions, IntPtr pOutErrMsg); +#endregion +#region SteamAPI Accessors + [DllImport(NativeLibraryName, EntryPoint = "SteamClient", CallingConvention = CallingConvention.Cdecl)] + public static extern IntPtr SteamClient(); + + [DllImport(NativeLibraryName, EntryPoint = "SteamGameServerClient", CallingConvention = CallingConvention.Cdecl)] + public static extern IntPtr SteamGameServerClient(); +#endregion +#region SteamNetworkingIPAddr Accessors + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIPAddr_Clear", CallingConvention = CallingConvention.Cdecl)] + public static extern void SteamAPI_SteamNetworkingIPAddr_Clear(ref SteamNetworkingIPAddr self); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIPAddr_IsIPv6AllZeros", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + public static extern bool SteamAPI_SteamNetworkingIPAddr_IsIPv6AllZeros(ref SteamNetworkingIPAddr self); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIPAddr_SetIPv6", CallingConvention = CallingConvention.Cdecl)] + public static extern void SteamAPI_SteamNetworkingIPAddr_SetIPv6(ref SteamNetworkingIPAddr self, [In, Out] byte[] ipv6, ushort nPort); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIPAddr_SetIPv4", CallingConvention = CallingConvention.Cdecl)] + public static extern void SteamAPI_SteamNetworkingIPAddr_SetIPv4(ref SteamNetworkingIPAddr self, uint nIP, ushort nPort); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIPAddr_IsIPv4", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + public static extern bool SteamAPI_SteamNetworkingIPAddr_IsIPv4(ref SteamNetworkingIPAddr self); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIPAddr_GetIPv4", CallingConvention = CallingConvention.Cdecl)] + public static extern uint SteamAPI_SteamNetworkingIPAddr_GetIPv4(ref SteamNetworkingIPAddr self); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIPAddr_SetIPv6LocalHost", CallingConvention = CallingConvention.Cdecl)] + public static extern void SteamAPI_SteamNetworkingIPAddr_SetIPv6LocalHost(ref SteamNetworkingIPAddr self, ushort nPort); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIPAddr_IsLocalHost", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + public static extern bool SteamAPI_SteamNetworkingIPAddr_IsLocalHost(ref SteamNetworkingIPAddr self); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIPAddr_ToString", CallingConvention = CallingConvention.Cdecl)] + public static extern void SteamAPI_SteamNetworkingIPAddr_ToString(ref SteamNetworkingIPAddr self, IntPtr buf, uint cbBuf, [MarshalAs(UnmanagedType.I1)] bool bWithPort); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIPAddr_ParseString", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + public static extern bool SteamAPI_SteamNetworkingIPAddr_ParseString(ref SteamNetworkingIPAddr self, InteropHelp.UTF8StringHandle pszStr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIPAddr_IsEqualTo", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + public static extern bool SteamAPI_SteamNetworkingIPAddr_IsEqualTo(ref SteamNetworkingIPAddr self, ref SteamNetworkingIPAddr x); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIPAddr_GetFakeIPType", CallingConvention = CallingConvention.Cdecl)] + public static extern ESteamNetworkingFakeIPType SteamAPI_SteamNetworkingIPAddr_GetFakeIPType(ref SteamNetworkingIPAddr self); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIPAddr_IsFakeIP", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + public static extern bool SteamAPI_SteamNetworkingIPAddr_IsFakeIP(ref SteamNetworkingIPAddr self); +#endregion +#region SteamNetworkingIdentity Accessors + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIdentity_Clear", CallingConvention = CallingConvention.Cdecl)] + public static extern void SteamAPI_SteamNetworkingIdentity_Clear(ref SteamNetworkingIdentity self); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIdentity_IsInvalid", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + public static extern bool SteamAPI_SteamNetworkingIdentity_IsInvalid(ref SteamNetworkingIdentity self); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIdentity_SetSteamID", CallingConvention = CallingConvention.Cdecl)] + public static extern void SteamAPI_SteamNetworkingIdentity_SetSteamID(ref SteamNetworkingIdentity self, ulong steamID); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIdentity_GetSteamID", CallingConvention = CallingConvention.Cdecl)] + public static extern ulong SteamAPI_SteamNetworkingIdentity_GetSteamID(ref SteamNetworkingIdentity self); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIdentity_SetSteamID64", CallingConvention = CallingConvention.Cdecl)] + public static extern void SteamAPI_SteamNetworkingIdentity_SetSteamID64(ref SteamNetworkingIdentity self, ulong steamID); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIdentity_GetSteamID64", CallingConvention = CallingConvention.Cdecl)] + public static extern ulong SteamAPI_SteamNetworkingIdentity_GetSteamID64(ref SteamNetworkingIdentity self); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIdentity_SetXboxPairwiseID", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + public static extern bool SteamAPI_SteamNetworkingIdentity_SetXboxPairwiseID(ref SteamNetworkingIdentity self, InteropHelp.UTF8StringHandle pszString); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIdentity_GetXboxPairwiseID", CallingConvention = CallingConvention.Cdecl)] + public static extern IntPtr SteamAPI_SteamNetworkingIdentity_GetXboxPairwiseID(ref SteamNetworkingIdentity self); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIdentity_SetPSNID", CallingConvention = CallingConvention.Cdecl)] + public static extern void SteamAPI_SteamNetworkingIdentity_SetPSNID(ref SteamNetworkingIdentity self, ulong id); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIdentity_GetPSNID", CallingConvention = CallingConvention.Cdecl)] + public static extern ulong SteamAPI_SteamNetworkingIdentity_GetPSNID(ref SteamNetworkingIdentity self); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIdentity_SetIPAddr", CallingConvention = CallingConvention.Cdecl)] + public static extern IntPtr SteamAPI_SteamNetworkingIdentity_SetIPAddr(ref SteamNetworkingIdentity self, ref SteamNetworkingIPAddr addr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIdentity_GetIPAddr", CallingConvention = CallingConvention.Cdecl)] + public static extern IntPtr SteamAPI_SteamNetworkingIdentity_GetIPAddr(ref SteamNetworkingIdentity self); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIdentity_SetIPv4Addr", CallingConvention = CallingConvention.Cdecl)] + public static extern void SteamAPI_SteamNetworkingIdentity_SetIPv4Addr(ref SteamNetworkingIdentity self, uint nIPv4, ushort nPort); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIdentity_GetIPv4", CallingConvention = CallingConvention.Cdecl)] + public static extern uint SteamAPI_SteamNetworkingIdentity_GetIPv4(ref SteamNetworkingIdentity self); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIdentity_GetFakeIPType", CallingConvention = CallingConvention.Cdecl)] + public static extern ESteamNetworkingFakeIPType SteamAPI_SteamNetworkingIdentity_GetFakeIPType(ref SteamNetworkingIdentity self); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIdentity_IsFakeIP", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + public static extern bool SteamAPI_SteamNetworkingIdentity_IsFakeIP(ref SteamNetworkingIdentity self); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIdentity_SetLocalHost", CallingConvention = CallingConvention.Cdecl)] + public static extern void SteamAPI_SteamNetworkingIdentity_SetLocalHost(ref SteamNetworkingIdentity self); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIdentity_IsLocalHost", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + public static extern bool SteamAPI_SteamNetworkingIdentity_IsLocalHost(ref SteamNetworkingIdentity self); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIdentity_SetGenericString", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + public static extern bool SteamAPI_SteamNetworkingIdentity_SetGenericString(ref SteamNetworkingIdentity self, InteropHelp.UTF8StringHandle pszString); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIdentity_GetGenericString", CallingConvention = CallingConvention.Cdecl)] + public static extern IntPtr SteamAPI_SteamNetworkingIdentity_GetGenericString(ref SteamNetworkingIdentity self); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIdentity_SetGenericBytes", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + public static extern bool SteamAPI_SteamNetworkingIdentity_SetGenericBytes(ref SteamNetworkingIdentity self, [In, Out] byte[] data, uint cbLen); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIdentity_GetGenericBytes", CallingConvention = CallingConvention.Cdecl)] + public static extern IntPtr SteamAPI_SteamNetworkingIdentity_GetGenericBytes(ref SteamNetworkingIdentity self, out int cbLen); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIdentity_IsEqualTo", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + public static extern bool SteamAPI_SteamNetworkingIdentity_IsEqualTo(ref SteamNetworkingIdentity self, ref SteamNetworkingIdentity x); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIdentity_ToString", CallingConvention = CallingConvention.Cdecl)] + public static extern void SteamAPI_SteamNetworkingIdentity_ToString(ref SteamNetworkingIdentity self, IntPtr buf, uint cbBuf); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIdentity_ParseString", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + public static extern bool SteamAPI_SteamNetworkingIdentity_ParseString(ref SteamNetworkingIdentity self, InteropHelp.UTF8StringHandle pszStr); +#endregion +#region SteamNetworkingMessage_t Accessors + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingMessage_t_Release", CallingConvention = CallingConvention.Cdecl)] + public static extern void SteamAPI_SteamNetworkingMessage_t_Release(IntPtr self); +#endregion +#region ISteamNetworkingConnectionSignaling Accessors + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingConnectionSignaling_SendSignal", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + public static extern bool SteamAPI_ISteamNetworkingConnectionSignaling_SendSignal(ref ISteamNetworkingConnectionSignaling self, HSteamNetConnection hConn, ref SteamNetConnectionInfo_t info, IntPtr pMsg, int cbMsg); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingConnectionSignaling_Release", CallingConvention = CallingConvention.Cdecl)] + public static extern void SteamAPI_ISteamNetworkingConnectionSignaling_Release(ref ISteamNetworkingConnectionSignaling self); +#endregion +#region ISteamNetworkingSignalingRecvContext Accessors + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingSignalingRecvContext_OnConnectRequest", CallingConvention = CallingConvention.Cdecl)] + public static extern IntPtr SteamAPI_ISteamNetworkingSignalingRecvContext_OnConnectRequest(ref ISteamNetworkingSignalingRecvContext self, HSteamNetConnection hConn, ref SteamNetworkingIdentity identityPeer, int nLocalVirtualPort); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingSignalingRecvContext_SendRejectionSignal", CallingConvention = CallingConvention.Cdecl)] + public static extern void SteamAPI_ISteamNetworkingSignalingRecvContext_SendRejectionSignal(ref ISteamNetworkingSignalingRecvContext self, ref SteamNetworkingIdentity identityPeer, IntPtr pMsg, int cbMsg); +#endregion +#region steamencryptedappticket.h + [DllImport(NativeLibrary_SDKEncryptedAppTicket, CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + public static extern bool SteamEncryptedAppTicket_BDecryptTicket([In, Out] byte[] rgubTicketEncrypted, uint cubTicketEncrypted, [In, Out] byte[] rgubTicketDecrypted, ref uint pcubTicketDecrypted, [MarshalAs(UnmanagedType.LPArray, SizeConst=Constants.k_nSteamEncryptedAppTicketSymmetricKeyLen)] byte[] rgubKey, int cubKey); + + [DllImport(NativeLibrary_SDKEncryptedAppTicket, CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + public static extern bool SteamEncryptedAppTicket_BIsTicketForApp([In, Out] byte[] rgubTicketDecrypted, uint cubTicketDecrypted, AppId_t nAppID); + + [DllImport(NativeLibrary_SDKEncryptedAppTicket, CallingConvention = CallingConvention.Cdecl)] + public static extern uint SteamEncryptedAppTicket_GetTicketIssueTime([In, Out] byte[] rgubTicketDecrypted, uint cubTicketDecrypted); + + [DllImport(NativeLibrary_SDKEncryptedAppTicket, CallingConvention = CallingConvention.Cdecl)] + public static extern void SteamEncryptedAppTicket_GetTicketSteamID([In, Out] byte[] rgubTicketDecrypted, uint cubTicketDecrypted, out CSteamID psteamID); + + [DllImport(NativeLibrary_SDKEncryptedAppTicket, CallingConvention = CallingConvention.Cdecl)] + public static extern uint SteamEncryptedAppTicket_GetTicketAppID([In, Out] byte[] rgubTicketDecrypted, uint cubTicketDecrypted); + + [DllImport(NativeLibrary_SDKEncryptedAppTicket, CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + public static extern bool SteamEncryptedAppTicket_BUserOwnsAppInTicket([In, Out] byte[] rgubTicketDecrypted, uint cubTicketDecrypted, AppId_t nAppID); + + [DllImport(NativeLibrary_SDKEncryptedAppTicket, CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + public static extern bool SteamEncryptedAppTicket_BUserIsVacBanned([In, Out] byte[] rgubTicketDecrypted, uint cubTicketDecrypted); + + [DllImport(NativeLibrary_SDKEncryptedAppTicket, CallingConvention = CallingConvention.Cdecl)] + public static extern IntPtr SteamEncryptedAppTicket_GetUserVariableData([In, Out] byte[] rgubTicketDecrypted, uint cubTicketDecrypted, out uint pcubUserData); + + [DllImport(NativeLibrary_SDKEncryptedAppTicket, CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + public static extern bool SteamEncryptedAppTicket_BIsTicketSigned([In, Out] byte[] rgubTicketDecrypted, uint cubTicketDecrypted, [In, Out] byte[] pubRSAKey, uint cubRSAKey); + + [DllImport(NativeLibrary_SDKEncryptedAppTicket, CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + public static extern bool SteamEncryptedAppTicket_BIsLicenseBorrowed([In, Out] byte[] rgubTicketDecrypted, uint cubTicketDecrypted); + + [DllImport(NativeLibrary_SDKEncryptedAppTicket, CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + public static extern bool SteamEncryptedAppTicket_BIsLicenseTemporary([In, Out] byte[] rgubTicketDecrypted, uint cubTicketDecrypted); +#endregion +#region SteamApps + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamApps_BIsSubscribed", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamApps_BIsSubscribed(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamApps_BIsLowViolence", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamApps_BIsLowViolence(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamApps_BIsCybercafe", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamApps_BIsCybercafe(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamApps_BIsVACBanned", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamApps_BIsVACBanned(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamApps_GetCurrentGameLanguage", CallingConvention = CallingConvention.Cdecl)] + + public static extern IntPtr ISteamApps_GetCurrentGameLanguage(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamApps_GetAvailableGameLanguages", CallingConvention = CallingConvention.Cdecl)] + + public static extern IntPtr ISteamApps_GetAvailableGameLanguages(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamApps_BIsSubscribedApp", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamApps_BIsSubscribedApp(IntPtr instancePtr, AppId_t appID); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamApps_BIsDlcInstalled", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamApps_BIsDlcInstalled(IntPtr instancePtr, AppId_t appID); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamApps_GetEarliestPurchaseUnixTime", CallingConvention = CallingConvention.Cdecl)] + + public static extern uint ISteamApps_GetEarliestPurchaseUnixTime(IntPtr instancePtr, AppId_t nAppID); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamApps_BIsSubscribedFromFreeWeekend", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamApps_BIsSubscribedFromFreeWeekend(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamApps_GetDLCCount", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamApps_GetDLCCount(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamApps_BGetDLCDataByIndex", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamApps_BGetDLCDataByIndex(IntPtr instancePtr, int iDLC, out AppId_t pAppID, out bool pbAvailable, IntPtr pchName, int cchNameBufferSize); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamApps_InstallDLC", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamApps_InstallDLC(IntPtr instancePtr, AppId_t nAppID); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamApps_UninstallDLC", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamApps_UninstallDLC(IntPtr instancePtr, AppId_t nAppID); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamApps_RequestAppProofOfPurchaseKey", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamApps_RequestAppProofOfPurchaseKey(IntPtr instancePtr, AppId_t nAppID); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamApps_GetCurrentBetaName", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamApps_GetCurrentBetaName(IntPtr instancePtr, IntPtr pchName, int cchNameBufferSize); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamApps_MarkContentCorrupt", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamApps_MarkContentCorrupt(IntPtr instancePtr, [MarshalAs(UnmanagedType.I1)] bool bMissingFilesOnly); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamApps_GetInstalledDepots", CallingConvention = CallingConvention.Cdecl)] + + public static extern uint ISteamApps_GetInstalledDepots(IntPtr instancePtr, AppId_t appID, [In, Out] DepotId_t[] pvecDepots, uint cMaxDepots); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamApps_GetAppInstallDir", CallingConvention = CallingConvention.Cdecl)] + + public static extern uint ISteamApps_GetAppInstallDir(IntPtr instancePtr, AppId_t appID, IntPtr pchFolder, uint cchFolderBufferSize); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamApps_BIsAppInstalled", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamApps_BIsAppInstalled(IntPtr instancePtr, AppId_t appID); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamApps_GetAppOwner", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamApps_GetAppOwner(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamApps_GetLaunchQueryParam", CallingConvention = CallingConvention.Cdecl)] + + public static extern IntPtr ISteamApps_GetLaunchQueryParam(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchKey); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamApps_GetDlcDownloadProgress", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamApps_GetDlcDownloadProgress(IntPtr instancePtr, AppId_t nAppID, out ulong punBytesDownloaded, out ulong punBytesTotal); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamApps_GetAppBuildId", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamApps_GetAppBuildId(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamApps_RequestAllProofOfPurchaseKeys", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamApps_RequestAllProofOfPurchaseKeys(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamApps_GetFileDetails", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamApps_GetFileDetails(IntPtr instancePtr, InteropHelp.UTF8StringHandle pszFileName); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamApps_GetLaunchCommandLine", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamApps_GetLaunchCommandLine(IntPtr instancePtr, IntPtr pszCommandLine, int cubCommandLine); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamApps_BIsSubscribedFromFamilySharing", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamApps_BIsSubscribedFromFamilySharing(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamApps_BIsTimedTrial", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamApps_BIsTimedTrial(IntPtr instancePtr, out uint punSecondsAllowed, out uint punSecondsPlayed); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamApps_SetDlcContext", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamApps_SetDlcContext(IntPtr instancePtr, AppId_t nAppID); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamApps_GetNumBetas", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamApps_GetNumBetas(IntPtr instancePtr, out int pnAvailable, out int pnPrivate); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamApps_GetBetaInfo", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamApps_GetBetaInfo(IntPtr instancePtr, int iBetaIndex, out uint punFlags, out uint punBuildID, IntPtr pchBetaName, int cchBetaName, IntPtr pchDescription, int cchDescription); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamApps_SetActiveBeta", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamApps_SetActiveBeta(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchBetaName); + +#endregion +#region SteamClient + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamClient_CreateSteamPipe", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamClient_CreateSteamPipe(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamClient_BReleaseSteamPipe", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamClient_BReleaseSteamPipe(IntPtr instancePtr, HSteamPipe hSteamPipe); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamClient_ConnectToGlobalUser", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamClient_ConnectToGlobalUser(IntPtr instancePtr, HSteamPipe hSteamPipe); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamClient_CreateLocalUser", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamClient_CreateLocalUser(IntPtr instancePtr, out HSteamPipe phSteamPipe, EAccountType eAccountType); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamClient_ReleaseUser", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamClient_ReleaseUser(IntPtr instancePtr, HSteamPipe hSteamPipe, HSteamUser hUser); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamClient_GetISteamUser", CallingConvention = CallingConvention.Cdecl)] + + public static extern IntPtr ISteamClient_GetISteamUser(IntPtr instancePtr, HSteamUser hSteamUser, HSteamPipe hSteamPipe, InteropHelp.UTF8StringHandle pchVersion); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamClient_GetISteamGameServer", CallingConvention = CallingConvention.Cdecl)] + + public static extern IntPtr ISteamClient_GetISteamGameServer(IntPtr instancePtr, HSteamUser hSteamUser, HSteamPipe hSteamPipe, InteropHelp.UTF8StringHandle pchVersion); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamClient_SetLocalIPBinding", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamClient_SetLocalIPBinding(IntPtr instancePtr, ref SteamIPAddress_t unIP, ushort usPort); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamClient_GetISteamFriends", CallingConvention = CallingConvention.Cdecl)] + + public static extern IntPtr ISteamClient_GetISteamFriends(IntPtr instancePtr, HSteamUser hSteamUser, HSteamPipe hSteamPipe, InteropHelp.UTF8StringHandle pchVersion); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamClient_GetISteamUtils", CallingConvention = CallingConvention.Cdecl)] + + public static extern IntPtr ISteamClient_GetISteamUtils(IntPtr instancePtr, HSteamPipe hSteamPipe, InteropHelp.UTF8StringHandle pchVersion); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamClient_GetISteamMatchmaking", CallingConvention = CallingConvention.Cdecl)] + + public static extern IntPtr ISteamClient_GetISteamMatchmaking(IntPtr instancePtr, HSteamUser hSteamUser, HSteamPipe hSteamPipe, InteropHelp.UTF8StringHandle pchVersion); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamClient_GetISteamMatchmakingServers", CallingConvention = CallingConvention.Cdecl)] + + public static extern IntPtr ISteamClient_GetISteamMatchmakingServers(IntPtr instancePtr, HSteamUser hSteamUser, HSteamPipe hSteamPipe, InteropHelp.UTF8StringHandle pchVersion); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamClient_GetISteamGenericInterface", CallingConvention = CallingConvention.Cdecl)] + + public static extern IntPtr ISteamClient_GetISteamGenericInterface(IntPtr instancePtr, HSteamUser hSteamUser, HSteamPipe hSteamPipe, InteropHelp.UTF8StringHandle pchVersion); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamClient_GetISteamUserStats", CallingConvention = CallingConvention.Cdecl)] + + public static extern IntPtr ISteamClient_GetISteamUserStats(IntPtr instancePtr, HSteamUser hSteamUser, HSteamPipe hSteamPipe, InteropHelp.UTF8StringHandle pchVersion); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamClient_GetISteamGameServerStats", CallingConvention = CallingConvention.Cdecl)] + + public static extern IntPtr ISteamClient_GetISteamGameServerStats(IntPtr instancePtr, HSteamUser hSteamuser, HSteamPipe hSteamPipe, InteropHelp.UTF8StringHandle pchVersion); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamClient_GetISteamApps", CallingConvention = CallingConvention.Cdecl)] + + public static extern IntPtr ISteamClient_GetISteamApps(IntPtr instancePtr, HSteamUser hSteamUser, HSteamPipe hSteamPipe, InteropHelp.UTF8StringHandle pchVersion); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamClient_GetISteamNetworking", CallingConvention = CallingConvention.Cdecl)] + + public static extern IntPtr ISteamClient_GetISteamNetworking(IntPtr instancePtr, HSteamUser hSteamUser, HSteamPipe hSteamPipe, InteropHelp.UTF8StringHandle pchVersion); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamClient_GetISteamRemoteStorage", CallingConvention = CallingConvention.Cdecl)] + + public static extern IntPtr ISteamClient_GetISteamRemoteStorage(IntPtr instancePtr, HSteamUser hSteamuser, HSteamPipe hSteamPipe, InteropHelp.UTF8StringHandle pchVersion); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamClient_GetISteamScreenshots", CallingConvention = CallingConvention.Cdecl)] + + public static extern IntPtr ISteamClient_GetISteamScreenshots(IntPtr instancePtr, HSteamUser hSteamuser, HSteamPipe hSteamPipe, InteropHelp.UTF8StringHandle pchVersion); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamClient_GetISteamGameSearch", CallingConvention = CallingConvention.Cdecl)] + + public static extern IntPtr ISteamClient_GetISteamGameSearch(IntPtr instancePtr, HSteamUser hSteamuser, HSteamPipe hSteamPipe, InteropHelp.UTF8StringHandle pchVersion); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamClient_GetIPCCallCount", CallingConvention = CallingConvention.Cdecl)] + + public static extern uint ISteamClient_GetIPCCallCount(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamClient_SetWarningMessageHook", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamClient_SetWarningMessageHook(IntPtr instancePtr, SteamAPIWarningMessageHook_t pFunction); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamClient_BShutdownIfAllPipesClosed", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamClient_BShutdownIfAllPipesClosed(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamClient_GetISteamHTTP", CallingConvention = CallingConvention.Cdecl)] + + public static extern IntPtr ISteamClient_GetISteamHTTP(IntPtr instancePtr, HSteamUser hSteamuser, HSteamPipe hSteamPipe, InteropHelp.UTF8StringHandle pchVersion); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamClient_GetISteamController", CallingConvention = CallingConvention.Cdecl)] + + public static extern IntPtr ISteamClient_GetISteamController(IntPtr instancePtr, HSteamUser hSteamUser, HSteamPipe hSteamPipe, InteropHelp.UTF8StringHandle pchVersion); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamClient_GetISteamUGC", CallingConvention = CallingConvention.Cdecl)] + + public static extern IntPtr ISteamClient_GetISteamUGC(IntPtr instancePtr, HSteamUser hSteamUser, HSteamPipe hSteamPipe, InteropHelp.UTF8StringHandle pchVersion); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamClient_GetISteamMusic", CallingConvention = CallingConvention.Cdecl)] + + public static extern IntPtr ISteamClient_GetISteamMusic(IntPtr instancePtr, HSteamUser hSteamuser, HSteamPipe hSteamPipe, InteropHelp.UTF8StringHandle pchVersion); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamClient_GetISteamMusicRemote", CallingConvention = CallingConvention.Cdecl)] + + public static extern IntPtr ISteamClient_GetISteamMusicRemote(IntPtr instancePtr, HSteamUser hSteamuser, HSteamPipe hSteamPipe, InteropHelp.UTF8StringHandle pchVersion); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamClient_GetISteamHTMLSurface", CallingConvention = CallingConvention.Cdecl)] + + public static extern IntPtr ISteamClient_GetISteamHTMLSurface(IntPtr instancePtr, HSteamUser hSteamuser, HSteamPipe hSteamPipe, InteropHelp.UTF8StringHandle pchVersion); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamClient_GetISteamInventory", CallingConvention = CallingConvention.Cdecl)] + + public static extern IntPtr ISteamClient_GetISteamInventory(IntPtr instancePtr, HSteamUser hSteamuser, HSteamPipe hSteamPipe, InteropHelp.UTF8StringHandle pchVersion); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamClient_GetISteamVideo", CallingConvention = CallingConvention.Cdecl)] + + public static extern IntPtr ISteamClient_GetISteamVideo(IntPtr instancePtr, HSteamUser hSteamuser, HSteamPipe hSteamPipe, InteropHelp.UTF8StringHandle pchVersion); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamClient_GetISteamParentalSettings", CallingConvention = CallingConvention.Cdecl)] + + public static extern IntPtr ISteamClient_GetISteamParentalSettings(IntPtr instancePtr, HSteamUser hSteamuser, HSteamPipe hSteamPipe, InteropHelp.UTF8StringHandle pchVersion); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamClient_GetISteamInput", CallingConvention = CallingConvention.Cdecl)] + + public static extern IntPtr ISteamClient_GetISteamInput(IntPtr instancePtr, HSteamUser hSteamUser, HSteamPipe hSteamPipe, InteropHelp.UTF8StringHandle pchVersion); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamClient_GetISteamParties", CallingConvention = CallingConvention.Cdecl)] + + public static extern IntPtr ISteamClient_GetISteamParties(IntPtr instancePtr, HSteamUser hSteamUser, HSteamPipe hSteamPipe, InteropHelp.UTF8StringHandle pchVersion); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamClient_GetISteamRemotePlay", CallingConvention = CallingConvention.Cdecl)] + + public static extern IntPtr ISteamClient_GetISteamRemotePlay(IntPtr instancePtr, HSteamUser hSteamUser, HSteamPipe hSteamPipe, InteropHelp.UTF8StringHandle pchVersion); + +#endregion +#region SteamFriends + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_GetPersonaName", CallingConvention = CallingConvention.Cdecl)] + + public static extern IntPtr ISteamFriends_GetPersonaName(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_SetPersonaName", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamFriends_SetPersonaName(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchPersonaName); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_GetPersonaState", CallingConvention = CallingConvention.Cdecl)] + + public static extern EPersonaState ISteamFriends_GetPersonaState(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_GetFriendCount", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamFriends_GetFriendCount(IntPtr instancePtr, EFriendFlags iFriendFlags); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_GetFriendByIndex", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamFriends_GetFriendByIndex(IntPtr instancePtr, int iFriend, EFriendFlags iFriendFlags); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_GetFriendRelationship", CallingConvention = CallingConvention.Cdecl)] + + public static extern EFriendRelationship ISteamFriends_GetFriendRelationship(IntPtr instancePtr, CSteamID steamIDFriend); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_GetFriendPersonaState", CallingConvention = CallingConvention.Cdecl)] + + public static extern EPersonaState ISteamFriends_GetFriendPersonaState(IntPtr instancePtr, CSteamID steamIDFriend); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_GetFriendPersonaName", CallingConvention = CallingConvention.Cdecl)] + + public static extern IntPtr ISteamFriends_GetFriendPersonaName(IntPtr instancePtr, CSteamID steamIDFriend); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_GetFriendGamePlayed", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamFriends_GetFriendGamePlayed(IntPtr instancePtr, CSteamID steamIDFriend, out FriendGameInfo_t pFriendGameInfo); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_GetFriendPersonaNameHistory", CallingConvention = CallingConvention.Cdecl)] + + public static extern IntPtr ISteamFriends_GetFriendPersonaNameHistory(IntPtr instancePtr, CSteamID steamIDFriend, int iPersonaName); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_GetFriendSteamLevel", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamFriends_GetFriendSteamLevel(IntPtr instancePtr, CSteamID steamIDFriend); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_GetPlayerNickname", CallingConvention = CallingConvention.Cdecl)] + + public static extern IntPtr ISteamFriends_GetPlayerNickname(IntPtr instancePtr, CSteamID steamIDPlayer); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_GetFriendsGroupCount", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamFriends_GetFriendsGroupCount(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_GetFriendsGroupIDByIndex", CallingConvention = CallingConvention.Cdecl)] + + public static extern short ISteamFriends_GetFriendsGroupIDByIndex(IntPtr instancePtr, int iFG); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_GetFriendsGroupName", CallingConvention = CallingConvention.Cdecl)] + + public static extern IntPtr ISteamFriends_GetFriendsGroupName(IntPtr instancePtr, FriendsGroupID_t friendsGroupID); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_GetFriendsGroupMembersCount", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamFriends_GetFriendsGroupMembersCount(IntPtr instancePtr, FriendsGroupID_t friendsGroupID); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_GetFriendsGroupMembersList", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamFriends_GetFriendsGroupMembersList(IntPtr instancePtr, FriendsGroupID_t friendsGroupID, [In, Out] CSteamID[] pOutSteamIDMembers, int nMembersCount); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_HasFriend", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamFriends_HasFriend(IntPtr instancePtr, CSteamID steamIDFriend, EFriendFlags iFriendFlags); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_GetClanCount", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamFriends_GetClanCount(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_GetClanByIndex", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamFriends_GetClanByIndex(IntPtr instancePtr, int iClan); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_GetClanName", CallingConvention = CallingConvention.Cdecl)] + + public static extern IntPtr ISteamFriends_GetClanName(IntPtr instancePtr, CSteamID steamIDClan); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_GetClanTag", CallingConvention = CallingConvention.Cdecl)] + + public static extern IntPtr ISteamFriends_GetClanTag(IntPtr instancePtr, CSteamID steamIDClan); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_GetClanActivityCounts", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamFriends_GetClanActivityCounts(IntPtr instancePtr, CSteamID steamIDClan, out int pnOnline, out int pnInGame, out int pnChatting); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_DownloadClanActivityCounts", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamFriends_DownloadClanActivityCounts(IntPtr instancePtr, [In, Out] CSteamID[] psteamIDClans, int cClansToRequest); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_GetFriendCountFromSource", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamFriends_GetFriendCountFromSource(IntPtr instancePtr, CSteamID steamIDSource); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_GetFriendFromSourceByIndex", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamFriends_GetFriendFromSourceByIndex(IntPtr instancePtr, CSteamID steamIDSource, int iFriend); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_IsUserInSource", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamFriends_IsUserInSource(IntPtr instancePtr, CSteamID steamIDUser, CSteamID steamIDSource); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_SetInGameVoiceSpeaking", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamFriends_SetInGameVoiceSpeaking(IntPtr instancePtr, CSteamID steamIDUser, [MarshalAs(UnmanagedType.I1)] bool bSpeaking); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_ActivateGameOverlay", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamFriends_ActivateGameOverlay(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchDialog); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_ActivateGameOverlayToUser", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamFriends_ActivateGameOverlayToUser(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchDialog, CSteamID steamID); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_ActivateGameOverlayToWebPage", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamFriends_ActivateGameOverlayToWebPage(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchURL, EActivateGameOverlayToWebPageMode eMode); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_ActivateGameOverlayToStore", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamFriends_ActivateGameOverlayToStore(IntPtr instancePtr, AppId_t nAppID, EOverlayToStoreFlag eFlag); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_SetPlayedWith", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamFriends_SetPlayedWith(IntPtr instancePtr, CSteamID steamIDUserPlayedWith); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_ActivateGameOverlayInviteDialog", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamFriends_ActivateGameOverlayInviteDialog(IntPtr instancePtr, CSteamID steamIDLobby); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_GetSmallFriendAvatar", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamFriends_GetSmallFriendAvatar(IntPtr instancePtr, CSteamID steamIDFriend); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_GetMediumFriendAvatar", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamFriends_GetMediumFriendAvatar(IntPtr instancePtr, CSteamID steamIDFriend); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_GetLargeFriendAvatar", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamFriends_GetLargeFriendAvatar(IntPtr instancePtr, CSteamID steamIDFriend); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_RequestUserInformation", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamFriends_RequestUserInformation(IntPtr instancePtr, CSteamID steamIDUser, [MarshalAs(UnmanagedType.I1)] bool bRequireNameOnly); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_RequestClanOfficerList", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamFriends_RequestClanOfficerList(IntPtr instancePtr, CSteamID steamIDClan); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_GetClanOwner", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamFriends_GetClanOwner(IntPtr instancePtr, CSteamID steamIDClan); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_GetClanOfficerCount", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamFriends_GetClanOfficerCount(IntPtr instancePtr, CSteamID steamIDClan); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_GetClanOfficerByIndex", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamFriends_GetClanOfficerByIndex(IntPtr instancePtr, CSteamID steamIDClan, int iOfficer); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_GetUserRestrictions", CallingConvention = CallingConvention.Cdecl)] + + public static extern uint ISteamFriends_GetUserRestrictions(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_SetRichPresence", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamFriends_SetRichPresence(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchKey, InteropHelp.UTF8StringHandle pchValue); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_ClearRichPresence", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamFriends_ClearRichPresence(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_GetFriendRichPresence", CallingConvention = CallingConvention.Cdecl)] + + public static extern IntPtr ISteamFriends_GetFriendRichPresence(IntPtr instancePtr, CSteamID steamIDFriend, InteropHelp.UTF8StringHandle pchKey); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_GetFriendRichPresenceKeyCount", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamFriends_GetFriendRichPresenceKeyCount(IntPtr instancePtr, CSteamID steamIDFriend); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_GetFriendRichPresenceKeyByIndex", CallingConvention = CallingConvention.Cdecl)] + + public static extern IntPtr ISteamFriends_GetFriendRichPresenceKeyByIndex(IntPtr instancePtr, CSteamID steamIDFriend, int iKey); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_RequestFriendRichPresence", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamFriends_RequestFriendRichPresence(IntPtr instancePtr, CSteamID steamIDFriend); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_InviteUserToGame", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamFriends_InviteUserToGame(IntPtr instancePtr, CSteamID steamIDFriend, InteropHelp.UTF8StringHandle pchConnectString); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_GetCoplayFriendCount", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamFriends_GetCoplayFriendCount(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_GetCoplayFriend", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamFriends_GetCoplayFriend(IntPtr instancePtr, int iCoplayFriend); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_GetFriendCoplayTime", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamFriends_GetFriendCoplayTime(IntPtr instancePtr, CSteamID steamIDFriend); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_GetFriendCoplayGame", CallingConvention = CallingConvention.Cdecl)] + + public static extern uint ISteamFriends_GetFriendCoplayGame(IntPtr instancePtr, CSteamID steamIDFriend); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_JoinClanChatRoom", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamFriends_JoinClanChatRoom(IntPtr instancePtr, CSteamID steamIDClan); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_LeaveClanChatRoom", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamFriends_LeaveClanChatRoom(IntPtr instancePtr, CSteamID steamIDClan); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_GetClanChatMemberCount", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamFriends_GetClanChatMemberCount(IntPtr instancePtr, CSteamID steamIDClan); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_GetChatMemberByIndex", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamFriends_GetChatMemberByIndex(IntPtr instancePtr, CSteamID steamIDClan, int iUser); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_SendClanChatMessage", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamFriends_SendClanChatMessage(IntPtr instancePtr, CSteamID steamIDClanChat, InteropHelp.UTF8StringHandle pchText); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_GetClanChatMessage", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamFriends_GetClanChatMessage(IntPtr instancePtr, CSteamID steamIDClanChat, int iMessage, IntPtr prgchText, int cchTextMax, out EChatEntryType peChatEntryType, out CSteamID psteamidChatter); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_IsClanChatAdmin", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamFriends_IsClanChatAdmin(IntPtr instancePtr, CSteamID steamIDClanChat, CSteamID steamIDUser); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_IsClanChatWindowOpenInSteam", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamFriends_IsClanChatWindowOpenInSteam(IntPtr instancePtr, CSteamID steamIDClanChat); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_OpenClanChatWindowInSteam", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamFriends_OpenClanChatWindowInSteam(IntPtr instancePtr, CSteamID steamIDClanChat); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_CloseClanChatWindowInSteam", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamFriends_CloseClanChatWindowInSteam(IntPtr instancePtr, CSteamID steamIDClanChat); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_SetListenForFriendsMessages", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamFriends_SetListenForFriendsMessages(IntPtr instancePtr, [MarshalAs(UnmanagedType.I1)] bool bInterceptEnabled); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_ReplyToFriendMessage", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamFriends_ReplyToFriendMessage(IntPtr instancePtr, CSteamID steamIDFriend, InteropHelp.UTF8StringHandle pchMsgToSend); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_GetFriendMessage", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamFriends_GetFriendMessage(IntPtr instancePtr, CSteamID steamIDFriend, int iMessageID, IntPtr pvData, int cubData, out EChatEntryType peChatEntryType); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_GetFollowerCount", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamFriends_GetFollowerCount(IntPtr instancePtr, CSteamID steamID); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_IsFollowing", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamFriends_IsFollowing(IntPtr instancePtr, CSteamID steamID); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_EnumerateFollowingList", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamFriends_EnumerateFollowingList(IntPtr instancePtr, uint unStartIndex); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_IsClanPublic", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamFriends_IsClanPublic(IntPtr instancePtr, CSteamID steamIDClan); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_IsClanOfficialGameGroup", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamFriends_IsClanOfficialGameGroup(IntPtr instancePtr, CSteamID steamIDClan); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_GetNumChatsWithUnreadPriorityMessages", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamFriends_GetNumChatsWithUnreadPriorityMessages(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_ActivateGameOverlayRemotePlayTogetherInviteDialog", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamFriends_ActivateGameOverlayRemotePlayTogetherInviteDialog(IntPtr instancePtr, CSteamID steamIDLobby); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_RegisterProtocolInOverlayBrowser", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamFriends_RegisterProtocolInOverlayBrowser(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchProtocol); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_ActivateGameOverlayInviteDialogConnectString", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamFriends_ActivateGameOverlayInviteDialogConnectString(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchConnectString); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_RequestEquippedProfileItems", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamFriends_RequestEquippedProfileItems(IntPtr instancePtr, CSteamID steamID); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_BHasEquippedProfileItem", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamFriends_BHasEquippedProfileItem(IntPtr instancePtr, CSteamID steamID, ECommunityProfileItemType itemType); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_GetProfileItemPropertyString", CallingConvention = CallingConvention.Cdecl)] + + public static extern IntPtr ISteamFriends_GetProfileItemPropertyString(IntPtr instancePtr, CSteamID steamID, ECommunityProfileItemType itemType, ECommunityProfileItemProperty prop); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_GetProfileItemPropertyUint", CallingConvention = CallingConvention.Cdecl)] + + public static extern uint ISteamFriends_GetProfileItemPropertyUint(IntPtr instancePtr, CSteamID steamID, ECommunityProfileItemType itemType, ECommunityProfileItemProperty prop); + +#endregion +#region SteamGameServer + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamGameServer_SetProduct", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamGameServer_SetProduct(IntPtr instancePtr, InteropHelp.UTF8StringHandle pszProduct); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamGameServer_SetGameDescription", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamGameServer_SetGameDescription(IntPtr instancePtr, InteropHelp.UTF8StringHandle pszGameDescription); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamGameServer_SetModDir", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamGameServer_SetModDir(IntPtr instancePtr, InteropHelp.UTF8StringHandle pszModDir); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamGameServer_SetDedicatedServer", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamGameServer_SetDedicatedServer(IntPtr instancePtr, [MarshalAs(UnmanagedType.I1)] bool bDedicated); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamGameServer_LogOn", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamGameServer_LogOn(IntPtr instancePtr, InteropHelp.UTF8StringHandle pszToken); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamGameServer_LogOnAnonymous", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamGameServer_LogOnAnonymous(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamGameServer_LogOff", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamGameServer_LogOff(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamGameServer_BLoggedOn", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamGameServer_BLoggedOn(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamGameServer_BSecure", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamGameServer_BSecure(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamGameServer_GetSteamID", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamGameServer_GetSteamID(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamGameServer_WasRestartRequested", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamGameServer_WasRestartRequested(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamGameServer_SetMaxPlayerCount", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamGameServer_SetMaxPlayerCount(IntPtr instancePtr, int cPlayersMax); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamGameServer_SetBotPlayerCount", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamGameServer_SetBotPlayerCount(IntPtr instancePtr, int cBotplayers); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamGameServer_SetServerName", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamGameServer_SetServerName(IntPtr instancePtr, InteropHelp.UTF8StringHandle pszServerName); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamGameServer_SetMapName", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamGameServer_SetMapName(IntPtr instancePtr, InteropHelp.UTF8StringHandle pszMapName); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamGameServer_SetPasswordProtected", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamGameServer_SetPasswordProtected(IntPtr instancePtr, [MarshalAs(UnmanagedType.I1)] bool bPasswordProtected); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamGameServer_SetSpectatorPort", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamGameServer_SetSpectatorPort(IntPtr instancePtr, ushort unSpectatorPort); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamGameServer_SetSpectatorServerName", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamGameServer_SetSpectatorServerName(IntPtr instancePtr, InteropHelp.UTF8StringHandle pszSpectatorServerName); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamGameServer_ClearAllKeyValues", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamGameServer_ClearAllKeyValues(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamGameServer_SetKeyValue", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamGameServer_SetKeyValue(IntPtr instancePtr, InteropHelp.UTF8StringHandle pKey, InteropHelp.UTF8StringHandle pValue); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamGameServer_SetGameTags", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamGameServer_SetGameTags(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchGameTags); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamGameServer_SetGameData", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamGameServer_SetGameData(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchGameData); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamGameServer_SetRegion", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamGameServer_SetRegion(IntPtr instancePtr, InteropHelp.UTF8StringHandle pszRegion); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamGameServer_SetAdvertiseServerActive", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamGameServer_SetAdvertiseServerActive(IntPtr instancePtr, [MarshalAs(UnmanagedType.I1)] bool bActive); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamGameServer_GetAuthSessionTicket", CallingConvention = CallingConvention.Cdecl)] + + public static extern uint ISteamGameServer_GetAuthSessionTicket(IntPtr instancePtr, byte[] pTicket, int cbMaxTicket, out uint pcbTicket, ref SteamNetworkingIdentity pSnid); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamGameServer_BeginAuthSession", CallingConvention = CallingConvention.Cdecl)] + + public static extern EBeginAuthSessionResult ISteamGameServer_BeginAuthSession(IntPtr instancePtr, byte[] pAuthTicket, int cbAuthTicket, CSteamID steamID); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamGameServer_EndAuthSession", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamGameServer_EndAuthSession(IntPtr instancePtr, CSteamID steamID); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamGameServer_CancelAuthTicket", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamGameServer_CancelAuthTicket(IntPtr instancePtr, HAuthTicket hAuthTicket); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamGameServer_UserHasLicenseForApp", CallingConvention = CallingConvention.Cdecl)] + + public static extern EUserHasLicenseForAppResult ISteamGameServer_UserHasLicenseForApp(IntPtr instancePtr, CSteamID steamID, AppId_t appID); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamGameServer_RequestUserGroupStatus", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamGameServer_RequestUserGroupStatus(IntPtr instancePtr, CSteamID steamIDUser, CSteamID steamIDGroup); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamGameServer_GetGameplayStats", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamGameServer_GetGameplayStats(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamGameServer_GetServerReputation", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamGameServer_GetServerReputation(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamGameServer_GetPublicIP", CallingConvention = CallingConvention.Cdecl)] + + public static extern SteamIPAddress_t ISteamGameServer_GetPublicIP(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamGameServer_HandleIncomingPacket", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamGameServer_HandleIncomingPacket(IntPtr instancePtr, byte[] pData, int cbData, uint srcIP, ushort srcPort); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamGameServer_GetNextOutgoingPacket", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamGameServer_GetNextOutgoingPacket(IntPtr instancePtr, byte[] pOut, int cbMaxOut, out uint pNetAdr, out ushort pPort); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamGameServer_AssociateWithClan", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamGameServer_AssociateWithClan(IntPtr instancePtr, CSteamID steamIDClan); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamGameServer_ComputeNewPlayerCompatibility", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamGameServer_ComputeNewPlayerCompatibility(IntPtr instancePtr, CSteamID steamIDNewPlayer); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamGameServer_SendUserConnectAndAuthenticate_DEPRECATED", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamGameServer_SendUserConnectAndAuthenticate_DEPRECATED(IntPtr instancePtr, uint unIPClient, byte[] pvAuthBlob, uint cubAuthBlobSize, out CSteamID pSteamIDUser); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamGameServer_CreateUnauthenticatedUserConnection", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamGameServer_CreateUnauthenticatedUserConnection(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamGameServer_SendUserDisconnect_DEPRECATED", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamGameServer_SendUserDisconnect_DEPRECATED(IntPtr instancePtr, CSteamID steamIDUser); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamGameServer_BUpdateUserData", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamGameServer_BUpdateUserData(IntPtr instancePtr, CSteamID steamIDUser, InteropHelp.UTF8StringHandle pchPlayerName, uint uScore); + +#endregion +#region SteamGameServerStats + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamGameServerStats_RequestUserStats", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamGameServerStats_RequestUserStats(IntPtr instancePtr, CSteamID steamIDUser); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamGameServerStats_GetUserStatInt32", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamGameServerStats_GetUserStatInt32(IntPtr instancePtr, CSteamID steamIDUser, InteropHelp.UTF8StringHandle pchName, out int pData); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamGameServerStats_GetUserStatFloat", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamGameServerStats_GetUserStatFloat(IntPtr instancePtr, CSteamID steamIDUser, InteropHelp.UTF8StringHandle pchName, out float pData); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamGameServerStats_GetUserAchievement", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamGameServerStats_GetUserAchievement(IntPtr instancePtr, CSteamID steamIDUser, InteropHelp.UTF8StringHandle pchName, out bool pbAchieved); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamGameServerStats_SetUserStatInt32", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamGameServerStats_SetUserStatInt32(IntPtr instancePtr, CSteamID steamIDUser, InteropHelp.UTF8StringHandle pchName, int nData); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamGameServerStats_SetUserStatFloat", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamGameServerStats_SetUserStatFloat(IntPtr instancePtr, CSteamID steamIDUser, InteropHelp.UTF8StringHandle pchName, float fData); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamGameServerStats_UpdateUserAvgRateStat", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamGameServerStats_UpdateUserAvgRateStat(IntPtr instancePtr, CSteamID steamIDUser, InteropHelp.UTF8StringHandle pchName, float flCountThisSession, double dSessionLength); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamGameServerStats_SetUserAchievement", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamGameServerStats_SetUserAchievement(IntPtr instancePtr, CSteamID steamIDUser, InteropHelp.UTF8StringHandle pchName); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamGameServerStats_ClearUserAchievement", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamGameServerStats_ClearUserAchievement(IntPtr instancePtr, CSteamID steamIDUser, InteropHelp.UTF8StringHandle pchName); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamGameServerStats_StoreUserStats", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamGameServerStats_StoreUserStats(IntPtr instancePtr, CSteamID steamIDUser); + +#endregion +#region SteamHTMLSurface + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamHTMLSurface_Init", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamHTMLSurface_Init(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamHTMLSurface_Shutdown", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamHTMLSurface_Shutdown(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamHTMLSurface_CreateBrowser", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamHTMLSurface_CreateBrowser(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchUserAgent, InteropHelp.UTF8StringHandle pchUserCSS); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamHTMLSurface_RemoveBrowser", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamHTMLSurface_RemoveBrowser(IntPtr instancePtr, HHTMLBrowser unBrowserHandle); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamHTMLSurface_LoadURL", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamHTMLSurface_LoadURL(IntPtr instancePtr, HHTMLBrowser unBrowserHandle, InteropHelp.UTF8StringHandle pchURL, InteropHelp.UTF8StringHandle pchPostData); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamHTMLSurface_SetSize", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamHTMLSurface_SetSize(IntPtr instancePtr, HHTMLBrowser unBrowserHandle, uint unWidth, uint unHeight); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamHTMLSurface_StopLoad", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamHTMLSurface_StopLoad(IntPtr instancePtr, HHTMLBrowser unBrowserHandle); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamHTMLSurface_Reload", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamHTMLSurface_Reload(IntPtr instancePtr, HHTMLBrowser unBrowserHandle); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamHTMLSurface_GoBack", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamHTMLSurface_GoBack(IntPtr instancePtr, HHTMLBrowser unBrowserHandle); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamHTMLSurface_GoForward", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamHTMLSurface_GoForward(IntPtr instancePtr, HHTMLBrowser unBrowserHandle); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamHTMLSurface_AddHeader", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamHTMLSurface_AddHeader(IntPtr instancePtr, HHTMLBrowser unBrowserHandle, InteropHelp.UTF8StringHandle pchKey, InteropHelp.UTF8StringHandle pchValue); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamHTMLSurface_ExecuteJavascript", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamHTMLSurface_ExecuteJavascript(IntPtr instancePtr, HHTMLBrowser unBrowserHandle, InteropHelp.UTF8StringHandle pchScript); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamHTMLSurface_MouseUp", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamHTMLSurface_MouseUp(IntPtr instancePtr, HHTMLBrowser unBrowserHandle, EHTMLMouseButton eMouseButton); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamHTMLSurface_MouseDown", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamHTMLSurface_MouseDown(IntPtr instancePtr, HHTMLBrowser unBrowserHandle, EHTMLMouseButton eMouseButton); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamHTMLSurface_MouseDoubleClick", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamHTMLSurface_MouseDoubleClick(IntPtr instancePtr, HHTMLBrowser unBrowserHandle, EHTMLMouseButton eMouseButton); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamHTMLSurface_MouseMove", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamHTMLSurface_MouseMove(IntPtr instancePtr, HHTMLBrowser unBrowserHandle, int x, int y); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamHTMLSurface_MouseWheel", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamHTMLSurface_MouseWheel(IntPtr instancePtr, HHTMLBrowser unBrowserHandle, int nDelta); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamHTMLSurface_KeyDown", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamHTMLSurface_KeyDown(IntPtr instancePtr, HHTMLBrowser unBrowserHandle, uint nNativeKeyCode, EHTMLKeyModifiers eHTMLKeyModifiers, [MarshalAs(UnmanagedType.I1)] bool bIsSystemKey); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamHTMLSurface_KeyUp", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamHTMLSurface_KeyUp(IntPtr instancePtr, HHTMLBrowser unBrowserHandle, uint nNativeKeyCode, EHTMLKeyModifiers eHTMLKeyModifiers); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamHTMLSurface_KeyChar", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamHTMLSurface_KeyChar(IntPtr instancePtr, HHTMLBrowser unBrowserHandle, uint cUnicodeChar, EHTMLKeyModifiers eHTMLKeyModifiers); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamHTMLSurface_SetHorizontalScroll", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamHTMLSurface_SetHorizontalScroll(IntPtr instancePtr, HHTMLBrowser unBrowserHandle, uint nAbsolutePixelScroll); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamHTMLSurface_SetVerticalScroll", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamHTMLSurface_SetVerticalScroll(IntPtr instancePtr, HHTMLBrowser unBrowserHandle, uint nAbsolutePixelScroll); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamHTMLSurface_SetKeyFocus", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamHTMLSurface_SetKeyFocus(IntPtr instancePtr, HHTMLBrowser unBrowserHandle, [MarshalAs(UnmanagedType.I1)] bool bHasKeyFocus); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamHTMLSurface_ViewSource", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamHTMLSurface_ViewSource(IntPtr instancePtr, HHTMLBrowser unBrowserHandle); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamHTMLSurface_CopyToClipboard", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamHTMLSurface_CopyToClipboard(IntPtr instancePtr, HHTMLBrowser unBrowserHandle); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamHTMLSurface_PasteFromClipboard", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamHTMLSurface_PasteFromClipboard(IntPtr instancePtr, HHTMLBrowser unBrowserHandle); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamHTMLSurface_Find", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamHTMLSurface_Find(IntPtr instancePtr, HHTMLBrowser unBrowserHandle, InteropHelp.UTF8StringHandle pchSearchStr, [MarshalAs(UnmanagedType.I1)] bool bCurrentlyInFind, [MarshalAs(UnmanagedType.I1)] bool bReverse); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamHTMLSurface_StopFind", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamHTMLSurface_StopFind(IntPtr instancePtr, HHTMLBrowser unBrowserHandle); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamHTMLSurface_GetLinkAtPosition", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamHTMLSurface_GetLinkAtPosition(IntPtr instancePtr, HHTMLBrowser unBrowserHandle, int x, int y); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamHTMLSurface_SetCookie", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamHTMLSurface_SetCookie(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchHostname, InteropHelp.UTF8StringHandle pchKey, InteropHelp.UTF8StringHandle pchValue, InteropHelp.UTF8StringHandle pchPath, uint nExpires, [MarshalAs(UnmanagedType.I1)] bool bSecure, [MarshalAs(UnmanagedType.I1)] bool bHTTPOnly); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamHTMLSurface_SetPageScaleFactor", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamHTMLSurface_SetPageScaleFactor(IntPtr instancePtr, HHTMLBrowser unBrowserHandle, float flZoom, int nPointX, int nPointY); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamHTMLSurface_SetBackgroundMode", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamHTMLSurface_SetBackgroundMode(IntPtr instancePtr, HHTMLBrowser unBrowserHandle, [MarshalAs(UnmanagedType.I1)] bool bBackgroundMode); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamHTMLSurface_SetDPIScalingFactor", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamHTMLSurface_SetDPIScalingFactor(IntPtr instancePtr, HHTMLBrowser unBrowserHandle, float flDPIScaling); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamHTMLSurface_OpenDeveloperTools", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamHTMLSurface_OpenDeveloperTools(IntPtr instancePtr, HHTMLBrowser unBrowserHandle); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamHTMLSurface_AllowStartRequest", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamHTMLSurface_AllowStartRequest(IntPtr instancePtr, HHTMLBrowser unBrowserHandle, [MarshalAs(UnmanagedType.I1)] bool bAllowed); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamHTMLSurface_JSDialogResponse", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamHTMLSurface_JSDialogResponse(IntPtr instancePtr, HHTMLBrowser unBrowserHandle, [MarshalAs(UnmanagedType.I1)] bool bResult); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamHTMLSurface_FileLoadDialogResponse", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamHTMLSurface_FileLoadDialogResponse(IntPtr instancePtr, HHTMLBrowser unBrowserHandle, IntPtr pchSelectedFiles); + +#endregion +#region SteamHTTP + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamHTTP_CreateHTTPRequest", CallingConvention = CallingConvention.Cdecl)] + + public static extern uint ISteamHTTP_CreateHTTPRequest(IntPtr instancePtr, EHTTPMethod eHTTPRequestMethod, InteropHelp.UTF8StringHandle pchAbsoluteURL); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamHTTP_SetHTTPRequestContextValue", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamHTTP_SetHTTPRequestContextValue(IntPtr instancePtr, HTTPRequestHandle hRequest, ulong ulContextValue); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamHTTP_SetHTTPRequestNetworkActivityTimeout", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamHTTP_SetHTTPRequestNetworkActivityTimeout(IntPtr instancePtr, HTTPRequestHandle hRequest, uint unTimeoutSeconds); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamHTTP_SetHTTPRequestHeaderValue", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamHTTP_SetHTTPRequestHeaderValue(IntPtr instancePtr, HTTPRequestHandle hRequest, InteropHelp.UTF8StringHandle pchHeaderName, InteropHelp.UTF8StringHandle pchHeaderValue); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamHTTP_SetHTTPRequestGetOrPostParameter", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamHTTP_SetHTTPRequestGetOrPostParameter(IntPtr instancePtr, HTTPRequestHandle hRequest, InteropHelp.UTF8StringHandle pchParamName, InteropHelp.UTF8StringHandle pchParamValue); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamHTTP_SendHTTPRequest", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamHTTP_SendHTTPRequest(IntPtr instancePtr, HTTPRequestHandle hRequest, out SteamAPICall_t pCallHandle); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamHTTP_SendHTTPRequestAndStreamResponse", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamHTTP_SendHTTPRequestAndStreamResponse(IntPtr instancePtr, HTTPRequestHandle hRequest, out SteamAPICall_t pCallHandle); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamHTTP_DeferHTTPRequest", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamHTTP_DeferHTTPRequest(IntPtr instancePtr, HTTPRequestHandle hRequest); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamHTTP_PrioritizeHTTPRequest", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamHTTP_PrioritizeHTTPRequest(IntPtr instancePtr, HTTPRequestHandle hRequest); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamHTTP_GetHTTPResponseHeaderSize", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamHTTP_GetHTTPResponseHeaderSize(IntPtr instancePtr, HTTPRequestHandle hRequest, InteropHelp.UTF8StringHandle pchHeaderName, out uint unResponseHeaderSize); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamHTTP_GetHTTPResponseHeaderValue", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamHTTP_GetHTTPResponseHeaderValue(IntPtr instancePtr, HTTPRequestHandle hRequest, InteropHelp.UTF8StringHandle pchHeaderName, byte[] pHeaderValueBuffer, uint unBufferSize); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamHTTP_GetHTTPResponseBodySize", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamHTTP_GetHTTPResponseBodySize(IntPtr instancePtr, HTTPRequestHandle hRequest, out uint unBodySize); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamHTTP_GetHTTPResponseBodyData", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamHTTP_GetHTTPResponseBodyData(IntPtr instancePtr, HTTPRequestHandle hRequest, byte[] pBodyDataBuffer, uint unBufferSize); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamHTTP_GetHTTPStreamingResponseBodyData", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamHTTP_GetHTTPStreamingResponseBodyData(IntPtr instancePtr, HTTPRequestHandle hRequest, uint cOffset, byte[] pBodyDataBuffer, uint unBufferSize); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamHTTP_ReleaseHTTPRequest", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamHTTP_ReleaseHTTPRequest(IntPtr instancePtr, HTTPRequestHandle hRequest); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamHTTP_GetHTTPDownloadProgressPct", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamHTTP_GetHTTPDownloadProgressPct(IntPtr instancePtr, HTTPRequestHandle hRequest, out float pflPercentOut); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamHTTP_SetHTTPRequestRawPostBody", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamHTTP_SetHTTPRequestRawPostBody(IntPtr instancePtr, HTTPRequestHandle hRequest, InteropHelp.UTF8StringHandle pchContentType, byte[] pubBody, uint unBodyLen); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamHTTP_CreateCookieContainer", CallingConvention = CallingConvention.Cdecl)] + + public static extern uint ISteamHTTP_CreateCookieContainer(IntPtr instancePtr, [MarshalAs(UnmanagedType.I1)] bool bAllowResponsesToModify); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamHTTP_ReleaseCookieContainer", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamHTTP_ReleaseCookieContainer(IntPtr instancePtr, HTTPCookieContainerHandle hCookieContainer); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamHTTP_SetCookie", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamHTTP_SetCookie(IntPtr instancePtr, HTTPCookieContainerHandle hCookieContainer, InteropHelp.UTF8StringHandle pchHost, InteropHelp.UTF8StringHandle pchUrl, InteropHelp.UTF8StringHandle pchCookie); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamHTTP_SetHTTPRequestCookieContainer", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamHTTP_SetHTTPRequestCookieContainer(IntPtr instancePtr, HTTPRequestHandle hRequest, HTTPCookieContainerHandle hCookieContainer); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamHTTP_SetHTTPRequestUserAgentInfo", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamHTTP_SetHTTPRequestUserAgentInfo(IntPtr instancePtr, HTTPRequestHandle hRequest, InteropHelp.UTF8StringHandle pchUserAgentInfo); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamHTTP_SetHTTPRequestRequiresVerifiedCertificate", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamHTTP_SetHTTPRequestRequiresVerifiedCertificate(IntPtr instancePtr, HTTPRequestHandle hRequest, [MarshalAs(UnmanagedType.I1)] bool bRequireVerifiedCertificate); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamHTTP_SetHTTPRequestAbsoluteTimeoutMS", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamHTTP_SetHTTPRequestAbsoluteTimeoutMS(IntPtr instancePtr, HTTPRequestHandle hRequest, uint unMilliseconds); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamHTTP_GetHTTPRequestWasTimedOut", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamHTTP_GetHTTPRequestWasTimedOut(IntPtr instancePtr, HTTPRequestHandle hRequest, out bool pbWasTimedOut); + +#endregion +#region SteamInput + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInput_Init", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamInput_Init(IntPtr instancePtr, [MarshalAs(UnmanagedType.I1)] bool bExplicitlyCallRunFrame); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInput_Shutdown", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamInput_Shutdown(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInput_SetInputActionManifestFilePath", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamInput_SetInputActionManifestFilePath(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchInputActionManifestAbsolutePath); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInput_RunFrame", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamInput_RunFrame(IntPtr instancePtr, [MarshalAs(UnmanagedType.I1)] bool bReservedValue); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInput_BWaitForData", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamInput_BWaitForData(IntPtr instancePtr, [MarshalAs(UnmanagedType.I1)] bool bWaitForever, uint unTimeout); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInput_BNewDataAvailable", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamInput_BNewDataAvailable(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInput_GetConnectedControllers", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamInput_GetConnectedControllers(IntPtr instancePtr, [In, Out] InputHandle_t[] handlesOut); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInput_EnableDeviceCallbacks", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamInput_EnableDeviceCallbacks(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInput_EnableActionEventCallbacks", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamInput_EnableActionEventCallbacks(IntPtr instancePtr, SteamInputActionEventCallbackPointer pCallback); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInput_GetActionSetHandle", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamInput_GetActionSetHandle(IntPtr instancePtr, InteropHelp.UTF8StringHandle pszActionSetName); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInput_ActivateActionSet", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamInput_ActivateActionSet(IntPtr instancePtr, InputHandle_t inputHandle, InputActionSetHandle_t actionSetHandle); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInput_GetCurrentActionSet", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamInput_GetCurrentActionSet(IntPtr instancePtr, InputHandle_t inputHandle); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInput_ActivateActionSetLayer", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamInput_ActivateActionSetLayer(IntPtr instancePtr, InputHandle_t inputHandle, InputActionSetHandle_t actionSetLayerHandle); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInput_DeactivateActionSetLayer", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamInput_DeactivateActionSetLayer(IntPtr instancePtr, InputHandle_t inputHandle, InputActionSetHandle_t actionSetLayerHandle); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInput_DeactivateAllActionSetLayers", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamInput_DeactivateAllActionSetLayers(IntPtr instancePtr, InputHandle_t inputHandle); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInput_GetActiveActionSetLayers", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamInput_GetActiveActionSetLayers(IntPtr instancePtr, InputHandle_t inputHandle, [In, Out] InputActionSetHandle_t[] handlesOut); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInput_GetDigitalActionHandle", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamInput_GetDigitalActionHandle(IntPtr instancePtr, InteropHelp.UTF8StringHandle pszActionName); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInput_GetDigitalActionData", CallingConvention = CallingConvention.Cdecl)] + + public static extern InputDigitalActionData_t ISteamInput_GetDigitalActionData(IntPtr instancePtr, InputHandle_t inputHandle, InputDigitalActionHandle_t digitalActionHandle); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInput_GetDigitalActionOrigins", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamInput_GetDigitalActionOrigins(IntPtr instancePtr, InputHandle_t inputHandle, InputActionSetHandle_t actionSetHandle, InputDigitalActionHandle_t digitalActionHandle, [In, Out] EInputActionOrigin[] originsOut); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInput_GetStringForDigitalActionName", CallingConvention = CallingConvention.Cdecl)] + + public static extern IntPtr ISteamInput_GetStringForDigitalActionName(IntPtr instancePtr, InputDigitalActionHandle_t eActionHandle); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInput_GetAnalogActionHandle", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamInput_GetAnalogActionHandle(IntPtr instancePtr, InteropHelp.UTF8StringHandle pszActionName); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInput_GetAnalogActionData", CallingConvention = CallingConvention.Cdecl)] + + public static extern InputAnalogActionData_t ISteamInput_GetAnalogActionData(IntPtr instancePtr, InputHandle_t inputHandle, InputAnalogActionHandle_t analogActionHandle); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInput_GetAnalogActionOrigins", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamInput_GetAnalogActionOrigins(IntPtr instancePtr, InputHandle_t inputHandle, InputActionSetHandle_t actionSetHandle, InputAnalogActionHandle_t analogActionHandle, [In, Out] EInputActionOrigin[] originsOut); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInput_GetGlyphPNGForActionOrigin", CallingConvention = CallingConvention.Cdecl)] + + public static extern IntPtr ISteamInput_GetGlyphPNGForActionOrigin(IntPtr instancePtr, EInputActionOrigin eOrigin, ESteamInputGlyphSize eSize, uint unFlags); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInput_GetGlyphSVGForActionOrigin", CallingConvention = CallingConvention.Cdecl)] + + public static extern IntPtr ISteamInput_GetGlyphSVGForActionOrigin(IntPtr instancePtr, EInputActionOrigin eOrigin, uint unFlags); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInput_GetGlyphForActionOrigin_Legacy", CallingConvention = CallingConvention.Cdecl)] + + public static extern IntPtr ISteamInput_GetGlyphForActionOrigin_Legacy(IntPtr instancePtr, EInputActionOrigin eOrigin); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInput_GetStringForActionOrigin", CallingConvention = CallingConvention.Cdecl)] + + public static extern IntPtr ISteamInput_GetStringForActionOrigin(IntPtr instancePtr, EInputActionOrigin eOrigin); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInput_GetStringForAnalogActionName", CallingConvention = CallingConvention.Cdecl)] + + public static extern IntPtr ISteamInput_GetStringForAnalogActionName(IntPtr instancePtr, InputAnalogActionHandle_t eActionHandle); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInput_StopAnalogActionMomentum", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamInput_StopAnalogActionMomentum(IntPtr instancePtr, InputHandle_t inputHandle, InputAnalogActionHandle_t eAction); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInput_GetMotionData", CallingConvention = CallingConvention.Cdecl)] + + public static extern InputMotionData_t ISteamInput_GetMotionData(IntPtr instancePtr, InputHandle_t inputHandle); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInput_TriggerVibration", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamInput_TriggerVibration(IntPtr instancePtr, InputHandle_t inputHandle, ushort usLeftSpeed, ushort usRightSpeed); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInput_TriggerVibrationExtended", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamInput_TriggerVibrationExtended(IntPtr instancePtr, InputHandle_t inputHandle, ushort usLeftSpeed, ushort usRightSpeed, ushort usLeftTriggerSpeed, ushort usRightTriggerSpeed); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInput_TriggerSimpleHapticEvent", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamInput_TriggerSimpleHapticEvent(IntPtr instancePtr, InputHandle_t inputHandle, EControllerHapticLocation eHapticLocation, byte nIntensity, char nGainDB, byte nOtherIntensity, char nOtherGainDB); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInput_SetLEDColor", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamInput_SetLEDColor(IntPtr instancePtr, InputHandle_t inputHandle, byte nColorR, byte nColorG, byte nColorB, uint nFlags); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInput_Legacy_TriggerHapticPulse", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamInput_Legacy_TriggerHapticPulse(IntPtr instancePtr, InputHandle_t inputHandle, ESteamControllerPad eTargetPad, ushort usDurationMicroSec); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInput_Legacy_TriggerRepeatedHapticPulse", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamInput_Legacy_TriggerRepeatedHapticPulse(IntPtr instancePtr, InputHandle_t inputHandle, ESteamControllerPad eTargetPad, ushort usDurationMicroSec, ushort usOffMicroSec, ushort unRepeat, uint nFlags); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInput_ShowBindingPanel", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamInput_ShowBindingPanel(IntPtr instancePtr, InputHandle_t inputHandle); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInput_GetInputTypeForHandle", CallingConvention = CallingConvention.Cdecl)] + + public static extern ESteamInputType ISteamInput_GetInputTypeForHandle(IntPtr instancePtr, InputHandle_t inputHandle); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInput_GetControllerForGamepadIndex", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamInput_GetControllerForGamepadIndex(IntPtr instancePtr, int nIndex); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInput_GetGamepadIndexForController", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamInput_GetGamepadIndexForController(IntPtr instancePtr, InputHandle_t ulinputHandle); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInput_GetStringForXboxOrigin", CallingConvention = CallingConvention.Cdecl)] + + public static extern IntPtr ISteamInput_GetStringForXboxOrigin(IntPtr instancePtr, EXboxOrigin eOrigin); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInput_GetGlyphForXboxOrigin", CallingConvention = CallingConvention.Cdecl)] + + public static extern IntPtr ISteamInput_GetGlyphForXboxOrigin(IntPtr instancePtr, EXboxOrigin eOrigin); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInput_GetActionOriginFromXboxOrigin", CallingConvention = CallingConvention.Cdecl)] + + public static extern EInputActionOrigin ISteamInput_GetActionOriginFromXboxOrigin(IntPtr instancePtr, InputHandle_t inputHandle, EXboxOrigin eOrigin); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInput_TranslateActionOrigin", CallingConvention = CallingConvention.Cdecl)] + + public static extern EInputActionOrigin ISteamInput_TranslateActionOrigin(IntPtr instancePtr, ESteamInputType eDestinationInputType, EInputActionOrigin eSourceOrigin); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInput_GetDeviceBindingRevision", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamInput_GetDeviceBindingRevision(IntPtr instancePtr, InputHandle_t inputHandle, out int pMajor, out int pMinor); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInput_GetRemotePlaySessionID", CallingConvention = CallingConvention.Cdecl)] + + public static extern uint ISteamInput_GetRemotePlaySessionID(IntPtr instancePtr, InputHandle_t inputHandle); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInput_GetSessionInputConfigurationSettings", CallingConvention = CallingConvention.Cdecl)] + + public static extern ushort ISteamInput_GetSessionInputConfigurationSettings(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInput_SetDualSenseTriggerEffect", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamInput_SetDualSenseTriggerEffect(IntPtr instancePtr, InputHandle_t inputHandle, IntPtr pParam); + +#endregion +#region SteamInventory + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInventory_GetResultStatus", CallingConvention = CallingConvention.Cdecl)] + + public static extern EResult ISteamInventory_GetResultStatus(IntPtr instancePtr, SteamInventoryResult_t resultHandle); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInventory_GetResultItems", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamInventory_GetResultItems(IntPtr instancePtr, SteamInventoryResult_t resultHandle, [In, Out] SteamItemDetails_t[] pOutItemsArray, ref uint punOutItemsArraySize); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInventory_GetResultItemProperty", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamInventory_GetResultItemProperty(IntPtr instancePtr, SteamInventoryResult_t resultHandle, uint unItemIndex, InteropHelp.UTF8StringHandle pchPropertyName, IntPtr pchValueBuffer, ref uint punValueBufferSizeOut); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInventory_GetResultTimestamp", CallingConvention = CallingConvention.Cdecl)] + + public static extern uint ISteamInventory_GetResultTimestamp(IntPtr instancePtr, SteamInventoryResult_t resultHandle); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInventory_CheckResultSteamID", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamInventory_CheckResultSteamID(IntPtr instancePtr, SteamInventoryResult_t resultHandle, CSteamID steamIDExpected); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInventory_DestroyResult", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamInventory_DestroyResult(IntPtr instancePtr, SteamInventoryResult_t resultHandle); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInventory_GetAllItems", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamInventory_GetAllItems(IntPtr instancePtr, out SteamInventoryResult_t pResultHandle); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInventory_GetItemsByID", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamInventory_GetItemsByID(IntPtr instancePtr, out SteamInventoryResult_t pResultHandle, [In, Out] SteamItemInstanceID_t[] pInstanceIDs, uint unCountInstanceIDs); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInventory_SerializeResult", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamInventory_SerializeResult(IntPtr instancePtr, SteamInventoryResult_t resultHandle, byte[] pOutBuffer, out uint punOutBufferSize); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInventory_DeserializeResult", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamInventory_DeserializeResult(IntPtr instancePtr, out SteamInventoryResult_t pOutResultHandle, byte[] pBuffer, uint unBufferSize, [MarshalAs(UnmanagedType.I1)] bool bRESERVED_MUST_BE_FALSE); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInventory_GenerateItems", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamInventory_GenerateItems(IntPtr instancePtr, out SteamInventoryResult_t pResultHandle, [In, Out] SteamItemDef_t[] pArrayItemDefs, [In, Out] uint[] punArrayQuantity, uint unArrayLength); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInventory_GrantPromoItems", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamInventory_GrantPromoItems(IntPtr instancePtr, out SteamInventoryResult_t pResultHandle); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInventory_AddPromoItem", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamInventory_AddPromoItem(IntPtr instancePtr, out SteamInventoryResult_t pResultHandle, SteamItemDef_t itemDef); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInventory_AddPromoItems", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamInventory_AddPromoItems(IntPtr instancePtr, out SteamInventoryResult_t pResultHandle, [In, Out] SteamItemDef_t[] pArrayItemDefs, uint unArrayLength); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInventory_ConsumeItem", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamInventory_ConsumeItem(IntPtr instancePtr, out SteamInventoryResult_t pResultHandle, SteamItemInstanceID_t itemConsume, uint unQuantity); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInventory_ExchangeItems", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamInventory_ExchangeItems(IntPtr instancePtr, out SteamInventoryResult_t pResultHandle, [In, Out] SteamItemDef_t[] pArrayGenerate, [In, Out] uint[] punArrayGenerateQuantity, uint unArrayGenerateLength, [In, Out] SteamItemInstanceID_t[] pArrayDestroy, [In, Out] uint[] punArrayDestroyQuantity, uint unArrayDestroyLength); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInventory_TransferItemQuantity", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamInventory_TransferItemQuantity(IntPtr instancePtr, out SteamInventoryResult_t pResultHandle, SteamItemInstanceID_t itemIdSource, uint unQuantity, SteamItemInstanceID_t itemIdDest); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInventory_SendItemDropHeartbeat", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamInventory_SendItemDropHeartbeat(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInventory_TriggerItemDrop", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamInventory_TriggerItemDrop(IntPtr instancePtr, out SteamInventoryResult_t pResultHandle, SteamItemDef_t dropListDefinition); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInventory_TradeItems", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamInventory_TradeItems(IntPtr instancePtr, out SteamInventoryResult_t pResultHandle, CSteamID steamIDTradePartner, [In, Out] SteamItemInstanceID_t[] pArrayGive, [In, Out] uint[] pArrayGiveQuantity, uint nArrayGiveLength, [In, Out] SteamItemInstanceID_t[] pArrayGet, [In, Out] uint[] pArrayGetQuantity, uint nArrayGetLength); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInventory_LoadItemDefinitions", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamInventory_LoadItemDefinitions(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInventory_GetItemDefinitionIDs", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamInventory_GetItemDefinitionIDs(IntPtr instancePtr, [In, Out] SteamItemDef_t[] pItemDefIDs, ref uint punItemDefIDsArraySize); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInventory_GetItemDefinitionProperty", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamInventory_GetItemDefinitionProperty(IntPtr instancePtr, SteamItemDef_t iDefinition, InteropHelp.UTF8StringHandle pchPropertyName, IntPtr pchValueBuffer, ref uint punValueBufferSizeOut); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInventory_RequestEligiblePromoItemDefinitionsIDs", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamInventory_RequestEligiblePromoItemDefinitionsIDs(IntPtr instancePtr, CSteamID steamID); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInventory_GetEligiblePromoItemDefinitionIDs", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamInventory_GetEligiblePromoItemDefinitionIDs(IntPtr instancePtr, CSteamID steamID, [In, Out] SteamItemDef_t[] pItemDefIDs, ref uint punItemDefIDsArraySize); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInventory_StartPurchase", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamInventory_StartPurchase(IntPtr instancePtr, [In, Out] SteamItemDef_t[] pArrayItemDefs, [In, Out] uint[] punArrayQuantity, uint unArrayLength); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInventory_RequestPrices", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamInventory_RequestPrices(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInventory_GetNumItemsWithPrices", CallingConvention = CallingConvention.Cdecl)] + + public static extern uint ISteamInventory_GetNumItemsWithPrices(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInventory_GetItemsWithPrices", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamInventory_GetItemsWithPrices(IntPtr instancePtr, [In, Out] SteamItemDef_t[] pArrayItemDefs, [In, Out] ulong[] pCurrentPrices, [In, Out] ulong[] pBasePrices, uint unArrayLength); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInventory_GetItemPrice", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamInventory_GetItemPrice(IntPtr instancePtr, SteamItemDef_t iDefinition, out ulong pCurrentPrice, out ulong pBasePrice); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInventory_StartUpdateProperties", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamInventory_StartUpdateProperties(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInventory_RemoveProperty", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamInventory_RemoveProperty(IntPtr instancePtr, SteamInventoryUpdateHandle_t handle, SteamItemInstanceID_t nItemID, InteropHelp.UTF8StringHandle pchPropertyName); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInventory_SetPropertyString", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamInventory_SetPropertyString(IntPtr instancePtr, SteamInventoryUpdateHandle_t handle, SteamItemInstanceID_t nItemID, InteropHelp.UTF8StringHandle pchPropertyName, InteropHelp.UTF8StringHandle pchPropertyValue); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInventory_SetPropertyBool", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamInventory_SetPropertyBool(IntPtr instancePtr, SteamInventoryUpdateHandle_t handle, SteamItemInstanceID_t nItemID, InteropHelp.UTF8StringHandle pchPropertyName, [MarshalAs(UnmanagedType.I1)] bool bValue); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInventory_SetPropertyInt64", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamInventory_SetPropertyInt64(IntPtr instancePtr, SteamInventoryUpdateHandle_t handle, SteamItemInstanceID_t nItemID, InteropHelp.UTF8StringHandle pchPropertyName, long nValue); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInventory_SetPropertyFloat", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamInventory_SetPropertyFloat(IntPtr instancePtr, SteamInventoryUpdateHandle_t handle, SteamItemInstanceID_t nItemID, InteropHelp.UTF8StringHandle pchPropertyName, float flValue); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInventory_SubmitUpdateProperties", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamInventory_SubmitUpdateProperties(IntPtr instancePtr, SteamInventoryUpdateHandle_t handle, out SteamInventoryResult_t pResultHandle); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInventory_InspectItem", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamInventory_InspectItem(IntPtr instancePtr, out SteamInventoryResult_t pResultHandle, InteropHelp.UTF8StringHandle pchItemToken); + +#endregion +#region SteamMatchmaking + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMatchmaking_GetFavoriteGameCount", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamMatchmaking_GetFavoriteGameCount(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMatchmaking_GetFavoriteGame", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamMatchmaking_GetFavoriteGame(IntPtr instancePtr, int iGame, out AppId_t pnAppID, out uint pnIP, out ushort pnConnPort, out ushort pnQueryPort, out uint punFlags, out uint pRTime32LastPlayedOnServer); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMatchmaking_AddFavoriteGame", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamMatchmaking_AddFavoriteGame(IntPtr instancePtr, AppId_t nAppID, uint nIP, ushort nConnPort, ushort nQueryPort, uint unFlags, uint rTime32LastPlayedOnServer); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMatchmaking_RemoveFavoriteGame", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamMatchmaking_RemoveFavoriteGame(IntPtr instancePtr, AppId_t nAppID, uint nIP, ushort nConnPort, ushort nQueryPort, uint unFlags); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMatchmaking_RequestLobbyList", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamMatchmaking_RequestLobbyList(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMatchmaking_AddRequestLobbyListStringFilter", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamMatchmaking_AddRequestLobbyListStringFilter(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchKeyToMatch, InteropHelp.UTF8StringHandle pchValueToMatch, ELobbyComparison eComparisonType); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMatchmaking_AddRequestLobbyListNumericalFilter", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamMatchmaking_AddRequestLobbyListNumericalFilter(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchKeyToMatch, int nValueToMatch, ELobbyComparison eComparisonType); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMatchmaking_AddRequestLobbyListNearValueFilter", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamMatchmaking_AddRequestLobbyListNearValueFilter(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchKeyToMatch, int nValueToBeCloseTo); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMatchmaking_AddRequestLobbyListFilterSlotsAvailable", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamMatchmaking_AddRequestLobbyListFilterSlotsAvailable(IntPtr instancePtr, int nSlotsAvailable); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMatchmaking_AddRequestLobbyListDistanceFilter", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamMatchmaking_AddRequestLobbyListDistanceFilter(IntPtr instancePtr, ELobbyDistanceFilter eLobbyDistanceFilter); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMatchmaking_AddRequestLobbyListResultCountFilter", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamMatchmaking_AddRequestLobbyListResultCountFilter(IntPtr instancePtr, int cMaxResults); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMatchmaking_AddRequestLobbyListCompatibleMembersFilter", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamMatchmaking_AddRequestLobbyListCompatibleMembersFilter(IntPtr instancePtr, CSteamID steamIDLobby); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMatchmaking_GetLobbyByIndex", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamMatchmaking_GetLobbyByIndex(IntPtr instancePtr, int iLobby); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMatchmaking_CreateLobby", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamMatchmaking_CreateLobby(IntPtr instancePtr, ELobbyType eLobbyType, int cMaxMembers); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMatchmaking_JoinLobby", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamMatchmaking_JoinLobby(IntPtr instancePtr, CSteamID steamIDLobby); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMatchmaking_LeaveLobby", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamMatchmaking_LeaveLobby(IntPtr instancePtr, CSteamID steamIDLobby); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMatchmaking_InviteUserToLobby", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamMatchmaking_InviteUserToLobby(IntPtr instancePtr, CSteamID steamIDLobby, CSteamID steamIDInvitee); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMatchmaking_GetNumLobbyMembers", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamMatchmaking_GetNumLobbyMembers(IntPtr instancePtr, CSteamID steamIDLobby); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMatchmaking_GetLobbyMemberByIndex", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamMatchmaking_GetLobbyMemberByIndex(IntPtr instancePtr, CSteamID steamIDLobby, int iMember); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMatchmaking_GetLobbyData", CallingConvention = CallingConvention.Cdecl)] + + public static extern IntPtr ISteamMatchmaking_GetLobbyData(IntPtr instancePtr, CSteamID steamIDLobby, InteropHelp.UTF8StringHandle pchKey); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMatchmaking_SetLobbyData", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamMatchmaking_SetLobbyData(IntPtr instancePtr, CSteamID steamIDLobby, InteropHelp.UTF8StringHandle pchKey, InteropHelp.UTF8StringHandle pchValue); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMatchmaking_GetLobbyDataCount", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamMatchmaking_GetLobbyDataCount(IntPtr instancePtr, CSteamID steamIDLobby); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMatchmaking_GetLobbyDataByIndex", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamMatchmaking_GetLobbyDataByIndex(IntPtr instancePtr, CSteamID steamIDLobby, int iLobbyData, IntPtr pchKey, int cchKeyBufferSize, IntPtr pchValue, int cchValueBufferSize); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMatchmaking_DeleteLobbyData", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamMatchmaking_DeleteLobbyData(IntPtr instancePtr, CSteamID steamIDLobby, InteropHelp.UTF8StringHandle pchKey); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMatchmaking_GetLobbyMemberData", CallingConvention = CallingConvention.Cdecl)] + + public static extern IntPtr ISteamMatchmaking_GetLobbyMemberData(IntPtr instancePtr, CSteamID steamIDLobby, CSteamID steamIDUser, InteropHelp.UTF8StringHandle pchKey); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMatchmaking_SetLobbyMemberData", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamMatchmaking_SetLobbyMemberData(IntPtr instancePtr, CSteamID steamIDLobby, InteropHelp.UTF8StringHandle pchKey, InteropHelp.UTF8StringHandle pchValue); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMatchmaking_SendLobbyChatMsg", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamMatchmaking_SendLobbyChatMsg(IntPtr instancePtr, CSteamID steamIDLobby, byte[] pvMsgBody, int cubMsgBody); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMatchmaking_GetLobbyChatEntry", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamMatchmaking_GetLobbyChatEntry(IntPtr instancePtr, CSteamID steamIDLobby, int iChatID, out CSteamID pSteamIDUser, byte[] pvData, int cubData, out EChatEntryType peChatEntryType); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMatchmaking_RequestLobbyData", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamMatchmaking_RequestLobbyData(IntPtr instancePtr, CSteamID steamIDLobby); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMatchmaking_SetLobbyGameServer", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamMatchmaking_SetLobbyGameServer(IntPtr instancePtr, CSteamID steamIDLobby, uint unGameServerIP, ushort unGameServerPort, CSteamID steamIDGameServer); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMatchmaking_GetLobbyGameServer", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamMatchmaking_GetLobbyGameServer(IntPtr instancePtr, CSteamID steamIDLobby, out uint punGameServerIP, out ushort punGameServerPort, out CSteamID psteamIDGameServer); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMatchmaking_SetLobbyMemberLimit", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamMatchmaking_SetLobbyMemberLimit(IntPtr instancePtr, CSteamID steamIDLobby, int cMaxMembers); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMatchmaking_GetLobbyMemberLimit", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamMatchmaking_GetLobbyMemberLimit(IntPtr instancePtr, CSteamID steamIDLobby); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMatchmaking_SetLobbyType", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamMatchmaking_SetLobbyType(IntPtr instancePtr, CSteamID steamIDLobby, ELobbyType eLobbyType); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMatchmaking_SetLobbyJoinable", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamMatchmaking_SetLobbyJoinable(IntPtr instancePtr, CSteamID steamIDLobby, [MarshalAs(UnmanagedType.I1)] bool bLobbyJoinable); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMatchmaking_GetLobbyOwner", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamMatchmaking_GetLobbyOwner(IntPtr instancePtr, CSteamID steamIDLobby); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMatchmaking_SetLobbyOwner", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamMatchmaking_SetLobbyOwner(IntPtr instancePtr, CSteamID steamIDLobby, CSteamID steamIDNewOwner); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMatchmaking_SetLinkedLobby", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamMatchmaking_SetLinkedLobby(IntPtr instancePtr, CSteamID steamIDLobby, CSteamID steamIDLobbyDependent); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMatchmaking_CheckForPSNGameBootInvite", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamMatchmaking_CheckForPSNGameBootInvite(IntPtr instancePtr, uint iGameBootAttributes); + +#endregion +#region SteamMatchmakingServers + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMatchmakingServers_RequestInternetServerList", CallingConvention = CallingConvention.Cdecl)] + + public static extern IntPtr ISteamMatchmakingServers_RequestInternetServerList(IntPtr instancePtr, AppId_t iApp, IntPtr ppchFilters, uint nFilters, IntPtr pRequestServersResponse); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMatchmakingServers_RequestLANServerList", CallingConvention = CallingConvention.Cdecl)] + + public static extern IntPtr ISteamMatchmakingServers_RequestLANServerList(IntPtr instancePtr, AppId_t iApp, IntPtr pRequestServersResponse); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMatchmakingServers_RequestFriendsServerList", CallingConvention = CallingConvention.Cdecl)] + + public static extern IntPtr ISteamMatchmakingServers_RequestFriendsServerList(IntPtr instancePtr, AppId_t iApp, IntPtr ppchFilters, uint nFilters, IntPtr pRequestServersResponse); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMatchmakingServers_RequestFavoritesServerList", CallingConvention = CallingConvention.Cdecl)] + + public static extern IntPtr ISteamMatchmakingServers_RequestFavoritesServerList(IntPtr instancePtr, AppId_t iApp, IntPtr ppchFilters, uint nFilters, IntPtr pRequestServersResponse); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMatchmakingServers_RequestHistoryServerList", CallingConvention = CallingConvention.Cdecl)] + + public static extern IntPtr ISteamMatchmakingServers_RequestHistoryServerList(IntPtr instancePtr, AppId_t iApp, IntPtr ppchFilters, uint nFilters, IntPtr pRequestServersResponse); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMatchmakingServers_RequestSpectatorServerList", CallingConvention = CallingConvention.Cdecl)] + + public static extern IntPtr ISteamMatchmakingServers_RequestSpectatorServerList(IntPtr instancePtr, AppId_t iApp, IntPtr ppchFilters, uint nFilters, IntPtr pRequestServersResponse); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMatchmakingServers_ReleaseRequest", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamMatchmakingServers_ReleaseRequest(IntPtr instancePtr, HServerListRequest hServerListRequest); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMatchmakingServers_GetServerDetails", CallingConvention = CallingConvention.Cdecl)] + + public static extern IntPtr ISteamMatchmakingServers_GetServerDetails(IntPtr instancePtr, HServerListRequest hRequest, int iServer); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMatchmakingServers_CancelQuery", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamMatchmakingServers_CancelQuery(IntPtr instancePtr, HServerListRequest hRequest); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMatchmakingServers_RefreshQuery", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamMatchmakingServers_RefreshQuery(IntPtr instancePtr, HServerListRequest hRequest); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMatchmakingServers_IsRefreshing", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamMatchmakingServers_IsRefreshing(IntPtr instancePtr, HServerListRequest hRequest); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMatchmakingServers_GetServerCount", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamMatchmakingServers_GetServerCount(IntPtr instancePtr, HServerListRequest hRequest); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMatchmakingServers_RefreshServer", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamMatchmakingServers_RefreshServer(IntPtr instancePtr, HServerListRequest hRequest, int iServer); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMatchmakingServers_PingServer", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamMatchmakingServers_PingServer(IntPtr instancePtr, uint unIP, ushort usPort, IntPtr pRequestServersResponse); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMatchmakingServers_PlayerDetails", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamMatchmakingServers_PlayerDetails(IntPtr instancePtr, uint unIP, ushort usPort, IntPtr pRequestServersResponse); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMatchmakingServers_ServerRules", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamMatchmakingServers_ServerRules(IntPtr instancePtr, uint unIP, ushort usPort, IntPtr pRequestServersResponse); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMatchmakingServers_CancelServerQuery", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamMatchmakingServers_CancelServerQuery(IntPtr instancePtr, HServerQuery hServerQuery); + +#endregion +#region SteamGameSearch + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamGameSearch_AddGameSearchParams", CallingConvention = CallingConvention.Cdecl)] + + public static extern EGameSearchErrorCode_t ISteamGameSearch_AddGameSearchParams(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchKeyToFind, InteropHelp.UTF8StringHandle pchValuesToFind); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamGameSearch_SearchForGameWithLobby", CallingConvention = CallingConvention.Cdecl)] + + public static extern EGameSearchErrorCode_t ISteamGameSearch_SearchForGameWithLobby(IntPtr instancePtr, CSteamID steamIDLobby, int nPlayerMin, int nPlayerMax); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamGameSearch_SearchForGameSolo", CallingConvention = CallingConvention.Cdecl)] + + public static extern EGameSearchErrorCode_t ISteamGameSearch_SearchForGameSolo(IntPtr instancePtr, int nPlayerMin, int nPlayerMax); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamGameSearch_AcceptGame", CallingConvention = CallingConvention.Cdecl)] + + public static extern EGameSearchErrorCode_t ISteamGameSearch_AcceptGame(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamGameSearch_DeclineGame", CallingConvention = CallingConvention.Cdecl)] + + public static extern EGameSearchErrorCode_t ISteamGameSearch_DeclineGame(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamGameSearch_RetrieveConnectionDetails", CallingConvention = CallingConvention.Cdecl)] + + public static extern EGameSearchErrorCode_t ISteamGameSearch_RetrieveConnectionDetails(IntPtr instancePtr, CSteamID steamIDHost, IntPtr pchConnectionDetails, int cubConnectionDetails); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamGameSearch_EndGameSearch", CallingConvention = CallingConvention.Cdecl)] + + public static extern EGameSearchErrorCode_t ISteamGameSearch_EndGameSearch(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamGameSearch_SetGameHostParams", CallingConvention = CallingConvention.Cdecl)] + + public static extern EGameSearchErrorCode_t ISteamGameSearch_SetGameHostParams(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchKey, InteropHelp.UTF8StringHandle pchValue); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamGameSearch_SetConnectionDetails", CallingConvention = CallingConvention.Cdecl)] + + public static extern EGameSearchErrorCode_t ISteamGameSearch_SetConnectionDetails(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchConnectionDetails, int cubConnectionDetails); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamGameSearch_RequestPlayersForGame", CallingConvention = CallingConvention.Cdecl)] + + public static extern EGameSearchErrorCode_t ISteamGameSearch_RequestPlayersForGame(IntPtr instancePtr, int nPlayerMin, int nPlayerMax, int nMaxTeamSize); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamGameSearch_HostConfirmGameStart", CallingConvention = CallingConvention.Cdecl)] + + public static extern EGameSearchErrorCode_t ISteamGameSearch_HostConfirmGameStart(IntPtr instancePtr, ulong ullUniqueGameID); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamGameSearch_CancelRequestPlayersForGame", CallingConvention = CallingConvention.Cdecl)] + + public static extern EGameSearchErrorCode_t ISteamGameSearch_CancelRequestPlayersForGame(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamGameSearch_SubmitPlayerResult", CallingConvention = CallingConvention.Cdecl)] + + public static extern EGameSearchErrorCode_t ISteamGameSearch_SubmitPlayerResult(IntPtr instancePtr, ulong ullUniqueGameID, CSteamID steamIDPlayer, EPlayerResult_t EPlayerResult); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamGameSearch_EndGame", CallingConvention = CallingConvention.Cdecl)] + + public static extern EGameSearchErrorCode_t ISteamGameSearch_EndGame(IntPtr instancePtr, ulong ullUniqueGameID); + +#endregion +#region SteamParties + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamParties_GetNumActiveBeacons", CallingConvention = CallingConvention.Cdecl)] + + public static extern uint ISteamParties_GetNumActiveBeacons(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamParties_GetBeaconByIndex", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamParties_GetBeaconByIndex(IntPtr instancePtr, uint unIndex); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamParties_GetBeaconDetails", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamParties_GetBeaconDetails(IntPtr instancePtr, PartyBeaconID_t ulBeaconID, out CSteamID pSteamIDBeaconOwner, out SteamPartyBeaconLocation_t pLocation, IntPtr pchMetadata, int cchMetadata); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamParties_JoinParty", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamParties_JoinParty(IntPtr instancePtr, PartyBeaconID_t ulBeaconID); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamParties_GetNumAvailableBeaconLocations", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamParties_GetNumAvailableBeaconLocations(IntPtr instancePtr, out uint puNumLocations); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamParties_GetAvailableBeaconLocations", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamParties_GetAvailableBeaconLocations(IntPtr instancePtr, [In, Out] SteamPartyBeaconLocation_t[] pLocationList, uint uMaxNumLocations); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamParties_CreateBeacon", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamParties_CreateBeacon(IntPtr instancePtr, uint unOpenSlots, ref SteamPartyBeaconLocation_t pBeaconLocation, InteropHelp.UTF8StringHandle pchConnectString, InteropHelp.UTF8StringHandle pchMetadata); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamParties_OnReservationCompleted", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamParties_OnReservationCompleted(IntPtr instancePtr, PartyBeaconID_t ulBeacon, CSteamID steamIDUser); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamParties_CancelReservation", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamParties_CancelReservation(IntPtr instancePtr, PartyBeaconID_t ulBeacon, CSteamID steamIDUser); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamParties_ChangeNumOpenSlots", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamParties_ChangeNumOpenSlots(IntPtr instancePtr, PartyBeaconID_t ulBeacon, uint unOpenSlots); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamParties_DestroyBeacon", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamParties_DestroyBeacon(IntPtr instancePtr, PartyBeaconID_t ulBeacon); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamParties_GetBeaconLocationData", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamParties_GetBeaconLocationData(IntPtr instancePtr, SteamPartyBeaconLocation_t BeaconLocation, ESteamPartyBeaconLocationData eData, IntPtr pchDataStringOut, int cchDataStringOut); + +#endregion +#region SteamMusic + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMusic_BIsEnabled", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamMusic_BIsEnabled(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMusic_BIsPlaying", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamMusic_BIsPlaying(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMusic_GetPlaybackStatus", CallingConvention = CallingConvention.Cdecl)] + + public static extern AudioPlayback_Status ISteamMusic_GetPlaybackStatus(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMusic_Play", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamMusic_Play(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMusic_Pause", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamMusic_Pause(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMusic_PlayPrevious", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamMusic_PlayPrevious(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMusic_PlayNext", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamMusic_PlayNext(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMusic_SetVolume", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamMusic_SetVolume(IntPtr instancePtr, float flVolume); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMusic_GetVolume", CallingConvention = CallingConvention.Cdecl)] + + public static extern float ISteamMusic_GetVolume(IntPtr instancePtr); + +#endregion +#region SteamMusicRemote + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMusicRemote_RegisterSteamMusicRemote", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamMusicRemote_RegisterSteamMusicRemote(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchName); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMusicRemote_DeregisterSteamMusicRemote", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamMusicRemote_DeregisterSteamMusicRemote(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMusicRemote_BIsCurrentMusicRemote", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamMusicRemote_BIsCurrentMusicRemote(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMusicRemote_BActivationSuccess", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamMusicRemote_BActivationSuccess(IntPtr instancePtr, [MarshalAs(UnmanagedType.I1)] bool bValue); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMusicRemote_SetDisplayName", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamMusicRemote_SetDisplayName(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchDisplayName); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMusicRemote_SetPNGIcon_64x64", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamMusicRemote_SetPNGIcon_64x64(IntPtr instancePtr, byte[] pvBuffer, uint cbBufferLength); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMusicRemote_EnablePlayPrevious", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamMusicRemote_EnablePlayPrevious(IntPtr instancePtr, [MarshalAs(UnmanagedType.I1)] bool bValue); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMusicRemote_EnablePlayNext", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamMusicRemote_EnablePlayNext(IntPtr instancePtr, [MarshalAs(UnmanagedType.I1)] bool bValue); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMusicRemote_EnableShuffled", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamMusicRemote_EnableShuffled(IntPtr instancePtr, [MarshalAs(UnmanagedType.I1)] bool bValue); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMusicRemote_EnableLooped", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamMusicRemote_EnableLooped(IntPtr instancePtr, [MarshalAs(UnmanagedType.I1)] bool bValue); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMusicRemote_EnableQueue", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamMusicRemote_EnableQueue(IntPtr instancePtr, [MarshalAs(UnmanagedType.I1)] bool bValue); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMusicRemote_EnablePlaylists", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamMusicRemote_EnablePlaylists(IntPtr instancePtr, [MarshalAs(UnmanagedType.I1)] bool bValue); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMusicRemote_UpdatePlaybackStatus", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamMusicRemote_UpdatePlaybackStatus(IntPtr instancePtr, AudioPlayback_Status nStatus); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMusicRemote_UpdateShuffled", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamMusicRemote_UpdateShuffled(IntPtr instancePtr, [MarshalAs(UnmanagedType.I1)] bool bValue); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMusicRemote_UpdateLooped", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamMusicRemote_UpdateLooped(IntPtr instancePtr, [MarshalAs(UnmanagedType.I1)] bool bValue); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMusicRemote_UpdateVolume", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamMusicRemote_UpdateVolume(IntPtr instancePtr, float flValue); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMusicRemote_CurrentEntryWillChange", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamMusicRemote_CurrentEntryWillChange(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMusicRemote_CurrentEntryIsAvailable", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamMusicRemote_CurrentEntryIsAvailable(IntPtr instancePtr, [MarshalAs(UnmanagedType.I1)] bool bAvailable); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMusicRemote_UpdateCurrentEntryText", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamMusicRemote_UpdateCurrentEntryText(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchText); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMusicRemote_UpdateCurrentEntryElapsedSeconds", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamMusicRemote_UpdateCurrentEntryElapsedSeconds(IntPtr instancePtr, int nValue); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMusicRemote_UpdateCurrentEntryCoverArt", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamMusicRemote_UpdateCurrentEntryCoverArt(IntPtr instancePtr, byte[] pvBuffer, uint cbBufferLength); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMusicRemote_CurrentEntryDidChange", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamMusicRemote_CurrentEntryDidChange(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMusicRemote_QueueWillChange", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamMusicRemote_QueueWillChange(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMusicRemote_ResetQueueEntries", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamMusicRemote_ResetQueueEntries(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMusicRemote_SetQueueEntry", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamMusicRemote_SetQueueEntry(IntPtr instancePtr, int nID, int nPosition, InteropHelp.UTF8StringHandle pchEntryText); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMusicRemote_SetCurrentQueueEntry", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamMusicRemote_SetCurrentQueueEntry(IntPtr instancePtr, int nID); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMusicRemote_QueueDidChange", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamMusicRemote_QueueDidChange(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMusicRemote_PlaylistWillChange", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamMusicRemote_PlaylistWillChange(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMusicRemote_ResetPlaylistEntries", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamMusicRemote_ResetPlaylistEntries(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMusicRemote_SetPlaylistEntry", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamMusicRemote_SetPlaylistEntry(IntPtr instancePtr, int nID, int nPosition, InteropHelp.UTF8StringHandle pchEntryText); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMusicRemote_SetCurrentPlaylistEntry", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamMusicRemote_SetCurrentPlaylistEntry(IntPtr instancePtr, int nID); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMusicRemote_PlaylistDidChange", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamMusicRemote_PlaylistDidChange(IntPtr instancePtr); + +#endregion +#region SteamNetworking + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworking_SendP2PPacket", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamNetworking_SendP2PPacket(IntPtr instancePtr, CSteamID steamIDRemote, byte[] pubData, uint cubData, EP2PSend eP2PSendType, int nChannel); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworking_IsP2PPacketAvailable", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamNetworking_IsP2PPacketAvailable(IntPtr instancePtr, out uint pcubMsgSize, int nChannel); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworking_ReadP2PPacket", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamNetworking_ReadP2PPacket(IntPtr instancePtr, byte[] pubDest, uint cubDest, out uint pcubMsgSize, out CSteamID psteamIDRemote, int nChannel); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworking_AcceptP2PSessionWithUser", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamNetworking_AcceptP2PSessionWithUser(IntPtr instancePtr, CSteamID steamIDRemote); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworking_CloseP2PSessionWithUser", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamNetworking_CloseP2PSessionWithUser(IntPtr instancePtr, CSteamID steamIDRemote); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworking_CloseP2PChannelWithUser", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamNetworking_CloseP2PChannelWithUser(IntPtr instancePtr, CSteamID steamIDRemote, int nChannel); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworking_GetP2PSessionState", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamNetworking_GetP2PSessionState(IntPtr instancePtr, CSteamID steamIDRemote, out P2PSessionState_t pConnectionState); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworking_AllowP2PPacketRelay", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamNetworking_AllowP2PPacketRelay(IntPtr instancePtr, [MarshalAs(UnmanagedType.I1)] bool bAllow); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworking_CreateListenSocket", CallingConvention = CallingConvention.Cdecl)] + + public static extern uint ISteamNetworking_CreateListenSocket(IntPtr instancePtr, int nVirtualP2PPort, SteamIPAddress_t nIP, ushort nPort, [MarshalAs(UnmanagedType.I1)] bool bAllowUseOfPacketRelay); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworking_CreateP2PConnectionSocket", CallingConvention = CallingConvention.Cdecl)] + + public static extern uint ISteamNetworking_CreateP2PConnectionSocket(IntPtr instancePtr, CSteamID steamIDTarget, int nVirtualPort, int nTimeoutSec, [MarshalAs(UnmanagedType.I1)] bool bAllowUseOfPacketRelay); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworking_CreateConnectionSocket", CallingConvention = CallingConvention.Cdecl)] + + public static extern uint ISteamNetworking_CreateConnectionSocket(IntPtr instancePtr, SteamIPAddress_t nIP, ushort nPort, int nTimeoutSec); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworking_DestroySocket", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamNetworking_DestroySocket(IntPtr instancePtr, SNetSocket_t hSocket, [MarshalAs(UnmanagedType.I1)] bool bNotifyRemoteEnd); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworking_DestroyListenSocket", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamNetworking_DestroyListenSocket(IntPtr instancePtr, SNetListenSocket_t hSocket, [MarshalAs(UnmanagedType.I1)] bool bNotifyRemoteEnd); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworking_SendDataOnSocket", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamNetworking_SendDataOnSocket(IntPtr instancePtr, SNetSocket_t hSocket, byte[] pubData, uint cubData, [MarshalAs(UnmanagedType.I1)] bool bReliable); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworking_IsDataAvailableOnSocket", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamNetworking_IsDataAvailableOnSocket(IntPtr instancePtr, SNetSocket_t hSocket, out uint pcubMsgSize); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworking_RetrieveDataFromSocket", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamNetworking_RetrieveDataFromSocket(IntPtr instancePtr, SNetSocket_t hSocket, byte[] pubDest, uint cubDest, out uint pcubMsgSize); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworking_IsDataAvailable", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamNetworking_IsDataAvailable(IntPtr instancePtr, SNetListenSocket_t hListenSocket, out uint pcubMsgSize, out SNetSocket_t phSocket); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworking_RetrieveData", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamNetworking_RetrieveData(IntPtr instancePtr, SNetListenSocket_t hListenSocket, byte[] pubDest, uint cubDest, out uint pcubMsgSize, out SNetSocket_t phSocket); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworking_GetSocketInfo", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamNetworking_GetSocketInfo(IntPtr instancePtr, SNetSocket_t hSocket, out CSteamID pSteamIDRemote, out int peSocketStatus, out SteamIPAddress_t punIPRemote, out ushort punPortRemote); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworking_GetListenSocketInfo", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamNetworking_GetListenSocketInfo(IntPtr instancePtr, SNetListenSocket_t hListenSocket, out SteamIPAddress_t pnIP, out ushort pnPort); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworking_GetSocketConnectionType", CallingConvention = CallingConvention.Cdecl)] + + public static extern ESNetSocketConnectionType ISteamNetworking_GetSocketConnectionType(IntPtr instancePtr, SNetSocket_t hSocket); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworking_GetMaxPacketSize", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamNetworking_GetMaxPacketSize(IntPtr instancePtr, SNetSocket_t hSocket); + +#endregion +#region SteamNetworkingMessages + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingMessages_SendMessageToUser", CallingConvention = CallingConvention.Cdecl)] + + public static extern EResult ISteamNetworkingMessages_SendMessageToUser(IntPtr instancePtr, ref SteamNetworkingIdentity identityRemote, IntPtr pubData, uint cubData, int nSendFlags, int nRemoteChannel); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingMessages_ReceiveMessagesOnChannel", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamNetworkingMessages_ReceiveMessagesOnChannel(IntPtr instancePtr, int nLocalChannel, [In, Out] IntPtr[] ppOutMessages, int nMaxMessages); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingMessages_AcceptSessionWithUser", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamNetworkingMessages_AcceptSessionWithUser(IntPtr instancePtr, ref SteamNetworkingIdentity identityRemote); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingMessages_CloseSessionWithUser", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamNetworkingMessages_CloseSessionWithUser(IntPtr instancePtr, ref SteamNetworkingIdentity identityRemote); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingMessages_CloseChannelWithUser", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamNetworkingMessages_CloseChannelWithUser(IntPtr instancePtr, ref SteamNetworkingIdentity identityRemote, int nLocalChannel); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingMessages_GetSessionConnectionInfo", CallingConvention = CallingConvention.Cdecl)] + + public static extern ESteamNetworkingConnectionState ISteamNetworkingMessages_GetSessionConnectionInfo(IntPtr instancePtr, ref SteamNetworkingIdentity identityRemote, out SteamNetConnectionInfo_t pConnectionInfo, out SteamNetConnectionRealTimeStatus_t pQuickStatus); + +#endregion +#region SteamNetworkingSockets + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingSockets_CreateListenSocketIP", CallingConvention = CallingConvention.Cdecl)] + + public static extern uint ISteamNetworkingSockets_CreateListenSocketIP(IntPtr instancePtr, ref SteamNetworkingIPAddr localAddress, int nOptions, [In, Out] SteamNetworkingConfigValue_t[] pOptions); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingSockets_ConnectByIPAddress", CallingConvention = CallingConvention.Cdecl)] + + public static extern uint ISteamNetworkingSockets_ConnectByIPAddress(IntPtr instancePtr, ref SteamNetworkingIPAddr address, int nOptions, [In, Out] SteamNetworkingConfigValue_t[] pOptions); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingSockets_CreateListenSocketP2P", CallingConvention = CallingConvention.Cdecl)] + + public static extern uint ISteamNetworkingSockets_CreateListenSocketP2P(IntPtr instancePtr, int nLocalVirtualPort, int nOptions, [In, Out] SteamNetworkingConfigValue_t[] pOptions); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingSockets_ConnectP2P", CallingConvention = CallingConvention.Cdecl)] + + public static extern uint ISteamNetworkingSockets_ConnectP2P(IntPtr instancePtr, ref SteamNetworkingIdentity identityRemote, int nRemoteVirtualPort, int nOptions, [In, Out] SteamNetworkingConfigValue_t[] pOptions); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingSockets_AcceptConnection", CallingConvention = CallingConvention.Cdecl)] + + public static extern EResult ISteamNetworkingSockets_AcceptConnection(IntPtr instancePtr, HSteamNetConnection hConn); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingSockets_CloseConnection", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamNetworkingSockets_CloseConnection(IntPtr instancePtr, HSteamNetConnection hPeer, int nReason, InteropHelp.UTF8StringHandle pszDebug, [MarshalAs(UnmanagedType.I1)] bool bEnableLinger); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingSockets_CloseListenSocket", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamNetworkingSockets_CloseListenSocket(IntPtr instancePtr, HSteamListenSocket hSocket); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingSockets_SetConnectionUserData", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamNetworkingSockets_SetConnectionUserData(IntPtr instancePtr, HSteamNetConnection hPeer, long nUserData); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingSockets_GetConnectionUserData", CallingConvention = CallingConvention.Cdecl)] + + public static extern long ISteamNetworkingSockets_GetConnectionUserData(IntPtr instancePtr, HSteamNetConnection hPeer); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingSockets_SetConnectionName", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamNetworkingSockets_SetConnectionName(IntPtr instancePtr, HSteamNetConnection hPeer, InteropHelp.UTF8StringHandle pszName); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingSockets_GetConnectionName", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamNetworkingSockets_GetConnectionName(IntPtr instancePtr, HSteamNetConnection hPeer, IntPtr pszName, int nMaxLen); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingSockets_SendMessageToConnection", CallingConvention = CallingConvention.Cdecl)] + + public static extern EResult ISteamNetworkingSockets_SendMessageToConnection(IntPtr instancePtr, HSteamNetConnection hConn, IntPtr pData, uint cbData, int nSendFlags, out long pOutMessageNumber); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingSockets_SendMessages", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamNetworkingSockets_SendMessages(IntPtr instancePtr, int nMessages, [In, Out] IntPtr[] pMessages, [In, Out] long[] pOutMessageNumberOrResult); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingSockets_FlushMessagesOnConnection", CallingConvention = CallingConvention.Cdecl)] + + public static extern EResult ISteamNetworkingSockets_FlushMessagesOnConnection(IntPtr instancePtr, HSteamNetConnection hConn); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingSockets_ReceiveMessagesOnConnection", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamNetworkingSockets_ReceiveMessagesOnConnection(IntPtr instancePtr, HSteamNetConnection hConn, [In, Out] IntPtr[] ppOutMessages, int nMaxMessages); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingSockets_GetConnectionInfo", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamNetworkingSockets_GetConnectionInfo(IntPtr instancePtr, HSteamNetConnection hConn, out SteamNetConnectionInfo_t pInfo); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingSockets_GetConnectionRealTimeStatus", CallingConvention = CallingConvention.Cdecl)] + + public static extern EResult ISteamNetworkingSockets_GetConnectionRealTimeStatus(IntPtr instancePtr, HSteamNetConnection hConn, ref SteamNetConnectionRealTimeStatus_t pStatus, int nLanes, ref SteamNetConnectionRealTimeLaneStatus_t pLanes); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingSockets_GetDetailedConnectionStatus", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamNetworkingSockets_GetDetailedConnectionStatus(IntPtr instancePtr, HSteamNetConnection hConn, IntPtr pszBuf, int cbBuf); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingSockets_GetListenSocketAddress", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamNetworkingSockets_GetListenSocketAddress(IntPtr instancePtr, HSteamListenSocket hSocket, out SteamNetworkingIPAddr address); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingSockets_CreateSocketPair", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamNetworkingSockets_CreateSocketPair(IntPtr instancePtr, out HSteamNetConnection pOutConnection1, out HSteamNetConnection pOutConnection2, [MarshalAs(UnmanagedType.I1)] bool bUseNetworkLoopback, ref SteamNetworkingIdentity pIdentity1, ref SteamNetworkingIdentity pIdentity2); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingSockets_ConfigureConnectionLanes", CallingConvention = CallingConvention.Cdecl)] + + public static extern EResult ISteamNetworkingSockets_ConfigureConnectionLanes(IntPtr instancePtr, HSteamNetConnection hConn, int nNumLanes, [In, Out] int[] pLanePriorities, [In, Out] ushort[] pLaneWeights); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingSockets_GetIdentity", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamNetworkingSockets_GetIdentity(IntPtr instancePtr, out SteamNetworkingIdentity pIdentity); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingSockets_InitAuthentication", CallingConvention = CallingConvention.Cdecl)] + + public static extern ESteamNetworkingAvailability ISteamNetworkingSockets_InitAuthentication(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingSockets_GetAuthenticationStatus", CallingConvention = CallingConvention.Cdecl)] + + public static extern ESteamNetworkingAvailability ISteamNetworkingSockets_GetAuthenticationStatus(IntPtr instancePtr, out SteamNetAuthenticationStatus_t pDetails); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingSockets_CreatePollGroup", CallingConvention = CallingConvention.Cdecl)] + + public static extern uint ISteamNetworkingSockets_CreatePollGroup(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingSockets_DestroyPollGroup", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamNetworkingSockets_DestroyPollGroup(IntPtr instancePtr, HSteamNetPollGroup hPollGroup); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingSockets_SetConnectionPollGroup", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamNetworkingSockets_SetConnectionPollGroup(IntPtr instancePtr, HSteamNetConnection hConn, HSteamNetPollGroup hPollGroup); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingSockets_ReceiveMessagesOnPollGroup", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamNetworkingSockets_ReceiveMessagesOnPollGroup(IntPtr instancePtr, HSteamNetPollGroup hPollGroup, [In, Out] IntPtr[] ppOutMessages, int nMaxMessages); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingSockets_ReceivedRelayAuthTicket", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamNetworkingSockets_ReceivedRelayAuthTicket(IntPtr instancePtr, IntPtr pvTicket, int cbTicket, out SteamDatagramRelayAuthTicket pOutParsedTicket); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingSockets_FindRelayAuthTicketForServer", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamNetworkingSockets_FindRelayAuthTicketForServer(IntPtr instancePtr, ref SteamNetworkingIdentity identityGameServer, int nRemoteVirtualPort, out SteamDatagramRelayAuthTicket pOutParsedTicket); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingSockets_ConnectToHostedDedicatedServer", CallingConvention = CallingConvention.Cdecl)] + + public static extern uint ISteamNetworkingSockets_ConnectToHostedDedicatedServer(IntPtr instancePtr, ref SteamNetworkingIdentity identityTarget, int nRemoteVirtualPort, int nOptions, [In, Out] SteamNetworkingConfigValue_t[] pOptions); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingSockets_GetHostedDedicatedServerPort", CallingConvention = CallingConvention.Cdecl)] + + public static extern ushort ISteamNetworkingSockets_GetHostedDedicatedServerPort(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingSockets_GetHostedDedicatedServerPOPID", CallingConvention = CallingConvention.Cdecl)] + + public static extern uint ISteamNetworkingSockets_GetHostedDedicatedServerPOPID(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingSockets_GetHostedDedicatedServerAddress", CallingConvention = CallingConvention.Cdecl)] + + public static extern EResult ISteamNetworkingSockets_GetHostedDedicatedServerAddress(IntPtr instancePtr, out SteamDatagramHostedAddress pRouting); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingSockets_CreateHostedDedicatedServerListenSocket", CallingConvention = CallingConvention.Cdecl)] + + public static extern uint ISteamNetworkingSockets_CreateHostedDedicatedServerListenSocket(IntPtr instancePtr, int nLocalVirtualPort, int nOptions, [In, Out] SteamNetworkingConfigValue_t[] pOptions); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingSockets_GetGameCoordinatorServerLogin", CallingConvention = CallingConvention.Cdecl)] + + public static extern EResult ISteamNetworkingSockets_GetGameCoordinatorServerLogin(IntPtr instancePtr, IntPtr pLoginInfo, out int pcbSignedBlob, IntPtr pBlob); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingSockets_ConnectP2PCustomSignaling", CallingConvention = CallingConvention.Cdecl)] + + public static extern uint ISteamNetworkingSockets_ConnectP2PCustomSignaling(IntPtr instancePtr, out ISteamNetworkingConnectionSignaling pSignaling, ref SteamNetworkingIdentity pPeerIdentity, int nRemoteVirtualPort, int nOptions, [In, Out] SteamNetworkingConfigValue_t[] pOptions); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingSockets_ReceivedP2PCustomSignal", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamNetworkingSockets_ReceivedP2PCustomSignal(IntPtr instancePtr, IntPtr pMsg, int cbMsg, out ISteamNetworkingSignalingRecvContext pContext); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingSockets_GetCertificateRequest", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamNetworkingSockets_GetCertificateRequest(IntPtr instancePtr, out int pcbBlob, IntPtr pBlob, out SteamNetworkingErrMsg errMsg); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingSockets_SetCertificate", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamNetworkingSockets_SetCertificate(IntPtr instancePtr, IntPtr pCertificate, int cbCertificate, out SteamNetworkingErrMsg errMsg); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingSockets_ResetIdentity", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamNetworkingSockets_ResetIdentity(IntPtr instancePtr, ref SteamNetworkingIdentity pIdentity); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingSockets_RunCallbacks", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamNetworkingSockets_RunCallbacks(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingSockets_BeginAsyncRequestFakeIP", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamNetworkingSockets_BeginAsyncRequestFakeIP(IntPtr instancePtr, int nNumPorts); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingSockets_GetFakeIP", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamNetworkingSockets_GetFakeIP(IntPtr instancePtr, int idxFirstPort, out SteamNetworkingFakeIPResult_t pInfo); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingSockets_CreateListenSocketP2PFakeIP", CallingConvention = CallingConvention.Cdecl)] + + public static extern uint ISteamNetworkingSockets_CreateListenSocketP2PFakeIP(IntPtr instancePtr, int idxFakePort, int nOptions, [In, Out] SteamNetworkingConfigValue_t[] pOptions); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingSockets_GetRemoteFakeIPForConnection", CallingConvention = CallingConvention.Cdecl)] + + public static extern EResult ISteamNetworkingSockets_GetRemoteFakeIPForConnection(IntPtr instancePtr, HSteamNetConnection hConn, out SteamNetworkingIPAddr pOutAddr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingSockets_CreateFakeUDPPort", CallingConvention = CallingConvention.Cdecl)] + + public static extern IntPtr ISteamNetworkingSockets_CreateFakeUDPPort(IntPtr instancePtr, int idxFakeServerPort); + +#endregion +#region SteamNetworkingUtils + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingUtils_AllocateMessage", CallingConvention = CallingConvention.Cdecl)] + + public static extern IntPtr ISteamNetworkingUtils_AllocateMessage(IntPtr instancePtr, int cbAllocateBuffer); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingUtils_InitRelayNetworkAccess", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamNetworkingUtils_InitRelayNetworkAccess(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingUtils_GetRelayNetworkStatus", CallingConvention = CallingConvention.Cdecl)] + + public static extern ESteamNetworkingAvailability ISteamNetworkingUtils_GetRelayNetworkStatus(IntPtr instancePtr, out SteamRelayNetworkStatus_t pDetails); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingUtils_GetLocalPingLocation", CallingConvention = CallingConvention.Cdecl)] + + public static extern float ISteamNetworkingUtils_GetLocalPingLocation(IntPtr instancePtr, out SteamNetworkPingLocation_t result); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingUtils_EstimatePingTimeBetweenTwoLocations", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamNetworkingUtils_EstimatePingTimeBetweenTwoLocations(IntPtr instancePtr, ref SteamNetworkPingLocation_t location1, ref SteamNetworkPingLocation_t location2); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingUtils_EstimatePingTimeFromLocalHost", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamNetworkingUtils_EstimatePingTimeFromLocalHost(IntPtr instancePtr, ref SteamNetworkPingLocation_t remoteLocation); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingUtils_ConvertPingLocationToString", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamNetworkingUtils_ConvertPingLocationToString(IntPtr instancePtr, ref SteamNetworkPingLocation_t location, IntPtr pszBuf, int cchBufSize); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingUtils_ParsePingLocationString", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamNetworkingUtils_ParsePingLocationString(IntPtr instancePtr, InteropHelp.UTF8StringHandle pszString, out SteamNetworkPingLocation_t result); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingUtils_CheckPingDataUpToDate", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamNetworkingUtils_CheckPingDataUpToDate(IntPtr instancePtr, float flMaxAgeSeconds); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingUtils_GetPingToDataCenter", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamNetworkingUtils_GetPingToDataCenter(IntPtr instancePtr, SteamNetworkingPOPID popID, out SteamNetworkingPOPID pViaRelayPoP); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingUtils_GetDirectPingToPOP", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamNetworkingUtils_GetDirectPingToPOP(IntPtr instancePtr, SteamNetworkingPOPID popID); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingUtils_GetPOPCount", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamNetworkingUtils_GetPOPCount(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingUtils_GetPOPList", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamNetworkingUtils_GetPOPList(IntPtr instancePtr, out SteamNetworkingPOPID list, int nListSz); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingUtils_GetLocalTimestamp", CallingConvention = CallingConvention.Cdecl)] + + public static extern long ISteamNetworkingUtils_GetLocalTimestamp(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingUtils_SetDebugOutputFunction", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamNetworkingUtils_SetDebugOutputFunction(IntPtr instancePtr, ESteamNetworkingSocketsDebugOutputType eDetailLevel, FSteamNetworkingSocketsDebugOutput pfnFunc); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingUtils_IsFakeIPv4", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamNetworkingUtils_IsFakeIPv4(IntPtr instancePtr, uint nIPv4); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingUtils_GetIPv4FakeIPType", CallingConvention = CallingConvention.Cdecl)] + + public static extern ESteamNetworkingFakeIPType ISteamNetworkingUtils_GetIPv4FakeIPType(IntPtr instancePtr, uint nIPv4); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingUtils_GetRealIdentityForFakeIP", CallingConvention = CallingConvention.Cdecl)] + + public static extern EResult ISteamNetworkingUtils_GetRealIdentityForFakeIP(IntPtr instancePtr, ref SteamNetworkingIPAddr fakeIP, out SteamNetworkingIdentity pOutRealIdentity); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingUtils_SetConfigValue", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamNetworkingUtils_SetConfigValue(IntPtr instancePtr, ESteamNetworkingConfigValue eValue, ESteamNetworkingConfigScope eScopeType, IntPtr scopeObj, ESteamNetworkingConfigDataType eDataType, IntPtr pArg); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingUtils_GetConfigValue", CallingConvention = CallingConvention.Cdecl)] + + public static extern ESteamNetworkingGetConfigValueResult ISteamNetworkingUtils_GetConfigValue(IntPtr instancePtr, ESteamNetworkingConfigValue eValue, ESteamNetworkingConfigScope eScopeType, IntPtr scopeObj, out ESteamNetworkingConfigDataType pOutDataType, IntPtr pResult, ref ulong cbResult); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingUtils_GetConfigValueInfo", CallingConvention = CallingConvention.Cdecl)] + + public static extern IntPtr ISteamNetworkingUtils_GetConfigValueInfo(IntPtr instancePtr, ESteamNetworkingConfigValue eValue, out ESteamNetworkingConfigDataType pOutDataType, out ESteamNetworkingConfigScope pOutScope); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingUtils_IterateGenericEditableConfigValues", CallingConvention = CallingConvention.Cdecl)] + + public static extern ESteamNetworkingConfigValue ISteamNetworkingUtils_IterateGenericEditableConfigValues(IntPtr instancePtr, ESteamNetworkingConfigValue eCurrent, [MarshalAs(UnmanagedType.I1)] bool bEnumerateDevVars); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingUtils_SteamNetworkingIPAddr_ToString", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamNetworkingUtils_SteamNetworkingIPAddr_ToString(IntPtr instancePtr, ref SteamNetworkingIPAddr addr, IntPtr buf, uint cbBuf, [MarshalAs(UnmanagedType.I1)] bool bWithPort); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingUtils_SteamNetworkingIPAddr_ParseString", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamNetworkingUtils_SteamNetworkingIPAddr_ParseString(IntPtr instancePtr, out SteamNetworkingIPAddr pAddr, InteropHelp.UTF8StringHandle pszStr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingUtils_SteamNetworkingIPAddr_GetFakeIPType", CallingConvention = CallingConvention.Cdecl)] + + public static extern ESteamNetworkingFakeIPType ISteamNetworkingUtils_SteamNetworkingIPAddr_GetFakeIPType(IntPtr instancePtr, ref SteamNetworkingIPAddr addr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingUtils_SteamNetworkingIdentity_ToString", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamNetworkingUtils_SteamNetworkingIdentity_ToString(IntPtr instancePtr, ref SteamNetworkingIdentity identity, IntPtr buf, uint cbBuf); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingUtils_SteamNetworkingIdentity_ParseString", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamNetworkingUtils_SteamNetworkingIdentity_ParseString(IntPtr instancePtr, out SteamNetworkingIdentity pIdentity, InteropHelp.UTF8StringHandle pszStr); + +#endregion +#region SteamParentalSettings + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamParentalSettings_BIsParentalLockEnabled", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamParentalSettings_BIsParentalLockEnabled(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamParentalSettings_BIsParentalLockLocked", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamParentalSettings_BIsParentalLockLocked(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamParentalSettings_BIsAppBlocked", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamParentalSettings_BIsAppBlocked(IntPtr instancePtr, AppId_t nAppID); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamParentalSettings_BIsAppInBlockList", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamParentalSettings_BIsAppInBlockList(IntPtr instancePtr, AppId_t nAppID); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamParentalSettings_BIsFeatureBlocked", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamParentalSettings_BIsFeatureBlocked(IntPtr instancePtr, EParentalFeature eFeature); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamParentalSettings_BIsFeatureInBlockList", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamParentalSettings_BIsFeatureInBlockList(IntPtr instancePtr, EParentalFeature eFeature); + +#endregion +#region SteamRemotePlay + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamRemotePlay_GetSessionCount", CallingConvention = CallingConvention.Cdecl)] + + public static extern uint ISteamRemotePlay_GetSessionCount(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamRemotePlay_GetSessionID", CallingConvention = CallingConvention.Cdecl)] + + public static extern uint ISteamRemotePlay_GetSessionID(IntPtr instancePtr, int iSessionIndex); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamRemotePlay_GetSessionSteamID", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamRemotePlay_GetSessionSteamID(IntPtr instancePtr, RemotePlaySessionID_t unSessionID); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamRemotePlay_GetSessionClientName", CallingConvention = CallingConvention.Cdecl)] + + public static extern IntPtr ISteamRemotePlay_GetSessionClientName(IntPtr instancePtr, RemotePlaySessionID_t unSessionID); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamRemotePlay_GetSessionClientFormFactor", CallingConvention = CallingConvention.Cdecl)] + + public static extern ESteamDeviceFormFactor ISteamRemotePlay_GetSessionClientFormFactor(IntPtr instancePtr, RemotePlaySessionID_t unSessionID); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamRemotePlay_BGetSessionClientResolution", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamRemotePlay_BGetSessionClientResolution(IntPtr instancePtr, RemotePlaySessionID_t unSessionID, out int pnResolutionX, out int pnResolutionY); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamRemotePlay_BStartRemotePlayTogether", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamRemotePlay_BStartRemotePlayTogether(IntPtr instancePtr, [MarshalAs(UnmanagedType.I1)] bool bShowOverlay); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamRemotePlay_BSendRemotePlayTogetherInvite", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamRemotePlay_BSendRemotePlayTogetherInvite(IntPtr instancePtr, CSteamID steamIDFriend); + +#endregion +#region SteamRemoteStorage + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamRemoteStorage_FileWrite", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamRemoteStorage_FileWrite(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchFile, byte[] pvData, int cubData); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamRemoteStorage_FileRead", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamRemoteStorage_FileRead(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchFile, byte[] pvData, int cubDataToRead); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamRemoteStorage_FileWriteAsync", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamRemoteStorage_FileWriteAsync(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchFile, byte[] pvData, uint cubData); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamRemoteStorage_FileReadAsync", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamRemoteStorage_FileReadAsync(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchFile, uint nOffset, uint cubToRead); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamRemoteStorage_FileReadAsyncComplete", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamRemoteStorage_FileReadAsyncComplete(IntPtr instancePtr, SteamAPICall_t hReadCall, byte[] pvBuffer, uint cubToRead); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamRemoteStorage_FileForget", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamRemoteStorage_FileForget(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchFile); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamRemoteStorage_FileDelete", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamRemoteStorage_FileDelete(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchFile); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamRemoteStorage_FileShare", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamRemoteStorage_FileShare(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchFile); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamRemoteStorage_SetSyncPlatforms", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamRemoteStorage_SetSyncPlatforms(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchFile, ERemoteStoragePlatform eRemoteStoragePlatform); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamRemoteStorage_FileWriteStreamOpen", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamRemoteStorage_FileWriteStreamOpen(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchFile); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamRemoteStorage_FileWriteStreamWriteChunk", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamRemoteStorage_FileWriteStreamWriteChunk(IntPtr instancePtr, UGCFileWriteStreamHandle_t writeHandle, byte[] pvData, int cubData); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamRemoteStorage_FileWriteStreamClose", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamRemoteStorage_FileWriteStreamClose(IntPtr instancePtr, UGCFileWriteStreamHandle_t writeHandle); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamRemoteStorage_FileWriteStreamCancel", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamRemoteStorage_FileWriteStreamCancel(IntPtr instancePtr, UGCFileWriteStreamHandle_t writeHandle); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamRemoteStorage_FileExists", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamRemoteStorage_FileExists(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchFile); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamRemoteStorage_FilePersisted", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamRemoteStorage_FilePersisted(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchFile); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamRemoteStorage_GetFileSize", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamRemoteStorage_GetFileSize(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchFile); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamRemoteStorage_GetFileTimestamp", CallingConvention = CallingConvention.Cdecl)] + + public static extern long ISteamRemoteStorage_GetFileTimestamp(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchFile); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamRemoteStorage_GetSyncPlatforms", CallingConvention = CallingConvention.Cdecl)] + + public static extern ERemoteStoragePlatform ISteamRemoteStorage_GetSyncPlatforms(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchFile); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamRemoteStorage_GetFileCount", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamRemoteStorage_GetFileCount(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamRemoteStorage_GetFileNameAndSize", CallingConvention = CallingConvention.Cdecl)] + + public static extern IntPtr ISteamRemoteStorage_GetFileNameAndSize(IntPtr instancePtr, int iFile, out int pnFileSizeInBytes); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamRemoteStorage_GetQuota", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamRemoteStorage_GetQuota(IntPtr instancePtr, out ulong pnTotalBytes, out ulong puAvailableBytes); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamRemoteStorage_IsCloudEnabledForAccount", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamRemoteStorage_IsCloudEnabledForAccount(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamRemoteStorage_IsCloudEnabledForApp", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamRemoteStorage_IsCloudEnabledForApp(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamRemoteStorage_SetCloudEnabledForApp", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamRemoteStorage_SetCloudEnabledForApp(IntPtr instancePtr, [MarshalAs(UnmanagedType.I1)] bool bEnabled); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamRemoteStorage_UGCDownload", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamRemoteStorage_UGCDownload(IntPtr instancePtr, UGCHandle_t hContent, uint unPriority); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamRemoteStorage_GetUGCDownloadProgress", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamRemoteStorage_GetUGCDownloadProgress(IntPtr instancePtr, UGCHandle_t hContent, out int pnBytesDownloaded, out int pnBytesExpected); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamRemoteStorage_GetUGCDetails", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamRemoteStorage_GetUGCDetails(IntPtr instancePtr, UGCHandle_t hContent, out AppId_t pnAppID, out IntPtr ppchName, out int pnFileSizeInBytes, out CSteamID pSteamIDOwner); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamRemoteStorage_UGCRead", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamRemoteStorage_UGCRead(IntPtr instancePtr, UGCHandle_t hContent, byte[] pvData, int cubDataToRead, uint cOffset, EUGCReadAction eAction); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamRemoteStorage_GetCachedUGCCount", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamRemoteStorage_GetCachedUGCCount(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamRemoteStorage_GetCachedUGCHandle", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamRemoteStorage_GetCachedUGCHandle(IntPtr instancePtr, int iCachedContent); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamRemoteStorage_PublishWorkshopFile", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamRemoteStorage_PublishWorkshopFile(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchFile, InteropHelp.UTF8StringHandle pchPreviewFile, AppId_t nConsumerAppId, InteropHelp.UTF8StringHandle pchTitle, InteropHelp.UTF8StringHandle pchDescription, ERemoteStoragePublishedFileVisibility eVisibility, IntPtr pTags, EWorkshopFileType eWorkshopFileType); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamRemoteStorage_CreatePublishedFileUpdateRequest", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamRemoteStorage_CreatePublishedFileUpdateRequest(IntPtr instancePtr, PublishedFileId_t unPublishedFileId); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamRemoteStorage_UpdatePublishedFileFile", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamRemoteStorage_UpdatePublishedFileFile(IntPtr instancePtr, PublishedFileUpdateHandle_t updateHandle, InteropHelp.UTF8StringHandle pchFile); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamRemoteStorage_UpdatePublishedFilePreviewFile", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamRemoteStorage_UpdatePublishedFilePreviewFile(IntPtr instancePtr, PublishedFileUpdateHandle_t updateHandle, InteropHelp.UTF8StringHandle pchPreviewFile); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamRemoteStorage_UpdatePublishedFileTitle", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamRemoteStorage_UpdatePublishedFileTitle(IntPtr instancePtr, PublishedFileUpdateHandle_t updateHandle, InteropHelp.UTF8StringHandle pchTitle); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamRemoteStorage_UpdatePublishedFileDescription", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamRemoteStorage_UpdatePublishedFileDescription(IntPtr instancePtr, PublishedFileUpdateHandle_t updateHandle, InteropHelp.UTF8StringHandle pchDescription); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamRemoteStorage_UpdatePublishedFileVisibility", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamRemoteStorage_UpdatePublishedFileVisibility(IntPtr instancePtr, PublishedFileUpdateHandle_t updateHandle, ERemoteStoragePublishedFileVisibility eVisibility); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamRemoteStorage_UpdatePublishedFileTags", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamRemoteStorage_UpdatePublishedFileTags(IntPtr instancePtr, PublishedFileUpdateHandle_t updateHandle, IntPtr pTags); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamRemoteStorage_CommitPublishedFileUpdate", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamRemoteStorage_CommitPublishedFileUpdate(IntPtr instancePtr, PublishedFileUpdateHandle_t updateHandle); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamRemoteStorage_GetPublishedFileDetails", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamRemoteStorage_GetPublishedFileDetails(IntPtr instancePtr, PublishedFileId_t unPublishedFileId, uint unMaxSecondsOld); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamRemoteStorage_DeletePublishedFile", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamRemoteStorage_DeletePublishedFile(IntPtr instancePtr, PublishedFileId_t unPublishedFileId); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamRemoteStorage_EnumerateUserPublishedFiles", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamRemoteStorage_EnumerateUserPublishedFiles(IntPtr instancePtr, uint unStartIndex); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamRemoteStorage_SubscribePublishedFile", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamRemoteStorage_SubscribePublishedFile(IntPtr instancePtr, PublishedFileId_t unPublishedFileId); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamRemoteStorage_EnumerateUserSubscribedFiles", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamRemoteStorage_EnumerateUserSubscribedFiles(IntPtr instancePtr, uint unStartIndex); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamRemoteStorage_UnsubscribePublishedFile", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamRemoteStorage_UnsubscribePublishedFile(IntPtr instancePtr, PublishedFileId_t unPublishedFileId); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamRemoteStorage_UpdatePublishedFileSetChangeDescription", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamRemoteStorage_UpdatePublishedFileSetChangeDescription(IntPtr instancePtr, PublishedFileUpdateHandle_t updateHandle, InteropHelp.UTF8StringHandle pchChangeDescription); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamRemoteStorage_GetPublishedItemVoteDetails", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamRemoteStorage_GetPublishedItemVoteDetails(IntPtr instancePtr, PublishedFileId_t unPublishedFileId); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamRemoteStorage_UpdateUserPublishedItemVote", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamRemoteStorage_UpdateUserPublishedItemVote(IntPtr instancePtr, PublishedFileId_t unPublishedFileId, [MarshalAs(UnmanagedType.I1)] bool bVoteUp); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamRemoteStorage_GetUserPublishedItemVoteDetails", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamRemoteStorage_GetUserPublishedItemVoteDetails(IntPtr instancePtr, PublishedFileId_t unPublishedFileId); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamRemoteStorage_EnumerateUserSharedWorkshopFiles", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamRemoteStorage_EnumerateUserSharedWorkshopFiles(IntPtr instancePtr, CSteamID steamId, uint unStartIndex, IntPtr pRequiredTags, IntPtr pExcludedTags); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamRemoteStorage_PublishVideo", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamRemoteStorage_PublishVideo(IntPtr instancePtr, EWorkshopVideoProvider eVideoProvider, InteropHelp.UTF8StringHandle pchVideoAccount, InteropHelp.UTF8StringHandle pchVideoIdentifier, InteropHelp.UTF8StringHandle pchPreviewFile, AppId_t nConsumerAppId, InteropHelp.UTF8StringHandle pchTitle, InteropHelp.UTF8StringHandle pchDescription, ERemoteStoragePublishedFileVisibility eVisibility, IntPtr pTags); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamRemoteStorage_SetUserPublishedFileAction", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamRemoteStorage_SetUserPublishedFileAction(IntPtr instancePtr, PublishedFileId_t unPublishedFileId, EWorkshopFileAction eAction); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamRemoteStorage_EnumeratePublishedFilesByUserAction", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamRemoteStorage_EnumeratePublishedFilesByUserAction(IntPtr instancePtr, EWorkshopFileAction eAction, uint unStartIndex); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamRemoteStorage_EnumeratePublishedWorkshopFiles", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamRemoteStorage_EnumeratePublishedWorkshopFiles(IntPtr instancePtr, EWorkshopEnumerationType eEnumerationType, uint unStartIndex, uint unCount, uint unDays, IntPtr pTags, IntPtr pUserTags); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamRemoteStorage_UGCDownloadToLocation", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamRemoteStorage_UGCDownloadToLocation(IntPtr instancePtr, UGCHandle_t hContent, InteropHelp.UTF8StringHandle pchLocation, uint unPriority); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamRemoteStorage_GetLocalFileChangeCount", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamRemoteStorage_GetLocalFileChangeCount(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamRemoteStorage_GetLocalFileChange", CallingConvention = CallingConvention.Cdecl)] + + public static extern IntPtr ISteamRemoteStorage_GetLocalFileChange(IntPtr instancePtr, int iFile, out ERemoteStorageLocalFileChange pEChangeType, out ERemoteStorageFilePathType pEFilePathType); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamRemoteStorage_BeginFileWriteBatch", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamRemoteStorage_BeginFileWriteBatch(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamRemoteStorage_EndFileWriteBatch", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamRemoteStorage_EndFileWriteBatch(IntPtr instancePtr); + +#endregion +#region SteamScreenshots + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamScreenshots_WriteScreenshot", CallingConvention = CallingConvention.Cdecl)] + + public static extern uint ISteamScreenshots_WriteScreenshot(IntPtr instancePtr, byte[] pubRGB, uint cubRGB, int nWidth, int nHeight); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamScreenshots_AddScreenshotToLibrary", CallingConvention = CallingConvention.Cdecl)] + + public static extern uint ISteamScreenshots_AddScreenshotToLibrary(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchFilename, InteropHelp.UTF8StringHandle pchThumbnailFilename, int nWidth, int nHeight); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamScreenshots_TriggerScreenshot", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamScreenshots_TriggerScreenshot(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamScreenshots_HookScreenshots", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamScreenshots_HookScreenshots(IntPtr instancePtr, [MarshalAs(UnmanagedType.I1)] bool bHook); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamScreenshots_SetLocation", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamScreenshots_SetLocation(IntPtr instancePtr, ScreenshotHandle hScreenshot, InteropHelp.UTF8StringHandle pchLocation); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamScreenshots_TagUser", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamScreenshots_TagUser(IntPtr instancePtr, ScreenshotHandle hScreenshot, CSteamID steamID); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamScreenshots_TagPublishedFile", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamScreenshots_TagPublishedFile(IntPtr instancePtr, ScreenshotHandle hScreenshot, PublishedFileId_t unPublishedFileID); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamScreenshots_IsScreenshotsHooked", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamScreenshots_IsScreenshotsHooked(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamScreenshots_AddVRScreenshotToLibrary", CallingConvention = CallingConvention.Cdecl)] + + public static extern uint ISteamScreenshots_AddVRScreenshotToLibrary(IntPtr instancePtr, EVRScreenshotType eType, InteropHelp.UTF8StringHandle pchFilename, InteropHelp.UTF8StringHandle pchVRFilename); + +#endregion +#region SteamTimeline + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamTimeline_SetTimelineTooltip", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamTimeline_SetTimelineTooltip(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchDescription, float flTimeDelta); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamTimeline_ClearTimelineTooltip", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamTimeline_ClearTimelineTooltip(IntPtr instancePtr, float flTimeDelta); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamTimeline_SetTimelineGameMode", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamTimeline_SetTimelineGameMode(IntPtr instancePtr, ETimelineGameMode eMode); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamTimeline_AddInstantaneousTimelineEvent", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamTimeline_AddInstantaneousTimelineEvent(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchTitle, InteropHelp.UTF8StringHandle pchDescription, InteropHelp.UTF8StringHandle pchIcon, uint unIconPriority, float flStartOffsetSeconds, ETimelineEventClipPriority ePossibleClip); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamTimeline_AddRangeTimelineEvent", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamTimeline_AddRangeTimelineEvent(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchTitle, InteropHelp.UTF8StringHandle pchDescription, InteropHelp.UTF8StringHandle pchIcon, uint unIconPriority, float flStartOffsetSeconds, float flDuration, ETimelineEventClipPriority ePossibleClip); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamTimeline_StartRangeTimelineEvent", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamTimeline_StartRangeTimelineEvent(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchTitle, InteropHelp.UTF8StringHandle pchDescription, InteropHelp.UTF8StringHandle pchIcon, uint unPriority, float flStartOffsetSeconds, ETimelineEventClipPriority ePossibleClip); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamTimeline_UpdateRangeTimelineEvent", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamTimeline_UpdateRangeTimelineEvent(IntPtr instancePtr, TimelineEventHandle_t ulEvent, InteropHelp.UTF8StringHandle pchTitle, InteropHelp.UTF8StringHandle pchDescription, InteropHelp.UTF8StringHandle pchIcon, uint unPriority, ETimelineEventClipPriority ePossibleClip); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamTimeline_EndRangeTimelineEvent", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamTimeline_EndRangeTimelineEvent(IntPtr instancePtr, TimelineEventHandle_t ulEvent, float flEndOffsetSeconds); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamTimeline_RemoveTimelineEvent", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamTimeline_RemoveTimelineEvent(IntPtr instancePtr, TimelineEventHandle_t ulEvent); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamTimeline_DoesEventRecordingExist", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamTimeline_DoesEventRecordingExist(IntPtr instancePtr, TimelineEventHandle_t ulEvent); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamTimeline_StartGamePhase", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamTimeline_StartGamePhase(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamTimeline_EndGamePhase", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamTimeline_EndGamePhase(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamTimeline_SetGamePhaseID", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamTimeline_SetGamePhaseID(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchPhaseID); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamTimeline_DoesGamePhaseRecordingExist", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamTimeline_DoesGamePhaseRecordingExist(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchPhaseID); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamTimeline_AddGamePhaseTag", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamTimeline_AddGamePhaseTag(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchTagName, InteropHelp.UTF8StringHandle pchTagIcon, InteropHelp.UTF8StringHandle pchTagGroup, uint unPriority); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamTimeline_SetGamePhaseAttribute", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamTimeline_SetGamePhaseAttribute(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchAttributeGroup, InteropHelp.UTF8StringHandle pchAttributeValue, uint unPriority); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamTimeline_OpenOverlayToGamePhase", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamTimeline_OpenOverlayToGamePhase(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchPhaseID); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamTimeline_OpenOverlayToTimelineEvent", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamTimeline_OpenOverlayToTimelineEvent(IntPtr instancePtr, TimelineEventHandle_t ulEvent); + +#endregion +#region SteamUGC + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_CreateQueryUserUGCRequest", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamUGC_CreateQueryUserUGCRequest(IntPtr instancePtr, AccountID_t unAccountID, EUserUGCList eListType, EUGCMatchingUGCType eMatchingUGCType, EUserUGCListSortOrder eSortOrder, AppId_t nCreatorAppID, AppId_t nConsumerAppID, uint unPage); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_CreateQueryAllUGCRequestPage", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamUGC_CreateQueryAllUGCRequestPage(IntPtr instancePtr, EUGCQuery eQueryType, EUGCMatchingUGCType eMatchingeMatchingUGCTypeFileType, AppId_t nCreatorAppID, AppId_t nConsumerAppID, uint unPage); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_CreateQueryAllUGCRequestCursor", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamUGC_CreateQueryAllUGCRequestCursor(IntPtr instancePtr, EUGCQuery eQueryType, EUGCMatchingUGCType eMatchingeMatchingUGCTypeFileType, AppId_t nCreatorAppID, AppId_t nConsumerAppID, InteropHelp.UTF8StringHandle pchCursor); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_CreateQueryUGCDetailsRequest", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamUGC_CreateQueryUGCDetailsRequest(IntPtr instancePtr, [In, Out] PublishedFileId_t[] pvecPublishedFileID, uint unNumPublishedFileIDs); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_SendQueryUGCRequest", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamUGC_SendQueryUGCRequest(IntPtr instancePtr, UGCQueryHandle_t handle); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_GetQueryUGCResult", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUGC_GetQueryUGCResult(IntPtr instancePtr, UGCQueryHandle_t handle, uint index, out SteamUGCDetails_t pDetails); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_GetQueryUGCNumTags", CallingConvention = CallingConvention.Cdecl)] + + public static extern uint ISteamUGC_GetQueryUGCNumTags(IntPtr instancePtr, UGCQueryHandle_t handle, uint index); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_GetQueryUGCTag", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUGC_GetQueryUGCTag(IntPtr instancePtr, UGCQueryHandle_t handle, uint index, uint indexTag, IntPtr pchValue, uint cchValueSize); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_GetQueryUGCTagDisplayName", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUGC_GetQueryUGCTagDisplayName(IntPtr instancePtr, UGCQueryHandle_t handle, uint index, uint indexTag, IntPtr pchValue, uint cchValueSize); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_GetQueryUGCPreviewURL", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUGC_GetQueryUGCPreviewURL(IntPtr instancePtr, UGCQueryHandle_t handle, uint index, IntPtr pchURL, uint cchURLSize); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_GetQueryUGCMetadata", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUGC_GetQueryUGCMetadata(IntPtr instancePtr, UGCQueryHandle_t handle, uint index, IntPtr pchMetadata, uint cchMetadatasize); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_GetQueryUGCChildren", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUGC_GetQueryUGCChildren(IntPtr instancePtr, UGCQueryHandle_t handle, uint index, [In, Out] PublishedFileId_t[] pvecPublishedFileID, uint cMaxEntries); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_GetQueryUGCStatistic", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUGC_GetQueryUGCStatistic(IntPtr instancePtr, UGCQueryHandle_t handle, uint index, EItemStatistic eStatType, out ulong pStatValue); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_GetQueryUGCNumAdditionalPreviews", CallingConvention = CallingConvention.Cdecl)] + + public static extern uint ISteamUGC_GetQueryUGCNumAdditionalPreviews(IntPtr instancePtr, UGCQueryHandle_t handle, uint index); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_GetQueryUGCAdditionalPreview", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUGC_GetQueryUGCAdditionalPreview(IntPtr instancePtr, UGCQueryHandle_t handle, uint index, uint previewIndex, IntPtr pchURLOrVideoID, uint cchURLSize, IntPtr pchOriginalFileName, uint cchOriginalFileNameSize, out EItemPreviewType pPreviewType); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_GetQueryUGCNumKeyValueTags", CallingConvention = CallingConvention.Cdecl)] + + public static extern uint ISteamUGC_GetQueryUGCNumKeyValueTags(IntPtr instancePtr, UGCQueryHandle_t handle, uint index); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_GetQueryUGCKeyValueTag", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUGC_GetQueryUGCKeyValueTag(IntPtr instancePtr, UGCQueryHandle_t handle, uint index, uint keyValueTagIndex, IntPtr pchKey, uint cchKeySize, IntPtr pchValue, uint cchValueSize); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_GetQueryFirstUGCKeyValueTag", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUGC_GetQueryFirstUGCKeyValueTag(IntPtr instancePtr, UGCQueryHandle_t handle, uint index, InteropHelp.UTF8StringHandle pchKey, IntPtr pchValue, uint cchValueSize); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_GetNumSupportedGameVersions", CallingConvention = CallingConvention.Cdecl)] + + public static extern uint ISteamUGC_GetNumSupportedGameVersions(IntPtr instancePtr, UGCQueryHandle_t handle, uint index); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_GetSupportedGameVersionData", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUGC_GetSupportedGameVersionData(IntPtr instancePtr, UGCQueryHandle_t handle, uint index, uint versionIndex, IntPtr pchGameBranchMin, IntPtr pchGameBranchMax, uint cchGameBranchSize); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_GetQueryUGCContentDescriptors", CallingConvention = CallingConvention.Cdecl)] + + public static extern uint ISteamUGC_GetQueryUGCContentDescriptors(IntPtr instancePtr, UGCQueryHandle_t handle, uint index, [In, Out] EUGCContentDescriptorID[] pvecDescriptors, uint cMaxEntries); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_ReleaseQueryUGCRequest", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUGC_ReleaseQueryUGCRequest(IntPtr instancePtr, UGCQueryHandle_t handle); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_AddRequiredTag", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUGC_AddRequiredTag(IntPtr instancePtr, UGCQueryHandle_t handle, InteropHelp.UTF8StringHandle pTagName); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_AddRequiredTagGroup", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUGC_AddRequiredTagGroup(IntPtr instancePtr, UGCQueryHandle_t handle, IntPtr pTagGroups); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_AddExcludedTag", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUGC_AddExcludedTag(IntPtr instancePtr, UGCQueryHandle_t handle, InteropHelp.UTF8StringHandle pTagName); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_SetReturnOnlyIDs", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUGC_SetReturnOnlyIDs(IntPtr instancePtr, UGCQueryHandle_t handle, [MarshalAs(UnmanagedType.I1)] bool bReturnOnlyIDs); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_SetReturnKeyValueTags", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUGC_SetReturnKeyValueTags(IntPtr instancePtr, UGCQueryHandle_t handle, [MarshalAs(UnmanagedType.I1)] bool bReturnKeyValueTags); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_SetReturnLongDescription", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUGC_SetReturnLongDescription(IntPtr instancePtr, UGCQueryHandle_t handle, [MarshalAs(UnmanagedType.I1)] bool bReturnLongDescription); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_SetReturnMetadata", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUGC_SetReturnMetadata(IntPtr instancePtr, UGCQueryHandle_t handle, [MarshalAs(UnmanagedType.I1)] bool bReturnMetadata); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_SetReturnChildren", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUGC_SetReturnChildren(IntPtr instancePtr, UGCQueryHandle_t handle, [MarshalAs(UnmanagedType.I1)] bool bReturnChildren); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_SetReturnAdditionalPreviews", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUGC_SetReturnAdditionalPreviews(IntPtr instancePtr, UGCQueryHandle_t handle, [MarshalAs(UnmanagedType.I1)] bool bReturnAdditionalPreviews); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_SetReturnTotalOnly", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUGC_SetReturnTotalOnly(IntPtr instancePtr, UGCQueryHandle_t handle, [MarshalAs(UnmanagedType.I1)] bool bReturnTotalOnly); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_SetReturnPlaytimeStats", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUGC_SetReturnPlaytimeStats(IntPtr instancePtr, UGCQueryHandle_t handle, uint unDays); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_SetLanguage", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUGC_SetLanguage(IntPtr instancePtr, UGCQueryHandle_t handle, InteropHelp.UTF8StringHandle pchLanguage); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_SetAllowCachedResponse", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUGC_SetAllowCachedResponse(IntPtr instancePtr, UGCQueryHandle_t handle, uint unMaxAgeSeconds); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_SetAdminQuery", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUGC_SetAdminQuery(IntPtr instancePtr, UGCUpdateHandle_t handle, [MarshalAs(UnmanagedType.I1)] bool bAdminQuery); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_SetCloudFileNameFilter", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUGC_SetCloudFileNameFilter(IntPtr instancePtr, UGCQueryHandle_t handle, InteropHelp.UTF8StringHandle pMatchCloudFileName); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_SetMatchAnyTag", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUGC_SetMatchAnyTag(IntPtr instancePtr, UGCQueryHandle_t handle, [MarshalAs(UnmanagedType.I1)] bool bMatchAnyTag); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_SetSearchText", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUGC_SetSearchText(IntPtr instancePtr, UGCQueryHandle_t handle, InteropHelp.UTF8StringHandle pSearchText); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_SetRankedByTrendDays", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUGC_SetRankedByTrendDays(IntPtr instancePtr, UGCQueryHandle_t handle, uint unDays); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_SetTimeCreatedDateRange", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUGC_SetTimeCreatedDateRange(IntPtr instancePtr, UGCQueryHandle_t handle, uint rtStart, uint rtEnd); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_SetTimeUpdatedDateRange", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUGC_SetTimeUpdatedDateRange(IntPtr instancePtr, UGCQueryHandle_t handle, uint rtStart, uint rtEnd); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_AddRequiredKeyValueTag", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUGC_AddRequiredKeyValueTag(IntPtr instancePtr, UGCQueryHandle_t handle, InteropHelp.UTF8StringHandle pKey, InteropHelp.UTF8StringHandle pValue); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_RequestUGCDetails", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamUGC_RequestUGCDetails(IntPtr instancePtr, PublishedFileId_t nPublishedFileID, uint unMaxAgeSeconds); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_CreateItem", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamUGC_CreateItem(IntPtr instancePtr, AppId_t nConsumerAppId, EWorkshopFileType eFileType); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_StartItemUpdate", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamUGC_StartItemUpdate(IntPtr instancePtr, AppId_t nConsumerAppId, PublishedFileId_t nPublishedFileID); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_SetItemTitle", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUGC_SetItemTitle(IntPtr instancePtr, UGCUpdateHandle_t handle, InteropHelp.UTF8StringHandle pchTitle); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_SetItemDescription", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUGC_SetItemDescription(IntPtr instancePtr, UGCUpdateHandle_t handle, InteropHelp.UTF8StringHandle pchDescription); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_SetItemUpdateLanguage", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUGC_SetItemUpdateLanguage(IntPtr instancePtr, UGCUpdateHandle_t handle, InteropHelp.UTF8StringHandle pchLanguage); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_SetItemMetadata", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUGC_SetItemMetadata(IntPtr instancePtr, UGCUpdateHandle_t handle, InteropHelp.UTF8StringHandle pchMetaData); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_SetItemVisibility", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUGC_SetItemVisibility(IntPtr instancePtr, UGCUpdateHandle_t handle, ERemoteStoragePublishedFileVisibility eVisibility); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_SetItemTags", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUGC_SetItemTags(IntPtr instancePtr, UGCUpdateHandle_t updateHandle, IntPtr pTags, [MarshalAs(UnmanagedType.I1)] bool bAllowAdminTags); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_SetItemContent", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUGC_SetItemContent(IntPtr instancePtr, UGCUpdateHandle_t handle, InteropHelp.UTF8StringHandle pszContentFolder); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_SetItemPreview", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUGC_SetItemPreview(IntPtr instancePtr, UGCUpdateHandle_t handle, InteropHelp.UTF8StringHandle pszPreviewFile); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_SetAllowLegacyUpload", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUGC_SetAllowLegacyUpload(IntPtr instancePtr, UGCUpdateHandle_t handle, [MarshalAs(UnmanagedType.I1)] bool bAllowLegacyUpload); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_RemoveAllItemKeyValueTags", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUGC_RemoveAllItemKeyValueTags(IntPtr instancePtr, UGCUpdateHandle_t handle); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_RemoveItemKeyValueTags", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUGC_RemoveItemKeyValueTags(IntPtr instancePtr, UGCUpdateHandle_t handle, InteropHelp.UTF8StringHandle pchKey); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_AddItemKeyValueTag", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUGC_AddItemKeyValueTag(IntPtr instancePtr, UGCUpdateHandle_t handle, InteropHelp.UTF8StringHandle pchKey, InteropHelp.UTF8StringHandle pchValue); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_AddItemPreviewFile", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUGC_AddItemPreviewFile(IntPtr instancePtr, UGCUpdateHandle_t handle, InteropHelp.UTF8StringHandle pszPreviewFile, EItemPreviewType type); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_AddItemPreviewVideo", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUGC_AddItemPreviewVideo(IntPtr instancePtr, UGCUpdateHandle_t handle, InteropHelp.UTF8StringHandle pszVideoID); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_UpdateItemPreviewFile", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUGC_UpdateItemPreviewFile(IntPtr instancePtr, UGCUpdateHandle_t handle, uint index, InteropHelp.UTF8StringHandle pszPreviewFile); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_UpdateItemPreviewVideo", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUGC_UpdateItemPreviewVideo(IntPtr instancePtr, UGCUpdateHandle_t handle, uint index, InteropHelp.UTF8StringHandle pszVideoID); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_RemoveItemPreview", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUGC_RemoveItemPreview(IntPtr instancePtr, UGCUpdateHandle_t handle, uint index); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_AddContentDescriptor", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUGC_AddContentDescriptor(IntPtr instancePtr, UGCUpdateHandle_t handle, EUGCContentDescriptorID descid); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_RemoveContentDescriptor", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUGC_RemoveContentDescriptor(IntPtr instancePtr, UGCUpdateHandle_t handle, EUGCContentDescriptorID descid); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_SetRequiredGameVersions", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUGC_SetRequiredGameVersions(IntPtr instancePtr, UGCUpdateHandle_t handle, InteropHelp.UTF8StringHandle pszGameBranchMin, InteropHelp.UTF8StringHandle pszGameBranchMax); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_SubmitItemUpdate", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamUGC_SubmitItemUpdate(IntPtr instancePtr, UGCUpdateHandle_t handle, InteropHelp.UTF8StringHandle pchChangeNote); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_GetItemUpdateProgress", CallingConvention = CallingConvention.Cdecl)] + + public static extern EItemUpdateStatus ISteamUGC_GetItemUpdateProgress(IntPtr instancePtr, UGCUpdateHandle_t handle, out ulong punBytesProcessed, out ulong punBytesTotal); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_SetUserItemVote", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamUGC_SetUserItemVote(IntPtr instancePtr, PublishedFileId_t nPublishedFileID, [MarshalAs(UnmanagedType.I1)] bool bVoteUp); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_GetUserItemVote", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamUGC_GetUserItemVote(IntPtr instancePtr, PublishedFileId_t nPublishedFileID); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_AddItemToFavorites", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamUGC_AddItemToFavorites(IntPtr instancePtr, AppId_t nAppId, PublishedFileId_t nPublishedFileID); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_RemoveItemFromFavorites", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamUGC_RemoveItemFromFavorites(IntPtr instancePtr, AppId_t nAppId, PublishedFileId_t nPublishedFileID); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_SubscribeItem", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamUGC_SubscribeItem(IntPtr instancePtr, PublishedFileId_t nPublishedFileID); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_UnsubscribeItem", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamUGC_UnsubscribeItem(IntPtr instancePtr, PublishedFileId_t nPublishedFileID); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_GetNumSubscribedItems", CallingConvention = CallingConvention.Cdecl)] + + public static extern uint ISteamUGC_GetNumSubscribedItems(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_GetSubscribedItems", CallingConvention = CallingConvention.Cdecl)] + + public static extern uint ISteamUGC_GetSubscribedItems(IntPtr instancePtr, [In, Out] PublishedFileId_t[] pvecPublishedFileID, uint cMaxEntries); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_GetItemState", CallingConvention = CallingConvention.Cdecl)] + + public static extern uint ISteamUGC_GetItemState(IntPtr instancePtr, PublishedFileId_t nPublishedFileID); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_GetItemInstallInfo", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUGC_GetItemInstallInfo(IntPtr instancePtr, PublishedFileId_t nPublishedFileID, out ulong punSizeOnDisk, IntPtr pchFolder, uint cchFolderSize, out uint punTimeStamp); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_GetItemDownloadInfo", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUGC_GetItemDownloadInfo(IntPtr instancePtr, PublishedFileId_t nPublishedFileID, out ulong punBytesDownloaded, out ulong punBytesTotal); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_DownloadItem", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUGC_DownloadItem(IntPtr instancePtr, PublishedFileId_t nPublishedFileID, [MarshalAs(UnmanagedType.I1)] bool bHighPriority); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_BInitWorkshopForGameServer", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUGC_BInitWorkshopForGameServer(IntPtr instancePtr, DepotId_t unWorkshopDepotID, InteropHelp.UTF8StringHandle pszFolder); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_SuspendDownloads", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamUGC_SuspendDownloads(IntPtr instancePtr, [MarshalAs(UnmanagedType.I1)] bool bSuspend); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_StartPlaytimeTracking", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamUGC_StartPlaytimeTracking(IntPtr instancePtr, [In, Out] PublishedFileId_t[] pvecPublishedFileID, uint unNumPublishedFileIDs); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_StopPlaytimeTracking", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamUGC_StopPlaytimeTracking(IntPtr instancePtr, [In, Out] PublishedFileId_t[] pvecPublishedFileID, uint unNumPublishedFileIDs); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_StopPlaytimeTrackingForAllItems", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamUGC_StopPlaytimeTrackingForAllItems(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_AddDependency", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamUGC_AddDependency(IntPtr instancePtr, PublishedFileId_t nParentPublishedFileID, PublishedFileId_t nChildPublishedFileID); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_RemoveDependency", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamUGC_RemoveDependency(IntPtr instancePtr, PublishedFileId_t nParentPublishedFileID, PublishedFileId_t nChildPublishedFileID); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_AddAppDependency", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamUGC_AddAppDependency(IntPtr instancePtr, PublishedFileId_t nPublishedFileID, AppId_t nAppID); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_RemoveAppDependency", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamUGC_RemoveAppDependency(IntPtr instancePtr, PublishedFileId_t nPublishedFileID, AppId_t nAppID); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_GetAppDependencies", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamUGC_GetAppDependencies(IntPtr instancePtr, PublishedFileId_t nPublishedFileID); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_DeleteItem", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamUGC_DeleteItem(IntPtr instancePtr, PublishedFileId_t nPublishedFileID); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_ShowWorkshopEULA", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUGC_ShowWorkshopEULA(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_GetWorkshopEULAStatus", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamUGC_GetWorkshopEULAStatus(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_GetUserContentDescriptorPreferences", CallingConvention = CallingConvention.Cdecl)] + + public static extern uint ISteamUGC_GetUserContentDescriptorPreferences(IntPtr instancePtr, [In, Out] EUGCContentDescriptorID[] pvecDescriptors, uint cMaxEntries); + +#endregion +#region SteamUser + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUser_GetHSteamUser", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamUser_GetHSteamUser(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUser_BLoggedOn", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUser_BLoggedOn(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUser_GetSteamID", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamUser_GetSteamID(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUser_InitiateGameConnection_DEPRECATED", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamUser_InitiateGameConnection_DEPRECATED(IntPtr instancePtr, byte[] pAuthBlob, int cbMaxAuthBlob, CSteamID steamIDGameServer, uint unIPServer, ushort usPortServer, [MarshalAs(UnmanagedType.I1)] bool bSecure); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUser_TerminateGameConnection_DEPRECATED", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamUser_TerminateGameConnection_DEPRECATED(IntPtr instancePtr, uint unIPServer, ushort usPortServer); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUser_TrackAppUsageEvent", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamUser_TrackAppUsageEvent(IntPtr instancePtr, CGameID gameID, int eAppUsageEvent, InteropHelp.UTF8StringHandle pchExtraInfo); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUser_GetUserDataFolder", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUser_GetUserDataFolder(IntPtr instancePtr, IntPtr pchBuffer, int cubBuffer); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUser_StartVoiceRecording", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamUser_StartVoiceRecording(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUser_StopVoiceRecording", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamUser_StopVoiceRecording(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUser_GetAvailableVoice", CallingConvention = CallingConvention.Cdecl)] + + public static extern EVoiceResult ISteamUser_GetAvailableVoice(IntPtr instancePtr, out uint pcbCompressed, IntPtr pcbUncompressed_Deprecated, uint nUncompressedVoiceDesiredSampleRate_Deprecated); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUser_GetVoice", CallingConvention = CallingConvention.Cdecl)] + + public static extern EVoiceResult ISteamUser_GetVoice(IntPtr instancePtr, [MarshalAs(UnmanagedType.I1)] bool bWantCompressed, byte[] pDestBuffer, uint cbDestBufferSize, out uint nBytesWritten, [MarshalAs(UnmanagedType.I1)] bool bWantUncompressed_Deprecated, IntPtr pUncompressedDestBuffer_Deprecated, uint cbUncompressedDestBufferSize_Deprecated, IntPtr nUncompressBytesWritten_Deprecated, uint nUncompressedVoiceDesiredSampleRate_Deprecated); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUser_DecompressVoice", CallingConvention = CallingConvention.Cdecl)] + + public static extern EVoiceResult ISteamUser_DecompressVoice(IntPtr instancePtr, byte[] pCompressed, uint cbCompressed, byte[] pDestBuffer, uint cbDestBufferSize, out uint nBytesWritten, uint nDesiredSampleRate); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUser_GetVoiceOptimalSampleRate", CallingConvention = CallingConvention.Cdecl)] + + public static extern uint ISteamUser_GetVoiceOptimalSampleRate(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUser_GetAuthSessionTicket", CallingConvention = CallingConvention.Cdecl)] + + public static extern uint ISteamUser_GetAuthSessionTicket(IntPtr instancePtr, byte[] pTicket, int cbMaxTicket, out uint pcbTicket, ref SteamNetworkingIdentity pSteamNetworkingIdentity); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUser_GetAuthTicketForWebApi", CallingConvention = CallingConvention.Cdecl)] + + public static extern uint ISteamUser_GetAuthTicketForWebApi(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchIdentity); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUser_BeginAuthSession", CallingConvention = CallingConvention.Cdecl)] + + public static extern EBeginAuthSessionResult ISteamUser_BeginAuthSession(IntPtr instancePtr, byte[] pAuthTicket, int cbAuthTicket, CSteamID steamID); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUser_EndAuthSession", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamUser_EndAuthSession(IntPtr instancePtr, CSteamID steamID); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUser_CancelAuthTicket", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamUser_CancelAuthTicket(IntPtr instancePtr, HAuthTicket hAuthTicket); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUser_UserHasLicenseForApp", CallingConvention = CallingConvention.Cdecl)] + + public static extern EUserHasLicenseForAppResult ISteamUser_UserHasLicenseForApp(IntPtr instancePtr, CSteamID steamID, AppId_t appID); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUser_BIsBehindNAT", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUser_BIsBehindNAT(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUser_AdvertiseGame", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamUser_AdvertiseGame(IntPtr instancePtr, CSteamID steamIDGameServer, uint unIPServer, ushort usPortServer); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUser_RequestEncryptedAppTicket", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamUser_RequestEncryptedAppTicket(IntPtr instancePtr, byte[] pDataToInclude, int cbDataToInclude); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUser_GetEncryptedAppTicket", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUser_GetEncryptedAppTicket(IntPtr instancePtr, byte[] pTicket, int cbMaxTicket, out uint pcbTicket); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUser_GetGameBadgeLevel", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamUser_GetGameBadgeLevel(IntPtr instancePtr, int nSeries, [MarshalAs(UnmanagedType.I1)] bool bFoil); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUser_GetPlayerSteamLevel", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamUser_GetPlayerSteamLevel(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUser_RequestStoreAuthURL", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamUser_RequestStoreAuthURL(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchRedirectURL); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUser_BIsPhoneVerified", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUser_BIsPhoneVerified(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUser_BIsTwoFactorEnabled", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUser_BIsTwoFactorEnabled(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUser_BIsPhoneIdentifying", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUser_BIsPhoneIdentifying(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUser_BIsPhoneRequiringVerification", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUser_BIsPhoneRequiringVerification(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUser_GetMarketEligibility", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamUser_GetMarketEligibility(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUser_GetDurationControl", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamUser_GetDurationControl(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUser_BSetDurationControlOnlineState", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUser_BSetDurationControlOnlineState(IntPtr instancePtr, EDurationControlOnlineState eNewState); + +#endregion +#region SteamUserStats + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUserStats_GetStatInt32", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUserStats_GetStatInt32(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchName, out int pData); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUserStats_GetStatFloat", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUserStats_GetStatFloat(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchName, out float pData); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUserStats_SetStatInt32", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUserStats_SetStatInt32(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchName, int nData); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUserStats_SetStatFloat", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUserStats_SetStatFloat(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchName, float fData); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUserStats_UpdateAvgRateStat", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUserStats_UpdateAvgRateStat(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchName, float flCountThisSession, double dSessionLength); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUserStats_GetAchievement", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUserStats_GetAchievement(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchName, out bool pbAchieved); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUserStats_SetAchievement", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUserStats_SetAchievement(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchName); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUserStats_ClearAchievement", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUserStats_ClearAchievement(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchName); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUserStats_GetAchievementAndUnlockTime", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUserStats_GetAchievementAndUnlockTime(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchName, out bool pbAchieved, out uint punUnlockTime); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUserStats_StoreStats", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUserStats_StoreStats(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUserStats_GetAchievementIcon", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamUserStats_GetAchievementIcon(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchName); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUserStats_GetAchievementDisplayAttribute", CallingConvention = CallingConvention.Cdecl)] + + public static extern IntPtr ISteamUserStats_GetAchievementDisplayAttribute(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchName, InteropHelp.UTF8StringHandle pchKey); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUserStats_IndicateAchievementProgress", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUserStats_IndicateAchievementProgress(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchName, uint nCurProgress, uint nMaxProgress); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUserStats_GetNumAchievements", CallingConvention = CallingConvention.Cdecl)] + + public static extern uint ISteamUserStats_GetNumAchievements(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUserStats_GetAchievementName", CallingConvention = CallingConvention.Cdecl)] + + public static extern IntPtr ISteamUserStats_GetAchievementName(IntPtr instancePtr, uint iAchievement); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUserStats_RequestUserStats", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamUserStats_RequestUserStats(IntPtr instancePtr, CSteamID steamIDUser); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUserStats_GetUserStatInt32", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUserStats_GetUserStatInt32(IntPtr instancePtr, CSteamID steamIDUser, InteropHelp.UTF8StringHandle pchName, out int pData); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUserStats_GetUserStatFloat", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUserStats_GetUserStatFloat(IntPtr instancePtr, CSteamID steamIDUser, InteropHelp.UTF8StringHandle pchName, out float pData); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUserStats_GetUserAchievement", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUserStats_GetUserAchievement(IntPtr instancePtr, CSteamID steamIDUser, InteropHelp.UTF8StringHandle pchName, out bool pbAchieved); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUserStats_GetUserAchievementAndUnlockTime", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUserStats_GetUserAchievementAndUnlockTime(IntPtr instancePtr, CSteamID steamIDUser, InteropHelp.UTF8StringHandle pchName, out bool pbAchieved, out uint punUnlockTime); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUserStats_ResetAllStats", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUserStats_ResetAllStats(IntPtr instancePtr, [MarshalAs(UnmanagedType.I1)] bool bAchievementsToo); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUserStats_FindOrCreateLeaderboard", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamUserStats_FindOrCreateLeaderboard(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchLeaderboardName, ELeaderboardSortMethod eLeaderboardSortMethod, ELeaderboardDisplayType eLeaderboardDisplayType); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUserStats_FindLeaderboard", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamUserStats_FindLeaderboard(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchLeaderboardName); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUserStats_GetLeaderboardName", CallingConvention = CallingConvention.Cdecl)] + + public static extern IntPtr ISteamUserStats_GetLeaderboardName(IntPtr instancePtr, SteamLeaderboard_t hSteamLeaderboard); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUserStats_GetLeaderboardEntryCount", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamUserStats_GetLeaderboardEntryCount(IntPtr instancePtr, SteamLeaderboard_t hSteamLeaderboard); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUserStats_GetLeaderboardSortMethod", CallingConvention = CallingConvention.Cdecl)] + + public static extern ELeaderboardSortMethod ISteamUserStats_GetLeaderboardSortMethod(IntPtr instancePtr, SteamLeaderboard_t hSteamLeaderboard); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUserStats_GetLeaderboardDisplayType", CallingConvention = CallingConvention.Cdecl)] + + public static extern ELeaderboardDisplayType ISteamUserStats_GetLeaderboardDisplayType(IntPtr instancePtr, SteamLeaderboard_t hSteamLeaderboard); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUserStats_DownloadLeaderboardEntries", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamUserStats_DownloadLeaderboardEntries(IntPtr instancePtr, SteamLeaderboard_t hSteamLeaderboard, ELeaderboardDataRequest eLeaderboardDataRequest, int nRangeStart, int nRangeEnd); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUserStats_DownloadLeaderboardEntriesForUsers", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamUserStats_DownloadLeaderboardEntriesForUsers(IntPtr instancePtr, SteamLeaderboard_t hSteamLeaderboard, [In, Out] CSteamID[] prgUsers, int cUsers); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUserStats_GetDownloadedLeaderboardEntry", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUserStats_GetDownloadedLeaderboardEntry(IntPtr instancePtr, SteamLeaderboardEntries_t hSteamLeaderboardEntries, int index, out LeaderboardEntry_t pLeaderboardEntry, [In, Out] int[] pDetails, int cDetailsMax); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUserStats_UploadLeaderboardScore", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamUserStats_UploadLeaderboardScore(IntPtr instancePtr, SteamLeaderboard_t hSteamLeaderboard, ELeaderboardUploadScoreMethod eLeaderboardUploadScoreMethod, int nScore, [In, Out] int[] pScoreDetails, int cScoreDetailsCount); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUserStats_AttachLeaderboardUGC", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamUserStats_AttachLeaderboardUGC(IntPtr instancePtr, SteamLeaderboard_t hSteamLeaderboard, UGCHandle_t hUGC); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUserStats_GetNumberOfCurrentPlayers", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamUserStats_GetNumberOfCurrentPlayers(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUserStats_RequestGlobalAchievementPercentages", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamUserStats_RequestGlobalAchievementPercentages(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUserStats_GetMostAchievedAchievementInfo", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamUserStats_GetMostAchievedAchievementInfo(IntPtr instancePtr, IntPtr pchName, uint unNameBufLen, out float pflPercent, out bool pbAchieved); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUserStats_GetNextMostAchievedAchievementInfo", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamUserStats_GetNextMostAchievedAchievementInfo(IntPtr instancePtr, int iIteratorPrevious, IntPtr pchName, uint unNameBufLen, out float pflPercent, out bool pbAchieved); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUserStats_GetAchievementAchievedPercent", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUserStats_GetAchievementAchievedPercent(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchName, out float pflPercent); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUserStats_RequestGlobalStats", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamUserStats_RequestGlobalStats(IntPtr instancePtr, int nHistoryDays); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUserStats_GetGlobalStatInt64", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUserStats_GetGlobalStatInt64(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchStatName, out long pData); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUserStats_GetGlobalStatDouble", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUserStats_GetGlobalStatDouble(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchStatName, out double pData); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUserStats_GetGlobalStatHistoryInt64", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamUserStats_GetGlobalStatHistoryInt64(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchStatName, [In, Out] long[] pData, uint cubData); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUserStats_GetGlobalStatHistoryDouble", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamUserStats_GetGlobalStatHistoryDouble(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchStatName, [In, Out] double[] pData, uint cubData); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUserStats_GetAchievementProgressLimitsInt32", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUserStats_GetAchievementProgressLimitsInt32(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchName, out int pnMinProgress, out int pnMaxProgress); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUserStats_GetAchievementProgressLimitsFloat", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUserStats_GetAchievementProgressLimitsFloat(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchName, out float pfMinProgress, out float pfMaxProgress); + +#endregion +#region SteamUtils + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUtils_GetSecondsSinceAppActive", CallingConvention = CallingConvention.Cdecl)] + + public static extern uint ISteamUtils_GetSecondsSinceAppActive(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUtils_GetSecondsSinceComputerActive", CallingConvention = CallingConvention.Cdecl)] + + public static extern uint ISteamUtils_GetSecondsSinceComputerActive(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUtils_GetConnectedUniverse", CallingConvention = CallingConvention.Cdecl)] + + public static extern EUniverse ISteamUtils_GetConnectedUniverse(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUtils_GetServerRealTime", CallingConvention = CallingConvention.Cdecl)] + + public static extern uint ISteamUtils_GetServerRealTime(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUtils_GetIPCountry", CallingConvention = CallingConvention.Cdecl)] + + public static extern IntPtr ISteamUtils_GetIPCountry(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUtils_GetImageSize", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUtils_GetImageSize(IntPtr instancePtr, int iImage, out uint pnWidth, out uint pnHeight); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUtils_GetImageRGBA", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUtils_GetImageRGBA(IntPtr instancePtr, int iImage, byte[] pubDest, int nDestBufferSize); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUtils_GetCurrentBatteryPower", CallingConvention = CallingConvention.Cdecl)] + + public static extern byte ISteamUtils_GetCurrentBatteryPower(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUtils_GetAppID", CallingConvention = CallingConvention.Cdecl)] + + public static extern uint ISteamUtils_GetAppID(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUtils_SetOverlayNotificationPosition", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamUtils_SetOverlayNotificationPosition(IntPtr instancePtr, ENotificationPosition eNotificationPosition); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUtils_IsAPICallCompleted", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUtils_IsAPICallCompleted(IntPtr instancePtr, SteamAPICall_t hSteamAPICall, out bool pbFailed); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUtils_GetAPICallFailureReason", CallingConvention = CallingConvention.Cdecl)] + + public static extern ESteamAPICallFailure ISteamUtils_GetAPICallFailureReason(IntPtr instancePtr, SteamAPICall_t hSteamAPICall); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUtils_GetAPICallResult", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUtils_GetAPICallResult(IntPtr instancePtr, SteamAPICall_t hSteamAPICall, IntPtr pCallback, int cubCallback, int iCallbackExpected, out bool pbFailed); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUtils_GetIPCCallCount", CallingConvention = CallingConvention.Cdecl)] + + public static extern uint ISteamUtils_GetIPCCallCount(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUtils_SetWarningMessageHook", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamUtils_SetWarningMessageHook(IntPtr instancePtr, SteamAPIWarningMessageHook_t pFunction); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUtils_IsOverlayEnabled", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUtils_IsOverlayEnabled(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUtils_BOverlayNeedsPresent", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUtils_BOverlayNeedsPresent(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUtils_CheckFileSignature", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamUtils_CheckFileSignature(IntPtr instancePtr, InteropHelp.UTF8StringHandle szFileName); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUtils_ShowGamepadTextInput", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUtils_ShowGamepadTextInput(IntPtr instancePtr, EGamepadTextInputMode eInputMode, EGamepadTextInputLineMode eLineInputMode, InteropHelp.UTF8StringHandle pchDescription, uint unCharMax, InteropHelp.UTF8StringHandle pchExistingText); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUtils_GetEnteredGamepadTextLength", CallingConvention = CallingConvention.Cdecl)] + + public static extern uint ISteamUtils_GetEnteredGamepadTextLength(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUtils_GetEnteredGamepadTextInput", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUtils_GetEnteredGamepadTextInput(IntPtr instancePtr, IntPtr pchText, uint cchText); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUtils_GetSteamUILanguage", CallingConvention = CallingConvention.Cdecl)] + + public static extern IntPtr ISteamUtils_GetSteamUILanguage(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUtils_IsSteamRunningInVR", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUtils_IsSteamRunningInVR(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUtils_SetOverlayNotificationInset", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamUtils_SetOverlayNotificationInset(IntPtr instancePtr, int nHorizontalInset, int nVerticalInset); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUtils_IsSteamInBigPictureMode", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUtils_IsSteamInBigPictureMode(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUtils_StartVRDashboard", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamUtils_StartVRDashboard(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUtils_IsVRHeadsetStreamingEnabled", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUtils_IsVRHeadsetStreamingEnabled(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUtils_SetVRHeadsetStreamingEnabled", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamUtils_SetVRHeadsetStreamingEnabled(IntPtr instancePtr, [MarshalAs(UnmanagedType.I1)] bool bEnabled); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUtils_IsSteamChinaLauncher", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUtils_IsSteamChinaLauncher(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUtils_InitFilterText", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUtils_InitFilterText(IntPtr instancePtr, uint unFilterOptions); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUtils_FilterText", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamUtils_FilterText(IntPtr instancePtr, ETextFilteringContext eContext, CSteamID sourceSteamID, InteropHelp.UTF8StringHandle pchInputMessage, IntPtr pchOutFilteredText, uint nByteSizeOutFilteredText); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUtils_GetIPv6ConnectivityState", CallingConvention = CallingConvention.Cdecl)] + + public static extern ESteamIPv6ConnectivityState ISteamUtils_GetIPv6ConnectivityState(IntPtr instancePtr, ESteamIPv6ConnectivityProtocol eProtocol); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUtils_IsSteamRunningOnSteamDeck", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUtils_IsSteamRunningOnSteamDeck(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUtils_ShowFloatingGamepadTextInput", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUtils_ShowFloatingGamepadTextInput(IntPtr instancePtr, EFloatingGamepadTextInputMode eKeyboardMode, int nTextFieldXPosition, int nTextFieldYPosition, int nTextFieldWidth, int nTextFieldHeight); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUtils_SetGameLauncherMode", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamUtils_SetGameLauncherMode(IntPtr instancePtr, [MarshalAs(UnmanagedType.I1)] bool bLauncherMode); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUtils_DismissFloatingGamepadTextInput", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUtils_DismissFloatingGamepadTextInput(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUtils_DismissGamepadTextInput", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUtils_DismissGamepadTextInput(IntPtr instancePtr); + +#endregion +#region SteamVideo + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamVideo_GetVideoURL", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamVideo_GetVideoURL(IntPtr instancePtr, AppId_t unVideoAppID); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamVideo_IsBroadcasting", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamVideo_IsBroadcasting(IntPtr instancePtr, out int pnNumViewers); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamVideo_GetOPFSettings", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamVideo_GetOPFSettings(IntPtr instancePtr, AppId_t unVideoAppID); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamVideo_GetOPFStringForApp", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamVideo_GetOPFStringForApp(IntPtr instancePtr, AppId_t unVideoAppID, IntPtr pchBuffer, ref int pnBufferSize); + +#endregion + } +} + +#endif // !DISABLESTEAMWORKS diff --git a/Standalone/AnyCPU/autogen/NativeMethodsUnderlyingWin64.cs b/Standalone/AnyCPU/autogen/NativeMethodsUnderlyingWin64.cs new file mode 100644 index 00000000..4eda0e16 --- /dev/null +++ b/Standalone/AnyCPU/autogen/NativeMethodsUnderlyingWin64.cs @@ -0,0 +1,4283 @@ +// This file is provided under The MIT License as part of Steamworks.NET. +// Copyright (c) 2013-2025 Riley Labrecque +// Please see the included LICENSE.txt for additional information. + +// This file is automatically generated. +// Add or remove meth will be reverted when you update Steamworks.NET + +#if STEAMWORKS_STANDALONE_ANYCPU + +using System.Runtime.InteropServices; +using IntPtr = System.IntPtr; + +#pragma warning disable IDE0130 +namespace Steamworks { +#pragma warning restore + [System.Security.SuppressUnmanagedCodeSecurity()] + /// Imported native functions of steam binary, for Windows x64 + internal static class NativeMethodsUnderlyingWin64 { + internal const string NativeLibraryName = "steam_api64"; + internal const string NativeLibrary_SDKEncryptedAppTicket = "sdkencryptedappticket64"; + + // !!!! Changes made to steamapi free functions should also sync with other nativemethods*.txt too. !!!! +#region steam_api.h + [DllImport(NativeLibraryName, EntryPoint = "SteamInternal_SteamAPI_Init", CallingConvention = CallingConvention.Cdecl)] + public static extern ESteamAPIInitResult SteamInternal_SteamAPI_Init(InteropHelp.UTF8StringHandle pszInternalCheckInterfaceVersions, IntPtr pOutErrMsg); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_Shutdown", CallingConvention = CallingConvention.Cdecl)] + public static extern void SteamAPI_Shutdown(); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_RestartAppIfNecessary", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + public static extern bool SteamAPI_RestartAppIfNecessary(AppId_t unOwnAppID); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ReleaseCurrentThreadMemory", CallingConvention = CallingConvention.Cdecl)] + public static extern void SteamAPI_ReleaseCurrentThreadMemory(); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_WriteMiniDump", CallingConvention = CallingConvention.Cdecl)] + public static extern void SteamAPI_WriteMiniDump(uint uStructuredExceptionCode, IntPtr pvExceptionInfo, uint uBuildID); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SetMiniDumpComment", CallingConvention = CallingConvention.Cdecl)] + public static extern void SteamAPI_SetMiniDumpComment(InteropHelp.UTF8StringHandle pchMsg); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_RunCallbacks", CallingConvention = CallingConvention.Cdecl)] + public static extern void SteamAPI_RunCallbacks(); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_RegisterCallback", CallingConvention = CallingConvention.Cdecl)] + public static extern void SteamAPI_RegisterCallback(IntPtr pCallback, int iCallback); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_UnregisterCallback", CallingConvention = CallingConvention.Cdecl)] + public static extern void SteamAPI_UnregisterCallback(IntPtr pCallback); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_RegisterCallResult", CallingConvention = CallingConvention.Cdecl)] + public static extern void SteamAPI_RegisterCallResult(IntPtr pCallback, ulong hAPICall); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_UnregisterCallResult", CallingConvention = CallingConvention.Cdecl)] + public static extern void SteamAPI_UnregisterCallResult(IntPtr pCallback, ulong hAPICall); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_IsSteamRunning", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + public static extern bool SteamAPI_IsSteamRunning(); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_GetSteamInstallPath", CallingConvention = CallingConvention.Cdecl)] + public static extern int SteamAPI_GetSteamInstallPath(); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_GetHSteamPipe", CallingConvention = CallingConvention.Cdecl)] + public static extern int SteamAPI_GetHSteamPipe(); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SetTryCatchCallbacks", CallingConvention = CallingConvention.Cdecl)] + public static extern void SteamAPI_SetTryCatchCallbacks([MarshalAs(UnmanagedType.I1)] bool bTryCatchCallbacks); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_GetHSteamUser", CallingConvention = CallingConvention.Cdecl)] + public static extern int SteamAPI_GetHSteamUser(); + + [DllImport(NativeLibraryName, EntryPoint = "SteamInternal_ContextInit", CallingConvention = CallingConvention.Cdecl)] + public static extern IntPtr SteamInternal_ContextInit(IntPtr pContextInitData); + + [DllImport(NativeLibraryName, EntryPoint = "SteamInternal_CreateInterface", CallingConvention = CallingConvention.Cdecl)] + public static extern IntPtr SteamInternal_CreateInterface(InteropHelp.UTF8StringHandle ver); + + [DllImport(NativeLibraryName, EntryPoint = "SteamInternal_FindOrCreateUserInterface", CallingConvention = CallingConvention.Cdecl)] + public static extern IntPtr SteamInternal_FindOrCreateUserInterface(HSteamUser hSteamUser, InteropHelp.UTF8StringHandle pszVersion); + + [DllImport(NativeLibraryName, EntryPoint = "SteamInternal_FindOrCreateGameServerInterface", CallingConvention = CallingConvention.Cdecl)] + public static extern IntPtr SteamInternal_FindOrCreateGameServerInterface(HSteamUser hSteamUser, InteropHelp.UTF8StringHandle pszVersion); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_UseBreakpadCrashHandler", CallingConvention = CallingConvention.Cdecl)] + public static extern void SteamAPI_UseBreakpadCrashHandler(InteropHelp.UTF8StringHandle pchVersion, InteropHelp.UTF8StringHandle pchDate, InteropHelp.UTF8StringHandle pchTime, [MarshalAs(UnmanagedType.I1)] bool bFullMemoryDumps, IntPtr pvContext, IntPtr m_pfnPreMinidumpCallback); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SetBreakpadAppID", CallingConvention = CallingConvention.Cdecl)] + public static extern void SteamAPI_SetBreakpadAppID(uint unAppID); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ManualDispatch_Init", CallingConvention = CallingConvention.Cdecl)] + public static extern void SteamAPI_ManualDispatch_Init(); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ManualDispatch_RunFrame", CallingConvention = CallingConvention.Cdecl)] + public static extern void SteamAPI_ManualDispatch_RunFrame(HSteamPipe hSteamPipe); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ManualDispatch_GetNextCallback", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + public static extern bool SteamAPI_ManualDispatch_GetNextCallback(HSteamPipe hSteamPipe, IntPtr pCallbackMsg); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ManualDispatch_FreeLastCallback", CallingConvention = CallingConvention.Cdecl)] + public static extern void SteamAPI_ManualDispatch_FreeLastCallback(HSteamPipe hSteamPipe); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ManualDispatch_GetAPICallResult", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + public static extern bool SteamAPI_ManualDispatch_GetAPICallResult(HSteamPipe hSteamPipe, SteamAPICall_t hSteamAPICall, IntPtr pCallback, int cubCallback, int iCallbackExpected, out bool pbFailed); +#endregion +#region steam_gameserver.h + [DllImport(NativeLibraryName, EntryPoint = "SteamGameServer_Shutdown", CallingConvention = CallingConvention.Cdecl)] + public static extern void SteamGameServer_Shutdown(); + + [DllImport(NativeLibraryName, EntryPoint = "SteamGameServer_RunCallbacks", CallingConvention = CallingConvention.Cdecl)] + public static extern void SteamGameServer_RunCallbacks(); + + [DllImport(NativeLibraryName, EntryPoint = "SteamGameServer_ReleaseCurrentThreadMemory", CallingConvention = CallingConvention.Cdecl)] + public static extern void SteamGameServer_ReleaseCurrentThreadMemory(); + + [DllImport(NativeLibraryName, EntryPoint = "SteamGameServer_BSecure", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + public static extern bool SteamGameServer_BSecure(); + + [DllImport(NativeLibraryName, EntryPoint = "SteamGameServer_GetSteamID", CallingConvention = CallingConvention.Cdecl)] + public static extern ulong SteamGameServer_GetSteamID(); + + [DllImport(NativeLibraryName, EntryPoint = "SteamGameServer_GetHSteamPipe", CallingConvention = CallingConvention.Cdecl)] + public static extern int SteamGameServer_GetHSteamPipe(); + + [DllImport(NativeLibraryName, EntryPoint = "SteamGameServer_GetHSteamUser", CallingConvention = CallingConvention.Cdecl)] + public static extern int SteamGameServer_GetHSteamUser(); + + [DllImport(NativeLibraryName, EntryPoint = "SteamInternal_GameServer_Init_V2", CallingConvention = CallingConvention.Cdecl)] + public static extern ESteamAPIInitResult SteamInternal_GameServer_Init_V2(uint unIP, ushort usGamePort, ushort usQueryPort, EServerMode eServerMode, InteropHelp.UTF8StringHandle pchVersionString, InteropHelp.UTF8StringHandle pszInternalCheckInterfaceVersions, IntPtr pOutErrMsg); +#endregion +#region SteamAPI Accessors + [DllImport(NativeLibraryName, EntryPoint = "SteamClient", CallingConvention = CallingConvention.Cdecl)] + public static extern IntPtr SteamClient(); + + [DllImport(NativeLibraryName, EntryPoint = "SteamGameServerClient", CallingConvention = CallingConvention.Cdecl)] + public static extern IntPtr SteamGameServerClient(); +#endregion +#region SteamNetworkingIPAddr Accessors + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIPAddr_Clear", CallingConvention = CallingConvention.Cdecl)] + public static extern void SteamAPI_SteamNetworkingIPAddr_Clear(ref SteamNetworkingIPAddr self); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIPAddr_IsIPv6AllZeros", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + public static extern bool SteamAPI_SteamNetworkingIPAddr_IsIPv6AllZeros(ref SteamNetworkingIPAddr self); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIPAddr_SetIPv6", CallingConvention = CallingConvention.Cdecl)] + public static extern void SteamAPI_SteamNetworkingIPAddr_SetIPv6(ref SteamNetworkingIPAddr self, [In, Out] byte[] ipv6, ushort nPort); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIPAddr_SetIPv4", CallingConvention = CallingConvention.Cdecl)] + public static extern void SteamAPI_SteamNetworkingIPAddr_SetIPv4(ref SteamNetworkingIPAddr self, uint nIP, ushort nPort); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIPAddr_IsIPv4", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + public static extern bool SteamAPI_SteamNetworkingIPAddr_IsIPv4(ref SteamNetworkingIPAddr self); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIPAddr_GetIPv4", CallingConvention = CallingConvention.Cdecl)] + public static extern uint SteamAPI_SteamNetworkingIPAddr_GetIPv4(ref SteamNetworkingIPAddr self); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIPAddr_SetIPv6LocalHost", CallingConvention = CallingConvention.Cdecl)] + public static extern void SteamAPI_SteamNetworkingIPAddr_SetIPv6LocalHost(ref SteamNetworkingIPAddr self, ushort nPort); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIPAddr_IsLocalHost", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + public static extern bool SteamAPI_SteamNetworkingIPAddr_IsLocalHost(ref SteamNetworkingIPAddr self); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIPAddr_ToString", CallingConvention = CallingConvention.Cdecl)] + public static extern void SteamAPI_SteamNetworkingIPAddr_ToString(ref SteamNetworkingIPAddr self, IntPtr buf, uint cbBuf, [MarshalAs(UnmanagedType.I1)] bool bWithPort); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIPAddr_ParseString", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + public static extern bool SteamAPI_SteamNetworkingIPAddr_ParseString(ref SteamNetworkingIPAddr self, InteropHelp.UTF8StringHandle pszStr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIPAddr_IsEqualTo", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + public static extern bool SteamAPI_SteamNetworkingIPAddr_IsEqualTo(ref SteamNetworkingIPAddr self, ref SteamNetworkingIPAddr x); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIPAddr_GetFakeIPType", CallingConvention = CallingConvention.Cdecl)] + public static extern ESteamNetworkingFakeIPType SteamAPI_SteamNetworkingIPAddr_GetFakeIPType(ref SteamNetworkingIPAddr self); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIPAddr_IsFakeIP", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + public static extern bool SteamAPI_SteamNetworkingIPAddr_IsFakeIP(ref SteamNetworkingIPAddr self); +#endregion +#region SteamNetworkingIdentity Accessors + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIdentity_Clear", CallingConvention = CallingConvention.Cdecl)] + public static extern void SteamAPI_SteamNetworkingIdentity_Clear(ref SteamNetworkingIdentity self); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIdentity_IsInvalid", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + public static extern bool SteamAPI_SteamNetworkingIdentity_IsInvalid(ref SteamNetworkingIdentity self); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIdentity_SetSteamID", CallingConvention = CallingConvention.Cdecl)] + public static extern void SteamAPI_SteamNetworkingIdentity_SetSteamID(ref SteamNetworkingIdentity self, ulong steamID); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIdentity_GetSteamID", CallingConvention = CallingConvention.Cdecl)] + public static extern ulong SteamAPI_SteamNetworkingIdentity_GetSteamID(ref SteamNetworkingIdentity self); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIdentity_SetSteamID64", CallingConvention = CallingConvention.Cdecl)] + public static extern void SteamAPI_SteamNetworkingIdentity_SetSteamID64(ref SteamNetworkingIdentity self, ulong steamID); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIdentity_GetSteamID64", CallingConvention = CallingConvention.Cdecl)] + public static extern ulong SteamAPI_SteamNetworkingIdentity_GetSteamID64(ref SteamNetworkingIdentity self); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIdentity_SetXboxPairwiseID", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + public static extern bool SteamAPI_SteamNetworkingIdentity_SetXboxPairwiseID(ref SteamNetworkingIdentity self, InteropHelp.UTF8StringHandle pszString); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIdentity_GetXboxPairwiseID", CallingConvention = CallingConvention.Cdecl)] + public static extern IntPtr SteamAPI_SteamNetworkingIdentity_GetXboxPairwiseID(ref SteamNetworkingIdentity self); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIdentity_SetPSNID", CallingConvention = CallingConvention.Cdecl)] + public static extern void SteamAPI_SteamNetworkingIdentity_SetPSNID(ref SteamNetworkingIdentity self, ulong id); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIdentity_GetPSNID", CallingConvention = CallingConvention.Cdecl)] + public static extern ulong SteamAPI_SteamNetworkingIdentity_GetPSNID(ref SteamNetworkingIdentity self); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIdentity_SetIPAddr", CallingConvention = CallingConvention.Cdecl)] + public static extern IntPtr SteamAPI_SteamNetworkingIdentity_SetIPAddr(ref SteamNetworkingIdentity self, ref SteamNetworkingIPAddr addr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIdentity_GetIPAddr", CallingConvention = CallingConvention.Cdecl)] + public static extern IntPtr SteamAPI_SteamNetworkingIdentity_GetIPAddr(ref SteamNetworkingIdentity self); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIdentity_SetIPv4Addr", CallingConvention = CallingConvention.Cdecl)] + public static extern void SteamAPI_SteamNetworkingIdentity_SetIPv4Addr(ref SteamNetworkingIdentity self, uint nIPv4, ushort nPort); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIdentity_GetIPv4", CallingConvention = CallingConvention.Cdecl)] + public static extern uint SteamAPI_SteamNetworkingIdentity_GetIPv4(ref SteamNetworkingIdentity self); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIdentity_GetFakeIPType", CallingConvention = CallingConvention.Cdecl)] + public static extern ESteamNetworkingFakeIPType SteamAPI_SteamNetworkingIdentity_GetFakeIPType(ref SteamNetworkingIdentity self); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIdentity_IsFakeIP", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + public static extern bool SteamAPI_SteamNetworkingIdentity_IsFakeIP(ref SteamNetworkingIdentity self); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIdentity_SetLocalHost", CallingConvention = CallingConvention.Cdecl)] + public static extern void SteamAPI_SteamNetworkingIdentity_SetLocalHost(ref SteamNetworkingIdentity self); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIdentity_IsLocalHost", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + public static extern bool SteamAPI_SteamNetworkingIdentity_IsLocalHost(ref SteamNetworkingIdentity self); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIdentity_SetGenericString", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + public static extern bool SteamAPI_SteamNetworkingIdentity_SetGenericString(ref SteamNetworkingIdentity self, InteropHelp.UTF8StringHandle pszString); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIdentity_GetGenericString", CallingConvention = CallingConvention.Cdecl)] + public static extern IntPtr SteamAPI_SteamNetworkingIdentity_GetGenericString(ref SteamNetworkingIdentity self); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIdentity_SetGenericBytes", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + public static extern bool SteamAPI_SteamNetworkingIdentity_SetGenericBytes(ref SteamNetworkingIdentity self, [In, Out] byte[] data, uint cbLen); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIdentity_GetGenericBytes", CallingConvention = CallingConvention.Cdecl)] + public static extern IntPtr SteamAPI_SteamNetworkingIdentity_GetGenericBytes(ref SteamNetworkingIdentity self, out int cbLen); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIdentity_IsEqualTo", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + public static extern bool SteamAPI_SteamNetworkingIdentity_IsEqualTo(ref SteamNetworkingIdentity self, ref SteamNetworkingIdentity x); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIdentity_ToString", CallingConvention = CallingConvention.Cdecl)] + public static extern void SteamAPI_SteamNetworkingIdentity_ToString(ref SteamNetworkingIdentity self, IntPtr buf, uint cbBuf); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingIdentity_ParseString", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + public static extern bool SteamAPI_SteamNetworkingIdentity_ParseString(ref SteamNetworkingIdentity self, InteropHelp.UTF8StringHandle pszStr); +#endregion +#region SteamNetworkingMessage_t Accessors + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_SteamNetworkingMessage_t_Release", CallingConvention = CallingConvention.Cdecl)] + public static extern void SteamAPI_SteamNetworkingMessage_t_Release(IntPtr self); +#endregion +#region ISteamNetworkingConnectionSignaling Accessors + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingConnectionSignaling_SendSignal", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + public static extern bool SteamAPI_ISteamNetworkingConnectionSignaling_SendSignal(ref ISteamNetworkingConnectionSignaling self, HSteamNetConnection hConn, ref SteamNetConnectionInfo_t info, IntPtr pMsg, int cbMsg); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingConnectionSignaling_Release", CallingConvention = CallingConvention.Cdecl)] + public static extern void SteamAPI_ISteamNetworkingConnectionSignaling_Release(ref ISteamNetworkingConnectionSignaling self); +#endregion +#region ISteamNetworkingSignalingRecvContext Accessors + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingSignalingRecvContext_OnConnectRequest", CallingConvention = CallingConvention.Cdecl)] + public static extern IntPtr SteamAPI_ISteamNetworkingSignalingRecvContext_OnConnectRequest(ref ISteamNetworkingSignalingRecvContext self, HSteamNetConnection hConn, ref SteamNetworkingIdentity identityPeer, int nLocalVirtualPort); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingSignalingRecvContext_SendRejectionSignal", CallingConvention = CallingConvention.Cdecl)] + public static extern void SteamAPI_ISteamNetworkingSignalingRecvContext_SendRejectionSignal(ref ISteamNetworkingSignalingRecvContext self, ref SteamNetworkingIdentity identityPeer, IntPtr pMsg, int cbMsg); +#endregion +#region steamencryptedappticket.h + [DllImport(NativeLibrary_SDKEncryptedAppTicket, CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + public static extern bool SteamEncryptedAppTicket_BDecryptTicket([In, Out] byte[] rgubTicketEncrypted, uint cubTicketEncrypted, [In, Out] byte[] rgubTicketDecrypted, ref uint pcubTicketDecrypted, [MarshalAs(UnmanagedType.LPArray, SizeConst=Constants.k_nSteamEncryptedAppTicketSymmetricKeyLen)] byte[] rgubKey, int cubKey); + + [DllImport(NativeLibrary_SDKEncryptedAppTicket, CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + public static extern bool SteamEncryptedAppTicket_BIsTicketForApp([In, Out] byte[] rgubTicketDecrypted, uint cubTicketDecrypted, AppId_t nAppID); + + [DllImport(NativeLibrary_SDKEncryptedAppTicket, CallingConvention = CallingConvention.Cdecl)] + public static extern uint SteamEncryptedAppTicket_GetTicketIssueTime([In, Out] byte[] rgubTicketDecrypted, uint cubTicketDecrypted); + + [DllImport(NativeLibrary_SDKEncryptedAppTicket, CallingConvention = CallingConvention.Cdecl)] + public static extern void SteamEncryptedAppTicket_GetTicketSteamID([In, Out] byte[] rgubTicketDecrypted, uint cubTicketDecrypted, out CSteamID psteamID); + + [DllImport(NativeLibrary_SDKEncryptedAppTicket, CallingConvention = CallingConvention.Cdecl)] + public static extern uint SteamEncryptedAppTicket_GetTicketAppID([In, Out] byte[] rgubTicketDecrypted, uint cubTicketDecrypted); + + [DllImport(NativeLibrary_SDKEncryptedAppTicket, CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + public static extern bool SteamEncryptedAppTicket_BUserOwnsAppInTicket([In, Out] byte[] rgubTicketDecrypted, uint cubTicketDecrypted, AppId_t nAppID); + + [DllImport(NativeLibrary_SDKEncryptedAppTicket, CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + public static extern bool SteamEncryptedAppTicket_BUserIsVacBanned([In, Out] byte[] rgubTicketDecrypted, uint cubTicketDecrypted); + + [DllImport(NativeLibrary_SDKEncryptedAppTicket, CallingConvention = CallingConvention.Cdecl)] + public static extern IntPtr SteamEncryptedAppTicket_GetUserVariableData([In, Out] byte[] rgubTicketDecrypted, uint cubTicketDecrypted, out uint pcubUserData); + + [DllImport(NativeLibrary_SDKEncryptedAppTicket, CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + public static extern bool SteamEncryptedAppTicket_BIsTicketSigned([In, Out] byte[] rgubTicketDecrypted, uint cubTicketDecrypted, [In, Out] byte[] pubRSAKey, uint cubRSAKey); + + [DllImport(NativeLibrary_SDKEncryptedAppTicket, CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + public static extern bool SteamEncryptedAppTicket_BIsLicenseBorrowed([In, Out] byte[] rgubTicketDecrypted, uint cubTicketDecrypted); + + [DllImport(NativeLibrary_SDKEncryptedAppTicket, CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + public static extern bool SteamEncryptedAppTicket_BIsLicenseTemporary([In, Out] byte[] rgubTicketDecrypted, uint cubTicketDecrypted); +#endregion +#region SteamApps + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamApps_BIsSubscribed", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamApps_BIsSubscribed(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamApps_BIsLowViolence", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamApps_BIsLowViolence(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamApps_BIsCybercafe", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamApps_BIsCybercafe(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamApps_BIsVACBanned", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamApps_BIsVACBanned(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamApps_GetCurrentGameLanguage", CallingConvention = CallingConvention.Cdecl)] + + public static extern IntPtr ISteamApps_GetCurrentGameLanguage(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamApps_GetAvailableGameLanguages", CallingConvention = CallingConvention.Cdecl)] + + public static extern IntPtr ISteamApps_GetAvailableGameLanguages(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamApps_BIsSubscribedApp", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamApps_BIsSubscribedApp(IntPtr instancePtr, AppId_t appID); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamApps_BIsDlcInstalled", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamApps_BIsDlcInstalled(IntPtr instancePtr, AppId_t appID); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamApps_GetEarliestPurchaseUnixTime", CallingConvention = CallingConvention.Cdecl)] + + public static extern uint ISteamApps_GetEarliestPurchaseUnixTime(IntPtr instancePtr, AppId_t nAppID); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamApps_BIsSubscribedFromFreeWeekend", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamApps_BIsSubscribedFromFreeWeekend(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamApps_GetDLCCount", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamApps_GetDLCCount(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamApps_BGetDLCDataByIndex", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamApps_BGetDLCDataByIndex(IntPtr instancePtr, int iDLC, out AppId_t pAppID, out bool pbAvailable, IntPtr pchName, int cchNameBufferSize); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamApps_InstallDLC", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamApps_InstallDLC(IntPtr instancePtr, AppId_t nAppID); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamApps_UninstallDLC", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamApps_UninstallDLC(IntPtr instancePtr, AppId_t nAppID); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamApps_RequestAppProofOfPurchaseKey", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamApps_RequestAppProofOfPurchaseKey(IntPtr instancePtr, AppId_t nAppID); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamApps_GetCurrentBetaName", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamApps_GetCurrentBetaName(IntPtr instancePtr, IntPtr pchName, int cchNameBufferSize); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamApps_MarkContentCorrupt", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamApps_MarkContentCorrupt(IntPtr instancePtr, [MarshalAs(UnmanagedType.I1)] bool bMissingFilesOnly); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamApps_GetInstalledDepots", CallingConvention = CallingConvention.Cdecl)] + + public static extern uint ISteamApps_GetInstalledDepots(IntPtr instancePtr, AppId_t appID, [In, Out] DepotId_t[] pvecDepots, uint cMaxDepots); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamApps_GetAppInstallDir", CallingConvention = CallingConvention.Cdecl)] + + public static extern uint ISteamApps_GetAppInstallDir(IntPtr instancePtr, AppId_t appID, IntPtr pchFolder, uint cchFolderBufferSize); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamApps_BIsAppInstalled", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamApps_BIsAppInstalled(IntPtr instancePtr, AppId_t appID); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamApps_GetAppOwner", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamApps_GetAppOwner(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamApps_GetLaunchQueryParam", CallingConvention = CallingConvention.Cdecl)] + + public static extern IntPtr ISteamApps_GetLaunchQueryParam(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchKey); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamApps_GetDlcDownloadProgress", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamApps_GetDlcDownloadProgress(IntPtr instancePtr, AppId_t nAppID, out ulong punBytesDownloaded, out ulong punBytesTotal); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamApps_GetAppBuildId", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamApps_GetAppBuildId(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamApps_RequestAllProofOfPurchaseKeys", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamApps_RequestAllProofOfPurchaseKeys(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamApps_GetFileDetails", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamApps_GetFileDetails(IntPtr instancePtr, InteropHelp.UTF8StringHandle pszFileName); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamApps_GetLaunchCommandLine", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamApps_GetLaunchCommandLine(IntPtr instancePtr, IntPtr pszCommandLine, int cubCommandLine); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamApps_BIsSubscribedFromFamilySharing", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamApps_BIsSubscribedFromFamilySharing(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamApps_BIsTimedTrial", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamApps_BIsTimedTrial(IntPtr instancePtr, out uint punSecondsAllowed, out uint punSecondsPlayed); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamApps_SetDlcContext", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamApps_SetDlcContext(IntPtr instancePtr, AppId_t nAppID); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamApps_GetNumBetas", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamApps_GetNumBetas(IntPtr instancePtr, out int pnAvailable, out int pnPrivate); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamApps_GetBetaInfo", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamApps_GetBetaInfo(IntPtr instancePtr, int iBetaIndex, out uint punFlags, out uint punBuildID, IntPtr pchBetaName, int cchBetaName, IntPtr pchDescription, int cchDescription); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamApps_SetActiveBeta", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamApps_SetActiveBeta(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchBetaName); + +#endregion +#region SteamClient + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamClient_CreateSteamPipe", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamClient_CreateSteamPipe(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamClient_BReleaseSteamPipe", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamClient_BReleaseSteamPipe(IntPtr instancePtr, HSteamPipe hSteamPipe); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamClient_ConnectToGlobalUser", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamClient_ConnectToGlobalUser(IntPtr instancePtr, HSteamPipe hSteamPipe); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamClient_CreateLocalUser", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamClient_CreateLocalUser(IntPtr instancePtr, out HSteamPipe phSteamPipe, EAccountType eAccountType); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamClient_ReleaseUser", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamClient_ReleaseUser(IntPtr instancePtr, HSteamPipe hSteamPipe, HSteamUser hUser); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamClient_GetISteamUser", CallingConvention = CallingConvention.Cdecl)] + + public static extern IntPtr ISteamClient_GetISteamUser(IntPtr instancePtr, HSteamUser hSteamUser, HSteamPipe hSteamPipe, InteropHelp.UTF8StringHandle pchVersion); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamClient_GetISteamGameServer", CallingConvention = CallingConvention.Cdecl)] + + public static extern IntPtr ISteamClient_GetISteamGameServer(IntPtr instancePtr, HSteamUser hSteamUser, HSteamPipe hSteamPipe, InteropHelp.UTF8StringHandle pchVersion); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamClient_SetLocalIPBinding", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamClient_SetLocalIPBinding(IntPtr instancePtr, ref SteamIPAddress_t unIP, ushort usPort); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamClient_GetISteamFriends", CallingConvention = CallingConvention.Cdecl)] + + public static extern IntPtr ISteamClient_GetISteamFriends(IntPtr instancePtr, HSteamUser hSteamUser, HSteamPipe hSteamPipe, InteropHelp.UTF8StringHandle pchVersion); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamClient_GetISteamUtils", CallingConvention = CallingConvention.Cdecl)] + + public static extern IntPtr ISteamClient_GetISteamUtils(IntPtr instancePtr, HSteamPipe hSteamPipe, InteropHelp.UTF8StringHandle pchVersion); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamClient_GetISteamMatchmaking", CallingConvention = CallingConvention.Cdecl)] + + public static extern IntPtr ISteamClient_GetISteamMatchmaking(IntPtr instancePtr, HSteamUser hSteamUser, HSteamPipe hSteamPipe, InteropHelp.UTF8StringHandle pchVersion); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamClient_GetISteamMatchmakingServers", CallingConvention = CallingConvention.Cdecl)] + + public static extern IntPtr ISteamClient_GetISteamMatchmakingServers(IntPtr instancePtr, HSteamUser hSteamUser, HSteamPipe hSteamPipe, InteropHelp.UTF8StringHandle pchVersion); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamClient_GetISteamGenericInterface", CallingConvention = CallingConvention.Cdecl)] + + public static extern IntPtr ISteamClient_GetISteamGenericInterface(IntPtr instancePtr, HSteamUser hSteamUser, HSteamPipe hSteamPipe, InteropHelp.UTF8StringHandle pchVersion); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamClient_GetISteamUserStats", CallingConvention = CallingConvention.Cdecl)] + + public static extern IntPtr ISteamClient_GetISteamUserStats(IntPtr instancePtr, HSteamUser hSteamUser, HSteamPipe hSteamPipe, InteropHelp.UTF8StringHandle pchVersion); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamClient_GetISteamGameServerStats", CallingConvention = CallingConvention.Cdecl)] + + public static extern IntPtr ISteamClient_GetISteamGameServerStats(IntPtr instancePtr, HSteamUser hSteamuser, HSteamPipe hSteamPipe, InteropHelp.UTF8StringHandle pchVersion); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamClient_GetISteamApps", CallingConvention = CallingConvention.Cdecl)] + + public static extern IntPtr ISteamClient_GetISteamApps(IntPtr instancePtr, HSteamUser hSteamUser, HSteamPipe hSteamPipe, InteropHelp.UTF8StringHandle pchVersion); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamClient_GetISteamNetworking", CallingConvention = CallingConvention.Cdecl)] + + public static extern IntPtr ISteamClient_GetISteamNetworking(IntPtr instancePtr, HSteamUser hSteamUser, HSteamPipe hSteamPipe, InteropHelp.UTF8StringHandle pchVersion); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamClient_GetISteamRemoteStorage", CallingConvention = CallingConvention.Cdecl)] + + public static extern IntPtr ISteamClient_GetISteamRemoteStorage(IntPtr instancePtr, HSteamUser hSteamuser, HSteamPipe hSteamPipe, InteropHelp.UTF8StringHandle pchVersion); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamClient_GetISteamScreenshots", CallingConvention = CallingConvention.Cdecl)] + + public static extern IntPtr ISteamClient_GetISteamScreenshots(IntPtr instancePtr, HSteamUser hSteamuser, HSteamPipe hSteamPipe, InteropHelp.UTF8StringHandle pchVersion); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamClient_GetISteamGameSearch", CallingConvention = CallingConvention.Cdecl)] + + public static extern IntPtr ISteamClient_GetISteamGameSearch(IntPtr instancePtr, HSteamUser hSteamuser, HSteamPipe hSteamPipe, InteropHelp.UTF8StringHandle pchVersion); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamClient_GetIPCCallCount", CallingConvention = CallingConvention.Cdecl)] + + public static extern uint ISteamClient_GetIPCCallCount(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamClient_SetWarningMessageHook", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamClient_SetWarningMessageHook(IntPtr instancePtr, SteamAPIWarningMessageHook_t pFunction); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamClient_BShutdownIfAllPipesClosed", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamClient_BShutdownIfAllPipesClosed(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamClient_GetISteamHTTP", CallingConvention = CallingConvention.Cdecl)] + + public static extern IntPtr ISteamClient_GetISteamHTTP(IntPtr instancePtr, HSteamUser hSteamuser, HSteamPipe hSteamPipe, InteropHelp.UTF8StringHandle pchVersion); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamClient_GetISteamController", CallingConvention = CallingConvention.Cdecl)] + + public static extern IntPtr ISteamClient_GetISteamController(IntPtr instancePtr, HSteamUser hSteamUser, HSteamPipe hSteamPipe, InteropHelp.UTF8StringHandle pchVersion); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamClient_GetISteamUGC", CallingConvention = CallingConvention.Cdecl)] + + public static extern IntPtr ISteamClient_GetISteamUGC(IntPtr instancePtr, HSteamUser hSteamUser, HSteamPipe hSteamPipe, InteropHelp.UTF8StringHandle pchVersion); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamClient_GetISteamMusic", CallingConvention = CallingConvention.Cdecl)] + + public static extern IntPtr ISteamClient_GetISteamMusic(IntPtr instancePtr, HSteamUser hSteamuser, HSteamPipe hSteamPipe, InteropHelp.UTF8StringHandle pchVersion); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamClient_GetISteamMusicRemote", CallingConvention = CallingConvention.Cdecl)] + + public static extern IntPtr ISteamClient_GetISteamMusicRemote(IntPtr instancePtr, HSteamUser hSteamuser, HSteamPipe hSteamPipe, InteropHelp.UTF8StringHandle pchVersion); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamClient_GetISteamHTMLSurface", CallingConvention = CallingConvention.Cdecl)] + + public static extern IntPtr ISteamClient_GetISteamHTMLSurface(IntPtr instancePtr, HSteamUser hSteamuser, HSteamPipe hSteamPipe, InteropHelp.UTF8StringHandle pchVersion); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamClient_GetISteamInventory", CallingConvention = CallingConvention.Cdecl)] + + public static extern IntPtr ISteamClient_GetISteamInventory(IntPtr instancePtr, HSteamUser hSteamuser, HSteamPipe hSteamPipe, InteropHelp.UTF8StringHandle pchVersion); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamClient_GetISteamVideo", CallingConvention = CallingConvention.Cdecl)] + + public static extern IntPtr ISteamClient_GetISteamVideo(IntPtr instancePtr, HSteamUser hSteamuser, HSteamPipe hSteamPipe, InteropHelp.UTF8StringHandle pchVersion); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamClient_GetISteamParentalSettings", CallingConvention = CallingConvention.Cdecl)] + + public static extern IntPtr ISteamClient_GetISteamParentalSettings(IntPtr instancePtr, HSteamUser hSteamuser, HSteamPipe hSteamPipe, InteropHelp.UTF8StringHandle pchVersion); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamClient_GetISteamInput", CallingConvention = CallingConvention.Cdecl)] + + public static extern IntPtr ISteamClient_GetISteamInput(IntPtr instancePtr, HSteamUser hSteamUser, HSteamPipe hSteamPipe, InteropHelp.UTF8StringHandle pchVersion); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamClient_GetISteamParties", CallingConvention = CallingConvention.Cdecl)] + + public static extern IntPtr ISteamClient_GetISteamParties(IntPtr instancePtr, HSteamUser hSteamUser, HSteamPipe hSteamPipe, InteropHelp.UTF8StringHandle pchVersion); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamClient_GetISteamRemotePlay", CallingConvention = CallingConvention.Cdecl)] + + public static extern IntPtr ISteamClient_GetISteamRemotePlay(IntPtr instancePtr, HSteamUser hSteamUser, HSteamPipe hSteamPipe, InteropHelp.UTF8StringHandle pchVersion); + +#endregion +#region SteamFriends + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_GetPersonaName", CallingConvention = CallingConvention.Cdecl)] + + public static extern IntPtr ISteamFriends_GetPersonaName(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_SetPersonaName", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamFriends_SetPersonaName(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchPersonaName); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_GetPersonaState", CallingConvention = CallingConvention.Cdecl)] + + public static extern EPersonaState ISteamFriends_GetPersonaState(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_GetFriendCount", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamFriends_GetFriendCount(IntPtr instancePtr, EFriendFlags iFriendFlags); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_GetFriendByIndex", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamFriends_GetFriendByIndex(IntPtr instancePtr, int iFriend, EFriendFlags iFriendFlags); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_GetFriendRelationship", CallingConvention = CallingConvention.Cdecl)] + + public static extern EFriendRelationship ISteamFriends_GetFriendRelationship(IntPtr instancePtr, CSteamID steamIDFriend); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_GetFriendPersonaState", CallingConvention = CallingConvention.Cdecl)] + + public static extern EPersonaState ISteamFriends_GetFriendPersonaState(IntPtr instancePtr, CSteamID steamIDFriend); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_GetFriendPersonaName", CallingConvention = CallingConvention.Cdecl)] + + public static extern IntPtr ISteamFriends_GetFriendPersonaName(IntPtr instancePtr, CSteamID steamIDFriend); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_GetFriendGamePlayed", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamFriends_GetFriendGamePlayed(IntPtr instancePtr, CSteamID steamIDFriend, out FriendGameInfo_t pFriendGameInfo); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_GetFriendPersonaNameHistory", CallingConvention = CallingConvention.Cdecl)] + + public static extern IntPtr ISteamFriends_GetFriendPersonaNameHistory(IntPtr instancePtr, CSteamID steamIDFriend, int iPersonaName); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_GetFriendSteamLevel", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamFriends_GetFriendSteamLevel(IntPtr instancePtr, CSteamID steamIDFriend); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_GetPlayerNickname", CallingConvention = CallingConvention.Cdecl)] + + public static extern IntPtr ISteamFriends_GetPlayerNickname(IntPtr instancePtr, CSteamID steamIDPlayer); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_GetFriendsGroupCount", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamFriends_GetFriendsGroupCount(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_GetFriendsGroupIDByIndex", CallingConvention = CallingConvention.Cdecl)] + + public static extern short ISteamFriends_GetFriendsGroupIDByIndex(IntPtr instancePtr, int iFG); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_GetFriendsGroupName", CallingConvention = CallingConvention.Cdecl)] + + public static extern IntPtr ISteamFriends_GetFriendsGroupName(IntPtr instancePtr, FriendsGroupID_t friendsGroupID); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_GetFriendsGroupMembersCount", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamFriends_GetFriendsGroupMembersCount(IntPtr instancePtr, FriendsGroupID_t friendsGroupID); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_GetFriendsGroupMembersList", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamFriends_GetFriendsGroupMembersList(IntPtr instancePtr, FriendsGroupID_t friendsGroupID, [In, Out] CSteamID[] pOutSteamIDMembers, int nMembersCount); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_HasFriend", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamFriends_HasFriend(IntPtr instancePtr, CSteamID steamIDFriend, EFriendFlags iFriendFlags); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_GetClanCount", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamFriends_GetClanCount(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_GetClanByIndex", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamFriends_GetClanByIndex(IntPtr instancePtr, int iClan); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_GetClanName", CallingConvention = CallingConvention.Cdecl)] + + public static extern IntPtr ISteamFriends_GetClanName(IntPtr instancePtr, CSteamID steamIDClan); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_GetClanTag", CallingConvention = CallingConvention.Cdecl)] + + public static extern IntPtr ISteamFriends_GetClanTag(IntPtr instancePtr, CSteamID steamIDClan); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_GetClanActivityCounts", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamFriends_GetClanActivityCounts(IntPtr instancePtr, CSteamID steamIDClan, out int pnOnline, out int pnInGame, out int pnChatting); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_DownloadClanActivityCounts", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamFriends_DownloadClanActivityCounts(IntPtr instancePtr, [In, Out] CSteamID[] psteamIDClans, int cClansToRequest); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_GetFriendCountFromSource", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamFriends_GetFriendCountFromSource(IntPtr instancePtr, CSteamID steamIDSource); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_GetFriendFromSourceByIndex", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamFriends_GetFriendFromSourceByIndex(IntPtr instancePtr, CSteamID steamIDSource, int iFriend); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_IsUserInSource", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamFriends_IsUserInSource(IntPtr instancePtr, CSteamID steamIDUser, CSteamID steamIDSource); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_SetInGameVoiceSpeaking", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamFriends_SetInGameVoiceSpeaking(IntPtr instancePtr, CSteamID steamIDUser, [MarshalAs(UnmanagedType.I1)] bool bSpeaking); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_ActivateGameOverlay", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamFriends_ActivateGameOverlay(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchDialog); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_ActivateGameOverlayToUser", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamFriends_ActivateGameOverlayToUser(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchDialog, CSteamID steamID); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_ActivateGameOverlayToWebPage", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamFriends_ActivateGameOverlayToWebPage(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchURL, EActivateGameOverlayToWebPageMode eMode); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_ActivateGameOverlayToStore", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamFriends_ActivateGameOverlayToStore(IntPtr instancePtr, AppId_t nAppID, EOverlayToStoreFlag eFlag); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_SetPlayedWith", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamFriends_SetPlayedWith(IntPtr instancePtr, CSteamID steamIDUserPlayedWith); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_ActivateGameOverlayInviteDialog", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamFriends_ActivateGameOverlayInviteDialog(IntPtr instancePtr, CSteamID steamIDLobby); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_GetSmallFriendAvatar", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamFriends_GetSmallFriendAvatar(IntPtr instancePtr, CSteamID steamIDFriend); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_GetMediumFriendAvatar", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamFriends_GetMediumFriendAvatar(IntPtr instancePtr, CSteamID steamIDFriend); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_GetLargeFriendAvatar", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamFriends_GetLargeFriendAvatar(IntPtr instancePtr, CSteamID steamIDFriend); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_RequestUserInformation", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamFriends_RequestUserInformation(IntPtr instancePtr, CSteamID steamIDUser, [MarshalAs(UnmanagedType.I1)] bool bRequireNameOnly); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_RequestClanOfficerList", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamFriends_RequestClanOfficerList(IntPtr instancePtr, CSteamID steamIDClan); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_GetClanOwner", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamFriends_GetClanOwner(IntPtr instancePtr, CSteamID steamIDClan); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_GetClanOfficerCount", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamFriends_GetClanOfficerCount(IntPtr instancePtr, CSteamID steamIDClan); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_GetClanOfficerByIndex", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamFriends_GetClanOfficerByIndex(IntPtr instancePtr, CSteamID steamIDClan, int iOfficer); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_GetUserRestrictions", CallingConvention = CallingConvention.Cdecl)] + + public static extern uint ISteamFriends_GetUserRestrictions(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_SetRichPresence", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamFriends_SetRichPresence(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchKey, InteropHelp.UTF8StringHandle pchValue); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_ClearRichPresence", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamFriends_ClearRichPresence(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_GetFriendRichPresence", CallingConvention = CallingConvention.Cdecl)] + + public static extern IntPtr ISteamFriends_GetFriendRichPresence(IntPtr instancePtr, CSteamID steamIDFriend, InteropHelp.UTF8StringHandle pchKey); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_GetFriendRichPresenceKeyCount", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamFriends_GetFriendRichPresenceKeyCount(IntPtr instancePtr, CSteamID steamIDFriend); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_GetFriendRichPresenceKeyByIndex", CallingConvention = CallingConvention.Cdecl)] + + public static extern IntPtr ISteamFriends_GetFriendRichPresenceKeyByIndex(IntPtr instancePtr, CSteamID steamIDFriend, int iKey); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_RequestFriendRichPresence", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamFriends_RequestFriendRichPresence(IntPtr instancePtr, CSteamID steamIDFriend); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_InviteUserToGame", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamFriends_InviteUserToGame(IntPtr instancePtr, CSteamID steamIDFriend, InteropHelp.UTF8StringHandle pchConnectString); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_GetCoplayFriendCount", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamFriends_GetCoplayFriendCount(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_GetCoplayFriend", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamFriends_GetCoplayFriend(IntPtr instancePtr, int iCoplayFriend); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_GetFriendCoplayTime", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamFriends_GetFriendCoplayTime(IntPtr instancePtr, CSteamID steamIDFriend); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_GetFriendCoplayGame", CallingConvention = CallingConvention.Cdecl)] + + public static extern uint ISteamFriends_GetFriendCoplayGame(IntPtr instancePtr, CSteamID steamIDFriend); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_JoinClanChatRoom", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamFriends_JoinClanChatRoom(IntPtr instancePtr, CSteamID steamIDClan); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_LeaveClanChatRoom", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamFriends_LeaveClanChatRoom(IntPtr instancePtr, CSteamID steamIDClan); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_GetClanChatMemberCount", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamFriends_GetClanChatMemberCount(IntPtr instancePtr, CSteamID steamIDClan); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_GetChatMemberByIndex", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamFriends_GetChatMemberByIndex(IntPtr instancePtr, CSteamID steamIDClan, int iUser); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_SendClanChatMessage", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamFriends_SendClanChatMessage(IntPtr instancePtr, CSteamID steamIDClanChat, InteropHelp.UTF8StringHandle pchText); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_GetClanChatMessage", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamFriends_GetClanChatMessage(IntPtr instancePtr, CSteamID steamIDClanChat, int iMessage, IntPtr prgchText, int cchTextMax, out EChatEntryType peChatEntryType, out CSteamID psteamidChatter); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_IsClanChatAdmin", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamFriends_IsClanChatAdmin(IntPtr instancePtr, CSteamID steamIDClanChat, CSteamID steamIDUser); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_IsClanChatWindowOpenInSteam", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamFriends_IsClanChatWindowOpenInSteam(IntPtr instancePtr, CSteamID steamIDClanChat); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_OpenClanChatWindowInSteam", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamFriends_OpenClanChatWindowInSteam(IntPtr instancePtr, CSteamID steamIDClanChat); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_CloseClanChatWindowInSteam", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamFriends_CloseClanChatWindowInSteam(IntPtr instancePtr, CSteamID steamIDClanChat); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_SetListenForFriendsMessages", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamFriends_SetListenForFriendsMessages(IntPtr instancePtr, [MarshalAs(UnmanagedType.I1)] bool bInterceptEnabled); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_ReplyToFriendMessage", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamFriends_ReplyToFriendMessage(IntPtr instancePtr, CSteamID steamIDFriend, InteropHelp.UTF8StringHandle pchMsgToSend); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_GetFriendMessage", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamFriends_GetFriendMessage(IntPtr instancePtr, CSteamID steamIDFriend, int iMessageID, IntPtr pvData, int cubData, out EChatEntryType peChatEntryType); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_GetFollowerCount", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamFriends_GetFollowerCount(IntPtr instancePtr, CSteamID steamID); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_IsFollowing", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamFriends_IsFollowing(IntPtr instancePtr, CSteamID steamID); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_EnumerateFollowingList", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamFriends_EnumerateFollowingList(IntPtr instancePtr, uint unStartIndex); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_IsClanPublic", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamFriends_IsClanPublic(IntPtr instancePtr, CSteamID steamIDClan); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_IsClanOfficialGameGroup", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamFriends_IsClanOfficialGameGroup(IntPtr instancePtr, CSteamID steamIDClan); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_GetNumChatsWithUnreadPriorityMessages", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamFriends_GetNumChatsWithUnreadPriorityMessages(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_ActivateGameOverlayRemotePlayTogetherInviteDialog", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamFriends_ActivateGameOverlayRemotePlayTogetherInviteDialog(IntPtr instancePtr, CSteamID steamIDLobby); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_RegisterProtocolInOverlayBrowser", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamFriends_RegisterProtocolInOverlayBrowser(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchProtocol); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_ActivateGameOverlayInviteDialogConnectString", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamFriends_ActivateGameOverlayInviteDialogConnectString(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchConnectString); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_RequestEquippedProfileItems", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamFriends_RequestEquippedProfileItems(IntPtr instancePtr, CSteamID steamID); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_BHasEquippedProfileItem", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamFriends_BHasEquippedProfileItem(IntPtr instancePtr, CSteamID steamID, ECommunityProfileItemType itemType); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_GetProfileItemPropertyString", CallingConvention = CallingConvention.Cdecl)] + + public static extern IntPtr ISteamFriends_GetProfileItemPropertyString(IntPtr instancePtr, CSteamID steamID, ECommunityProfileItemType itemType, ECommunityProfileItemProperty prop); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamFriends_GetProfileItemPropertyUint", CallingConvention = CallingConvention.Cdecl)] + + public static extern uint ISteamFriends_GetProfileItemPropertyUint(IntPtr instancePtr, CSteamID steamID, ECommunityProfileItemType itemType, ECommunityProfileItemProperty prop); + +#endregion +#region SteamGameServer + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamGameServer_SetProduct", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamGameServer_SetProduct(IntPtr instancePtr, InteropHelp.UTF8StringHandle pszProduct); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamGameServer_SetGameDescription", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamGameServer_SetGameDescription(IntPtr instancePtr, InteropHelp.UTF8StringHandle pszGameDescription); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamGameServer_SetModDir", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamGameServer_SetModDir(IntPtr instancePtr, InteropHelp.UTF8StringHandle pszModDir); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamGameServer_SetDedicatedServer", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamGameServer_SetDedicatedServer(IntPtr instancePtr, [MarshalAs(UnmanagedType.I1)] bool bDedicated); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamGameServer_LogOn", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamGameServer_LogOn(IntPtr instancePtr, InteropHelp.UTF8StringHandle pszToken); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamGameServer_LogOnAnonymous", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamGameServer_LogOnAnonymous(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamGameServer_LogOff", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamGameServer_LogOff(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamGameServer_BLoggedOn", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamGameServer_BLoggedOn(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamGameServer_BSecure", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamGameServer_BSecure(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamGameServer_GetSteamID", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamGameServer_GetSteamID(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamGameServer_WasRestartRequested", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamGameServer_WasRestartRequested(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamGameServer_SetMaxPlayerCount", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamGameServer_SetMaxPlayerCount(IntPtr instancePtr, int cPlayersMax); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamGameServer_SetBotPlayerCount", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamGameServer_SetBotPlayerCount(IntPtr instancePtr, int cBotplayers); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamGameServer_SetServerName", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamGameServer_SetServerName(IntPtr instancePtr, InteropHelp.UTF8StringHandle pszServerName); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamGameServer_SetMapName", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamGameServer_SetMapName(IntPtr instancePtr, InteropHelp.UTF8StringHandle pszMapName); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamGameServer_SetPasswordProtected", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamGameServer_SetPasswordProtected(IntPtr instancePtr, [MarshalAs(UnmanagedType.I1)] bool bPasswordProtected); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamGameServer_SetSpectatorPort", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamGameServer_SetSpectatorPort(IntPtr instancePtr, ushort unSpectatorPort); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamGameServer_SetSpectatorServerName", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamGameServer_SetSpectatorServerName(IntPtr instancePtr, InteropHelp.UTF8StringHandle pszSpectatorServerName); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamGameServer_ClearAllKeyValues", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamGameServer_ClearAllKeyValues(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamGameServer_SetKeyValue", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamGameServer_SetKeyValue(IntPtr instancePtr, InteropHelp.UTF8StringHandle pKey, InteropHelp.UTF8StringHandle pValue); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamGameServer_SetGameTags", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamGameServer_SetGameTags(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchGameTags); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamGameServer_SetGameData", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamGameServer_SetGameData(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchGameData); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamGameServer_SetRegion", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamGameServer_SetRegion(IntPtr instancePtr, InteropHelp.UTF8StringHandle pszRegion); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamGameServer_SetAdvertiseServerActive", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamGameServer_SetAdvertiseServerActive(IntPtr instancePtr, [MarshalAs(UnmanagedType.I1)] bool bActive); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamGameServer_GetAuthSessionTicket", CallingConvention = CallingConvention.Cdecl)] + + public static extern uint ISteamGameServer_GetAuthSessionTicket(IntPtr instancePtr, byte[] pTicket, int cbMaxTicket, out uint pcbTicket, ref SteamNetworkingIdentity pSnid); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamGameServer_BeginAuthSession", CallingConvention = CallingConvention.Cdecl)] + + public static extern EBeginAuthSessionResult ISteamGameServer_BeginAuthSession(IntPtr instancePtr, byte[] pAuthTicket, int cbAuthTicket, CSteamID steamID); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamGameServer_EndAuthSession", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamGameServer_EndAuthSession(IntPtr instancePtr, CSteamID steamID); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamGameServer_CancelAuthTicket", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamGameServer_CancelAuthTicket(IntPtr instancePtr, HAuthTicket hAuthTicket); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamGameServer_UserHasLicenseForApp", CallingConvention = CallingConvention.Cdecl)] + + public static extern EUserHasLicenseForAppResult ISteamGameServer_UserHasLicenseForApp(IntPtr instancePtr, CSteamID steamID, AppId_t appID); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamGameServer_RequestUserGroupStatus", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamGameServer_RequestUserGroupStatus(IntPtr instancePtr, CSteamID steamIDUser, CSteamID steamIDGroup); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamGameServer_GetGameplayStats", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamGameServer_GetGameplayStats(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamGameServer_GetServerReputation", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamGameServer_GetServerReputation(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamGameServer_GetPublicIP", CallingConvention = CallingConvention.Cdecl)] + + public static extern SteamIPAddress_t ISteamGameServer_GetPublicIP(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamGameServer_HandleIncomingPacket", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamGameServer_HandleIncomingPacket(IntPtr instancePtr, byte[] pData, int cbData, uint srcIP, ushort srcPort); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamGameServer_GetNextOutgoingPacket", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamGameServer_GetNextOutgoingPacket(IntPtr instancePtr, byte[] pOut, int cbMaxOut, out uint pNetAdr, out ushort pPort); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamGameServer_AssociateWithClan", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamGameServer_AssociateWithClan(IntPtr instancePtr, CSteamID steamIDClan); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamGameServer_ComputeNewPlayerCompatibility", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamGameServer_ComputeNewPlayerCompatibility(IntPtr instancePtr, CSteamID steamIDNewPlayer); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamGameServer_SendUserConnectAndAuthenticate_DEPRECATED", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamGameServer_SendUserConnectAndAuthenticate_DEPRECATED(IntPtr instancePtr, uint unIPClient, byte[] pvAuthBlob, uint cubAuthBlobSize, out CSteamID pSteamIDUser); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamGameServer_CreateUnauthenticatedUserConnection", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamGameServer_CreateUnauthenticatedUserConnection(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamGameServer_SendUserDisconnect_DEPRECATED", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamGameServer_SendUserDisconnect_DEPRECATED(IntPtr instancePtr, CSteamID steamIDUser); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamGameServer_BUpdateUserData", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamGameServer_BUpdateUserData(IntPtr instancePtr, CSteamID steamIDUser, InteropHelp.UTF8StringHandle pchPlayerName, uint uScore); + +#endregion +#region SteamGameServerStats + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamGameServerStats_RequestUserStats", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamGameServerStats_RequestUserStats(IntPtr instancePtr, CSteamID steamIDUser); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamGameServerStats_GetUserStatInt32", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamGameServerStats_GetUserStatInt32(IntPtr instancePtr, CSteamID steamIDUser, InteropHelp.UTF8StringHandle pchName, out int pData); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamGameServerStats_GetUserStatFloat", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamGameServerStats_GetUserStatFloat(IntPtr instancePtr, CSteamID steamIDUser, InteropHelp.UTF8StringHandle pchName, out float pData); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamGameServerStats_GetUserAchievement", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamGameServerStats_GetUserAchievement(IntPtr instancePtr, CSteamID steamIDUser, InteropHelp.UTF8StringHandle pchName, out bool pbAchieved); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamGameServerStats_SetUserStatInt32", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamGameServerStats_SetUserStatInt32(IntPtr instancePtr, CSteamID steamIDUser, InteropHelp.UTF8StringHandle pchName, int nData); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamGameServerStats_SetUserStatFloat", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamGameServerStats_SetUserStatFloat(IntPtr instancePtr, CSteamID steamIDUser, InteropHelp.UTF8StringHandle pchName, float fData); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamGameServerStats_UpdateUserAvgRateStat", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamGameServerStats_UpdateUserAvgRateStat(IntPtr instancePtr, CSteamID steamIDUser, InteropHelp.UTF8StringHandle pchName, float flCountThisSession, double dSessionLength); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamGameServerStats_SetUserAchievement", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamGameServerStats_SetUserAchievement(IntPtr instancePtr, CSteamID steamIDUser, InteropHelp.UTF8StringHandle pchName); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamGameServerStats_ClearUserAchievement", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamGameServerStats_ClearUserAchievement(IntPtr instancePtr, CSteamID steamIDUser, InteropHelp.UTF8StringHandle pchName); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamGameServerStats_StoreUserStats", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamGameServerStats_StoreUserStats(IntPtr instancePtr, CSteamID steamIDUser); + +#endregion +#region SteamHTMLSurface + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamHTMLSurface_Init", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamHTMLSurface_Init(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamHTMLSurface_Shutdown", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamHTMLSurface_Shutdown(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamHTMLSurface_CreateBrowser", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamHTMLSurface_CreateBrowser(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchUserAgent, InteropHelp.UTF8StringHandle pchUserCSS); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamHTMLSurface_RemoveBrowser", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamHTMLSurface_RemoveBrowser(IntPtr instancePtr, HHTMLBrowser unBrowserHandle); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamHTMLSurface_LoadURL", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamHTMLSurface_LoadURL(IntPtr instancePtr, HHTMLBrowser unBrowserHandle, InteropHelp.UTF8StringHandle pchURL, InteropHelp.UTF8StringHandle pchPostData); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamHTMLSurface_SetSize", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamHTMLSurface_SetSize(IntPtr instancePtr, HHTMLBrowser unBrowserHandle, uint unWidth, uint unHeight); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamHTMLSurface_StopLoad", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamHTMLSurface_StopLoad(IntPtr instancePtr, HHTMLBrowser unBrowserHandle); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamHTMLSurface_Reload", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamHTMLSurface_Reload(IntPtr instancePtr, HHTMLBrowser unBrowserHandle); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamHTMLSurface_GoBack", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamHTMLSurface_GoBack(IntPtr instancePtr, HHTMLBrowser unBrowserHandle); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamHTMLSurface_GoForward", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamHTMLSurface_GoForward(IntPtr instancePtr, HHTMLBrowser unBrowserHandle); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamHTMLSurface_AddHeader", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamHTMLSurface_AddHeader(IntPtr instancePtr, HHTMLBrowser unBrowserHandle, InteropHelp.UTF8StringHandle pchKey, InteropHelp.UTF8StringHandle pchValue); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamHTMLSurface_ExecuteJavascript", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamHTMLSurface_ExecuteJavascript(IntPtr instancePtr, HHTMLBrowser unBrowserHandle, InteropHelp.UTF8StringHandle pchScript); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamHTMLSurface_MouseUp", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamHTMLSurface_MouseUp(IntPtr instancePtr, HHTMLBrowser unBrowserHandle, EHTMLMouseButton eMouseButton); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamHTMLSurface_MouseDown", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamHTMLSurface_MouseDown(IntPtr instancePtr, HHTMLBrowser unBrowserHandle, EHTMLMouseButton eMouseButton); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamHTMLSurface_MouseDoubleClick", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamHTMLSurface_MouseDoubleClick(IntPtr instancePtr, HHTMLBrowser unBrowserHandle, EHTMLMouseButton eMouseButton); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamHTMLSurface_MouseMove", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamHTMLSurface_MouseMove(IntPtr instancePtr, HHTMLBrowser unBrowserHandle, int x, int y); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamHTMLSurface_MouseWheel", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamHTMLSurface_MouseWheel(IntPtr instancePtr, HHTMLBrowser unBrowserHandle, int nDelta); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamHTMLSurface_KeyDown", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamHTMLSurface_KeyDown(IntPtr instancePtr, HHTMLBrowser unBrowserHandle, uint nNativeKeyCode, EHTMLKeyModifiers eHTMLKeyModifiers, [MarshalAs(UnmanagedType.I1)] bool bIsSystemKey); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamHTMLSurface_KeyUp", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamHTMLSurface_KeyUp(IntPtr instancePtr, HHTMLBrowser unBrowserHandle, uint nNativeKeyCode, EHTMLKeyModifiers eHTMLKeyModifiers); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamHTMLSurface_KeyChar", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamHTMLSurface_KeyChar(IntPtr instancePtr, HHTMLBrowser unBrowserHandle, uint cUnicodeChar, EHTMLKeyModifiers eHTMLKeyModifiers); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamHTMLSurface_SetHorizontalScroll", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamHTMLSurface_SetHorizontalScroll(IntPtr instancePtr, HHTMLBrowser unBrowserHandle, uint nAbsolutePixelScroll); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamHTMLSurface_SetVerticalScroll", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamHTMLSurface_SetVerticalScroll(IntPtr instancePtr, HHTMLBrowser unBrowserHandle, uint nAbsolutePixelScroll); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamHTMLSurface_SetKeyFocus", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamHTMLSurface_SetKeyFocus(IntPtr instancePtr, HHTMLBrowser unBrowserHandle, [MarshalAs(UnmanagedType.I1)] bool bHasKeyFocus); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamHTMLSurface_ViewSource", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamHTMLSurface_ViewSource(IntPtr instancePtr, HHTMLBrowser unBrowserHandle); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamHTMLSurface_CopyToClipboard", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamHTMLSurface_CopyToClipboard(IntPtr instancePtr, HHTMLBrowser unBrowserHandle); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamHTMLSurface_PasteFromClipboard", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamHTMLSurface_PasteFromClipboard(IntPtr instancePtr, HHTMLBrowser unBrowserHandle); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamHTMLSurface_Find", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamHTMLSurface_Find(IntPtr instancePtr, HHTMLBrowser unBrowserHandle, InteropHelp.UTF8StringHandle pchSearchStr, [MarshalAs(UnmanagedType.I1)] bool bCurrentlyInFind, [MarshalAs(UnmanagedType.I1)] bool bReverse); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamHTMLSurface_StopFind", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamHTMLSurface_StopFind(IntPtr instancePtr, HHTMLBrowser unBrowserHandle); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamHTMLSurface_GetLinkAtPosition", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamHTMLSurface_GetLinkAtPosition(IntPtr instancePtr, HHTMLBrowser unBrowserHandle, int x, int y); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamHTMLSurface_SetCookie", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamHTMLSurface_SetCookie(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchHostname, InteropHelp.UTF8StringHandle pchKey, InteropHelp.UTF8StringHandle pchValue, InteropHelp.UTF8StringHandle pchPath, uint nExpires, [MarshalAs(UnmanagedType.I1)] bool bSecure, [MarshalAs(UnmanagedType.I1)] bool bHTTPOnly); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamHTMLSurface_SetPageScaleFactor", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamHTMLSurface_SetPageScaleFactor(IntPtr instancePtr, HHTMLBrowser unBrowserHandle, float flZoom, int nPointX, int nPointY); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamHTMLSurface_SetBackgroundMode", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamHTMLSurface_SetBackgroundMode(IntPtr instancePtr, HHTMLBrowser unBrowserHandle, [MarshalAs(UnmanagedType.I1)] bool bBackgroundMode); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamHTMLSurface_SetDPIScalingFactor", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamHTMLSurface_SetDPIScalingFactor(IntPtr instancePtr, HHTMLBrowser unBrowserHandle, float flDPIScaling); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamHTMLSurface_OpenDeveloperTools", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamHTMLSurface_OpenDeveloperTools(IntPtr instancePtr, HHTMLBrowser unBrowserHandle); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamHTMLSurface_AllowStartRequest", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamHTMLSurface_AllowStartRequest(IntPtr instancePtr, HHTMLBrowser unBrowserHandle, [MarshalAs(UnmanagedType.I1)] bool bAllowed); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamHTMLSurface_JSDialogResponse", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamHTMLSurface_JSDialogResponse(IntPtr instancePtr, HHTMLBrowser unBrowserHandle, [MarshalAs(UnmanagedType.I1)] bool bResult); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamHTMLSurface_FileLoadDialogResponse", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamHTMLSurface_FileLoadDialogResponse(IntPtr instancePtr, HHTMLBrowser unBrowserHandle, IntPtr pchSelectedFiles); + +#endregion +#region SteamHTTP + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamHTTP_CreateHTTPRequest", CallingConvention = CallingConvention.Cdecl)] + + public static extern uint ISteamHTTP_CreateHTTPRequest(IntPtr instancePtr, EHTTPMethod eHTTPRequestMethod, InteropHelp.UTF8StringHandle pchAbsoluteURL); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamHTTP_SetHTTPRequestContextValue", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamHTTP_SetHTTPRequestContextValue(IntPtr instancePtr, HTTPRequestHandle hRequest, ulong ulContextValue); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamHTTP_SetHTTPRequestNetworkActivityTimeout", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamHTTP_SetHTTPRequestNetworkActivityTimeout(IntPtr instancePtr, HTTPRequestHandle hRequest, uint unTimeoutSeconds); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamHTTP_SetHTTPRequestHeaderValue", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamHTTP_SetHTTPRequestHeaderValue(IntPtr instancePtr, HTTPRequestHandle hRequest, InteropHelp.UTF8StringHandle pchHeaderName, InteropHelp.UTF8StringHandle pchHeaderValue); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamHTTP_SetHTTPRequestGetOrPostParameter", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamHTTP_SetHTTPRequestGetOrPostParameter(IntPtr instancePtr, HTTPRequestHandle hRequest, InteropHelp.UTF8StringHandle pchParamName, InteropHelp.UTF8StringHandle pchParamValue); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamHTTP_SendHTTPRequest", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamHTTP_SendHTTPRequest(IntPtr instancePtr, HTTPRequestHandle hRequest, out SteamAPICall_t pCallHandle); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamHTTP_SendHTTPRequestAndStreamResponse", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamHTTP_SendHTTPRequestAndStreamResponse(IntPtr instancePtr, HTTPRequestHandle hRequest, out SteamAPICall_t pCallHandle); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamHTTP_DeferHTTPRequest", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamHTTP_DeferHTTPRequest(IntPtr instancePtr, HTTPRequestHandle hRequest); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamHTTP_PrioritizeHTTPRequest", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamHTTP_PrioritizeHTTPRequest(IntPtr instancePtr, HTTPRequestHandle hRequest); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamHTTP_GetHTTPResponseHeaderSize", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamHTTP_GetHTTPResponseHeaderSize(IntPtr instancePtr, HTTPRequestHandle hRequest, InteropHelp.UTF8StringHandle pchHeaderName, out uint unResponseHeaderSize); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamHTTP_GetHTTPResponseHeaderValue", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamHTTP_GetHTTPResponseHeaderValue(IntPtr instancePtr, HTTPRequestHandle hRequest, InteropHelp.UTF8StringHandle pchHeaderName, byte[] pHeaderValueBuffer, uint unBufferSize); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamHTTP_GetHTTPResponseBodySize", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamHTTP_GetHTTPResponseBodySize(IntPtr instancePtr, HTTPRequestHandle hRequest, out uint unBodySize); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamHTTP_GetHTTPResponseBodyData", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamHTTP_GetHTTPResponseBodyData(IntPtr instancePtr, HTTPRequestHandle hRequest, byte[] pBodyDataBuffer, uint unBufferSize); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamHTTP_GetHTTPStreamingResponseBodyData", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamHTTP_GetHTTPStreamingResponseBodyData(IntPtr instancePtr, HTTPRequestHandle hRequest, uint cOffset, byte[] pBodyDataBuffer, uint unBufferSize); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamHTTP_ReleaseHTTPRequest", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamHTTP_ReleaseHTTPRequest(IntPtr instancePtr, HTTPRequestHandle hRequest); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamHTTP_GetHTTPDownloadProgressPct", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamHTTP_GetHTTPDownloadProgressPct(IntPtr instancePtr, HTTPRequestHandle hRequest, out float pflPercentOut); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamHTTP_SetHTTPRequestRawPostBody", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamHTTP_SetHTTPRequestRawPostBody(IntPtr instancePtr, HTTPRequestHandle hRequest, InteropHelp.UTF8StringHandle pchContentType, byte[] pubBody, uint unBodyLen); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamHTTP_CreateCookieContainer", CallingConvention = CallingConvention.Cdecl)] + + public static extern uint ISteamHTTP_CreateCookieContainer(IntPtr instancePtr, [MarshalAs(UnmanagedType.I1)] bool bAllowResponsesToModify); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamHTTP_ReleaseCookieContainer", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamHTTP_ReleaseCookieContainer(IntPtr instancePtr, HTTPCookieContainerHandle hCookieContainer); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamHTTP_SetCookie", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamHTTP_SetCookie(IntPtr instancePtr, HTTPCookieContainerHandle hCookieContainer, InteropHelp.UTF8StringHandle pchHost, InteropHelp.UTF8StringHandle pchUrl, InteropHelp.UTF8StringHandle pchCookie); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamHTTP_SetHTTPRequestCookieContainer", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamHTTP_SetHTTPRequestCookieContainer(IntPtr instancePtr, HTTPRequestHandle hRequest, HTTPCookieContainerHandle hCookieContainer); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamHTTP_SetHTTPRequestUserAgentInfo", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamHTTP_SetHTTPRequestUserAgentInfo(IntPtr instancePtr, HTTPRequestHandle hRequest, InteropHelp.UTF8StringHandle pchUserAgentInfo); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamHTTP_SetHTTPRequestRequiresVerifiedCertificate", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamHTTP_SetHTTPRequestRequiresVerifiedCertificate(IntPtr instancePtr, HTTPRequestHandle hRequest, [MarshalAs(UnmanagedType.I1)] bool bRequireVerifiedCertificate); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamHTTP_SetHTTPRequestAbsoluteTimeoutMS", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamHTTP_SetHTTPRequestAbsoluteTimeoutMS(IntPtr instancePtr, HTTPRequestHandle hRequest, uint unMilliseconds); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamHTTP_GetHTTPRequestWasTimedOut", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamHTTP_GetHTTPRequestWasTimedOut(IntPtr instancePtr, HTTPRequestHandle hRequest, out bool pbWasTimedOut); + +#endregion +#region SteamInput + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInput_Init", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamInput_Init(IntPtr instancePtr, [MarshalAs(UnmanagedType.I1)] bool bExplicitlyCallRunFrame); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInput_Shutdown", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamInput_Shutdown(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInput_SetInputActionManifestFilePath", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamInput_SetInputActionManifestFilePath(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchInputActionManifestAbsolutePath); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInput_RunFrame", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamInput_RunFrame(IntPtr instancePtr, [MarshalAs(UnmanagedType.I1)] bool bReservedValue); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInput_BWaitForData", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamInput_BWaitForData(IntPtr instancePtr, [MarshalAs(UnmanagedType.I1)] bool bWaitForever, uint unTimeout); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInput_BNewDataAvailable", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamInput_BNewDataAvailable(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInput_GetConnectedControllers", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamInput_GetConnectedControllers(IntPtr instancePtr, [In, Out] InputHandle_t[] handlesOut); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInput_EnableDeviceCallbacks", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamInput_EnableDeviceCallbacks(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInput_EnableActionEventCallbacks", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamInput_EnableActionEventCallbacks(IntPtr instancePtr, SteamInputActionEventCallbackPointer pCallback); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInput_GetActionSetHandle", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamInput_GetActionSetHandle(IntPtr instancePtr, InteropHelp.UTF8StringHandle pszActionSetName); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInput_ActivateActionSet", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamInput_ActivateActionSet(IntPtr instancePtr, InputHandle_t inputHandle, InputActionSetHandle_t actionSetHandle); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInput_GetCurrentActionSet", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamInput_GetCurrentActionSet(IntPtr instancePtr, InputHandle_t inputHandle); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInput_ActivateActionSetLayer", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamInput_ActivateActionSetLayer(IntPtr instancePtr, InputHandle_t inputHandle, InputActionSetHandle_t actionSetLayerHandle); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInput_DeactivateActionSetLayer", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamInput_DeactivateActionSetLayer(IntPtr instancePtr, InputHandle_t inputHandle, InputActionSetHandle_t actionSetLayerHandle); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInput_DeactivateAllActionSetLayers", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamInput_DeactivateAllActionSetLayers(IntPtr instancePtr, InputHandle_t inputHandle); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInput_GetActiveActionSetLayers", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamInput_GetActiveActionSetLayers(IntPtr instancePtr, InputHandle_t inputHandle, [In, Out] InputActionSetHandle_t[] handlesOut); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInput_GetDigitalActionHandle", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamInput_GetDigitalActionHandle(IntPtr instancePtr, InteropHelp.UTF8StringHandle pszActionName); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInput_GetDigitalActionData", CallingConvention = CallingConvention.Cdecl)] + + public static extern InputDigitalActionData_t ISteamInput_GetDigitalActionData(IntPtr instancePtr, InputHandle_t inputHandle, InputDigitalActionHandle_t digitalActionHandle); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInput_GetDigitalActionOrigins", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamInput_GetDigitalActionOrigins(IntPtr instancePtr, InputHandle_t inputHandle, InputActionSetHandle_t actionSetHandle, InputDigitalActionHandle_t digitalActionHandle, [In, Out] EInputActionOrigin[] originsOut); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInput_GetStringForDigitalActionName", CallingConvention = CallingConvention.Cdecl)] + + public static extern IntPtr ISteamInput_GetStringForDigitalActionName(IntPtr instancePtr, InputDigitalActionHandle_t eActionHandle); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInput_GetAnalogActionHandle", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamInput_GetAnalogActionHandle(IntPtr instancePtr, InteropHelp.UTF8StringHandle pszActionName); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInput_GetAnalogActionData", CallingConvention = CallingConvention.Cdecl)] + + public static extern InputAnalogActionData_t ISteamInput_GetAnalogActionData(IntPtr instancePtr, InputHandle_t inputHandle, InputAnalogActionHandle_t analogActionHandle); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInput_GetAnalogActionOrigins", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamInput_GetAnalogActionOrigins(IntPtr instancePtr, InputHandle_t inputHandle, InputActionSetHandle_t actionSetHandle, InputAnalogActionHandle_t analogActionHandle, [In, Out] EInputActionOrigin[] originsOut); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInput_GetGlyphPNGForActionOrigin", CallingConvention = CallingConvention.Cdecl)] + + public static extern IntPtr ISteamInput_GetGlyphPNGForActionOrigin(IntPtr instancePtr, EInputActionOrigin eOrigin, ESteamInputGlyphSize eSize, uint unFlags); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInput_GetGlyphSVGForActionOrigin", CallingConvention = CallingConvention.Cdecl)] + + public static extern IntPtr ISteamInput_GetGlyphSVGForActionOrigin(IntPtr instancePtr, EInputActionOrigin eOrigin, uint unFlags); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInput_GetGlyphForActionOrigin_Legacy", CallingConvention = CallingConvention.Cdecl)] + + public static extern IntPtr ISteamInput_GetGlyphForActionOrigin_Legacy(IntPtr instancePtr, EInputActionOrigin eOrigin); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInput_GetStringForActionOrigin", CallingConvention = CallingConvention.Cdecl)] + + public static extern IntPtr ISteamInput_GetStringForActionOrigin(IntPtr instancePtr, EInputActionOrigin eOrigin); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInput_GetStringForAnalogActionName", CallingConvention = CallingConvention.Cdecl)] + + public static extern IntPtr ISteamInput_GetStringForAnalogActionName(IntPtr instancePtr, InputAnalogActionHandle_t eActionHandle); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInput_StopAnalogActionMomentum", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamInput_StopAnalogActionMomentum(IntPtr instancePtr, InputHandle_t inputHandle, InputAnalogActionHandle_t eAction); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInput_GetMotionData", CallingConvention = CallingConvention.Cdecl)] + + public static extern InputMotionData_t ISteamInput_GetMotionData(IntPtr instancePtr, InputHandle_t inputHandle); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInput_TriggerVibration", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamInput_TriggerVibration(IntPtr instancePtr, InputHandle_t inputHandle, ushort usLeftSpeed, ushort usRightSpeed); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInput_TriggerVibrationExtended", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamInput_TriggerVibrationExtended(IntPtr instancePtr, InputHandle_t inputHandle, ushort usLeftSpeed, ushort usRightSpeed, ushort usLeftTriggerSpeed, ushort usRightTriggerSpeed); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInput_TriggerSimpleHapticEvent", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamInput_TriggerSimpleHapticEvent(IntPtr instancePtr, InputHandle_t inputHandle, EControllerHapticLocation eHapticLocation, byte nIntensity, char nGainDB, byte nOtherIntensity, char nOtherGainDB); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInput_SetLEDColor", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamInput_SetLEDColor(IntPtr instancePtr, InputHandle_t inputHandle, byte nColorR, byte nColorG, byte nColorB, uint nFlags); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInput_Legacy_TriggerHapticPulse", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamInput_Legacy_TriggerHapticPulse(IntPtr instancePtr, InputHandle_t inputHandle, ESteamControllerPad eTargetPad, ushort usDurationMicroSec); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInput_Legacy_TriggerRepeatedHapticPulse", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamInput_Legacy_TriggerRepeatedHapticPulse(IntPtr instancePtr, InputHandle_t inputHandle, ESteamControllerPad eTargetPad, ushort usDurationMicroSec, ushort usOffMicroSec, ushort unRepeat, uint nFlags); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInput_ShowBindingPanel", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamInput_ShowBindingPanel(IntPtr instancePtr, InputHandle_t inputHandle); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInput_GetInputTypeForHandle", CallingConvention = CallingConvention.Cdecl)] + + public static extern ESteamInputType ISteamInput_GetInputTypeForHandle(IntPtr instancePtr, InputHandle_t inputHandle); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInput_GetControllerForGamepadIndex", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamInput_GetControllerForGamepadIndex(IntPtr instancePtr, int nIndex); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInput_GetGamepadIndexForController", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamInput_GetGamepadIndexForController(IntPtr instancePtr, InputHandle_t ulinputHandle); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInput_GetStringForXboxOrigin", CallingConvention = CallingConvention.Cdecl)] + + public static extern IntPtr ISteamInput_GetStringForXboxOrigin(IntPtr instancePtr, EXboxOrigin eOrigin); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInput_GetGlyphForXboxOrigin", CallingConvention = CallingConvention.Cdecl)] + + public static extern IntPtr ISteamInput_GetGlyphForXboxOrigin(IntPtr instancePtr, EXboxOrigin eOrigin); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInput_GetActionOriginFromXboxOrigin", CallingConvention = CallingConvention.Cdecl)] + + public static extern EInputActionOrigin ISteamInput_GetActionOriginFromXboxOrigin(IntPtr instancePtr, InputHandle_t inputHandle, EXboxOrigin eOrigin); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInput_TranslateActionOrigin", CallingConvention = CallingConvention.Cdecl)] + + public static extern EInputActionOrigin ISteamInput_TranslateActionOrigin(IntPtr instancePtr, ESteamInputType eDestinationInputType, EInputActionOrigin eSourceOrigin); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInput_GetDeviceBindingRevision", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamInput_GetDeviceBindingRevision(IntPtr instancePtr, InputHandle_t inputHandle, out int pMajor, out int pMinor); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInput_GetRemotePlaySessionID", CallingConvention = CallingConvention.Cdecl)] + + public static extern uint ISteamInput_GetRemotePlaySessionID(IntPtr instancePtr, InputHandle_t inputHandle); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInput_GetSessionInputConfigurationSettings", CallingConvention = CallingConvention.Cdecl)] + + public static extern ushort ISteamInput_GetSessionInputConfigurationSettings(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInput_SetDualSenseTriggerEffect", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamInput_SetDualSenseTriggerEffect(IntPtr instancePtr, InputHandle_t inputHandle, IntPtr pParam); + +#endregion +#region SteamInventory + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInventory_GetResultStatus", CallingConvention = CallingConvention.Cdecl)] + + public static extern EResult ISteamInventory_GetResultStatus(IntPtr instancePtr, SteamInventoryResult_t resultHandle); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInventory_GetResultItems", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamInventory_GetResultItems(IntPtr instancePtr, SteamInventoryResult_t resultHandle, [In, Out] SteamItemDetails_t[] pOutItemsArray, ref uint punOutItemsArraySize); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInventory_GetResultItemProperty", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamInventory_GetResultItemProperty(IntPtr instancePtr, SteamInventoryResult_t resultHandle, uint unItemIndex, InteropHelp.UTF8StringHandle pchPropertyName, IntPtr pchValueBuffer, ref uint punValueBufferSizeOut); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInventory_GetResultTimestamp", CallingConvention = CallingConvention.Cdecl)] + + public static extern uint ISteamInventory_GetResultTimestamp(IntPtr instancePtr, SteamInventoryResult_t resultHandle); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInventory_CheckResultSteamID", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamInventory_CheckResultSteamID(IntPtr instancePtr, SteamInventoryResult_t resultHandle, CSteamID steamIDExpected); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInventory_DestroyResult", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamInventory_DestroyResult(IntPtr instancePtr, SteamInventoryResult_t resultHandle); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInventory_GetAllItems", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamInventory_GetAllItems(IntPtr instancePtr, out SteamInventoryResult_t pResultHandle); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInventory_GetItemsByID", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamInventory_GetItemsByID(IntPtr instancePtr, out SteamInventoryResult_t pResultHandle, [In, Out] SteamItemInstanceID_t[] pInstanceIDs, uint unCountInstanceIDs); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInventory_SerializeResult", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamInventory_SerializeResult(IntPtr instancePtr, SteamInventoryResult_t resultHandle, byte[] pOutBuffer, out uint punOutBufferSize); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInventory_DeserializeResult", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamInventory_DeserializeResult(IntPtr instancePtr, out SteamInventoryResult_t pOutResultHandle, byte[] pBuffer, uint unBufferSize, [MarshalAs(UnmanagedType.I1)] bool bRESERVED_MUST_BE_FALSE); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInventory_GenerateItems", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamInventory_GenerateItems(IntPtr instancePtr, out SteamInventoryResult_t pResultHandle, [In, Out] SteamItemDef_t[] pArrayItemDefs, [In, Out] uint[] punArrayQuantity, uint unArrayLength); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInventory_GrantPromoItems", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamInventory_GrantPromoItems(IntPtr instancePtr, out SteamInventoryResult_t pResultHandle); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInventory_AddPromoItem", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamInventory_AddPromoItem(IntPtr instancePtr, out SteamInventoryResult_t pResultHandle, SteamItemDef_t itemDef); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInventory_AddPromoItems", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamInventory_AddPromoItems(IntPtr instancePtr, out SteamInventoryResult_t pResultHandle, [In, Out] SteamItemDef_t[] pArrayItemDefs, uint unArrayLength); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInventory_ConsumeItem", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamInventory_ConsumeItem(IntPtr instancePtr, out SteamInventoryResult_t pResultHandle, SteamItemInstanceID_t itemConsume, uint unQuantity); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInventory_ExchangeItems", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamInventory_ExchangeItems(IntPtr instancePtr, out SteamInventoryResult_t pResultHandle, [In, Out] SteamItemDef_t[] pArrayGenerate, [In, Out] uint[] punArrayGenerateQuantity, uint unArrayGenerateLength, [In, Out] SteamItemInstanceID_t[] pArrayDestroy, [In, Out] uint[] punArrayDestroyQuantity, uint unArrayDestroyLength); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInventory_TransferItemQuantity", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamInventory_TransferItemQuantity(IntPtr instancePtr, out SteamInventoryResult_t pResultHandle, SteamItemInstanceID_t itemIdSource, uint unQuantity, SteamItemInstanceID_t itemIdDest); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInventory_SendItemDropHeartbeat", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamInventory_SendItemDropHeartbeat(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInventory_TriggerItemDrop", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamInventory_TriggerItemDrop(IntPtr instancePtr, out SteamInventoryResult_t pResultHandle, SteamItemDef_t dropListDefinition); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInventory_TradeItems", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamInventory_TradeItems(IntPtr instancePtr, out SteamInventoryResult_t pResultHandle, CSteamID steamIDTradePartner, [In, Out] SteamItemInstanceID_t[] pArrayGive, [In, Out] uint[] pArrayGiveQuantity, uint nArrayGiveLength, [In, Out] SteamItemInstanceID_t[] pArrayGet, [In, Out] uint[] pArrayGetQuantity, uint nArrayGetLength); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInventory_LoadItemDefinitions", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamInventory_LoadItemDefinitions(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInventory_GetItemDefinitionIDs", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamInventory_GetItemDefinitionIDs(IntPtr instancePtr, [In, Out] SteamItemDef_t[] pItemDefIDs, ref uint punItemDefIDsArraySize); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInventory_GetItemDefinitionProperty", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamInventory_GetItemDefinitionProperty(IntPtr instancePtr, SteamItemDef_t iDefinition, InteropHelp.UTF8StringHandle pchPropertyName, IntPtr pchValueBuffer, ref uint punValueBufferSizeOut); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInventory_RequestEligiblePromoItemDefinitionsIDs", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamInventory_RequestEligiblePromoItemDefinitionsIDs(IntPtr instancePtr, CSteamID steamID); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInventory_GetEligiblePromoItemDefinitionIDs", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamInventory_GetEligiblePromoItemDefinitionIDs(IntPtr instancePtr, CSteamID steamID, [In, Out] SteamItemDef_t[] pItemDefIDs, ref uint punItemDefIDsArraySize); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInventory_StartPurchase", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamInventory_StartPurchase(IntPtr instancePtr, [In, Out] SteamItemDef_t[] pArrayItemDefs, [In, Out] uint[] punArrayQuantity, uint unArrayLength); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInventory_RequestPrices", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamInventory_RequestPrices(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInventory_GetNumItemsWithPrices", CallingConvention = CallingConvention.Cdecl)] + + public static extern uint ISteamInventory_GetNumItemsWithPrices(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInventory_GetItemsWithPrices", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamInventory_GetItemsWithPrices(IntPtr instancePtr, [In, Out] SteamItemDef_t[] pArrayItemDefs, [In, Out] ulong[] pCurrentPrices, [In, Out] ulong[] pBasePrices, uint unArrayLength); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInventory_GetItemPrice", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamInventory_GetItemPrice(IntPtr instancePtr, SteamItemDef_t iDefinition, out ulong pCurrentPrice, out ulong pBasePrice); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInventory_StartUpdateProperties", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamInventory_StartUpdateProperties(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInventory_RemoveProperty", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamInventory_RemoveProperty(IntPtr instancePtr, SteamInventoryUpdateHandle_t handle, SteamItemInstanceID_t nItemID, InteropHelp.UTF8StringHandle pchPropertyName); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInventory_SetPropertyString", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamInventory_SetPropertyString(IntPtr instancePtr, SteamInventoryUpdateHandle_t handle, SteamItemInstanceID_t nItemID, InteropHelp.UTF8StringHandle pchPropertyName, InteropHelp.UTF8StringHandle pchPropertyValue); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInventory_SetPropertyBool", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamInventory_SetPropertyBool(IntPtr instancePtr, SteamInventoryUpdateHandle_t handle, SteamItemInstanceID_t nItemID, InteropHelp.UTF8StringHandle pchPropertyName, [MarshalAs(UnmanagedType.I1)] bool bValue); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInventory_SetPropertyInt64", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamInventory_SetPropertyInt64(IntPtr instancePtr, SteamInventoryUpdateHandle_t handle, SteamItemInstanceID_t nItemID, InteropHelp.UTF8StringHandle pchPropertyName, long nValue); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInventory_SetPropertyFloat", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamInventory_SetPropertyFloat(IntPtr instancePtr, SteamInventoryUpdateHandle_t handle, SteamItemInstanceID_t nItemID, InteropHelp.UTF8StringHandle pchPropertyName, float flValue); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInventory_SubmitUpdateProperties", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamInventory_SubmitUpdateProperties(IntPtr instancePtr, SteamInventoryUpdateHandle_t handle, out SteamInventoryResult_t pResultHandle); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamInventory_InspectItem", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamInventory_InspectItem(IntPtr instancePtr, out SteamInventoryResult_t pResultHandle, InteropHelp.UTF8StringHandle pchItemToken); + +#endregion +#region SteamMatchmaking + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMatchmaking_GetFavoriteGameCount", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamMatchmaking_GetFavoriteGameCount(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMatchmaking_GetFavoriteGame", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamMatchmaking_GetFavoriteGame(IntPtr instancePtr, int iGame, out AppId_t pnAppID, out uint pnIP, out ushort pnConnPort, out ushort pnQueryPort, out uint punFlags, out uint pRTime32LastPlayedOnServer); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMatchmaking_AddFavoriteGame", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamMatchmaking_AddFavoriteGame(IntPtr instancePtr, AppId_t nAppID, uint nIP, ushort nConnPort, ushort nQueryPort, uint unFlags, uint rTime32LastPlayedOnServer); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMatchmaking_RemoveFavoriteGame", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamMatchmaking_RemoveFavoriteGame(IntPtr instancePtr, AppId_t nAppID, uint nIP, ushort nConnPort, ushort nQueryPort, uint unFlags); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMatchmaking_RequestLobbyList", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamMatchmaking_RequestLobbyList(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMatchmaking_AddRequestLobbyListStringFilter", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamMatchmaking_AddRequestLobbyListStringFilter(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchKeyToMatch, InteropHelp.UTF8StringHandle pchValueToMatch, ELobbyComparison eComparisonType); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMatchmaking_AddRequestLobbyListNumericalFilter", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamMatchmaking_AddRequestLobbyListNumericalFilter(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchKeyToMatch, int nValueToMatch, ELobbyComparison eComparisonType); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMatchmaking_AddRequestLobbyListNearValueFilter", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamMatchmaking_AddRequestLobbyListNearValueFilter(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchKeyToMatch, int nValueToBeCloseTo); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMatchmaking_AddRequestLobbyListFilterSlotsAvailable", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamMatchmaking_AddRequestLobbyListFilterSlotsAvailable(IntPtr instancePtr, int nSlotsAvailable); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMatchmaking_AddRequestLobbyListDistanceFilter", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamMatchmaking_AddRequestLobbyListDistanceFilter(IntPtr instancePtr, ELobbyDistanceFilter eLobbyDistanceFilter); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMatchmaking_AddRequestLobbyListResultCountFilter", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamMatchmaking_AddRequestLobbyListResultCountFilter(IntPtr instancePtr, int cMaxResults); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMatchmaking_AddRequestLobbyListCompatibleMembersFilter", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamMatchmaking_AddRequestLobbyListCompatibleMembersFilter(IntPtr instancePtr, CSteamID steamIDLobby); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMatchmaking_GetLobbyByIndex", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamMatchmaking_GetLobbyByIndex(IntPtr instancePtr, int iLobby); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMatchmaking_CreateLobby", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamMatchmaking_CreateLobby(IntPtr instancePtr, ELobbyType eLobbyType, int cMaxMembers); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMatchmaking_JoinLobby", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamMatchmaking_JoinLobby(IntPtr instancePtr, CSteamID steamIDLobby); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMatchmaking_LeaveLobby", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamMatchmaking_LeaveLobby(IntPtr instancePtr, CSteamID steamIDLobby); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMatchmaking_InviteUserToLobby", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamMatchmaking_InviteUserToLobby(IntPtr instancePtr, CSteamID steamIDLobby, CSteamID steamIDInvitee); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMatchmaking_GetNumLobbyMembers", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamMatchmaking_GetNumLobbyMembers(IntPtr instancePtr, CSteamID steamIDLobby); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMatchmaking_GetLobbyMemberByIndex", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamMatchmaking_GetLobbyMemberByIndex(IntPtr instancePtr, CSteamID steamIDLobby, int iMember); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMatchmaking_GetLobbyData", CallingConvention = CallingConvention.Cdecl)] + + public static extern IntPtr ISteamMatchmaking_GetLobbyData(IntPtr instancePtr, CSteamID steamIDLobby, InteropHelp.UTF8StringHandle pchKey); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMatchmaking_SetLobbyData", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamMatchmaking_SetLobbyData(IntPtr instancePtr, CSteamID steamIDLobby, InteropHelp.UTF8StringHandle pchKey, InteropHelp.UTF8StringHandle pchValue); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMatchmaking_GetLobbyDataCount", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamMatchmaking_GetLobbyDataCount(IntPtr instancePtr, CSteamID steamIDLobby); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMatchmaking_GetLobbyDataByIndex", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamMatchmaking_GetLobbyDataByIndex(IntPtr instancePtr, CSteamID steamIDLobby, int iLobbyData, IntPtr pchKey, int cchKeyBufferSize, IntPtr pchValue, int cchValueBufferSize); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMatchmaking_DeleteLobbyData", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamMatchmaking_DeleteLobbyData(IntPtr instancePtr, CSteamID steamIDLobby, InteropHelp.UTF8StringHandle pchKey); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMatchmaking_GetLobbyMemberData", CallingConvention = CallingConvention.Cdecl)] + + public static extern IntPtr ISteamMatchmaking_GetLobbyMemberData(IntPtr instancePtr, CSteamID steamIDLobby, CSteamID steamIDUser, InteropHelp.UTF8StringHandle pchKey); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMatchmaking_SetLobbyMemberData", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamMatchmaking_SetLobbyMemberData(IntPtr instancePtr, CSteamID steamIDLobby, InteropHelp.UTF8StringHandle pchKey, InteropHelp.UTF8StringHandle pchValue); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMatchmaking_SendLobbyChatMsg", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamMatchmaking_SendLobbyChatMsg(IntPtr instancePtr, CSteamID steamIDLobby, byte[] pvMsgBody, int cubMsgBody); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMatchmaking_GetLobbyChatEntry", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamMatchmaking_GetLobbyChatEntry(IntPtr instancePtr, CSteamID steamIDLobby, int iChatID, out CSteamID pSteamIDUser, byte[] pvData, int cubData, out EChatEntryType peChatEntryType); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMatchmaking_RequestLobbyData", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamMatchmaking_RequestLobbyData(IntPtr instancePtr, CSteamID steamIDLobby); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMatchmaking_SetLobbyGameServer", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamMatchmaking_SetLobbyGameServer(IntPtr instancePtr, CSteamID steamIDLobby, uint unGameServerIP, ushort unGameServerPort, CSteamID steamIDGameServer); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMatchmaking_GetLobbyGameServer", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamMatchmaking_GetLobbyGameServer(IntPtr instancePtr, CSteamID steamIDLobby, out uint punGameServerIP, out ushort punGameServerPort, out CSteamID psteamIDGameServer); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMatchmaking_SetLobbyMemberLimit", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamMatchmaking_SetLobbyMemberLimit(IntPtr instancePtr, CSteamID steamIDLobby, int cMaxMembers); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMatchmaking_GetLobbyMemberLimit", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamMatchmaking_GetLobbyMemberLimit(IntPtr instancePtr, CSteamID steamIDLobby); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMatchmaking_SetLobbyType", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamMatchmaking_SetLobbyType(IntPtr instancePtr, CSteamID steamIDLobby, ELobbyType eLobbyType); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMatchmaking_SetLobbyJoinable", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamMatchmaking_SetLobbyJoinable(IntPtr instancePtr, CSteamID steamIDLobby, [MarshalAs(UnmanagedType.I1)] bool bLobbyJoinable); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMatchmaking_GetLobbyOwner", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamMatchmaking_GetLobbyOwner(IntPtr instancePtr, CSteamID steamIDLobby); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMatchmaking_SetLobbyOwner", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamMatchmaking_SetLobbyOwner(IntPtr instancePtr, CSteamID steamIDLobby, CSteamID steamIDNewOwner); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMatchmaking_SetLinkedLobby", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamMatchmaking_SetLinkedLobby(IntPtr instancePtr, CSteamID steamIDLobby, CSteamID steamIDLobbyDependent); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMatchmaking_CheckForPSNGameBootInvite", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamMatchmaking_CheckForPSNGameBootInvite(IntPtr instancePtr, uint iGameBootAttributes); + +#endregion +#region SteamMatchmakingServers + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMatchmakingServers_RequestInternetServerList", CallingConvention = CallingConvention.Cdecl)] + + public static extern IntPtr ISteamMatchmakingServers_RequestInternetServerList(IntPtr instancePtr, AppId_t iApp, IntPtr ppchFilters, uint nFilters, IntPtr pRequestServersResponse); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMatchmakingServers_RequestLANServerList", CallingConvention = CallingConvention.Cdecl)] + + public static extern IntPtr ISteamMatchmakingServers_RequestLANServerList(IntPtr instancePtr, AppId_t iApp, IntPtr pRequestServersResponse); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMatchmakingServers_RequestFriendsServerList", CallingConvention = CallingConvention.Cdecl)] + + public static extern IntPtr ISteamMatchmakingServers_RequestFriendsServerList(IntPtr instancePtr, AppId_t iApp, IntPtr ppchFilters, uint nFilters, IntPtr pRequestServersResponse); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMatchmakingServers_RequestFavoritesServerList", CallingConvention = CallingConvention.Cdecl)] + + public static extern IntPtr ISteamMatchmakingServers_RequestFavoritesServerList(IntPtr instancePtr, AppId_t iApp, IntPtr ppchFilters, uint nFilters, IntPtr pRequestServersResponse); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMatchmakingServers_RequestHistoryServerList", CallingConvention = CallingConvention.Cdecl)] + + public static extern IntPtr ISteamMatchmakingServers_RequestHistoryServerList(IntPtr instancePtr, AppId_t iApp, IntPtr ppchFilters, uint nFilters, IntPtr pRequestServersResponse); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMatchmakingServers_RequestSpectatorServerList", CallingConvention = CallingConvention.Cdecl)] + + public static extern IntPtr ISteamMatchmakingServers_RequestSpectatorServerList(IntPtr instancePtr, AppId_t iApp, IntPtr ppchFilters, uint nFilters, IntPtr pRequestServersResponse); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMatchmakingServers_ReleaseRequest", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamMatchmakingServers_ReleaseRequest(IntPtr instancePtr, HServerListRequest hServerListRequest); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMatchmakingServers_GetServerDetails", CallingConvention = CallingConvention.Cdecl)] + + public static extern IntPtr ISteamMatchmakingServers_GetServerDetails(IntPtr instancePtr, HServerListRequest hRequest, int iServer); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMatchmakingServers_CancelQuery", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamMatchmakingServers_CancelQuery(IntPtr instancePtr, HServerListRequest hRequest); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMatchmakingServers_RefreshQuery", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamMatchmakingServers_RefreshQuery(IntPtr instancePtr, HServerListRequest hRequest); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMatchmakingServers_IsRefreshing", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamMatchmakingServers_IsRefreshing(IntPtr instancePtr, HServerListRequest hRequest); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMatchmakingServers_GetServerCount", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamMatchmakingServers_GetServerCount(IntPtr instancePtr, HServerListRequest hRequest); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMatchmakingServers_RefreshServer", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamMatchmakingServers_RefreshServer(IntPtr instancePtr, HServerListRequest hRequest, int iServer); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMatchmakingServers_PingServer", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamMatchmakingServers_PingServer(IntPtr instancePtr, uint unIP, ushort usPort, IntPtr pRequestServersResponse); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMatchmakingServers_PlayerDetails", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamMatchmakingServers_PlayerDetails(IntPtr instancePtr, uint unIP, ushort usPort, IntPtr pRequestServersResponse); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMatchmakingServers_ServerRules", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamMatchmakingServers_ServerRules(IntPtr instancePtr, uint unIP, ushort usPort, IntPtr pRequestServersResponse); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMatchmakingServers_CancelServerQuery", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamMatchmakingServers_CancelServerQuery(IntPtr instancePtr, HServerQuery hServerQuery); + +#endregion +#region SteamGameSearch + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamGameSearch_AddGameSearchParams", CallingConvention = CallingConvention.Cdecl)] + + public static extern EGameSearchErrorCode_t ISteamGameSearch_AddGameSearchParams(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchKeyToFind, InteropHelp.UTF8StringHandle pchValuesToFind); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamGameSearch_SearchForGameWithLobby", CallingConvention = CallingConvention.Cdecl)] + + public static extern EGameSearchErrorCode_t ISteamGameSearch_SearchForGameWithLobby(IntPtr instancePtr, CSteamID steamIDLobby, int nPlayerMin, int nPlayerMax); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamGameSearch_SearchForGameSolo", CallingConvention = CallingConvention.Cdecl)] + + public static extern EGameSearchErrorCode_t ISteamGameSearch_SearchForGameSolo(IntPtr instancePtr, int nPlayerMin, int nPlayerMax); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamGameSearch_AcceptGame", CallingConvention = CallingConvention.Cdecl)] + + public static extern EGameSearchErrorCode_t ISteamGameSearch_AcceptGame(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamGameSearch_DeclineGame", CallingConvention = CallingConvention.Cdecl)] + + public static extern EGameSearchErrorCode_t ISteamGameSearch_DeclineGame(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamGameSearch_RetrieveConnectionDetails", CallingConvention = CallingConvention.Cdecl)] + + public static extern EGameSearchErrorCode_t ISteamGameSearch_RetrieveConnectionDetails(IntPtr instancePtr, CSteamID steamIDHost, IntPtr pchConnectionDetails, int cubConnectionDetails); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamGameSearch_EndGameSearch", CallingConvention = CallingConvention.Cdecl)] + + public static extern EGameSearchErrorCode_t ISteamGameSearch_EndGameSearch(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamGameSearch_SetGameHostParams", CallingConvention = CallingConvention.Cdecl)] + + public static extern EGameSearchErrorCode_t ISteamGameSearch_SetGameHostParams(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchKey, InteropHelp.UTF8StringHandle pchValue); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamGameSearch_SetConnectionDetails", CallingConvention = CallingConvention.Cdecl)] + + public static extern EGameSearchErrorCode_t ISteamGameSearch_SetConnectionDetails(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchConnectionDetails, int cubConnectionDetails); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamGameSearch_RequestPlayersForGame", CallingConvention = CallingConvention.Cdecl)] + + public static extern EGameSearchErrorCode_t ISteamGameSearch_RequestPlayersForGame(IntPtr instancePtr, int nPlayerMin, int nPlayerMax, int nMaxTeamSize); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamGameSearch_HostConfirmGameStart", CallingConvention = CallingConvention.Cdecl)] + + public static extern EGameSearchErrorCode_t ISteamGameSearch_HostConfirmGameStart(IntPtr instancePtr, ulong ullUniqueGameID); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamGameSearch_CancelRequestPlayersForGame", CallingConvention = CallingConvention.Cdecl)] + + public static extern EGameSearchErrorCode_t ISteamGameSearch_CancelRequestPlayersForGame(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamGameSearch_SubmitPlayerResult", CallingConvention = CallingConvention.Cdecl)] + + public static extern EGameSearchErrorCode_t ISteamGameSearch_SubmitPlayerResult(IntPtr instancePtr, ulong ullUniqueGameID, CSteamID steamIDPlayer, EPlayerResult_t EPlayerResult); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamGameSearch_EndGame", CallingConvention = CallingConvention.Cdecl)] + + public static extern EGameSearchErrorCode_t ISteamGameSearch_EndGame(IntPtr instancePtr, ulong ullUniqueGameID); + +#endregion +#region SteamParties + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamParties_GetNumActiveBeacons", CallingConvention = CallingConvention.Cdecl)] + + public static extern uint ISteamParties_GetNumActiveBeacons(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamParties_GetBeaconByIndex", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamParties_GetBeaconByIndex(IntPtr instancePtr, uint unIndex); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamParties_GetBeaconDetails", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamParties_GetBeaconDetails(IntPtr instancePtr, PartyBeaconID_t ulBeaconID, out CSteamID pSteamIDBeaconOwner, out SteamPartyBeaconLocation_t pLocation, IntPtr pchMetadata, int cchMetadata); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamParties_JoinParty", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamParties_JoinParty(IntPtr instancePtr, PartyBeaconID_t ulBeaconID); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamParties_GetNumAvailableBeaconLocations", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamParties_GetNumAvailableBeaconLocations(IntPtr instancePtr, out uint puNumLocations); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamParties_GetAvailableBeaconLocations", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamParties_GetAvailableBeaconLocations(IntPtr instancePtr, [In, Out] SteamPartyBeaconLocation_t[] pLocationList, uint uMaxNumLocations); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamParties_CreateBeacon", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamParties_CreateBeacon(IntPtr instancePtr, uint unOpenSlots, ref SteamPartyBeaconLocation_t pBeaconLocation, InteropHelp.UTF8StringHandle pchConnectString, InteropHelp.UTF8StringHandle pchMetadata); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamParties_OnReservationCompleted", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamParties_OnReservationCompleted(IntPtr instancePtr, PartyBeaconID_t ulBeacon, CSteamID steamIDUser); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamParties_CancelReservation", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamParties_CancelReservation(IntPtr instancePtr, PartyBeaconID_t ulBeacon, CSteamID steamIDUser); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamParties_ChangeNumOpenSlots", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamParties_ChangeNumOpenSlots(IntPtr instancePtr, PartyBeaconID_t ulBeacon, uint unOpenSlots); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamParties_DestroyBeacon", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamParties_DestroyBeacon(IntPtr instancePtr, PartyBeaconID_t ulBeacon); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamParties_GetBeaconLocationData", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamParties_GetBeaconLocationData(IntPtr instancePtr, SteamPartyBeaconLocation_t BeaconLocation, ESteamPartyBeaconLocationData eData, IntPtr pchDataStringOut, int cchDataStringOut); + +#endregion +#region SteamMusic + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMusic_BIsEnabled", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamMusic_BIsEnabled(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMusic_BIsPlaying", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamMusic_BIsPlaying(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMusic_GetPlaybackStatus", CallingConvention = CallingConvention.Cdecl)] + + public static extern AudioPlayback_Status ISteamMusic_GetPlaybackStatus(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMusic_Play", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamMusic_Play(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMusic_Pause", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamMusic_Pause(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMusic_PlayPrevious", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamMusic_PlayPrevious(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMusic_PlayNext", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamMusic_PlayNext(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMusic_SetVolume", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamMusic_SetVolume(IntPtr instancePtr, float flVolume); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMusic_GetVolume", CallingConvention = CallingConvention.Cdecl)] + + public static extern float ISteamMusic_GetVolume(IntPtr instancePtr); + +#endregion +#region SteamMusicRemote + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMusicRemote_RegisterSteamMusicRemote", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamMusicRemote_RegisterSteamMusicRemote(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchName); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMusicRemote_DeregisterSteamMusicRemote", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamMusicRemote_DeregisterSteamMusicRemote(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMusicRemote_BIsCurrentMusicRemote", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamMusicRemote_BIsCurrentMusicRemote(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMusicRemote_BActivationSuccess", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamMusicRemote_BActivationSuccess(IntPtr instancePtr, [MarshalAs(UnmanagedType.I1)] bool bValue); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMusicRemote_SetDisplayName", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamMusicRemote_SetDisplayName(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchDisplayName); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMusicRemote_SetPNGIcon_64x64", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamMusicRemote_SetPNGIcon_64x64(IntPtr instancePtr, byte[] pvBuffer, uint cbBufferLength); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMusicRemote_EnablePlayPrevious", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamMusicRemote_EnablePlayPrevious(IntPtr instancePtr, [MarshalAs(UnmanagedType.I1)] bool bValue); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMusicRemote_EnablePlayNext", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamMusicRemote_EnablePlayNext(IntPtr instancePtr, [MarshalAs(UnmanagedType.I1)] bool bValue); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMusicRemote_EnableShuffled", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamMusicRemote_EnableShuffled(IntPtr instancePtr, [MarshalAs(UnmanagedType.I1)] bool bValue); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMusicRemote_EnableLooped", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamMusicRemote_EnableLooped(IntPtr instancePtr, [MarshalAs(UnmanagedType.I1)] bool bValue); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMusicRemote_EnableQueue", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamMusicRemote_EnableQueue(IntPtr instancePtr, [MarshalAs(UnmanagedType.I1)] bool bValue); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMusicRemote_EnablePlaylists", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamMusicRemote_EnablePlaylists(IntPtr instancePtr, [MarshalAs(UnmanagedType.I1)] bool bValue); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMusicRemote_UpdatePlaybackStatus", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamMusicRemote_UpdatePlaybackStatus(IntPtr instancePtr, AudioPlayback_Status nStatus); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMusicRemote_UpdateShuffled", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamMusicRemote_UpdateShuffled(IntPtr instancePtr, [MarshalAs(UnmanagedType.I1)] bool bValue); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMusicRemote_UpdateLooped", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamMusicRemote_UpdateLooped(IntPtr instancePtr, [MarshalAs(UnmanagedType.I1)] bool bValue); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMusicRemote_UpdateVolume", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamMusicRemote_UpdateVolume(IntPtr instancePtr, float flValue); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMusicRemote_CurrentEntryWillChange", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamMusicRemote_CurrentEntryWillChange(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMusicRemote_CurrentEntryIsAvailable", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamMusicRemote_CurrentEntryIsAvailable(IntPtr instancePtr, [MarshalAs(UnmanagedType.I1)] bool bAvailable); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMusicRemote_UpdateCurrentEntryText", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamMusicRemote_UpdateCurrentEntryText(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchText); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMusicRemote_UpdateCurrentEntryElapsedSeconds", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamMusicRemote_UpdateCurrentEntryElapsedSeconds(IntPtr instancePtr, int nValue); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMusicRemote_UpdateCurrentEntryCoverArt", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamMusicRemote_UpdateCurrentEntryCoverArt(IntPtr instancePtr, byte[] pvBuffer, uint cbBufferLength); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMusicRemote_CurrentEntryDidChange", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamMusicRemote_CurrentEntryDidChange(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMusicRemote_QueueWillChange", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamMusicRemote_QueueWillChange(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMusicRemote_ResetQueueEntries", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamMusicRemote_ResetQueueEntries(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMusicRemote_SetQueueEntry", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamMusicRemote_SetQueueEntry(IntPtr instancePtr, int nID, int nPosition, InteropHelp.UTF8StringHandle pchEntryText); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMusicRemote_SetCurrentQueueEntry", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamMusicRemote_SetCurrentQueueEntry(IntPtr instancePtr, int nID); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMusicRemote_QueueDidChange", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamMusicRemote_QueueDidChange(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMusicRemote_PlaylistWillChange", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamMusicRemote_PlaylistWillChange(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMusicRemote_ResetPlaylistEntries", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamMusicRemote_ResetPlaylistEntries(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMusicRemote_SetPlaylistEntry", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamMusicRemote_SetPlaylistEntry(IntPtr instancePtr, int nID, int nPosition, InteropHelp.UTF8StringHandle pchEntryText); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMusicRemote_SetCurrentPlaylistEntry", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamMusicRemote_SetCurrentPlaylistEntry(IntPtr instancePtr, int nID); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamMusicRemote_PlaylistDidChange", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamMusicRemote_PlaylistDidChange(IntPtr instancePtr); + +#endregion +#region SteamNetworking + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworking_SendP2PPacket", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamNetworking_SendP2PPacket(IntPtr instancePtr, CSteamID steamIDRemote, byte[] pubData, uint cubData, EP2PSend eP2PSendType, int nChannel); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworking_IsP2PPacketAvailable", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamNetworking_IsP2PPacketAvailable(IntPtr instancePtr, out uint pcubMsgSize, int nChannel); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworking_ReadP2PPacket", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamNetworking_ReadP2PPacket(IntPtr instancePtr, byte[] pubDest, uint cubDest, out uint pcubMsgSize, out CSteamID psteamIDRemote, int nChannel); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworking_AcceptP2PSessionWithUser", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamNetworking_AcceptP2PSessionWithUser(IntPtr instancePtr, CSteamID steamIDRemote); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworking_CloseP2PSessionWithUser", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamNetworking_CloseP2PSessionWithUser(IntPtr instancePtr, CSteamID steamIDRemote); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworking_CloseP2PChannelWithUser", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamNetworking_CloseP2PChannelWithUser(IntPtr instancePtr, CSteamID steamIDRemote, int nChannel); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworking_GetP2PSessionState", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamNetworking_GetP2PSessionState(IntPtr instancePtr, CSteamID steamIDRemote, out P2PSessionState_t pConnectionState); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworking_AllowP2PPacketRelay", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamNetworking_AllowP2PPacketRelay(IntPtr instancePtr, [MarshalAs(UnmanagedType.I1)] bool bAllow); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworking_CreateListenSocket", CallingConvention = CallingConvention.Cdecl)] + + public static extern uint ISteamNetworking_CreateListenSocket(IntPtr instancePtr, int nVirtualP2PPort, SteamIPAddress_t nIP, ushort nPort, [MarshalAs(UnmanagedType.I1)] bool bAllowUseOfPacketRelay); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworking_CreateP2PConnectionSocket", CallingConvention = CallingConvention.Cdecl)] + + public static extern uint ISteamNetworking_CreateP2PConnectionSocket(IntPtr instancePtr, CSteamID steamIDTarget, int nVirtualPort, int nTimeoutSec, [MarshalAs(UnmanagedType.I1)] bool bAllowUseOfPacketRelay); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworking_CreateConnectionSocket", CallingConvention = CallingConvention.Cdecl)] + + public static extern uint ISteamNetworking_CreateConnectionSocket(IntPtr instancePtr, SteamIPAddress_t nIP, ushort nPort, int nTimeoutSec); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworking_DestroySocket", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamNetworking_DestroySocket(IntPtr instancePtr, SNetSocket_t hSocket, [MarshalAs(UnmanagedType.I1)] bool bNotifyRemoteEnd); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworking_DestroyListenSocket", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamNetworking_DestroyListenSocket(IntPtr instancePtr, SNetListenSocket_t hSocket, [MarshalAs(UnmanagedType.I1)] bool bNotifyRemoteEnd); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworking_SendDataOnSocket", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamNetworking_SendDataOnSocket(IntPtr instancePtr, SNetSocket_t hSocket, byte[] pubData, uint cubData, [MarshalAs(UnmanagedType.I1)] bool bReliable); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworking_IsDataAvailableOnSocket", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamNetworking_IsDataAvailableOnSocket(IntPtr instancePtr, SNetSocket_t hSocket, out uint pcubMsgSize); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworking_RetrieveDataFromSocket", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamNetworking_RetrieveDataFromSocket(IntPtr instancePtr, SNetSocket_t hSocket, byte[] pubDest, uint cubDest, out uint pcubMsgSize); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworking_IsDataAvailable", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamNetworking_IsDataAvailable(IntPtr instancePtr, SNetListenSocket_t hListenSocket, out uint pcubMsgSize, out SNetSocket_t phSocket); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworking_RetrieveData", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamNetworking_RetrieveData(IntPtr instancePtr, SNetListenSocket_t hListenSocket, byte[] pubDest, uint cubDest, out uint pcubMsgSize, out SNetSocket_t phSocket); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworking_GetSocketInfo", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamNetworking_GetSocketInfo(IntPtr instancePtr, SNetSocket_t hSocket, out CSteamID pSteamIDRemote, out int peSocketStatus, out SteamIPAddress_t punIPRemote, out ushort punPortRemote); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworking_GetListenSocketInfo", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamNetworking_GetListenSocketInfo(IntPtr instancePtr, SNetListenSocket_t hListenSocket, out SteamIPAddress_t pnIP, out ushort pnPort); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworking_GetSocketConnectionType", CallingConvention = CallingConvention.Cdecl)] + + public static extern ESNetSocketConnectionType ISteamNetworking_GetSocketConnectionType(IntPtr instancePtr, SNetSocket_t hSocket); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworking_GetMaxPacketSize", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamNetworking_GetMaxPacketSize(IntPtr instancePtr, SNetSocket_t hSocket); + +#endregion +#region SteamNetworkingMessages + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingMessages_SendMessageToUser", CallingConvention = CallingConvention.Cdecl)] + + public static extern EResult ISteamNetworkingMessages_SendMessageToUser(IntPtr instancePtr, ref SteamNetworkingIdentity identityRemote, IntPtr pubData, uint cubData, int nSendFlags, int nRemoteChannel); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingMessages_ReceiveMessagesOnChannel", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamNetworkingMessages_ReceiveMessagesOnChannel(IntPtr instancePtr, int nLocalChannel, [In, Out] IntPtr[] ppOutMessages, int nMaxMessages); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingMessages_AcceptSessionWithUser", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamNetworkingMessages_AcceptSessionWithUser(IntPtr instancePtr, ref SteamNetworkingIdentity identityRemote); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingMessages_CloseSessionWithUser", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamNetworkingMessages_CloseSessionWithUser(IntPtr instancePtr, ref SteamNetworkingIdentity identityRemote); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingMessages_CloseChannelWithUser", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamNetworkingMessages_CloseChannelWithUser(IntPtr instancePtr, ref SteamNetworkingIdentity identityRemote, int nLocalChannel); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingMessages_GetSessionConnectionInfo", CallingConvention = CallingConvention.Cdecl)] + + public static extern ESteamNetworkingConnectionState ISteamNetworkingMessages_GetSessionConnectionInfo(IntPtr instancePtr, ref SteamNetworkingIdentity identityRemote, out SteamNetConnectionInfo_t pConnectionInfo, out SteamNetConnectionRealTimeStatus_t pQuickStatus); + +#endregion +#region SteamNetworkingSockets + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingSockets_CreateListenSocketIP", CallingConvention = CallingConvention.Cdecl)] + + public static extern uint ISteamNetworkingSockets_CreateListenSocketIP(IntPtr instancePtr, ref SteamNetworkingIPAddr localAddress, int nOptions, [In, Out] SteamNetworkingConfigValue_t[] pOptions); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingSockets_ConnectByIPAddress", CallingConvention = CallingConvention.Cdecl)] + + public static extern uint ISteamNetworkingSockets_ConnectByIPAddress(IntPtr instancePtr, ref SteamNetworkingIPAddr address, int nOptions, [In, Out] SteamNetworkingConfigValue_t[] pOptions); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingSockets_CreateListenSocketP2P", CallingConvention = CallingConvention.Cdecl)] + + public static extern uint ISteamNetworkingSockets_CreateListenSocketP2P(IntPtr instancePtr, int nLocalVirtualPort, int nOptions, [In, Out] SteamNetworkingConfigValue_t[] pOptions); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingSockets_ConnectP2P", CallingConvention = CallingConvention.Cdecl)] + + public static extern uint ISteamNetworkingSockets_ConnectP2P(IntPtr instancePtr, ref SteamNetworkingIdentity identityRemote, int nRemoteVirtualPort, int nOptions, [In, Out] SteamNetworkingConfigValue_t[] pOptions); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingSockets_AcceptConnection", CallingConvention = CallingConvention.Cdecl)] + + public static extern EResult ISteamNetworkingSockets_AcceptConnection(IntPtr instancePtr, HSteamNetConnection hConn); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingSockets_CloseConnection", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamNetworkingSockets_CloseConnection(IntPtr instancePtr, HSteamNetConnection hPeer, int nReason, InteropHelp.UTF8StringHandle pszDebug, [MarshalAs(UnmanagedType.I1)] bool bEnableLinger); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingSockets_CloseListenSocket", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamNetworkingSockets_CloseListenSocket(IntPtr instancePtr, HSteamListenSocket hSocket); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingSockets_SetConnectionUserData", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamNetworkingSockets_SetConnectionUserData(IntPtr instancePtr, HSteamNetConnection hPeer, long nUserData); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingSockets_GetConnectionUserData", CallingConvention = CallingConvention.Cdecl)] + + public static extern long ISteamNetworkingSockets_GetConnectionUserData(IntPtr instancePtr, HSteamNetConnection hPeer); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingSockets_SetConnectionName", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamNetworkingSockets_SetConnectionName(IntPtr instancePtr, HSteamNetConnection hPeer, InteropHelp.UTF8StringHandle pszName); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingSockets_GetConnectionName", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamNetworkingSockets_GetConnectionName(IntPtr instancePtr, HSteamNetConnection hPeer, IntPtr pszName, int nMaxLen); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingSockets_SendMessageToConnection", CallingConvention = CallingConvention.Cdecl)] + + public static extern EResult ISteamNetworkingSockets_SendMessageToConnection(IntPtr instancePtr, HSteamNetConnection hConn, IntPtr pData, uint cbData, int nSendFlags, out long pOutMessageNumber); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingSockets_SendMessages", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamNetworkingSockets_SendMessages(IntPtr instancePtr, int nMessages, [In, Out] IntPtr[] pMessages, [In, Out] long[] pOutMessageNumberOrResult); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingSockets_FlushMessagesOnConnection", CallingConvention = CallingConvention.Cdecl)] + + public static extern EResult ISteamNetworkingSockets_FlushMessagesOnConnection(IntPtr instancePtr, HSteamNetConnection hConn); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingSockets_ReceiveMessagesOnConnection", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamNetworkingSockets_ReceiveMessagesOnConnection(IntPtr instancePtr, HSteamNetConnection hConn, [In, Out] IntPtr[] ppOutMessages, int nMaxMessages); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingSockets_GetConnectionInfo", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamNetworkingSockets_GetConnectionInfo(IntPtr instancePtr, HSteamNetConnection hConn, out SteamNetConnectionInfo_t pInfo); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingSockets_GetConnectionRealTimeStatus", CallingConvention = CallingConvention.Cdecl)] + + public static extern EResult ISteamNetworkingSockets_GetConnectionRealTimeStatus(IntPtr instancePtr, HSteamNetConnection hConn, ref SteamNetConnectionRealTimeStatus_t pStatus, int nLanes, ref SteamNetConnectionRealTimeLaneStatus_t pLanes); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingSockets_GetDetailedConnectionStatus", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamNetworkingSockets_GetDetailedConnectionStatus(IntPtr instancePtr, HSteamNetConnection hConn, IntPtr pszBuf, int cbBuf); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingSockets_GetListenSocketAddress", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamNetworkingSockets_GetListenSocketAddress(IntPtr instancePtr, HSteamListenSocket hSocket, out SteamNetworkingIPAddr address); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingSockets_CreateSocketPair", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamNetworkingSockets_CreateSocketPair(IntPtr instancePtr, out HSteamNetConnection pOutConnection1, out HSteamNetConnection pOutConnection2, [MarshalAs(UnmanagedType.I1)] bool bUseNetworkLoopback, ref SteamNetworkingIdentity pIdentity1, ref SteamNetworkingIdentity pIdentity2); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingSockets_ConfigureConnectionLanes", CallingConvention = CallingConvention.Cdecl)] + + public static extern EResult ISteamNetworkingSockets_ConfigureConnectionLanes(IntPtr instancePtr, HSteamNetConnection hConn, int nNumLanes, [In, Out] int[] pLanePriorities, [In, Out] ushort[] pLaneWeights); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingSockets_GetIdentity", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamNetworkingSockets_GetIdentity(IntPtr instancePtr, out SteamNetworkingIdentity pIdentity); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingSockets_InitAuthentication", CallingConvention = CallingConvention.Cdecl)] + + public static extern ESteamNetworkingAvailability ISteamNetworkingSockets_InitAuthentication(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingSockets_GetAuthenticationStatus", CallingConvention = CallingConvention.Cdecl)] + + public static extern ESteamNetworkingAvailability ISteamNetworkingSockets_GetAuthenticationStatus(IntPtr instancePtr, out SteamNetAuthenticationStatus_t pDetails); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingSockets_CreatePollGroup", CallingConvention = CallingConvention.Cdecl)] + + public static extern uint ISteamNetworkingSockets_CreatePollGroup(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingSockets_DestroyPollGroup", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamNetworkingSockets_DestroyPollGroup(IntPtr instancePtr, HSteamNetPollGroup hPollGroup); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingSockets_SetConnectionPollGroup", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamNetworkingSockets_SetConnectionPollGroup(IntPtr instancePtr, HSteamNetConnection hConn, HSteamNetPollGroup hPollGroup); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingSockets_ReceiveMessagesOnPollGroup", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamNetworkingSockets_ReceiveMessagesOnPollGroup(IntPtr instancePtr, HSteamNetPollGroup hPollGroup, [In, Out] IntPtr[] ppOutMessages, int nMaxMessages); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingSockets_ReceivedRelayAuthTicket", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamNetworkingSockets_ReceivedRelayAuthTicket(IntPtr instancePtr, IntPtr pvTicket, int cbTicket, out SteamDatagramRelayAuthTicket pOutParsedTicket); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingSockets_FindRelayAuthTicketForServer", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamNetworkingSockets_FindRelayAuthTicketForServer(IntPtr instancePtr, ref SteamNetworkingIdentity identityGameServer, int nRemoteVirtualPort, out SteamDatagramRelayAuthTicket pOutParsedTicket); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingSockets_ConnectToHostedDedicatedServer", CallingConvention = CallingConvention.Cdecl)] + + public static extern uint ISteamNetworkingSockets_ConnectToHostedDedicatedServer(IntPtr instancePtr, ref SteamNetworkingIdentity identityTarget, int nRemoteVirtualPort, int nOptions, [In, Out] SteamNetworkingConfigValue_t[] pOptions); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingSockets_GetHostedDedicatedServerPort", CallingConvention = CallingConvention.Cdecl)] + + public static extern ushort ISteamNetworkingSockets_GetHostedDedicatedServerPort(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingSockets_GetHostedDedicatedServerPOPID", CallingConvention = CallingConvention.Cdecl)] + + public static extern uint ISteamNetworkingSockets_GetHostedDedicatedServerPOPID(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingSockets_GetHostedDedicatedServerAddress", CallingConvention = CallingConvention.Cdecl)] + + public static extern EResult ISteamNetworkingSockets_GetHostedDedicatedServerAddress(IntPtr instancePtr, out SteamDatagramHostedAddress pRouting); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingSockets_CreateHostedDedicatedServerListenSocket", CallingConvention = CallingConvention.Cdecl)] + + public static extern uint ISteamNetworkingSockets_CreateHostedDedicatedServerListenSocket(IntPtr instancePtr, int nLocalVirtualPort, int nOptions, [In, Out] SteamNetworkingConfigValue_t[] pOptions); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingSockets_GetGameCoordinatorServerLogin", CallingConvention = CallingConvention.Cdecl)] + + public static extern EResult ISteamNetworkingSockets_GetGameCoordinatorServerLogin(IntPtr instancePtr, IntPtr pLoginInfo, out int pcbSignedBlob, IntPtr pBlob); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingSockets_ConnectP2PCustomSignaling", CallingConvention = CallingConvention.Cdecl)] + + public static extern uint ISteamNetworkingSockets_ConnectP2PCustomSignaling(IntPtr instancePtr, out ISteamNetworkingConnectionSignaling pSignaling, ref SteamNetworkingIdentity pPeerIdentity, int nRemoteVirtualPort, int nOptions, [In, Out] SteamNetworkingConfigValue_t[] pOptions); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingSockets_ReceivedP2PCustomSignal", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamNetworkingSockets_ReceivedP2PCustomSignal(IntPtr instancePtr, IntPtr pMsg, int cbMsg, out ISteamNetworkingSignalingRecvContext pContext); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingSockets_GetCertificateRequest", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamNetworkingSockets_GetCertificateRequest(IntPtr instancePtr, out int pcbBlob, IntPtr pBlob, out SteamNetworkingErrMsg errMsg); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingSockets_SetCertificate", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamNetworkingSockets_SetCertificate(IntPtr instancePtr, IntPtr pCertificate, int cbCertificate, out SteamNetworkingErrMsg errMsg); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingSockets_ResetIdentity", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamNetworkingSockets_ResetIdentity(IntPtr instancePtr, ref SteamNetworkingIdentity pIdentity); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingSockets_RunCallbacks", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamNetworkingSockets_RunCallbacks(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingSockets_BeginAsyncRequestFakeIP", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamNetworkingSockets_BeginAsyncRequestFakeIP(IntPtr instancePtr, int nNumPorts); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingSockets_GetFakeIP", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamNetworkingSockets_GetFakeIP(IntPtr instancePtr, int idxFirstPort, out SteamNetworkingFakeIPResult_t pInfo); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingSockets_CreateListenSocketP2PFakeIP", CallingConvention = CallingConvention.Cdecl)] + + public static extern uint ISteamNetworkingSockets_CreateListenSocketP2PFakeIP(IntPtr instancePtr, int idxFakePort, int nOptions, [In, Out] SteamNetworkingConfigValue_t[] pOptions); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingSockets_GetRemoteFakeIPForConnection", CallingConvention = CallingConvention.Cdecl)] + + public static extern EResult ISteamNetworkingSockets_GetRemoteFakeIPForConnection(IntPtr instancePtr, HSteamNetConnection hConn, out SteamNetworkingIPAddr pOutAddr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingSockets_CreateFakeUDPPort", CallingConvention = CallingConvention.Cdecl)] + + public static extern IntPtr ISteamNetworkingSockets_CreateFakeUDPPort(IntPtr instancePtr, int idxFakeServerPort); + +#endregion +#region SteamNetworkingUtils + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingUtils_AllocateMessage", CallingConvention = CallingConvention.Cdecl)] + + public static extern IntPtr ISteamNetworkingUtils_AllocateMessage(IntPtr instancePtr, int cbAllocateBuffer); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingUtils_InitRelayNetworkAccess", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamNetworkingUtils_InitRelayNetworkAccess(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingUtils_GetRelayNetworkStatus", CallingConvention = CallingConvention.Cdecl)] + + public static extern ESteamNetworkingAvailability ISteamNetworkingUtils_GetRelayNetworkStatus(IntPtr instancePtr, out SteamRelayNetworkStatus_t pDetails); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingUtils_GetLocalPingLocation", CallingConvention = CallingConvention.Cdecl)] + + public static extern float ISteamNetworkingUtils_GetLocalPingLocation(IntPtr instancePtr, out SteamNetworkPingLocation_t result); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingUtils_EstimatePingTimeBetweenTwoLocations", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamNetworkingUtils_EstimatePingTimeBetweenTwoLocations(IntPtr instancePtr, ref SteamNetworkPingLocation_t location1, ref SteamNetworkPingLocation_t location2); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingUtils_EstimatePingTimeFromLocalHost", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamNetworkingUtils_EstimatePingTimeFromLocalHost(IntPtr instancePtr, ref SteamNetworkPingLocation_t remoteLocation); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingUtils_ConvertPingLocationToString", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamNetworkingUtils_ConvertPingLocationToString(IntPtr instancePtr, ref SteamNetworkPingLocation_t location, IntPtr pszBuf, int cchBufSize); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingUtils_ParsePingLocationString", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamNetworkingUtils_ParsePingLocationString(IntPtr instancePtr, InteropHelp.UTF8StringHandle pszString, out SteamNetworkPingLocation_t result); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingUtils_CheckPingDataUpToDate", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamNetworkingUtils_CheckPingDataUpToDate(IntPtr instancePtr, float flMaxAgeSeconds); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingUtils_GetPingToDataCenter", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamNetworkingUtils_GetPingToDataCenter(IntPtr instancePtr, SteamNetworkingPOPID popID, out SteamNetworkingPOPID pViaRelayPoP); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingUtils_GetDirectPingToPOP", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamNetworkingUtils_GetDirectPingToPOP(IntPtr instancePtr, SteamNetworkingPOPID popID); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingUtils_GetPOPCount", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamNetworkingUtils_GetPOPCount(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingUtils_GetPOPList", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamNetworkingUtils_GetPOPList(IntPtr instancePtr, out SteamNetworkingPOPID list, int nListSz); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingUtils_GetLocalTimestamp", CallingConvention = CallingConvention.Cdecl)] + + public static extern long ISteamNetworkingUtils_GetLocalTimestamp(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingUtils_SetDebugOutputFunction", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamNetworkingUtils_SetDebugOutputFunction(IntPtr instancePtr, ESteamNetworkingSocketsDebugOutputType eDetailLevel, FSteamNetworkingSocketsDebugOutput pfnFunc); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingUtils_IsFakeIPv4", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamNetworkingUtils_IsFakeIPv4(IntPtr instancePtr, uint nIPv4); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingUtils_GetIPv4FakeIPType", CallingConvention = CallingConvention.Cdecl)] + + public static extern ESteamNetworkingFakeIPType ISteamNetworkingUtils_GetIPv4FakeIPType(IntPtr instancePtr, uint nIPv4); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingUtils_GetRealIdentityForFakeIP", CallingConvention = CallingConvention.Cdecl)] + + public static extern EResult ISteamNetworkingUtils_GetRealIdentityForFakeIP(IntPtr instancePtr, ref SteamNetworkingIPAddr fakeIP, out SteamNetworkingIdentity pOutRealIdentity); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingUtils_SetConfigValue", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamNetworkingUtils_SetConfigValue(IntPtr instancePtr, ESteamNetworkingConfigValue eValue, ESteamNetworkingConfigScope eScopeType, IntPtr scopeObj, ESteamNetworkingConfigDataType eDataType, IntPtr pArg); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingUtils_GetConfigValue", CallingConvention = CallingConvention.Cdecl)] + + public static extern ESteamNetworkingGetConfigValueResult ISteamNetworkingUtils_GetConfigValue(IntPtr instancePtr, ESteamNetworkingConfigValue eValue, ESteamNetworkingConfigScope eScopeType, IntPtr scopeObj, out ESteamNetworkingConfigDataType pOutDataType, IntPtr pResult, ref ulong cbResult); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingUtils_GetConfigValueInfo", CallingConvention = CallingConvention.Cdecl)] + + public static extern IntPtr ISteamNetworkingUtils_GetConfigValueInfo(IntPtr instancePtr, ESteamNetworkingConfigValue eValue, out ESteamNetworkingConfigDataType pOutDataType, out ESteamNetworkingConfigScope pOutScope); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingUtils_IterateGenericEditableConfigValues", CallingConvention = CallingConvention.Cdecl)] + + public static extern ESteamNetworkingConfigValue ISteamNetworkingUtils_IterateGenericEditableConfigValues(IntPtr instancePtr, ESteamNetworkingConfigValue eCurrent, [MarshalAs(UnmanagedType.I1)] bool bEnumerateDevVars); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingUtils_SteamNetworkingIPAddr_ToString", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamNetworkingUtils_SteamNetworkingIPAddr_ToString(IntPtr instancePtr, ref SteamNetworkingIPAddr addr, IntPtr buf, uint cbBuf, [MarshalAs(UnmanagedType.I1)] bool bWithPort); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingUtils_SteamNetworkingIPAddr_ParseString", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamNetworkingUtils_SteamNetworkingIPAddr_ParseString(IntPtr instancePtr, out SteamNetworkingIPAddr pAddr, InteropHelp.UTF8StringHandle pszStr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingUtils_SteamNetworkingIPAddr_GetFakeIPType", CallingConvention = CallingConvention.Cdecl)] + + public static extern ESteamNetworkingFakeIPType ISteamNetworkingUtils_SteamNetworkingIPAddr_GetFakeIPType(IntPtr instancePtr, ref SteamNetworkingIPAddr addr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingUtils_SteamNetworkingIdentity_ToString", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamNetworkingUtils_SteamNetworkingIdentity_ToString(IntPtr instancePtr, ref SteamNetworkingIdentity identity, IntPtr buf, uint cbBuf); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamNetworkingUtils_SteamNetworkingIdentity_ParseString", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamNetworkingUtils_SteamNetworkingIdentity_ParseString(IntPtr instancePtr, out SteamNetworkingIdentity pIdentity, InteropHelp.UTF8StringHandle pszStr); + +#endregion +#region SteamParentalSettings + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamParentalSettings_BIsParentalLockEnabled", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamParentalSettings_BIsParentalLockEnabled(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamParentalSettings_BIsParentalLockLocked", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamParentalSettings_BIsParentalLockLocked(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamParentalSettings_BIsAppBlocked", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamParentalSettings_BIsAppBlocked(IntPtr instancePtr, AppId_t nAppID); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamParentalSettings_BIsAppInBlockList", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamParentalSettings_BIsAppInBlockList(IntPtr instancePtr, AppId_t nAppID); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamParentalSettings_BIsFeatureBlocked", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamParentalSettings_BIsFeatureBlocked(IntPtr instancePtr, EParentalFeature eFeature); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamParentalSettings_BIsFeatureInBlockList", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamParentalSettings_BIsFeatureInBlockList(IntPtr instancePtr, EParentalFeature eFeature); + +#endregion +#region SteamRemotePlay + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamRemotePlay_GetSessionCount", CallingConvention = CallingConvention.Cdecl)] + + public static extern uint ISteamRemotePlay_GetSessionCount(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamRemotePlay_GetSessionID", CallingConvention = CallingConvention.Cdecl)] + + public static extern uint ISteamRemotePlay_GetSessionID(IntPtr instancePtr, int iSessionIndex); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamRemotePlay_GetSessionSteamID", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamRemotePlay_GetSessionSteamID(IntPtr instancePtr, RemotePlaySessionID_t unSessionID); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamRemotePlay_GetSessionClientName", CallingConvention = CallingConvention.Cdecl)] + + public static extern IntPtr ISteamRemotePlay_GetSessionClientName(IntPtr instancePtr, RemotePlaySessionID_t unSessionID); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamRemotePlay_GetSessionClientFormFactor", CallingConvention = CallingConvention.Cdecl)] + + public static extern ESteamDeviceFormFactor ISteamRemotePlay_GetSessionClientFormFactor(IntPtr instancePtr, RemotePlaySessionID_t unSessionID); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamRemotePlay_BGetSessionClientResolution", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamRemotePlay_BGetSessionClientResolution(IntPtr instancePtr, RemotePlaySessionID_t unSessionID, out int pnResolutionX, out int pnResolutionY); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamRemotePlay_BStartRemotePlayTogether", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamRemotePlay_BStartRemotePlayTogether(IntPtr instancePtr, [MarshalAs(UnmanagedType.I1)] bool bShowOverlay); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamRemotePlay_BSendRemotePlayTogetherInvite", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamRemotePlay_BSendRemotePlayTogetherInvite(IntPtr instancePtr, CSteamID steamIDFriend); + +#endregion +#region SteamRemoteStorage + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamRemoteStorage_FileWrite", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamRemoteStorage_FileWrite(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchFile, byte[] pvData, int cubData); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamRemoteStorage_FileRead", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamRemoteStorage_FileRead(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchFile, byte[] pvData, int cubDataToRead); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamRemoteStorage_FileWriteAsync", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamRemoteStorage_FileWriteAsync(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchFile, byte[] pvData, uint cubData); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamRemoteStorage_FileReadAsync", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamRemoteStorage_FileReadAsync(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchFile, uint nOffset, uint cubToRead); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamRemoteStorage_FileReadAsyncComplete", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamRemoteStorage_FileReadAsyncComplete(IntPtr instancePtr, SteamAPICall_t hReadCall, byte[] pvBuffer, uint cubToRead); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamRemoteStorage_FileForget", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamRemoteStorage_FileForget(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchFile); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamRemoteStorage_FileDelete", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamRemoteStorage_FileDelete(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchFile); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamRemoteStorage_FileShare", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamRemoteStorage_FileShare(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchFile); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamRemoteStorage_SetSyncPlatforms", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamRemoteStorage_SetSyncPlatforms(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchFile, ERemoteStoragePlatform eRemoteStoragePlatform); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamRemoteStorage_FileWriteStreamOpen", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamRemoteStorage_FileWriteStreamOpen(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchFile); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamRemoteStorage_FileWriteStreamWriteChunk", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamRemoteStorage_FileWriteStreamWriteChunk(IntPtr instancePtr, UGCFileWriteStreamHandle_t writeHandle, byte[] pvData, int cubData); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamRemoteStorage_FileWriteStreamClose", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamRemoteStorage_FileWriteStreamClose(IntPtr instancePtr, UGCFileWriteStreamHandle_t writeHandle); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamRemoteStorage_FileWriteStreamCancel", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamRemoteStorage_FileWriteStreamCancel(IntPtr instancePtr, UGCFileWriteStreamHandle_t writeHandle); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamRemoteStorage_FileExists", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamRemoteStorage_FileExists(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchFile); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamRemoteStorage_FilePersisted", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamRemoteStorage_FilePersisted(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchFile); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamRemoteStorage_GetFileSize", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamRemoteStorage_GetFileSize(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchFile); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamRemoteStorage_GetFileTimestamp", CallingConvention = CallingConvention.Cdecl)] + + public static extern long ISteamRemoteStorage_GetFileTimestamp(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchFile); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamRemoteStorage_GetSyncPlatforms", CallingConvention = CallingConvention.Cdecl)] + + public static extern ERemoteStoragePlatform ISteamRemoteStorage_GetSyncPlatforms(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchFile); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamRemoteStorage_GetFileCount", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamRemoteStorage_GetFileCount(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamRemoteStorage_GetFileNameAndSize", CallingConvention = CallingConvention.Cdecl)] + + public static extern IntPtr ISteamRemoteStorage_GetFileNameAndSize(IntPtr instancePtr, int iFile, out int pnFileSizeInBytes); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamRemoteStorage_GetQuota", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamRemoteStorage_GetQuota(IntPtr instancePtr, out ulong pnTotalBytes, out ulong puAvailableBytes); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamRemoteStorage_IsCloudEnabledForAccount", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamRemoteStorage_IsCloudEnabledForAccount(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamRemoteStorage_IsCloudEnabledForApp", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamRemoteStorage_IsCloudEnabledForApp(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamRemoteStorage_SetCloudEnabledForApp", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamRemoteStorage_SetCloudEnabledForApp(IntPtr instancePtr, [MarshalAs(UnmanagedType.I1)] bool bEnabled); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamRemoteStorage_UGCDownload", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamRemoteStorage_UGCDownload(IntPtr instancePtr, UGCHandle_t hContent, uint unPriority); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamRemoteStorage_GetUGCDownloadProgress", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamRemoteStorage_GetUGCDownloadProgress(IntPtr instancePtr, UGCHandle_t hContent, out int pnBytesDownloaded, out int pnBytesExpected); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamRemoteStorage_GetUGCDetails", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamRemoteStorage_GetUGCDetails(IntPtr instancePtr, UGCHandle_t hContent, out AppId_t pnAppID, out IntPtr ppchName, out int pnFileSizeInBytes, out CSteamID pSteamIDOwner); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamRemoteStorage_UGCRead", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamRemoteStorage_UGCRead(IntPtr instancePtr, UGCHandle_t hContent, byte[] pvData, int cubDataToRead, uint cOffset, EUGCReadAction eAction); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamRemoteStorage_GetCachedUGCCount", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamRemoteStorage_GetCachedUGCCount(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamRemoteStorage_GetCachedUGCHandle", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamRemoteStorage_GetCachedUGCHandle(IntPtr instancePtr, int iCachedContent); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamRemoteStorage_PublishWorkshopFile", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamRemoteStorage_PublishWorkshopFile(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchFile, InteropHelp.UTF8StringHandle pchPreviewFile, AppId_t nConsumerAppId, InteropHelp.UTF8StringHandle pchTitle, InteropHelp.UTF8StringHandle pchDescription, ERemoteStoragePublishedFileVisibility eVisibility, IntPtr pTags, EWorkshopFileType eWorkshopFileType); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamRemoteStorage_CreatePublishedFileUpdateRequest", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamRemoteStorage_CreatePublishedFileUpdateRequest(IntPtr instancePtr, PublishedFileId_t unPublishedFileId); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamRemoteStorage_UpdatePublishedFileFile", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamRemoteStorage_UpdatePublishedFileFile(IntPtr instancePtr, PublishedFileUpdateHandle_t updateHandle, InteropHelp.UTF8StringHandle pchFile); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamRemoteStorage_UpdatePublishedFilePreviewFile", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamRemoteStorage_UpdatePublishedFilePreviewFile(IntPtr instancePtr, PublishedFileUpdateHandle_t updateHandle, InteropHelp.UTF8StringHandle pchPreviewFile); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamRemoteStorage_UpdatePublishedFileTitle", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamRemoteStorage_UpdatePublishedFileTitle(IntPtr instancePtr, PublishedFileUpdateHandle_t updateHandle, InteropHelp.UTF8StringHandle pchTitle); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamRemoteStorage_UpdatePublishedFileDescription", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamRemoteStorage_UpdatePublishedFileDescription(IntPtr instancePtr, PublishedFileUpdateHandle_t updateHandle, InteropHelp.UTF8StringHandle pchDescription); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamRemoteStorage_UpdatePublishedFileVisibility", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamRemoteStorage_UpdatePublishedFileVisibility(IntPtr instancePtr, PublishedFileUpdateHandle_t updateHandle, ERemoteStoragePublishedFileVisibility eVisibility); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamRemoteStorage_UpdatePublishedFileTags", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamRemoteStorage_UpdatePublishedFileTags(IntPtr instancePtr, PublishedFileUpdateHandle_t updateHandle, IntPtr pTags); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamRemoteStorage_CommitPublishedFileUpdate", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamRemoteStorage_CommitPublishedFileUpdate(IntPtr instancePtr, PublishedFileUpdateHandle_t updateHandle); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamRemoteStorage_GetPublishedFileDetails", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamRemoteStorage_GetPublishedFileDetails(IntPtr instancePtr, PublishedFileId_t unPublishedFileId, uint unMaxSecondsOld); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamRemoteStorage_DeletePublishedFile", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamRemoteStorage_DeletePublishedFile(IntPtr instancePtr, PublishedFileId_t unPublishedFileId); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamRemoteStorage_EnumerateUserPublishedFiles", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamRemoteStorage_EnumerateUserPublishedFiles(IntPtr instancePtr, uint unStartIndex); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamRemoteStorage_SubscribePublishedFile", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamRemoteStorage_SubscribePublishedFile(IntPtr instancePtr, PublishedFileId_t unPublishedFileId); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamRemoteStorage_EnumerateUserSubscribedFiles", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamRemoteStorage_EnumerateUserSubscribedFiles(IntPtr instancePtr, uint unStartIndex); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamRemoteStorage_UnsubscribePublishedFile", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamRemoteStorage_UnsubscribePublishedFile(IntPtr instancePtr, PublishedFileId_t unPublishedFileId); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamRemoteStorage_UpdatePublishedFileSetChangeDescription", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamRemoteStorage_UpdatePublishedFileSetChangeDescription(IntPtr instancePtr, PublishedFileUpdateHandle_t updateHandle, InteropHelp.UTF8StringHandle pchChangeDescription); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamRemoteStorage_GetPublishedItemVoteDetails", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamRemoteStorage_GetPublishedItemVoteDetails(IntPtr instancePtr, PublishedFileId_t unPublishedFileId); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamRemoteStorage_UpdateUserPublishedItemVote", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamRemoteStorage_UpdateUserPublishedItemVote(IntPtr instancePtr, PublishedFileId_t unPublishedFileId, [MarshalAs(UnmanagedType.I1)] bool bVoteUp); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamRemoteStorage_GetUserPublishedItemVoteDetails", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamRemoteStorage_GetUserPublishedItemVoteDetails(IntPtr instancePtr, PublishedFileId_t unPublishedFileId); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamRemoteStorage_EnumerateUserSharedWorkshopFiles", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamRemoteStorage_EnumerateUserSharedWorkshopFiles(IntPtr instancePtr, CSteamID steamId, uint unStartIndex, IntPtr pRequiredTags, IntPtr pExcludedTags); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamRemoteStorage_PublishVideo", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamRemoteStorage_PublishVideo(IntPtr instancePtr, EWorkshopVideoProvider eVideoProvider, InteropHelp.UTF8StringHandle pchVideoAccount, InteropHelp.UTF8StringHandle pchVideoIdentifier, InteropHelp.UTF8StringHandle pchPreviewFile, AppId_t nConsumerAppId, InteropHelp.UTF8StringHandle pchTitle, InteropHelp.UTF8StringHandle pchDescription, ERemoteStoragePublishedFileVisibility eVisibility, IntPtr pTags); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamRemoteStorage_SetUserPublishedFileAction", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamRemoteStorage_SetUserPublishedFileAction(IntPtr instancePtr, PublishedFileId_t unPublishedFileId, EWorkshopFileAction eAction); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamRemoteStorage_EnumeratePublishedFilesByUserAction", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamRemoteStorage_EnumeratePublishedFilesByUserAction(IntPtr instancePtr, EWorkshopFileAction eAction, uint unStartIndex); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamRemoteStorage_EnumeratePublishedWorkshopFiles", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamRemoteStorage_EnumeratePublishedWorkshopFiles(IntPtr instancePtr, EWorkshopEnumerationType eEnumerationType, uint unStartIndex, uint unCount, uint unDays, IntPtr pTags, IntPtr pUserTags); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamRemoteStorage_UGCDownloadToLocation", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamRemoteStorage_UGCDownloadToLocation(IntPtr instancePtr, UGCHandle_t hContent, InteropHelp.UTF8StringHandle pchLocation, uint unPriority); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamRemoteStorage_GetLocalFileChangeCount", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamRemoteStorage_GetLocalFileChangeCount(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamRemoteStorage_GetLocalFileChange", CallingConvention = CallingConvention.Cdecl)] + + public static extern IntPtr ISteamRemoteStorage_GetLocalFileChange(IntPtr instancePtr, int iFile, out ERemoteStorageLocalFileChange pEChangeType, out ERemoteStorageFilePathType pEFilePathType); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamRemoteStorage_BeginFileWriteBatch", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamRemoteStorage_BeginFileWriteBatch(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamRemoteStorage_EndFileWriteBatch", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamRemoteStorage_EndFileWriteBatch(IntPtr instancePtr); + +#endregion +#region SteamScreenshots + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamScreenshots_WriteScreenshot", CallingConvention = CallingConvention.Cdecl)] + + public static extern uint ISteamScreenshots_WriteScreenshot(IntPtr instancePtr, byte[] pubRGB, uint cubRGB, int nWidth, int nHeight); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamScreenshots_AddScreenshotToLibrary", CallingConvention = CallingConvention.Cdecl)] + + public static extern uint ISteamScreenshots_AddScreenshotToLibrary(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchFilename, InteropHelp.UTF8StringHandle pchThumbnailFilename, int nWidth, int nHeight); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamScreenshots_TriggerScreenshot", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamScreenshots_TriggerScreenshot(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamScreenshots_HookScreenshots", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamScreenshots_HookScreenshots(IntPtr instancePtr, [MarshalAs(UnmanagedType.I1)] bool bHook); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamScreenshots_SetLocation", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamScreenshots_SetLocation(IntPtr instancePtr, ScreenshotHandle hScreenshot, InteropHelp.UTF8StringHandle pchLocation); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamScreenshots_TagUser", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamScreenshots_TagUser(IntPtr instancePtr, ScreenshotHandle hScreenshot, CSteamID steamID); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamScreenshots_TagPublishedFile", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamScreenshots_TagPublishedFile(IntPtr instancePtr, ScreenshotHandle hScreenshot, PublishedFileId_t unPublishedFileID); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamScreenshots_IsScreenshotsHooked", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamScreenshots_IsScreenshotsHooked(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamScreenshots_AddVRScreenshotToLibrary", CallingConvention = CallingConvention.Cdecl)] + + public static extern uint ISteamScreenshots_AddVRScreenshotToLibrary(IntPtr instancePtr, EVRScreenshotType eType, InteropHelp.UTF8StringHandle pchFilename, InteropHelp.UTF8StringHandle pchVRFilename); + +#endregion +#region SteamTimeline + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamTimeline_SetTimelineTooltip", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamTimeline_SetTimelineTooltip(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchDescription, float flTimeDelta); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamTimeline_ClearTimelineTooltip", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamTimeline_ClearTimelineTooltip(IntPtr instancePtr, float flTimeDelta); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamTimeline_SetTimelineGameMode", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamTimeline_SetTimelineGameMode(IntPtr instancePtr, ETimelineGameMode eMode); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamTimeline_AddInstantaneousTimelineEvent", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamTimeline_AddInstantaneousTimelineEvent(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchTitle, InteropHelp.UTF8StringHandle pchDescription, InteropHelp.UTF8StringHandle pchIcon, uint unIconPriority, float flStartOffsetSeconds, ETimelineEventClipPriority ePossibleClip); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamTimeline_AddRangeTimelineEvent", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamTimeline_AddRangeTimelineEvent(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchTitle, InteropHelp.UTF8StringHandle pchDescription, InteropHelp.UTF8StringHandle pchIcon, uint unIconPriority, float flStartOffsetSeconds, float flDuration, ETimelineEventClipPriority ePossibleClip); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamTimeline_StartRangeTimelineEvent", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamTimeline_StartRangeTimelineEvent(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchTitle, InteropHelp.UTF8StringHandle pchDescription, InteropHelp.UTF8StringHandle pchIcon, uint unPriority, float flStartOffsetSeconds, ETimelineEventClipPriority ePossibleClip); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamTimeline_UpdateRangeTimelineEvent", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamTimeline_UpdateRangeTimelineEvent(IntPtr instancePtr, TimelineEventHandle_t ulEvent, InteropHelp.UTF8StringHandle pchTitle, InteropHelp.UTF8StringHandle pchDescription, InteropHelp.UTF8StringHandle pchIcon, uint unPriority, ETimelineEventClipPriority ePossibleClip); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamTimeline_EndRangeTimelineEvent", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamTimeline_EndRangeTimelineEvent(IntPtr instancePtr, TimelineEventHandle_t ulEvent, float flEndOffsetSeconds); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamTimeline_RemoveTimelineEvent", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamTimeline_RemoveTimelineEvent(IntPtr instancePtr, TimelineEventHandle_t ulEvent); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamTimeline_DoesEventRecordingExist", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamTimeline_DoesEventRecordingExist(IntPtr instancePtr, TimelineEventHandle_t ulEvent); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamTimeline_StartGamePhase", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamTimeline_StartGamePhase(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamTimeline_EndGamePhase", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamTimeline_EndGamePhase(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamTimeline_SetGamePhaseID", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamTimeline_SetGamePhaseID(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchPhaseID); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamTimeline_DoesGamePhaseRecordingExist", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamTimeline_DoesGamePhaseRecordingExist(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchPhaseID); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamTimeline_AddGamePhaseTag", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamTimeline_AddGamePhaseTag(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchTagName, InteropHelp.UTF8StringHandle pchTagIcon, InteropHelp.UTF8StringHandle pchTagGroup, uint unPriority); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamTimeline_SetGamePhaseAttribute", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamTimeline_SetGamePhaseAttribute(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchAttributeGroup, InteropHelp.UTF8StringHandle pchAttributeValue, uint unPriority); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamTimeline_OpenOverlayToGamePhase", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamTimeline_OpenOverlayToGamePhase(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchPhaseID); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamTimeline_OpenOverlayToTimelineEvent", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamTimeline_OpenOverlayToTimelineEvent(IntPtr instancePtr, TimelineEventHandle_t ulEvent); + +#endregion +#region SteamUGC + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_CreateQueryUserUGCRequest", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamUGC_CreateQueryUserUGCRequest(IntPtr instancePtr, AccountID_t unAccountID, EUserUGCList eListType, EUGCMatchingUGCType eMatchingUGCType, EUserUGCListSortOrder eSortOrder, AppId_t nCreatorAppID, AppId_t nConsumerAppID, uint unPage); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_CreateQueryAllUGCRequestPage", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamUGC_CreateQueryAllUGCRequestPage(IntPtr instancePtr, EUGCQuery eQueryType, EUGCMatchingUGCType eMatchingeMatchingUGCTypeFileType, AppId_t nCreatorAppID, AppId_t nConsumerAppID, uint unPage); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_CreateQueryAllUGCRequestCursor", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamUGC_CreateQueryAllUGCRequestCursor(IntPtr instancePtr, EUGCQuery eQueryType, EUGCMatchingUGCType eMatchingeMatchingUGCTypeFileType, AppId_t nCreatorAppID, AppId_t nConsumerAppID, InteropHelp.UTF8StringHandle pchCursor); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_CreateQueryUGCDetailsRequest", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamUGC_CreateQueryUGCDetailsRequest(IntPtr instancePtr, [In, Out] PublishedFileId_t[] pvecPublishedFileID, uint unNumPublishedFileIDs); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_SendQueryUGCRequest", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamUGC_SendQueryUGCRequest(IntPtr instancePtr, UGCQueryHandle_t handle); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_GetQueryUGCResult", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUGC_GetQueryUGCResult(IntPtr instancePtr, UGCQueryHandle_t handle, uint index, out SteamUGCDetails_t pDetails); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_GetQueryUGCNumTags", CallingConvention = CallingConvention.Cdecl)] + + public static extern uint ISteamUGC_GetQueryUGCNumTags(IntPtr instancePtr, UGCQueryHandle_t handle, uint index); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_GetQueryUGCTag", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUGC_GetQueryUGCTag(IntPtr instancePtr, UGCQueryHandle_t handle, uint index, uint indexTag, IntPtr pchValue, uint cchValueSize); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_GetQueryUGCTagDisplayName", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUGC_GetQueryUGCTagDisplayName(IntPtr instancePtr, UGCQueryHandle_t handle, uint index, uint indexTag, IntPtr pchValue, uint cchValueSize); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_GetQueryUGCPreviewURL", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUGC_GetQueryUGCPreviewURL(IntPtr instancePtr, UGCQueryHandle_t handle, uint index, IntPtr pchURL, uint cchURLSize); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_GetQueryUGCMetadata", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUGC_GetQueryUGCMetadata(IntPtr instancePtr, UGCQueryHandle_t handle, uint index, IntPtr pchMetadata, uint cchMetadatasize); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_GetQueryUGCChildren", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUGC_GetQueryUGCChildren(IntPtr instancePtr, UGCQueryHandle_t handle, uint index, [In, Out] PublishedFileId_t[] pvecPublishedFileID, uint cMaxEntries); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_GetQueryUGCStatistic", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUGC_GetQueryUGCStatistic(IntPtr instancePtr, UGCQueryHandle_t handle, uint index, EItemStatistic eStatType, out ulong pStatValue); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_GetQueryUGCNumAdditionalPreviews", CallingConvention = CallingConvention.Cdecl)] + + public static extern uint ISteamUGC_GetQueryUGCNumAdditionalPreviews(IntPtr instancePtr, UGCQueryHandle_t handle, uint index); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_GetQueryUGCAdditionalPreview", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUGC_GetQueryUGCAdditionalPreview(IntPtr instancePtr, UGCQueryHandle_t handle, uint index, uint previewIndex, IntPtr pchURLOrVideoID, uint cchURLSize, IntPtr pchOriginalFileName, uint cchOriginalFileNameSize, out EItemPreviewType pPreviewType); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_GetQueryUGCNumKeyValueTags", CallingConvention = CallingConvention.Cdecl)] + + public static extern uint ISteamUGC_GetQueryUGCNumKeyValueTags(IntPtr instancePtr, UGCQueryHandle_t handle, uint index); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_GetQueryUGCKeyValueTag", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUGC_GetQueryUGCKeyValueTag(IntPtr instancePtr, UGCQueryHandle_t handle, uint index, uint keyValueTagIndex, IntPtr pchKey, uint cchKeySize, IntPtr pchValue, uint cchValueSize); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_GetQueryFirstUGCKeyValueTag", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUGC_GetQueryFirstUGCKeyValueTag(IntPtr instancePtr, UGCQueryHandle_t handle, uint index, InteropHelp.UTF8StringHandle pchKey, IntPtr pchValue, uint cchValueSize); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_GetNumSupportedGameVersions", CallingConvention = CallingConvention.Cdecl)] + + public static extern uint ISteamUGC_GetNumSupportedGameVersions(IntPtr instancePtr, UGCQueryHandle_t handle, uint index); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_GetSupportedGameVersionData", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUGC_GetSupportedGameVersionData(IntPtr instancePtr, UGCQueryHandle_t handle, uint index, uint versionIndex, IntPtr pchGameBranchMin, IntPtr pchGameBranchMax, uint cchGameBranchSize); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_GetQueryUGCContentDescriptors", CallingConvention = CallingConvention.Cdecl)] + + public static extern uint ISteamUGC_GetQueryUGCContentDescriptors(IntPtr instancePtr, UGCQueryHandle_t handle, uint index, [In, Out] EUGCContentDescriptorID[] pvecDescriptors, uint cMaxEntries); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_ReleaseQueryUGCRequest", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUGC_ReleaseQueryUGCRequest(IntPtr instancePtr, UGCQueryHandle_t handle); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_AddRequiredTag", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUGC_AddRequiredTag(IntPtr instancePtr, UGCQueryHandle_t handle, InteropHelp.UTF8StringHandle pTagName); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_AddRequiredTagGroup", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUGC_AddRequiredTagGroup(IntPtr instancePtr, UGCQueryHandle_t handle, IntPtr pTagGroups); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_AddExcludedTag", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUGC_AddExcludedTag(IntPtr instancePtr, UGCQueryHandle_t handle, InteropHelp.UTF8StringHandle pTagName); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_SetReturnOnlyIDs", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUGC_SetReturnOnlyIDs(IntPtr instancePtr, UGCQueryHandle_t handle, [MarshalAs(UnmanagedType.I1)] bool bReturnOnlyIDs); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_SetReturnKeyValueTags", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUGC_SetReturnKeyValueTags(IntPtr instancePtr, UGCQueryHandle_t handle, [MarshalAs(UnmanagedType.I1)] bool bReturnKeyValueTags); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_SetReturnLongDescription", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUGC_SetReturnLongDescription(IntPtr instancePtr, UGCQueryHandle_t handle, [MarshalAs(UnmanagedType.I1)] bool bReturnLongDescription); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_SetReturnMetadata", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUGC_SetReturnMetadata(IntPtr instancePtr, UGCQueryHandle_t handle, [MarshalAs(UnmanagedType.I1)] bool bReturnMetadata); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_SetReturnChildren", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUGC_SetReturnChildren(IntPtr instancePtr, UGCQueryHandle_t handle, [MarshalAs(UnmanagedType.I1)] bool bReturnChildren); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_SetReturnAdditionalPreviews", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUGC_SetReturnAdditionalPreviews(IntPtr instancePtr, UGCQueryHandle_t handle, [MarshalAs(UnmanagedType.I1)] bool bReturnAdditionalPreviews); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_SetReturnTotalOnly", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUGC_SetReturnTotalOnly(IntPtr instancePtr, UGCQueryHandle_t handle, [MarshalAs(UnmanagedType.I1)] bool bReturnTotalOnly); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_SetReturnPlaytimeStats", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUGC_SetReturnPlaytimeStats(IntPtr instancePtr, UGCQueryHandle_t handle, uint unDays); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_SetLanguage", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUGC_SetLanguage(IntPtr instancePtr, UGCQueryHandle_t handle, InteropHelp.UTF8StringHandle pchLanguage); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_SetAllowCachedResponse", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUGC_SetAllowCachedResponse(IntPtr instancePtr, UGCQueryHandle_t handle, uint unMaxAgeSeconds); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_SetAdminQuery", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUGC_SetAdminQuery(IntPtr instancePtr, UGCUpdateHandle_t handle, [MarshalAs(UnmanagedType.I1)] bool bAdminQuery); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_SetCloudFileNameFilter", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUGC_SetCloudFileNameFilter(IntPtr instancePtr, UGCQueryHandle_t handle, InteropHelp.UTF8StringHandle pMatchCloudFileName); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_SetMatchAnyTag", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUGC_SetMatchAnyTag(IntPtr instancePtr, UGCQueryHandle_t handle, [MarshalAs(UnmanagedType.I1)] bool bMatchAnyTag); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_SetSearchText", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUGC_SetSearchText(IntPtr instancePtr, UGCQueryHandle_t handle, InteropHelp.UTF8StringHandle pSearchText); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_SetRankedByTrendDays", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUGC_SetRankedByTrendDays(IntPtr instancePtr, UGCQueryHandle_t handle, uint unDays); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_SetTimeCreatedDateRange", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUGC_SetTimeCreatedDateRange(IntPtr instancePtr, UGCQueryHandle_t handle, uint rtStart, uint rtEnd); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_SetTimeUpdatedDateRange", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUGC_SetTimeUpdatedDateRange(IntPtr instancePtr, UGCQueryHandle_t handle, uint rtStart, uint rtEnd); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_AddRequiredKeyValueTag", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUGC_AddRequiredKeyValueTag(IntPtr instancePtr, UGCQueryHandle_t handle, InteropHelp.UTF8StringHandle pKey, InteropHelp.UTF8StringHandle pValue); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_RequestUGCDetails", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamUGC_RequestUGCDetails(IntPtr instancePtr, PublishedFileId_t nPublishedFileID, uint unMaxAgeSeconds); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_CreateItem", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamUGC_CreateItem(IntPtr instancePtr, AppId_t nConsumerAppId, EWorkshopFileType eFileType); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_StartItemUpdate", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamUGC_StartItemUpdate(IntPtr instancePtr, AppId_t nConsumerAppId, PublishedFileId_t nPublishedFileID); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_SetItemTitle", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUGC_SetItemTitle(IntPtr instancePtr, UGCUpdateHandle_t handle, InteropHelp.UTF8StringHandle pchTitle); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_SetItemDescription", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUGC_SetItemDescription(IntPtr instancePtr, UGCUpdateHandle_t handle, InteropHelp.UTF8StringHandle pchDescription); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_SetItemUpdateLanguage", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUGC_SetItemUpdateLanguage(IntPtr instancePtr, UGCUpdateHandle_t handle, InteropHelp.UTF8StringHandle pchLanguage); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_SetItemMetadata", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUGC_SetItemMetadata(IntPtr instancePtr, UGCUpdateHandle_t handle, InteropHelp.UTF8StringHandle pchMetaData); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_SetItemVisibility", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUGC_SetItemVisibility(IntPtr instancePtr, UGCUpdateHandle_t handle, ERemoteStoragePublishedFileVisibility eVisibility); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_SetItemTags", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUGC_SetItemTags(IntPtr instancePtr, UGCUpdateHandle_t updateHandle, IntPtr pTags, [MarshalAs(UnmanagedType.I1)] bool bAllowAdminTags); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_SetItemContent", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUGC_SetItemContent(IntPtr instancePtr, UGCUpdateHandle_t handle, InteropHelp.UTF8StringHandle pszContentFolder); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_SetItemPreview", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUGC_SetItemPreview(IntPtr instancePtr, UGCUpdateHandle_t handle, InteropHelp.UTF8StringHandle pszPreviewFile); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_SetAllowLegacyUpload", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUGC_SetAllowLegacyUpload(IntPtr instancePtr, UGCUpdateHandle_t handle, [MarshalAs(UnmanagedType.I1)] bool bAllowLegacyUpload); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_RemoveAllItemKeyValueTags", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUGC_RemoveAllItemKeyValueTags(IntPtr instancePtr, UGCUpdateHandle_t handle); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_RemoveItemKeyValueTags", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUGC_RemoveItemKeyValueTags(IntPtr instancePtr, UGCUpdateHandle_t handle, InteropHelp.UTF8StringHandle pchKey); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_AddItemKeyValueTag", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUGC_AddItemKeyValueTag(IntPtr instancePtr, UGCUpdateHandle_t handle, InteropHelp.UTF8StringHandle pchKey, InteropHelp.UTF8StringHandle pchValue); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_AddItemPreviewFile", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUGC_AddItemPreviewFile(IntPtr instancePtr, UGCUpdateHandle_t handle, InteropHelp.UTF8StringHandle pszPreviewFile, EItemPreviewType type); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_AddItemPreviewVideo", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUGC_AddItemPreviewVideo(IntPtr instancePtr, UGCUpdateHandle_t handle, InteropHelp.UTF8StringHandle pszVideoID); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_UpdateItemPreviewFile", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUGC_UpdateItemPreviewFile(IntPtr instancePtr, UGCUpdateHandle_t handle, uint index, InteropHelp.UTF8StringHandle pszPreviewFile); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_UpdateItemPreviewVideo", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUGC_UpdateItemPreviewVideo(IntPtr instancePtr, UGCUpdateHandle_t handle, uint index, InteropHelp.UTF8StringHandle pszVideoID); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_RemoveItemPreview", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUGC_RemoveItemPreview(IntPtr instancePtr, UGCUpdateHandle_t handle, uint index); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_AddContentDescriptor", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUGC_AddContentDescriptor(IntPtr instancePtr, UGCUpdateHandle_t handle, EUGCContentDescriptorID descid); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_RemoveContentDescriptor", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUGC_RemoveContentDescriptor(IntPtr instancePtr, UGCUpdateHandle_t handle, EUGCContentDescriptorID descid); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_SetRequiredGameVersions", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUGC_SetRequiredGameVersions(IntPtr instancePtr, UGCUpdateHandle_t handle, InteropHelp.UTF8StringHandle pszGameBranchMin, InteropHelp.UTF8StringHandle pszGameBranchMax); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_SubmitItemUpdate", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamUGC_SubmitItemUpdate(IntPtr instancePtr, UGCUpdateHandle_t handle, InteropHelp.UTF8StringHandle pchChangeNote); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_GetItemUpdateProgress", CallingConvention = CallingConvention.Cdecl)] + + public static extern EItemUpdateStatus ISteamUGC_GetItemUpdateProgress(IntPtr instancePtr, UGCUpdateHandle_t handle, out ulong punBytesProcessed, out ulong punBytesTotal); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_SetUserItemVote", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamUGC_SetUserItemVote(IntPtr instancePtr, PublishedFileId_t nPublishedFileID, [MarshalAs(UnmanagedType.I1)] bool bVoteUp); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_GetUserItemVote", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamUGC_GetUserItemVote(IntPtr instancePtr, PublishedFileId_t nPublishedFileID); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_AddItemToFavorites", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamUGC_AddItemToFavorites(IntPtr instancePtr, AppId_t nAppId, PublishedFileId_t nPublishedFileID); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_RemoveItemFromFavorites", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamUGC_RemoveItemFromFavorites(IntPtr instancePtr, AppId_t nAppId, PublishedFileId_t nPublishedFileID); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_SubscribeItem", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamUGC_SubscribeItem(IntPtr instancePtr, PublishedFileId_t nPublishedFileID); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_UnsubscribeItem", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamUGC_UnsubscribeItem(IntPtr instancePtr, PublishedFileId_t nPublishedFileID); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_GetNumSubscribedItems", CallingConvention = CallingConvention.Cdecl)] + + public static extern uint ISteamUGC_GetNumSubscribedItems(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_GetSubscribedItems", CallingConvention = CallingConvention.Cdecl)] + + public static extern uint ISteamUGC_GetSubscribedItems(IntPtr instancePtr, [In, Out] PublishedFileId_t[] pvecPublishedFileID, uint cMaxEntries); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_GetItemState", CallingConvention = CallingConvention.Cdecl)] + + public static extern uint ISteamUGC_GetItemState(IntPtr instancePtr, PublishedFileId_t nPublishedFileID); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_GetItemInstallInfo", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUGC_GetItemInstallInfo(IntPtr instancePtr, PublishedFileId_t nPublishedFileID, out ulong punSizeOnDisk, IntPtr pchFolder, uint cchFolderSize, out uint punTimeStamp); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_GetItemDownloadInfo", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUGC_GetItemDownloadInfo(IntPtr instancePtr, PublishedFileId_t nPublishedFileID, out ulong punBytesDownloaded, out ulong punBytesTotal); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_DownloadItem", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUGC_DownloadItem(IntPtr instancePtr, PublishedFileId_t nPublishedFileID, [MarshalAs(UnmanagedType.I1)] bool bHighPriority); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_BInitWorkshopForGameServer", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUGC_BInitWorkshopForGameServer(IntPtr instancePtr, DepotId_t unWorkshopDepotID, InteropHelp.UTF8StringHandle pszFolder); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_SuspendDownloads", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamUGC_SuspendDownloads(IntPtr instancePtr, [MarshalAs(UnmanagedType.I1)] bool bSuspend); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_StartPlaytimeTracking", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamUGC_StartPlaytimeTracking(IntPtr instancePtr, [In, Out] PublishedFileId_t[] pvecPublishedFileID, uint unNumPublishedFileIDs); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_StopPlaytimeTracking", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamUGC_StopPlaytimeTracking(IntPtr instancePtr, [In, Out] PublishedFileId_t[] pvecPublishedFileID, uint unNumPublishedFileIDs); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_StopPlaytimeTrackingForAllItems", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamUGC_StopPlaytimeTrackingForAllItems(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_AddDependency", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamUGC_AddDependency(IntPtr instancePtr, PublishedFileId_t nParentPublishedFileID, PublishedFileId_t nChildPublishedFileID); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_RemoveDependency", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamUGC_RemoveDependency(IntPtr instancePtr, PublishedFileId_t nParentPublishedFileID, PublishedFileId_t nChildPublishedFileID); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_AddAppDependency", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamUGC_AddAppDependency(IntPtr instancePtr, PublishedFileId_t nPublishedFileID, AppId_t nAppID); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_RemoveAppDependency", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamUGC_RemoveAppDependency(IntPtr instancePtr, PublishedFileId_t nPublishedFileID, AppId_t nAppID); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_GetAppDependencies", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamUGC_GetAppDependencies(IntPtr instancePtr, PublishedFileId_t nPublishedFileID); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_DeleteItem", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamUGC_DeleteItem(IntPtr instancePtr, PublishedFileId_t nPublishedFileID); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_ShowWorkshopEULA", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUGC_ShowWorkshopEULA(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_GetWorkshopEULAStatus", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamUGC_GetWorkshopEULAStatus(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUGC_GetUserContentDescriptorPreferences", CallingConvention = CallingConvention.Cdecl)] + + public static extern uint ISteamUGC_GetUserContentDescriptorPreferences(IntPtr instancePtr, [In, Out] EUGCContentDescriptorID[] pvecDescriptors, uint cMaxEntries); + +#endregion +#region SteamUser + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUser_GetHSteamUser", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamUser_GetHSteamUser(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUser_BLoggedOn", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUser_BLoggedOn(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUser_GetSteamID", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamUser_GetSteamID(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUser_InitiateGameConnection_DEPRECATED", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamUser_InitiateGameConnection_DEPRECATED(IntPtr instancePtr, byte[] pAuthBlob, int cbMaxAuthBlob, CSteamID steamIDGameServer, uint unIPServer, ushort usPortServer, [MarshalAs(UnmanagedType.I1)] bool bSecure); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUser_TerminateGameConnection_DEPRECATED", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamUser_TerminateGameConnection_DEPRECATED(IntPtr instancePtr, uint unIPServer, ushort usPortServer); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUser_TrackAppUsageEvent", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamUser_TrackAppUsageEvent(IntPtr instancePtr, CGameID gameID, int eAppUsageEvent, InteropHelp.UTF8StringHandle pchExtraInfo); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUser_GetUserDataFolder", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUser_GetUserDataFolder(IntPtr instancePtr, IntPtr pchBuffer, int cubBuffer); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUser_StartVoiceRecording", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamUser_StartVoiceRecording(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUser_StopVoiceRecording", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamUser_StopVoiceRecording(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUser_GetAvailableVoice", CallingConvention = CallingConvention.Cdecl)] + + public static extern EVoiceResult ISteamUser_GetAvailableVoice(IntPtr instancePtr, out uint pcbCompressed, IntPtr pcbUncompressed_Deprecated, uint nUncompressedVoiceDesiredSampleRate_Deprecated); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUser_GetVoice", CallingConvention = CallingConvention.Cdecl)] + + public static extern EVoiceResult ISteamUser_GetVoice(IntPtr instancePtr, [MarshalAs(UnmanagedType.I1)] bool bWantCompressed, byte[] pDestBuffer, uint cbDestBufferSize, out uint nBytesWritten, [MarshalAs(UnmanagedType.I1)] bool bWantUncompressed_Deprecated, IntPtr pUncompressedDestBuffer_Deprecated, uint cbUncompressedDestBufferSize_Deprecated, IntPtr nUncompressBytesWritten_Deprecated, uint nUncompressedVoiceDesiredSampleRate_Deprecated); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUser_DecompressVoice", CallingConvention = CallingConvention.Cdecl)] + + public static extern EVoiceResult ISteamUser_DecompressVoice(IntPtr instancePtr, byte[] pCompressed, uint cbCompressed, byte[] pDestBuffer, uint cbDestBufferSize, out uint nBytesWritten, uint nDesiredSampleRate); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUser_GetVoiceOptimalSampleRate", CallingConvention = CallingConvention.Cdecl)] + + public static extern uint ISteamUser_GetVoiceOptimalSampleRate(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUser_GetAuthSessionTicket", CallingConvention = CallingConvention.Cdecl)] + + public static extern uint ISteamUser_GetAuthSessionTicket(IntPtr instancePtr, byte[] pTicket, int cbMaxTicket, out uint pcbTicket, ref SteamNetworkingIdentity pSteamNetworkingIdentity); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUser_GetAuthTicketForWebApi", CallingConvention = CallingConvention.Cdecl)] + + public static extern uint ISteamUser_GetAuthTicketForWebApi(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchIdentity); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUser_BeginAuthSession", CallingConvention = CallingConvention.Cdecl)] + + public static extern EBeginAuthSessionResult ISteamUser_BeginAuthSession(IntPtr instancePtr, byte[] pAuthTicket, int cbAuthTicket, CSteamID steamID); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUser_EndAuthSession", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamUser_EndAuthSession(IntPtr instancePtr, CSteamID steamID); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUser_CancelAuthTicket", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamUser_CancelAuthTicket(IntPtr instancePtr, HAuthTicket hAuthTicket); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUser_UserHasLicenseForApp", CallingConvention = CallingConvention.Cdecl)] + + public static extern EUserHasLicenseForAppResult ISteamUser_UserHasLicenseForApp(IntPtr instancePtr, CSteamID steamID, AppId_t appID); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUser_BIsBehindNAT", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUser_BIsBehindNAT(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUser_AdvertiseGame", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamUser_AdvertiseGame(IntPtr instancePtr, CSteamID steamIDGameServer, uint unIPServer, ushort usPortServer); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUser_RequestEncryptedAppTicket", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamUser_RequestEncryptedAppTicket(IntPtr instancePtr, byte[] pDataToInclude, int cbDataToInclude); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUser_GetEncryptedAppTicket", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUser_GetEncryptedAppTicket(IntPtr instancePtr, byte[] pTicket, int cbMaxTicket, out uint pcbTicket); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUser_GetGameBadgeLevel", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamUser_GetGameBadgeLevel(IntPtr instancePtr, int nSeries, [MarshalAs(UnmanagedType.I1)] bool bFoil); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUser_GetPlayerSteamLevel", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamUser_GetPlayerSteamLevel(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUser_RequestStoreAuthURL", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamUser_RequestStoreAuthURL(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchRedirectURL); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUser_BIsPhoneVerified", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUser_BIsPhoneVerified(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUser_BIsTwoFactorEnabled", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUser_BIsTwoFactorEnabled(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUser_BIsPhoneIdentifying", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUser_BIsPhoneIdentifying(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUser_BIsPhoneRequiringVerification", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUser_BIsPhoneRequiringVerification(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUser_GetMarketEligibility", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamUser_GetMarketEligibility(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUser_GetDurationControl", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamUser_GetDurationControl(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUser_BSetDurationControlOnlineState", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUser_BSetDurationControlOnlineState(IntPtr instancePtr, EDurationControlOnlineState eNewState); + +#endregion +#region SteamUserStats + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUserStats_GetStatInt32", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUserStats_GetStatInt32(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchName, out int pData); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUserStats_GetStatFloat", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUserStats_GetStatFloat(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchName, out float pData); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUserStats_SetStatInt32", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUserStats_SetStatInt32(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchName, int nData); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUserStats_SetStatFloat", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUserStats_SetStatFloat(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchName, float fData); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUserStats_UpdateAvgRateStat", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUserStats_UpdateAvgRateStat(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchName, float flCountThisSession, double dSessionLength); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUserStats_GetAchievement", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUserStats_GetAchievement(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchName, out bool pbAchieved); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUserStats_SetAchievement", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUserStats_SetAchievement(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchName); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUserStats_ClearAchievement", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUserStats_ClearAchievement(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchName); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUserStats_GetAchievementAndUnlockTime", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUserStats_GetAchievementAndUnlockTime(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchName, out bool pbAchieved, out uint punUnlockTime); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUserStats_StoreStats", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUserStats_StoreStats(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUserStats_GetAchievementIcon", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamUserStats_GetAchievementIcon(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchName); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUserStats_GetAchievementDisplayAttribute", CallingConvention = CallingConvention.Cdecl)] + + public static extern IntPtr ISteamUserStats_GetAchievementDisplayAttribute(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchName, InteropHelp.UTF8StringHandle pchKey); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUserStats_IndicateAchievementProgress", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUserStats_IndicateAchievementProgress(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchName, uint nCurProgress, uint nMaxProgress); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUserStats_GetNumAchievements", CallingConvention = CallingConvention.Cdecl)] + + public static extern uint ISteamUserStats_GetNumAchievements(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUserStats_GetAchievementName", CallingConvention = CallingConvention.Cdecl)] + + public static extern IntPtr ISteamUserStats_GetAchievementName(IntPtr instancePtr, uint iAchievement); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUserStats_RequestUserStats", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamUserStats_RequestUserStats(IntPtr instancePtr, CSteamID steamIDUser); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUserStats_GetUserStatInt32", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUserStats_GetUserStatInt32(IntPtr instancePtr, CSteamID steamIDUser, InteropHelp.UTF8StringHandle pchName, out int pData); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUserStats_GetUserStatFloat", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUserStats_GetUserStatFloat(IntPtr instancePtr, CSteamID steamIDUser, InteropHelp.UTF8StringHandle pchName, out float pData); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUserStats_GetUserAchievement", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUserStats_GetUserAchievement(IntPtr instancePtr, CSteamID steamIDUser, InteropHelp.UTF8StringHandle pchName, out bool pbAchieved); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUserStats_GetUserAchievementAndUnlockTime", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUserStats_GetUserAchievementAndUnlockTime(IntPtr instancePtr, CSteamID steamIDUser, InteropHelp.UTF8StringHandle pchName, out bool pbAchieved, out uint punUnlockTime); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUserStats_ResetAllStats", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUserStats_ResetAllStats(IntPtr instancePtr, [MarshalAs(UnmanagedType.I1)] bool bAchievementsToo); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUserStats_FindOrCreateLeaderboard", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamUserStats_FindOrCreateLeaderboard(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchLeaderboardName, ELeaderboardSortMethod eLeaderboardSortMethod, ELeaderboardDisplayType eLeaderboardDisplayType); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUserStats_FindLeaderboard", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamUserStats_FindLeaderboard(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchLeaderboardName); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUserStats_GetLeaderboardName", CallingConvention = CallingConvention.Cdecl)] + + public static extern IntPtr ISteamUserStats_GetLeaderboardName(IntPtr instancePtr, SteamLeaderboard_t hSteamLeaderboard); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUserStats_GetLeaderboardEntryCount", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamUserStats_GetLeaderboardEntryCount(IntPtr instancePtr, SteamLeaderboard_t hSteamLeaderboard); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUserStats_GetLeaderboardSortMethod", CallingConvention = CallingConvention.Cdecl)] + + public static extern ELeaderboardSortMethod ISteamUserStats_GetLeaderboardSortMethod(IntPtr instancePtr, SteamLeaderboard_t hSteamLeaderboard); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUserStats_GetLeaderboardDisplayType", CallingConvention = CallingConvention.Cdecl)] + + public static extern ELeaderboardDisplayType ISteamUserStats_GetLeaderboardDisplayType(IntPtr instancePtr, SteamLeaderboard_t hSteamLeaderboard); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUserStats_DownloadLeaderboardEntries", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamUserStats_DownloadLeaderboardEntries(IntPtr instancePtr, SteamLeaderboard_t hSteamLeaderboard, ELeaderboardDataRequest eLeaderboardDataRequest, int nRangeStart, int nRangeEnd); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUserStats_DownloadLeaderboardEntriesForUsers", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamUserStats_DownloadLeaderboardEntriesForUsers(IntPtr instancePtr, SteamLeaderboard_t hSteamLeaderboard, [In, Out] CSteamID[] prgUsers, int cUsers); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUserStats_GetDownloadedLeaderboardEntry", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUserStats_GetDownloadedLeaderboardEntry(IntPtr instancePtr, SteamLeaderboardEntries_t hSteamLeaderboardEntries, int index, out LeaderboardEntry_t pLeaderboardEntry, [In, Out] int[] pDetails, int cDetailsMax); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUserStats_UploadLeaderboardScore", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamUserStats_UploadLeaderboardScore(IntPtr instancePtr, SteamLeaderboard_t hSteamLeaderboard, ELeaderboardUploadScoreMethod eLeaderboardUploadScoreMethod, int nScore, [In, Out] int[] pScoreDetails, int cScoreDetailsCount); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUserStats_AttachLeaderboardUGC", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamUserStats_AttachLeaderboardUGC(IntPtr instancePtr, SteamLeaderboard_t hSteamLeaderboard, UGCHandle_t hUGC); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUserStats_GetNumberOfCurrentPlayers", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamUserStats_GetNumberOfCurrentPlayers(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUserStats_RequestGlobalAchievementPercentages", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamUserStats_RequestGlobalAchievementPercentages(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUserStats_GetMostAchievedAchievementInfo", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamUserStats_GetMostAchievedAchievementInfo(IntPtr instancePtr, IntPtr pchName, uint unNameBufLen, out float pflPercent, out bool pbAchieved); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUserStats_GetNextMostAchievedAchievementInfo", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamUserStats_GetNextMostAchievedAchievementInfo(IntPtr instancePtr, int iIteratorPrevious, IntPtr pchName, uint unNameBufLen, out float pflPercent, out bool pbAchieved); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUserStats_GetAchievementAchievedPercent", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUserStats_GetAchievementAchievedPercent(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchName, out float pflPercent); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUserStats_RequestGlobalStats", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamUserStats_RequestGlobalStats(IntPtr instancePtr, int nHistoryDays); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUserStats_GetGlobalStatInt64", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUserStats_GetGlobalStatInt64(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchStatName, out long pData); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUserStats_GetGlobalStatDouble", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUserStats_GetGlobalStatDouble(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchStatName, out double pData); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUserStats_GetGlobalStatHistoryInt64", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamUserStats_GetGlobalStatHistoryInt64(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchStatName, [In, Out] long[] pData, uint cubData); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUserStats_GetGlobalStatHistoryDouble", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamUserStats_GetGlobalStatHistoryDouble(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchStatName, [In, Out] double[] pData, uint cubData); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUserStats_GetAchievementProgressLimitsInt32", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUserStats_GetAchievementProgressLimitsInt32(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchName, out int pnMinProgress, out int pnMaxProgress); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUserStats_GetAchievementProgressLimitsFloat", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUserStats_GetAchievementProgressLimitsFloat(IntPtr instancePtr, InteropHelp.UTF8StringHandle pchName, out float pfMinProgress, out float pfMaxProgress); + +#endregion +#region SteamUtils + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUtils_GetSecondsSinceAppActive", CallingConvention = CallingConvention.Cdecl)] + + public static extern uint ISteamUtils_GetSecondsSinceAppActive(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUtils_GetSecondsSinceComputerActive", CallingConvention = CallingConvention.Cdecl)] + + public static extern uint ISteamUtils_GetSecondsSinceComputerActive(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUtils_GetConnectedUniverse", CallingConvention = CallingConvention.Cdecl)] + + public static extern EUniverse ISteamUtils_GetConnectedUniverse(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUtils_GetServerRealTime", CallingConvention = CallingConvention.Cdecl)] + + public static extern uint ISteamUtils_GetServerRealTime(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUtils_GetIPCountry", CallingConvention = CallingConvention.Cdecl)] + + public static extern IntPtr ISteamUtils_GetIPCountry(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUtils_GetImageSize", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUtils_GetImageSize(IntPtr instancePtr, int iImage, out uint pnWidth, out uint pnHeight); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUtils_GetImageRGBA", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUtils_GetImageRGBA(IntPtr instancePtr, int iImage, byte[] pubDest, int nDestBufferSize); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUtils_GetCurrentBatteryPower", CallingConvention = CallingConvention.Cdecl)] + + public static extern byte ISteamUtils_GetCurrentBatteryPower(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUtils_GetAppID", CallingConvention = CallingConvention.Cdecl)] + + public static extern uint ISteamUtils_GetAppID(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUtils_SetOverlayNotificationPosition", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamUtils_SetOverlayNotificationPosition(IntPtr instancePtr, ENotificationPosition eNotificationPosition); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUtils_IsAPICallCompleted", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUtils_IsAPICallCompleted(IntPtr instancePtr, SteamAPICall_t hSteamAPICall, out bool pbFailed); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUtils_GetAPICallFailureReason", CallingConvention = CallingConvention.Cdecl)] + + public static extern ESteamAPICallFailure ISteamUtils_GetAPICallFailureReason(IntPtr instancePtr, SteamAPICall_t hSteamAPICall); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUtils_GetAPICallResult", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUtils_GetAPICallResult(IntPtr instancePtr, SteamAPICall_t hSteamAPICall, IntPtr pCallback, int cubCallback, int iCallbackExpected, out bool pbFailed); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUtils_GetIPCCallCount", CallingConvention = CallingConvention.Cdecl)] + + public static extern uint ISteamUtils_GetIPCCallCount(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUtils_SetWarningMessageHook", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamUtils_SetWarningMessageHook(IntPtr instancePtr, SteamAPIWarningMessageHook_t pFunction); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUtils_IsOverlayEnabled", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUtils_IsOverlayEnabled(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUtils_BOverlayNeedsPresent", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUtils_BOverlayNeedsPresent(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUtils_CheckFileSignature", CallingConvention = CallingConvention.Cdecl)] + + public static extern ulong ISteamUtils_CheckFileSignature(IntPtr instancePtr, InteropHelp.UTF8StringHandle szFileName); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUtils_ShowGamepadTextInput", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUtils_ShowGamepadTextInput(IntPtr instancePtr, EGamepadTextInputMode eInputMode, EGamepadTextInputLineMode eLineInputMode, InteropHelp.UTF8StringHandle pchDescription, uint unCharMax, InteropHelp.UTF8StringHandle pchExistingText); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUtils_GetEnteredGamepadTextLength", CallingConvention = CallingConvention.Cdecl)] + + public static extern uint ISteamUtils_GetEnteredGamepadTextLength(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUtils_GetEnteredGamepadTextInput", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUtils_GetEnteredGamepadTextInput(IntPtr instancePtr, IntPtr pchText, uint cchText); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUtils_GetSteamUILanguage", CallingConvention = CallingConvention.Cdecl)] + + public static extern IntPtr ISteamUtils_GetSteamUILanguage(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUtils_IsSteamRunningInVR", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUtils_IsSteamRunningInVR(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUtils_SetOverlayNotificationInset", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamUtils_SetOverlayNotificationInset(IntPtr instancePtr, int nHorizontalInset, int nVerticalInset); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUtils_IsSteamInBigPictureMode", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUtils_IsSteamInBigPictureMode(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUtils_StartVRDashboard", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamUtils_StartVRDashboard(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUtils_IsVRHeadsetStreamingEnabled", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUtils_IsVRHeadsetStreamingEnabled(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUtils_SetVRHeadsetStreamingEnabled", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamUtils_SetVRHeadsetStreamingEnabled(IntPtr instancePtr, [MarshalAs(UnmanagedType.I1)] bool bEnabled); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUtils_IsSteamChinaLauncher", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUtils_IsSteamChinaLauncher(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUtils_InitFilterText", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUtils_InitFilterText(IntPtr instancePtr, uint unFilterOptions); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUtils_FilterText", CallingConvention = CallingConvention.Cdecl)] + + public static extern int ISteamUtils_FilterText(IntPtr instancePtr, ETextFilteringContext eContext, CSteamID sourceSteamID, InteropHelp.UTF8StringHandle pchInputMessage, IntPtr pchOutFilteredText, uint nByteSizeOutFilteredText); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUtils_GetIPv6ConnectivityState", CallingConvention = CallingConvention.Cdecl)] + + public static extern ESteamIPv6ConnectivityState ISteamUtils_GetIPv6ConnectivityState(IntPtr instancePtr, ESteamIPv6ConnectivityProtocol eProtocol); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUtils_IsSteamRunningOnSteamDeck", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUtils_IsSteamRunningOnSteamDeck(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUtils_ShowFloatingGamepadTextInput", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUtils_ShowFloatingGamepadTextInput(IntPtr instancePtr, EFloatingGamepadTextInputMode eKeyboardMode, int nTextFieldXPosition, int nTextFieldYPosition, int nTextFieldWidth, int nTextFieldHeight); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUtils_SetGameLauncherMode", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamUtils_SetGameLauncherMode(IntPtr instancePtr, [MarshalAs(UnmanagedType.I1)] bool bLauncherMode); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUtils_DismissFloatingGamepadTextInput", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUtils_DismissFloatingGamepadTextInput(IntPtr instancePtr); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamUtils_DismissGamepadTextInput", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamUtils_DismissGamepadTextInput(IntPtr instancePtr); + +#endregion +#region SteamVideo + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamVideo_GetVideoURL", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamVideo_GetVideoURL(IntPtr instancePtr, AppId_t unVideoAppID); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamVideo_IsBroadcasting", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamVideo_IsBroadcasting(IntPtr instancePtr, out int pnNumViewers); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamVideo_GetOPFSettings", CallingConvention = CallingConvention.Cdecl)] + + public static extern void ISteamVideo_GetOPFSettings(IntPtr instancePtr, AppId_t unVideoAppID); + + [DllImport(NativeLibraryName, EntryPoint = "SteamAPI_ISteamVideo_GetOPFStringForApp", CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + + public static extern bool ISteamVideo_GetOPFStringForApp(IntPtr instancePtr, AppId_t unVideoAppID, IntPtr pchBuffer, ref int pnBufferSize); + +#endregion + } +} + +#endif // !DISABLESTEAMWORKS diff --git a/Standalone/Steamworks.NET.Standard.csproj b/Standalone/Steamworks.NET.Standard.csproj index 7f7eb5a4..24f9ca5f 100644 --- a/Standalone/Steamworks.NET.Standard.csproj +++ b/Standalone/Steamworks.NET.Standard.csproj @@ -4,10 +4,9 @@ netstandard2.1 Steamworks Steamworks.NET - x64;x86;arm64 - Windows;OSX-Linux false git + $(DefineConstants);STEAMWORKS_STANDALONE_ANYCPU @@ -23,54 +22,20 @@ snupkg - - bin\x86\Windows\ - TRACE;STEAMWORKS_WIN;STEAMWORKS_X86 - true - true - x86 - prompt - - - - bin\x86\OSX-Linux\ - TRACE;STEAMWORKS_LIN_OSX;STEAMWORKS_X86 - true - true - x86 - prompt - - - - bin\x64\Windows\ - TRACE;STEAMWORKS_WIN;STEAMWORKS_X64 - true - true - x64 - prompt - - - - bin\x64\OSX-Linux\ - TRACE;STEAMWORKS_LIN_OSX;STEAMWORKS_X64 - true - true - x64 - prompt - + + + - - bin\arm64\OSX-Linux\ - TRACE;STEAMWORKS_LIN_OSX;STEAMWORKS_X64 - true - true - arm64 - prompt - + + + + - + - + + + diff --git a/Standalone/Steamworks.NET.Standard.sln b/Standalone/Steamworks.NET.Standard.sln index 16f6cc6e..c276a9e1 100644 --- a/Standalone/Steamworks.NET.Standard.sln +++ b/Standalone/Steamworks.NET.Standard.sln @@ -1,48 +1,20 @@  Microsoft Visual Studio Solution File, Format Version 12.00 -# Visual Studio Version 16 -VisualStudioVersion = 16.0.29009.5 +# Visual Studio Version 17 +VisualStudioVersion = 17.14.36017.23 MinimumVisualStudioVersion = 10.0.40219.1 Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Steamworks.NET.Standard", "Steamworks.NET.Standard.csproj", "{F34F403D-1D4D-4DC6-BBAE-DA31190EC88C}" EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|Any CPU = Debug|Any CPU - Debug|x64 = Debug|x64 - Debug|x86 = Debug|x86 - OSX-Linux|Any CPU = OSX-Linux|Any CPU - OSX-Linux|x64 = OSX-Linux|x64 - OSX-Linux|x86 = OSX-Linux|x86 Release|Any CPU = Release|Any CPU - Release|x64 = Release|x64 - Release|x86 = Release|x86 - Windows|Any CPU = Windows|Any CPU - Windows|x64 = Windows|x64 - Windows|x86 = Windows|x86 EndGlobalSection GlobalSection(ProjectConfigurationPlatforms) = postSolution - {F34F403D-1D4D-4DC6-BBAE-DA31190EC88C}.Debug|Any CPU.ActiveCfg = Windows|x86 - {F34F403D-1D4D-4DC6-BBAE-DA31190EC88C}.Debug|Any CPU.Build.0 = Windows|x86 - {F34F403D-1D4D-4DC6-BBAE-DA31190EC88C}.Debug|x64.ActiveCfg = Windows|x64 - {F34F403D-1D4D-4DC6-BBAE-DA31190EC88C}.Debug|x64.Build.0 = Windows|x64 - {F34F403D-1D4D-4DC6-BBAE-DA31190EC88C}.Debug|x86.ActiveCfg = Windows|x86 - {F34F403D-1D4D-4DC6-BBAE-DA31190EC88C}.Debug|x86.Build.0 = Windows|x86 - {F34F403D-1D4D-4DC6-BBAE-DA31190EC88C}.OSX-Linux|Any CPU.ActiveCfg = OSX-Linux|x86 - {F34F403D-1D4D-4DC6-BBAE-DA31190EC88C}.OSX-Linux|x64.ActiveCfg = OSX-Linux|x64 - {F34F403D-1D4D-4DC6-BBAE-DA31190EC88C}.OSX-Linux|x64.Build.0 = OSX-Linux|x64 - {F34F403D-1D4D-4DC6-BBAE-DA31190EC88C}.OSX-Linux|x86.ActiveCfg = OSX-Linux|x86 - {F34F403D-1D4D-4DC6-BBAE-DA31190EC88C}.OSX-Linux|x86.Build.0 = OSX-Linux|x86 - {F34F403D-1D4D-4DC6-BBAE-DA31190EC88C}.Release|Any CPU.ActiveCfg = Windows|x86 - {F34F403D-1D4D-4DC6-BBAE-DA31190EC88C}.Release|Any CPU.Build.0 = Windows|x86 - {F34F403D-1D4D-4DC6-BBAE-DA31190EC88C}.Release|x64.ActiveCfg = Windows|x64 - {F34F403D-1D4D-4DC6-BBAE-DA31190EC88C}.Release|x64.Build.0 = Windows|x64 - {F34F403D-1D4D-4DC6-BBAE-DA31190EC88C}.Release|x86.ActiveCfg = Windows|x86 - {F34F403D-1D4D-4DC6-BBAE-DA31190EC88C}.Release|x86.Build.0 = Windows|x86 - {F34F403D-1D4D-4DC6-BBAE-DA31190EC88C}.Windows|Any CPU.ActiveCfg = Windows|x86 - {F34F403D-1D4D-4DC6-BBAE-DA31190EC88C}.Windows|x64.ActiveCfg = Windows|x64 - {F34F403D-1D4D-4DC6-BBAE-DA31190EC88C}.Windows|x64.Build.0 = Windows|x64 - {F34F403D-1D4D-4DC6-BBAE-DA31190EC88C}.Windows|x86.ActiveCfg = Windows|x86 - {F34F403D-1D4D-4DC6-BBAE-DA31190EC88C}.Windows|x86.Build.0 = Windows|x86 + {F34F403D-1D4D-4DC6-BBAE-DA31190EC88C}.Debug|Any CPU.ActiveCfg = Debug|AnyCPU + {F34F403D-1D4D-4DC6-BBAE-DA31190EC88C}.Debug|Any CPU.Build.0 = Debug|AnyCPU + {F34F403D-1D4D-4DC6-BBAE-DA31190EC88C}.Release|Any CPU.ActiveCfg = Release|AnyCPU + {F34F403D-1D4D-4DC6-BBAE-DA31190EC88C}.Release|Any CPU.Build.0 = Release|AnyCPU EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE diff --git a/com.rlabrecque.steamworks.net/Runtime/CallbackDispatcher.cs b/com.rlabrecque.steamworks.net/Runtime/CallbackDispatcher.cs index 47bcaecf..2253bce5 100644 --- a/com.rlabrecque.steamworks.net/Runtime/CallbackDispatcher.cs +++ b/com.rlabrecque.steamworks.net/Runtime/CallbackDispatcher.cs @@ -5,24 +5,24 @@ // This file is automatically generated. // Changes to this file will be reverted when you update Steamworks.NET -#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX) +#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX || STEAMWORKS_STANDALONE_ANYCPU) #define DISABLESTEAMWORKS #endif #if !DISABLESTEAMWORKS #if UNITY_3_5 || UNITY_4_0 || UNITY_4_1 || UNITY_4_2 || UNITY_4_3 || UNITY_4_5 || UNITY_4_6 - #error Unsupported Unity platform. Steamworks.NET requires Unity 4.7 or higher. +#error Unsupported Unity platform. Steamworks.NET requires Unity 4.7 or higher. #elif UNITY_4_7 || UNITY_5 || UNITY_2017 || UNITY_2017_1_OR_NEWER - #if UNITY_EDITOR_WIN || (UNITY_STANDALONE_WIN && !UNITY_EDITOR) - #define WINDOWS_BUILD - #endif +#if UNITY_EDITOR_WIN || (UNITY_STANDALONE_WIN && !UNITY_EDITOR) +#define WINDOWS_BUILD +#endif #elif STEAMWORKS_WIN - #define WINDOWS_BUILD -#elif STEAMWORKS_LIN_OSX - // So that we don't enter the else block below. +#define WINDOWS_BUILD +#elif STEAMWORKS_LIN_OSX || STEAMWORKS_STANDALONE_ANYCPU +// So that we don't enter the else block below. #else - #error You need to define STEAMWORKS_WIN, or STEAMWORKS_LIN_OSX. Refer to the readme for more details. +#error You need to define STEAMWORKS_WIN, or STEAMWORKS_LIN_OSX. Refer to the readme for more details. #endif using System; diff --git a/com.rlabrecque.steamworks.net/Runtime/CallbackIdentity.cs b/com.rlabrecque.steamworks.net/Runtime/CallbackIdentity.cs index 0862d0a7..cc329741 100644 --- a/com.rlabrecque.steamworks.net/Runtime/CallbackIdentity.cs +++ b/com.rlabrecque.steamworks.net/Runtime/CallbackIdentity.cs @@ -5,7 +5,7 @@ // This file is automatically generated. // Changes to this file will be reverted when you update Steamworks.NET -#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX) +#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX || STEAMWORKS_STANDALONE_ANYCPU) #define DISABLESTEAMWORKS #endif diff --git a/com.rlabrecque.steamworks.net/Runtime/ISteamMatchmakingResponses.cs b/com.rlabrecque.steamworks.net/Runtime/ISteamMatchmakingResponses.cs index 63b5b2b4..8262b2e5 100644 --- a/com.rlabrecque.steamworks.net/Runtime/ISteamMatchmakingResponses.cs +++ b/com.rlabrecque.steamworks.net/Runtime/ISteamMatchmakingResponses.cs @@ -5,7 +5,7 @@ // This file is automatically generated. // Changes to this file will be reverted when you update Steamworks.NET -#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX) +#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX || STEAMWORKS_STANDALONE_ANYCPU) #define DISABLESTEAMWORKS #endif @@ -13,7 +13,7 @@ // Unity 32bit Mono on Windows crashes with ThisCall for some reason, StdCall without the 'this' ptr is the only thing that works..? #if (UNITY_EDITOR_WIN && !UNITY_EDITOR_64) || (!UNITY_EDITOR && UNITY_STANDALONE_WIN && !UNITY_64) - #define NOTHISPTR +#define NOTHISPTR #endif using System; diff --git a/com.rlabrecque.steamworks.net/Runtime/InteropHelp.cs b/com.rlabrecque.steamworks.net/Runtime/InteropHelp.cs index a9ae57a1..14ed0546 100644 --- a/com.rlabrecque.steamworks.net/Runtime/InteropHelp.cs +++ b/com.rlabrecque.steamworks.net/Runtime/InteropHelp.cs @@ -1,11 +1,11 @@ -// This file is provided under The MIT License as part of Steamworks.NET. +// This file is provided under The MIT License as part of Steamworks.NET. // Copyright (c) 2013-2022 Riley Labrecque // Please see the included LICENSE.txt for additional information. // This file is automatically generated. // Changes to this file will be reverted when you update Steamworks.NET -#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX) +#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX || STEAMWORKS_STANDALONE_ANYCPU) #define DISABLESTEAMWORKS #endif @@ -18,9 +18,24 @@ namespace Steamworks { public class InteropHelp { +#if STEAMWORKS_STANDALONE_ANYCPU + private static readonly bool s_PlatformSupportedAnyCPU = + RuntimeInformation.IsOSPlatform(OSPlatform.Windows) || + RuntimeInformation.IsOSPlatform(OSPlatform.Linux) || + RuntimeInformation.IsOSPlatform(OSPlatform.OSX); +#endif + public static void TestIfPlatformSupported() { +#if STEAMWORKS_STANDALONE_ANYCPU + if (!s_PlatformSupportedAnyCPU) { +#endif + #if !UNITY_EDITOR && !UNITY_STANDALONE && !STEAMWORKS_WIN && !STEAMWORKS_LIN_OSX - throw new System.InvalidOperationException("Steamworks functions can only be called on platforms that Steam is available on."); + throw new System.InvalidOperationException("Steamworks functions can only be called on platforms that Steam is available on."); +#endif + +#if STEAMWORKS_STANDALONE_ANYCPU + } #endif } @@ -81,7 +96,7 @@ public static void StringToByteArrayUTF8(string str, byte[] outArrayBuffer, int // This is for 'const char *' arguments which we need to ensure do not get GC'd while Steam is using them. // We can't use an ICustomMarshaler because Unity crashes when a string between 96 and 127 characters long is defined/initialized at the top of class scope... -#if UNITY_EDITOR || UNITY_STANDALONE || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX +#if UNITY_EDITOR || UNITY_STANDALONE || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX || STEAMWORKS_STANDALONE_ANYCPU public class UTF8StringHandle : Microsoft.Win32.SafeHandles.SafeHandleZeroOrMinusOneIsInvalid { public UTF8StringHandle(string str) : base(true) { @@ -107,7 +122,7 @@ protected override bool ReleaseHandle() { } } #else - public class UTF8StringHandle : IDisposable { + public class UTF8StringHandle : System.IDisposable { public UTF8StringHandle(string str) { } public void Dispose() {} } diff --git a/com.rlabrecque.steamworks.net/Runtime/Packsize.cs b/com.rlabrecque.steamworks.net/Runtime/Packsize.cs index 3b2efb09..a7c0733c 100644 --- a/com.rlabrecque.steamworks.net/Runtime/Packsize.cs +++ b/com.rlabrecque.steamworks.net/Runtime/Packsize.cs @@ -1,11 +1,11 @@ -// This file is provided under The MIT License as part of Steamworks.NET. +// This file is provided under The MIT License as part of Steamworks.NET. // Copyright (c) 2013-2022 Riley Labrecque // Please see the included LICENSE.txt for additional information. // This file is automatically generated. // Changes to this file will be reverted when you update Steamworks.NET -#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX) +#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX || STEAMWORKS_STANDALONE_ANYCPU) #define DISABLESTEAMWORKS #endif @@ -13,25 +13,26 @@ // If we're running in the Unity Editor we need the editors platform. #if UNITY_EDITOR_WIN - #define VALVE_CALLBACK_PACK_LARGE +#define VALVE_CALLBACK_PACK_LARGE #elif UNITY_EDITOR_OSX || UNITY_EDITOR_LINUX - #define VALVE_CALLBACK_PACK_SMALL +#define VALVE_CALLBACK_PACK_SMALL // Otherwise we want the target platform. #elif UNITY_STANDALONE_WIN || STEAMWORKS_WIN - #define VALVE_CALLBACK_PACK_LARGE +#define VALVE_CALLBACK_PACK_LARGE #elif UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_LIN_OSX - #define VALVE_CALLBACK_PACK_SMALL +#define VALVE_CALLBACK_PACK_SMALL // We do not want to throw a warning when we're building in Unity but for an unsupported platform. So we'll silently let this slip by. // It would be nice if Unity itself would define 'UNITY' or something like that... #elif UNITY_3_5 || UNITY_4_0 || UNITY_4_1 || UNITY_4_2 || UNITY_4_3 || UNITY_4_5 || UNITY_4_6 || UNITY_4_7 || UNITY_5 || UNITY_2017_1_OR_NEWER - #define VALVE_CALLBACK_PACK_SMALL - +#define VALVE_CALLBACK_PACK_SMALL // But we do want to be explicit on the Standalone build for XNA/Monogame. +#elif STEAMWORKS_STANDALONE_ANYCPU +#define VALVE_CALLBACK_PACK_ANYCPU #else - #define VALVE_CALLBACK_PACK_LARGE - #warning You need to define STEAMWORKS_WIN, or STEAMWORKS_LIN_OSX. Refer to the readme for more details. +#define VALVE_CALLBACK_PACK_LARGE +#warning You need to define STEAMWORKS_WIN, or STEAMWORKS_LIN_OSX. Refer to the readme for more details. #endif using System.Runtime.InteropServices; @@ -43,24 +44,42 @@ public static class Packsize { public const int value = 8; #elif VALVE_CALLBACK_PACK_SMALL public const int value = 4; +#elif VALVE_CALLBACK_PACK_ANYCPU + public const bool isAnyCPU = true; #endif + private const int SENTINEL_SIZE_SMALL = 24; + private const int SUBSCRIBED_FILES_SIZE_SMALL = (1 + 1 + 1 + 50 + 100) * 4; + private const int SENTINEL_SIZE_LARGE = 32; + private const int SUBSCRIBED_FILES_SIZE_LARGE = (1 + 1 + 1 + 50 + 100) * 4 + 4; + public static bool Test() { int sentinelSize = Marshal.SizeOf(typeof(ValvePackingSentinel_t)); int subscribedFilesSize = Marshal.SizeOf(typeof(RemoteStorageEnumerateUserSubscribedFilesResult_t)); #if VALVE_CALLBACK_PACK_LARGE - if (sentinelSize != 32 || subscribedFilesSize != (1 + 1 + 1 + 50 + 100) * 4 + 4) + if (sentinelSize != SENTINEL_SIZE_SMALL || subscribedFilesSize != SUBSCRIBED_FILES_SIZE_SIZE_SMALL) return false; #elif VALVE_CALLBACK_PACK_SMALL - if (sentinelSize != 24 || subscribedFilesSize != (1 + 1 + 1 + 50 + 100) * 4) + if (sentinelSize != SENTINEL_SIZE_LARGE || subscribedFilesSize != SUBSCRIBED_FILES_SIZE_SIZE_LARGE) return false; +#elif VALVE_CALLBACK_PACK_ANYCPU + if (RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) + return sentinelSize == SENTINEL_SIZE_LARGE && subscribedFilesSize == SUBSCRIBED_FILES_SIZE_LARGE; + else + return sentinelSize == SENTINEL_SIZE_SMALL && subscribedFilesSize == SUBSCRIBED_FILES_SIZE_SMALL; #endif +#pragma warning disable CS0162 // Any CPU check code won't reach here, but other configurations need this return true; +#pragma warning restore } +#if !STEAMWORKS_STANDALONE_ANYCPU [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#else + [StructLayout(LayoutKind.Sequential)] +#endif struct ValvePackingSentinel_t { - uint m_u32; + uint m_u32; ulong m_u64; ushort m_u16; double m_d; diff --git a/com.rlabrecque.steamworks.net/Runtime/Steam.cs b/com.rlabrecque.steamworks.net/Runtime/Steam.cs index 4cb90518..622728cb 100644 --- a/com.rlabrecque.steamworks.net/Runtime/Steam.cs +++ b/com.rlabrecque.steamworks.net/Runtime/Steam.cs @@ -5,7 +5,7 @@ // This file is automatically generated. // Changes to this file will be reverted when you update Steamworks.NET -#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX) +#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX || STEAMWORKS_STANDALONE_ANYCPU) #define DISABLESTEAMWORKS #endif diff --git a/com.rlabrecque.steamworks.net/Runtime/Version.cs b/com.rlabrecque.steamworks.net/Runtime/Version.cs index cdad0087..454c0c2b 100644 --- a/com.rlabrecque.steamworks.net/Runtime/Version.cs +++ b/com.rlabrecque.steamworks.net/Runtime/Version.cs @@ -5,7 +5,7 @@ // This file is automatically generated. // Changes to this file will be reverted when you update Steamworks.NET -#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX) +#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX || STEAMWORKS_STANDALONE_ANYCPU) #define DISABLESTEAMWORKS #endif diff --git a/com.rlabrecque.steamworks.net/Runtime/autogen/SteamCallbacks.cs b/com.rlabrecque.steamworks.net/Runtime/autogen/SteamCallbacks.cs index 1e16bd51..cfded30d 100644 --- a/com.rlabrecque.steamworks.net/Runtime/autogen/SteamCallbacks.cs +++ b/com.rlabrecque.steamworks.net/Runtime/autogen/SteamCallbacks.cs @@ -5,7 +5,7 @@ // This file is automatically generated. // Changes to this file will be reverted when you update Steamworks.NET -#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX) +#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX || STEAMWORKS_STANDALONE_ANYCPU) #define DISABLESTEAMWORKS #endif @@ -19,7 +19,11 @@ namespace Steamworks { //----------------------------------------------------------------------------- // Purpose: posted after the user gains ownership of DLC & that DLC is installed //----------------------------------------------------------------------------- +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamAppsCallbacks + 5)] public struct DlcInstalled_t { public const int k_iCallback = Constants.k_iSteamAppsCallbacks + 5; @@ -32,7 +36,11 @@ public struct DlcInstalled_t { // while the game is already running. The new params can be queried // with GetLaunchQueryParam and GetLaunchCommandLine //--------------------------------------------------------------------------------- +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential, Size = 1)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value, Size = 1)] +#endif [CallbackIdentity(Constants.k_iSteamAppsCallbacks + 14)] public struct NewUrlLaunchParameters_t { public const int k_iCallback = Constants.k_iSteamAppsCallbacks + 14; @@ -42,7 +50,11 @@ public struct NewUrlLaunchParameters_t { // Purpose: response to RequestAppProofOfPurchaseKey/RequestAllProofOfPurchaseKeys // for supporting third-party CD keys, or other proof-of-purchase systems. //----------------------------------------------------------------------------- +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamAppsCallbacks + 21)] public struct AppProofOfPurchaseKeyResponse_t { public const int k_iCallback = Constants.k_iSteamAppsCallbacks + 21; @@ -61,7 +73,11 @@ public string m_rgchKey //----------------------------------------------------------------------------- // Purpose: response to GetFileDetails //----------------------------------------------------------------------------- +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamAppsCallbacks + 23)] public struct FileDetailsResult_t { public const int k_iCallback = Constants.k_iSteamAppsCallbacks + 23; @@ -75,7 +91,11 @@ public struct FileDetailsResult_t { //----------------------------------------------------------------------------- // Purpose: called for games in Timed Trial mode //----------------------------------------------------------------------------- +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamAppsCallbacks + 30)] public struct TimedTrialStatus_t { public const int k_iCallback = Constants.k_iSteamAppsCallbacks + 30; @@ -90,7 +110,11 @@ public struct TimedTrialStatus_t { //----------------------------------------------------------------------------- // Purpose: called when a friends' status changes //----------------------------------------------------------------------------- +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamFriendsCallbacks + 4)] public struct PersonaStateChange_t { public const int k_iCallback = Constants.k_iSteamFriendsCallbacks + 4; @@ -103,7 +127,11 @@ public struct PersonaStateChange_t { // Purpose: posted when game overlay activates or deactivates // the game can use this to be pause or resume single player games //----------------------------------------------------------------------------- +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamFriendsCallbacks + 31)] public struct GameOverlayActivated_t { public const int k_iCallback = Constants.k_iSteamFriendsCallbacks + 31; @@ -118,7 +146,11 @@ public struct GameOverlayActivated_t { // Purpose: called when the user tries to join a different game server from their friends list // game client should attempt to connect to specified server when this is received //----------------------------------------------------------------------------- +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamFriendsCallbacks + 32)] public struct GameServerChangeRequested_t { public const int k_iCallback = Constants.k_iSteamFriendsCallbacks + 32; @@ -142,7 +174,11 @@ public struct GameServerChangeRequested_t { // Purpose: called when the user tries to join a lobby from their friends list // game client should attempt to connect to specified lobby when this is received //----------------------------------------------------------------------------- +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamFriendsCallbacks + 33)] public struct GameLobbyJoinRequested_t { public const int k_iCallback = Constants.k_iSteamFriendsCallbacks + 33; @@ -173,7 +209,11 @@ public struct AvatarImageLoaded_t { //----------------------------------------------------------------------------- // Purpose: marks the return of a request officer list call //----------------------------------------------------------------------------- +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamFriendsCallbacks + 35)] public struct ClanOfficerListResponse_t { public const int k_iCallback = Constants.k_iSteamFriendsCallbacks + 35; @@ -197,7 +237,11 @@ public struct FriendRichPresenceUpdate_t { // Purpose: called when the user tries to join a game from their friends list // rich presence will have been set with the "connect" key which is set here //----------------------------------------------------------------------------- +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamFriendsCallbacks + 37)] public struct GameRichPresenceJoinRequested_t { public const int k_iCallback = Constants.k_iSteamFriendsCallbacks + 37; @@ -226,7 +270,11 @@ public struct GameConnectedClanChatMsg_t { //----------------------------------------------------------------------------- // Purpose: a user has joined a clan chat //----------------------------------------------------------------------------- +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamFriendsCallbacks + 39)] public struct GameConnectedChatJoin_t { public const int k_iCallback = Constants.k_iSteamFriendsCallbacks + 39; @@ -252,7 +300,11 @@ public struct GameConnectedChatLeave_t { //----------------------------------------------------------------------------- // Purpose: a DownloadClanActivityCounts() call has finished //----------------------------------------------------------------------------- +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamFriendsCallbacks + 41)] public struct DownloadClanActivityCountsResult_t { public const int k_iCallback = Constants.k_iSteamFriendsCallbacks + 41; @@ -315,7 +367,11 @@ public struct FriendsEnumerateFollowingList_t { //----------------------------------------------------------------------------- // Purpose: reports the result of an attempt to change the user's persona name //----------------------------------------------------------------------------- +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamFriendsCallbacks + 47)] public struct SetPersonaNameResponse_t { public const int k_iCallback = Constants.k_iSteamFriendsCallbacks + 47; @@ -330,7 +386,11 @@ public struct SetPersonaNameResponse_t { //----------------------------------------------------------------------------- // Purpose: Invoked when the status of unread messages changes //----------------------------------------------------------------------------- +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential, Size = 1)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value, Size = 1)] +#endif [CallbackIdentity(Constants.k_iSteamFriendsCallbacks + 48)] public struct UnreadChatMessagesChanged_t { public const int k_iCallback = Constants.k_iSteamFriendsCallbacks + 48; @@ -339,7 +399,11 @@ public struct UnreadChatMessagesChanged_t { //----------------------------------------------------------------------------- // Purpose: Dispatched when an overlay browser instance is navigated to a protocol/scheme registered by RegisterProtocolInOverlayBrowser() //----------------------------------------------------------------------------- +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamFriendsCallbacks + 49)] public struct OverlayBrowserProtocolNavigation_t { public const int k_iCallback = Constants.k_iSteamFriendsCallbacks + 49; @@ -355,7 +419,11 @@ public string rgchURI //----------------------------------------------------------------------------- // Purpose: A user's equipped profile items have changed //----------------------------------------------------------------------------- +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamFriendsCallbacks + 50)] public struct EquippedProfileItemsChanged_t { public const int k_iCallback = Constants.k_iSteamFriendsCallbacks + 50; @@ -365,7 +433,11 @@ public struct EquippedProfileItemsChanged_t { //----------------------------------------------------------------------------- // Purpose: //----------------------------------------------------------------------------- +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamFriendsCallbacks + 51)] public struct EquippedProfileItems_t { public const int k_iCallback = Constants.k_iSteamFriendsCallbacks + 51; @@ -387,7 +459,11 @@ public struct EquippedProfileItems_t { // callbacks // callback notification - A new message is available for reading from the message queue +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamGameCoordinatorCallbacks + 1)] public struct GCMessageAvailable_t { public const int k_iCallback = Constants.k_iSteamGameCoordinatorCallbacks + 1; @@ -395,7 +471,11 @@ public struct GCMessageAvailable_t { } // callback notification - A message failed to make it to the GC. It may be down temporarily +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential, Size = 1)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value, Size = 1)] +#endif [CallbackIdentity(Constants.k_iSteamGameCoordinatorCallbacks + 2)] public struct GCMessageFailed_t { public const int k_iCallback = Constants.k_iSteamGameCoordinatorCallbacks + 2; @@ -403,7 +483,11 @@ public struct GCMessageFailed_t { // callbacks // client has been approved to connect to this game server +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamGameServerCallbacks + 1)] public struct GSClientApprove_t { public const int k_iCallback = Constants.k_iSteamGameServerCallbacks + 1; @@ -439,7 +523,11 @@ public struct GSClientKick_t { // NOTE: callback values 4 and 5 are skipped because they are used for old deprecated callbacks, // do not reuse them here. // client achievement info +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamGameServerCallbacks + 6)] public struct GSClientAchievementStatus_t { public const int k_iCallback = Constants.k_iSteamGameServerCallbacks + 6; @@ -457,7 +545,11 @@ public string m_pchAchievement // received when the game server requests to be displayed as secure (VAC protected) // m_bSecure is true if the game server should display itself as secure to users, false otherwise +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamUserCallbacks + 15)] public struct GSPolicyResponse_t { public const int k_iCallback = Constants.k_iSteamUserCallbacks + 15; @@ -465,7 +557,11 @@ public struct GSPolicyResponse_t { } // GS gameplay stats info +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamGameServerCallbacks + 7)] public struct GSGameplayStats_t { public const int k_iCallback = Constants.k_iSteamGameServerCallbacks + 7; @@ -489,7 +585,11 @@ public struct GSClientGroupStatus_t { } // Sent as a reply to GetServerReputation() +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamGameServerCallbacks + 9)] public struct GSReputation_t { public const int k_iCallback = Constants.k_iSteamGameServerCallbacks + 9; @@ -511,7 +611,11 @@ public struct GSReputation_t { } // Sent as a reply to AssociateWithClan() +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamGameServerCallbacks + 10)] public struct AssociateWithClanResult_t { public const int k_iCallback = Constants.k_iSteamGameServerCallbacks + 10; @@ -519,7 +623,11 @@ public struct AssociateWithClanResult_t { } // Sent as a reply to ComputeNewPlayerCompatibility() +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamGameServerCallbacks + 11)] public struct ComputeNewPlayerCompatibilityResult_t { public const int k_iCallback = Constants.k_iSteamGameServerCallbacks + 11; @@ -558,7 +666,11 @@ public struct GSStatsStored_t { // Purpose: Callback indicating that a user's stats have been unloaded. // Call RequestUserStats again to access stats for this user //----------------------------------------------------------------------------- +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamUserStatsCallbacks + 8)] public struct GSStatsUnloaded_t { public const int k_iCallback = Constants.k_iSteamUserStatsCallbacks + 8; @@ -569,7 +681,11 @@ public struct GSStatsUnloaded_t { //----------------------------------------------------------------------------- // Purpose: The browser is ready for use //----------------------------------------------------------------------------- +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamHTMLSurfaceCallbacks + 1)] public struct HTML_BrowserReady_t { public const int k_iCallback = Constants.k_iSteamHTMLSurfaceCallbacks + 1; @@ -579,7 +695,11 @@ public struct HTML_BrowserReady_t { //----------------------------------------------------------------------------- // Purpose: the browser has a pending paint //----------------------------------------------------------------------------- +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamHTMLSurfaceCallbacks + 2)] public struct HTML_NeedsPaint_t { public const int k_iCallback = Constants.k_iSteamHTMLSurfaceCallbacks + 2; @@ -601,7 +721,11 @@ public struct HTML_NeedsPaint_t { // Purpose: The browser wanted to navigate to a new page // NOTE - you MUST call AllowStartRequest in response to this callback //----------------------------------------------------------------------------- +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamHTMLSurfaceCallbacks + 3)] public struct HTML_StartRequest_t { public const int k_iCallback = Constants.k_iSteamHTMLSurfaceCallbacks + 3; @@ -616,7 +740,11 @@ public struct HTML_StartRequest_t { //----------------------------------------------------------------------------- // Purpose: The browser has been requested to close due to user interaction (usually from a javascript window.close() call) //----------------------------------------------------------------------------- +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamHTMLSurfaceCallbacks + 4)] public struct HTML_CloseBrowser_t { public const int k_iCallback = Constants.k_iSteamHTMLSurfaceCallbacks + 4; @@ -626,7 +754,11 @@ public struct HTML_CloseBrowser_t { //----------------------------------------------------------------------------- // Purpose: the browser is navigating to a new url //----------------------------------------------------------------------------- +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamHTMLSurfaceCallbacks + 5)] public struct HTML_URLChanged_t { public const int k_iCallback = Constants.k_iSteamHTMLSurfaceCallbacks + 5; @@ -643,7 +775,11 @@ public struct HTML_URLChanged_t { //----------------------------------------------------------------------------- // Purpose: A page is finished loading //----------------------------------------------------------------------------- +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamHTMLSurfaceCallbacks + 6)] public struct HTML_FinishedRequest_t { public const int k_iCallback = Constants.k_iSteamHTMLSurfaceCallbacks + 6; @@ -655,7 +791,11 @@ public struct HTML_FinishedRequest_t { //----------------------------------------------------------------------------- // Purpose: a request to load this url in a new tab //----------------------------------------------------------------------------- +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamHTMLSurfaceCallbacks + 7)] public struct HTML_OpenLinkInNewTab_t { public const int k_iCallback = Constants.k_iSteamHTMLSurfaceCallbacks + 7; @@ -666,7 +806,11 @@ public struct HTML_OpenLinkInNewTab_t { //----------------------------------------------------------------------------- // Purpose: the page has a new title now //----------------------------------------------------------------------------- +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamHTMLSurfaceCallbacks + 8)] public struct HTML_ChangedTitle_t { public const int k_iCallback = Constants.k_iSteamHTMLSurfaceCallbacks + 8; @@ -677,7 +821,11 @@ public struct HTML_ChangedTitle_t { //----------------------------------------------------------------------------- // Purpose: results from a search //----------------------------------------------------------------------------- +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamHTMLSurfaceCallbacks + 9)] public struct HTML_SearchResults_t { public const int k_iCallback = Constants.k_iSteamHTMLSurfaceCallbacks + 9; @@ -689,7 +837,11 @@ public struct HTML_SearchResults_t { //----------------------------------------------------------------------------- // Purpose: page history status changed on the ability to go backwards and forward //----------------------------------------------------------------------------- +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamHTMLSurfaceCallbacks + 10)] public struct HTML_CanGoBackAndForward_t { public const int k_iCallback = Constants.k_iSteamHTMLSurfaceCallbacks + 10; @@ -703,7 +855,11 @@ public struct HTML_CanGoBackAndForward_t { //----------------------------------------------------------------------------- // Purpose: details on the visibility and size of the horizontal scrollbar //----------------------------------------------------------------------------- +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamHTMLSurfaceCallbacks + 11)] public struct HTML_HorizontalScroll_t { public const int k_iCallback = Constants.k_iSteamHTMLSurfaceCallbacks + 11; @@ -719,7 +875,11 @@ public struct HTML_HorizontalScroll_t { //----------------------------------------------------------------------------- // Purpose: details on the visibility and size of the vertical scrollbar //----------------------------------------------------------------------------- +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamHTMLSurfaceCallbacks + 12)] public struct HTML_VerticalScroll_t { public const int k_iCallback = Constants.k_iSteamHTMLSurfaceCallbacks + 12; @@ -735,7 +895,11 @@ public struct HTML_VerticalScroll_t { //----------------------------------------------------------------------------- // Purpose: response to GetLinkAtPosition call //----------------------------------------------------------------------------- +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamHTMLSurfaceCallbacks + 13)] public struct HTML_LinkAtPosition_t { public const int k_iCallback = Constants.k_iSteamHTMLSurfaceCallbacks + 13; @@ -753,7 +917,11 @@ public struct HTML_LinkAtPosition_t { // Purpose: show a Javascript alert dialog, call JSDialogResponse // when the user dismisses this dialog (or right away to ignore it) //----------------------------------------------------------------------------- +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamHTMLSurfaceCallbacks + 14)] public struct HTML_JSAlert_t { public const int k_iCallback = Constants.k_iSteamHTMLSurfaceCallbacks + 14; @@ -765,7 +933,11 @@ public struct HTML_JSAlert_t { // Purpose: show a Javascript confirmation dialog, call JSDialogResponse // when the user dismisses this dialog (or right away to ignore it) //----------------------------------------------------------------------------- +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamHTMLSurfaceCallbacks + 15)] public struct HTML_JSConfirm_t { public const int k_iCallback = Constants.k_iSteamHTMLSurfaceCallbacks + 15; @@ -777,7 +949,11 @@ public struct HTML_JSConfirm_t { // Purpose: when received show a file open dialog // then call FileLoadDialogResponse with the file(s) the user selected. //----------------------------------------------------------------------------- +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamHTMLSurfaceCallbacks + 16)] public struct HTML_FileOpenDialog_t { public const int k_iCallback = Constants.k_iSteamHTMLSurfaceCallbacks + 16; @@ -795,7 +971,11 @@ public struct HTML_FileOpenDialog_t { // to give your application the opportunity to call CreateBrowser and set up // a new browser in response to the attempted popup, if you wish to do so. //----------------------------------------------------------------------------- +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamHTMLSurfaceCallbacks + 21)] public struct HTML_NewWindow_t { public const int k_iCallback = Constants.k_iSteamHTMLSurfaceCallbacks + 21; @@ -811,7 +991,11 @@ public struct HTML_NewWindow_t { //----------------------------------------------------------------------------- // Purpose: change the cursor to display //----------------------------------------------------------------------------- +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamHTMLSurfaceCallbacks + 22)] public struct HTML_SetCursor_t { public const int k_iCallback = Constants.k_iSteamHTMLSurfaceCallbacks + 22; @@ -822,7 +1006,11 @@ public struct HTML_SetCursor_t { //----------------------------------------------------------------------------- // Purpose: informational message from the browser //----------------------------------------------------------------------------- +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamHTMLSurfaceCallbacks + 23)] public struct HTML_StatusText_t { public const int k_iCallback = Constants.k_iSteamHTMLSurfaceCallbacks + 23; @@ -833,7 +1021,11 @@ public struct HTML_StatusText_t { //----------------------------------------------------------------------------- // Purpose: show a tooltip //----------------------------------------------------------------------------- +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamHTMLSurfaceCallbacks + 24)] public struct HTML_ShowToolTip_t { public const int k_iCallback = Constants.k_iSteamHTMLSurfaceCallbacks + 24; @@ -844,7 +1036,11 @@ public struct HTML_ShowToolTip_t { //----------------------------------------------------------------------------- // Purpose: update the text of an existing tooltip //----------------------------------------------------------------------------- +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamHTMLSurfaceCallbacks + 25)] public struct HTML_UpdateToolTip_t { public const int k_iCallback = Constants.k_iSteamHTMLSurfaceCallbacks + 25; @@ -855,7 +1051,11 @@ public struct HTML_UpdateToolTip_t { //----------------------------------------------------------------------------- // Purpose: hide the tooltip you are showing //----------------------------------------------------------------------------- +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamHTMLSurfaceCallbacks + 26)] public struct HTML_HideToolTip_t { public const int k_iCallback = Constants.k_iSteamHTMLSurfaceCallbacks + 26; @@ -865,7 +1065,11 @@ public struct HTML_HideToolTip_t { //----------------------------------------------------------------------------- // Purpose: The browser has restarted due to an internal failure, use this new handle value //----------------------------------------------------------------------------- +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamHTMLSurfaceCallbacks + 27)] public struct HTML_BrowserRestarted_t { public const int k_iCallback = Constants.k_iSteamHTMLSurfaceCallbacks + 27; @@ -874,7 +1078,11 @@ public struct HTML_BrowserRestarted_t { } // callbacks +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamHTTPCallbacks + 1)] public struct HTTPRequestCompleted_t { public const int k_iCallback = Constants.k_iSteamHTTPCallbacks + 1; @@ -898,7 +1106,11 @@ public struct HTTPRequestCompleted_t { public uint m_unBodySize; // Same as GetHTTPResponseBodySize() } +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamHTTPCallbacks + 2)] public struct HTTPRequestHeadersReceived_t { public const int k_iCallback = Constants.k_iSteamHTTPCallbacks + 2; @@ -911,7 +1123,11 @@ public struct HTTPRequestHeadersReceived_t { public ulong m_ulContextValue; } +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamHTTPCallbacks + 3)] public struct HTTPRequestDataReceived_t { public const int k_iCallback = Constants.k_iSteamHTTPCallbacks + 3; @@ -935,7 +1151,11 @@ public struct HTTPRequestDataReceived_t { // Purpose: called when a new controller has been connected, will fire once // per controller if multiple new controllers connect in the same frame //----------------------------------------------------------------------------- +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamControllerCallbacks + 1)] public struct SteamInputDeviceConnected_t { public const int k_iCallback = Constants.k_iSteamControllerCallbacks + 1; @@ -946,7 +1166,11 @@ public struct SteamInputDeviceConnected_t { // Purpose: called when a new controller has been connected, will fire once // per controller if multiple new controllers connect in the same frame //----------------------------------------------------------------------------- +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamControllerCallbacks + 2)] public struct SteamInputDeviceDisconnected_t { public const int k_iCallback = Constants.k_iSteamControllerCallbacks + 2; @@ -957,7 +1181,11 @@ public struct SteamInputDeviceDisconnected_t { // Purpose: called when a controller configuration has been loaded, will fire once // per controller per focus change for Steam Input enabled controllers //----------------------------------------------------------------------------- +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamControllerCallbacks + 3)] public struct SteamInputConfigurationLoaded_t { public const int k_iCallback = Constants.k_iSteamControllerCallbacks + 3; @@ -978,7 +1206,11 @@ public struct SteamInputConfigurationLoaded_t { // Purpose: called when controller gamepad slots change - on Linux/macOS these // slots are shared for all running apps. //----------------------------------------------------------------------------- +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamControllerCallbacks + 4)] public struct SteamInputGamepadSlotChange_t { public const int k_iCallback = Constants.k_iSteamControllerCallbacks + 4; @@ -992,7 +1224,11 @@ public struct SteamInputGamepadSlotChange_t { // SteamInventoryResultReady_t callbacks are fired whenever asynchronous // results transition from "Pending" to "OK" or an error state. There will // always be exactly one callback per handle. +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamInventoryCallbacks + 0)] public struct SteamInventoryResultReady_t { public const int k_iCallback = Constants.k_iSteamInventoryCallbacks + 0; @@ -1007,7 +1243,11 @@ public struct SteamInventoryResultReady_t { // the earlier result is already known to be stale/out-of-date.) // The normal ResultReady callback will still be triggered immediately // afterwards; this is an additional notification for your convenience. +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamInventoryCallbacks + 1)] public struct SteamInventoryFullUpdate_t { public const int k_iCallback = Constants.k_iSteamInventoryCallbacks + 1; @@ -1018,14 +1258,22 @@ public struct SteamInventoryFullUpdate_t { // item definitions have been updated, which could be in response to // LoadItemDefinitions() or any other async request which required // a definition update in order to process results from the server. +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential, Size = 1)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value, Size = 1)] +#endif [CallbackIdentity(Constants.k_iSteamInventoryCallbacks + 2)] public struct SteamInventoryDefinitionUpdate_t { public const int k_iCallback = Constants.k_iSteamInventoryCallbacks + 2; } // Returned +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamInventoryCallbacks + 3)] public struct SteamInventoryEligiblePromoItemDefIDs_t { public const int k_iCallback = Constants.k_iSteamInventoryCallbacks + 3; @@ -1037,7 +1285,11 @@ public struct SteamInventoryEligiblePromoItemDefIDs_t { } // Triggered from StartPurchase call +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamInventoryCallbacks + 4)] public struct SteamInventoryStartPurchaseResult_t { public const int k_iCallback = Constants.k_iSteamInventoryCallbacks + 4; @@ -1047,7 +1299,11 @@ public struct SteamInventoryStartPurchaseResult_t { } // Triggered from RequestPrices +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamInventoryCallbacks + 5)] public struct SteamInventoryRequestPricesResult_t { public const int k_iCallback = Constants.k_iSteamInventoryCallbacks + 5; @@ -1066,7 +1322,11 @@ public string m_rgchCurrency //----------------------------------------------------------------------------- // Purpose: a server was added/removed from the favorites list, you should refresh now //----------------------------------------------------------------------------- +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamMatchmakingCallbacks + 2)] public struct FavoritesListChanged_t { public const int k_iCallback = Constants.k_iSteamMatchmakingCallbacks + 2; @@ -1088,7 +1348,11 @@ public struct FavoritesListChanged_t { // if the user outside a game chooses to join, your game will be launched with the parameter "+connect_lobby <64-bit lobby id>", // or with the callback GameLobbyJoinRequested_t if they're already in-game //----------------------------------------------------------------------------- +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamMatchmakingCallbacks + 3)] public struct LobbyInvite_t { public const int k_iCallback = Constants.k_iSteamMatchmakingCallbacks + 3; @@ -1103,7 +1367,11 @@ public struct LobbyInvite_t { // m_EChatRoomEnterResponse will be set to k_EChatRoomEnterResponseSuccess on success, // or a higher value on failure (see enum EChatRoomEnterResponse) //----------------------------------------------------------------------------- +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamMatchmakingCallbacks + 4)] public struct LobbyEnter_t { public const int k_iCallback = Constants.k_iSteamMatchmakingCallbacks + 4; @@ -1120,7 +1388,11 @@ public struct LobbyEnter_t { // if m_ulSteamIDMember is the steamID of a lobby member, use GetLobbyMemberData() to access per-user details // if m_ulSteamIDMember == m_ulSteamIDLobby, use GetLobbyData() to access lobby metadata //----------------------------------------------------------------------------- +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamMatchmakingCallbacks + 5)] public struct LobbyDataUpdate_t { public const int k_iCallback = Constants.k_iSteamMatchmakingCallbacks + 5; @@ -1135,7 +1407,11 @@ public struct LobbyDataUpdate_t { // Purpose: The lobby chat room state has changed // this is usually sent when a user has joined or left the lobby //----------------------------------------------------------------------------- +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamMatchmakingCallbacks + 6)] public struct LobbyChatUpdate_t { public const int k_iCallback = Constants.k_iSteamMatchmakingCallbacks + 6; @@ -1151,7 +1427,11 @@ public struct LobbyChatUpdate_t { // Purpose: A chat message for this lobby has been sent // use GetLobbyChatEntry( m_iChatID ) to retrieve the contents of this message //----------------------------------------------------------------------------- +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamMatchmakingCallbacks + 7)] public struct LobbyChatMsg_t { public const int k_iCallback = Constants.k_iSteamMatchmakingCallbacks + 7; @@ -1168,7 +1448,11 @@ public struct LobbyChatMsg_t { // it's up to the individual clients to take action on this; the usual // game behavior is to leave the lobby and connect to the specified game server //----------------------------------------------------------------------------- +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamMatchmakingCallbacks + 9)] public struct LobbyGameCreated_t { public const int k_iCallback = Constants.k_iSteamMatchmakingCallbacks + 9; @@ -1183,7 +1467,11 @@ public struct LobbyGameCreated_t { // Purpose: Number of matching lobbies found // iterate the returned lobbies with GetLobbyByIndex(), from values 0 to m_nLobbiesMatching-1 //----------------------------------------------------------------------------- +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamMatchmakingCallbacks + 10)] public struct LobbyMatchList_t { public const int k_iCallback = Constants.k_iSteamMatchmakingCallbacks + 10; @@ -1194,7 +1482,11 @@ public struct LobbyMatchList_t { // Purpose: posted if a user is forcefully removed from a lobby // can occur if a user loses connection to Steam //----------------------------------------------------------------------------- +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamMatchmakingCallbacks + 12)] public struct LobbyKicked_t { public const int k_iCallback = Constants.k_iSteamMatchmakingCallbacks + 12; @@ -1209,7 +1501,11 @@ public struct LobbyKicked_t { // at this point, the lobby has been joined and is ready for use // a LobbyEnter_t callback will also be received (since the local user is joining their own lobby) //----------------------------------------------------------------------------- +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamMatchmakingCallbacks + 13)] public struct LobbyCreated_t { public const int k_iCallback = Constants.k_iSteamMatchmakingCallbacks + 13; @@ -1230,7 +1526,11 @@ public struct LobbyCreated_t { // at this point, the lobby has been joined and is ready for use // a LobbyEnter_t callback will also be received (since the local user is joining their own lobby) //----------------------------------------------------------------------------- +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamMatchmakingCallbacks + 16)] public struct FavoritesListAccountsUpdated_t { public const int k_iCallback = Constants.k_iSteamMatchmakingCallbacks + 16; @@ -1240,7 +1540,11 @@ public struct FavoritesListAccountsUpdated_t { //----------------------------------------------------------------------------- // Callbacks for ISteamGameSearch (which go through the regular Steam callback registration system) +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamGameSearchCallbacks + 1)] public struct SearchForGameProgressCallback_t { public const int k_iCallback = Constants.k_iSteamGameSearchCallbacks + 1; @@ -1256,7 +1560,11 @@ public struct SearchForGameProgressCallback_t { } // notification to all players searching that a game has been found +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamGameSearchCallbacks + 2)] public struct SearchForGameResultCallback_t { public const int k_iCallback = Constants.k_iSteamGameSearchCallbacks + 2; @@ -1278,7 +1586,11 @@ public struct SearchForGameResultCallback_t { // ISteamGameSearch : Game Host API callbacks // callback from RequestPlayersForGame when the matchmaking service has started or ended search // callback will also follow a call from CancelRequestPlayersForGame - m_bSearchInProgress will be false +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamGameSearchCallbacks + 11)] public struct RequestPlayersForGameProgressCallback_t { public const int k_iCallback = Constants.k_iSteamGameSearchCallbacks + 11; @@ -1290,7 +1602,11 @@ public struct RequestPlayersForGameProgressCallback_t { // callback from RequestPlayersForGame // one of these will be sent per player // followed by additional callbacks when players accept or decline the game +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamGameSearchCallbacks + 12)] public struct RequestPlayersForGameResultCallback_t { public const int k_iCallback = Constants.k_iSteamGameSearchCallbacks + 12; @@ -1308,7 +1624,11 @@ public struct RequestPlayersForGameResultCallback_t { public ulong m_ullUniqueGameID; } +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamGameSearchCallbacks + 13)] public struct RequestPlayersForGameFinalResultCallback_t { public const int k_iCallback = Constants.k_iSteamGameSearchCallbacks + 13; @@ -1319,7 +1639,11 @@ public struct RequestPlayersForGameFinalResultCallback_t { } // this callback confirms that results were received by the matchmaking service for this player +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamGameSearchCallbacks + 14)] public struct SubmitPlayerResultResultCallback_t { public const int k_iCallback = Constants.k_iSteamGameSearchCallbacks + 14; @@ -1331,7 +1655,11 @@ public struct SubmitPlayerResultResultCallback_t { // this callback confirms that the game is recorded as complete on the matchmaking service // the next call to RequestPlayersForGame will generate a new unique game ID +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamGameSearchCallbacks + 15)] public struct EndGameResultCallback_t { public const int k_iCallback = Constants.k_iSteamGameSearchCallbacks + 15; @@ -1343,7 +1671,11 @@ public struct EndGameResultCallback_t { // Steam has responded to the user request to join a party via the given Beacon ID. // If successful, the connect string contains game-specific instructions to connect // to the game with that party. +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamPartiesCallbacks + 1)] public struct JoinPartyCallback_t { public const int k_iCallback = Constants.k_iSteamPartiesCallbacks + 1; @@ -1361,7 +1693,11 @@ public string m_rgchConnectString } // Response to CreateBeacon request. If successful, the beacon ID is provided. +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamPartiesCallbacks + 2)] public struct CreateBeaconCallback_t { public const int k_iCallback = Constants.k_iSteamPartiesCallbacks + 2; @@ -1374,7 +1710,11 @@ public struct CreateBeaconCallback_t { // and we've reserved one of the open slots for them. // You should confirm when they join your party by calling OnReservationCompleted(). // Otherwise, Steam may timeout their reservation eventually. +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamPartiesCallbacks + 3)] public struct ReservationNotificationCallback_t { public const int k_iCallback = Constants.k_iSteamPartiesCallbacks + 3; @@ -1384,7 +1724,11 @@ public struct ReservationNotificationCallback_t { } // Response to ChangeNumOpenSlots call +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamPartiesCallbacks + 4)] public struct ChangeNumOpenSlotsCallback_t { public const int k_iCallback = Constants.k_iSteamPartiesCallbacks + 4; @@ -1393,27 +1737,43 @@ public struct ChangeNumOpenSlotsCallback_t { } // The list of possible Party beacon locations has changed +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential, Size = 1)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value, Size = 1)] +#endif [CallbackIdentity(Constants.k_iSteamPartiesCallbacks + 5)] public struct AvailableBeaconLocationsUpdated_t { public const int k_iCallback = Constants.k_iSteamPartiesCallbacks + 5; } // The list of active beacons may have changed +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential, Size = 1)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value, Size = 1)] +#endif [CallbackIdentity(Constants.k_iSteamPartiesCallbacks + 6)] public struct ActiveBeaconsUpdated_t { public const int k_iCallback = Constants.k_iSteamPartiesCallbacks + 6; } // callbacks +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential, Size = 1)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value, Size = 1)] +#endif [CallbackIdentity(Constants.k_iSteamMusicCallbacks + 1)] public struct PlaybackStatusHasChanged_t { public const int k_iCallback = Constants.k_iSteamMusicCallbacks + 1; } +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamMusicCallbacks + 2)] public struct VolumeHasChanged_t { public const int k_iCallback = Constants.k_iSteamMusicCallbacks + 2; @@ -1421,55 +1781,91 @@ public struct VolumeHasChanged_t { } // callbacks +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential, Size = 1)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value, Size = 1)] +#endif [CallbackIdentity(Constants.k_iSteamMusicRemoteCallbacks + 1)] public struct MusicPlayerRemoteWillActivate_t { public const int k_iCallback = Constants.k_iSteamMusicRemoteCallbacks + 1; } +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential, Size = 1)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value, Size = 1)] +#endif [CallbackIdentity(Constants.k_iSteamMusicRemoteCallbacks + 2)] public struct MusicPlayerRemoteWillDeactivate_t { public const int k_iCallback = Constants.k_iSteamMusicRemoteCallbacks + 2; } +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential, Size = 1)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value, Size = 1)] +#endif [CallbackIdentity(Constants.k_iSteamMusicRemoteCallbacks + 3)] public struct MusicPlayerRemoteToFront_t { public const int k_iCallback = Constants.k_iSteamMusicRemoteCallbacks + 3; } +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential, Size = 1)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value, Size = 1)] +#endif [CallbackIdentity(Constants.k_iSteamMusicRemoteCallbacks + 4)] public struct MusicPlayerWillQuit_t { public const int k_iCallback = Constants.k_iSteamMusicRemoteCallbacks + 4; } +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential, Size = 1)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value, Size = 1)] +#endif [CallbackIdentity(Constants.k_iSteamMusicRemoteCallbacks + 5)] public struct MusicPlayerWantsPlay_t { public const int k_iCallback = Constants.k_iSteamMusicRemoteCallbacks + 5; } +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential, Size = 1)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value, Size = 1)] +#endif [CallbackIdentity(Constants.k_iSteamMusicRemoteCallbacks + 6)] public struct MusicPlayerWantsPause_t { public const int k_iCallback = Constants.k_iSteamMusicRemoteCallbacks + 6; } +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential, Size = 1)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value, Size = 1)] +#endif [CallbackIdentity(Constants.k_iSteamMusicRemoteCallbacks + 7)] public struct MusicPlayerWantsPlayPrevious_t { public const int k_iCallback = Constants.k_iSteamMusicRemoteCallbacks + 7; } +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential, Size = 1)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value, Size = 1)] +#endif [CallbackIdentity(Constants.k_iSteamMusicRemoteCallbacks + 8)] public struct MusicPlayerWantsPlayNext_t { public const int k_iCallback = Constants.k_iSteamMusicRemoteCallbacks + 8; } +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamMusicRemoteCallbacks + 9)] public struct MusicPlayerWantsShuffled_t { public const int k_iCallback = Constants.k_iSteamMusicRemoteCallbacks + 9; @@ -1477,7 +1873,11 @@ public struct MusicPlayerWantsShuffled_t { public bool m_bShuffled; } +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamMusicRemoteCallbacks + 10)] public struct MusicPlayerWantsLooped_t { public const int k_iCallback = Constants.k_iSteamMusicRemoteCallbacks + 10; @@ -1485,28 +1885,44 @@ public struct MusicPlayerWantsLooped_t { public bool m_bLooped; } +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamMusicCallbacks + 11)] public struct MusicPlayerWantsVolume_t { public const int k_iCallback = Constants.k_iSteamMusicCallbacks + 11; public float m_flNewVolume; } +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamMusicCallbacks + 12)] public struct MusicPlayerSelectsQueueEntry_t { public const int k_iCallback = Constants.k_iSteamMusicCallbacks + 12; public int nID; } +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamMusicCallbacks + 13)] public struct MusicPlayerSelectsPlaylistEntry_t { public const int k_iCallback = Constants.k_iSteamMusicCallbacks + 13; public int nID; } +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamMusicRemoteCallbacks + 14)] public struct MusicPlayerWantsPlayingRepeatStatus_t { public const int k_iCallback = Constants.k_iSteamMusicRemoteCallbacks + 14; @@ -1516,7 +1932,11 @@ public struct MusicPlayerWantsPlayingRepeatStatus_t { // callbacks // callback notification - a user wants to talk to us over the P2P channel via the SendP2PPacket() API // in response, a call to AcceptP2PPacketsFromUser() needs to be made, if you want to talk with them +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamNetworkingCallbacks + 2)] public struct P2PSessionRequest_t { public const int k_iCallback = Constants.k_iSteamNetworkingCallbacks + 2; @@ -1550,7 +1970,11 @@ public struct SocketStatusCallback_t { // Callbacks // /// Posted when a remote host is sending us a message, and we do not already have a session with them +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamNetworkingMessagesCallbacks + 1)] public struct SteamNetworkingMessagesSessionRequest_t { public const int k_iCallback = Constants.k_iSteamNetworkingMessagesCallbacks + 1; @@ -1568,7 +1992,11 @@ public struct SteamNetworkingMessagesSessionRequest_t { /// Also, if a session times out due to inactivity, no callbacks will be posted. The only /// way to detect that this is happening is that querying the session state may return /// none, connecting, and findingroute again. +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamNetworkingMessagesCallbacks + 2)] public struct SteamNetworkingMessagesSessionFailed_t { public const int k_iCallback = Constants.k_iSteamNetworkingMessagesCallbacks + 2; @@ -1615,7 +2043,11 @@ public struct SteamNetworkingMessagesSessionFailed_t { /// state by the time you process this callback. /// /// Also note that callbacks will be posted when connections are created and destroyed by your own API calls. +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamNetworkingSocketsCallbacks + 1)] public struct SteamNetConnectionStatusChangedCallback_t { public const int k_iCallback = Constants.k_iSteamNetworkingSocketsCallbacks + 1; @@ -1638,7 +2070,11 @@ public struct SteamNetConnectionStatusChangedCallback_t { /// - A valid certificate issued by a CA. /// /// This callback is posted whenever the state of our readiness changes. +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamNetworkingSocketsCallbacks + 2)] public struct SteamNetAuthenticationStatus_t { public const int k_iCallback = Constants.k_iSteamNetworkingSocketsCallbacks + 2; @@ -1707,21 +2143,33 @@ public struct SteamParentalSettingsChanged_t { } // callbacks +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamRemotePlayCallbacks + 1)] public struct SteamRemotePlaySessionConnected_t { public const int k_iCallback = Constants.k_iSteamRemotePlayCallbacks + 1; public RemotePlaySessionID_t m_unSessionID; } +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamRemotePlayCallbacks + 2)] public struct SteamRemotePlaySessionDisconnected_t { public const int k_iCallback = Constants.k_iSteamRemotePlayCallbacks + 2; public RemotePlaySessionID_t m_unSessionID; } +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamRemotePlayCallbacks + 3)] public struct SteamRemotePlayTogetherGuestInvite_t { public const int k_iCallback = Constants.k_iSteamRemotePlayCallbacks + 3; @@ -1738,7 +2186,11 @@ public string m_szConnectURL //----------------------------------------------------------------------------- // Purpose: The result of a call to FileShare() //----------------------------------------------------------------------------- +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamRemoteStorageCallbacks + 7)] public struct RemoteStorageFileShareResult_t { public const int k_iCallback = Constants.k_iSteamRemoteStorageCallbacks + 7; @@ -1757,7 +2209,11 @@ public string m_rgchFilename // The name of the file that was shared //----------------------------------------------------------------------------- // Purpose: The result of a call to PublishFile() //----------------------------------------------------------------------------- +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamRemoteStorageCallbacks + 9)] public struct RemoteStoragePublishFileResult_t { public const int k_iCallback = Constants.k_iSteamRemoteStorageCallbacks + 9; @@ -1771,7 +2227,11 @@ public struct RemoteStoragePublishFileResult_t { //----------------------------------------------------------------------------- // Purpose: The result of a call to DeletePublishedFile() //----------------------------------------------------------------------------- +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamRemoteStorageCallbacks + 11)] public struct RemoteStorageDeletePublishedFileResult_t { public const int k_iCallback = Constants.k_iSteamRemoteStorageCallbacks + 11; @@ -1782,7 +2242,11 @@ public struct RemoteStorageDeletePublishedFileResult_t { //----------------------------------------------------------------------------- // Purpose: The result of a call to EnumerateUserPublishedFiles() //----------------------------------------------------------------------------- +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamRemoteStorageCallbacks + 12)] public struct RemoteStorageEnumerateUserPublishedFilesResult_t { public const int k_iCallback = Constants.k_iSteamRemoteStorageCallbacks + 12; @@ -1796,7 +2260,11 @@ public struct RemoteStorageEnumerateUserPublishedFilesResult_t { //----------------------------------------------------------------------------- // Purpose: The result of a call to SubscribePublishedFile() //----------------------------------------------------------------------------- +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamRemoteStorageCallbacks + 13)] public struct RemoteStorageSubscribePublishedFileResult_t { public const int k_iCallback = Constants.k_iSteamRemoteStorageCallbacks + 13; @@ -1807,7 +2275,11 @@ public struct RemoteStorageSubscribePublishedFileResult_t { //----------------------------------------------------------------------------- // Purpose: The result of a call to EnumerateSubscribePublishedFiles() //----------------------------------------------------------------------------- +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamRemoteStorageCallbacks + 14)] public struct RemoteStorageEnumerateUserSubscribedFilesResult_t { public const int k_iCallback = Constants.k_iSteamRemoteStorageCallbacks + 14; @@ -1823,7 +2295,11 @@ public struct RemoteStorageEnumerateUserSubscribedFilesResult_t { //----------------------------------------------------------------------------- // Purpose: The result of a call to UnsubscribePublishedFile() //----------------------------------------------------------------------------- +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamRemoteStorageCallbacks + 15)] public struct RemoteStorageUnsubscribePublishedFileResult_t { public const int k_iCallback = Constants.k_iSteamRemoteStorageCallbacks + 15; @@ -1834,7 +2310,11 @@ public struct RemoteStorageUnsubscribePublishedFileResult_t { //----------------------------------------------------------------------------- // Purpose: The result of a call to CommitPublishedFileUpdate() //----------------------------------------------------------------------------- +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamRemoteStorageCallbacks + 16)] public struct RemoteStorageUpdatePublishedFileResult_t { public const int k_iCallback = Constants.k_iSteamRemoteStorageCallbacks + 16; @@ -1847,7 +2327,11 @@ public struct RemoteStorageUpdatePublishedFileResult_t { //----------------------------------------------------------------------------- // Purpose: The result of a call to UGCDownload() //----------------------------------------------------------------------------- +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamRemoteStorageCallbacks + 17)] public struct RemoteStorageDownloadUGCResult_t { public const int k_iCallback = Constants.k_iSteamRemoteStorageCallbacks + 17; @@ -1868,7 +2352,11 @@ public string m_pchFileName // The name of the file that was downloaded. //----------------------------------------------------------------------------- // Purpose: The result of a call to GetPublishedFileDetails() //----------------------------------------------------------------------------- +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamRemoteStorageCallbacks + 18)] public struct RemoteStorageGetPublishedFileDetailsResult_t { public const int k_iCallback = Constants.k_iSteamRemoteStorageCallbacks + 18; @@ -1928,7 +2416,11 @@ public string m_pchFileName // The name of the primary file public bool m_bAcceptedForUse; // developer has specifically flagged this item as accepted in the Workshop } +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamRemoteStorageCallbacks + 19)] public struct RemoteStorageEnumerateWorkshopFilesResult_t { public const int k_iCallback = Constants.k_iSteamRemoteStorageCallbacks + 19; @@ -1946,7 +2438,11 @@ public struct RemoteStorageEnumerateWorkshopFilesResult_t { //----------------------------------------------------------------------------- // Purpose: The result of GetPublishedItemVoteDetails //----------------------------------------------------------------------------- +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamRemoteStorageCallbacks + 20)] public struct RemoteStorageGetPublishedItemVoteDetailsResult_t { public const int k_iCallback = Constants.k_iSteamRemoteStorageCallbacks + 20; @@ -1961,7 +2457,11 @@ public struct RemoteStorageGetPublishedItemVoteDetailsResult_t { //----------------------------------------------------------------------------- // Purpose: User subscribed to a file for the app (from within the app or on the web) //----------------------------------------------------------------------------- +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamRemoteStorageCallbacks + 21)] public struct RemoteStoragePublishedFileSubscribed_t { public const int k_iCallback = Constants.k_iSteamRemoteStorageCallbacks + 21; @@ -1972,7 +2472,11 @@ public struct RemoteStoragePublishedFileSubscribed_t { //----------------------------------------------------------------------------- // Purpose: User unsubscribed from a file for the app (from within the app or on the web) //----------------------------------------------------------------------------- +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamRemoteStorageCallbacks + 22)] public struct RemoteStoragePublishedFileUnsubscribed_t { public const int k_iCallback = Constants.k_iSteamRemoteStorageCallbacks + 22; @@ -1983,7 +2487,11 @@ public struct RemoteStoragePublishedFileUnsubscribed_t { //----------------------------------------------------------------------------- // Purpose: Published file that a user owns was deleted (from within the app or the web) //----------------------------------------------------------------------------- +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamRemoteStorageCallbacks + 23)] public struct RemoteStoragePublishedFileDeleted_t { public const int k_iCallback = Constants.k_iSteamRemoteStorageCallbacks + 23; @@ -1994,7 +2502,11 @@ public struct RemoteStoragePublishedFileDeleted_t { //----------------------------------------------------------------------------- // Purpose: The result of a call to UpdateUserPublishedItemVote() //----------------------------------------------------------------------------- +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamRemoteStorageCallbacks + 24)] public struct RemoteStorageUpdateUserPublishedItemVoteResult_t { public const int k_iCallback = Constants.k_iSteamRemoteStorageCallbacks + 24; @@ -2005,7 +2517,11 @@ public struct RemoteStorageUpdateUserPublishedItemVoteResult_t { //----------------------------------------------------------------------------- // Purpose: The result of a call to GetUserPublishedItemVoteDetails() //----------------------------------------------------------------------------- +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamRemoteStorageCallbacks + 25)] public struct RemoteStorageUserVoteDetails_t { public const int k_iCallback = Constants.k_iSteamRemoteStorageCallbacks + 25; @@ -2014,7 +2530,11 @@ public struct RemoteStorageUserVoteDetails_t { public EWorkshopVote m_eVote; // what the user voted } +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamRemoteStorageCallbacks + 26)] public struct RemoteStorageEnumerateUserSharedWorkshopFilesResult_t { public const int k_iCallback = Constants.k_iSteamRemoteStorageCallbacks + 26; @@ -2025,7 +2545,11 @@ public struct RemoteStorageEnumerateUserSharedWorkshopFilesResult_t { public PublishedFileId_t[] m_rgPublishedFileId; } +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamRemoteStorageCallbacks + 27)] public struct RemoteStorageSetUserPublishedFileActionResult_t { public const int k_iCallback = Constants.k_iSteamRemoteStorageCallbacks + 27; @@ -2034,7 +2558,11 @@ public struct RemoteStorageSetUserPublishedFileActionResult_t { public EWorkshopFileAction m_eAction; // the action that was attempted } +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamRemoteStorageCallbacks + 28)] public struct RemoteStorageEnumeratePublishedFilesByUserActionResult_t { public const int k_iCallback = Constants.k_iSteamRemoteStorageCallbacks + 28; @@ -2051,7 +2579,11 @@ public struct RemoteStorageEnumeratePublishedFilesByUserActionResult_t { //----------------------------------------------------------------------------- // Purpose: Called periodically while a PublishWorkshopFile is in progress //----------------------------------------------------------------------------- +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamRemoteStorageCallbacks + 29)] public struct RemoteStoragePublishFileProgress_t { public const int k_iCallback = Constants.k_iSteamRemoteStorageCallbacks + 29; @@ -2063,7 +2595,11 @@ public struct RemoteStoragePublishFileProgress_t { //----------------------------------------------------------------------------- // Purpose: Called when the content for a published file is updated //----------------------------------------------------------------------------- +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamRemoteStorageCallbacks + 30)] public struct RemoteStoragePublishedFileUpdated_t { public const int k_iCallback = Constants.k_iSteamRemoteStorageCallbacks + 30; @@ -2075,7 +2611,11 @@ public struct RemoteStoragePublishedFileUpdated_t { //----------------------------------------------------------------------------- // Purpose: Called when a FileWriteAsync completes //----------------------------------------------------------------------------- +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamRemoteStorageCallbacks + 31)] public struct RemoteStorageFileWriteAsyncComplete_t { public const int k_iCallback = Constants.k_iSteamRemoteStorageCallbacks + 31; @@ -2085,7 +2625,11 @@ public struct RemoteStorageFileWriteAsyncComplete_t { //----------------------------------------------------------------------------- // Purpose: Called when a FileReadAsync completes //----------------------------------------------------------------------------- +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamRemoteStorageCallbacks + 32)] public struct RemoteStorageFileReadAsyncComplete_t { public const int k_iCallback = Constants.k_iSteamRemoteStorageCallbacks + 32; @@ -2100,7 +2644,11 @@ public struct RemoteStorageFileReadAsyncComplete_t { // to remote session changes // Note: only posted if this happens DURING the local app session //----------------------------------------------------------------------------- +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential, Size = 1)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value, Size = 1)] +#endif [CallbackIdentity(Constants.k_iSteamRemoteStorageCallbacks + 33)] public struct RemoteStorageLocalFileChange_t { public const int k_iCallback = Constants.k_iSteamRemoteStorageCallbacks + 33; @@ -2111,7 +2659,11 @@ public struct RemoteStorageLocalFileChange_t { // Purpose: Screenshot successfully written or otherwise added to the library // and can now be tagged //----------------------------------------------------------------------------- +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamScreenshotsCallbacks + 1)] public struct ScreenshotReady_t { public const int k_iCallback = Constants.k_iSteamScreenshotsCallbacks + 1; @@ -2124,7 +2676,11 @@ public struct ScreenshotReady_t { // HookScreenshots() has been called, in which case Steam will not take // the screenshot itself. //----------------------------------------------------------------------------- +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential, Size = 1)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value, Size = 1)] +#endif [CallbackIdentity(Constants.k_iSteamScreenshotsCallbacks + 2)] public struct ScreenshotRequested_t { public const int k_iCallback = Constants.k_iSteamScreenshotsCallbacks + 2; @@ -2133,7 +2689,11 @@ public struct ScreenshotRequested_t { //----------------------------------------------------------------------------- // Purpose: Callback for querying UGC //----------------------------------------------------------------------------- +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamTimelineCallbacks + 1)] public struct SteamTimelineGamePhaseRecordingExists_t { public const int k_iCallback = Constants.k_iSteamTimelineCallbacks + 1; @@ -2153,7 +2713,11 @@ public string m_rgchPhaseID //----------------------------------------------------------------------------- // Purpose: Callback for querying UGC //----------------------------------------------------------------------------- +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamTimelineCallbacks + 2)] public struct SteamTimelineEventRecordingExists_t { public const int k_iCallback = Constants.k_iSteamTimelineCallbacks + 2; @@ -2165,7 +2729,11 @@ public struct SteamTimelineEventRecordingExists_t { //----------------------------------------------------------------------------- // Purpose: Callback for querying UGC //----------------------------------------------------------------------------- +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamUGCCallbacks + 1)] public struct SteamUGCQueryCompleted_t { public const int k_iCallback = Constants.k_iSteamUGCCallbacks + 1; @@ -2187,7 +2755,11 @@ public struct SteamUGCQueryCompleted_t { //----------------------------------------------------------------------------- // Purpose: Callback for requesting details on one piece of UGC //----------------------------------------------------------------------------- +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamUGCCallbacks + 2)] public struct SteamUGCRequestUGCDetailsResult_t { public const int k_iCallback = Constants.k_iSteamUGCCallbacks + 2; @@ -2199,7 +2771,11 @@ public struct SteamUGCRequestUGCDetailsResult_t { //----------------------------------------------------------------------------- // Purpose: result for ISteamUGC::CreateItem() //----------------------------------------------------------------------------- +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamUGCCallbacks + 3)] public struct CreateItemResult_t { public const int k_iCallback = Constants.k_iSteamUGCCallbacks + 3; @@ -2212,7 +2788,11 @@ public struct CreateItemResult_t { //----------------------------------------------------------------------------- // Purpose: result for ISteamUGC::SubmitItemUpdate() //----------------------------------------------------------------------------- +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamUGCCallbacks + 4)] public struct SubmitItemUpdateResult_t { public const int k_iCallback = Constants.k_iSteamUGCCallbacks + 4; @@ -2225,7 +2805,11 @@ public struct SubmitItemUpdateResult_t { //----------------------------------------------------------------------------- // Purpose: a Workshop item has been installed or updated //----------------------------------------------------------------------------- +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamUGCCallbacks + 5)] public struct ItemInstalled_t { public const int k_iCallback = Constants.k_iSteamUGCCallbacks + 5; @@ -2238,7 +2822,11 @@ public struct ItemInstalled_t { //----------------------------------------------------------------------------- // Purpose: result of DownloadItem(), existing item files can be accessed again //----------------------------------------------------------------------------- +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamUGCCallbacks + 6)] public struct DownloadItemResult_t { public const int k_iCallback = Constants.k_iSteamUGCCallbacks + 6; @@ -2250,7 +2838,11 @@ public struct DownloadItemResult_t { //----------------------------------------------------------------------------- // Purpose: result of AddItemToFavorites() or RemoveItemFromFavorites() //----------------------------------------------------------------------------- +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamUGCCallbacks + 7)] public struct UserFavoriteItemsListChanged_t { public const int k_iCallback = Constants.k_iSteamUGCCallbacks + 7; @@ -2263,7 +2855,11 @@ public struct UserFavoriteItemsListChanged_t { //----------------------------------------------------------------------------- // Purpose: The result of a call to SetUserItemVote() //----------------------------------------------------------------------------- +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamUGCCallbacks + 8)] public struct SetUserItemVoteResult_t { public const int k_iCallback = Constants.k_iSteamUGCCallbacks + 8; @@ -2276,7 +2872,11 @@ public struct SetUserItemVoteResult_t { //----------------------------------------------------------------------------- // Purpose: The result of a call to GetUserItemVote() //----------------------------------------------------------------------------- +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamUGCCallbacks + 9)] public struct GetUserItemVoteResult_t { public const int k_iCallback = Constants.k_iSteamUGCCallbacks + 9; @@ -2293,7 +2893,11 @@ public struct GetUserItemVoteResult_t { //----------------------------------------------------------------------------- // Purpose: The result of a call to StartPlaytimeTracking() //----------------------------------------------------------------------------- +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamUGCCallbacks + 10)] public struct StartPlaytimeTrackingResult_t { public const int k_iCallback = Constants.k_iSteamUGCCallbacks + 10; @@ -2303,7 +2907,11 @@ public struct StartPlaytimeTrackingResult_t { //----------------------------------------------------------------------------- // Purpose: The result of a call to StopPlaytimeTracking() //----------------------------------------------------------------------------- +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamUGCCallbacks + 11)] public struct StopPlaytimeTrackingResult_t { public const int k_iCallback = Constants.k_iSteamUGCCallbacks + 11; @@ -2313,7 +2921,11 @@ public struct StopPlaytimeTrackingResult_t { //----------------------------------------------------------------------------- // Purpose: The result of a call to AddDependency //----------------------------------------------------------------------------- +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamUGCCallbacks + 12)] public struct AddUGCDependencyResult_t { public const int k_iCallback = Constants.k_iSteamUGCCallbacks + 12; @@ -2325,7 +2937,11 @@ public struct AddUGCDependencyResult_t { //----------------------------------------------------------------------------- // Purpose: The result of a call to RemoveDependency //----------------------------------------------------------------------------- +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamUGCCallbacks + 13)] public struct RemoveUGCDependencyResult_t { public const int k_iCallback = Constants.k_iSteamUGCCallbacks + 13; @@ -2337,7 +2953,11 @@ public struct RemoveUGCDependencyResult_t { //----------------------------------------------------------------------------- // Purpose: The result of a call to AddAppDependency //----------------------------------------------------------------------------- +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamUGCCallbacks + 14)] public struct AddAppDependencyResult_t { public const int k_iCallback = Constants.k_iSteamUGCCallbacks + 14; @@ -2349,7 +2969,11 @@ public struct AddAppDependencyResult_t { //----------------------------------------------------------------------------- // Purpose: The result of a call to RemoveAppDependency //----------------------------------------------------------------------------- +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamUGCCallbacks + 15)] public struct RemoveAppDependencyResult_t { public const int k_iCallback = Constants.k_iSteamUGCCallbacks + 15; @@ -2362,7 +2986,11 @@ public struct RemoveAppDependencyResult_t { // Purpose: The result of a call to GetAppDependencies. Callback may be called // multiple times until all app dependencies have been returned. //----------------------------------------------------------------------------- +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamUGCCallbacks + 16)] public struct GetAppDependenciesResult_t { public const int k_iCallback = Constants.k_iSteamUGCCallbacks + 16; @@ -2377,7 +3005,11 @@ public struct GetAppDependenciesResult_t { //----------------------------------------------------------------------------- // Purpose: The result of a call to DeleteItem //----------------------------------------------------------------------------- +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamUGCCallbacks + 17)] public struct DeleteItemResult_t { public const int k_iCallback = Constants.k_iSteamUGCCallbacks + 17; @@ -2388,7 +3020,11 @@ public struct DeleteItemResult_t { //----------------------------------------------------------------------------- // Purpose: signal that the list of subscribed items changed //----------------------------------------------------------------------------- +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamUGCCallbacks + 18)] public struct UserSubscribedItemsListChanged_t { public const int k_iCallback = Constants.k_iSteamUGCCallbacks + 18; @@ -2398,7 +3034,11 @@ public struct UserSubscribedItemsListChanged_t { //----------------------------------------------------------------------------- // Purpose: Status of the user's acceptable/rejection of the app's specific Workshop EULA //----------------------------------------------------------------------------- +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamUGCCallbacks + 20)] public struct WorkshopEULAStatus_t { public const int k_iCallback = Constants.k_iSteamUGCCallbacks + 20; @@ -2420,7 +3060,11 @@ public struct WorkshopEULAStatus_t { // only be seen if the user has dropped connection due to a networking issue // or a Steam server update. //----------------------------------------------------------------------------- +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential, Size = 1)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value, Size = 1)] +#endif [CallbackIdentity(Constants.k_iSteamUserCallbacks + 1)] public struct SteamServersConnected_t { public const int k_iCallback = Constants.k_iSteamUserCallbacks + 1; @@ -2431,7 +3075,11 @@ public struct SteamServersConnected_t { // this will occur periodically if the Steam client is not connected, // and has failed in it's retry to establish a connection //----------------------------------------------------------------------------- +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamUserCallbacks + 2)] public struct SteamServerConnectFailure_t { public const int k_iCallback = Constants.k_iSteamUserCallbacks + 2; @@ -2444,7 +3092,11 @@ public struct SteamServerConnectFailure_t { // Purpose: called if the client has lost connection to the Steam servers // real-time services will be disabled until a matching SteamServersConnected_t has been posted //----------------------------------------------------------------------------- +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamUserCallbacks + 3)] public struct SteamServersDisconnected_t { public const int k_iCallback = Constants.k_iSteamUserCallbacks + 3; @@ -2457,7 +3109,11 @@ public struct SteamServersDisconnected_t { // The game client should immediately disconnect upon receiving this message. // This can usually occur if the user doesn't have rights to play on the game server. //----------------------------------------------------------------------------- +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamUserCallbacks + 13)] public struct ClientGameServerDeny_t { public const int k_iCallback = Constants.k_iSteamUserCallbacks + 13; @@ -2474,7 +3130,11 @@ public struct ClientGameServerDeny_t { // When getting this message the client should disconnect from Steam, reset any stored Steam state and reconnect. // This usually occurs in the rare event the Steam client has some kind of fatal error. //----------------------------------------------------------------------------- +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamUserCallbacks + 17)] public struct IPCFailure_t { public const int k_iCallback = Constants.k_iSteamUserCallbacks + 17; @@ -2484,7 +3144,11 @@ public struct IPCFailure_t { //----------------------------------------------------------------------------- // Purpose: Signaled whenever licenses change //----------------------------------------------------------------------------- +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential, Size = 1)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value, Size = 1)] +#endif [CallbackIdentity(Constants.k_iSteamUserCallbacks + 25)] public struct LicensesUpdated_t { public const int k_iCallback = Constants.k_iSteamUserCallbacks + 25; @@ -2505,7 +3169,11 @@ public struct ValidateAuthTicketResponse_t { //----------------------------------------------------------------------------- // Purpose: called when a user has responded to a microtransaction authorization request //----------------------------------------------------------------------------- +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamUserCallbacks + 52)] public struct MicroTxnAuthorizationResponse_t { public const int k_iCallback = Constants.k_iSteamUserCallbacks + 52; @@ -2518,7 +3186,11 @@ public struct MicroTxnAuthorizationResponse_t { //----------------------------------------------------------------------------- // Purpose: Result from RequestEncryptedAppTicket //----------------------------------------------------------------------------- +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamUserCallbacks + 54)] public struct EncryptedAppTicketResponse_t { public const int k_iCallback = Constants.k_iSteamUserCallbacks + 54; @@ -2529,7 +3201,11 @@ public struct EncryptedAppTicketResponse_t { //----------------------------------------------------------------------------- // callback for GetAuthSessionTicket //----------------------------------------------------------------------------- +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamUserCallbacks + 63)] public struct GetAuthSessionTicketResponse_t { public const int k_iCallback = Constants.k_iSteamUserCallbacks + 63; @@ -2540,7 +3216,11 @@ public struct GetAuthSessionTicketResponse_t { //----------------------------------------------------------------------------- // Purpose: sent to your game in response to a steam://gamewebcallback/ command //----------------------------------------------------------------------------- +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamUserCallbacks + 64)] public struct GameWebCallback_t { public const int k_iCallback = Constants.k_iSteamUserCallbacks + 64; @@ -2556,7 +3236,11 @@ public string m_szURL //----------------------------------------------------------------------------- // Purpose: sent to your game in response to ISteamUser::RequestStoreAuthURL //----------------------------------------------------------------------------- +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamUserCallbacks + 65)] public struct StoreAuthURLResponse_t { public const int k_iCallback = Constants.k_iSteamUserCallbacks + 65; @@ -2572,7 +3256,11 @@ public string m_szURL //----------------------------------------------------------------------------- // Purpose: sent in response to ISteamUser::GetMarketEligibility //----------------------------------------------------------------------------- +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamUserCallbacks + 66)] public struct MarketEligibilityResponse_t { public const int k_iCallback = Constants.k_iSteamUserCallbacks + 66; @@ -2593,7 +3281,11 @@ public struct MarketEligibilityResponse_t { // This callback is fired asynchronously in response to timers triggering. // It is also fired in response to calls to GetDurationControl(). //----------------------------------------------------------------------------- +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamUserCallbacks + 67)] public struct DurationControl_t { public const int k_iCallback = Constants.k_iSteamUserCallbacks + 67; @@ -2615,7 +3307,11 @@ public struct DurationControl_t { //----------------------------------------------------------------------------- // callback for GetTicketForWebApi //----------------------------------------------------------------------------- +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamUserCallbacks + 68)] public struct GetTicketForWebApiResponse_t { public const int k_iCallback = Constants.k_iSteamUserCallbacks + 68; @@ -2631,7 +3327,11 @@ public struct GetTicketForWebApiResponse_t { // Purpose: called when the latests stats and achievements have been received // from the server //----------------------------------------------------------------------------- +#if !STEAMWORKS_STANDALONE_ANYCPU [StructLayout(LayoutKind.Explicit, Pack = Packsize.value)] +#else + [StructLayout(LayoutKind.Explicit)] +#endif [CallbackIdentity(Constants.k_iSteamUserStatsCallbacks + 1)] public struct UserStatsReceived_t { public const int k_iCallback = Constants.k_iSteamUserStatsCallbacks + 1; @@ -2646,7 +3346,11 @@ public struct UserStatsReceived_t { //----------------------------------------------------------------------------- // Purpose: result of a request to store the user stats for a game //----------------------------------------------------------------------------- +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamUserStatsCallbacks + 2)] public struct UserStatsStored_t { public const int k_iCallback = Constants.k_iSteamUserStatsCallbacks + 2; @@ -2659,7 +3363,11 @@ public struct UserStatsStored_t { // "indicate progress" call. If both m_nCurProgress and m_nMaxProgress // are zero, that means the achievement has been fully unlocked. //----------------------------------------------------------------------------- +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamUserStatsCallbacks + 3)] public struct UserAchievementStored_t { public const int k_iCallback = Constants.k_iSteamUserStatsCallbacks + 3; @@ -2682,7 +3390,11 @@ public string m_rgchAchievementName // name of the achievement // Purpose: call result for finding a leaderboard, returned as a result of FindOrCreateLeaderboard() or FindLeaderboard() // use CCallResult<> to map this async result to a member function //----------------------------------------------------------------------------- +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamUserStatsCallbacks + 4)] public struct LeaderboardFindResult_t { public const int k_iCallback = Constants.k_iSteamUserStatsCallbacks + 4; @@ -2694,7 +3406,11 @@ public struct LeaderboardFindResult_t { // Purpose: call result indicating scores for a leaderboard have been downloaded and are ready to be retrieved, returned as a result of DownloadLeaderboardEntries() // use CCallResult<> to map this async result to a member function //----------------------------------------------------------------------------- +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamUserStatsCallbacks + 5)] public struct LeaderboardScoresDownloaded_t { public const int k_iCallback = Constants.k_iSteamUserStatsCallbacks + 5; @@ -2707,7 +3423,11 @@ public struct LeaderboardScoresDownloaded_t { // Purpose: call result indicating scores has been uploaded, returned as a result of UploadLeaderboardScore() // use CCallResult<> to map this async result to a member function //----------------------------------------------------------------------------- +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamUserStatsCallbacks + 6)] public struct LeaderboardScoreUploaded_t { public const int k_iCallback = Constants.k_iSteamUserStatsCallbacks + 6; @@ -2719,7 +3439,11 @@ public struct LeaderboardScoreUploaded_t { public int m_nGlobalRankPrevious; // the previous global rank of the user in this leaderboard; 0 if the user had no existing entry in the leaderboard } +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamUserStatsCallbacks + 7)] public struct NumberOfCurrentPlayers_t { public const int k_iCallback = Constants.k_iSteamUserStatsCallbacks + 7; @@ -2731,7 +3455,11 @@ public struct NumberOfCurrentPlayers_t { // Purpose: Callback indicating that a user's stats have been unloaded. // Call RequestUserStats again to access stats for this user //----------------------------------------------------------------------------- +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamUserStatsCallbacks + 8)] public struct UserStatsUnloaded_t { public const int k_iCallback = Constants.k_iSteamUserStatsCallbacks + 8; @@ -2741,7 +3469,11 @@ public struct UserStatsUnloaded_t { //----------------------------------------------------------------------------- // Purpose: Callback indicating that an achievement icon has been fetched //----------------------------------------------------------------------------- +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamUserStatsCallbacks + 9)] public struct UserAchievementIconFetched_t { public const int k_iCallback = Constants.k_iSteamUserStatsCallbacks + 9; @@ -2762,7 +3494,11 @@ public string m_rgchAchievementName // name of the achievement //----------------------------------------------------------------------------- // Purpose: Callback indicating that global achievement percentages are fetched //----------------------------------------------------------------------------- +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamUserStatsCallbacks + 10)] public struct GlobalAchievementPercentagesReady_t { public const int k_iCallback = Constants.k_iSteamUserStatsCallbacks + 10; @@ -2774,7 +3510,11 @@ public struct GlobalAchievementPercentagesReady_t { //----------------------------------------------------------------------------- // Purpose: call result indicating UGC has been uploaded, returned as a result of SetLeaderboardUGC() //----------------------------------------------------------------------------- +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamUserStatsCallbacks + 11)] public struct LeaderboardUGCSet_t { public const int k_iCallback = Constants.k_iSteamUserStatsCallbacks + 11; @@ -2786,7 +3526,11 @@ public struct LeaderboardUGCSet_t { // Purpose: callback indicating global stats have been received. // Returned as a result of RequestGlobalStats() //----------------------------------------------------------------------------- +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamUserStatsCallbacks + 12)] public struct GlobalStatsReceived_t { public const int k_iCallback = Constants.k_iSteamUserStatsCallbacks + 12; @@ -2798,7 +3542,11 @@ public struct GlobalStatsReceived_t { //----------------------------------------------------------------------------- // Purpose: The country of the user changed //----------------------------------------------------------------------------- +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential, Size = 1)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value, Size = 1)] +#endif [CallbackIdentity(Constants.k_iSteamUtilsCallbacks + 1)] public struct IPCountry_t { public const int k_iCallback = Constants.k_iSteamUtilsCallbacks + 1; @@ -2807,7 +3555,11 @@ public struct IPCountry_t { //----------------------------------------------------------------------------- // Purpose: Fired when running on a handheld PC or laptop with less than 10 minutes of battery is left, fires then every minute //----------------------------------------------------------------------------- +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamUtilsCallbacks + 2)] public struct LowBatteryPower_t { public const int k_iCallback = Constants.k_iSteamUtilsCallbacks + 2; @@ -2817,7 +3569,11 @@ public struct LowBatteryPower_t { //----------------------------------------------------------------------------- // Purpose: called when a SteamAsyncCall_t has completed (or failed) //----------------------------------------------------------------------------- +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamUtilsCallbacks + 3)] public struct SteamAPICallCompleted_t { public const int k_iCallback = Constants.k_iSteamUtilsCallbacks + 3; @@ -2829,7 +3585,11 @@ public struct SteamAPICallCompleted_t { //----------------------------------------------------------------------------- // called when Steam wants to shutdown //----------------------------------------------------------------------------- +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential, Size = 1)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value, Size = 1)] +#endif [CallbackIdentity(Constants.k_iSteamUtilsCallbacks + 4)] public struct SteamShutdown_t { public const int k_iCallback = Constants.k_iSteamUtilsCallbacks + 4; @@ -2838,7 +3598,11 @@ public struct SteamShutdown_t { //----------------------------------------------------------------------------- // callback for CheckFileSignature //----------------------------------------------------------------------------- +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamUtilsCallbacks + 5)] public struct CheckFileSignature_t { public const int k_iCallback = Constants.k_iSteamUtilsCallbacks + 5; @@ -2849,7 +3613,11 @@ public struct CheckFileSignature_t { //----------------------------------------------------------------------------- // Full Screen gamepad text input has been closed //----------------------------------------------------------------------------- +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamUtilsCallbacks + 14)] public struct GamepadTextInputDismissed_t { public const int k_iCallback = Constants.k_iSteamUtilsCallbacks + 14; @@ -2860,7 +3628,11 @@ public struct GamepadTextInputDismissed_t { } // k_iSteamUtilsCallbacks + 15 through 35 are taken +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential, Size = 1)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value, Size = 1)] +#endif [CallbackIdentity(Constants.k_iSteamUtilsCallbacks + 36)] public struct AppResumingFromSuspend_t { public const int k_iCallback = Constants.k_iSteamUtilsCallbacks + 36; @@ -2870,7 +3642,11 @@ public struct AppResumingFromSuspend_t { //----------------------------------------------------------------------------- // The floating on-screen keyboard has been closed //----------------------------------------------------------------------------- +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential, Size = 1)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value, Size = 1)] +#endif [CallbackIdentity(Constants.k_iSteamUtilsCallbacks + 38)] public struct FloatingGamepadTextInputDismissed_t { public const int k_iCallback = Constants.k_iSteamUtilsCallbacks + 38; @@ -2879,14 +3655,22 @@ public struct FloatingGamepadTextInputDismissed_t { //----------------------------------------------------------------------------- // The text filtering dictionary has changed //----------------------------------------------------------------------------- +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamUtilsCallbacks + 39)] public struct FilterTextDictionaryChanged_t { public const int k_iCallback = Constants.k_iSteamUtilsCallbacks + 39; public int m_eLanguage; // One of ELanguage, or k_LegallyRequiredFiltering } +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamVideoCallbacks + 11)] public struct GetVideoURLResult_t { public const int k_iCallback = Constants.k_iSteamVideoCallbacks + 11; @@ -2901,7 +3685,11 @@ public string m_rgchURL } } +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamVideoCallbacks + 24)] public struct GetOPFSettingsResult_t { public const int k_iCallback = Constants.k_iSteamVideoCallbacks + 24; @@ -2909,7 +3697,11 @@ public struct GetOPFSettingsResult_t { public AppId_t m_unVideoAppID; } +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamVideoCallbacks + 4)] public struct BroadcastUploadStart_t { public const int k_iCallback = Constants.k_iSteamVideoCallbacks + 4; @@ -2917,7 +3709,11 @@ public struct BroadcastUploadStart_t { public bool m_bIsRTMP; } +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamVideoCallbacks + 5)] public struct BroadcastUploadStop_t { public const int k_iCallback = Constants.k_iSteamVideoCallbacks + 5; @@ -2929,7 +3725,11 @@ public struct BroadcastUploadStop_t { /// use as an identifier. This callback is posted when /// ISteamNetworkingSoockets::BeginAsyncRequestFakeIP completes. /// See also ISteamNetworkingSockets::GetFakeIP +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif [CallbackIdentity(Constants.k_iSteamNetworkingSocketsCallbacks + 3)] public struct SteamNetworkingFakeIPResult_t { public const int k_iCallback = Constants.k_iSteamNetworkingSocketsCallbacks + 3; diff --git a/com.rlabrecque.steamworks.net/Runtime/autogen/SteamConstants.cs b/com.rlabrecque.steamworks.net/Runtime/autogen/SteamConstants.cs index 33e67b98..df9c9194 100644 --- a/com.rlabrecque.steamworks.net/Runtime/autogen/SteamConstants.cs +++ b/com.rlabrecque.steamworks.net/Runtime/autogen/SteamConstants.cs @@ -5,7 +5,7 @@ // This file is automatically generated. // Changes to this file will be reverted when you update Steamworks.NET -#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX) +#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX || STEAMWORKS_STANDALONE_ANYCPU) #define DISABLESTEAMWORKS #endif diff --git a/com.rlabrecque.steamworks.net/Runtime/autogen/SteamEnums.cs b/com.rlabrecque.steamworks.net/Runtime/autogen/SteamEnums.cs index 348da1f2..4b9be035 100644 --- a/com.rlabrecque.steamworks.net/Runtime/autogen/SteamEnums.cs +++ b/com.rlabrecque.steamworks.net/Runtime/autogen/SteamEnums.cs @@ -5,7 +5,7 @@ // This file is automatically generated. // Changes to this file will be reverted when you update Steamworks.NET -#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX) +#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX || STEAMWORKS_STANDALONE_ANYCPU) #define DISABLESTEAMWORKS #endif diff --git a/com.rlabrecque.steamworks.net/Runtime/autogen/SteamStructs.cs b/com.rlabrecque.steamworks.net/Runtime/autogen/SteamStructs.cs index ddd1181b..df1e0781 100644 --- a/com.rlabrecque.steamworks.net/Runtime/autogen/SteamStructs.cs +++ b/com.rlabrecque.steamworks.net/Runtime/autogen/SteamStructs.cs @@ -5,7 +5,7 @@ // This file is automatically generated. // Changes to this file will be reverted when you update Steamworks.NET -#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX) +#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX || STEAMWORKS_STANDALONE_ANYCPU) #define DISABLESTEAMWORKS #endif @@ -16,7 +16,11 @@ namespace Steamworks { // friend game played information +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif public struct FriendGameInfo_t { public CGameID m_gameID; public uint m_unGameIP; @@ -46,7 +50,11 @@ public struct InputDigitalActionData_t { public byte bActive; } +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif public struct InputMotionData_t { // Gyro Quaternion: // Absolute rotation of the controller since wakeup, using the Accelerometer reading at startup to determine the first value. @@ -82,7 +90,11 @@ public struct InputMotionData_t { public float rotVelZ; // Local Yaw } +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif public struct SteamItemDetails_t { public SteamItemInstanceID_t m_itemId; public SteamItemDef_t m_iDefinition; @@ -90,7 +102,11 @@ public struct SteamItemDetails_t { public ushort m_unFlags; // see ESteamItemFlags } +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif public struct SteamPartyBeaconLocation_t { public ESteamPartyBeaconLocationType m_eType; public ulong m_ulLocationID; @@ -98,7 +114,11 @@ public struct SteamPartyBeaconLocation_t { // connection state to a specified user, returned by GetP2PSessionState() // this is under-the-hood info about what's going on with a SendP2PPacket(), shouldn't be needed except for debuggin +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif public struct P2PSessionState_t { public byte m_bConnectionActive; // true if we've got an active open connection public byte m_bConnecting; // true if we're currently trying to establish a connection @@ -113,14 +133,22 @@ public struct P2PSessionState_t { //----------------------------------------------------------------------------- // Purpose: Structure that contains an array of const char * strings and the number of those strings //----------------------------------------------------------------------------- +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif public struct SteamParamStringArray_t { public IntPtr m_ppStrings; public int m_nNumStrings; } // Details for a single published file/UGC +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif public struct SteamUGCDetails_t { public PublishedFileId_t m_nPublishedFileId; public EResult m_eResult; // The result of the operation. @@ -188,7 +216,11 @@ public string m_pchFileName // The cloud filename of the primary file } // a single entry in a leaderboard, as returned by GetDownloadedLeaderboardEntry() +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif public struct LeaderboardEntry_t { public CSteamID m_steamIDUser; // user with the entry - use SteamFriends()->GetFriendPersonaName() & SteamFriends()->GetFriendAvatar() to get more info public int m_nGlobalRank; // [1..N], where N is the number of users with an entry in the leaderboard @@ -218,7 +250,11 @@ public struct MatchMakingKeyValuePair_t { // structure that contains client callback data // see callbacks documentation for more details /// Internal structure used in manual callback dispatch +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif public struct CallbackMsg_t { public int m_hSteamUser; // Specific user to whom this callback applies. public int m_iCallback; // Callback identifier. (Corresponds to the k_iCallback enum in the callback structure.) @@ -227,7 +263,11 @@ public struct CallbackMsg_t { } /// Describe the state of a connection. +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif public struct SteamNetConnectionInfo_t { /// Who is on the other end? Depending on the connection type and phase of the connection, we might not know @@ -295,7 +335,11 @@ public string m_szConnectionDescription /// Quick connection state, pared down to something you could call /// more frequently without it being too big of a perf hit. +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif public struct SteamNetConnectionRealTimeStatus_t { /// High level state of the connection @@ -373,7 +417,11 @@ public struct SteamNetConnectionRealTimeStatus_t { } /// Quick status of a particular lane +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif public struct SteamNetConnectionRealTimeLaneStatus_t { // Counters for this particular lane. See the corresponding variables // in SteamNetConnectionRealTimeStatus_t @@ -408,7 +456,11 @@ public struct SteamNetConnectionRealTimeLaneStatus_t { /// send it over the wire, or persist it in a file or database! If you need /// to do that, convert it to a string representation using the methods in /// ISteamNetworkingUtils(). +#if STEAMWORKS_STANDALONE_ANYCPU + [StructLayout(LayoutKind.Sequential)] +#else [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#endif public struct SteamNetworkPingLocation_t { [MarshalAs(UnmanagedType.ByValArray, SizeConst = 512)] public byte[] m_data; diff --git a/com.rlabrecque.steamworks.net/Runtime/autogen/isteamapps.cs b/com.rlabrecque.steamworks.net/Runtime/autogen/isteamapps.cs index b33bf5bb..a47c1d5a 100644 --- a/com.rlabrecque.steamworks.net/Runtime/autogen/isteamapps.cs +++ b/com.rlabrecque.steamworks.net/Runtime/autogen/isteamapps.cs @@ -5,7 +5,7 @@ // This file is automatically generated. // Changes to this file will be reverted when you update Steamworks.NET -#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX) +#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX || STEAMWORKS_STANDALONE_ANYCPU) #define DISABLESTEAMWORKS #endif diff --git a/com.rlabrecque.steamworks.net/Runtime/autogen/isteamclient.cs b/com.rlabrecque.steamworks.net/Runtime/autogen/isteamclient.cs index 58b69ef7..bea4b969 100644 --- a/com.rlabrecque.steamworks.net/Runtime/autogen/isteamclient.cs +++ b/com.rlabrecque.steamworks.net/Runtime/autogen/isteamclient.cs @@ -5,7 +5,7 @@ // This file is automatically generated. // Changes to this file will be reverted when you update Steamworks.NET -#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX) +#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX || STEAMWORKS_STANDALONE_ANYCPU) #define DISABLESTEAMWORKS #endif diff --git a/com.rlabrecque.steamworks.net/Runtime/autogen/isteamfriends.cs b/com.rlabrecque.steamworks.net/Runtime/autogen/isteamfriends.cs index 025a6ec5..a6cb746e 100644 --- a/com.rlabrecque.steamworks.net/Runtime/autogen/isteamfriends.cs +++ b/com.rlabrecque.steamworks.net/Runtime/autogen/isteamfriends.cs @@ -5,7 +5,7 @@ // This file is automatically generated. // Changes to this file will be reverted when you update Steamworks.NET -#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX) +#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX || STEAMWORKS_STANDALONE_ANYCPU) #define DISABLESTEAMWORKS #endif diff --git a/com.rlabrecque.steamworks.net/Runtime/autogen/isteamgameserver.cs b/com.rlabrecque.steamworks.net/Runtime/autogen/isteamgameserver.cs index 2a6692bd..93a802b6 100644 --- a/com.rlabrecque.steamworks.net/Runtime/autogen/isteamgameserver.cs +++ b/com.rlabrecque.steamworks.net/Runtime/autogen/isteamgameserver.cs @@ -5,7 +5,7 @@ // This file is automatically generated. // Changes to this file will be reverted when you update Steamworks.NET -#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX) +#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX || STEAMWORKS_STANDALONE_ANYCPU) #define DISABLESTEAMWORKS #endif diff --git a/com.rlabrecque.steamworks.net/Runtime/autogen/isteamgameserverclient.cs b/com.rlabrecque.steamworks.net/Runtime/autogen/isteamgameserverclient.cs index 3449588f..02da171e 100644 --- a/com.rlabrecque.steamworks.net/Runtime/autogen/isteamgameserverclient.cs +++ b/com.rlabrecque.steamworks.net/Runtime/autogen/isteamgameserverclient.cs @@ -5,7 +5,7 @@ // This file is automatically generated. // Changes to this file will be reverted when you update Steamworks.NET -#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX) +#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX || STEAMWORKS_STANDALONE_ANYCPU) #define DISABLESTEAMWORKS #endif diff --git a/com.rlabrecque.steamworks.net/Runtime/autogen/isteamgameserverhttp.cs b/com.rlabrecque.steamworks.net/Runtime/autogen/isteamgameserverhttp.cs index 010fde26..32ff365c 100644 --- a/com.rlabrecque.steamworks.net/Runtime/autogen/isteamgameserverhttp.cs +++ b/com.rlabrecque.steamworks.net/Runtime/autogen/isteamgameserverhttp.cs @@ -5,7 +5,7 @@ // This file is automatically generated. // Changes to this file will be reverted when you update Steamworks.NET -#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX) +#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX || STEAMWORKS_STANDALONE_ANYCPU) #define DISABLESTEAMWORKS #endif diff --git a/com.rlabrecque.steamworks.net/Runtime/autogen/isteamgameserverinventory.cs b/com.rlabrecque.steamworks.net/Runtime/autogen/isteamgameserverinventory.cs index 608216bd..065aa81e 100644 --- a/com.rlabrecque.steamworks.net/Runtime/autogen/isteamgameserverinventory.cs +++ b/com.rlabrecque.steamworks.net/Runtime/autogen/isteamgameserverinventory.cs @@ -5,7 +5,7 @@ // This file is automatically generated. // Changes to this file will be reverted when you update Steamworks.NET -#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX) +#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX || STEAMWORKS_STANDALONE_ANYCPU) #define DISABLESTEAMWORKS #endif diff --git a/com.rlabrecque.steamworks.net/Runtime/autogen/isteamgameservernetworking.cs b/com.rlabrecque.steamworks.net/Runtime/autogen/isteamgameservernetworking.cs index 5a8f3410..42cc79bb 100644 --- a/com.rlabrecque.steamworks.net/Runtime/autogen/isteamgameservernetworking.cs +++ b/com.rlabrecque.steamworks.net/Runtime/autogen/isteamgameservernetworking.cs @@ -5,7 +5,7 @@ // This file is automatically generated. // Changes to this file will be reverted when you update Steamworks.NET -#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX) +#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX || STEAMWORKS_STANDALONE_ANYCPU) #define DISABLESTEAMWORKS #endif diff --git a/com.rlabrecque.steamworks.net/Runtime/autogen/isteamgameservernetworkingmessages.cs b/com.rlabrecque.steamworks.net/Runtime/autogen/isteamgameservernetworkingmessages.cs index 589d4996..cf552cab 100644 --- a/com.rlabrecque.steamworks.net/Runtime/autogen/isteamgameservernetworkingmessages.cs +++ b/com.rlabrecque.steamworks.net/Runtime/autogen/isteamgameservernetworkingmessages.cs @@ -5,7 +5,7 @@ // This file is automatically generated. // Changes to this file will be reverted when you update Steamworks.NET -#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX) +#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX || STEAMWORKS_STANDALONE_ANYCPU) #define DISABLESTEAMWORKS #endif diff --git a/com.rlabrecque.steamworks.net/Runtime/autogen/isteamgameservernetworkingsockets.cs b/com.rlabrecque.steamworks.net/Runtime/autogen/isteamgameservernetworkingsockets.cs index c51b9f88..21e75d9c 100644 --- a/com.rlabrecque.steamworks.net/Runtime/autogen/isteamgameservernetworkingsockets.cs +++ b/com.rlabrecque.steamworks.net/Runtime/autogen/isteamgameservernetworkingsockets.cs @@ -5,7 +5,7 @@ // This file is automatically generated. // Changes to this file will be reverted when you update Steamworks.NET -#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX) +#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX || STEAMWORKS_STANDALONE_ANYCPU) #define DISABLESTEAMWORKS #endif diff --git a/com.rlabrecque.steamworks.net/Runtime/autogen/isteamgameservernetworkingutils.cs b/com.rlabrecque.steamworks.net/Runtime/autogen/isteamgameservernetworkingutils.cs index 305ed939..c4f17063 100644 --- a/com.rlabrecque.steamworks.net/Runtime/autogen/isteamgameservernetworkingutils.cs +++ b/com.rlabrecque.steamworks.net/Runtime/autogen/isteamgameservernetworkingutils.cs @@ -5,7 +5,7 @@ // This file is automatically generated. // Changes to this file will be reverted when you update Steamworks.NET -#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX) +#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX || STEAMWORKS_STANDALONE_ANYCPU) #define DISABLESTEAMWORKS #endif diff --git a/com.rlabrecque.steamworks.net/Runtime/autogen/isteamgameserverstats.cs b/com.rlabrecque.steamworks.net/Runtime/autogen/isteamgameserverstats.cs index 9899f720..57430644 100644 --- a/com.rlabrecque.steamworks.net/Runtime/autogen/isteamgameserverstats.cs +++ b/com.rlabrecque.steamworks.net/Runtime/autogen/isteamgameserverstats.cs @@ -5,7 +5,7 @@ // This file is automatically generated. // Changes to this file will be reverted when you update Steamworks.NET -#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX) +#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX || STEAMWORKS_STANDALONE_ANYCPU) #define DISABLESTEAMWORKS #endif diff --git a/com.rlabrecque.steamworks.net/Runtime/autogen/isteamgameserverugc.cs b/com.rlabrecque.steamworks.net/Runtime/autogen/isteamgameserverugc.cs index f23dc93d..d3ea0067 100644 --- a/com.rlabrecque.steamworks.net/Runtime/autogen/isteamgameserverugc.cs +++ b/com.rlabrecque.steamworks.net/Runtime/autogen/isteamgameserverugc.cs @@ -5,7 +5,7 @@ // This file is automatically generated. // Changes to this file will be reverted when you update Steamworks.NET -#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX) +#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX || STEAMWORKS_STANDALONE_ANYCPU) #define DISABLESTEAMWORKS #endif diff --git a/com.rlabrecque.steamworks.net/Runtime/autogen/isteamgameserverutils.cs b/com.rlabrecque.steamworks.net/Runtime/autogen/isteamgameserverutils.cs index 378006e2..82f360a1 100644 --- a/com.rlabrecque.steamworks.net/Runtime/autogen/isteamgameserverutils.cs +++ b/com.rlabrecque.steamworks.net/Runtime/autogen/isteamgameserverutils.cs @@ -5,7 +5,7 @@ // This file is automatically generated. // Changes to this file will be reverted when you update Steamworks.NET -#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX) +#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX || STEAMWORKS_STANDALONE_ANYCPU) #define DISABLESTEAMWORKS #endif diff --git a/com.rlabrecque.steamworks.net/Runtime/autogen/isteamhtmlsurface.cs b/com.rlabrecque.steamworks.net/Runtime/autogen/isteamhtmlsurface.cs index cc564262..cdd5c69a 100644 --- a/com.rlabrecque.steamworks.net/Runtime/autogen/isteamhtmlsurface.cs +++ b/com.rlabrecque.steamworks.net/Runtime/autogen/isteamhtmlsurface.cs @@ -5,7 +5,7 @@ // This file is automatically generated. // Changes to this file will be reverted when you update Steamworks.NET -#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX) +#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX || STEAMWORKS_STANDALONE_ANYCPU) #define DISABLESTEAMWORKS #endif diff --git a/com.rlabrecque.steamworks.net/Runtime/autogen/isteamhttp.cs b/com.rlabrecque.steamworks.net/Runtime/autogen/isteamhttp.cs index 9425dec0..35c9f9b3 100644 --- a/com.rlabrecque.steamworks.net/Runtime/autogen/isteamhttp.cs +++ b/com.rlabrecque.steamworks.net/Runtime/autogen/isteamhttp.cs @@ -5,7 +5,7 @@ // This file is automatically generated. // Changes to this file will be reverted when you update Steamworks.NET -#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX) +#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX || STEAMWORKS_STANDALONE_ANYCPU) #define DISABLESTEAMWORKS #endif diff --git a/com.rlabrecque.steamworks.net/Runtime/autogen/isteaminput.cs b/com.rlabrecque.steamworks.net/Runtime/autogen/isteaminput.cs index 08ca24f4..b3537a27 100644 --- a/com.rlabrecque.steamworks.net/Runtime/autogen/isteaminput.cs +++ b/com.rlabrecque.steamworks.net/Runtime/autogen/isteaminput.cs @@ -5,7 +5,7 @@ // This file is automatically generated. // Changes to this file will be reverted when you update Steamworks.NET -#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX) +#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX || STEAMWORKS_STANDALONE_ANYCPU) #define DISABLESTEAMWORKS #endif diff --git a/com.rlabrecque.steamworks.net/Runtime/autogen/isteaminventory.cs b/com.rlabrecque.steamworks.net/Runtime/autogen/isteaminventory.cs index a86d6c80..e24af32c 100644 --- a/com.rlabrecque.steamworks.net/Runtime/autogen/isteaminventory.cs +++ b/com.rlabrecque.steamworks.net/Runtime/autogen/isteaminventory.cs @@ -5,7 +5,7 @@ // This file is automatically generated. // Changes to this file will be reverted when you update Steamworks.NET -#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX) +#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX || STEAMWORKS_STANDALONE_ANYCPU) #define DISABLESTEAMWORKS #endif diff --git a/com.rlabrecque.steamworks.net/Runtime/autogen/isteammatchmaking.cs b/com.rlabrecque.steamworks.net/Runtime/autogen/isteammatchmaking.cs index 5945345f..e88aca28 100644 --- a/com.rlabrecque.steamworks.net/Runtime/autogen/isteammatchmaking.cs +++ b/com.rlabrecque.steamworks.net/Runtime/autogen/isteammatchmaking.cs @@ -5,7 +5,7 @@ // This file is automatically generated. // Changes to this file will be reverted when you update Steamworks.NET -#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX) +#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX || STEAMWORKS_STANDALONE_ANYCPU) #define DISABLESTEAMWORKS #endif diff --git a/com.rlabrecque.steamworks.net/Runtime/autogen/isteammusic.cs b/com.rlabrecque.steamworks.net/Runtime/autogen/isteammusic.cs index 7568da40..18a7cc5e 100644 --- a/com.rlabrecque.steamworks.net/Runtime/autogen/isteammusic.cs +++ b/com.rlabrecque.steamworks.net/Runtime/autogen/isteammusic.cs @@ -5,7 +5,7 @@ // This file is automatically generated. // Changes to this file will be reverted when you update Steamworks.NET -#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX) +#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX || STEAMWORKS_STANDALONE_ANYCPU) #define DISABLESTEAMWORKS #endif diff --git a/com.rlabrecque.steamworks.net/Runtime/autogen/isteammusicremote.cs b/com.rlabrecque.steamworks.net/Runtime/autogen/isteammusicremote.cs index a56ac7ce..48af3563 100644 --- a/com.rlabrecque.steamworks.net/Runtime/autogen/isteammusicremote.cs +++ b/com.rlabrecque.steamworks.net/Runtime/autogen/isteammusicremote.cs @@ -5,7 +5,7 @@ // This file is automatically generated. // Changes to this file will be reverted when you update Steamworks.NET -#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX) +#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX || STEAMWORKS_STANDALONE_ANYCPU) #define DISABLESTEAMWORKS #endif diff --git a/com.rlabrecque.steamworks.net/Runtime/autogen/isteamnetworking.cs b/com.rlabrecque.steamworks.net/Runtime/autogen/isteamnetworking.cs index afed66ec..4243be11 100644 --- a/com.rlabrecque.steamworks.net/Runtime/autogen/isteamnetworking.cs +++ b/com.rlabrecque.steamworks.net/Runtime/autogen/isteamnetworking.cs @@ -5,7 +5,7 @@ // This file is automatically generated. // Changes to this file will be reverted when you update Steamworks.NET -#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX) +#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX || STEAMWORKS_STANDALONE_ANYCPU) #define DISABLESTEAMWORKS #endif diff --git a/com.rlabrecque.steamworks.net/Runtime/autogen/isteamnetworkingmessages.cs b/com.rlabrecque.steamworks.net/Runtime/autogen/isteamnetworkingmessages.cs index 5125d493..453e5d89 100644 --- a/com.rlabrecque.steamworks.net/Runtime/autogen/isteamnetworkingmessages.cs +++ b/com.rlabrecque.steamworks.net/Runtime/autogen/isteamnetworkingmessages.cs @@ -5,7 +5,7 @@ // This file is automatically generated. // Changes to this file will be reverted when you update Steamworks.NET -#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX) +#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX || STEAMWORKS_STANDALONE_ANYCPU) #define DISABLESTEAMWORKS #endif diff --git a/com.rlabrecque.steamworks.net/Runtime/autogen/isteamnetworkingsockets.cs b/com.rlabrecque.steamworks.net/Runtime/autogen/isteamnetworkingsockets.cs index a94dd7a4..2621bfe1 100644 --- a/com.rlabrecque.steamworks.net/Runtime/autogen/isteamnetworkingsockets.cs +++ b/com.rlabrecque.steamworks.net/Runtime/autogen/isteamnetworkingsockets.cs @@ -5,7 +5,7 @@ // This file is automatically generated. // Changes to this file will be reverted when you update Steamworks.NET -#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX) +#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX || STEAMWORKS_STANDALONE_ANYCPU) #define DISABLESTEAMWORKS #endif diff --git a/com.rlabrecque.steamworks.net/Runtime/autogen/isteamnetworkingutils.cs b/com.rlabrecque.steamworks.net/Runtime/autogen/isteamnetworkingutils.cs index bdbbab3e..dd2a57f3 100644 --- a/com.rlabrecque.steamworks.net/Runtime/autogen/isteamnetworkingutils.cs +++ b/com.rlabrecque.steamworks.net/Runtime/autogen/isteamnetworkingutils.cs @@ -5,7 +5,7 @@ // This file is automatically generated. // Changes to this file will be reverted when you update Steamworks.NET -#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX) +#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX || STEAMWORKS_STANDALONE_ANYCPU) #define DISABLESTEAMWORKS #endif diff --git a/com.rlabrecque.steamworks.net/Runtime/autogen/isteamparentalsettings.cs b/com.rlabrecque.steamworks.net/Runtime/autogen/isteamparentalsettings.cs index b17ad7e9..410a1219 100644 --- a/com.rlabrecque.steamworks.net/Runtime/autogen/isteamparentalsettings.cs +++ b/com.rlabrecque.steamworks.net/Runtime/autogen/isteamparentalsettings.cs @@ -5,7 +5,7 @@ // This file is automatically generated. // Changes to this file will be reverted when you update Steamworks.NET -#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX) +#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX || STEAMWORKS_STANDALONE_ANYCPU) #define DISABLESTEAMWORKS #endif diff --git a/com.rlabrecque.steamworks.net/Runtime/autogen/isteamremoteplay.cs b/com.rlabrecque.steamworks.net/Runtime/autogen/isteamremoteplay.cs index 575c923e..f6208c78 100644 --- a/com.rlabrecque.steamworks.net/Runtime/autogen/isteamremoteplay.cs +++ b/com.rlabrecque.steamworks.net/Runtime/autogen/isteamremoteplay.cs @@ -5,7 +5,7 @@ // This file is automatically generated. // Changes to this file will be reverted when you update Steamworks.NET -#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX) +#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX || STEAMWORKS_STANDALONE_ANYCPU) #define DISABLESTEAMWORKS #endif diff --git a/com.rlabrecque.steamworks.net/Runtime/autogen/isteamremotestorage.cs b/com.rlabrecque.steamworks.net/Runtime/autogen/isteamremotestorage.cs index 7bc699b3..aabced6d 100644 --- a/com.rlabrecque.steamworks.net/Runtime/autogen/isteamremotestorage.cs +++ b/com.rlabrecque.steamworks.net/Runtime/autogen/isteamremotestorage.cs @@ -5,7 +5,7 @@ // This file is automatically generated. // Changes to this file will be reverted when you update Steamworks.NET -#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX) +#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX || STEAMWORKS_STANDALONE_ANYCPU) #define DISABLESTEAMWORKS #endif diff --git a/com.rlabrecque.steamworks.net/Runtime/autogen/isteamscreenshots.cs b/com.rlabrecque.steamworks.net/Runtime/autogen/isteamscreenshots.cs index 4c123ecc..8376ff8c 100644 --- a/com.rlabrecque.steamworks.net/Runtime/autogen/isteamscreenshots.cs +++ b/com.rlabrecque.steamworks.net/Runtime/autogen/isteamscreenshots.cs @@ -5,7 +5,7 @@ // This file is automatically generated. // Changes to this file will be reverted when you update Steamworks.NET -#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX) +#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX || STEAMWORKS_STANDALONE_ANYCPU) #define DISABLESTEAMWORKS #endif diff --git a/com.rlabrecque.steamworks.net/Runtime/autogen/isteamtimeline.cs b/com.rlabrecque.steamworks.net/Runtime/autogen/isteamtimeline.cs index 46f73b36..5cf28b5f 100644 --- a/com.rlabrecque.steamworks.net/Runtime/autogen/isteamtimeline.cs +++ b/com.rlabrecque.steamworks.net/Runtime/autogen/isteamtimeline.cs @@ -5,7 +5,7 @@ // This file is automatically generated. // Changes to this file will be reverted when you update Steamworks.NET -#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX) +#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX || STEAMWORKS_STANDALONE_ANYCPU) #define DISABLESTEAMWORKS #endif diff --git a/com.rlabrecque.steamworks.net/Runtime/autogen/isteamugc.cs b/com.rlabrecque.steamworks.net/Runtime/autogen/isteamugc.cs index 1e03ea35..7bb1683b 100644 --- a/com.rlabrecque.steamworks.net/Runtime/autogen/isteamugc.cs +++ b/com.rlabrecque.steamworks.net/Runtime/autogen/isteamugc.cs @@ -5,7 +5,7 @@ // This file is automatically generated. // Changes to this file will be reverted when you update Steamworks.NET -#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX) +#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX || STEAMWORKS_STANDALONE_ANYCPU) #define DISABLESTEAMWORKS #endif diff --git a/com.rlabrecque.steamworks.net/Runtime/autogen/isteamuser.cs b/com.rlabrecque.steamworks.net/Runtime/autogen/isteamuser.cs index 7fff6ace..cb627209 100644 --- a/com.rlabrecque.steamworks.net/Runtime/autogen/isteamuser.cs +++ b/com.rlabrecque.steamworks.net/Runtime/autogen/isteamuser.cs @@ -5,7 +5,7 @@ // This file is automatically generated. // Changes to this file will be reverted when you update Steamworks.NET -#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX) +#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX || STEAMWORKS_STANDALONE_ANYCPU) #define DISABLESTEAMWORKS #endif diff --git a/com.rlabrecque.steamworks.net/Runtime/autogen/isteamuserstats.cs b/com.rlabrecque.steamworks.net/Runtime/autogen/isteamuserstats.cs index 2a8811e6..d2f6f99f 100644 --- a/com.rlabrecque.steamworks.net/Runtime/autogen/isteamuserstats.cs +++ b/com.rlabrecque.steamworks.net/Runtime/autogen/isteamuserstats.cs @@ -5,7 +5,7 @@ // This file is automatically generated. // Changes to this file will be reverted when you update Steamworks.NET -#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX) +#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX || STEAMWORKS_STANDALONE_ANYCPU) #define DISABLESTEAMWORKS #endif diff --git a/com.rlabrecque.steamworks.net/Runtime/autogen/isteamutils.cs b/com.rlabrecque.steamworks.net/Runtime/autogen/isteamutils.cs index 005743fe..01e818d8 100644 --- a/com.rlabrecque.steamworks.net/Runtime/autogen/isteamutils.cs +++ b/com.rlabrecque.steamworks.net/Runtime/autogen/isteamutils.cs @@ -5,7 +5,7 @@ // This file is automatically generated. // Changes to this file will be reverted when you update Steamworks.NET -#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX) +#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX || STEAMWORKS_STANDALONE_ANYCPU) #define DISABLESTEAMWORKS #endif diff --git a/com.rlabrecque.steamworks.net/Runtime/autogen/isteamvideo.cs b/com.rlabrecque.steamworks.net/Runtime/autogen/isteamvideo.cs index 451a6c1f..3cc65b61 100644 --- a/com.rlabrecque.steamworks.net/Runtime/autogen/isteamvideo.cs +++ b/com.rlabrecque.steamworks.net/Runtime/autogen/isteamvideo.cs @@ -5,7 +5,7 @@ // This file is automatically generated. // Changes to this file will be reverted when you update Steamworks.NET -#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX) +#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX || STEAMWORKS_STANDALONE_ANYCPU) #define DISABLESTEAMWORKS #endif diff --git a/com.rlabrecque.steamworks.net/Runtime/types/MatchmakingTypes/gameserveritem_t.cs b/com.rlabrecque.steamworks.net/Runtime/types/MatchmakingTypes/gameserveritem_t.cs index b9b2e402..1d946b56 100644 --- a/com.rlabrecque.steamworks.net/Runtime/types/MatchmakingTypes/gameserveritem_t.cs +++ b/com.rlabrecque.steamworks.net/Runtime/types/MatchmakingTypes/gameserveritem_t.cs @@ -5,7 +5,7 @@ // This file is automatically generated. // Changes to this file will be reverted when you update Steamworks.NET -#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX) +#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX || STEAMWORKS_STANDALONE_ANYCPU) #define DISABLESTEAMWORKS #endif diff --git a/com.rlabrecque.steamworks.net/Runtime/types/MatchmakingTypes/servernetadr_t.cs b/com.rlabrecque.steamworks.net/Runtime/types/MatchmakingTypes/servernetadr_t.cs index 66f555dc..7bdccb0f 100644 --- a/com.rlabrecque.steamworks.net/Runtime/types/MatchmakingTypes/servernetadr_t.cs +++ b/com.rlabrecque.steamworks.net/Runtime/types/MatchmakingTypes/servernetadr_t.cs @@ -5,7 +5,7 @@ // This file is automatically generated. // Changes to this file will be reverted when you update Steamworks.NET -#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX) +#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX || STEAMWORKS_STANDALONE_ANYCPU) #define DISABLESTEAMWORKS #endif diff --git a/com.rlabrecque.steamworks.net/Runtime/types/SteamClient/SteamAPIWarningMessageHook_t.cs b/com.rlabrecque.steamworks.net/Runtime/types/SteamClient/SteamAPIWarningMessageHook_t.cs index 832d1a28..bdb2b883 100644 --- a/com.rlabrecque.steamworks.net/Runtime/types/SteamClient/SteamAPIWarningMessageHook_t.cs +++ b/com.rlabrecque.steamworks.net/Runtime/types/SteamClient/SteamAPIWarningMessageHook_t.cs @@ -5,7 +5,7 @@ // This file is automatically generated. // Changes to this file will be reverted when you update Steamworks.NET -#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX) +#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX || STEAMWORKS_STANDALONE_ANYCPU) #define DISABLESTEAMWORKS #endif diff --git a/com.rlabrecque.steamworks.net/Runtime/types/SteamClient/SteamAPI_CheckCallbackRegistered_t.cs b/com.rlabrecque.steamworks.net/Runtime/types/SteamClient/SteamAPI_CheckCallbackRegistered_t.cs index a7ed9152..da3709cf 100644 --- a/com.rlabrecque.steamworks.net/Runtime/types/SteamClient/SteamAPI_CheckCallbackRegistered_t.cs +++ b/com.rlabrecque.steamworks.net/Runtime/types/SteamClient/SteamAPI_CheckCallbackRegistered_t.cs @@ -5,7 +5,7 @@ // This file is automatically generated. // Changes to this file will be reverted when you update Steamworks.NET -#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX) +#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX || STEAMWORKS_STANDALONE_ANYCPU) #define DISABLESTEAMWORKS #endif diff --git a/com.rlabrecque.steamworks.net/Runtime/types/SteamClientPublic/CGameID.cs b/com.rlabrecque.steamworks.net/Runtime/types/SteamClientPublic/CGameID.cs index 689a0e22..4e034498 100644 --- a/com.rlabrecque.steamworks.net/Runtime/types/SteamClientPublic/CGameID.cs +++ b/com.rlabrecque.steamworks.net/Runtime/types/SteamClientPublic/CGameID.cs @@ -5,7 +5,7 @@ // This file is automatically generated. // Changes to this file will be reverted when you update Steamworks.NET -#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX) +#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX || STEAMWORKS_STANDALONE_ANYCPU) #define DISABLESTEAMWORKS #endif diff --git a/com.rlabrecque.steamworks.net/Runtime/types/SteamClientPublic/CSteamID.cs b/com.rlabrecque.steamworks.net/Runtime/types/SteamClientPublic/CSteamID.cs index 3e4a1b16..e4f0baf8 100644 --- a/com.rlabrecque.steamworks.net/Runtime/types/SteamClientPublic/CSteamID.cs +++ b/com.rlabrecque.steamworks.net/Runtime/types/SteamClientPublic/CSteamID.cs @@ -5,7 +5,7 @@ // This file is automatically generated. // Changes to this file will be reverted when you update Steamworks.NET -#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX) +#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX || STEAMWORKS_STANDALONE_ANYCPU) #define DISABLESTEAMWORKS #endif diff --git a/com.rlabrecque.steamworks.net/Runtime/types/SteamClientPublic/HAuthTicket.cs b/com.rlabrecque.steamworks.net/Runtime/types/SteamClientPublic/HAuthTicket.cs index f3955896..e330a077 100644 --- a/com.rlabrecque.steamworks.net/Runtime/types/SteamClientPublic/HAuthTicket.cs +++ b/com.rlabrecque.steamworks.net/Runtime/types/SteamClientPublic/HAuthTicket.cs @@ -5,7 +5,7 @@ // This file is automatically generated. // Changes to this file will be reverted when you update Steamworks.NET -#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX) +#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX || STEAMWORKS_STANDALONE_ANYCPU) #define DISABLESTEAMWORKS #endif diff --git a/com.rlabrecque.steamworks.net/Runtime/types/SteamDatagramTickets/SteamDatagramHostedAddress.cs b/com.rlabrecque.steamworks.net/Runtime/types/SteamDatagramTickets/SteamDatagramHostedAddress.cs index 95bebfed..dc53d3c3 100644 --- a/com.rlabrecque.steamworks.net/Runtime/types/SteamDatagramTickets/SteamDatagramHostedAddress.cs +++ b/com.rlabrecque.steamworks.net/Runtime/types/SteamDatagramTickets/SteamDatagramHostedAddress.cs @@ -5,7 +5,7 @@ // This file is automatically generated. // Changes to this file will be reverted when you update Steamworks.NET -#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX) +#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX || STEAMWORKS_STANDALONE_ANYCPU) #define DISABLESTEAMWORKS #endif @@ -22,7 +22,11 @@ namespace Steamworks /// need to know what's inside. (Indeed, we don't really want them to /// know, as it could reveal information useful to an attacker.) [System.Serializable] +#if !STEAMWORKS_STANDALONE_ANYCPU [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#else + [StructLayout(LayoutKind.Sequential)] +#endif public struct SteamDatagramHostedAddress { // Size of data blob. diff --git a/com.rlabrecque.steamworks.net/Runtime/types/SteamDatagramTickets/SteamDatagramRelayAuthTicket.cs b/com.rlabrecque.steamworks.net/Runtime/types/SteamDatagramTickets/SteamDatagramRelayAuthTicket.cs index 88b88850..9703a976 100644 --- a/com.rlabrecque.steamworks.net/Runtime/types/SteamDatagramTickets/SteamDatagramRelayAuthTicket.cs +++ b/com.rlabrecque.steamworks.net/Runtime/types/SteamDatagramTickets/SteamDatagramRelayAuthTicket.cs @@ -5,7 +5,7 @@ // This file is automatically generated. // Changes to this file will be reverted when you update Steamworks.NET -#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX) +#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX || STEAMWORKS_STANDALONE_ANYCPU) #define DISABLESTEAMWORKS #endif @@ -22,7 +22,11 @@ namespace Steamworks /// need to know what's inside. (Indeed, we don't really want them to /// know, as it could reveal information useful to an attacker.) [System.Serializable] +#if !STEAMWORKS_STANDALONE_ANYCPU [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#else + [StructLayout(LayoutKind.Sequential)] +#endif public struct SteamDatagramRelayAuthTicket { /// Identity of the gameserver we want to talk to. This is required. @@ -97,7 +101,11 @@ public struct SteamDatagramRelayAuthTicket // we collect to partners, but we hope to in the future so that you can // get visibility into network conditions.) // +#if !STEAMWORKS_STANDALONE_ANYCPU [StructLayout(LayoutKind.Sequential, Pack = Packsize.value)] +#else + [StructLayout(LayoutKind.Sequential)] +#endif struct ExtraField { enum EType diff --git a/com.rlabrecque.steamworks.net/Runtime/types/SteamFriends/FriendsGroupID_t.cs b/com.rlabrecque.steamworks.net/Runtime/types/SteamFriends/FriendsGroupID_t.cs index b9b94f14..22ba164b 100644 --- a/com.rlabrecque.steamworks.net/Runtime/types/SteamFriends/FriendsGroupID_t.cs +++ b/com.rlabrecque.steamworks.net/Runtime/types/SteamFriends/FriendsGroupID_t.cs @@ -5,7 +5,7 @@ // This file is automatically generated. // Changes to this file will be reverted when you update Steamworks.NET -#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX) +#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX || STEAMWORKS_STANDALONE_ANYCPU) #define DISABLESTEAMWORKS #endif diff --git a/com.rlabrecque.steamworks.net/Runtime/types/SteamHTMLSurface/HHTMLBrowser.cs b/com.rlabrecque.steamworks.net/Runtime/types/SteamHTMLSurface/HHTMLBrowser.cs index a016a459..474e67a8 100644 --- a/com.rlabrecque.steamworks.net/Runtime/types/SteamHTMLSurface/HHTMLBrowser.cs +++ b/com.rlabrecque.steamworks.net/Runtime/types/SteamHTMLSurface/HHTMLBrowser.cs @@ -5,7 +5,7 @@ // This file is automatically generated. // Changes to this file will be reverted when you update Steamworks.NET -#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX) +#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX || STEAMWORKS_STANDALONE_ANYCPU) #define DISABLESTEAMWORKS #endif diff --git a/com.rlabrecque.steamworks.net/Runtime/types/SteamHTTP/HTTPCookieContainerHandle.cs b/com.rlabrecque.steamworks.net/Runtime/types/SteamHTTP/HTTPCookieContainerHandle.cs index 34fa5af7..61ba280d 100644 --- a/com.rlabrecque.steamworks.net/Runtime/types/SteamHTTP/HTTPCookieContainerHandle.cs +++ b/com.rlabrecque.steamworks.net/Runtime/types/SteamHTTP/HTTPCookieContainerHandle.cs @@ -5,7 +5,7 @@ // This file is automatically generated. // Changes to this file will be reverted when you update Steamworks.NET -#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX) +#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX || STEAMWORKS_STANDALONE_ANYCPU) #define DISABLESTEAMWORKS #endif diff --git a/com.rlabrecque.steamworks.net/Runtime/types/SteamHTTP/HTTPRequestHandle.cs b/com.rlabrecque.steamworks.net/Runtime/types/SteamHTTP/HTTPRequestHandle.cs index eddd6a8e..a9228c5b 100644 --- a/com.rlabrecque.steamworks.net/Runtime/types/SteamHTTP/HTTPRequestHandle.cs +++ b/com.rlabrecque.steamworks.net/Runtime/types/SteamHTTP/HTTPRequestHandle.cs @@ -5,7 +5,7 @@ // This file is automatically generated. // Changes to this file will be reverted when you update Steamworks.NET -#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX) +#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX || STEAMWORKS_STANDALONE_ANYCPU) #define DISABLESTEAMWORKS #endif diff --git a/com.rlabrecque.steamworks.net/Runtime/types/SteamInput/InputActionSetHandle_t.cs b/com.rlabrecque.steamworks.net/Runtime/types/SteamInput/InputActionSetHandle_t.cs index c8836ed7..a1e914e1 100644 --- a/com.rlabrecque.steamworks.net/Runtime/types/SteamInput/InputActionSetHandle_t.cs +++ b/com.rlabrecque.steamworks.net/Runtime/types/SteamInput/InputActionSetHandle_t.cs @@ -5,7 +5,7 @@ // This file is automatically generated. // Changes to this file will be reverted when you update Steamworks.NET -#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX) +#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX || STEAMWORKS_STANDALONE_ANYCPU) #define DISABLESTEAMWORKS #endif diff --git a/com.rlabrecque.steamworks.net/Runtime/types/SteamInput/InputAnalogActionHandle_t.cs b/com.rlabrecque.steamworks.net/Runtime/types/SteamInput/InputAnalogActionHandle_t.cs index 7b8148c5..d1692baf 100644 --- a/com.rlabrecque.steamworks.net/Runtime/types/SteamInput/InputAnalogActionHandle_t.cs +++ b/com.rlabrecque.steamworks.net/Runtime/types/SteamInput/InputAnalogActionHandle_t.cs @@ -5,7 +5,7 @@ // This file is automatically generated. // Changes to this file will be reverted when you update Steamworks.NET -#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX) +#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX || STEAMWORKS_STANDALONE_ANYCPU) #define DISABLESTEAMWORKS #endif diff --git a/com.rlabrecque.steamworks.net/Runtime/types/SteamInput/InputDigitalActionHandle_t.cs b/com.rlabrecque.steamworks.net/Runtime/types/SteamInput/InputDigitalActionHandle_t.cs index 28eb6303..632a5501 100644 --- a/com.rlabrecque.steamworks.net/Runtime/types/SteamInput/InputDigitalActionHandle_t.cs +++ b/com.rlabrecque.steamworks.net/Runtime/types/SteamInput/InputDigitalActionHandle_t.cs @@ -5,7 +5,7 @@ // This file is automatically generated. // Changes to this file will be reverted when you update Steamworks.NET -#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX) +#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX || STEAMWORKS_STANDALONE_ANYCPU) #define DISABLESTEAMWORKS #endif diff --git a/com.rlabrecque.steamworks.net/Runtime/types/SteamInput/InputHandle_t.cs b/com.rlabrecque.steamworks.net/Runtime/types/SteamInput/InputHandle_t.cs index c6866340..44edb35e 100644 --- a/com.rlabrecque.steamworks.net/Runtime/types/SteamInput/InputHandle_t.cs +++ b/com.rlabrecque.steamworks.net/Runtime/types/SteamInput/InputHandle_t.cs @@ -5,7 +5,7 @@ // This file is automatically generated. // Changes to this file will be reverted when you update Steamworks.NET -#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX) +#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX || STEAMWORKS_STANDALONE_ANYCPU) #define DISABLESTEAMWORKS #endif diff --git a/com.rlabrecque.steamworks.net/Runtime/types/SteamInput/SteamInputActionEventCallbackPointer.cs b/com.rlabrecque.steamworks.net/Runtime/types/SteamInput/SteamInputActionEventCallbackPointer.cs index 78f3c7b8..8de785b2 100644 --- a/com.rlabrecque.steamworks.net/Runtime/types/SteamInput/SteamInputActionEventCallbackPointer.cs +++ b/com.rlabrecque.steamworks.net/Runtime/types/SteamInput/SteamInputActionEventCallbackPointer.cs @@ -5,7 +5,7 @@ // This file is automatically generated. // Changes to this file will be reverted when you update Steamworks.NET -#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX) +#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX || STEAMWORKS_STANDALONE_ANYCPU) #define DISABLESTEAMWORKS #endif diff --git a/com.rlabrecque.steamworks.net/Runtime/types/SteamInput/SteamInputActionEvent_t.cs b/com.rlabrecque.steamworks.net/Runtime/types/SteamInput/SteamInputActionEvent_t.cs index ceeaf312..47228be8 100644 --- a/com.rlabrecque.steamworks.net/Runtime/types/SteamInput/SteamInputActionEvent_t.cs +++ b/com.rlabrecque.steamworks.net/Runtime/types/SteamInput/SteamInputActionEvent_t.cs @@ -5,7 +5,7 @@ // This file is automatically generated. // Changes to this file will be reverted when you update Steamworks.NET -#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX) +#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX || STEAMWORKS_STANDALONE_ANYCPU) #define DISABLESTEAMWORKS #endif diff --git a/com.rlabrecque.steamworks.net/Runtime/types/SteamInventory/SteamInventoryResult_t.cs b/com.rlabrecque.steamworks.net/Runtime/types/SteamInventory/SteamInventoryResult_t.cs index 308a8a98..b0d13017 100644 --- a/com.rlabrecque.steamworks.net/Runtime/types/SteamInventory/SteamInventoryResult_t.cs +++ b/com.rlabrecque.steamworks.net/Runtime/types/SteamInventory/SteamInventoryResult_t.cs @@ -5,7 +5,7 @@ // This file is automatically generated. // Changes to this file will be reverted when you update Steamworks.NET -#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX) +#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX || STEAMWORKS_STANDALONE_ANYCPU) #define DISABLESTEAMWORKS #endif diff --git a/com.rlabrecque.steamworks.net/Runtime/types/SteamInventory/SteamInventoryUpdateHandle_t.cs b/com.rlabrecque.steamworks.net/Runtime/types/SteamInventory/SteamInventoryUpdateHandle_t.cs index 25b5719d..9ed29da6 100644 --- a/com.rlabrecque.steamworks.net/Runtime/types/SteamInventory/SteamInventoryUpdateHandle_t.cs +++ b/com.rlabrecque.steamworks.net/Runtime/types/SteamInventory/SteamInventoryUpdateHandle_t.cs @@ -5,7 +5,7 @@ // This file is automatically generated. // Changes to this file will be reverted when you update Steamworks.NET -#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX) +#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX || STEAMWORKS_STANDALONE_ANYCPU) #define DISABLESTEAMWORKS #endif diff --git a/com.rlabrecque.steamworks.net/Runtime/types/SteamInventory/SteamItemDef_t.cs b/com.rlabrecque.steamworks.net/Runtime/types/SteamInventory/SteamItemDef_t.cs index 974c2fcc..ea98768e 100644 --- a/com.rlabrecque.steamworks.net/Runtime/types/SteamInventory/SteamItemDef_t.cs +++ b/com.rlabrecque.steamworks.net/Runtime/types/SteamInventory/SteamItemDef_t.cs @@ -5,7 +5,7 @@ // This file is automatically generated. // Changes to this file will be reverted when you update Steamworks.NET -#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX) +#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX || STEAMWORKS_STANDALONE_ANYCPU) #define DISABLESTEAMWORKS #endif diff --git a/com.rlabrecque.steamworks.net/Runtime/types/SteamInventory/SteamItemInstanceID_t.cs b/com.rlabrecque.steamworks.net/Runtime/types/SteamInventory/SteamItemInstanceID_t.cs index 339d8922..22fc3f73 100644 --- a/com.rlabrecque.steamworks.net/Runtime/types/SteamInventory/SteamItemInstanceID_t.cs +++ b/com.rlabrecque.steamworks.net/Runtime/types/SteamInventory/SteamItemInstanceID_t.cs @@ -5,7 +5,7 @@ // This file is automatically generated. // Changes to this file will be reverted when you update Steamworks.NET -#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX) +#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX || STEAMWORKS_STANDALONE_ANYCPU) #define DISABLESTEAMWORKS #endif diff --git a/com.rlabrecque.steamworks.net/Runtime/types/SteamMatchmaking/HServerListRequest.cs b/com.rlabrecque.steamworks.net/Runtime/types/SteamMatchmaking/HServerListRequest.cs index 60bfa9e6..9a640b47 100644 --- a/com.rlabrecque.steamworks.net/Runtime/types/SteamMatchmaking/HServerListRequest.cs +++ b/com.rlabrecque.steamworks.net/Runtime/types/SteamMatchmaking/HServerListRequest.cs @@ -5,7 +5,7 @@ // This file is automatically generated. // Changes to this file will be reverted when you update Steamworks.NET -#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX) +#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX || STEAMWORKS_STANDALONE_ANYCPU) #define DISABLESTEAMWORKS #endif diff --git a/com.rlabrecque.steamworks.net/Runtime/types/SteamMatchmaking/HServerQuery.cs b/com.rlabrecque.steamworks.net/Runtime/types/SteamMatchmaking/HServerQuery.cs index 6d92d230..c424299d 100644 --- a/com.rlabrecque.steamworks.net/Runtime/types/SteamMatchmaking/HServerQuery.cs +++ b/com.rlabrecque.steamworks.net/Runtime/types/SteamMatchmaking/HServerQuery.cs @@ -5,7 +5,7 @@ // This file is automatically generated. // Changes to this file will be reverted when you update Steamworks.NET -#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX) +#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX || STEAMWORKS_STANDALONE_ANYCPU) #define DISABLESTEAMWORKS #endif diff --git a/com.rlabrecque.steamworks.net/Runtime/types/SteamNetworking/SNetListenSocket_t.cs b/com.rlabrecque.steamworks.net/Runtime/types/SteamNetworking/SNetListenSocket_t.cs index 13d96683..f5ac5237 100644 --- a/com.rlabrecque.steamworks.net/Runtime/types/SteamNetworking/SNetListenSocket_t.cs +++ b/com.rlabrecque.steamworks.net/Runtime/types/SteamNetworking/SNetListenSocket_t.cs @@ -5,7 +5,7 @@ // This file is automatically generated. // Changes to this file will be reverted when you update Steamworks.NET -#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX) +#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX || STEAMWORKS_STANDALONE_ANYCPU) #define DISABLESTEAMWORKS #endif diff --git a/com.rlabrecque.steamworks.net/Runtime/types/SteamNetworking/SNetSocket_t.cs b/com.rlabrecque.steamworks.net/Runtime/types/SteamNetworking/SNetSocket_t.cs index 52f6ac8e..d3df6315 100644 --- a/com.rlabrecque.steamworks.net/Runtime/types/SteamNetworking/SNetSocket_t.cs +++ b/com.rlabrecque.steamworks.net/Runtime/types/SteamNetworking/SNetSocket_t.cs @@ -5,7 +5,7 @@ // This file is automatically generated. // Changes to this file will be reverted when you update Steamworks.NET -#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX) +#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX || STEAMWORKS_STANDALONE_ANYCPU) #define DISABLESTEAMWORKS #endif diff --git a/com.rlabrecque.steamworks.net/Runtime/types/SteamNetworkingSockets/ISteamNetworkingConnectionSignaling.cs b/com.rlabrecque.steamworks.net/Runtime/types/SteamNetworkingSockets/ISteamNetworkingConnectionSignaling.cs index 4dafa4de..7416c4af 100644 --- a/com.rlabrecque.steamworks.net/Runtime/types/SteamNetworkingSockets/ISteamNetworkingConnectionSignaling.cs +++ b/com.rlabrecque.steamworks.net/Runtime/types/SteamNetworkingSockets/ISteamNetworkingConnectionSignaling.cs @@ -5,7 +5,7 @@ // This file is automatically generated. // Changes to this file will be reverted when you update Steamworks.NET -#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX) +#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX || STEAMWORKS_STANDALONE_ANYCPU) #define DISABLESTEAMWORKS #endif diff --git a/com.rlabrecque.steamworks.net/Runtime/types/SteamNetworkingSockets/ISteamNetworkingSignalingRecvContext.cs b/com.rlabrecque.steamworks.net/Runtime/types/SteamNetworkingSockets/ISteamNetworkingSignalingRecvContext.cs index 18511a02..b5dc4160 100644 --- a/com.rlabrecque.steamworks.net/Runtime/types/SteamNetworkingSockets/ISteamNetworkingSignalingRecvContext.cs +++ b/com.rlabrecque.steamworks.net/Runtime/types/SteamNetworkingSockets/ISteamNetworkingSignalingRecvContext.cs @@ -5,7 +5,7 @@ // This file is automatically generated. // Changes to this file will be reverted when you update Steamworks.NET -#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX) +#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX || STEAMWORKS_STANDALONE_ANYCPU) #define DISABLESTEAMWORKS #endif diff --git a/com.rlabrecque.steamworks.net/Runtime/types/SteamNetworkingTypes/FSteamNetworkingSocketsDebugOutput.cs b/com.rlabrecque.steamworks.net/Runtime/types/SteamNetworkingTypes/FSteamNetworkingSocketsDebugOutput.cs index 81e06049..99dc2551 100644 --- a/com.rlabrecque.steamworks.net/Runtime/types/SteamNetworkingTypes/FSteamNetworkingSocketsDebugOutput.cs +++ b/com.rlabrecque.steamworks.net/Runtime/types/SteamNetworkingTypes/FSteamNetworkingSocketsDebugOutput.cs @@ -5,7 +5,7 @@ // This file is automatically generated. // Changes to this file will be reverted when you update Steamworks.NET -#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX) +#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX || STEAMWORKS_STANDALONE_ANYCPU) #define DISABLESTEAMWORKS #endif diff --git a/com.rlabrecque.steamworks.net/Runtime/types/SteamNetworkingTypes/HSteamListenSocket.cs b/com.rlabrecque.steamworks.net/Runtime/types/SteamNetworkingTypes/HSteamListenSocket.cs index 9d22029c..102e9e8f 100644 --- a/com.rlabrecque.steamworks.net/Runtime/types/SteamNetworkingTypes/HSteamListenSocket.cs +++ b/com.rlabrecque.steamworks.net/Runtime/types/SteamNetworkingTypes/HSteamListenSocket.cs @@ -5,7 +5,7 @@ // This file is automatically generated. // Changes to this file will be reverted when you update Steamworks.NET -#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX) +#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX || STEAMWORKS_STANDALONE_ANYCPU) #define DISABLESTEAMWORKS #endif diff --git a/com.rlabrecque.steamworks.net/Runtime/types/SteamNetworkingTypes/HSteamNetConnection.cs b/com.rlabrecque.steamworks.net/Runtime/types/SteamNetworkingTypes/HSteamNetConnection.cs index 02e0ab51..7950d6e4 100644 --- a/com.rlabrecque.steamworks.net/Runtime/types/SteamNetworkingTypes/HSteamNetConnection.cs +++ b/com.rlabrecque.steamworks.net/Runtime/types/SteamNetworkingTypes/HSteamNetConnection.cs @@ -5,7 +5,7 @@ // This file is automatically generated. // Changes to this file will be reverted when you update Steamworks.NET -#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX) +#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX || STEAMWORKS_STANDALONE_ANYCPU) #define DISABLESTEAMWORKS #endif diff --git a/com.rlabrecque.steamworks.net/Runtime/types/SteamNetworkingTypes/HSteamNetPollGroup.cs b/com.rlabrecque.steamworks.net/Runtime/types/SteamNetworkingTypes/HSteamNetPollGroup.cs index 662389f2..17e0cb76 100644 --- a/com.rlabrecque.steamworks.net/Runtime/types/SteamNetworkingTypes/HSteamNetPollGroup.cs +++ b/com.rlabrecque.steamworks.net/Runtime/types/SteamNetworkingTypes/HSteamNetPollGroup.cs @@ -5,7 +5,7 @@ // This file is automatically generated. // Changes to this file will be reverted when you update Steamworks.NET -#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX) +#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX || STEAMWORKS_STANDALONE_ANYCPU) #define DISABLESTEAMWORKS #endif diff --git a/com.rlabrecque.steamworks.net/Runtime/types/SteamNetworkingTypes/SteamNetworkingConfigValue_t.cs b/com.rlabrecque.steamworks.net/Runtime/types/SteamNetworkingTypes/SteamNetworkingConfigValue_t.cs index 2222a269..55afebef 100644 --- a/com.rlabrecque.steamworks.net/Runtime/types/SteamNetworkingTypes/SteamNetworkingConfigValue_t.cs +++ b/com.rlabrecque.steamworks.net/Runtime/types/SteamNetworkingTypes/SteamNetworkingConfigValue_t.cs @@ -5,7 +5,7 @@ // This file is automatically generated. // Changes to this file will be reverted when you update Steamworks.NET -#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX) +#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX || STEAMWORKS_STANDALONE_ANYCPU) #define DISABLESTEAMWORKS #endif diff --git a/com.rlabrecque.steamworks.net/Runtime/types/SteamNetworkingTypes/SteamNetworkingErrMsg.cs b/com.rlabrecque.steamworks.net/Runtime/types/SteamNetworkingTypes/SteamNetworkingErrMsg.cs index 0d58dd19..1be58ff4 100644 --- a/com.rlabrecque.steamworks.net/Runtime/types/SteamNetworkingTypes/SteamNetworkingErrMsg.cs +++ b/com.rlabrecque.steamworks.net/Runtime/types/SteamNetworkingTypes/SteamNetworkingErrMsg.cs @@ -5,7 +5,7 @@ // This file is automatically generated. // Changes to this file will be reverted when you update Steamworks.NET -#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX) +#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX || STEAMWORKS_STANDALONE_ANYCPU) #define DISABLESTEAMWORKS #endif diff --git a/com.rlabrecque.steamworks.net/Runtime/types/SteamNetworkingTypes/SteamNetworkingIPAddr.cs b/com.rlabrecque.steamworks.net/Runtime/types/SteamNetworkingTypes/SteamNetworkingIPAddr.cs index fe44c8d0..541798dd 100644 --- a/com.rlabrecque.steamworks.net/Runtime/types/SteamNetworkingTypes/SteamNetworkingIPAddr.cs +++ b/com.rlabrecque.steamworks.net/Runtime/types/SteamNetworkingTypes/SteamNetworkingIPAddr.cs @@ -5,7 +5,7 @@ // This file is automatically generated. // Changes to this file will be reverted when you update Steamworks.NET -#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX) +#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX || STEAMWORKS_STANDALONE_ANYCPU) #define DISABLESTEAMWORKS #endif diff --git a/com.rlabrecque.steamworks.net/Runtime/types/SteamNetworkingTypes/SteamNetworkingIdentity.cs b/com.rlabrecque.steamworks.net/Runtime/types/SteamNetworkingTypes/SteamNetworkingIdentity.cs index c343697a..4fedf384 100644 --- a/com.rlabrecque.steamworks.net/Runtime/types/SteamNetworkingTypes/SteamNetworkingIdentity.cs +++ b/com.rlabrecque.steamworks.net/Runtime/types/SteamNetworkingTypes/SteamNetworkingIdentity.cs @@ -5,7 +5,7 @@ // This file is automatically generated. // Changes to this file will be reverted when you update Steamworks.NET -#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX) +#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX || STEAMWORKS_STANDALONE_ANYCPU) #define DISABLESTEAMWORKS #endif diff --git a/com.rlabrecque.steamworks.net/Runtime/types/SteamNetworkingTypes/SteamNetworkingMessage_t.cs b/com.rlabrecque.steamworks.net/Runtime/types/SteamNetworkingTypes/SteamNetworkingMessage_t.cs index ca2dc3b5..d4b9daaa 100644 --- a/com.rlabrecque.steamworks.net/Runtime/types/SteamNetworkingTypes/SteamNetworkingMessage_t.cs +++ b/com.rlabrecque.steamworks.net/Runtime/types/SteamNetworkingTypes/SteamNetworkingMessage_t.cs @@ -5,7 +5,7 @@ // This file is automatically generated. // Changes to this file will be reverted when you update Steamworks.NET -#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX) +#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX || STEAMWORKS_STANDALONE_ANYCPU) #define DISABLESTEAMWORKS #endif diff --git a/com.rlabrecque.steamworks.net/Runtime/types/SteamNetworkingTypes/SteamNetworkingMicroseconds.cs b/com.rlabrecque.steamworks.net/Runtime/types/SteamNetworkingTypes/SteamNetworkingMicroseconds.cs index f3297844..4750b217 100644 --- a/com.rlabrecque.steamworks.net/Runtime/types/SteamNetworkingTypes/SteamNetworkingMicroseconds.cs +++ b/com.rlabrecque.steamworks.net/Runtime/types/SteamNetworkingTypes/SteamNetworkingMicroseconds.cs @@ -5,7 +5,7 @@ // This file is automatically generated. // Changes to this file will be reverted when you update Steamworks.NET -#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX) +#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX || STEAMWORKS_STANDALONE_ANYCPU) #define DISABLESTEAMWORKS #endif diff --git a/com.rlabrecque.steamworks.net/Runtime/types/SteamNetworkingTypes/SteamNetworkingPOPID.cs b/com.rlabrecque.steamworks.net/Runtime/types/SteamNetworkingTypes/SteamNetworkingPOPID.cs index 29eb4d22..a9a962d3 100644 --- a/com.rlabrecque.steamworks.net/Runtime/types/SteamNetworkingTypes/SteamNetworkingPOPID.cs +++ b/com.rlabrecque.steamworks.net/Runtime/types/SteamNetworkingTypes/SteamNetworkingPOPID.cs @@ -5,7 +5,7 @@ // This file is automatically generated. // Changes to this file will be reverted when you update Steamworks.NET -#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX) +#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX || STEAMWORKS_STANDALONE_ANYCPU) #define DISABLESTEAMWORKS #endif diff --git a/com.rlabrecque.steamworks.net/Runtime/types/SteamRemotePlay/RemotePlaySessionID_t.cs b/com.rlabrecque.steamworks.net/Runtime/types/SteamRemotePlay/RemotePlaySessionID_t.cs index 1718da6e..1a5261cc 100644 --- a/com.rlabrecque.steamworks.net/Runtime/types/SteamRemotePlay/RemotePlaySessionID_t.cs +++ b/com.rlabrecque.steamworks.net/Runtime/types/SteamRemotePlay/RemotePlaySessionID_t.cs @@ -5,7 +5,7 @@ // This file is automatically generated. // Changes to this file will be reverted when you update Steamworks.NET -#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX) +#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX || STEAMWORKS_STANDALONE_ANYCPU) #define DISABLESTEAMWORKS #endif diff --git a/com.rlabrecque.steamworks.net/Runtime/types/SteamRemoteStorage/PublishedFileId_t.cs b/com.rlabrecque.steamworks.net/Runtime/types/SteamRemoteStorage/PublishedFileId_t.cs index 940c0432..28a4cf7d 100644 --- a/com.rlabrecque.steamworks.net/Runtime/types/SteamRemoteStorage/PublishedFileId_t.cs +++ b/com.rlabrecque.steamworks.net/Runtime/types/SteamRemoteStorage/PublishedFileId_t.cs @@ -5,7 +5,7 @@ // This file is automatically generated. // Changes to this file will be reverted when you update Steamworks.NET -#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX) +#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX || STEAMWORKS_STANDALONE_ANYCPU) #define DISABLESTEAMWORKS #endif diff --git a/com.rlabrecque.steamworks.net/Runtime/types/SteamRemoteStorage/PublishedFileUpdateHandle_t.cs b/com.rlabrecque.steamworks.net/Runtime/types/SteamRemoteStorage/PublishedFileUpdateHandle_t.cs index 1c354467..d3d76b5e 100644 --- a/com.rlabrecque.steamworks.net/Runtime/types/SteamRemoteStorage/PublishedFileUpdateHandle_t.cs +++ b/com.rlabrecque.steamworks.net/Runtime/types/SteamRemoteStorage/PublishedFileUpdateHandle_t.cs @@ -5,7 +5,7 @@ // This file is automatically generated. // Changes to this file will be reverted when you update Steamworks.NET -#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX) +#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX || STEAMWORKS_STANDALONE_ANYCPU) #define DISABLESTEAMWORKS #endif diff --git a/com.rlabrecque.steamworks.net/Runtime/types/SteamRemoteStorage/UGCFileWriteStreamHandle_t.cs b/com.rlabrecque.steamworks.net/Runtime/types/SteamRemoteStorage/UGCFileWriteStreamHandle_t.cs index 9318169a..0160f5c3 100644 --- a/com.rlabrecque.steamworks.net/Runtime/types/SteamRemoteStorage/UGCFileWriteStreamHandle_t.cs +++ b/com.rlabrecque.steamworks.net/Runtime/types/SteamRemoteStorage/UGCFileWriteStreamHandle_t.cs @@ -5,7 +5,7 @@ // This file is automatically generated. // Changes to this file will be reverted when you update Steamworks.NET -#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX) +#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX || STEAMWORKS_STANDALONE_ANYCPU) #define DISABLESTEAMWORKS #endif diff --git a/com.rlabrecque.steamworks.net/Runtime/types/SteamRemoteStorage/UGCHandle_t.cs b/com.rlabrecque.steamworks.net/Runtime/types/SteamRemoteStorage/UGCHandle_t.cs index 7690ee36..38a06f48 100644 --- a/com.rlabrecque.steamworks.net/Runtime/types/SteamRemoteStorage/UGCHandle_t.cs +++ b/com.rlabrecque.steamworks.net/Runtime/types/SteamRemoteStorage/UGCHandle_t.cs @@ -5,7 +5,7 @@ // This file is automatically generated. // Changes to this file will be reverted when you update Steamworks.NET -#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX) +#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX || STEAMWORKS_STANDALONE_ANYCPU) #define DISABLESTEAMWORKS #endif diff --git a/com.rlabrecque.steamworks.net/Runtime/types/SteamScreenshots/ScreenshotHandle.cs b/com.rlabrecque.steamworks.net/Runtime/types/SteamScreenshots/ScreenshotHandle.cs index 4ec154cd..ba48f720 100644 --- a/com.rlabrecque.steamworks.net/Runtime/types/SteamScreenshots/ScreenshotHandle.cs +++ b/com.rlabrecque.steamworks.net/Runtime/types/SteamScreenshots/ScreenshotHandle.cs @@ -5,7 +5,7 @@ // This file is automatically generated. // Changes to this file will be reverted when you update Steamworks.NET -#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX) +#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX || STEAMWORKS_STANDALONE_ANYCPU) #define DISABLESTEAMWORKS #endif diff --git a/com.rlabrecque.steamworks.net/Runtime/types/SteamTimeline/TimelineEventHandle_t.cs b/com.rlabrecque.steamworks.net/Runtime/types/SteamTimeline/TimelineEventHandle_t.cs index a880466b..695fd23f 100644 --- a/com.rlabrecque.steamworks.net/Runtime/types/SteamTimeline/TimelineEventHandle_t.cs +++ b/com.rlabrecque.steamworks.net/Runtime/types/SteamTimeline/TimelineEventHandle_t.cs @@ -5,7 +5,7 @@ // This file is automatically generated. // Changes to this file will be reverted when you update Steamworks.NET -#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX) +#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX || STEAMWORKS_STANDALONE_ANYCPU) #define DISABLESTEAMWORKS #endif diff --git a/com.rlabrecque.steamworks.net/Runtime/types/SteamTypes/AccountID_t.cs b/com.rlabrecque.steamworks.net/Runtime/types/SteamTypes/AccountID_t.cs index e42f9b90..1c461432 100644 --- a/com.rlabrecque.steamworks.net/Runtime/types/SteamTypes/AccountID_t.cs +++ b/com.rlabrecque.steamworks.net/Runtime/types/SteamTypes/AccountID_t.cs @@ -5,7 +5,7 @@ // This file is automatically generated. // Changes to this file will be reverted when you update Steamworks.NET -#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX) +#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX || STEAMWORKS_STANDALONE_ANYCPU) #define DISABLESTEAMWORKS #endif diff --git a/com.rlabrecque.steamworks.net/Runtime/types/SteamTypes/AppId_t.cs b/com.rlabrecque.steamworks.net/Runtime/types/SteamTypes/AppId_t.cs index 83563078..178e8f49 100644 --- a/com.rlabrecque.steamworks.net/Runtime/types/SteamTypes/AppId_t.cs +++ b/com.rlabrecque.steamworks.net/Runtime/types/SteamTypes/AppId_t.cs @@ -5,7 +5,7 @@ // This file is automatically generated. // Changes to this file will be reverted when you update Steamworks.NET -#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX) +#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX || STEAMWORKS_STANDALONE_ANYCPU) #define DISABLESTEAMWORKS #endif diff --git a/com.rlabrecque.steamworks.net/Runtime/types/SteamTypes/DepotId_t.cs b/com.rlabrecque.steamworks.net/Runtime/types/SteamTypes/DepotId_t.cs index 9bab73f8..442bf00b 100644 --- a/com.rlabrecque.steamworks.net/Runtime/types/SteamTypes/DepotId_t.cs +++ b/com.rlabrecque.steamworks.net/Runtime/types/SteamTypes/DepotId_t.cs @@ -5,7 +5,7 @@ // This file is automatically generated. // Changes to this file will be reverted when you update Steamworks.NET -#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX) +#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX || STEAMWORKS_STANDALONE_ANYCPU) #define DISABLESTEAMWORKS #endif diff --git a/com.rlabrecque.steamworks.net/Runtime/types/SteamTypes/PartyBeaconID_t.cs b/com.rlabrecque.steamworks.net/Runtime/types/SteamTypes/PartyBeaconID_t.cs index b32e45fb..847cf7a7 100644 --- a/com.rlabrecque.steamworks.net/Runtime/types/SteamTypes/PartyBeaconID_t.cs +++ b/com.rlabrecque.steamworks.net/Runtime/types/SteamTypes/PartyBeaconID_t.cs @@ -5,7 +5,7 @@ // This file is automatically generated. // Changes to this file will be reverted when you update Steamworks.NET -#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX) +#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX || STEAMWORKS_STANDALONE_ANYCPU) #define DISABLESTEAMWORKS #endif diff --git a/com.rlabrecque.steamworks.net/Runtime/types/SteamTypes/RTime32.cs b/com.rlabrecque.steamworks.net/Runtime/types/SteamTypes/RTime32.cs index 249dda2c..18f406e0 100644 --- a/com.rlabrecque.steamworks.net/Runtime/types/SteamTypes/RTime32.cs +++ b/com.rlabrecque.steamworks.net/Runtime/types/SteamTypes/RTime32.cs @@ -5,7 +5,7 @@ // This file is automatically generated. // Changes to this file will be reverted when you update Steamworks.NET -#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX) +#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX || STEAMWORKS_STANDALONE_ANYCPU) #define DISABLESTEAMWORKS #endif diff --git a/com.rlabrecque.steamworks.net/Runtime/types/SteamTypes/SteamAPICall_t.cs b/com.rlabrecque.steamworks.net/Runtime/types/SteamTypes/SteamAPICall_t.cs index c104f14c..67838c90 100644 --- a/com.rlabrecque.steamworks.net/Runtime/types/SteamTypes/SteamAPICall_t.cs +++ b/com.rlabrecque.steamworks.net/Runtime/types/SteamTypes/SteamAPICall_t.cs @@ -5,7 +5,7 @@ // This file is automatically generated. // Changes to this file will be reverted when you update Steamworks.NET -#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX) +#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX || STEAMWORKS_STANDALONE_ANYCPU) #define DISABLESTEAMWORKS #endif diff --git a/com.rlabrecque.steamworks.net/Runtime/types/SteamTypes/SteamIPAddress_t.cs b/com.rlabrecque.steamworks.net/Runtime/types/SteamTypes/SteamIPAddress_t.cs index a815682c..7a01e12d 100644 --- a/com.rlabrecque.steamworks.net/Runtime/types/SteamTypes/SteamIPAddress_t.cs +++ b/com.rlabrecque.steamworks.net/Runtime/types/SteamTypes/SteamIPAddress_t.cs @@ -5,7 +5,7 @@ // This file is automatically generated. // Changes to this file will be reverted when you update Steamworks.NET -#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX) +#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX || STEAMWORKS_STANDALONE_ANYCPU) #define DISABLESTEAMWORKS #endif diff --git a/com.rlabrecque.steamworks.net/Runtime/types/SteamUGC/UGCQueryHandle_t.cs b/com.rlabrecque.steamworks.net/Runtime/types/SteamUGC/UGCQueryHandle_t.cs index 334d2e8d..2e308fc1 100644 --- a/com.rlabrecque.steamworks.net/Runtime/types/SteamUGC/UGCQueryHandle_t.cs +++ b/com.rlabrecque.steamworks.net/Runtime/types/SteamUGC/UGCQueryHandle_t.cs @@ -5,7 +5,7 @@ // This file is automatically generated. // Changes to this file will be reverted when you update Steamworks.NET -#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX) +#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX || STEAMWORKS_STANDALONE_ANYCPU) #define DISABLESTEAMWORKS #endif diff --git a/com.rlabrecque.steamworks.net/Runtime/types/SteamUGC/UGCUpdateHandle_t.cs b/com.rlabrecque.steamworks.net/Runtime/types/SteamUGC/UGCUpdateHandle_t.cs index d56be973..441b5743 100644 --- a/com.rlabrecque.steamworks.net/Runtime/types/SteamUGC/UGCUpdateHandle_t.cs +++ b/com.rlabrecque.steamworks.net/Runtime/types/SteamUGC/UGCUpdateHandle_t.cs @@ -5,7 +5,7 @@ // This file is automatically generated. // Changes to this file will be reverted when you update Steamworks.NET -#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX) +#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX || STEAMWORKS_STANDALONE_ANYCPU) #define DISABLESTEAMWORKS #endif diff --git a/com.rlabrecque.steamworks.net/Runtime/types/SteamUserStats/SteamLeaderboardEntries_t.cs b/com.rlabrecque.steamworks.net/Runtime/types/SteamUserStats/SteamLeaderboardEntries_t.cs index 17080e4a..d5735f5c 100644 --- a/com.rlabrecque.steamworks.net/Runtime/types/SteamUserStats/SteamLeaderboardEntries_t.cs +++ b/com.rlabrecque.steamworks.net/Runtime/types/SteamUserStats/SteamLeaderboardEntries_t.cs @@ -5,7 +5,7 @@ // This file is automatically generated. // Changes to this file will be reverted when you update Steamworks.NET -#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX) +#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX || STEAMWORKS_STANDALONE_ANYCPU) #define DISABLESTEAMWORKS #endif diff --git a/com.rlabrecque.steamworks.net/Runtime/types/SteamUserStats/SteamLeaderboard_t.cs b/com.rlabrecque.steamworks.net/Runtime/types/SteamUserStats/SteamLeaderboard_t.cs index a68367ca..a610a43a 100644 --- a/com.rlabrecque.steamworks.net/Runtime/types/SteamUserStats/SteamLeaderboard_t.cs +++ b/com.rlabrecque.steamworks.net/Runtime/types/SteamUserStats/SteamLeaderboard_t.cs @@ -5,7 +5,7 @@ // This file is automatically generated. // Changes to this file will be reverted when you update Steamworks.NET -#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX) +#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX || STEAMWORKS_STANDALONE_ANYCPU) #define DISABLESTEAMWORKS #endif diff --git a/com.rlabrecque.steamworks.net/Runtime/types/Steam_api_common/HSteamPipe.cs b/com.rlabrecque.steamworks.net/Runtime/types/Steam_api_common/HSteamPipe.cs index ad4b7d28..e1645356 100644 --- a/com.rlabrecque.steamworks.net/Runtime/types/Steam_api_common/HSteamPipe.cs +++ b/com.rlabrecque.steamworks.net/Runtime/types/Steam_api_common/HSteamPipe.cs @@ -5,7 +5,7 @@ // This file is automatically generated. // Changes to this file will be reverted when you update Steamworks.NET -#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX) +#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX || STEAMWORKS_STANDALONE_ANYCPU) #define DISABLESTEAMWORKS #endif diff --git a/com.rlabrecque.steamworks.net/Runtime/types/Steam_api_common/HSteamUser.cs b/com.rlabrecque.steamworks.net/Runtime/types/Steam_api_common/HSteamUser.cs index a7fb2dd1..b8b3f6f6 100644 --- a/com.rlabrecque.steamworks.net/Runtime/types/Steam_api_common/HSteamUser.cs +++ b/com.rlabrecque.steamworks.net/Runtime/types/Steam_api_common/HSteamUser.cs @@ -5,7 +5,7 @@ // This file is automatically generated. // Changes to this file will be reverted when you update Steamworks.NET -#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX) +#if !(UNITY_STANDALONE_WIN || UNITY_STANDALONE_LINUX || UNITY_STANDALONE_OSX || STEAMWORKS_WIN || STEAMWORKS_LIN_OSX || STEAMWORKS_STANDALONE_ANYCPU) #define DISABLESTEAMWORKS #endif