Package com.jogamp.opengl.util
Class GLPixelBuffer.DefaultGLPixelBufferProvider
java.lang.Object
com.jogamp.opengl.util.GLPixelBuffer.DefaultGLPixelBufferProvider
- All Implemented Interfaces:
GLPixelBuffer.GLPixelBufferProvider
- Enclosing class:
- GLPixelBuffer
public static class GLPixelBuffer.DefaultGLPixelBufferProvider
extends Object
implements GLPixelBuffer.GLPixelBufferProvider
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionallocate(GL gl, PixelFormat.Composition hostPixComp, GLPixelBuffer.GLPixelAttributes pixelAttributes, boolean pack, int width, int height, int depth, int minByteSize) Allocates a newGLPixelBufferobject.booleangetAttributes(GL gl, int componentCount, boolean pack) getHostPixelComp(GLProfile glp, int componentCount) Returns the hostPixelFormat.CompositionmatchingGLandcomponentCountif required by implementation, otherwisenull.
-
Constructor Details
-
DefaultGLPixelBufferProvider
public DefaultGLPixelBufferProvider(boolean allowRowStride) - Parameters:
allowRowStride- Iftrue, allow row-stride, otherwise not. SeegetAllowRowStride()andGLPixelBuffer.requiresNewBuffer(GL, int, int, int).
-
-
Method Details
-
getAllowRowStride
public boolean getAllowRowStride()Description copied from interface:GLPixelBuffer.GLPixelBufferProvider- Specified by:
getAllowRowStridein interfaceGLPixelBuffer.GLPixelBufferProvider
-
getAttributes
Description copied from interface:GLPixelBuffer.GLPixelBufferProvider- Specified by:
getAttributesin interfaceGLPixelBuffer.GLPixelBufferProvider- Parameters:
gl- the corresponding currentGLcontext objectcomponentCount- RGBA component count, i.e. 1 (luminance, alpha or red), 3 (RGB) or 4 (RGBA)pack-truefor read mode GPU -> CPU, e.g.glReadPixels.falsefor write mode CPU -> GPU, e.g.glTexImage2D.
-
getHostPixelComp
Returns the hostPixelFormat.CompositionmatchingGLandcomponentCountif required by implementation, otherwisenull.Returns
null!- Specified by:
getHostPixelCompin interfaceGLPixelBuffer.GLPixelBufferProvider- Parameters:
glp- the corresponding currentGLcontext objectcomponentCount- RGBA component count, i.e. 1 (luminance, alpha or red), 3 (RGB) or 4 (RGBA)
-
allocate
public GLPixelBuffer allocate(GL gl, PixelFormat.Composition hostPixComp, GLPixelBuffer.GLPixelAttributes pixelAttributes, boolean pack, int width, int height, int depth, int minByteSize) Allocates a newGLPixelBufferobject.The minimum required
remainingbyte size equals tominByteSize, if > 0, otherwise utilizeGLBuffers.sizeof(GL, int[], int, int, int, int, int, boolean)to calculate it.Returns an NIO
ByteBuffer.- Specified by:
allocatein interfaceGLPixelBuffer.GLPixelBufferProvider- Parameters:
gl- the corresponding currentGLcontext objecthostPixComp- hostpixel format, i.e. of the source or sink depending onpack, e.g. fetched viaGLPixelBuffer.GLPixelBufferProvider.getHostPixelComp(GLProfile, int). Ifnull,pixelAttributesinstance maybe used or an exception is thrown, depending on implementation semantics.pixelAttributes- the desiredGLPixelBuffer.GLPixelAttributes, e.g. fetched viaGLPixelBuffer.GLPixelBufferProvider.getAttributes(GL, int, boolean)pack-truefor read mode GPU -> CPU, e.g.glReadPixels.falsefor write mode CPU -> GPU, e.g.glTexImage2D.width- in pixelsheight- in pixelsdepth- in pixelsminByteSize- if > 0, the pre-calculated minimum byte-size for the resulting buffer, otherwise ignore.- See Also:
-