com.io7m.r2.core

## Interface R2LightVolumeSingleReadableType

- All Superinterfaces:
    R2LightReadableType, R2LightSingleReadableType
  All Known Subinterfaces:
    R2LightProjectiveReadableType, R2LightProjectiveType, R2LightProjectiveUsableType, R2LightProjectiveWithoutShadowReadableType, R2LightProjectiveWithoutShadowType, R2LightProjectiveWithShadowReadableType, R2LightProjectiveWithShadowType, R2LightProjectiveWithShadowVarianceType, R2LightSphericalSingleReadableType, R2LightSphericalSingleType, R2LightVolumeSingleType
  All Known Implementing Classes:
    R2LightProjectiveWithoutShadow, R2LightProjectiveWithShadowVariance, R2LightSphericalSingle

      public interface R2LightVolumeSingleReadableType
      extends R2LightSingleReadableType

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

- - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method and Description
    --- | ---
    `<A,B,E extends Throwable> B` | `matchLightVolumeSingleReadable(A context, com.io7m.jfunctional.PartialBiFunctionType<A,R2LightProjectiveReadableType,B,E> on_projective, com.io7m.jfunctional.PartialBiFunctionType<A,R2LightSphericalSingleReadableType,B,E> on_spherical)` Match on the type of volume light.

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

      `arrayObject, matchLightSingle, transform`

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

      `color, intensity, lightID`

- - ### Method Detail

    - #### matchLightVolumeSingleReadable

          <A,B,E extends Throwable> B matchLightVolumeSingleReadable(A context,
                                                                     com.io7m.jfunctional.PartialBiFunctionType<A,R2LightProjectiveReadableType,B,E> on_projective,
                                                                     com.io7m.jfunctional.PartialBiFunctionType<A,R2LightSphericalSingleReadableType,B,E> on_spherical)
                                                              throws E extends Throwable

      Match on the type of volume light.
      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_projective` - Evaluated for projective lights
        `on_spherical` - Evaluated for spherical lights
      Returns:
        A value of type `B`
      Throws:
        `E` - If any of the given functions raise `E`
        `E extends Throwable`

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