de.caff.generics.mda

## Interface MultiDimensional

- All Known Subinterfaces:
    MultiDimensionalAccess<T>, MultiDimensionalReadAccess<T>, MultiIndexLinearizer, MultiIndexLinearizer.Sequencer, OneDimensionalAccess<T>, OneDimensionalBooleanAccess, OneDimensionalBooleanReadAccess, OneDimensionalByteAccess, OneDimensionalByteReadAccess, OneDimensionalCharAccess, OneDimensionalCharReadAccess, OneDimensionalDoubleAccess, OneDimensionalDoubleReadAccess, OneDimensionalFloatAccess, OneDimensionalFloatReadAccess, OneDimensionalIntAccess, OneDimensionalIntReadAccess, OneDimensionalLongAccess, OneDimensionalLongReadAccess, OneDimensionalReadAccess<T>, OneDimensionalShortAccess, OneDimensionalShortReadAccess, ThreeDimensionalAccess<T>, ThreeDimensionalBooleanAccess, ThreeDimensionalBooleanReadAccess, ThreeDimensionalByteAccess, ThreeDimensionalByteReadAccess, ThreeDimensionalCharAccess, ThreeDimensionalCharReadAccess, ThreeDimensionalDoubleAccess, ThreeDimensionalDoubleReadAccess, ThreeDimensionalFloatAccess, ThreeDimensionalFloatReadAccess, ThreeDimensionalIntAccess, ThreeDimensionalIntReadAccess, ThreeDimensionalLongAccess, ThreeDimensionalLongReadAccess, ThreeDimensionalReadAccess<T>, ThreeDimensionalShortAccess, ThreeDimensionalShortReadAccess, TwoDimensionalAccess<T>, TwoDimensionalBooleanAccess, TwoDimensionalBooleanReadAccess, TwoDimensionalByteAccess, TwoDimensionalByteReadAccess, TwoDimensionalCharAccess, TwoDimensionalCharReadAccess, TwoDimensionalDoubleAccess, TwoDimensionalDoubleReadAccess, TwoDimensionalFloatAccess, TwoDimensionalFloatReadAccess, TwoDimensionalIntAccess, TwoDimensionalIntReadAccess, TwoDimensionalLongAccess, TwoDimensionalLongReadAccess, TwoDimensionalReadAccess<T>, TwoDimensionalShortAccess, TwoDimensionalShortReadAccess
  All Known Implementing Classes:
    AbstractBasicMultiDimensionalArray, HighFastMultiIndexLinearizer, LowFastMultiIndexLinearizer, MappingMultiIndexLinearizer, MultiDimensionalArray, MultiDimensionalBooleanArray, MultiDimensionalByteArray, MultiDimensionalCharArray, MultiDimensionalDoubleArray, MultiDimensionalFloatArray, MultiDimensionalIntArray, MultiDimensionalLongArray, MultiDimensionalShortArray, MultiIndexLinearizer.BasicSequencer, OneDimensionalArray, OneDimensionalBooleanArray, OneDimensionalBooleanReadAccess.Base, OneDimensionalByteArray, OneDimensionalByteReadAccess.Base, OneDimensionalCharArray, OneDimensionalCharReadAccess.Base, OneDimensionalDoubleArray, OneDimensionalDoubleReadAccess.Base, OneDimensionalFloatArray, OneDimensionalFloatReadAccess.Base, OneDimensionalIntArray, OneDimensionalIntReadAccess.Base, OneDimensionalLongArray, OneDimensionalLongReadAccess.Base, OneDimensionalReadAccess.Base, OneDimensionalShortArray, OneDimensionalShortReadAccess.Base, PartlyFixedMultiIndexLinearizer, SmallTwoDimensionalArray, SmallTwoDimensionalBitArray, SmallTwoDimensionalBooleanArray, SmallTwoDimensionalByteArray, SmallTwoDimensionalCharArray, SmallTwoDimensionalDoubleArray, SmallTwoDimensionalFloatArray, SmallTwoDimensionalIntArray, SmallTwoDimensionalLongArray, SmallTwoDimensionalShortArray, ThreeDimensionalArray, ThreeDimensionalBooleanArray, ThreeDimensionalByteArray, ThreeDimensionalCharArray, ThreeDimensionalDoubleArray, ThreeDimensionalFloatArray, ThreeDimensionalIntArray, ThreeDimensionalLongArray, ThreeDimensionalShortArray, TwoDimensionalArray, TwoDimensionalBooleanArray, TwoDimensionalBooleanReadAccess.Base, TwoDimensionalByteArray, TwoDimensionalByteReadAccess.Base, TwoDimensionalCharArray, TwoDimensionalCharReadAccess.Base, TwoDimensionalDoubleArray, TwoDimensionalDoubleReadAccess.Base, TwoDimensionalFloatArray, TwoDimensionalFloatReadAccess.Base, TwoDimensionalIntArray, TwoDimensionalIntReadAccess.Base, TwoDimensionalLongArray, TwoDimensionalLongReadAccess.Base, TwoDimensionalReadAccess.Base, TwoDimensionalShortArray, TwoDimensionalShortReadAccess.Base

      public interface MultiDimensional

  Basic interface for accessing indexable multi-dimensional items.
  Since:
    November 02, 2019
  Author:
    Rammi

- - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method and Description
    --- | ---
    `int` | `getNumDimensions()` Get the number of dimensions used by this access,
    `long` | `getNumElements()` Get the combined number of elements in all dimensions.
    `int` | `getSize(int dim)` Get the size of the given dimension.
    `int[]` | `getSizes()` Get the sizes of the dimensions of this access.

- - ### Method Detail

    - #### getNumDimensions

          int getNumDimensions()

      Get the number of dimensions used by this access,
      Returns:
        number of dimensions

    - #### getSize

          int getSize(int dim)

      Get the size of the given dimension.
      Parameters:
        `dim` - dimension, greater than `0` and less than `getNumDimensions()`
      Returns:
        number of elements in the given dimension

    - #### getSizes

          @NotNull
          int[] getSizes()

      Get the sizes of the dimensions of this access.
      Returns:
        array of length `getNumDimensions()`

    - #### getNumElements

          long getNumElements()

      Get the combined number of elements in all dimensions.
      Returns:
        number of all elements in this multi-dimensional array