com.io7m.r2.core

## Interface R2LightVolumeSingleType

- All Superinterfaces:
    R2LightReadableType, R2LightSingleReadableType, R2LightSingleType, R2LightSingleWritableType, R2LightVolumeSingleReadableType, R2LightVolumeSingleWritableType, R2LightWritableType
  All Known Subinterfaces:
    R2LightProjectiveType, R2LightProjectiveUsableType, R2LightProjectiveWithoutShadowType, R2LightProjectiveWithShadowType, R2LightProjectiveWithShadowVarianceType, R2LightSphericalSingleType
  All Known Implementing Classes:
    R2LightProjectiveWithoutShadow, R2LightProjectiveWithShadowVariance, R2LightSphericalSingle

      public interface R2LightVolumeSingleType
      extends R2LightVolumeSingleReadableType, R2LightVolumeSingleWritableType, R2LightSingleType

  The type of single-instance lights that operate using light volumes.

- - ### Method Summary

    All Methods Instance Methods Default Methods
    Modifier and Type | Method and Description
    --- | ---
    `default <A,B,E extends Throwable> B` | `matchLightSingle(A context, com.io7m.jfunctional.PartialBiFunctionType<A,R2LightVolumeSingleType,B,E> on_volume, com.io7m.jfunctional.PartialBiFunctionType<A,R2LightScreenSingleType,B,E> on_screen)` Match on the type of light.

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

      `matchLightVolumeSingleReadable`

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

      `arrayObject, transform`

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

      `color, intensity, lightID`

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

      `colorWritable, setIntensity`

- - ### Method Detail

    - #### matchLightSingle

          default <A,B,E extends Throwable> B matchLightSingle(A context,
                                                               com.io7m.jfunctional.PartialBiFunctionType<A,R2LightVolumeSingleType,B,E> on_volume,
                                                               com.io7m.jfunctional.PartialBiFunctionType<A,R2LightScreenSingleType,B,E> on_screen)
                                                        throws E extends Throwable

      Description copied from interface: `R2LightSingleReadableType`
      Match on the type of light.
      Specified by:
        `matchLightSingle` in interface `R2LightSingleReadableType`
      Type Parameters:
        `A` - The type of context values
        `B` - The type of returned values
        `E` - The type of raised exceptions
      Parameters:
        `context` - A context value
        `on_volume` - Evaluated for volume lights
        `on_screen` - Evaluated for screen lights
      Returns:
        A value of type `B`
      Throws:
        `E` - If any of the given functions raise `E`
        `E extends Throwable`

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