// ------------------------------------------------------------------------------ // // This code was generated by a tool. // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. // // ------------------------------------------------------------------------------ using System; using System.Diagnostics; using System.Runtime.CompilerServices; using System.Runtime.InteropServices; using HexaGen.Runtime; using System.Numerics; namespace Dalamud.Bindings.ImGui { /// /// To be documented. /// [StructLayout(LayoutKind.Sequential)] public partial struct ImFontConfig { /// /// To be documented. /// public unsafe void* FontData; /// /// To be documented. /// public int FontDataSize; /// /// To be documented. /// public byte FontDataOwnedByAtlas; /// /// To be documented. /// public int FontNo; /// /// To be documented. /// public float SizePixels; /// /// To be documented. /// public int OversampleH; /// /// To be documented. /// public int OversampleV; /// /// To be documented. /// public byte PixelSnapH; /// /// To be documented. /// public Vector2 GlyphExtraSpacing; /// /// To be documented. /// public Vector2 GlyphOffset; /// /// To be documented. /// public unsafe ushort* GlyphRanges; /// /// To be documented. /// public float GlyphMinAdvanceX; /// /// To be documented. /// public float GlyphMaxAdvanceX; /// /// To be documented. /// public byte MergeMode; /// /// To be documented. /// public uint FontBuilderFlags; /// /// To be documented. /// public float RasterizerMultiply; /// /// To be documented. /// public float RasterizerGamma; /// /// To be documented. /// public ushort EllipsisChar; /// /// To be documented. /// public byte Name_0; public byte Name_1; public byte Name_2; public byte Name_3; public byte Name_4; public byte Name_5; public byte Name_6; public byte Name_7; public byte Name_8; public byte Name_9; public byte Name_10; public byte Name_11; public byte Name_12; public byte Name_13; public byte Name_14; public byte Name_15; public byte Name_16; public byte Name_17; public byte Name_18; public byte Name_19; public byte Name_20; public byte Name_21; public byte Name_22; public byte Name_23; public byte Name_24; public byte Name_25; public byte Name_26; public byte Name_27; public byte Name_28; public byte Name_29; public byte Name_30; public byte Name_31; public byte Name_32; public byte Name_33; public byte Name_34; public byte Name_35; public byte Name_36; public byte Name_37; public byte Name_38; public byte Name_39; /// /// To be documented. /// public unsafe ImFont* DstFont; /// /// To be documented. /// public unsafe ImFontConfig(void* fontData = default, int fontDataSize = default, bool fontDataOwnedByAtlas = default, int fontNo = default, float sizePixels = default, int oversampleH = default, int oversampleV = default, bool pixelSnapH = default, Vector2 glyphExtraSpacing = default, Vector2 glyphOffset = default, ushort* glyphRanges = default, float glyphMinAdvanceX = default, float glyphMaxAdvanceX = default, bool mergeMode = default, uint fontBuilderFlags = default, float rasterizerMultiply = default, float rasterizerGamma = default, ushort ellipsisChar = default, byte* name = default, ImFontPtr dstFont = default) { FontData = fontData; FontDataSize = fontDataSize; FontDataOwnedByAtlas = fontDataOwnedByAtlas ? (byte)1 : (byte)0; FontNo = fontNo; SizePixels = sizePixels; OversampleH = oversampleH; OversampleV = oversampleV; PixelSnapH = pixelSnapH ? (byte)1 : (byte)0; GlyphExtraSpacing = glyphExtraSpacing; GlyphOffset = glyphOffset; GlyphRanges = glyphRanges; GlyphMinAdvanceX = glyphMinAdvanceX; GlyphMaxAdvanceX = glyphMaxAdvanceX; MergeMode = mergeMode ? (byte)1 : (byte)0; FontBuilderFlags = fontBuilderFlags; RasterizerMultiply = rasterizerMultiply; RasterizerGamma = rasterizerGamma; EllipsisChar = ellipsisChar; if (name != default(byte*)) { Name_0 = name[0]; Name_1 = name[1]; Name_2 = name[2]; Name_3 = name[3]; Name_4 = name[4]; Name_5 = name[5]; Name_6 = name[6]; Name_7 = name[7]; Name_8 = name[8]; Name_9 = name[9]; Name_10 = name[10]; Name_11 = name[11]; Name_12 = name[12]; Name_13 = name[13]; Name_14 = name[14]; Name_15 = name[15]; Name_16 = name[16]; Name_17 = name[17]; Name_18 = name[18]; Name_19 = name[19]; Name_20 = name[20]; Name_21 = name[21]; Name_22 = name[22]; Name_23 = name[23]; Name_24 = name[24]; Name_25 = name[25]; Name_26 = name[26]; Name_27 = name[27]; Name_28 = name[28]; Name_29 = name[29]; Name_30 = name[30]; Name_31 = name[31]; Name_32 = name[32]; Name_33 = name[33]; Name_34 = name[34]; Name_35 = name[35]; Name_36 = name[36]; Name_37 = name[37]; Name_38 = name[38]; Name_39 = name[39]; } DstFont = dstFont; } /// /// To be documented. /// public unsafe ImFontConfig(void* fontData = default, int fontDataSize = default, bool fontDataOwnedByAtlas = default, int fontNo = default, float sizePixels = default, int oversampleH = default, int oversampleV = default, bool pixelSnapH = default, Vector2 glyphExtraSpacing = default, Vector2 glyphOffset = default, ushort* glyphRanges = default, float glyphMinAdvanceX = default, float glyphMaxAdvanceX = default, bool mergeMode = default, uint fontBuilderFlags = default, float rasterizerMultiply = default, float rasterizerGamma = default, ushort ellipsisChar = default, Span name = default, ImFontPtr dstFont = default) { FontData = fontData; FontDataSize = fontDataSize; FontDataOwnedByAtlas = fontDataOwnedByAtlas ? (byte)1 : (byte)0; FontNo = fontNo; SizePixels = sizePixels; OversampleH = oversampleH; OversampleV = oversampleV; PixelSnapH = pixelSnapH ? (byte)1 : (byte)0; GlyphExtraSpacing = glyphExtraSpacing; GlyphOffset = glyphOffset; GlyphRanges = glyphRanges; GlyphMinAdvanceX = glyphMinAdvanceX; GlyphMaxAdvanceX = glyphMaxAdvanceX; MergeMode = mergeMode ? (byte)1 : (byte)0; FontBuilderFlags = fontBuilderFlags; RasterizerMultiply = rasterizerMultiply; RasterizerGamma = rasterizerGamma; EllipsisChar = ellipsisChar; if (name != default(Span)) { Name_0 = name[0]; Name_1 = name[1]; Name_2 = name[2]; Name_3 = name[3]; Name_4 = name[4]; Name_5 = name[5]; Name_6 = name[6]; Name_7 = name[7]; Name_8 = name[8]; Name_9 = name[9]; Name_10 = name[10]; Name_11 = name[11]; Name_12 = name[12]; Name_13 = name[13]; Name_14 = name[14]; Name_15 = name[15]; Name_16 = name[16]; Name_17 = name[17]; Name_18 = name[18]; Name_19 = name[19]; Name_20 = name[20]; Name_21 = name[21]; Name_22 = name[22]; Name_23 = name[23]; Name_24 = name[24]; Name_25 = name[25]; Name_26 = name[26]; Name_27 = name[27]; Name_28 = name[28]; Name_29 = name[29]; Name_30 = name[30]; Name_31 = name[31]; Name_32 = name[32]; Name_33 = name[33]; Name_34 = name[34]; Name_35 = name[35]; Name_36 = name[36]; Name_37 = name[37]; Name_38 = name[38]; Name_39 = name[39]; } DstFont = dstFont; } /// /// To be documented. /// public unsafe void Destroy() { fixed (ImFontConfig* @this = &this) { ImGui.DestroyNative(@this); } } } /// /// To be documented. /// #if NET5_0_OR_GREATER [DebuggerDisplay("{DebuggerDisplay,nq}")] #endif public unsafe struct ImFontConfigPtr : IEquatable { public ImFontConfigPtr(ImFontConfig* handle) { Handle = handle; } public ImFontConfig* Handle; public bool IsNull => Handle == null; public static ImFontConfigPtr Null => new ImFontConfigPtr(null); public ImFontConfig this[int index] { get => Handle[index]; set => Handle[index] = value; } public static implicit operator ImFontConfigPtr(ImFontConfig* handle) => new ImFontConfigPtr(handle); public static implicit operator ImFontConfig*(ImFontConfigPtr handle) => handle.Handle; public static bool operator ==(ImFontConfigPtr left, ImFontConfigPtr right) => left.Handle == right.Handle; public static bool operator !=(ImFontConfigPtr left, ImFontConfigPtr right) => left.Handle != right.Handle; public static bool operator ==(ImFontConfigPtr left, ImFontConfig* right) => left.Handle == right; public static bool operator !=(ImFontConfigPtr left, ImFontConfig* right) => left.Handle != right; public bool Equals(ImFontConfigPtr other) => Handle == other.Handle; /// public override bool Equals(object obj) => obj is ImFontConfigPtr handle && Equals(handle); /// public override int GetHashCode() => ((nuint)Handle).GetHashCode(); #if NET5_0_OR_GREATER private string DebuggerDisplay => string.Format("ImFontConfigPtr [0x{0}]", ((nuint)Handle).ToString("X")); #endif /// /// To be documented. /// public void* FontData { get => Handle->FontData; set => Handle->FontData = value; } /// /// To be documented. /// public ref int FontDataSize => ref Unsafe.AsRef(&Handle->FontDataSize); /// /// To be documented. /// public ref bool FontDataOwnedByAtlas => ref Unsafe.AsRef(&Handle->FontDataOwnedByAtlas); /// /// To be documented. /// public ref int FontNo => ref Unsafe.AsRef(&Handle->FontNo); /// /// To be documented. /// public ref float SizePixels => ref Unsafe.AsRef(&Handle->SizePixels); /// /// To be documented. /// public ref int OversampleH => ref Unsafe.AsRef(&Handle->OversampleH); /// /// To be documented. /// public ref int OversampleV => ref Unsafe.AsRef(&Handle->OversampleV); /// /// To be documented. /// public ref bool PixelSnapH => ref Unsafe.AsRef(&Handle->PixelSnapH); /// /// To be documented. /// public ref Vector2 GlyphExtraSpacing => ref Unsafe.AsRef(&Handle->GlyphExtraSpacing); /// /// To be documented. /// public ref Vector2 GlyphOffset => ref Unsafe.AsRef(&Handle->GlyphOffset); /// /// To be documented. /// public ushort* GlyphRanges { get => Handle->GlyphRanges; set => Handle->GlyphRanges = value; } /// /// To be documented. /// public ref float GlyphMinAdvanceX => ref Unsafe.AsRef(&Handle->GlyphMinAdvanceX); /// /// To be documented. /// public ref float GlyphMaxAdvanceX => ref Unsafe.AsRef(&Handle->GlyphMaxAdvanceX); /// /// To be documented. /// public ref bool MergeMode => ref Unsafe.AsRef(&Handle->MergeMode); /// /// To be documented. /// public ref uint FontBuilderFlags => ref Unsafe.AsRef(&Handle->FontBuilderFlags); /// /// To be documented. /// public ref float RasterizerMultiply => ref Unsafe.AsRef(&Handle->RasterizerMultiply); /// /// To be documented. /// public ref float RasterizerGamma => ref Unsafe.AsRef(&Handle->RasterizerGamma); /// /// To be documented. /// public ref ushort EllipsisChar => ref Unsafe.AsRef(&Handle->EllipsisChar); /// /// To be documented. /// public unsafe Span Name { get { return new Span(&Handle->Name_0, 40); } } /// /// To be documented. /// public ref ImFontPtr DstFont => ref Unsafe.AsRef(&Handle->DstFont); /// /// To be documented. /// public unsafe void Destroy() { ImGui.DestroyNative(Handle); } } }