com.io7m.r2.core

## Class R2ShadowDepthVariance

- java.lang.Object
- - com.io7m.r2.core.R2ShadowDepthVariance

- All Implemented Interfaces:
    R2ShadowDepthVarianceType, R2ShadowType

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

  The type of depth variance shadows.

- - ### Nested Class Summary

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

  - ### Method Summary

    All Methods Static Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `static R2ShadowDepthVariance.Builder` | `builder()` Creates a builder for `R2ShadowDepthVariance`.
    `static R2ShadowDepthVariance` | `copyOf(R2ShadowDepthVarianceType instance)` Creates an immutable copy of a `R2ShadowDepthVarianceType` value.
    `boolean` | `equals(Object another)` This instance is equal to all instances of `R2ShadowDepthVariance` that have equal attribute values.
    `int` | `hashCode()` Computes a hash code from attributes: `shadowID`, `mapDescription`.
    `R2DepthVarianceBufferDescriptionType` | `mapDescription()`
    `static R2ShadowDepthVariance` | `of(long shadowID, R2DepthVarianceBufferDescriptionType mapDescription)` Construct a new immutable `R2ShadowDepthVariance` instance.
    `long` | `shadowID()`
    `String` | `toString()` Prints the immutable value `R2ShadowDepthVariance` with attribute values.
    `R2ShadowDepthVariance` | `withMapDescription(R2DepthVarianceBufferDescriptionType value)` Copy the current immutable object by setting a value for the `mapDescription` attribute.
    `R2ShadowDepthVariance` | `withShadowID(long value)` Copy the current immutable object by setting a value for the `shadowID` attribute.

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

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

    - ### Methods inherited from interface com.io7m.r2.core.R2ShadowDepthVarianceType

      `lightBleedReduction, matchShadow, minimumFactor, minimumVariance`

- - ### Method Detail

    - #### shadowID

          public long shadowID()

      Specified by:
        `shadowID` in interface `R2ShadowDepthVarianceType`
      Specified by:
        `shadowID` in interface `R2ShadowType`
      Returns:
        The value of the `shadowID` attribute

    - #### mapDescription

          public R2DepthVarianceBufferDescriptionType mapDescription()

      Specified by:
        `mapDescription` in interface `R2ShadowDepthVarianceType`
      Returns:
        The shadow map description

    - #### withShadowID

          public final R2ShadowDepthVariance withShadowID(long value)

      Copy the current immutable object by setting a value for the `shadowID` attribute. A value equality check is used to prevent copying of the same value by returning `this`.
      Parameters:
        `value` - A new value for shadowID
      Returns:
        A modified copy of the `this` object

    - #### withMapDescription

          public final R2ShadowDepthVariance withMapDescription(R2DepthVarianceBufferDescriptionType value)

      Copy the current immutable object by setting a value for the `mapDescription` attribute. A shallow reference equality check is used to prevent copying of the same value by returning `this`.
      Parameters:
        `value` - A new value for mapDescription
      Returns:
        A modified copy of the `this` object

    - #### equals

          public boolean equals(Object another)

      This instance is equal to all instances of `R2ShadowDepthVariance` 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: `shadowID`, `mapDescription`.
      Overrides:
        `hashCode` in class `Object`
      Returns:
        hashCode value

    - #### toString

          public String toString()

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

    - #### of

          public static R2ShadowDepthVariance of(long shadowID,
                                                 R2DepthVarianceBufferDescriptionType mapDescription)

      Construct a new immutable `R2ShadowDepthVariance` instance.
      Parameters:
        `shadowID` - The value for the `shadowID` attribute
        `mapDescription` - The value for the `mapDescription` attribute
      Returns:
        An immutable R2ShadowDepthVariance instance

    - #### copyOf

          public static R2ShadowDepthVariance copyOf(R2ShadowDepthVarianceType instance)

      Creates an immutable copy of a `R2ShadowDepthVarianceType` value. Uses accessors to get values to initialize the new immutable instance. If an instance is already immutable, it is returned as is.
      Parameters:
        `instance` - The instance to copy
      Returns:
        A copied immutable R2ShadowDepthVariance instance

    - #### builder

          public static R2ShadowDepthVariance.Builder builder()

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

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