Fix Native Window Type IDL/Bindings; (#3163)

This commit is contained in:
Nuno Silva
2023-08-26 19:50:34 +01:00
committed by GitHub
parent c18122226e
commit b68dc2b13e
5 changed files with 68 additions and 9 deletions

View File

@@ -2016,6 +2016,22 @@ public static class bgfx
Count
}
[AllowDuplicates]
public enum NativeWindowHandleType : uint32
{
/// <summary>
/// Platform default handle type (X11 on Linux).
/// </summary>
Default,
/// <summary>
/// Wayland.
/// </summary>
Wayland,
Count
}
[AllowDuplicates]
public enum RenderFrame : uint32
{
@@ -2108,6 +2124,7 @@ public static class bgfx
public void* context;
public void* backBuffer;
public void* backBufferDS;
public NativeWindowHandleType type;
}
[CRepr]

View File

@@ -2002,6 +2002,21 @@ public static partial class bgfx
Count
}
public enum NativeWindowHandleType
{
/// <summary>
/// Platform default handle type (X11 on Linux).
/// </summary>
Default,
/// <summary>
/// Wayland.
/// </summary>
Wayland,
Count
}
public enum RenderFrame
{
/// <summary>
@@ -2088,6 +2103,7 @@ public static partial class bgfx
public void* context;
public void* backBuffer;
public void* backBufferDS;
public NativeWindowHandleType type;
}
public unsafe struct Resolution

View File

@@ -839,6 +839,13 @@ enum ViewMode: bgfx.fakeenum.ViewMode.Enum{
count = bgfx.fakeenum.ViewMode.Enum.count,
}
///Native window handle type.
enum NativeWindowHandleType: bgfx.fakeenum.NativeWindowHandleType.Enum{
default_ = bgfx.fakeenum.NativeWindowHandleType.Enum.default_,
wayland = bgfx.fakeenum.NativeWindowHandleType.Enum.wayland,
count = bgfx.fakeenum.NativeWindowHandleType.Enum.count,
}
///Render frame enum.
enum RenderFrame: bgfx.fakeenum.RenderFrame.Enum{
noContext = bgfx.fakeenum.RenderFrame.Enum.noContext,
@@ -1073,6 +1080,7 @@ extern(C++, "bgfx") struct PlatformData{
depth/stencil surface.
*/
void* backBufferDS;
NativeWindowHandleType type; ///Handle type. Needed for platforms having more than one option.
}
///Backbuffer resolution and reset parameters.

View File

@@ -1260,6 +1260,16 @@ pub const ViewMode = enum(c_int) {
Count
};
pub const NativeWindowHandleType = enum(c_int) {
/// Platform default handle type (X11 on Linux).
Default,
/// Wayland.
Wayland,
Count
};
pub const RenderFrame = enum(c_int) {
/// Renderer context is not created yet.
NoContext,
@@ -1332,6 +1342,7 @@ pub const Caps = extern struct {
context: ?*anyopaque,
backBuffer: ?*anyopaque,
backBufferDS: ?*anyopaque,
type: NativeWindowHandleType,
};
pub const Resolution = extern struct {