Interface PixbufModuleSizeFunc

All Superinterfaces:
FunctionPointer
Functional Interface:
This is a functional interface and can therefore be used as the assignment target for a lambda expression or method reference.

@FunctionalInterface @Generated("org.javagi.JavaGI") public interface PixbufModuleSizeFunc extends FunctionPointer

Functional interface declaration of the PixbufModuleSizeFunc callback.

See Also:
  • Method Details

    • run

      void run(MemorySegment width, MemorySegment height)

      Defines the type of the function that gets called once the size of the loaded image is known.

      The function is expected to set width and height to the desired size to which the image should be scaled. If a module has no efficient way to achieve the desired scaling during the loading of the image, it may either ignore the size request, or only approximate it - gdk-pixbuf will then perform the required scaling on the completely loaded image.

      If the function sets width or height to zero, the module should interpret this as a hint that it will be closed soon and shouldn't allocate further resources. This convention is used to implement gdk_pixbuf_get_file_info() efficiently.

      Parameters:
      width - pointer to a location containing the current image width
      height - pointer to a location containing the current image height
      Since:
      2.2
    • upcall

      default void upcall(MemorySegment width, MemorySegment height, MemorySegment userData)
      The upcall method is called from native code. The parameters are marshaled and run(MemorySegment, MemorySegment) is executed.
    • toCallback

      default MemorySegment toCallback(Arena arena)
      Creates a native function pointer to the upcall(MemorySegment, MemorySegment, MemorySegment) method.
      Specified by:
      toCallback in interface FunctionPointer
      Parameters:
      arena - the arena in which the function pointer is allocated
      Returns:
      the native function pointer