Class TLcdGLNIOBufferFactory

java.lang.Object
com.luciad.view.opengl.binding.TLcdGLNIOBufferFactory

public class TLcdGLNIOBufferFactory extends Object
A factory that creates NIO buffers which are compatible with the accompanying OpenGL binding. Clients should use this factory to allocate all buffers that are provided as parameters to OpenGL calls. This ensures that the buffers meet any requirements imposed by a particular OpenGL binding with regards to heap vs. direct buffers or byte ordering.

An instance of this class can be obtained via ALcdGLBinding.getNIOBufferFactory().

Since:
2019.0
  • Constructor Details

    • TLcdGLNIOBufferFactory

      protected TLcdGLNIOBufferFactory()
  • Method Details

    • newByteBuffer

      public ByteBuffer newByteBuffer(int aCapacity)
    • newCharBuffer

      public final CharBuffer newCharBuffer(int aCapacity)
    • newShortBuffer

      public final ShortBuffer newShortBuffer(int aCapacity)
    • newIntBuffer

      public final IntBuffer newIntBuffer(int aCapacity)
    • newLongBuffer

      public final LongBuffer newLongBuffer(int aCapacity)
    • newFloatBuffer

      public final FloatBuffer newFloatBuffer(int aCapacity)
    • newDoubleBuffer

      public final DoubleBuffer newDoubleBuffer(int aCapacity)
    • newPointerBuffer

      public ILcdPointerBuffer newPointerBuffer(int aCapacity)
    • newManagedByteBuffer

      public ByteBuffer newManagedByteBuffer(int aCapacity)
    • newManagedCharBuffer

      public final CharBuffer newManagedCharBuffer(int aCapacity)
    • newManagedShortBuffer

      public final ShortBuffer newManagedShortBuffer(int aCapacity)
    • newManagedIntBuffer

      public final IntBuffer newManagedIntBuffer(int aCapacity)
    • newManagedLongBuffer

      public final LongBuffer newManagedLongBuffer(int aCapacity)
    • newManagedFloatBuffer

      public final FloatBuffer newManagedFloatBuffer(int aCapacity)
    • newManagedDoubleBuffer

      public final DoubleBuffer newManagedDoubleBuffer(int aCapacity)
    • copy

      public ByteBuffer copy(byte[] aData)
    • copy

      public ShortBuffer copy(short[] aData)
    • copy

      public IntBuffer copy(int[] aData)
    • copy

      public FloatBuffer copy(float[] aData)
    • copy

      public DoubleBuffer copy(double[] aData)
    • createCompatibleBuffer

      public final Buffer createCompatibleBuffer(Buffer aBuffer, int aCapacity)
    • makeCompatible

      public Buffer makeCompatible(Buffer aBuffer)
    • doWithTempByteBuffer

      public void doWithTempByteBuffer(int aCapacity, Consumer<ByteBuffer> aFunc)
    • doWithTempPointerBuffer

      public void doWithTempPointerBuffer(Buffer[] aBuffers, Consumer<ILcdPointerBuffer> aFunc)