// ------------------------------------------------------------------------------ // // 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 ImGuiWindowStackData { /// /// To be documented. /// public unsafe ImGuiWindow* Window; /// /// To be documented. /// public ImGuiLastItemData ParentLastItemDataBackup; /// /// To be documented. /// public ImGuiStackSizes StackSizesOnBegin; /// /// To be documented. /// public unsafe ImGuiWindowStackData(ImGuiWindowPtr window = default, ImGuiLastItemData parentLastItemDataBackup = default, ImGuiStackSizes stackSizesOnBegin = default) { Window = window; ParentLastItemDataBackup = parentLastItemDataBackup; StackSizesOnBegin = stackSizesOnBegin; } } /// /// To be documented. /// #if NET5_0_OR_GREATER [DebuggerDisplay("{DebuggerDisplay,nq}")] #endif public unsafe struct ImGuiWindowStackDataPtr : IEquatable { public ImGuiWindowStackDataPtr(ImGuiWindowStackData* handle) { Handle = handle; } public ImGuiWindowStackData* Handle; public bool IsNull => Handle == null; public static ImGuiWindowStackDataPtr Null => new ImGuiWindowStackDataPtr(null); public ImGuiWindowStackData this[int index] { get => Handle[index]; set => Handle[index] = value; } public static implicit operator ImGuiWindowStackDataPtr(ImGuiWindowStackData* handle) => new ImGuiWindowStackDataPtr(handle); public static implicit operator ImGuiWindowStackData*(ImGuiWindowStackDataPtr handle) => handle.Handle; public static bool operator ==(ImGuiWindowStackDataPtr left, ImGuiWindowStackDataPtr right) => left.Handle == right.Handle; public static bool operator !=(ImGuiWindowStackDataPtr left, ImGuiWindowStackDataPtr right) => left.Handle != right.Handle; public static bool operator ==(ImGuiWindowStackDataPtr left, ImGuiWindowStackData* right) => left.Handle == right; public static bool operator !=(ImGuiWindowStackDataPtr left, ImGuiWindowStackData* right) => left.Handle != right; public bool Equals(ImGuiWindowStackDataPtr other) => Handle == other.Handle; /// public override bool Equals(object obj) => obj is ImGuiWindowStackDataPtr handle && Equals(handle); /// public override int GetHashCode() => ((nuint)Handle).GetHashCode(); #if NET5_0_OR_GREATER private string DebuggerDisplay => string.Format("ImGuiWindowStackDataPtr [0x{0}]", ((nuint)Handle).ToString("X")); #endif /// /// To be documented. /// public ref ImGuiWindowPtr Window => ref Unsafe.AsRef(&Handle->Window); /// /// To be documented. /// public ref ImGuiLastItemData ParentLastItemDataBackup => ref Unsafe.AsRef(&Handle->ParentLastItemDataBackup); /// /// To be documented. /// public ref ImGuiStackSizes StackSizesOnBegin => ref Unsafe.AsRef(&Handle->StackSizesOnBegin); } }