com.io7m.r2.filters

## Class R2BilateralBlurParameters

- java.lang.Object
- - com.io7m.r2.filters.R2BilateralBlurParameters

- All Implemented Interfaces:
    R2BilateralBlurParametersType

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

  The type of blur parameters specific to bilateral blurs.

- - ### Nested Class Summary

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

  - ### Method Summary

    All Methods Static Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `int` | `blurPasses()` The number of blur passes that will be used.
    `float` | `blurScale()` The amount by which the image will be scaled during the blur operation.
    `com.io7m.jcanephora.core.JCGLFramebufferBlitFilter` | `blurScaleFilter()`
    `float` | `blurSharpness()`
    `float` | `blurSize()`
    `static R2BilateralBlurParameters.Builder` | `builder()` Creates a builder for `R2BilateralBlurParameters`.
    `static R2BilateralBlurParameters` | `copyOf(R2BilateralBlurParametersType instance)` Creates an immutable copy of a `R2BilateralBlurParametersType` value.
    `boolean` | `equals(Object another)` This instance is equal to all instances of `R2BilateralBlurParameters` that have equal attribute values.
    `int` | `hashCode()` Computes a hash code from attributes: `blurSize`, `blurScale`, `blurPasses`, `blurSharpness`, `blurScaleFilter`.
    `static R2BilateralBlurParameters` | `of(float blurSize, float blurScale, int blurPasses, float blurSharpness, com.io7m.jcanephora.core.JCGLFramebufferBlitFilter blurScaleFilter)` Construct a new immutable `R2BilateralBlurParameters` instance.
    `String` | `toString()` Prints the immutable value `R2BilateralBlurParameters` with attribute values.
    `R2BilateralBlurParameters` | `withBlurPasses(int value)` Copy the current immutable object by setting a value for the `blurPasses` attribute.
    `R2BilateralBlurParameters` | `withBlurScale(float value)` Copy the current immutable object by setting a value for the `blurScale` attribute.
    `R2BilateralBlurParameters` | `withBlurScaleFilter(com.io7m.jcanephora.core.JCGLFramebufferBlitFilter value)` Copy the current immutable object by setting a value for the `blurScaleFilter` attribute.
    `R2BilateralBlurParameters` | `withBlurSharpness(float value)` Copy the current immutable object by setting a value for the `blurSharpness` attribute.
    `R2BilateralBlurParameters` | `withBlurSize(float value)` Copy the current immutable object by setting a value for the `blurSize` attribute.

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

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

- - ### Method Detail

    - #### blurSize

          public float blurSize()

      Specified by:
        `blurSize` in interface `R2BilateralBlurParametersType`
      Returns:
        The current blur size in texels

    - #### blurScale

          public float blurScale()

      The amount by which the image will be scaled during the blur operation. By scaling an image down, blurring it, and then scaling it back up again, the blur effect is emphasized without requiring additional passes.
      Specified by:
        `blurScale` in interface `R2BilateralBlurParametersType`
      Returns:
        The scale value for intermediate images

    - #### blurPasses

          public int blurPasses()

      The number of blur passes that will be used. If a value of `0` is given here, the image will only be scaled and not actually blurred (and will not actually even be scaled, if a value of `1.0` is given for `blurScale()`).
      Specified by:
        `blurPasses` in interface `R2BilateralBlurParametersType`
      Returns:
        The number of blur passes that will be used

    - #### blurSharpness

          public float blurSharpness()

      Specified by:
        `blurSharpness` in interface `R2BilateralBlurParametersType`
      Returns:
        The current blur sharpness amount

    - #### blurScaleFilter

          public com.io7m.jcanephora.core.JCGLFramebufferBlitFilter blurScaleFilter()

      Specified by:
        `blurScaleFilter` in interface `R2BilateralBlurParametersType`
      Returns:
        The filter that will be used when an image is scaled via framebuffer blitting

    - #### withBlurSize

          public final R2BilateralBlurParameters withBlurSize(float value)

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

    - #### withBlurScale

          public final R2BilateralBlurParameters withBlurScale(float value)

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

    - #### withBlurPasses

          public final R2BilateralBlurParameters withBlurPasses(int value)

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

    - #### withBlurSharpness

          public final R2BilateralBlurParameters withBlurSharpness(float value)

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

    - #### withBlurScaleFilter

          public final R2BilateralBlurParameters withBlurScaleFilter(com.io7m.jcanephora.core.JCGLFramebufferBlitFilter value)

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

    - #### equals

          public boolean equals(Object another)

      This instance is equal to all instances of `R2BilateralBlurParameters` 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: `blurSize`, `blurScale`, `blurPasses`, `blurSharpness`, `blurScaleFilter`.
      Overrides:
        `hashCode` in class `Object`
      Returns:
        hashCode value

    - #### toString

          public String toString()

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

    - #### of

          public static R2BilateralBlurParameters of(float blurSize,
                                                     float blurScale,
                                                     int blurPasses,
                                                     float blurSharpness,
                                                     com.io7m.jcanephora.core.JCGLFramebufferBlitFilter blurScaleFilter)

      Construct a new immutable `R2BilateralBlurParameters` instance.
      Parameters:
        `blurSize` - The value for the `blurSize` attribute
        `blurScale` - The value for the `blurScale` attribute
        `blurPasses` - The value for the `blurPasses` attribute
        `blurSharpness` - The value for the `blurSharpness` attribute
        `blurScaleFilter` - The value for the `blurScaleFilter` attribute
      Returns:
        An immutable R2BilateralBlurParameters instance

    - #### copyOf

          public static R2BilateralBlurParameters copyOf(R2BilateralBlurParametersType instance)

      Creates an immutable copy of a `R2BilateralBlurParametersType` 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 R2BilateralBlurParameters instance

    - #### builder

          public static R2BilateralBlurParameters.Builder builder()

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

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