All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.purejava.appindicator._GtkThemingEngineClass Maven / Gradle / Ivy

// Generated by jextract

package org.purejava.appindicator;

import java.lang.invoke.*;
import java.lang.foreign.*;
import java.nio.ByteOrder;
import java.util.*;
import java.util.function.*;
import java.util.stream.*;

import static java.lang.foreign.ValueLayout.*;
import static java.lang.foreign.MemoryLayout.PathElement.*;

/**
 * {@snippet lang=c :
 * struct _GtkThemingEngineClass {
 *     GObjectClass parent_class;
 *     void (*render_line)(GtkThemingEngine *, cairo_t *, gdouble, gdouble, gdouble, gdouble);
 *     void (*render_background)(GtkThemingEngine *, cairo_t *, gdouble, gdouble, gdouble, gdouble);
 *     void (*render_frame)(GtkThemingEngine *, cairo_t *, gdouble, gdouble, gdouble, gdouble);
 *     void (*render_frame_gap)(GtkThemingEngine *, cairo_t *, gdouble, gdouble, gdouble, gdouble, GtkPositionType, gdouble, gdouble);
 *     void (*render_extension)(GtkThemingEngine *, cairo_t *, gdouble, gdouble, gdouble, gdouble, GtkPositionType);
 *     void (*render_check)(GtkThemingEngine *, cairo_t *, gdouble, gdouble, gdouble, gdouble);
 *     void (*render_option)(GtkThemingEngine *, cairo_t *, gdouble, gdouble, gdouble, gdouble);
 *     void (*render_arrow)(GtkThemingEngine *, cairo_t *, gdouble, gdouble, gdouble, gdouble);
 *     void (*render_expander)(GtkThemingEngine *, cairo_t *, gdouble, gdouble, gdouble, gdouble);
 *     void (*render_focus)(GtkThemingEngine *, cairo_t *, gdouble, gdouble, gdouble, gdouble);
 *     void (*render_layout)(GtkThemingEngine *, cairo_t *, gdouble, gdouble, PangoLayout *);
 *     void (*render_slider)(GtkThemingEngine *, cairo_t *, gdouble, gdouble, gdouble, gdouble, GtkOrientation);
 *     void (*render_handle)(GtkThemingEngine *, cairo_t *, gdouble, gdouble, gdouble, gdouble);
 *     void (*render_activity)(GtkThemingEngine *, cairo_t *, gdouble, gdouble, gdouble, gdouble);
 *     GdkPixbuf *(*render_icon_pixbuf)(GtkThemingEngine *, const GtkIconSource *, GtkIconSize);
 *     void (*render_icon)(GtkThemingEngine *, cairo_t *, GdkPixbuf *, gdouble, gdouble);
 *     void (*render_icon_surface)(GtkThemingEngine *, cairo_t *, cairo_surface_t *, gdouble, gdouble);
 *     gpointer padding[14];
 * }
 * }
 */
public class _GtkThemingEngineClass {

    _GtkThemingEngineClass() {
        // Should not be called directly
    }

    private static final GroupLayout $LAYOUT = MemoryLayout.structLayout(
        _GObjectClass.layout().withName("parent_class"),
        app_indicator_h.C_POINTER.withName("render_line"),
        app_indicator_h.C_POINTER.withName("render_background"),
        app_indicator_h.C_POINTER.withName("render_frame"),
        app_indicator_h.C_POINTER.withName("render_frame_gap"),
        app_indicator_h.C_POINTER.withName("render_extension"),
        app_indicator_h.C_POINTER.withName("render_check"),
        app_indicator_h.C_POINTER.withName("render_option"),
        app_indicator_h.C_POINTER.withName("render_arrow"),
        app_indicator_h.C_POINTER.withName("render_expander"),
        app_indicator_h.C_POINTER.withName("render_focus"),
        app_indicator_h.C_POINTER.withName("render_layout"),
        app_indicator_h.C_POINTER.withName("render_slider"),
        app_indicator_h.C_POINTER.withName("render_handle"),
        app_indicator_h.C_POINTER.withName("render_activity"),
        app_indicator_h.C_POINTER.withName("render_icon_pixbuf"),
        app_indicator_h.C_POINTER.withName("render_icon"),
        app_indicator_h.C_POINTER.withName("render_icon_surface"),
        MemoryLayout.sequenceLayout(14, app_indicator_h.C_POINTER).withName("padding")
    ).withName("_GtkThemingEngineClass");

    /**
     * The layout of this struct
     */
    public static final GroupLayout layout() {
        return $LAYOUT;
    }

    private static final GroupLayout parent_class$LAYOUT = (GroupLayout)$LAYOUT.select(groupElement("parent_class"));

    /**
     * Layout for field:
     * {@snippet lang=c :
     * GObjectClass parent_class
     * }
     */
    public static final GroupLayout parent_class$layout() {
        return parent_class$LAYOUT;
    }

    private static final long parent_class$OFFSET = 0;

    /**
     * Offset for field:
     * {@snippet lang=c :
     * GObjectClass parent_class
     * }
     */
    public static final long parent_class$offset() {
        return parent_class$OFFSET;
    }

    /**
     * Getter for field:
     * {@snippet lang=c :
     * GObjectClass parent_class
     * }
     */
    public static MemorySegment parent_class(MemorySegment struct) {
        return struct.asSlice(parent_class$OFFSET, parent_class$LAYOUT.byteSize());
    }

    /**
     * Setter for field:
     * {@snippet lang=c :
     * GObjectClass parent_class
     * }
     */
    public static void parent_class(MemorySegment struct, MemorySegment fieldValue) {
        MemorySegment.copy(fieldValue, 0L, struct, parent_class$OFFSET, parent_class$LAYOUT.byteSize());
    }

    /**
     * {@snippet lang=c :
     * void (*render_line)(GtkThemingEngine *, cairo_t *, gdouble, gdouble, gdouble, gdouble)
     * }
     */
    public class render_line {

        /**
         * The function pointer signature, expressed as a functional interface
         */
        public interface Function {
            void apply(MemorySegment _x0, MemorySegment _x1, double _x2, double _x3, double _x4, double _x5);
        }

        private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid(
            app_indicator_h.C_POINTER,
            app_indicator_h.C_POINTER,
            app_indicator_h.C_DOUBLE,
            app_indicator_h.C_DOUBLE,
            app_indicator_h.C_DOUBLE,
            app_indicator_h.C_DOUBLE
        );

        /**
         * The descriptor of this function pointer
         */
        public static FunctionDescriptor descriptor() {
            return $DESC;
        }

        private static final MethodHandle UP$MH = app_indicator_h.upcallHandle(render_line.Function.class, "apply", $DESC);

        /**
         * Allocates a new upcall stub, whose implementation is defined by {@code fi}.
         * The lifetime of the returned segment is managed by {@code arena}
         */
        public static MemorySegment allocate(render_line.Function fi, Arena arena) {
            return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena);
        }

        private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC);

        /**
         * Invoke the upcall stub {@code funcPtr}, with given parameters
         */
        public static void invoke(MemorySegment funcPtr,MemorySegment _x0, MemorySegment _x1, double _x2, double _x3, double _x4, double _x5) {
            try {
                 DOWN$MH.invokeExact(funcPtr, _x0, _x1, _x2, _x3, _x4, _x5);
            } catch (Throwable ex$) {
                throw new AssertionError("should not reach here", ex$);
            }
        }
    }

    private static final AddressLayout render_line$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("render_line"));

    /**
     * Layout for field:
     * {@snippet lang=c :
     * void (*render_line)(GtkThemingEngine *, cairo_t *, gdouble, gdouble, gdouble, gdouble)
     * }
     */
    public static final AddressLayout render_line$layout() {
        return render_line$LAYOUT;
    }

    private static final long render_line$OFFSET = 136;

    /**
     * Offset for field:
     * {@snippet lang=c :
     * void (*render_line)(GtkThemingEngine *, cairo_t *, gdouble, gdouble, gdouble, gdouble)
     * }
     */
    public static final long render_line$offset() {
        return render_line$OFFSET;
    }

    /**
     * Getter for field:
     * {@snippet lang=c :
     * void (*render_line)(GtkThemingEngine *, cairo_t *, gdouble, gdouble, gdouble, gdouble)
     * }
     */
    public static MemorySegment render_line(MemorySegment struct) {
        return struct.get(render_line$LAYOUT, render_line$OFFSET);
    }

    /**
     * Setter for field:
     * {@snippet lang=c :
     * void (*render_line)(GtkThemingEngine *, cairo_t *, gdouble, gdouble, gdouble, gdouble)
     * }
     */
    public static void render_line(MemorySegment struct, MemorySegment fieldValue) {
        struct.set(render_line$LAYOUT, render_line$OFFSET, fieldValue);
    }

    /**
     * {@snippet lang=c :
     * void (*render_background)(GtkThemingEngine *, cairo_t *, gdouble, gdouble, gdouble, gdouble)
     * }
     */
    public class render_background {

        /**
         * The function pointer signature, expressed as a functional interface
         */
        public interface Function {
            void apply(MemorySegment _x0, MemorySegment _x1, double _x2, double _x3, double _x4, double _x5);
        }

        private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid(
            app_indicator_h.C_POINTER,
            app_indicator_h.C_POINTER,
            app_indicator_h.C_DOUBLE,
            app_indicator_h.C_DOUBLE,
            app_indicator_h.C_DOUBLE,
            app_indicator_h.C_DOUBLE
        );

        /**
         * The descriptor of this function pointer
         */
        public static FunctionDescriptor descriptor() {
            return $DESC;
        }

        private static final MethodHandle UP$MH = app_indicator_h.upcallHandle(render_background.Function.class, "apply", $DESC);

        /**
         * Allocates a new upcall stub, whose implementation is defined by {@code fi}.
         * The lifetime of the returned segment is managed by {@code arena}
         */
        public static MemorySegment allocate(render_background.Function fi, Arena arena) {
            return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena);
        }

        private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC);

        /**
         * Invoke the upcall stub {@code funcPtr}, with given parameters
         */
        public static void invoke(MemorySegment funcPtr,MemorySegment _x0, MemorySegment _x1, double _x2, double _x3, double _x4, double _x5) {
            try {
                 DOWN$MH.invokeExact(funcPtr, _x0, _x1, _x2, _x3, _x4, _x5);
            } catch (Throwable ex$) {
                throw new AssertionError("should not reach here", ex$);
            }
        }
    }

    private static final AddressLayout render_background$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("render_background"));

    /**
     * Layout for field:
     * {@snippet lang=c :
     * void (*render_background)(GtkThemingEngine *, cairo_t *, gdouble, gdouble, gdouble, gdouble)
     * }
     */
    public static final AddressLayout render_background$layout() {
        return render_background$LAYOUT;
    }

    private static final long render_background$OFFSET = 144;

    /**
     * Offset for field:
     * {@snippet lang=c :
     * void (*render_background)(GtkThemingEngine *, cairo_t *, gdouble, gdouble, gdouble, gdouble)
     * }
     */
    public static final long render_background$offset() {
        return render_background$OFFSET;
    }

    /**
     * Getter for field:
     * {@snippet lang=c :
     * void (*render_background)(GtkThemingEngine *, cairo_t *, gdouble, gdouble, gdouble, gdouble)
     * }
     */
    public static MemorySegment render_background(MemorySegment struct) {
        return struct.get(render_background$LAYOUT, render_background$OFFSET);
    }

    /**
     * Setter for field:
     * {@snippet lang=c :
     * void (*render_background)(GtkThemingEngine *, cairo_t *, gdouble, gdouble, gdouble, gdouble)
     * }
     */
    public static void render_background(MemorySegment struct, MemorySegment fieldValue) {
        struct.set(render_background$LAYOUT, render_background$OFFSET, fieldValue);
    }

    /**
     * {@snippet lang=c :
     * void (*render_frame)(GtkThemingEngine *, cairo_t *, gdouble, gdouble, gdouble, gdouble)
     * }
     */
    public class render_frame {

        /**
         * The function pointer signature, expressed as a functional interface
         */
        public interface Function {
            void apply(MemorySegment _x0, MemorySegment _x1, double _x2, double _x3, double _x4, double _x5);
        }

        private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid(
            app_indicator_h.C_POINTER,
            app_indicator_h.C_POINTER,
            app_indicator_h.C_DOUBLE,
            app_indicator_h.C_DOUBLE,
            app_indicator_h.C_DOUBLE,
            app_indicator_h.C_DOUBLE
        );

        /**
         * The descriptor of this function pointer
         */
        public static FunctionDescriptor descriptor() {
            return $DESC;
        }

        private static final MethodHandle UP$MH = app_indicator_h.upcallHandle(render_frame.Function.class, "apply", $DESC);

        /**
         * Allocates a new upcall stub, whose implementation is defined by {@code fi}.
         * The lifetime of the returned segment is managed by {@code arena}
         */
        public static MemorySegment allocate(render_frame.Function fi, Arena arena) {
            return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena);
        }

        private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC);

        /**
         * Invoke the upcall stub {@code funcPtr}, with given parameters
         */
        public static void invoke(MemorySegment funcPtr,MemorySegment _x0, MemorySegment _x1, double _x2, double _x3, double _x4, double _x5) {
            try {
                 DOWN$MH.invokeExact(funcPtr, _x0, _x1, _x2, _x3, _x4, _x5);
            } catch (Throwable ex$) {
                throw new AssertionError("should not reach here", ex$);
            }
        }
    }

    private static final AddressLayout render_frame$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("render_frame"));

    /**
     * Layout for field:
     * {@snippet lang=c :
     * void (*render_frame)(GtkThemingEngine *, cairo_t *, gdouble, gdouble, gdouble, gdouble)
     * }
     */
    public static final AddressLayout render_frame$layout() {
        return render_frame$LAYOUT;
    }

    private static final long render_frame$OFFSET = 152;

    /**
     * Offset for field:
     * {@snippet lang=c :
     * void (*render_frame)(GtkThemingEngine *, cairo_t *, gdouble, gdouble, gdouble, gdouble)
     * }
     */
    public static final long render_frame$offset() {
        return render_frame$OFFSET;
    }

    /**
     * Getter for field:
     * {@snippet lang=c :
     * void (*render_frame)(GtkThemingEngine *, cairo_t *, gdouble, gdouble, gdouble, gdouble)
     * }
     */
    public static MemorySegment render_frame(MemorySegment struct) {
        return struct.get(render_frame$LAYOUT, render_frame$OFFSET);
    }

    /**
     * Setter for field:
     * {@snippet lang=c :
     * void (*render_frame)(GtkThemingEngine *, cairo_t *, gdouble, gdouble, gdouble, gdouble)
     * }
     */
    public static void render_frame(MemorySegment struct, MemorySegment fieldValue) {
        struct.set(render_frame$LAYOUT, render_frame$OFFSET, fieldValue);
    }

    /**
     * {@snippet lang=c :
     * void (*render_frame_gap)(GtkThemingEngine *, cairo_t *, gdouble, gdouble, gdouble, gdouble, GtkPositionType, gdouble, gdouble)
     * }
     */
    public class render_frame_gap {

        /**
         * The function pointer signature, expressed as a functional interface
         */
        public interface Function {
            void apply(MemorySegment _x0, MemorySegment _x1, double _x2, double _x3, double _x4, double _x5, int _x6, double _x7, double _x8);
        }

        private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid(
            app_indicator_h.C_POINTER,
            app_indicator_h.C_POINTER,
            app_indicator_h.C_DOUBLE,
            app_indicator_h.C_DOUBLE,
            app_indicator_h.C_DOUBLE,
            app_indicator_h.C_DOUBLE,
            app_indicator_h.C_INT,
            app_indicator_h.C_DOUBLE,
            app_indicator_h.C_DOUBLE
        );

        /**
         * The descriptor of this function pointer
         */
        public static FunctionDescriptor descriptor() {
            return $DESC;
        }

        private static final MethodHandle UP$MH = app_indicator_h.upcallHandle(render_frame_gap.Function.class, "apply", $DESC);

        /**
         * Allocates a new upcall stub, whose implementation is defined by {@code fi}.
         * The lifetime of the returned segment is managed by {@code arena}
         */
        public static MemorySegment allocate(render_frame_gap.Function fi, Arena arena) {
            return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena);
        }

        private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC);

        /**
         * Invoke the upcall stub {@code funcPtr}, with given parameters
         */
        public static void invoke(MemorySegment funcPtr,MemorySegment _x0, MemorySegment _x1, double _x2, double _x3, double _x4, double _x5, int _x6, double _x7, double _x8) {
            try {
                 DOWN$MH.invokeExact(funcPtr, _x0, _x1, _x2, _x3, _x4, _x5, _x6, _x7, _x8);
            } catch (Throwable ex$) {
                throw new AssertionError("should not reach here", ex$);
            }
        }
    }

    private static final AddressLayout render_frame_gap$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("render_frame_gap"));

    /**
     * Layout for field:
     * {@snippet lang=c :
     * void (*render_frame_gap)(GtkThemingEngine *, cairo_t *, gdouble, gdouble, gdouble, gdouble, GtkPositionType, gdouble, gdouble)
     * }
     */
    public static final AddressLayout render_frame_gap$layout() {
        return render_frame_gap$LAYOUT;
    }

    private static final long render_frame_gap$OFFSET = 160;

    /**
     * Offset for field:
     * {@snippet lang=c :
     * void (*render_frame_gap)(GtkThemingEngine *, cairo_t *, gdouble, gdouble, gdouble, gdouble, GtkPositionType, gdouble, gdouble)
     * }
     */
    public static final long render_frame_gap$offset() {
        return render_frame_gap$OFFSET;
    }

    /**
     * Getter for field:
     * {@snippet lang=c :
     * void (*render_frame_gap)(GtkThemingEngine *, cairo_t *, gdouble, gdouble, gdouble, gdouble, GtkPositionType, gdouble, gdouble)
     * }
     */
    public static MemorySegment render_frame_gap(MemorySegment struct) {
        return struct.get(render_frame_gap$LAYOUT, render_frame_gap$OFFSET);
    }

    /**
     * Setter for field:
     * {@snippet lang=c :
     * void (*render_frame_gap)(GtkThemingEngine *, cairo_t *, gdouble, gdouble, gdouble, gdouble, GtkPositionType, gdouble, gdouble)
     * }
     */
    public static void render_frame_gap(MemorySegment struct, MemorySegment fieldValue) {
        struct.set(render_frame_gap$LAYOUT, render_frame_gap$OFFSET, fieldValue);
    }

    /**
     * {@snippet lang=c :
     * void (*render_extension)(GtkThemingEngine *, cairo_t *, gdouble, gdouble, gdouble, gdouble, GtkPositionType)
     * }
     */
    public class render_extension {

        /**
         * The function pointer signature, expressed as a functional interface
         */
        public interface Function {
            void apply(MemorySegment _x0, MemorySegment _x1, double _x2, double _x3, double _x4, double _x5, int _x6);
        }

        private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid(
            app_indicator_h.C_POINTER,
            app_indicator_h.C_POINTER,
            app_indicator_h.C_DOUBLE,
            app_indicator_h.C_DOUBLE,
            app_indicator_h.C_DOUBLE,
            app_indicator_h.C_DOUBLE,
            app_indicator_h.C_INT
        );

        /**
         * The descriptor of this function pointer
         */
        public static FunctionDescriptor descriptor() {
            return $DESC;
        }

        private static final MethodHandle UP$MH = app_indicator_h.upcallHandle(render_extension.Function.class, "apply", $DESC);

        /**
         * Allocates a new upcall stub, whose implementation is defined by {@code fi}.
         * The lifetime of the returned segment is managed by {@code arena}
         */
        public static MemorySegment allocate(render_extension.Function fi, Arena arena) {
            return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena);
        }

        private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC);

        /**
         * Invoke the upcall stub {@code funcPtr}, with given parameters
         */
        public static void invoke(MemorySegment funcPtr,MemorySegment _x0, MemorySegment _x1, double _x2, double _x3, double _x4, double _x5, int _x6) {
            try {
                 DOWN$MH.invokeExact(funcPtr, _x0, _x1, _x2, _x3, _x4, _x5, _x6);
            } catch (Throwable ex$) {
                throw new AssertionError("should not reach here", ex$);
            }
        }
    }

    private static final AddressLayout render_extension$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("render_extension"));

    /**
     * Layout for field:
     * {@snippet lang=c :
     * void (*render_extension)(GtkThemingEngine *, cairo_t *, gdouble, gdouble, gdouble, gdouble, GtkPositionType)
     * }
     */
    public static final AddressLayout render_extension$layout() {
        return render_extension$LAYOUT;
    }

    private static final long render_extension$OFFSET = 168;

    /**
     * Offset for field:
     * {@snippet lang=c :
     * void (*render_extension)(GtkThemingEngine *, cairo_t *, gdouble, gdouble, gdouble, gdouble, GtkPositionType)
     * }
     */
    public static final long render_extension$offset() {
        return render_extension$OFFSET;
    }

    /**
     * Getter for field:
     * {@snippet lang=c :
     * void (*render_extension)(GtkThemingEngine *, cairo_t *, gdouble, gdouble, gdouble, gdouble, GtkPositionType)
     * }
     */
    public static MemorySegment render_extension(MemorySegment struct) {
        return struct.get(render_extension$LAYOUT, render_extension$OFFSET);
    }

    /**
     * Setter for field:
     * {@snippet lang=c :
     * void (*render_extension)(GtkThemingEngine *, cairo_t *, gdouble, gdouble, gdouble, gdouble, GtkPositionType)
     * }
     */
    public static void render_extension(MemorySegment struct, MemorySegment fieldValue) {
        struct.set(render_extension$LAYOUT, render_extension$OFFSET, fieldValue);
    }

    /**
     * {@snippet lang=c :
     * void (*render_check)(GtkThemingEngine *, cairo_t *, gdouble, gdouble, gdouble, gdouble)
     * }
     */
    public class render_check {

        /**
         * The function pointer signature, expressed as a functional interface
         */
        public interface Function {
            void apply(MemorySegment _x0, MemorySegment _x1, double _x2, double _x3, double _x4, double _x5);
        }

        private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid(
            app_indicator_h.C_POINTER,
            app_indicator_h.C_POINTER,
            app_indicator_h.C_DOUBLE,
            app_indicator_h.C_DOUBLE,
            app_indicator_h.C_DOUBLE,
            app_indicator_h.C_DOUBLE
        );

        /**
         * The descriptor of this function pointer
         */
        public static FunctionDescriptor descriptor() {
            return $DESC;
        }

        private static final MethodHandle UP$MH = app_indicator_h.upcallHandle(render_check.Function.class, "apply", $DESC);

        /**
         * Allocates a new upcall stub, whose implementation is defined by {@code fi}.
         * The lifetime of the returned segment is managed by {@code arena}
         */
        public static MemorySegment allocate(render_check.Function fi, Arena arena) {
            return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena);
        }

        private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC);

        /**
         * Invoke the upcall stub {@code funcPtr}, with given parameters
         */
        public static void invoke(MemorySegment funcPtr,MemorySegment _x0, MemorySegment _x1, double _x2, double _x3, double _x4, double _x5) {
            try {
                 DOWN$MH.invokeExact(funcPtr, _x0, _x1, _x2, _x3, _x4, _x5);
            } catch (Throwable ex$) {
                throw new AssertionError("should not reach here", ex$);
            }
        }
    }

    private static final AddressLayout render_check$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("render_check"));

    /**
     * Layout for field:
     * {@snippet lang=c :
     * void (*render_check)(GtkThemingEngine *, cairo_t *, gdouble, gdouble, gdouble, gdouble)
     * }
     */
    public static final AddressLayout render_check$layout() {
        return render_check$LAYOUT;
    }

    private static final long render_check$OFFSET = 176;

    /**
     * Offset for field:
     * {@snippet lang=c :
     * void (*render_check)(GtkThemingEngine *, cairo_t *, gdouble, gdouble, gdouble, gdouble)
     * }
     */
    public static final long render_check$offset() {
        return render_check$OFFSET;
    }

    /**
     * Getter for field:
     * {@snippet lang=c :
     * void (*render_check)(GtkThemingEngine *, cairo_t *, gdouble, gdouble, gdouble, gdouble)
     * }
     */
    public static MemorySegment render_check(MemorySegment struct) {
        return struct.get(render_check$LAYOUT, render_check$OFFSET);
    }

    /**
     * Setter for field:
     * {@snippet lang=c :
     * void (*render_check)(GtkThemingEngine *, cairo_t *, gdouble, gdouble, gdouble, gdouble)
     * }
     */
    public static void render_check(MemorySegment struct, MemorySegment fieldValue) {
        struct.set(render_check$LAYOUT, render_check$OFFSET, fieldValue);
    }

    /**
     * {@snippet lang=c :
     * void (*render_option)(GtkThemingEngine *, cairo_t *, gdouble, gdouble, gdouble, gdouble)
     * }
     */
    public class render_option {

        /**
         * The function pointer signature, expressed as a functional interface
         */
        public interface Function {
            void apply(MemorySegment _x0, MemorySegment _x1, double _x2, double _x3, double _x4, double _x5);
        }

        private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid(
            app_indicator_h.C_POINTER,
            app_indicator_h.C_POINTER,
            app_indicator_h.C_DOUBLE,
            app_indicator_h.C_DOUBLE,
            app_indicator_h.C_DOUBLE,
            app_indicator_h.C_DOUBLE
        );

        /**
         * The descriptor of this function pointer
         */
        public static FunctionDescriptor descriptor() {
            return $DESC;
        }

        private static final MethodHandle UP$MH = app_indicator_h.upcallHandle(render_option.Function.class, "apply", $DESC);

        /**
         * Allocates a new upcall stub, whose implementation is defined by {@code fi}.
         * The lifetime of the returned segment is managed by {@code arena}
         */
        public static MemorySegment allocate(render_option.Function fi, Arena arena) {
            return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena);
        }

        private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC);

        /**
         * Invoke the upcall stub {@code funcPtr}, with given parameters
         */
        public static void invoke(MemorySegment funcPtr,MemorySegment _x0, MemorySegment _x1, double _x2, double _x3, double _x4, double _x5) {
            try {
                 DOWN$MH.invokeExact(funcPtr, _x0, _x1, _x2, _x3, _x4, _x5);
            } catch (Throwable ex$) {
                throw new AssertionError("should not reach here", ex$);
            }
        }
    }

    private static final AddressLayout render_option$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("render_option"));

    /**
     * Layout for field:
     * {@snippet lang=c :
     * void (*render_option)(GtkThemingEngine *, cairo_t *, gdouble, gdouble, gdouble, gdouble)
     * }
     */
    public static final AddressLayout render_option$layout() {
        return render_option$LAYOUT;
    }

    private static final long render_option$OFFSET = 184;

    /**
     * Offset for field:
     * {@snippet lang=c :
     * void (*render_option)(GtkThemingEngine *, cairo_t *, gdouble, gdouble, gdouble, gdouble)
     * }
     */
    public static final long render_option$offset() {
        return render_option$OFFSET;
    }

    /**
     * Getter for field:
     * {@snippet lang=c :
     * void (*render_option)(GtkThemingEngine *, cairo_t *, gdouble, gdouble, gdouble, gdouble)
     * }
     */
    public static MemorySegment render_option(MemorySegment struct) {
        return struct.get(render_option$LAYOUT, render_option$OFFSET);
    }

    /**
     * Setter for field:
     * {@snippet lang=c :
     * void (*render_option)(GtkThemingEngine *, cairo_t *, gdouble, gdouble, gdouble, gdouble)
     * }
     */
    public static void render_option(MemorySegment struct, MemorySegment fieldValue) {
        struct.set(render_option$LAYOUT, render_option$OFFSET, fieldValue);
    }

    /**
     * {@snippet lang=c :
     * void (*render_arrow)(GtkThemingEngine *, cairo_t *, gdouble, gdouble, gdouble, gdouble)
     * }
     */
    public class render_arrow {

        /**
         * The function pointer signature, expressed as a functional interface
         */
        public interface Function {
            void apply(MemorySegment _x0, MemorySegment _x1, double _x2, double _x3, double _x4, double _x5);
        }

        private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid(
            app_indicator_h.C_POINTER,
            app_indicator_h.C_POINTER,
            app_indicator_h.C_DOUBLE,
            app_indicator_h.C_DOUBLE,
            app_indicator_h.C_DOUBLE,
            app_indicator_h.C_DOUBLE
        );

        /**
         * The descriptor of this function pointer
         */
        public static FunctionDescriptor descriptor() {
            return $DESC;
        }

        private static final MethodHandle UP$MH = app_indicator_h.upcallHandle(render_arrow.Function.class, "apply", $DESC);

        /**
         * Allocates a new upcall stub, whose implementation is defined by {@code fi}.
         * The lifetime of the returned segment is managed by {@code arena}
         */
        public static MemorySegment allocate(render_arrow.Function fi, Arena arena) {
            return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena);
        }

        private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC);

        /**
         * Invoke the upcall stub {@code funcPtr}, with given parameters
         */
        public static void invoke(MemorySegment funcPtr,MemorySegment _x0, MemorySegment _x1, double _x2, double _x3, double _x4, double _x5) {
            try {
                 DOWN$MH.invokeExact(funcPtr, _x0, _x1, _x2, _x3, _x4, _x5);
            } catch (Throwable ex$) {
                throw new AssertionError("should not reach here", ex$);
            }
        }
    }

    private static final AddressLayout render_arrow$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("render_arrow"));

    /**
     * Layout for field:
     * {@snippet lang=c :
     * void (*render_arrow)(GtkThemingEngine *, cairo_t *, gdouble, gdouble, gdouble, gdouble)
     * }
     */
    public static final AddressLayout render_arrow$layout() {
        return render_arrow$LAYOUT;
    }

    private static final long render_arrow$OFFSET = 192;

    /**
     * Offset for field:
     * {@snippet lang=c :
     * void (*render_arrow)(GtkThemingEngine *, cairo_t *, gdouble, gdouble, gdouble, gdouble)
     * }
     */
    public static final long render_arrow$offset() {
        return render_arrow$OFFSET;
    }

    /**
     * Getter for field:
     * {@snippet lang=c :
     * void (*render_arrow)(GtkThemingEngine *, cairo_t *, gdouble, gdouble, gdouble, gdouble)
     * }
     */
    public static MemorySegment render_arrow(MemorySegment struct) {
        return struct.get(render_arrow$LAYOUT, render_arrow$OFFSET);
    }

    /**
     * Setter for field:
     * {@snippet lang=c :
     * void (*render_arrow)(GtkThemingEngine *, cairo_t *, gdouble, gdouble, gdouble, gdouble)
     * }
     */
    public static void render_arrow(MemorySegment struct, MemorySegment fieldValue) {
        struct.set(render_arrow$LAYOUT, render_arrow$OFFSET, fieldValue);
    }

    /**
     * {@snippet lang=c :
     * void (*render_expander)(GtkThemingEngine *, cairo_t *, gdouble, gdouble, gdouble, gdouble)
     * }
     */
    public class render_expander {

        /**
         * The function pointer signature, expressed as a functional interface
         */
        public interface Function {
            void apply(MemorySegment _x0, MemorySegment _x1, double _x2, double _x3, double _x4, double _x5);
        }

        private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid(
            app_indicator_h.C_POINTER,
            app_indicator_h.C_POINTER,
            app_indicator_h.C_DOUBLE,
            app_indicator_h.C_DOUBLE,
            app_indicator_h.C_DOUBLE,
            app_indicator_h.C_DOUBLE
        );

        /**
         * The descriptor of this function pointer
         */
        public static FunctionDescriptor descriptor() {
            return $DESC;
        }

        private static final MethodHandle UP$MH = app_indicator_h.upcallHandle(render_expander.Function.class, "apply", $DESC);

        /**
         * Allocates a new upcall stub, whose implementation is defined by {@code fi}.
         * The lifetime of the returned segment is managed by {@code arena}
         */
        public static MemorySegment allocate(render_expander.Function fi, Arena arena) {
            return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena);
        }

        private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC);

        /**
         * Invoke the upcall stub {@code funcPtr}, with given parameters
         */
        public static void invoke(MemorySegment funcPtr,MemorySegment _x0, MemorySegment _x1, double _x2, double _x3, double _x4, double _x5) {
            try {
                 DOWN$MH.invokeExact(funcPtr, _x0, _x1, _x2, _x3, _x4, _x5);
            } catch (Throwable ex$) {
                throw new AssertionError("should not reach here", ex$);
            }
        }
    }

    private static final AddressLayout render_expander$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("render_expander"));

    /**
     * Layout for field:
     * {@snippet lang=c :
     * void (*render_expander)(GtkThemingEngine *, cairo_t *, gdouble, gdouble, gdouble, gdouble)
     * }
     */
    public static final AddressLayout render_expander$layout() {
        return render_expander$LAYOUT;
    }

    private static final long render_expander$OFFSET = 200;

    /**
     * Offset for field:
     * {@snippet lang=c :
     * void (*render_expander)(GtkThemingEngine *, cairo_t *, gdouble, gdouble, gdouble, gdouble)
     * }
     */
    public static final long render_expander$offset() {
        return render_expander$OFFSET;
    }

    /**
     * Getter for field:
     * {@snippet lang=c :
     * void (*render_expander)(GtkThemingEngine *, cairo_t *, gdouble, gdouble, gdouble, gdouble)
     * }
     */
    public static MemorySegment render_expander(MemorySegment struct) {
        return struct.get(render_expander$LAYOUT, render_expander$OFFSET);
    }

    /**
     * Setter for field:
     * {@snippet lang=c :
     * void (*render_expander)(GtkThemingEngine *, cairo_t *, gdouble, gdouble, gdouble, gdouble)
     * }
     */
    public static void render_expander(MemorySegment struct, MemorySegment fieldValue) {
        struct.set(render_expander$LAYOUT, render_expander$OFFSET, fieldValue);
    }

    /**
     * {@snippet lang=c :
     * void (*render_focus)(GtkThemingEngine *, cairo_t *, gdouble, gdouble, gdouble, gdouble)
     * }
     */
    public class render_focus {

        /**
         * The function pointer signature, expressed as a functional interface
         */
        public interface Function {
            void apply(MemorySegment _x0, MemorySegment _x1, double _x2, double _x3, double _x4, double _x5);
        }

        private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid(
            app_indicator_h.C_POINTER,
            app_indicator_h.C_POINTER,
            app_indicator_h.C_DOUBLE,
            app_indicator_h.C_DOUBLE,
            app_indicator_h.C_DOUBLE,
            app_indicator_h.C_DOUBLE
        );

        /**
         * The descriptor of this function pointer
         */
        public static FunctionDescriptor descriptor() {
            return $DESC;
        }

        private static final MethodHandle UP$MH = app_indicator_h.upcallHandle(render_focus.Function.class, "apply", $DESC);

        /**
         * Allocates a new upcall stub, whose implementation is defined by {@code fi}.
         * The lifetime of the returned segment is managed by {@code arena}
         */
        public static MemorySegment allocate(render_focus.Function fi, Arena arena) {
            return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena);
        }

        private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC);

        /**
         * Invoke the upcall stub {@code funcPtr}, with given parameters
         */
        public static void invoke(MemorySegment funcPtr,MemorySegment _x0, MemorySegment _x1, double _x2, double _x3, double _x4, double _x5) {
            try {
                 DOWN$MH.invokeExact(funcPtr, _x0, _x1, _x2, _x3, _x4, _x5);
            } catch (Throwable ex$) {
                throw new AssertionError("should not reach here", ex$);
            }
        }
    }

    private static final AddressLayout render_focus$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("render_focus"));

    /**
     * Layout for field:
     * {@snippet lang=c :
     * void (*render_focus)(GtkThemingEngine *, cairo_t *, gdouble, gdouble, gdouble, gdouble)
     * }
     */
    public static final AddressLayout render_focus$layout() {
        return render_focus$LAYOUT;
    }

    private static final long render_focus$OFFSET = 208;

    /**
     * Offset for field:
     * {@snippet lang=c :
     * void (*render_focus)(GtkThemingEngine *, cairo_t *, gdouble, gdouble, gdouble, gdouble)
     * }
     */
    public static final long render_focus$offset() {
        return render_focus$OFFSET;
    }

    /**
     * Getter for field:
     * {@snippet lang=c :
     * void (*render_focus)(GtkThemingEngine *, cairo_t *, gdouble, gdouble, gdouble, gdouble)
     * }
     */
    public static MemorySegment render_focus(MemorySegment struct) {
        return struct.get(render_focus$LAYOUT, render_focus$OFFSET);
    }

    /**
     * Setter for field:
     * {@snippet lang=c :
     * void (*render_focus)(GtkThemingEngine *, cairo_t *, gdouble, gdouble, gdouble, gdouble)
     * }
     */
    public static void render_focus(MemorySegment struct, MemorySegment fieldValue) {
        struct.set(render_focus$LAYOUT, render_focus$OFFSET, fieldValue);
    }

    /**
     * {@snippet lang=c :
     * void (*render_layout)(GtkThemingEngine *, cairo_t *, gdouble, gdouble, PangoLayout *)
     * }
     */
    public class render_layout {

        /**
         * The function pointer signature, expressed as a functional interface
         */
        public interface Function {
            void apply(MemorySegment _x0, MemorySegment _x1, double _x2, double _x3, MemorySegment _x4);
        }

        private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid(
            app_indicator_h.C_POINTER,
            app_indicator_h.C_POINTER,
            app_indicator_h.C_DOUBLE,
            app_indicator_h.C_DOUBLE,
            app_indicator_h.C_POINTER
        );

        /**
         * The descriptor of this function pointer
         */
        public static FunctionDescriptor descriptor() {
            return $DESC;
        }

        private static final MethodHandle UP$MH = app_indicator_h.upcallHandle(render_layout.Function.class, "apply", $DESC);

        /**
         * Allocates a new upcall stub, whose implementation is defined by {@code fi}.
         * The lifetime of the returned segment is managed by {@code arena}
         */
        public static MemorySegment allocate(render_layout.Function fi, Arena arena) {
            return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena);
        }

        private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC);

        /**
         * Invoke the upcall stub {@code funcPtr}, with given parameters
         */
        public static void invoke(MemorySegment funcPtr,MemorySegment _x0, MemorySegment _x1, double _x2, double _x3, MemorySegment _x4) {
            try {
                 DOWN$MH.invokeExact(funcPtr, _x0, _x1, _x2, _x3, _x4);
            } catch (Throwable ex$) {
                throw new AssertionError("should not reach here", ex$);
            }
        }
    }

    private static final AddressLayout render_layout$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("render_layout"));

    /**
     * Layout for field:
     * {@snippet lang=c :
     * void (*render_layout)(GtkThemingEngine *, cairo_t *, gdouble, gdouble, PangoLayout *)
     * }
     */
    public static final AddressLayout render_layout$layout() {
        return render_layout$LAYOUT;
    }

    private static final long render_layout$OFFSET = 216;

    /**
     * Offset for field:
     * {@snippet lang=c :
     * void (*render_layout)(GtkThemingEngine *, cairo_t *, gdouble, gdouble, PangoLayout *)
     * }
     */
    public static final long render_layout$offset() {
        return render_layout$OFFSET;
    }

    /**
     * Getter for field:
     * {@snippet lang=c :
     * void (*render_layout)(GtkThemingEngine *, cairo_t *, gdouble, gdouble, PangoLayout *)
     * }
     */
    public static MemorySegment render_layout(MemorySegment struct) {
        return struct.get(render_layout$LAYOUT, render_layout$OFFSET);
    }

    /**
     * Setter for field:
     * {@snippet lang=c :
     * void (*render_layout)(GtkThemingEngine *, cairo_t *, gdouble, gdouble, PangoLayout *)
     * }
     */
    public static void render_layout(MemorySegment struct, MemorySegment fieldValue) {
        struct.set(render_layout$LAYOUT, render_layout$OFFSET, fieldValue);
    }

    /**
     * {@snippet lang=c :
     * void (*render_slider)(GtkThemingEngine *, cairo_t *, gdouble, gdouble, gdouble, gdouble, GtkOrientation)
     * }
     */
    public class render_slider {

        /**
         * The function pointer signature, expressed as a functional interface
         */
        public interface Function {
            void apply(MemorySegment _x0, MemorySegment _x1, double _x2, double _x3, double _x4, double _x5, int _x6);
        }

        private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid(
            app_indicator_h.C_POINTER,
            app_indicator_h.C_POINTER,
            app_indicator_h.C_DOUBLE,
            app_indicator_h.C_DOUBLE,
            app_indicator_h.C_DOUBLE,
            app_indicator_h.C_DOUBLE,
            app_indicator_h.C_INT
        );

        /**
         * The descriptor of this function pointer
         */
        public static FunctionDescriptor descriptor() {
            return $DESC;
        }

        private static final MethodHandle UP$MH = app_indicator_h.upcallHandle(render_slider.Function.class, "apply", $DESC);

        /**
         * Allocates a new upcall stub, whose implementation is defined by {@code fi}.
         * The lifetime of the returned segment is managed by {@code arena}
         */
        public static MemorySegment allocate(render_slider.Function fi, Arena arena) {
            return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena);
        }

        private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC);

        /**
         * Invoke the upcall stub {@code funcPtr}, with given parameters
         */
        public static void invoke(MemorySegment funcPtr,MemorySegment _x0, MemorySegment _x1, double _x2, double _x3, double _x4, double _x5, int _x6) {
            try {
                 DOWN$MH.invokeExact(funcPtr, _x0, _x1, _x2, _x3, _x4, _x5, _x6);
            } catch (Throwable ex$) {
                throw new AssertionError("should not reach here", ex$);
            }
        }
    }

    private static final AddressLayout render_slider$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("render_slider"));

    /**
     * Layout for field:
     * {@snippet lang=c :
     * void (*render_slider)(GtkThemingEngine *, cairo_t *, gdouble, gdouble, gdouble, gdouble, GtkOrientation)
     * }
     */
    public static final AddressLayout render_slider$layout() {
        return render_slider$LAYOUT;
    }

    private static final long render_slider$OFFSET = 224;

    /**
     * Offset for field:
     * {@snippet lang=c :
     * void (*render_slider)(GtkThemingEngine *, cairo_t *, gdouble, gdouble, gdouble, gdouble, GtkOrientation)
     * }
     */
    public static final long render_slider$offset() {
        return render_slider$OFFSET;
    }

    /**
     * Getter for field:
     * {@snippet lang=c :
     * void (*render_slider)(GtkThemingEngine *, cairo_t *, gdouble, gdouble, gdouble, gdouble, GtkOrientation)
     * }
     */
    public static MemorySegment render_slider(MemorySegment struct) {
        return struct.get(render_slider$LAYOUT, render_slider$OFFSET);
    }

    /**
     * Setter for field:
     * {@snippet lang=c :
     * void (*render_slider)(GtkThemingEngine *, cairo_t *, gdouble, gdouble, gdouble, gdouble, GtkOrientation)
     * }
     */
    public static void render_slider(MemorySegment struct, MemorySegment fieldValue) {
        struct.set(render_slider$LAYOUT, render_slider$OFFSET, fieldValue);
    }

    /**
     * {@snippet lang=c :
     * void (*render_handle)(GtkThemingEngine *, cairo_t *, gdouble, gdouble, gdouble, gdouble)
     * }
     */
    public class render_handle {

        /**
         * The function pointer signature, expressed as a functional interface
         */
        public interface Function {
            void apply(MemorySegment _x0, MemorySegment _x1, double _x2, double _x3, double _x4, double _x5);
        }

        private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid(
            app_indicator_h.C_POINTER,
            app_indicator_h.C_POINTER,
            app_indicator_h.C_DOUBLE,
            app_indicator_h.C_DOUBLE,
            app_indicator_h.C_DOUBLE,
            app_indicator_h.C_DOUBLE
        );

        /**
         * The descriptor of this function pointer
         */
        public static FunctionDescriptor descriptor() {
            return $DESC;
        }

        private static final MethodHandle UP$MH = app_indicator_h.upcallHandle(render_handle.Function.class, "apply", $DESC);

        /**
         * Allocates a new upcall stub, whose implementation is defined by {@code fi}.
         * The lifetime of the returned segment is managed by {@code arena}
         */
        public static MemorySegment allocate(render_handle.Function fi, Arena arena) {
            return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena);
        }

        private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC);

        /**
         * Invoke the upcall stub {@code funcPtr}, with given parameters
         */
        public static void invoke(MemorySegment funcPtr,MemorySegment _x0, MemorySegment _x1, double _x2, double _x3, double _x4, double _x5) {
            try {
                 DOWN$MH.invokeExact(funcPtr, _x0, _x1, _x2, _x3, _x4, _x5);
            } catch (Throwable ex$) {
                throw new AssertionError("should not reach here", ex$);
            }
        }
    }

    private static final AddressLayout render_handle$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("render_handle"));

    /**
     * Layout for field:
     * {@snippet lang=c :
     * void (*render_handle)(GtkThemingEngine *, cairo_t *, gdouble, gdouble, gdouble, gdouble)
     * }
     */
    public static final AddressLayout render_handle$layout() {
        return render_handle$LAYOUT;
    }

    private static final long render_handle$OFFSET = 232;

    /**
     * Offset for field:
     * {@snippet lang=c :
     * void (*render_handle)(GtkThemingEngine *, cairo_t *, gdouble, gdouble, gdouble, gdouble)
     * }
     */
    public static final long render_handle$offset() {
        return render_handle$OFFSET;
    }

    /**
     * Getter for field:
     * {@snippet lang=c :
     * void (*render_handle)(GtkThemingEngine *, cairo_t *, gdouble, gdouble, gdouble, gdouble)
     * }
     */
    public static MemorySegment render_handle(MemorySegment struct) {
        return struct.get(render_handle$LAYOUT, render_handle$OFFSET);
    }

    /**
     * Setter for field:
     * {@snippet lang=c :
     * void (*render_handle)(GtkThemingEngine *, cairo_t *, gdouble, gdouble, gdouble, gdouble)
     * }
     */
    public static void render_handle(MemorySegment struct, MemorySegment fieldValue) {
        struct.set(render_handle$LAYOUT, render_handle$OFFSET, fieldValue);
    }

    /**
     * {@snippet lang=c :
     * void (*render_activity)(GtkThemingEngine *, cairo_t *, gdouble, gdouble, gdouble, gdouble)
     * }
     */
    public class render_activity {

        /**
         * The function pointer signature, expressed as a functional interface
         */
        public interface Function {
            void apply(MemorySegment _x0, MemorySegment _x1, double _x2, double _x3, double _x4, double _x5);
        }

        private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid(
            app_indicator_h.C_POINTER,
            app_indicator_h.C_POINTER,
            app_indicator_h.C_DOUBLE,
            app_indicator_h.C_DOUBLE,
            app_indicator_h.C_DOUBLE,
            app_indicator_h.C_DOUBLE
        );

        /**
         * The descriptor of this function pointer
         */
        public static FunctionDescriptor descriptor() {
            return $DESC;
        }

        private static final MethodHandle UP$MH = app_indicator_h.upcallHandle(render_activity.Function.class, "apply", $DESC);

        /**
         * Allocates a new upcall stub, whose implementation is defined by {@code fi}.
         * The lifetime of the returned segment is managed by {@code arena}
         */
        public static MemorySegment allocate(render_activity.Function fi, Arena arena) {
            return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena);
        }

        private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC);

        /**
         * Invoke the upcall stub {@code funcPtr}, with given parameters
         */
        public static void invoke(MemorySegment funcPtr,MemorySegment _x0, MemorySegment _x1, double _x2, double _x3, double _x4, double _x5) {
            try {
                 DOWN$MH.invokeExact(funcPtr, _x0, _x1, _x2, _x3, _x4, _x5);
            } catch (Throwable ex$) {
                throw new AssertionError("should not reach here", ex$);
            }
        }
    }

    private static final AddressLayout render_activity$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("render_activity"));

    /**
     * Layout for field:
     * {@snippet lang=c :
     * void (*render_activity)(GtkThemingEngine *, cairo_t *, gdouble, gdouble, gdouble, gdouble)
     * }
     */
    public static final AddressLayout render_activity$layout() {
        return render_activity$LAYOUT;
    }

    private static final long render_activity$OFFSET = 240;

    /**
     * Offset for field:
     * {@snippet lang=c :
     * void (*render_activity)(GtkThemingEngine *, cairo_t *, gdouble, gdouble, gdouble, gdouble)
     * }
     */
    public static final long render_activity$offset() {
        return render_activity$OFFSET;
    }

    /**
     * Getter for field:
     * {@snippet lang=c :
     * void (*render_activity)(GtkThemingEngine *, cairo_t *, gdouble, gdouble, gdouble, gdouble)
     * }
     */
    public static MemorySegment render_activity(MemorySegment struct) {
        return struct.get(render_activity$LAYOUT, render_activity$OFFSET);
    }

    /**
     * Setter for field:
     * {@snippet lang=c :
     * void (*render_activity)(GtkThemingEngine *, cairo_t *, gdouble, gdouble, gdouble, gdouble)
     * }
     */
    public static void render_activity(MemorySegment struct, MemorySegment fieldValue) {
        struct.set(render_activity$LAYOUT, render_activity$OFFSET, fieldValue);
    }

    /**
     * {@snippet lang=c :
     * GdkPixbuf *(*render_icon_pixbuf)(GtkThemingEngine *, const GtkIconSource *, GtkIconSize)
     * }
     */
    public class render_icon_pixbuf {

        /**
         * The function pointer signature, expressed as a functional interface
         */
        public interface Function {
            MemorySegment apply(MemorySegment _x0, MemorySegment _x1, int _x2);
        }

        private static final FunctionDescriptor $DESC = FunctionDescriptor.of(
            app_indicator_h.C_POINTER,
            app_indicator_h.C_POINTER,
            app_indicator_h.C_POINTER,
            app_indicator_h.C_INT
        );

        /**
         * The descriptor of this function pointer
         */
        public static FunctionDescriptor descriptor() {
            return $DESC;
        }

        private static final MethodHandle UP$MH = app_indicator_h.upcallHandle(render_icon_pixbuf.Function.class, "apply", $DESC);

        /**
         * Allocates a new upcall stub, whose implementation is defined by {@code fi}.
         * The lifetime of the returned segment is managed by {@code arena}
         */
        public static MemorySegment allocate(render_icon_pixbuf.Function fi, Arena arena) {
            return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena);
        }

        private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC);

        /**
         * Invoke the upcall stub {@code funcPtr}, with given parameters
         */
        public static MemorySegment invoke(MemorySegment funcPtr,MemorySegment _x0, MemorySegment _x1, int _x2) {
            try {
                return (MemorySegment) DOWN$MH.invokeExact(funcPtr, _x0, _x1, _x2);
            } catch (Throwable ex$) {
                throw new AssertionError("should not reach here", ex$);
            }
        }
    }

    private static final AddressLayout render_icon_pixbuf$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("render_icon_pixbuf"));

    /**
     * Layout for field:
     * {@snippet lang=c :
     * GdkPixbuf *(*render_icon_pixbuf)(GtkThemingEngine *, const GtkIconSource *, GtkIconSize)
     * }
     */
    public static final AddressLayout render_icon_pixbuf$layout() {
        return render_icon_pixbuf$LAYOUT;
    }

    private static final long render_icon_pixbuf$OFFSET = 248;

    /**
     * Offset for field:
     * {@snippet lang=c :
     * GdkPixbuf *(*render_icon_pixbuf)(GtkThemingEngine *, const GtkIconSource *, GtkIconSize)
     * }
     */
    public static final long render_icon_pixbuf$offset() {
        return render_icon_pixbuf$OFFSET;
    }

    /**
     * Getter for field:
     * {@snippet lang=c :
     * GdkPixbuf *(*render_icon_pixbuf)(GtkThemingEngine *, const GtkIconSource *, GtkIconSize)
     * }
     */
    public static MemorySegment render_icon_pixbuf(MemorySegment struct) {
        return struct.get(render_icon_pixbuf$LAYOUT, render_icon_pixbuf$OFFSET);
    }

    /**
     * Setter for field:
     * {@snippet lang=c :
     * GdkPixbuf *(*render_icon_pixbuf)(GtkThemingEngine *, const GtkIconSource *, GtkIconSize)
     * }
     */
    public static void render_icon_pixbuf(MemorySegment struct, MemorySegment fieldValue) {
        struct.set(render_icon_pixbuf$LAYOUT, render_icon_pixbuf$OFFSET, fieldValue);
    }

    /**
     * {@snippet lang=c :
     * void (*render_icon)(GtkThemingEngine *, cairo_t *, GdkPixbuf *, gdouble, gdouble)
     * }
     */
    public class render_icon {

        /**
         * The function pointer signature, expressed as a functional interface
         */
        public interface Function {
            void apply(MemorySegment _x0, MemorySegment _x1, MemorySegment _x2, double _x3, double _x4);
        }

        private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid(
            app_indicator_h.C_POINTER,
            app_indicator_h.C_POINTER,
            app_indicator_h.C_POINTER,
            app_indicator_h.C_DOUBLE,
            app_indicator_h.C_DOUBLE
        );

        /**
         * The descriptor of this function pointer
         */
        public static FunctionDescriptor descriptor() {
            return $DESC;
        }

        private static final MethodHandle UP$MH = app_indicator_h.upcallHandle(render_icon.Function.class, "apply", $DESC);

        /**
         * Allocates a new upcall stub, whose implementation is defined by {@code fi}.
         * The lifetime of the returned segment is managed by {@code arena}
         */
        public static MemorySegment allocate(render_icon.Function fi, Arena arena) {
            return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena);
        }

        private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC);

        /**
         * Invoke the upcall stub {@code funcPtr}, with given parameters
         */
        public static void invoke(MemorySegment funcPtr,MemorySegment _x0, MemorySegment _x1, MemorySegment _x2, double _x3, double _x4) {
            try {
                 DOWN$MH.invokeExact(funcPtr, _x0, _x1, _x2, _x3, _x4);
            } catch (Throwable ex$) {
                throw new AssertionError("should not reach here", ex$);
            }
        }
    }

    private static final AddressLayout render_icon$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("render_icon"));

    /**
     * Layout for field:
     * {@snippet lang=c :
     * void (*render_icon)(GtkThemingEngine *, cairo_t *, GdkPixbuf *, gdouble, gdouble)
     * }
     */
    public static final AddressLayout render_icon$layout() {
        return render_icon$LAYOUT;
    }

    private static final long render_icon$OFFSET = 256;

    /**
     * Offset for field:
     * {@snippet lang=c :
     * void (*render_icon)(GtkThemingEngine *, cairo_t *, GdkPixbuf *, gdouble, gdouble)
     * }
     */
    public static final long render_icon$offset() {
        return render_icon$OFFSET;
    }

    /**
     * Getter for field:
     * {@snippet lang=c :
     * void (*render_icon)(GtkThemingEngine *, cairo_t *, GdkPixbuf *, gdouble, gdouble)
     * }
     */
    public static MemorySegment render_icon(MemorySegment struct) {
        return struct.get(render_icon$LAYOUT, render_icon$OFFSET);
    }

    /**
     * Setter for field:
     * {@snippet lang=c :
     * void (*render_icon)(GtkThemingEngine *, cairo_t *, GdkPixbuf *, gdouble, gdouble)
     * }
     */
    public static void render_icon(MemorySegment struct, MemorySegment fieldValue) {
        struct.set(render_icon$LAYOUT, render_icon$OFFSET, fieldValue);
    }

    /**
     * {@snippet lang=c :
     * void (*render_icon_surface)(GtkThemingEngine *, cairo_t *, cairo_surface_t *, gdouble, gdouble)
     * }
     */
    public class render_icon_surface {

        /**
         * The function pointer signature, expressed as a functional interface
         */
        public interface Function {
            void apply(MemorySegment _x0, MemorySegment _x1, MemorySegment _x2, double _x3, double _x4);
        }

        private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid(
            app_indicator_h.C_POINTER,
            app_indicator_h.C_POINTER,
            app_indicator_h.C_POINTER,
            app_indicator_h.C_DOUBLE,
            app_indicator_h.C_DOUBLE
        );

        /**
         * The descriptor of this function pointer
         */
        public static FunctionDescriptor descriptor() {
            return $DESC;
        }

        private static final MethodHandle UP$MH = app_indicator_h.upcallHandle(render_icon_surface.Function.class, "apply", $DESC);

        /**
         * Allocates a new upcall stub, whose implementation is defined by {@code fi}.
         * The lifetime of the returned segment is managed by {@code arena}
         */
        public static MemorySegment allocate(render_icon_surface.Function fi, Arena arena) {
            return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena);
        }

        private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC);

        /**
         * Invoke the upcall stub {@code funcPtr}, with given parameters
         */
        public static void invoke(MemorySegment funcPtr,MemorySegment _x0, MemorySegment _x1, MemorySegment _x2, double _x3, double _x4) {
            try {
                 DOWN$MH.invokeExact(funcPtr, _x0, _x1, _x2, _x3, _x4);
            } catch (Throwable ex$) {
                throw new AssertionError("should not reach here", ex$);
            }
        }
    }

    private static final AddressLayout render_icon_surface$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("render_icon_surface"));

    /**
     * Layout for field:
     * {@snippet lang=c :
     * void (*render_icon_surface)(GtkThemingEngine *, cairo_t *, cairo_surface_t *, gdouble, gdouble)
     * }
     */
    public static final AddressLayout render_icon_surface$layout() {
        return render_icon_surface$LAYOUT;
    }

    private static final long render_icon_surface$OFFSET = 264;

    /**
     * Offset for field:
     * {@snippet lang=c :
     * void (*render_icon_surface)(GtkThemingEngine *, cairo_t *, cairo_surface_t *, gdouble, gdouble)
     * }
     */
    public static final long render_icon_surface$offset() {
        return render_icon_surface$OFFSET;
    }

    /**
     * Getter for field:
     * {@snippet lang=c :
     * void (*render_icon_surface)(GtkThemingEngine *, cairo_t *, cairo_surface_t *, gdouble, gdouble)
     * }
     */
    public static MemorySegment render_icon_surface(MemorySegment struct) {
        return struct.get(render_icon_surface$LAYOUT, render_icon_surface$OFFSET);
    }

    /**
     * Setter for field:
     * {@snippet lang=c :
     * void (*render_icon_surface)(GtkThemingEngine *, cairo_t *, cairo_surface_t *, gdouble, gdouble)
     * }
     */
    public static void render_icon_surface(MemorySegment struct, MemorySegment fieldValue) {
        struct.set(render_icon_surface$LAYOUT, render_icon_surface$OFFSET, fieldValue);
    }

    private static final SequenceLayout padding$LAYOUT = (SequenceLayout)$LAYOUT.select(groupElement("padding"));

    /**
     * Layout for field:
     * {@snippet lang=c :
     * gpointer padding[14]
     * }
     */
    public static final SequenceLayout padding$layout() {
        return padding$LAYOUT;
    }

    private static final long padding$OFFSET = 272;

    /**
     * Offset for field:
     * {@snippet lang=c :
     * gpointer padding[14]
     * }
     */
    public static final long padding$offset() {
        return padding$OFFSET;
    }

    /**
     * Getter for field:
     * {@snippet lang=c :
     * gpointer padding[14]
     * }
     */
    public static MemorySegment padding(MemorySegment struct) {
        return struct.asSlice(padding$OFFSET, padding$LAYOUT.byteSize());
    }

    /**
     * Setter for field:
     * {@snippet lang=c :
     * gpointer padding[14]
     * }
     */
    public static void padding(MemorySegment struct, MemorySegment fieldValue) {
        MemorySegment.copy(fieldValue, 0L, struct, padding$OFFSET, padding$LAYOUT.byteSize());
    }

    private static long[] padding$DIMS = { 14 };

    /**
     * Dimensions for array field:
     * {@snippet lang=c :
     * gpointer padding[14]
     * }
     */
    public static long[] padding$dimensions() {
        return padding$DIMS;
    }
    private static final VarHandle padding$ELEM_HANDLE = padding$LAYOUT.varHandle(sequenceElement());

    /**
     * Indexed getter for field:
     * {@snippet lang=c :
     * gpointer padding[14]
     * }
     */
    public static MemorySegment padding(MemorySegment struct, long index0) {
        return (MemorySegment)padding$ELEM_HANDLE.get(struct, 0L, index0);
    }

    /**
     * Indexed setter for field:
     * {@snippet lang=c :
     * gpointer padding[14]
     * }
     */
    public static void padding(MemorySegment struct, long index0, MemorySegment fieldValue) {
        padding$ELEM_HANDLE.set(struct, 0L, index0, fieldValue);
    }

    /**
     * Obtains a slice of {@code arrayParam} which selects the array element at {@code index}.
     * The returned segment has address {@code arrayParam.address() + index * layout().byteSize()}
     */
    public static MemorySegment asSlice(MemorySegment array, long index) {
        return array.asSlice(layout().byteSize() * index);
    }

    /**
     * The size (in bytes) of this struct
     */
    public static long sizeof() { return layout().byteSize(); }

    /**
     * Allocate a segment of size {@code layout().byteSize()} using {@code allocator}
     */
    public static MemorySegment allocate(SegmentAllocator allocator) {
        return allocator.allocate(layout());
    }

    /**
     * Allocate an array of size {@code elementCount} using {@code allocator}.
     * The returned segment has size {@code elementCount * layout().byteSize()}.
     */
    public static MemorySegment allocateArray(long elementCount, SegmentAllocator allocator) {
        return allocator.allocate(MemoryLayout.sequenceLayout(elementCount, layout()));
    }

    /**
     * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction) (if any).
     * The returned segment has size {@code layout().byteSize()}
     */
    public static MemorySegment reinterpret(MemorySegment addr, Arena arena, Consumer cleanup) {
        return reinterpret(addr, 1, arena, cleanup);
    }

    /**
     * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction) (if any).
     * The returned segment has size {@code elementCount * layout().byteSize()}
     */
    public static MemorySegment reinterpret(MemorySegment addr, long elementCount, Arena arena, Consumer cleanup) {
        return addr.reinterpret(layout().byteSize() * elementCount, arena, cleanup);
    }
}





© 2015 - 2025 Weber Informatics LLC | Privacy Policy