com.io7m.jcanephora.renderstate

## Interface JCGLStencilStateType

- All Known Implementing Classes:
    JCGLStencilState, JCGLStencilStateMutable

      @Value.Immutable
       @Value.Modifiable
      public interface JCGLStencilStateType

  Stencil testing/writing state.

- - ### Method Summary

    All Methods Instance Methods Default Methods
    Modifier and Type | Method and Description
    --- | ---
    `default JCGLStencilOperation` | `operationDepthFailBack()`
    `default JCGLStencilOperation` | `operationDepthFailFront()`
    `default JCGLStencilOperation` | `operationPassBack()`
    `default JCGLStencilOperation` | `operationPassFront()`
    `default JCGLStencilOperation` | `operationStencilFailBack()`
    `default JCGLStencilOperation` | `operationStencilFailFront()`
    `default boolean` | `stencilEnabled()`
    `default boolean` | `stencilStrict()` Enable or disable strict mode.
    `default JCGLStencilFunction` | `testFunctionBack()`
    `default JCGLStencilFunction` | `testFunctionFront()`
    `default int` | `testMaskBack()`
    `default int` | `testMaskFront()`
    `default int` | `testReferenceBack()`
    `default int` | `testReferenceFront()`
    `default int` | `writeMaskBackFaces()`
    `default int` | `writeMaskFrontFaces()`

- - ### Method Detail

    - #### stencilEnabled

          @Value.Parameter
           @Value.Default
          default boolean stencilEnabled()

      Returns:
        `true` if stencilling is enabled

    - #### stencilStrict

          @Value.Parameter
           @Value.Default
          default boolean stencilStrict()

      Enable or disable strict mode. If strict mode is enabled, then attempting to enable stencil writing/testing will fail with an exception if the currently bound framebuffer does not have a stencil buffer.
      Returns:
        `true` iff strict mode is enabled

    - #### testFunctionFront

          @Value.Parameter
           @Value.Default
          default JCGLStencilFunction testFunctionFront()

      Returns:
        The stencil function for front faces

    - #### testFunctionBack

          @Value.Parameter
           @Value.Default
          default JCGLStencilFunction testFunctionBack()

      Returns:
        The stencil function for back faces

    - #### testMaskBack

          @Value.Parameter
           @Value.Default
          default int testMaskBack()

      Returns:
        The stencil function mask value for back faces

    - #### testMaskFront

          @Value.Parameter
           @Value.Default
          default int testMaskFront()

      Returns:
        The stencil function mask value for front faces

    - #### testReferenceBack

          @Value.Parameter
           @Value.Default
          default int testReferenceBack()

      Returns:
        The stencil function reference value for back faces

    - #### testReferenceFront

          @Value.Parameter
           @Value.Default
          default int testReferenceFront()

      Returns:
        The stencil function reference value for front faces

    - #### operationStencilFailBack

          @Value.Parameter
           @Value.Default
          default JCGLStencilOperation operationStencilFailBack()

      Returns:
        The operation specified for back faces that fail the stencil test

    - #### operationDepthFailBack

          @Value.Parameter
           @Value.Default
          default JCGLStencilOperation operationDepthFailBack()

      Returns:
        The operation specified for back faces that fail the depth test

    - #### operationPassBack

          @Value.Parameter
           @Value.Default
          default JCGLStencilOperation operationPassBack()

      Returns:
        The operation specified for back faces that pass all tests

    - #### operationStencilFailFront

          @Value.Parameter
           @Value.Default
          default JCGLStencilOperation operationStencilFailFront()

      Returns:
        The operation specified for front faces that fail the stencil test

    - #### operationDepthFailFront

          @Value.Parameter
           @Value.Default
          default JCGLStencilOperation operationDepthFailFront()

      Returns:
        The operation specified for front faces that fail the depth test

    - #### operationPassFront

          @Value.Parameter
           @Value.Default
          default JCGLStencilOperation operationPassFront()

      Returns:
        The operation specified for front faces that pass all tests

    - #### writeMaskFrontFaces

          @Value.Parameter
           @Value.Default
          default int writeMaskFrontFaces()

      Returns:
        The write mask value specified for front faces

    - #### writeMaskBackFaces

          @Value.Parameter
           @Value.Default
          default int writeMaskBackFaces()

      Returns:
        The write mask value specified for back faces

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