Class AbstractBufferGroup
java.lang.Object
cz.fidentis.analyst.glsl.buffergroups.impl.AbstractBufferGroup
- All Implemented Interfaces:
GlslBufferGroup
- Direct Known Subclasses:
RayCastingDistBufferGroup
,VisualEffectsBufferGroup
This class represents a group of registered buffers in an OpenGL context.
These buffers nay or may not be allocated.
-
Constructor Summary
ConstructorsConstructorDescriptionAbstractBufferGroup
(com.jogamp.opengl.GLContext glContext, List<AbstractBuffer> buffers) Constructor. -
Method Summary
Modifier and TypeMethodDescriptionboolean
bindBuffer
(BufferDef buffer) Bind a give buffer only, including non-SSBO buffers.void
Bind all SBBO buffers at once.void
Releases used memory on GPU hold by buffers.getAtomicCounterBuffer
(BufferDef bufferName) Returns registered atomic counter buffer.getFrameBuffer
(BufferDef bufferName) Returns registered frame buffer.getImageBuffer
(BufferDef bufferName) Returns registered texture image buffer.getPixelUnpackBuffer
(BufferDef bufferName) Returns registered simple object buffer.getSSboBuffer
(BufferDef bufferName) Returns registered SSBO buffer.getTextureAdapterBuffer
(BufferDef bufferName) Returns registered texture adapter buffer.
-
Constructor Details
-
AbstractBufferGroup
Constructor. It registers buffers in the OpenGL context and initialize their state without any data.- Parameters:
glContext
- Active OpenGL contextbuffers
- List of buffers
-
-
Method Details
-
getSSboBuffer
Description copied from interface:GlslBufferGroup
Returns registered SSBO buffer.- Specified by:
getSSboBuffer
in interfaceGlslBufferGroup
- Parameters:
bufferName
- Buffer name- Returns:
- Allocated buffer or
null
-
getImageBuffer
Description copied from interface:GlslBufferGroup
Returns registered texture image buffer.- Specified by:
getImageBuffer
in interfaceGlslBufferGroup
- Parameters:
bufferName
- Buffer name- Returns:
- Allocated buffer or
null
-
getTextureAdapterBuffer
Description copied from interface:GlslBufferGroup
Returns registered texture adapter buffer.- Specified by:
getTextureAdapterBuffer
in interfaceGlslBufferGroup
- Parameters:
bufferName
- Buffer name- Returns:
- Allocated buffer or
null
-
getFrameBuffer
Description copied from interface:GlslBufferGroup
Returns registered frame buffer.- Specified by:
getFrameBuffer
in interfaceGlslBufferGroup
- Parameters:
bufferName
- Buffer name- Returns:
- Allocated buffer or
null
-
getPixelUnpackBuffer
Description copied from interface:GlslBufferGroup
Returns registered simple object buffer.- Specified by:
getPixelUnpackBuffer
in interfaceGlslBufferGroup
- Parameters:
bufferName
- Buffer name- Returns:
- Allocated buffer or
null
-
getAtomicCounterBuffer
Description copied from interface:GlslBufferGroup
Returns registered atomic counter buffer.- Specified by:
getAtomicCounterBuffer
in interfaceGlslBufferGroup
- Parameters:
bufferName
- Buffer name- Returns:
- Allocated buffer or
null
-
bindSsboBuffers
public void bindSsboBuffers()Description copied from interface:GlslBufferGroup
Bind all SBBO buffers at once.- Specified by:
bindSsboBuffers
in interfaceGlslBufferGroup
-
bindBuffer
Description copied from interface:GlslBufferGroup
Bind a give buffer only, including non-SSBO buffers.- Specified by:
bindBuffer
in interfaceGlslBufferGroup
- Parameters:
buffer
- A buffer to be bound- Returns:
false
if the buffer does not exist
-
destroyBuffers
public void destroyBuffers()Description copied from interface:GlslBufferGroup
Releases used memory on GPU hold by buffers. No buffer methods are allowed to be called after this.- Specified by:
destroyBuffers
in interfaceGlslBufferGroup
-