Class GLFWImage

  • All Implemented Interfaces:
    java.lang.AutoCloseable, org.lwjgl.system.NativeResource, org.lwjgl.system.Pointer

    public class GLFWImage
    extends org.lwjgl.system.Struct
    implements org.lwjgl.system.NativeResource
    Image data.

    This describes a single 2D image. See the documentation for each related function to see what the expected pixel format is.

    Layout

    
     struct GLFWimage {
         int width();
         int height();
         unsigned char * pixels(int);
     }
    Since:
    version 2.1
    • Nested Class Summary

      Nested Classes 
      Modifier and Type Class Description
      static class  GLFWImage.Buffer
      An array of GLFWImage structs.
      • Nested classes/interfaces inherited from interface org.lwjgl.system.Pointer

        org.lwjgl.system.Pointer.Default
      • Nested classes/interfaces inherited from class org.lwjgl.system.Struct

        org.lwjgl.system.Struct.StructValidation
    • Field Summary

      Fields 
      Modifier and Type Field Description
      static int ALIGNOF
      The struct alignment in bytes.
      static int HEIGHT
      PIXELS
      The struct member offsets.
      static int SIZEOF
      The struct size in bytes.
      static int WIDTH
      The struct member offsets.
      • Fields inherited from interface org.lwjgl.system.Pointer

        BITS32, BITS64, CLONG_SHIFT, CLONG_SIZE, POINTER_SHIFT, POINTER_SIZE
    • Constructor Summary

      Constructors 
      Constructor Description
      GLFWImage​(java.nio.ByteBuffer container)
      Creates a GLFWImage instance at the current position of the specified ByteBuffer container.
    • Field Detail

      • SIZEOF

        The struct size in bytes.
      • ALIGNOF

        The struct alignment in bytes.
      • WIDTH, HEIGHT, PIXELS

        The struct member offsets.
    • Constructor Detail

      • GLFWImage

        public GLFWImage​(java.nio.ByteBuffer container)
        Creates a GLFWImage instance at the current position of the specified ByteBuffer container. Changes to the buffer's content will be visible to the struct instance and vice versa.

        The created instance holds a strong reference to the container object.

    • Method Detail

      • sizeof

        public int sizeof()
        Specified by:
        sizeof in class org.lwjgl.system.Struct
      • width

        public int width()
        the width, in pixels, of this image
      • height

        public int height()
        the height, in pixels, of this image
      • pixels

        public java.nio.ByteBuffer pixels​(int capacity)
        Parameters:
        capacity - the number of elements in the returned buffer
        Returns:
        the pixel data of this image, arranged left-to-right, top-to-bottom
      • width

        public GLFWImage width​(int value)
        Sets the specified value to the width() field.
      • height

        public GLFWImage height​(int value)
        Sets the specified value to the height() field.
      • pixels

        public GLFWImage pixels​(java.nio.ByteBuffer value)
        Sets the address of the specified ByteBuffer to the pixels(int) field.
      • set

        public GLFWImage set​(int width,
                             int height,
                             java.nio.ByteBuffer pixels)
        Initializes this struct with the specified values.
      • set

        public GLFWImage set​(GLFWImage src)
        Copies the specified struct data to this struct.
        Parameters:
        src - the source struct
        Returns:
        this struct
      • malloc

        public static GLFWImage malloc()
        Returns a new GLFWImage instance allocated with memAlloc. The instance must be explicitly freed.
      • calloc

        public static GLFWImage calloc()
        Returns a new GLFWImage instance allocated with memCalloc. The instance must be explicitly freed.
      • create

        public static GLFWImage create()
        Returns a new GLFWImage instance allocated with BufferUtils.
      • create

        public static GLFWImage create​(long address)
        Returns a new GLFWImage instance for the specified memory address.
      • createSafe

        @Nullable
        public static GLFWImage createSafe​(long address)
        Like create, but returns null if address is NULL.
      • malloc

        public static GLFWImage.Buffer malloc​(int capacity)
        Returns a new GLFWImage.Buffer instance allocated with memAlloc. The instance must be explicitly freed.
        Parameters:
        capacity - the buffer capacity
      • calloc

        public static GLFWImage.Buffer calloc​(int capacity)
        Returns a new GLFWImage.Buffer instance allocated with memCalloc. The instance must be explicitly freed.
        Parameters:
        capacity - the buffer capacity
      • create

        public static GLFWImage.Buffer create​(int capacity)
        Returns a new GLFWImage.Buffer instance allocated with BufferUtils.
        Parameters:
        capacity - the buffer capacity
      • create

        public static GLFWImage.Buffer create​(long address,
                                              int capacity)
        Create a GLFWImage.Buffer instance at the specified memory.
        Parameters:
        address - the memory address
        capacity - the buffer capacity
      • createSafe

        @Nullable
        public static GLFWImage.Buffer createSafe​(long address,
                                                  int capacity)
        Like create, but returns null if address is NULL.
      • mallocStack

        @Deprecated
        public static GLFWImage mallocStack()
        Deprecated.
        Deprecated for removal in 3.4.0. Use malloc(MemoryStack) instead.
      • callocStack

        @Deprecated
        public static GLFWImage callocStack()
        Deprecated.
        Deprecated for removal in 3.4.0. Use calloc(MemoryStack) instead.
      • mallocStack

        @Deprecated
        public static GLFWImage mallocStack​(org.lwjgl.system.MemoryStack stack)
        Deprecated.
        Deprecated for removal in 3.4.0. Use malloc(MemoryStack) instead.
      • callocStack

        @Deprecated
        public static GLFWImage callocStack​(org.lwjgl.system.MemoryStack stack)
        Deprecated.
        Deprecated for removal in 3.4.0. Use calloc(MemoryStack) instead.
      • mallocStack

        @Deprecated
        public static GLFWImage.Buffer mallocStack​(int capacity,
                                                   org.lwjgl.system.MemoryStack stack)
        Deprecated.
        Deprecated for removal in 3.4.0. Use malloc(int, MemoryStack) instead.
      • callocStack

        @Deprecated
        public static GLFWImage.Buffer callocStack​(int capacity,
                                                   org.lwjgl.system.MemoryStack stack)
        Deprecated.
        Deprecated for removal in 3.4.0. Use calloc(int, MemoryStack) instead.
      • malloc

        public static GLFWImage malloc​(org.lwjgl.system.MemoryStack stack)
        Returns a new GLFWImage instance allocated on the specified MemoryStack.
        Parameters:
        stack - the stack from which to allocate
      • calloc

        public static GLFWImage calloc​(org.lwjgl.system.MemoryStack stack)
        Returns a new GLFWImage instance allocated on the specified MemoryStack and initializes all its bits to zero.
        Parameters:
        stack - the stack from which to allocate
      • malloc

        public static GLFWImage.Buffer malloc​(int capacity,
                                              org.lwjgl.system.MemoryStack stack)
        Returns a new GLFWImage.Buffer instance allocated on the specified MemoryStack.
        Parameters:
        stack - the stack from which to allocate
        capacity - the buffer capacity
      • calloc

        public static GLFWImage.Buffer calloc​(int capacity,
                                              org.lwjgl.system.MemoryStack stack)
        Returns a new GLFWImage.Buffer instance allocated on the specified MemoryStack and initializes all its bits to zero.
        Parameters:
        stack - the stack from which to allocate
        capacity - the buffer capacity
      • nwidth

        public static int nwidth​(long struct)
        Unsafe version of width().
      • nheight

        public static int nheight​(long struct)
        Unsafe version of height().
      • npixels

        public static java.nio.ByteBuffer npixels​(long struct,
                                                  int capacity)
        Unsafe version of pixels.
      • nwidth

        public static void nwidth​(long struct,
                                  int value)
        Unsafe version of width.
      • nheight

        public static void nheight​(long struct,
                                   int value)
        Unsafe version of height.
      • npixels

        public static void npixels​(long struct,
                                   java.nio.ByteBuffer value)
        Unsafe version of pixels.
      • validate

        public static void validate​(long struct)
        Validates pointer members that should not be NULL.
        Parameters:
        struct - the struct to validate