com.io7m.r2.core

## Interface R2RenderTargetPoolUsableType<D extends R2RenderTargetDescriptionType,T extends R2RenderTargetUsableType<D>>

- Type Parameters:
    `D` - The type of render target descriptions
    `T` - The type of render targets
  All Known Subinterfaces:
    R2RenderTargetPoolType<D,T>
  All Known Implementing Classes:
    R2AmbientOcclusionBufferPool, R2DepthVarianceBufferPool, R2ImageBufferPool, R2LightBufferPool

      public interface R2RenderTargetPoolUsableType<D extends R2RenderTargetDescriptionType,T extends R2RenderTargetUsableType<D>>

  The type of render target pools.

- - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method and Description
    --- | ---
    `T` | `get(com.io7m.jcanephora.texture_unit_allocator.JCGLTextureUnitContextParentType tc, D desc)` Get a render target from the pool, allocating a new one if necessary.
    `void` | `returnValue(com.io7m.jcanephora.texture_unit_allocator.JCGLTextureUnitContextParentType tc, T target)` Return a render target that has previously been fetched via `get(JCGLTextureUnitContextParentType, R2RenderTargetDescriptionType)`.

- - ### Method Detail

    - #### get

          T get(com.io7m.jcanephora.texture_unit_allocator.JCGLTextureUnitContextParentType tc,
                D desc)

      Get a render target from the pool, allocating a new one if necessary. The returned render target is guaranteed to be different from any other that has been returned from this call and not yet returned with `returnValue(JCGLTextureUnitContextParentType, R2RenderTargetUsableType)` .

      Parameters:
        `tc` - A texture unit context
        `desc` - A render target description
      Returns:
        A (possibly new) render target that must be returned after use
      See Also:
        `returnValue(JCGLTextureUnitContextParentType, R2RenderTargetUsableType)`

    - #### returnValue

          void returnValue(com.io7m.jcanephora.texture_unit_allocator.JCGLTextureUnitContextParentType tc,
                           T target)

      Return a render target that has previously been fetched via `get(JCGLTextureUnitContextParentType, R2RenderTargetDescriptionType)`.
      Parameters:
        `tc` - A texture unit context
        `target` - A render target

Copyright © 2017 <code@io7m.com> http://io7m.com