com.io7m.jcanephora.renderstate

## Class JCGLStencilState

- java.lang.Object
- - com.io7m.jcanephora.renderstate.JCGLStencilState

- All Implemented Interfaces:
    JCGLStencilStateType

      @Generated(value={"Immutables.generator","JCGLStencilStateType"})
      public final class JCGLStencilState
      extends Object
      implements JCGLStencilStateType

  Stencil testing/writing state.

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Class and Description
    --- | ---
    `static class` | `JCGLStencilState.Builder` Builds instances of type `JCGLStencilState`.

  - ### Method Summary

    All Methods Static Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `static JCGLStencilState.Builder` | `builder()` Creates a builder for `JCGLStencilState`.
    `boolean` | `equals(Object another)` This instance is equal to all instances of `JCGLStencilState` that have equal attribute values.
    `JCGLStencilOperation` | `getOperationDepthFailBack()`
    `JCGLStencilOperation` | `getOperationDepthFailFront()`
    `JCGLStencilOperation` | `getOperationPassBack()`
    `JCGLStencilOperation` | `getOperationPassFront()`
    `JCGLStencilOperation` | `getOperationStencilFailBack()`
    `JCGLStencilOperation` | `getOperationStencilFailFront()`
    `boolean` | `getStencilEnabled()`
    `boolean` | `getStencilStrict()` Enable or disable strict mode.
    `JCGLStencilFunction` | `getTestFunctionBack()`
    `JCGLStencilFunction` | `getTestFunctionFront()`
    `int` | `getTestMaskBack()`
    `int` | `getTestMaskFront()`
    `int` | `getTestReferenceBack()`
    `int` | `getTestReferenceFront()`
    `int` | `getWriteMaskBackFaces()`
    `int` | `getWriteMaskFrontFaces()`
    `int` | `hashCode()` Computes a hash code from attributes: `stencilEnabled`, `stencilStrict`, `testFunctionFront`, `testFunctionBack`, `testMaskBack`, `testMaskFront`, `testReferenceBack`, `testReferenceFront`, `operationStencilFailBack`, `operationDepthFailBack`, `operationPassBack`, `operationStencilFailFront`, `operationDepthFailFront`, `operationPassFront`, `writeMaskFrontFaces`, `writeMaskBackFaces`.
    `static JCGLStencilState` | `of(boolean stencilEnabled, boolean stencilStrict, JCGLStencilFunction testFunctionFront, JCGLStencilFunction testFunctionBack, int testMaskBack, int testMaskFront, int testReferenceBack, int testReferenceFront, JCGLStencilOperation operationStencilFailBack, JCGLStencilOperation operationDepthFailBack, JCGLStencilOperation operationPassBack, JCGLStencilOperation operationStencilFailFront, JCGLStencilOperation operationDepthFailFront, JCGLStencilOperation operationPassFront, int writeMaskFrontFaces, int writeMaskBackFaces)` Construct a new immutable `JCGLStencilState` instance.
    `String` | `toString()` Prints the immutable value `JCGLStencilState` with attribute values.

    - ### Methods inherited from class java.lang.Object

      `clone, finalize, getClass, notify, notifyAll, wait, wait, wait`

- - ### Method Detail

    - #### getStencilEnabled

          public boolean getStencilEnabled()

      Specified by:
        `getStencilEnabled` in interface `JCGLStencilStateType`
      Returns:
        `true` if stencilling is enabled

    - #### getStencilStrict

          public boolean getStencilStrict()

      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.
      Specified by:
        `getStencilStrict` in interface `JCGLStencilStateType`
      Returns:
        `true` iff strict mode is enabled

    - #### getTestFunctionFront

          public JCGLStencilFunction getTestFunctionFront()

      Specified by:
        `getTestFunctionFront` in interface `JCGLStencilStateType`
      Returns:
        The stencil function for front faces

    - #### getTestFunctionBack

          public JCGLStencilFunction getTestFunctionBack()

      Specified by:
        `getTestFunctionBack` in interface `JCGLStencilStateType`
      Returns:
        The stencil function for back faces

    - #### getTestMaskBack

          public int getTestMaskBack()

      Specified by:
        `getTestMaskBack` in interface `JCGLStencilStateType`
      Returns:
        The stencil function mask value for back faces

    - #### getTestMaskFront

          public int getTestMaskFront()

      Specified by:
        `getTestMaskFront` in interface `JCGLStencilStateType`
      Returns:
        The stencil function mask value for front faces

    - #### getTestReferenceBack

          public int getTestReferenceBack()

      Specified by:
        `getTestReferenceBack` in interface `JCGLStencilStateType`
      Returns:
        The stencil function reference value for back faces

    - #### getTestReferenceFront

          public int getTestReferenceFront()

      Specified by:
        `getTestReferenceFront` in interface `JCGLStencilStateType`
      Returns:
        The stencil function reference value for front faces

    - #### getOperationStencilFailBack

          public JCGLStencilOperation getOperationStencilFailBack()

      Specified by:
        `getOperationStencilFailBack` in interface `JCGLStencilStateType`
      Returns:
        The operation specified for back faces that fail the stencil test

    - #### getOperationDepthFailBack

          public JCGLStencilOperation getOperationDepthFailBack()

      Specified by:
        `getOperationDepthFailBack` in interface `JCGLStencilStateType`
      Returns:
        The operation specified for back faces that fail the depth test

    - #### getOperationPassBack

          public JCGLStencilOperation getOperationPassBack()

      Specified by:
        `getOperationPassBack` in interface `JCGLStencilStateType`
      Returns:
        The operation specified for back faces that pass all tests

    - #### getOperationStencilFailFront

          public JCGLStencilOperation getOperationStencilFailFront()

      Specified by:
        `getOperationStencilFailFront` in interface `JCGLStencilStateType`
      Returns:
        The operation specified for front faces that fail the stencil test

    - #### getOperationDepthFailFront

          public JCGLStencilOperation getOperationDepthFailFront()

      Specified by:
        `getOperationDepthFailFront` in interface `JCGLStencilStateType`
      Returns:
        The operation specified for front faces that fail the depth test

    - #### getOperationPassFront

          public JCGLStencilOperation getOperationPassFront()

      Specified by:
        `getOperationPassFront` in interface `JCGLStencilStateType`
      Returns:
        The operation specified for front faces that pass all tests

    - #### getWriteMaskFrontFaces

          public int getWriteMaskFrontFaces()

      Specified by:
        `getWriteMaskFrontFaces` in interface `JCGLStencilStateType`
      Returns:
        The write mask value specified for front faces

    - #### getWriteMaskBackFaces

          public int getWriteMaskBackFaces()

      Specified by:
        `getWriteMaskBackFaces` in interface `JCGLStencilStateType`
      Returns:
        The write mask value specified for back faces

    - #### equals

          public boolean equals(Object another)

      This instance is equal to all instances of `JCGLStencilState` that have equal attribute values.
      Overrides:
        `equals` in class `Object`
      Returns:
        `true` if `this` is equal to `another` instance

    - #### hashCode

          public int hashCode()

      Computes a hash code from attributes: `stencilEnabled`, `stencilStrict`, `testFunctionFront`, `testFunctionBack`, `testMaskBack`, `testMaskFront`, `testReferenceBack`, `testReferenceFront`, `operationStencilFailBack`, `operationDepthFailBack`, `operationPassBack`, `operationStencilFailFront`, `operationDepthFailFront`, `operationPassFront`, `writeMaskFrontFaces`, `writeMaskBackFaces`.
      Overrides:
        `hashCode` in class `Object`
      Returns:
        hashCode value

    - #### toString

          public String toString()

      Prints the immutable value `JCGLStencilState` with attribute values.
      Overrides:
        `toString` in class `Object`
      Returns:
        A string representation of the value

    - #### of

          public static JCGLStencilState of(boolean stencilEnabled,
                                            boolean stencilStrict,
                                            JCGLStencilFunction testFunctionFront,
                                            JCGLStencilFunction testFunctionBack,
                                            int testMaskBack,
                                            int testMaskFront,
                                            int testReferenceBack,
                                            int testReferenceFront,
                                            JCGLStencilOperation operationStencilFailBack,
                                            JCGLStencilOperation operationDepthFailBack,
                                            JCGLStencilOperation operationPassBack,
                                            JCGLStencilOperation operationStencilFailFront,
                                            JCGLStencilOperation operationDepthFailFront,
                                            JCGLStencilOperation operationPassFront,
                                            int writeMaskFrontFaces,
                                            int writeMaskBackFaces)

      Construct a new immutable `JCGLStencilState` instance.
      Parameters:
        `stencilEnabled` - The value for the `stencilEnabled` attribute
        `stencilStrict` - The value for the `stencilStrict` attribute
        `testFunctionFront` - The value for the `testFunctionFront` attribute
        `testFunctionBack` - The value for the `testFunctionBack` attribute
        `testMaskBack` - The value for the `testMaskBack` attribute
        `testMaskFront` - The value for the `testMaskFront` attribute
        `testReferenceBack` - The value for the `testReferenceBack` attribute
        `testReferenceFront` - The value for the `testReferenceFront` attribute
        `operationStencilFailBack` - The value for the `operationStencilFailBack` attribute
        `operationDepthFailBack` - The value for the `operationDepthFailBack` attribute
        `operationPassBack` - The value for the `operationPassBack` attribute
        `operationStencilFailFront` - The value for the `operationStencilFailFront` attribute
        `operationDepthFailFront` - The value for the `operationDepthFailFront` attribute
        `operationPassFront` - The value for the `operationPassFront` attribute
        `writeMaskFrontFaces` - The value for the `writeMaskFrontFaces` attribute
        `writeMaskBackFaces` - The value for the `writeMaskBackFaces` attribute
      Returns:
        An immutable JCGLStencilState instance

    - #### builder

          public static JCGLStencilState.Builder builder()

      Creates a builder for `JCGLStencilState`.
      Returns:
        A new JCGLStencilState builder

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