// ------------------------------------------------------------------------------ // // 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 { /// /// Note that Max is exclusive, so perhaps should be using a BeginEnd convention.
///
[StructLayout(LayoutKind.Sequential)] public partial struct ImGuiListClipperRange { /// /// To be documented. /// public int Min; /// /// To be documented. /// public int Max; /// /// To be documented. /// public byte PosToIndexConvert; /// /// To be documented. /// public byte PosToIndexOffsetMin; /// /// To be documented. /// public byte PosToIndexOffsetMax; /// /// To be documented. /// public unsafe ImGuiListClipperRange(int min = default, int max = default, bool posToIndexConvert = default, byte posToIndexOffsetMin = default, byte posToIndexOffsetMax = default) { Min = min; Max = max; PosToIndexConvert = posToIndexConvert ? (byte)1 : (byte)0; PosToIndexOffsetMin = posToIndexOffsetMin; PosToIndexOffsetMax = posToIndexOffsetMax; } } /// /// To be documented. /// #if NET5_0_OR_GREATER [DebuggerDisplay("{DebuggerDisplay,nq}")] #endif public unsafe struct ImGuiListClipperRangePtr : IEquatable { public ImGuiListClipperRangePtr(ImGuiListClipperRange* handle) { Handle = handle; } public ImGuiListClipperRange* Handle; public bool IsNull => Handle == null; public static ImGuiListClipperRangePtr Null => new ImGuiListClipperRangePtr(null); public ImGuiListClipperRange this[int index] { get => Handle[index]; set => Handle[index] = value; } public static implicit operator ImGuiListClipperRangePtr(ImGuiListClipperRange* handle) => new ImGuiListClipperRangePtr(handle); public static implicit operator ImGuiListClipperRange*(ImGuiListClipperRangePtr handle) => handle.Handle; public static bool operator ==(ImGuiListClipperRangePtr left, ImGuiListClipperRangePtr right) => left.Handle == right.Handle; public static bool operator !=(ImGuiListClipperRangePtr left, ImGuiListClipperRangePtr right) => left.Handle != right.Handle; public static bool operator ==(ImGuiListClipperRangePtr left, ImGuiListClipperRange* right) => left.Handle == right; public static bool operator !=(ImGuiListClipperRangePtr left, ImGuiListClipperRange* right) => left.Handle != right; public bool Equals(ImGuiListClipperRangePtr other) => Handle == other.Handle; /// public override bool Equals(object obj) => obj is ImGuiListClipperRangePtr handle && Equals(handle); /// public override int GetHashCode() => ((nuint)Handle).GetHashCode(); #if NET5_0_OR_GREATER private string DebuggerDisplay => string.Format("ImGuiListClipperRangePtr [0x{0}]", ((nuint)Handle).ToString("X")); #endif /// /// To be documented. /// public ref int Min => ref Unsafe.AsRef(&Handle->Min); /// /// To be documented. /// public ref int Max => ref Unsafe.AsRef(&Handle->Max); /// /// To be documented. /// public ref bool PosToIndexConvert => ref Unsafe.AsRef(&Handle->PosToIndexConvert); /// /// To be documented. /// public ref byte PosToIndexOffsetMin => ref Unsafe.AsRef(&Handle->PosToIndexOffsetMin); /// /// To be documented. /// public ref byte PosToIndexOffsetMax => ref Unsafe.AsRef(&Handle->PosToIndexOffsetMax); } }