Class NVGTextRow

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

    public class NVGTextRow
    extends Struct
    implements NativeResource
    A text row.

    Member documentation

    • start – pointer to the input text where the row starts
    • end – pointer to the input text where the row ends (one past the last character
    • next – pointer to the beginning of the next row
    • width – logical width of the row
    • minx – actual left bound of the row. Logical width and bounds can differ because of kerning and some parts over extending.
    • maxx – actual right bound of the row. Logical width and bounds can differ because of kerning and some parts over extending.

    Layout

    
     struct NVGtextRow {
         char * start;
         char * end;
         char * next;
         float width;
         float minx;
         float maxx;
     }
    • Field Detail

      • SIZEOF

        The struct size in bytes.
      • ALIGNOF

        The struct alignment in bytes.
      • START, END, NEXT, WIDTH, MINX, MAXX

        The struct member offsets.
    • Constructor Detail

      • NVGTextRow

        public NVGTextRow​(java.nio.ByteBuffer container)
        Creates a NVGTextRow 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()
        Description copied from class: Struct
        Returns sizeof(struct).
        Specified by:
        sizeof in class Struct
      • start

        public long start()
        Returns the value of the start field.
      • end

        public long end()
        Returns the value of the end field.
      • next

        public long next()
        Returns the value of the next field.
      • width

        public float width()
        Returns the value of the width field.
      • minx

        public float minx()
        Returns the value of the minx field.
      • maxx

        public float maxx()
        Returns the value of the maxx field.
      • malloc

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

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

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

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

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

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

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

        public static NVGTextRow callocStack()
        Returns a new NVGTextRow instance allocated on the thread-local MemoryStack and initializes all its bits to zero.
      • callocStack

        public static NVGTextRow callocStack​(MemoryStack stack)
        Returns a new NVGTextRow instance allocated on the specified MemoryStack and initializes all its bits to zero.
        Parameters:
        stack - the stack from which to allocate
      • callocStack

        public static NVGTextRow.Buffer callocStack​(int capacity)
        Returns a new NVGTextRow.Buffer instance allocated on the thread-local MemoryStack and initializes all its bits to zero.
        Parameters:
        capacity - the buffer capacity
      • callocStack

        public static NVGTextRow.Buffer callocStack​(int capacity,
                                                    MemoryStack stack)
        Returns a new NVGTextRow.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
      • nstart

        public static long nstart​(long struct)
        Unsafe version of start().
      • nend

        public static long nend​(long struct)
        Unsafe version of end().
      • nnext

        public static long nnext​(long struct)
        Unsafe version of next().
      • nwidth

        public static float nwidth​(long struct)
        Unsafe version of width().
      • nminx

        public static float nminx​(long struct)
        Unsafe version of minx().
      • nmaxx

        public static float nmaxx​(long struct)
        Unsafe version of maxx().