// ------------------------------------------------------------------------------ // // 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 ImGuiTableSettings { /// /// To be documented. /// public uint ID; /// /// To be documented. /// public ImGuiTableFlags SaveFlags; /// /// To be documented. /// public float RefScale; /// /// To be documented. /// public sbyte ColumnsCount; /// /// To be documented. /// public sbyte ColumnsCountMax; /// /// To be documented. /// public byte WantApply; /// /// To be documented. /// public unsafe ImGuiTableSettings(uint id = default, ImGuiTableFlags saveFlags = default, float refScale = default, sbyte columnsCount = default, sbyte columnsCountMax = default, bool wantApply = default) { ID = id; SaveFlags = saveFlags; RefScale = refScale; ColumnsCount = columnsCount; ColumnsCountMax = columnsCountMax; WantApply = wantApply ? (byte)1 : (byte)0; } /// /// To be documented. /// public unsafe void Destroy() { fixed (ImGuiTableSettings* @this = &this) { ImGui.DestroyNative(@this); } } } /// /// To be documented. /// #if NET5_0_OR_GREATER [DebuggerDisplay("{DebuggerDisplay,nq}")] #endif public unsafe struct ImGuiTableSettingsPtr : IEquatable { public ImGuiTableSettingsPtr(ImGuiTableSettings* handle) { Handle = handle; } public ImGuiTableSettings* Handle; public bool IsNull => Handle == null; public static ImGuiTableSettingsPtr Null => new ImGuiTableSettingsPtr(null); public ImGuiTableSettings this[int index] { get => Handle[index]; set => Handle[index] = value; } public static implicit operator ImGuiTableSettingsPtr(ImGuiTableSettings* handle) => new ImGuiTableSettingsPtr(handle); public static implicit operator ImGuiTableSettings*(ImGuiTableSettingsPtr handle) => handle.Handle; public static bool operator ==(ImGuiTableSettingsPtr left, ImGuiTableSettingsPtr right) => left.Handle == right.Handle; public static bool operator !=(ImGuiTableSettingsPtr left, ImGuiTableSettingsPtr right) => left.Handle != right.Handle; public static bool operator ==(ImGuiTableSettingsPtr left, ImGuiTableSettings* right) => left.Handle == right; public static bool operator !=(ImGuiTableSettingsPtr left, ImGuiTableSettings* right) => left.Handle != right; public bool Equals(ImGuiTableSettingsPtr other) => Handle == other.Handle; /// public override bool Equals(object obj) => obj is ImGuiTableSettingsPtr handle && Equals(handle); /// public override int GetHashCode() => ((nuint)Handle).GetHashCode(); #if NET5_0_OR_GREATER private string DebuggerDisplay => string.Format("ImGuiTableSettingsPtr [0x{0}]", ((nuint)Handle).ToString("X")); #endif /// /// To be documented. /// public ref uint ID => ref Unsafe.AsRef(&Handle->ID); /// /// To be documented. /// public ref ImGuiTableFlags SaveFlags => ref Unsafe.AsRef(&Handle->SaveFlags); /// /// To be documented. /// public ref float RefScale => ref Unsafe.AsRef(&Handle->RefScale); /// /// To be documented. /// public ref sbyte ColumnsCount => ref Unsafe.AsRef(&Handle->ColumnsCount); /// /// To be documented. /// public ref sbyte ColumnsCountMax => ref Unsafe.AsRef(&Handle->ColumnsCountMax); /// /// To be documented. /// public ref bool WantApply => ref Unsafe.AsRef(&Handle->WantApply); /// /// To be documented. /// public unsafe void Destroy() { ImGui.DestroyNative(Handle); } } }