1
0
Fork 0
mirror of https://github.com/Ryujinx/Ryujinx.git synced 2024-11-18 14:36:39 +00:00
Ryujinx/src/Ryujinx.Graphics.OpenGL/Helper/GLXHelper.cs
2023-04-27 23:51:14 +02:00

36 lines
1 KiB
C#

using System;
using System.Runtime.InteropServices;
using System.Runtime.Versioning;
namespace Ryujinx.Graphics.OpenGL.Helper
{
[SupportedOSPlatform("linux")]
internal static partial class GLXHelper
{
private const string LibraryName = "glx.dll";
static GLXHelper()
{
NativeLibrary.SetDllImportResolver(typeof(GLXHelper).Assembly, (name, assembly, path) =>
{
if (name != LibraryName)
{
return IntPtr.Zero;
}
if (!NativeLibrary.TryLoad("libGL.so.1", assembly, path, out IntPtr result))
{
if (!NativeLibrary.TryLoad("libGL.so", assembly, path, out result))
{
return IntPtr.Zero;
}
}
return result;
});
}
[LibraryImport(LibraryName, EntryPoint = "glXGetCurrentContext")]
public static partial IntPtr GetCurrentContext();
}
}