Files
2026-02-21 16:45:37 +08:00

38 lines
1.8 KiB
C#

using System.Runtime.InteropServices;
using System.Text;
namespace Viveport.Internal
{
internal class DLC
{
static DLC()
{
Api.LoadLibraryManually("viveport_api");
}
[DllImport("viveport_api", CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.Ansi, EntryPoint = "IViveportDlc_IsReady")]
internal static extern int IsReady(StatusCallback callback);
[DllImport("viveport_api64", CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.Ansi, EntryPoint = "IViveportDlc_IsReady")]
internal static extern int IsReady_64(StatusCallback callback);
[DllImport("viveport_api", CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.Ansi, EntryPoint = "IViveportDlc_GetCount")]
internal static extern int GetCount();
[DllImport("viveport_api64", CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.Ansi, EntryPoint = "IViveportDlc_GetCount")]
internal static extern int GetCount_64();
[DllImport("viveport_api", CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.Ansi, EntryPoint = "IViveportDlc_GetIsAvailable")]
internal static extern bool GetIsAvailable(int index, StringBuilder appId, out bool isAvailable);
[DllImport("viveport_api64", CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.Ansi, EntryPoint = "IViveportDlc_GetIsAvailable")]
internal static extern bool GetIsAvailable_64(int index, StringBuilder appId, out bool isAvailable);
[DllImport("viveport_api", CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.Ansi, EntryPoint = "IViveportDlc_IsSubscribed")]
internal static extern int IsSubscribed();
[DllImport("viveport_api64", CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.Ansi, EntryPoint = "IViveportDlc_IsSubscribed")]
internal static extern int IsSubscribed_64();
}
}