# Class VulkanClearValueColorIntegerSigned

java.lang.Object
com.io7m.jcoronado.api.VulkanClearValueColorIntegerSigned

All Implemented Interfaces:
  `VulkanClearValueType`, `VulkanClearValueType.VulkanClearValueColorIntegerSignedType`, `VulkanClearValueType.VulkanClearValueColorType`

public final class VulkanClearValueColorIntegerSigned extends Object implements VulkanClearValueType.VulkanClearValueColorIntegerSignedType
A color consisting of signed integer components.

- ## Nested Class Summary

  Nested Classes
  Modifier and Type
  Class
  Description
  `static final class`
  `VulkanClearValueColorIntegerSigned.Builder`
  Builds instances of type `VulkanClearValueColorIntegerSigned`.

  ### Nested classes/interfaces inherited from interface com.io7m.jcoronado.api.VulkanClearValueType

  `VulkanClearValueType.Type, VulkanClearValueType.VulkanClearValueColorFloatingPointType, VulkanClearValueType.VulkanClearValueColorIntegerSignedType, VulkanClearValueType.VulkanClearValueColorIntegerUnsignedType, VulkanClearValueType.VulkanClearValueColorType, VulkanClearValueType.VulkanClearValueDepthStencilType`

  ### Nested classes/interfaces inherited from interface com.io7m.jcoronado.api.VulkanClearValueType.VulkanClearValueColorType

  `VulkanClearValueType.VulkanClearValueColorType.ColorType`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `int`
  `alpha()`
  `int`
  `blue()`
  `static VulkanClearValueColorIntegerSigned.Builder`
  `builder()`
  Creates a builder for `VulkanClearValueColorIntegerSigned`.
  `static VulkanClearValueColorIntegerSigned`
  `copyOf(VulkanClearValueType.VulkanClearValueColorIntegerSignedType instance)`
  Creates an immutable copy of a `VulkanClearValueType.VulkanClearValueColorIntegerSignedType` value.
  `boolean`
  `equals(Object another)`
  This instance is equal to all instances of `VulkanClearValueColorIntegerSigned` that have equal attribute values.
  `int`
  `green()`
  `int`
  `hashCode()`
  Computes a hash code from attributes: `red`, `green`, `blue`, `alpha`.
  `static VulkanClearValueColorIntegerSigned`
  `of(int red, int green, int blue, int alpha)`
  Construct a new immutable `VulkanClearValueColorIntegerSigned` instance.
  `int`
  `red()`
  `String`
  `toString()`
  Prints the immutable value `VulkanClearValueColorIntegerSigned` with attribute values.
  `final VulkanClearValueColorIntegerSigned`
  `withAlpha(int value)`
  Copy the current immutable object by setting a value for the `alpha` attribute.
  `final VulkanClearValueColorIntegerSigned`
  `withBlue(int value)`
  Copy the current immutable object by setting a value for the `blue` attribute.
  `final VulkanClearValueColorIntegerSigned`
  `withGreen(int value)`
  Copy the current immutable object by setting a value for the `green` attribute.
  `final VulkanClearValueColorIntegerSigned`
  `withRed(int value)`
  Copy the current immutable object by setting a value for the `red` attribute.

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

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

  ### Methods inherited from interface com.io7m.jcoronado.api.VulkanClearValueType.VulkanClearValueColorIntegerSignedType

  `colorType`

  ### Methods inherited from interface com.io7m.jcoronado.api.VulkanClearValueType.VulkanClearValueColorType

  `type`

- ## Method Details

  - ### red

    public int red()
    Specified by:
      `red` in interface `VulkanClearValueType.VulkanClearValueColorIntegerSignedType`
    Returns:
      The red channel

  - ### green

    public int green()
    Specified by:
      `green` in interface `VulkanClearValueType.VulkanClearValueColorIntegerSignedType`
    Returns:
      The green channel

  - ### blue

    public int blue()
    Specified by:
      `blue` in interface `VulkanClearValueType.VulkanClearValueColorIntegerSignedType`
    Returns:
      The blue channel

  - ### alpha

    public int alpha()
    Specified by:
      `alpha` in interface `VulkanClearValueType.VulkanClearValueColorIntegerSignedType`
    Returns:
      The alpha channel

  - ### withRed

    public final VulkanClearValueColorIntegerSigned withRed(int value)
    Copy the current immutable object by setting a value for the `red` attribute. A value equality check is used to prevent copying of the same value by returning `this`.
    Parameters:
      `value` - A new value for red
    Returns:
      A modified copy of the `this` object

  - ### withGreen

    public final VulkanClearValueColorIntegerSigned withGreen(int value)
    Copy the current immutable object by setting a value for the `green` attribute. A value equality check is used to prevent copying of the same value by returning `this`.
    Parameters:
      `value` - A new value for green
    Returns:
      A modified copy of the `this` object

  - ### withBlue

    public final VulkanClearValueColorIntegerSigned withBlue(int value)
    Copy the current immutable object by setting a value for the `blue` attribute. A value equality check is used to prevent copying of the same value by returning `this`.
    Parameters:
      `value` - A new value for blue
    Returns:
      A modified copy of the `this` object

  - ### withAlpha

    public final VulkanClearValueColorIntegerSigned withAlpha(int value)
    Copy the current immutable object by setting a value for the `alpha` attribute. A value equality check is used to prevent copying of the same value by returning `this`.
    Parameters:
      `value` - A new value for alpha
    Returns:
      A modified copy of the `this` object

  - ### equals

    public boolean equals(Object another)
    This instance is equal to all instances of `VulkanClearValueColorIntegerSigned` 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: `red`, `green`, `blue`, `alpha`.
    Overrides:
      `hashCode` in class `Object`
    Returns:
      hashCode value

  - ### toString

    public String toString()
    Prints the immutable value `VulkanClearValueColorIntegerSigned` with attribute values.
    Overrides:
      `toString` in class `Object`
    Returns:
      A string representation of the value

  - ### of

    public static VulkanClearValueColorIntegerSigned of(int red, int green, int blue, int alpha)
    Construct a new immutable `VulkanClearValueColorIntegerSigned` instance.
    Parameters:
      `red` - The value for the `red` attribute
      `green` - The value for the `green` attribute
      `blue` - The value for the `blue` attribute
      `alpha` - The value for the `alpha` attribute
    Returns:
      An immutable VulkanClearValueColorIntegerSigned instance

  - ### copyOf

    public static VulkanClearValueColorIntegerSigned copyOf(VulkanClearValueType.VulkanClearValueColorIntegerSignedType instance)
    Creates an immutable copy of a `VulkanClearValueType.VulkanClearValueColorIntegerSignedType` 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 VulkanClearValueColorIntegerSigned instance

  - ### builder

    public static VulkanClearValueColorIntegerSigned.Builder builder()
    Creates a builder for `VulkanClearValueColorIntegerSigned`.

         VulkanClearValueColorIntegerSigned.builder()
            .setRed(int) // required red
            .setGreen(int) // required green
            .setBlue(int) // required blue
            .setAlpha(int) // required alpha
            .build();

    Returns:
      A new VulkanClearValueColorIntegerSigned builder