@NonNullByDefault

# Package com.io7m.jtensors

Core vector and matrix types.

See: Description

- Interface Summary
  Interface | Description
  --- | ---
  Matrix2x2DType | The type of 2x2 matrices with `double` elements.
  Matrix2x2FType | The type of 2x2 matrices with `float` elements.
  Matrix3x3DType | The type of 3x3 matrices with `double` elements.
  Matrix3x3FType | The type of 3x3 matrices with `float` elements.
  Matrix4x4DType | The type of 4x4 matrices with `double` elements.
  Matrix4x4FType | The type of 4x4 matrices with `float` elements.
  MatrixDirect2x2DType | The type of 2x2 matrices with `double` elements that are backed by direct byte buffers.
  MatrixDirect2x2FType | The type of 2x2 matrices with `float` elements that are backed by direct byte buffers.
  MatrixDirect3x3DType | The type of 3x3 matrices with `double` elements that are backed by direct byte buffers.
  MatrixDirect3x3FType | The type of 3x3 matrices with `float` elements that are backed by direct byte buffers.
  MatrixDirect4x4DType | The type of 4x4 matrices with `double` elements that are backed by direct byte buffers.
  MatrixDirect4x4FType | The type of 4x4 matrices with `float` elements that are backed by direct byte buffers.
  MatrixDirectDType | The type of direct-memory backed matrices with `double` elements.
  MatrixDirectFType | The type of direct-memory backed matrices with `float` elements.
  MatrixDirectReadable2x2DType | 'Read' interface to 2x2 direct-memory matrices with `double` elements.
  MatrixDirectReadable2x2FType | 'Read' interface to 2x2 direct-memory matrices with `float` elements.
  MatrixDirectReadable3x3DType | 'Read' interface to 3x3 direct-memory matrices with `double` elements.
  MatrixDirectReadable3x3FType | 'Read' interface to 3x3 direct-memory matrices with `float` elements.
  MatrixDirectReadable4x4DType | 'Read' interface to 4x4 direct-memory matrices with `double` elements.
  MatrixDirectReadable4x4FType | 'Read' interface to 4x4 direct-memory matrices with `float` elements.
  MatrixReadable2x2DType | 'Read' interface to 2x2 matrices with `double` elements.
  MatrixReadable2x2FType | 'Read' interface to 2x2 matrices with `float` elements.
  MatrixReadable3x3DType | 'Read' interface to 3x3 matrices with `double` elements.
  MatrixReadable3x3FType | 'Read' interface to 3x3 matrices with `float` elements.
  MatrixReadable4x4DType | 'Read' interface to 4x4 matrices with `double` elements.
  MatrixReadable4x4FType | 'Read' interface to 4x4 matrices with `float` elements.
  MatrixReadableDType | 'Read' interface to matrices with `double` elements.
  MatrixReadableFType | 'Read' interface to matrices with `float` elements.
  MatrixWritable2x2DType | 'Write' interface to 2x2 matrices with `double` elements.
  MatrixWritable2x2FType | 'Write' interface to 2x2 matrices with `float` elements.
  MatrixWritable3x3DType | 'Write' interface to 3x3 matrices with `double` elements.
  MatrixWritable3x3FType | 'Write' interface to 3x3 matrices with `float` elements.
  MatrixWritable4x4DType | 'Write' interface to 4x4 matrices with `double` elements.
  MatrixWritable4x4FType | 'Write' interface to 4x4 matrices with `float` elements.
  MatrixWritableDType | 'Write' interface to matrices with `double` elements.
  MatrixWritableFType | 'Write' interface to matrices with `float` elements.
  Quaternion4DType | The type of mutable quaternions with `double` elements.
  Quaternion4FType | The type of mutable quaternions with `float` elements.
  QuaternionReadable4DType | 'Read' interface to four-dimensional quaternions with `double` elements.
  QuaternionReadable4FType | 'Read' interface to four-dimensional quaternions with `float` elements.
  QuaternionWritable4DType | 'Write' interface to four-dimensional quaternions with `double` elements.
  QuaternionWritable4FType | 'Write' interface to four-dimensional quaternions with `float` elements.
  Vector2DType | The type of two-element vectors that are both readable and writable, and have `double` elements
  Vector2FType | The type of two-element vectors that are both readable and writable, and have `float` elements
  Vector2IType | The type of two-element vectors that are both readable and writable, and have `int` elements
  Vector2LType | The type of two-element vectors that are both readable and writable, and have `long` elements
  Vector3DType | The type of three-element vectors that are both readable and writable, and have `double` elements
  Vector3FType | The type of three-element vectors that are both readable and writable, and have `float` elements
  Vector3IType | The type of three-element vectors that are both readable and writable, and have `int` elements
  Vector3LType | The type of three-element vectors that are both readable and writable, and have `long` elements
  Vector4DType | The type of four-element vectors that are both readable and writable, and have `double` elements
  Vector4FType | The type of four-element vectors that are both readable and writable, and have `float` elements
  Vector4IType | The type of four-element vectors that are both readable and writable, and have `int` elements
  Vector4LType | The type of four-element vectors that are both readable and writable, and have `long` elements
  VectorReadable2DType | 'Read' interface to two-dimensional vectors with `double` elements.
  VectorReadable2FType | 'Read' interface to two-dimensional vectors with `float` elements.
  VectorReadable2IType | 'Read' interface to two-dimensional vectors with integer elements.
  VectorReadable2LType | 'Read' interface to two-dimensional vectors with integer elements.
  VectorReadable3DType | 'Read' interface to three-dimensional vectors with `double` elements.
  VectorReadable3FType | 'Read' interface to three-dimensional vectors with `float` elements.
  VectorReadable3IType | 'Read' interface to three-dimensional vectors with integer elements.
  VectorReadable3LType | 'Read' interface to three-dimensional vectors with integer elements.
  VectorReadable4DType | 'Read' interface to four-dimensional vectors with `double` elements.
  VectorReadable4FType | 'Read' interface to four-dimensional vectors with `float` elements.
  VectorReadable4IType | 'Read' interface to four-dimensional vectors with integer elements.
  VectorReadable4LType | 'Read' interface to four-dimensional vectors with integer elements.
  VectorWritable2DType | 'Write' interface to two-dimensional vectors with `double` elements.
  VectorWritable2FType | 'Write' interface to two-dimensional vectors with `float` elements.
  VectorWritable2IType | 'Write' interface to two-dimensional vectors with integer elements.
  VectorWritable2LType | 'Write' interface to two-dimensional vectors with long integer elements.
  VectorWritable3DType | 'Write' interface to three-dimensional vectors with `double` elements.
  VectorWritable3FType | 'Write' interface to three-dimensional vectors with `float` elements.
  VectorWritable3IType | 'Write' interface to three-dimensional vectors with integer elements.
  VectorWritable3LType | 'Write' interface to three-dimensional vectors with long integer elements.
  VectorWritable4DType | 'Write' interface to four-dimensional vectors with `double` elements.
  VectorWritable4FType | 'Write' interface to four-dimensional vectors with `float` elements.
  VectorWritable4IType | 'Write' interface to four-dimensional vectors with integer elements.
  VectorWritable4LType | 'Write' interface to four-dimensional vectors with long integer elements.

- Class Summary
  Class | Description
  --- | ---
  HashUtility | Functions for hashing matrices and vectors.
  MatrixDirectM2x2D | The default implementation of the `MatrixDirect2x2DType` interface.
  MatrixDirectM2x2F | The default implementation of the `MatrixDirect2x2FType` interface.
  MatrixDirectM3x3D | The default implementation of the `MatrixDirect3x3DType` interface.
  MatrixDirectM3x3F | The default implementation of the `MatrixDirect3x3FType` interface.
  MatrixDirectM4x4D | The default implementation of the `MatrixDirect4x4DType` interface.
  MatrixDirectM4x4F | The default implementation of the `MatrixDirect4x4FType` interface.
  MatrixHeapArrayM2x2D | The default implementation of the `Matrix2x2DType` interface.
  MatrixHeapArrayM2x2F | The default implementation of the `Matrix2x2FType` interface.
  MatrixHeapArrayM3x3D | The default implementation of the `Matrix3x3DType` interface.
  MatrixHeapArrayM3x3F | The default implementation of the `Matrix3x3FType` interface.
  MatrixHeapArrayM4x4D | The default implementation of the `Matrix4x4DType` interface.
  MatrixHeapArrayM4x4F | The default implementation of the `Matrix4x4FType` interface.
  MatrixI2x2D | An immutable 2x2 matrix type.
  MatrixI2x2F | An immutable 2x2 matrix type.
  MatrixI3x3D | An immutable 3x3 matrix type.
  MatrixI3x3F | An immutable 3x3 matrix type.
  MatrixI4x4D | An immutable 4x4 matrix type.
  MatrixI4x4F | An immutable 4x4 matrix type.
  MatrixM2x2D | Functions over 2x2 mutable matrix types with `double` elements.
  MatrixM2x2D.ContextMM2D | The `ContextMM2D` type contains the minimum storage required for all of the functions of the `MatrixM2x2D` class.
  MatrixM2x2F | Functions over 2x2 mutable matrix types with `float` elements.
  MatrixM2x2F.ContextMM2F | The `ContextMM2F` type contains the minimum storage required for all of the functions of the `MatrixM2x2F` class.
  MatrixM3x3D | A 3x3 mutable matrix type with `double` elements.
  MatrixM3x3D.ContextMM3D | The `ContextMM3D` type contains the minimum storage required for all of the functions of the `MatrixM3x3D` class.
  MatrixM3x3F | A 3x3 mutable matrix type with `float` elements.
  MatrixM3x3F.ContextMM3F | The `ContextMM3F` type contains the minimum storage required for all of the functions of the `MatrixM3x3F` class.
  MatrixM4x4D | Functions over 4x4 mutable matrix types with `double` elements.
  MatrixM4x4D.ContextMM4D | The `ContextMM4D` type contains the minimum storage required for all of the functions of the `MatrixM4x4D` class.
  MatrixM4x4F | A 4x4 mutable matrix type with `float` elements.
  MatrixM4x4F.ContextMM4F | The `ContextMM4F` type contains the minimum storage required for all of the functions of the `MatrixM4x4F` class.
  OrthonormalizedI3D | Three immutable orthonormal vectors.
  OrthonormalizedI3F | Three immutable orthonormal vectors.
  QuaternionI4D | A four-dimensional immutable quaternion type with `double` elements.
  QuaternionI4D.Context | The ContextQM4F type contains the minimum storage required for all of the functions of the `QuaternionI4D` class.
  QuaternionI4F | A four-dimensional immutable quaternion type with `float` elements.
  QuaternionI4F.ContextQI4F | The ContextQM4F type contains the minimum storage required for all of the functions of the `QuaternionM4F` class.
  QuaternionM4D | A four-dimensional mutable quaternion type with `double` elements.
  QuaternionM4D.ContextQM4D | The `ContextQM4D` type contains the minimum storage required for all of the functions of the `QuaternionM4D` class.
  QuaternionM4F | A four-dimensional mutable quaternion type with `float` elements.
  QuaternionM4F.ContextQM4F | The ContextQM4F type contains the minimum storage required for all of the functions of the `QuaternionM4D` class.
  VectorI2D | A two-dimensional immutable vector type with `double` elements.
  VectorI2F | A two-dimensional immutable vector type with `float` elements.
  VectorI2I | A two-dimensional immutable vector type with integer elements.
  VectorI2L | A two-dimensional immutable vector type with integer elements.
  VectorI3D | A three-dimensional immutable vector type with `double` elements.
  VectorI3F | A three-dimensional immutable vector type with `float` elements.
  VectorI3I | A three-dimensional immutable vector type with integer elements.
  VectorI3L | A three-dimensional immutable vector type with integer elements.
  VectorI4D | A four-dimensional immutable vector type with `double` elements.
  VectorI4F | A four-dimensional immutable vector type with `float` elements.
  VectorI4I | A four-dimensional immutable vector type with integer elements.
  VectorI4L | A four-dimensional immutable vector type with integer elements.
  VectorM2D | A two-dimensional mutable vector type with `double` elements.
  VectorM2D.ContextVM2D | Preallocated storage to allow all vector functions to run without allocating.
  VectorM2F | A two-dimensional mutable vector type with `float` elements.
  VectorM2F.ContextVM2F | Preallocated storage to allow all vector functions to run without allocating.
  VectorM2I | A two-dimensional mutable vector type with integer elements.
  VectorM2I.ContextVM2I | Preallocated storage to allow all vector functions to run without allocating.
  VectorM2L | A two-dimensional mutable vector type with integer elements.
  VectorM2L.ContextVM2L | Preallocated storage to allow all vector functions to run without allocating.
  VectorM3D | A three-dimensional mutable vector type with `double` elements.
  VectorM3D.ContextVM3D | Preallocated storage to allow all vector functions to run without allocating.
  VectorM3F | A three-dimensional mutable vector type with `float` elements.
  VectorM3F.ContextVM3F | Preallocated storage to allow all vector functions to run without allocating.
  VectorM3I | A three-dimensional mutable vector type with integer elements.
  VectorM3I.ContextVM3I | Preallocated storage to allow all vector functions to run without allocating.
  VectorM3L | A three-dimensional mutable vector type with integer elements.
  VectorM3L.ContextVM3L | Preallocated storage to allow all vector functions to run without allocating.
  VectorM4D | A four-dimensional mutable vector type with `double` elements.
  VectorM4D.ContextVM4D | Preallocated storage to allow all vector functions to run without allocating.
  VectorM4F | A four-dimensional mutable vector type with `float` elements.
  VectorM4F.ContextVM4F | Preallocated storage to allow all vector functions to run without allocating.
  VectorM4I | A four-dimensional mutable vector type with integer elements.
  VectorM4I.ContextVM4I | Preallocated storage to allow all vector functions to run without allocating.
  VectorM4L | A four-dimensional mutable vector type with integer elements.
  VectorM4L.ContextVM4L | Preallocated storage to allow all vector functions to run without allocating.

## Package com.io7m.jtensors Description

Core vector and matrix types.

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