Interface GlslBufferGroup

All Known Implementing Classes:
AbstractBufferGroup, RayCastingDistBufferGroup, VisualEffectsBufferGroup

public interface GlslBufferGroup
This interface represents a group of registered (not necessarily allocated or bound) buffers. To add a new group, update the BufferGroupDef and provide the implementation in the impl package. Then, update the GlslServices.registerBuffers(com.jogamp.opengl.GLContext, cz.fidentis.analyst.glsl.buffergroups.BufferGroupDef) appropriately. Also, use this service for instantiation.
  • Method Details

    • getSSboBuffer

      SsboBuffer getSSboBuffer(BufferDef bufferName)
      Returns registered SSBO buffer.
      Parameters:
      bufferName - Buffer name
      Returns:
      Allocated buffer or null
    • getImageBuffer

      ImageBuffer getImageBuffer(BufferDef bufferName)
      Returns registered texture image buffer.
      Parameters:
      bufferName - Buffer name
      Returns:
      Allocated buffer or null
    • getTextureAdapterBuffer

      TextureBuffer getTextureAdapterBuffer(BufferDef bufferName)
      Returns registered texture adapter buffer.
      Parameters:
      bufferName - Buffer name
      Returns:
      Allocated buffer or null
    • getFrameBuffer

      FrameBuffer getFrameBuffer(BufferDef bufferName)
      Returns registered frame buffer.
      Parameters:
      bufferName - Buffer name
      Returns:
      Allocated buffer or null
    • getPixelUnpackBuffer

      PixelUnpackBuffer getPixelUnpackBuffer(BufferDef bufferName)
      Returns registered simple object buffer.
      Parameters:
      bufferName - Buffer name
      Returns:
      Allocated buffer or null
    • getAtomicCounterBuffer

      AtomicCounterBuffer getAtomicCounterBuffer(BufferDef bufferName)
      Returns registered atomic counter buffer.
      Parameters:
      bufferName - Buffer name
      Returns:
      Allocated buffer or null
    • bindSsboBuffers

      void bindSsboBuffers()
      Bind all SBBO buffers at once.
    • bindBuffer

      boolean bindBuffer(BufferDef buffer)
      Bind a give buffer only, including non-SSBO buffers.
      Parameters:
      buffer - A buffer to be bound
      Returns:
      false if the buffer does not exist
    • destroyBuffers

      void destroyBuffers()
      Releases used memory on GPU hold by buffers. No buffer methods are allowed to be called after this.