From 5afed427add26ffa681f54dcbe4540e7b0bc826f Mon Sep 17 00:00:00 2001 From: giawa Date: Tue, 18 Jun 2019 14:02:20 -0700 Subject: [PATCH] Add example variants.json that adds IntPtr* as a parameter variant for ImFontAtlas_GetTexDataAsAlpha8 and ImFontAtlas_GetTexDataAsRGBA32. Rerun code generation. --- src/CodeGenerator/CodeGenerator.csproj | 7 +++ src/CodeGenerator/variants.json | 16 ++++++ src/ImGui.NET/Generated/ImFontAtlas.gen.cs | 60 ++++++++++++++++++++++ src/ImGui.NET/Generated/ImGuiNative.gen.cs | 4 ++ 4 files changed, 87 insertions(+) create mode 100644 src/CodeGenerator/variants.json diff --git a/src/CodeGenerator/CodeGenerator.csproj b/src/CodeGenerator/CodeGenerator.csproj index 9f05ccc..861e6a6 100644 --- a/src/CodeGenerator/CodeGenerator.csproj +++ b/src/CodeGenerator/CodeGenerator.csproj @@ -5,9 +5,16 @@ netcoreapp2.1 + + + + + + PreserveNewest + diff --git a/src/CodeGenerator/variants.json b/src/CodeGenerator/variants.json new file mode 100644 index 0000000..8b94900 --- /dev/null +++ b/src/CodeGenerator/variants.json @@ -0,0 +1,16 @@ +{ + "ImFontAtlas_GetTexDataAsAlpha8": [ + { + "name": "out_pixels", + "type": "unsigned char**", + "variants": [ "IntPtr*" ] + } + ], + "ImFontAtlas_GetTexDataAsRGBA32": [ + { + "name": "out_pixels", + "type": "unsigned char**", + "variants": [ "IntPtr*" ] + } + ] +} \ No newline at end of file diff --git a/src/ImGui.NET/Generated/ImFontAtlas.gen.cs b/src/ImGui.NET/Generated/ImFontAtlas.gen.cs index d398228..70a2c5d 100644 --- a/src/ImGui.NET/Generated/ImFontAtlas.gen.cs +++ b/src/ImGui.NET/Generated/ImFontAtlas.gen.cs @@ -434,6 +434,36 @@ namespace ImGuiNET } } } + public void GetTexDataAsAlpha8(out IntPtr out_pixels, out int out_width, out int out_height) + { + int* out_bytes_per_pixel = null; + fixed (IntPtr* native_out_pixels = &out_pixels) + { + fixed (int* native_out_width = &out_width) + { + fixed (int* native_out_height = &out_height) + { + ImGuiNative.ImFontAtlas_GetTexDataAsAlpha8(NativePtr, native_out_pixels, native_out_width, native_out_height, out_bytes_per_pixel); + } + } + } + } + public void GetTexDataAsAlpha8(out IntPtr out_pixels, out int out_width, out int out_height, out int out_bytes_per_pixel) + { + fixed (IntPtr* native_out_pixels = &out_pixels) + { + fixed (int* native_out_width = &out_width) + { + fixed (int* native_out_height = &out_height) + { + fixed (int* native_out_bytes_per_pixel = &out_bytes_per_pixel) + { + ImGuiNative.ImFontAtlas_GetTexDataAsAlpha8(NativePtr, native_out_pixels, native_out_width, native_out_height, native_out_bytes_per_pixel); + } + } + } + } + } public void GetTexDataAsRGBA32(out byte* out_pixels, out int out_width, out int out_height) { int* out_bytes_per_pixel = null; @@ -464,6 +494,36 @@ namespace ImGuiNET } } } + public void GetTexDataAsRGBA32(out IntPtr out_pixels, out int out_width, out int out_height) + { + int* out_bytes_per_pixel = null; + fixed (IntPtr* native_out_pixels = &out_pixels) + { + fixed (int* native_out_width = &out_width) + { + fixed (int* native_out_height = &out_height) + { + ImGuiNative.ImFontAtlas_GetTexDataAsRGBA32(NativePtr, native_out_pixels, native_out_width, native_out_height, out_bytes_per_pixel); + } + } + } + } + public void GetTexDataAsRGBA32(out IntPtr out_pixels, out int out_width, out int out_height, out int out_bytes_per_pixel) + { + fixed (IntPtr* native_out_pixels = &out_pixels) + { + fixed (int* native_out_width = &out_width) + { + fixed (int* native_out_height = &out_height) + { + fixed (int* native_out_bytes_per_pixel = &out_bytes_per_pixel) + { + ImGuiNative.ImFontAtlas_GetTexDataAsRGBA32(NativePtr, native_out_pixels, native_out_width, native_out_height, native_out_bytes_per_pixel); + } + } + } + } + } public bool IsBuilt() { byte ret = ImGuiNative.ImFontAtlas_IsBuilt(NativePtr); diff --git a/src/ImGui.NET/Generated/ImGuiNative.gen.cs b/src/ImGui.NET/Generated/ImGuiNative.gen.cs index 2ee31ac..abc6bf0 100644 --- a/src/ImGui.NET/Generated/ImGuiNative.gen.cs +++ b/src/ImGui.NET/Generated/ImGuiNative.gen.cs @@ -895,8 +895,12 @@ namespace ImGuiNET [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] public static extern void ImFontAtlas_GetTexDataAsAlpha8(ImFontAtlas* self, byte** out_pixels, int* out_width, int* out_height, int* out_bytes_per_pixel); [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] + public static extern void ImFontAtlas_GetTexDataAsAlpha8(ImFontAtlas* self, IntPtr* out_pixels, int* out_width, int* out_height, int* out_bytes_per_pixel); + [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] public static extern void ImFontAtlas_GetTexDataAsRGBA32(ImFontAtlas* self, byte** out_pixels, int* out_width, int* out_height, int* out_bytes_per_pixel); [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] + public static extern void ImFontAtlas_GetTexDataAsRGBA32(ImFontAtlas* self, IntPtr* out_pixels, int* out_width, int* out_height, int* out_bytes_per_pixel); + [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] public static extern ImFontAtlas* ImFontAtlas_ImFontAtlas(); [DllImport("cimgui", CallingConvention = CallingConvention.Cdecl)] public static extern byte ImFontAtlas_IsBuilt(ImFontAtlas* self);