com.io7m.r2.core.shaders.types

## Interface R2ShaderFilterUsableType<M>

- Type Parameters:
    `M` - The type of parameter data
  All Superinterfaces:
    com.io7m.jcanephora.core.JCGLResourceUsableType, R2ShaderScreenUsableType<M>, R2ShaderUsableType<M>
  All Known Subinterfaces:
    R2ShaderFilterType<M>
  All Known Implementing Classes:
    R2ShaderFilterBilateralBlurDepthAwareHorizontal4f, R2ShaderFilterBilateralBlurDepthAwareVertical4f, R2ShaderFilterBoxBlurHorizontal4f, R2ShaderFilterBoxBlurVertical4f, R2ShaderFilterDebugEyePosition, R2ShaderFilterDebugEyeZ, R2ShaderFilterEmission, R2ShaderFilterFogDepth, R2ShaderFilterFogDepthLinear, R2ShaderFilterFogDepthQuadratic, R2ShaderFilterFogDepthQuadraticInverse, R2ShaderFilterFXAAA, R2ShaderFilterLightApplicator, R2ShaderFilterOcclusionApplicator, R2ShaderFilterTextureShow, R2ShaderFilterVerifier, R2ShaderSSAO

      public interface R2ShaderFilterUsableType<M>
      extends R2ShaderScreenUsableType<M>

  The type of usable shaders for implementing full-screen filters.

- - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `onReceiveFilterValues(com.io7m.jcanephora.core.api.JCGLInterfaceGL33Type g, R2ShaderParametersFilterType<M> parameters)` Set filter values.

    - ### Methods inherited from interface com.io7m.r2.core.shaders.types.R2ShaderUsableType

      `onActivate, onDeactivate, onValidate, shaderID, shaderParametersType, shaderProgram`

    - ### Methods inherited from interface com.io7m.jcanephora.core.JCGLResourceUsableType

      `isDeleted`

- - ### Method Detail

    - #### onReceiveFilterValues

          void onReceiveFilterValues(com.io7m.jcanephora.core.api.JCGLInterfaceGL33Type g,
                                     R2ShaderParametersFilterType<M> parameters)

      Set filter values.

      This method will be called exactly once between calls to `R2ShaderUsableType.onActivate(JCGLInterfaceGL33Type)` and `R2ShaderUsableType.onValidate()`.

      Parameters:
        `g` - A texture interface
        `parameters` - The current filter parameters

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