## Uses of Interface
com.io7m.jtensors.VectorWritable4IType

- Packages that use VectorWritable4IType
  Package | Description
  --- | ---
  com.io7m.jtensors | Core vector and matrix types.
  com.io7m.jtensors.bytebuffered | `ByteBuffer` backed tensors.
  com.io7m.jtensors.bytebuffered.parameterized | `ByteBuffer` backed parameterized tensors.
  com.io7m.jtensors.parameterized | Parameterized vector and matrix types.

- - ### Uses of VectorWritable4IType in com.io7m.jtensors

    Subinterfaces of VectorWritable4IType in com.io7m.jtensors
    Modifier and Type | Interface and Description
    --- | ---
    `interface` | `Vector4IType` The type of four-element vectors that are both readable and writable, and have `int` elements

    Classes in com.io7m.jtensors that implement VectorWritable4IType
    Modifier and Type | Class and Description
    --- | ---
    `class` | `VectorM4I` A four-dimensional mutable vector type with integer elements.

    Methods in com.io7m.jtensors with type parameters of type VectorWritable4IType
    Modifier and Type | Method and Description
    --- | ---
    `static <V extends VectorWritable4IType> V` | VectorM4I.`absolute(VectorReadable4IType v, V out)` Calculate the absolute values of the elements in vector `v`, saving the result to `out`.
    `static <V extends VectorWritable4IType & VectorReadable4IType> V` | VectorM4I.`absoluteInPlace(V v)` Calculate the absolute values of the elements in vector `v`, saving the result to `v`.
    `static <V extends VectorWritable4IType> V` | VectorM4I.`add(VectorReadable4IType v0, VectorReadable4IType v1, V out)` Calculate the element-wise sum of the vectors `v0` and `v1`, saving the result to `out`.
    `static <V extends VectorWritable4IType & VectorReadable4IType> V` | VectorM4I.`addInPlace(V v0, VectorReadable4IType v1)` Calculate the element-wise sum of the vectors `v0` and `v1`, saving the result to `v0`.
    `static <V extends VectorWritable4IType> V` | VectorM4I.`addScaled(VectorReadable4IType v0, VectorReadable4IType v1, double r, V out)` Calculate the element-wise sum of the vectors `v0` and the element-wise product of `v1` and `r`, saving the result to `out`.
    `static <V extends VectorWritable4IType & VectorReadable4IType> V` | VectorM4I.`addScaledInPlace(V v0, VectorReadable4IType v1, double r)` Calculate the element-wise sum of the vectors `v0` and the element-wise product of `v1` and `r`, saving the result to `v0`.
    `static <V extends VectorWritable4IType> V` | VectorM4I.`clamp(VectorReadable4IType v, int minimum, int maximum, V out)` Clamp the elements of the vector `v` to the range {@code [minimum ..
    `static <V extends VectorWritable4IType> V` | VectorM4I.`clampByVector(VectorReadable4IType v, VectorReadable4IType minimum, VectorReadable4IType maximum, V out)` Clamp the elements of the vector `v` to the inclusive range given by the corresponding elements in `minimum` and `maximum`, saving the result to `out`.
    `static <V extends VectorWritable4IType & VectorReadable4IType> V` | VectorM4I.`clampByVectorInPlace(V v, VectorReadable4IType minimum, VectorReadable4IType maximum)` Clamp the elements of the vector `v` to the inclusive range given by the corresponding elements in `minimum` and `maximum`, saving the result to `v`.
    `static <V extends VectorWritable4IType & VectorReadable4IType> V` | VectorM4I.`clampInPlace(V v, int minimum, int maximum)` Clamp the elements of the vector `v` to the range {@code [minimum ..
    `static <V extends VectorWritable4IType> V` | VectorM4I.`clampMaximum(VectorReadable4IType v, int maximum, V out)` Clamp the elements of the vector `v` to the range {@code [-Infinity ..
    `static <V extends VectorWritable4IType> V` | VectorM4I.`clampMaximumByVector(VectorReadable4IType v, VectorReadable4IType maximum, V out)` Clamp the elements of the vector `v` to the inclusive range given by the corresponding elements in `maximum`, saving the result to `out`.
    `static <V extends VectorWritable4IType & VectorReadable4IType> V` | VectorM4I.`clampMaximumByVectorInPlace(V v, VectorReadable4IType maximum)` Clamp the elements of the vector `v` to the inclusive range given by the corresponding elements in `maximum`, saving the result to `v`.
    `static <V extends VectorWritable4IType & VectorReadable4IType> V` | VectorM4I.`clampMaximumInPlace(V v, int maximum)` Clamp the elements of the vector `v` to the range {@code [-Infinity ..
    `static <V extends VectorWritable4IType> V` | VectorM4I.`clampMinimum(VectorReadable4IType v, int minimum, V out)` Clamp the elements of the vector `v` to the range {@code [minimum ..
    `static <V extends VectorWritable4IType> V` | VectorM4I.`clampMinimumByVector(VectorReadable4IType v, VectorReadable4IType minimum, V out)` Clamp the elements of the vector `v` to the inclusive range given by the corresponding elements in `minimum`, saving the result to `out`.
    `static <V extends VectorWritable4IType & VectorReadable4IType> V` | VectorM4I.`clampMinimumByVectorInPlace(V v, VectorReadable4IType minimum)` Clamp the elements of the vector `v` to the inclusive range given by the corresponding elements in `minimum`, saving the result to `v`.
    `static <V extends VectorWritable4IType & VectorReadable4IType> V` | VectorM4I.`clampMinimumInPlace(V v, int minimum)` Clamp the elements of the vector `v` to the range {@code [minimum ..
    `static <V extends VectorWritable4IType> V` | VectorM4I.`copy(VectorReadable4IType input, V output)` Copy all elements of the vector `input` to the vector `output`.
    `static <V extends VectorWritable4IType> V` | VectorM4I.`interpolateLinear(VectorM4I.ContextVM4I c, VectorReadable4IType v0, VectorReadable4IType v1, double alpha, V r)` Linearly interpolate between `v0` and `v1` by the amount `alpha`, saving the result to `r`.
    `static <V extends VectorWritable4IType> V` | VectorM4I.`projection(VectorReadable4IType p, VectorReadable4IType q, V r)` Calculate the projection of the vector `p` onto the vector `q`, saving the result in `r`.
    `static <V extends VectorWritable4IType> V` | VectorM4I.`scale(VectorReadable4IType v, double r, V out)` Scale the vector `v` by the scalar `r`, saving the result to `out`.
    `static <V extends VectorWritable4IType & VectorReadable4IType> V` | VectorM4I.`scaleInPlace(V v, int r)` Scale the vector `v` by the scalar `r`, saving the result to `v`.
    `static <V extends VectorWritable4IType> V` | VectorM4I.`subtract(VectorReadable4IType v0, VectorReadable4IType v1, V out)` Subtract the vector `v1` from the vector `v0`, saving the result to `out`.
    `static <V extends VectorWritable4IType & VectorReadable4IType> V` | VectorM4I.`subtractInPlace(V v0, VectorReadable4IType v1)` Subtract the vector `v1` from the vector `v0`, saving the result to `v0`.

  - ### Uses of VectorWritable4IType in com.io7m.jtensors.bytebuffered

    Subinterfaces of VectorWritable4IType in com.io7m.jtensors.bytebuffered
    Modifier and Type | Interface and Description
    --- | ---
    `interface` | `VectorByteBuffered4IType` The type of `Vector4IType` values that are also byte buffered.

    Classes in com.io7m.jtensors.bytebuffered that implement VectorWritable4IType
    Modifier and Type | Class and Description
    --- | ---
    `class` | `VectorByteBufferedM4I` A four-element vector type with `int` elements, packed into a `ByteBuffer`.

  - ### Uses of VectorWritable4IType in com.io7m.jtensors.bytebuffered.parameterized

    Subinterfaces of VectorWritable4IType in com.io7m.jtensors.bytebuffered.parameterized
    Modifier and Type | Interface and Description
    --- | ---
    `interface` | `PVectorByteBuffered4IType<T>` The type of `PVector4IType` values that are also byte buffered.

    Classes in com.io7m.jtensors.bytebuffered.parameterized that implement VectorWritable4IType
    Modifier and Type | Class and Description
    --- | ---
    `class` | `PVectorByteBufferedM4I<T>` A four-element vector type with `int` elements, packed into a `ByteBuffer`.

  - ### Uses of VectorWritable4IType in com.io7m.jtensors.parameterized

    Subinterfaces of VectorWritable4IType in com.io7m.jtensors.parameterized
    Modifier and Type | Interface and Description
    --- | ---
    `interface` | `PVector4IType<T>` The type of four-element vectors that are both readable and writable, and have `int` elements
    `interface` | `PVectorWritable4IType<T>` 'Write' interface to four-dimensional vectors with integer elements.

    Classes in com.io7m.jtensors.parameterized that implement VectorWritable4IType
    Modifier and Type | Class and Description
    --- | ---
    `class` | `PVectorM4I<T>` A four-dimensional mutable vector type with integer elements.

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