# Uses of Class
org.apfloat.spi.DataStorage

Packages that use DataStorage
Package
Description
org.apfloat.aparapi
Transforms for using a GPU via the aparapi library.
org.apfloat.internal
Default implementations of the apfloat Service Provider Interface (SPI).
org.apfloat.spi
The apfloat Service Provider Interface (SPI).

- ## Uses of DataStorage in org.apfloat.aparapi

  Methods in org.apfloat.aparapi with parameters of type DataStorage
  Modifier and Type
  Method
  Description
  `protected ArrayAccess`
  ColumnTwoPassFNTStrategy.`getColumns(DataStorage dataStorage, int startColumn, int columns, int rows)`
  `protected ArrayAccess`
  ColumnTwoPassFNTStrategy.`getRows(DataStorage dataStorage, int startRow, int rows, int columns)`
  `void`
  DecorableFactor3NTTStrategy.`inverseTransform(DataStorage dataStorage, int modulus, long totalTransformLength)`
  `void`
  DecorableFactor3NTTStrategy.`transform(DataStorage dataStorage, int modulus)`
  `void`
  IntAparapiFactor3NTTStepStrategy.`transformColumns(DataStorage dataStorage0, DataStorage dataStorage1, DataStorage dataStorage2, long startColumn, long columns, long power2length, long length, boolean isInverse, int modulus)`
  `void`
  LongAparapiFactor3NTTStepStrategy.`transformColumns(DataStorage dataStorage0, DataStorage dataStorage1, DataStorage dataStorage2, long startColumn, long columns, long power2length, long length, boolean isInverse, int modulus)`

- ## Uses of DataStorage in org.apfloat.internal

  Subclasses of DataStorage in org.apfloat.internal
  Modifier and Type
  Class
  Description
  `class`
  `DiskDataStorage`
  Abstract base class for disk-based data storage, containing the common functionality independent of the element type.
  `class`
  `DoubleDiskDataStorage`
  Disk-based data storage for the `double` element type.
  `class`
  `DoubleMemoryDataStorage`
  Memory based data storage implementation for the `double` element type.
  `class`
  `FloatDiskDataStorage`
  Disk-based data storage for the `float` element type.
  `class`
  `FloatMemoryDataStorage`
  Memory based data storage implementation for the `float` element type.
  `class`
  `IntDiskDataStorage`
  Disk-based data storage for the `int` element type.
  `class`
  `IntMemoryDataStorage`
  Memory based data storage implementation for the `int` element type.
  `class`
  `LongDiskDataStorage`
  Disk-based data storage for the `long` element type.
  `class`
  `LongMemoryDataStorage`
  Memory based data storage implementation for the `long` element type.
  Methods in org.apfloat.internal that return DataStorage
  Modifier and Type
  Method
  Description
  `protected DataStorage`
  ThreeNTTConvolutionStrategy.`autoConvolute(DataStorage x, long resultSize)`
  Convolutes a data set with itself.
  `protected DataStorage`
  ThreeNTTConvolutionStrategy.`autoConvoluteOne(DataStorage x, long length, int modulus, boolean cached)`
  Performs an autoconvolution modulo one modulus, of the specified transform length.
  `DataStorage`
  StepCarryCRTStrategy.`carryCRT(DataStorage resultMod0, DataStorage resultMod1, DataStorage resultMod2, long resultSize)`
  Calculate the final result of a three-NTT convolution.
  `DataStorage`
  DoubleKaratsubaConvolutionStrategy.`convolute(DataStorage x, DataStorage y, long resultSize)`
  `DataStorage`
  DoubleMediumConvolutionStrategy.`convolute(DataStorage x, DataStorage y, long resultSize)`
  `DataStorage`
  DoubleShortConvolutionStrategy.`convolute(DataStorage x, DataStorage y, long resultSize)`
  `DataStorage`
  FloatKaratsubaConvolutionStrategy.`convolute(DataStorage x, DataStorage y, long resultSize)`
  `DataStorage`
  FloatMediumConvolutionStrategy.`convolute(DataStorage x, DataStorage y, long resultSize)`
  `DataStorage`
  FloatShortConvolutionStrategy.`convolute(DataStorage x, DataStorage y, long resultSize)`
  `DataStorage`
  IntKaratsubaConvolutionStrategy.`convolute(DataStorage x, DataStorage y, long resultSize)`
  `DataStorage`
  IntMediumConvolutionStrategy.`convolute(DataStorage x, DataStorage y, long resultSize)`
  `DataStorage`
  IntShortConvolutionStrategy.`convolute(DataStorage x, DataStorage y, long resultSize)`
  `DataStorage`
  LongKaratsubaConvolutionStrategy.`convolute(DataStorage x, DataStorage y, long resultSize)`
  `DataStorage`
  LongMediumConvolutionStrategy.`convolute(DataStorage x, DataStorage y, long resultSize)`
  `DataStorage`
  LongShortConvolutionStrategy.`convolute(DataStorage x, DataStorage y, long resultSize)`
  `DataStorage`
  ThreeNTTConvolutionStrategy.`convolute(DataStorage x, DataStorage y, long resultSize)`
  `protected DataStorage`
  ThreeNTTConvolutionStrategy.`convoluteOne(DataStorage x, DataStorage y, long length, int modulus, boolean cached)`
  Performs a convolution modulo one modulus, of the specified transform length.
  `protected abstract DataStorage`
  AbstractDataStorageBuilder.`createCachedDataStorage()`
  Create a cached data storage.
  `DataStorage`
  AbstractDataStorageBuilder.`createCachedDataStorage(long size)`
  `protected DataStorage`
  DoubleDataStorageBuilder.`createCachedDataStorage()`
  `protected DataStorage`
  FloatDataStorageBuilder.`createCachedDataStorage()`
  `protected DataStorage`
  IntDataStorageBuilder.`createCachedDataStorage()`
  `protected DataStorage`
  LongDataStorageBuilder.`createCachedDataStorage()`
  `protected DataStorage`
  ThreeNTTConvolutionStrategy.`createCachedDataStorage(long size)`
  Create a cached (if possible) data storage for the specified number of elements.
  `DataStorage`
  AbstractDataStorageBuilder.`createDataStorage(long size)`
  `DataStorage`
  AbstractDataStorageBuilder.`createDataStorage(DataStorage dataStorage)`
  `protected DataStorage`
  ThreeNTTConvolutionStrategy.`createDataStorage(DataStorage dataStorage)`
  Create a cached data storage from the (possibly) cached data storage.
  `protected abstract DataStorage`
  AbstractDataStorageBuilder.`createNonCachedDataStorage()`
  Create a non-cached data storage.
  `protected DataStorage`
  DoubleDataStorageBuilder.`createNonCachedDataStorage()`
  `protected DataStorage`
  FloatDataStorageBuilder.`createNonCachedDataStorage()`
  `protected DataStorage`
  IntDataStorageBuilder.`createNonCachedDataStorage()`
  `protected DataStorage`
  LongDataStorageBuilder.`createNonCachedDataStorage()`
  `protected DataStorage`
  DoubleDiskDataStorage.`implSubsequence(long offset, long length)`
  `protected DataStorage`
  DoubleMemoryDataStorage.`implSubsequence(long offset, long length)`
  `protected DataStorage`
  FloatDiskDataStorage.`implSubsequence(long offset, long length)`
  `protected DataStorage`
  FloatMemoryDataStorage.`implSubsequence(long offset, long length)`
  `protected DataStorage`
  IntDiskDataStorage.`implSubsequence(long offset, long length)`
  `protected DataStorage`
  IntMemoryDataStorage.`implSubsequence(long offset, long length)`
  `protected DataStorage`
  LongDiskDataStorage.`implSubsequence(long offset, long length)`
  `protected DataStorage`
  LongMemoryDataStorage.`implSubsequence(long offset, long length)`
  Methods in org.apfloat.internal with parameters of type DataStorage
  Modifier and Type
  Method
  Description
  `protected DataStorage`
  ThreeNTTConvolutionStrategy.`autoConvolute(DataStorage x, long resultSize)`
  Convolutes a data set with itself.
  `protected DataStorage`
  ThreeNTTConvolutionStrategy.`autoConvoluteOne(DataStorage x, long length, int modulus, boolean cached)`
  Performs an autoconvolution modulo one modulus, of the specified transform length.
  `double[]`
  DoubleCarryCRTStepStrategy.`carry(DataStorage dataStorage, long size, long resultSize, long offset, long length, double[] results, double[] previousResults)`
  `float[]`
  FloatCarryCRTStepStrategy.`carry(DataStorage dataStorage, long size, long resultSize, long offset, long length, float[] results, float[] previousResults)`
  `int[]`
  IntCarryCRTStepStrategy.`carry(DataStorage dataStorage, long size, long resultSize, long offset, long length, int[] results, int[] previousResults)`
  `long[]`
  LongCarryCRTStepStrategy.`carry(DataStorage dataStorage, long size, long resultSize, long offset, long length, long[] results, long[] previousResults)`
  `DataStorage`
  StepCarryCRTStrategy.`carryCRT(DataStorage resultMod0, DataStorage resultMod1, DataStorage resultMod2, long resultSize)`
  Calculate the final result of a three-NTT convolution.
  `DataStorage`
  DoubleKaratsubaConvolutionStrategy.`convolute(DataStorage x, DataStorage y, long resultSize)`
  `DataStorage`
  DoubleMediumConvolutionStrategy.`convolute(DataStorage x, DataStorage y, long resultSize)`
  `DataStorage`
  DoubleShortConvolutionStrategy.`convolute(DataStorage x, DataStorage y, long resultSize)`
  `DataStorage`
  FloatKaratsubaConvolutionStrategy.`convolute(DataStorage x, DataStorage y, long resultSize)`
  `DataStorage`
  FloatMediumConvolutionStrategy.`convolute(DataStorage x, DataStorage y, long resultSize)`
  `DataStorage`
  FloatShortConvolutionStrategy.`convolute(DataStorage x, DataStorage y, long resultSize)`
  `DataStorage`
  IntKaratsubaConvolutionStrategy.`convolute(DataStorage x, DataStorage y, long resultSize)`
  `DataStorage`
  IntMediumConvolutionStrategy.`convolute(DataStorage x, DataStorage y, long resultSize)`
  `DataStorage`
  IntShortConvolutionStrategy.`convolute(DataStorage x, DataStorage y, long resultSize)`
  `DataStorage`
  LongKaratsubaConvolutionStrategy.`convolute(DataStorage x, DataStorage y, long resultSize)`
  `DataStorage`
  LongMediumConvolutionStrategy.`convolute(DataStorage x, DataStorage y, long resultSize)`
  `DataStorage`
  LongShortConvolutionStrategy.`convolute(DataStorage x, DataStorage y, long resultSize)`
  `DataStorage`
  ThreeNTTConvolutionStrategy.`convolute(DataStorage x, DataStorage y, long resultSize)`
  `protected DataStorage`
  ThreeNTTConvolutionStrategy.`convoluteOne(DataStorage x, DataStorage y, long length, int modulus, boolean cached)`
  Performs a convolution modulo one modulus, of the specified transform length.
  `protected <T> ParallelRunnable`
  StepCarryCRTStrategy.`createCarryCRTParallelRunnable(Class<T> elementArrayType, DataStorage resultMod0, DataStorage resultMod1, DataStorage resultMod2, DataStorage dataStorage, long size, long resultSize)`
  Create a ParallelRunnable object for doing the carry-CRT in parallel.
  `protected ParallelRunnable`
  DoubleFactor3NTTStepStrategy.`createColumnTransformParallelRunnable(DataStorage dataStorage0, DataStorage dataStorage1, DataStorage dataStorage2, long startColumn, long columns, long power2length, long length, boolean isInverse, int modulus)`
  Create a ParallelRunnable object for transforming the columns of the matrix using a 3-point NTT transform.
  `protected ParallelRunnable`
  FloatFactor3NTTStepStrategy.`createColumnTransformParallelRunnable(DataStorage dataStorage0, DataStorage dataStorage1, DataStorage dataStorage2, long startColumn, long columns, long power2length, long length, boolean isInverse, int modulus)`
  Create a ParallelRunnable object for transforming the columns of the matrix using a 3-point NTT transform.
  `protected ParallelRunnable`
  IntFactor3NTTStepStrategy.`createColumnTransformParallelRunnable(DataStorage dataStorage0, DataStorage dataStorage1, DataStorage dataStorage2, long startColumn, long columns, long power2length, long length, boolean isInverse, int modulus)`
  Create a ParallelRunnable object for transforming the columns of the matrix using a 3-point NTT transform.
  `protected ParallelRunnable`
  LongFactor3NTTStepStrategy.`createColumnTransformParallelRunnable(DataStorage dataStorage0, DataStorage dataStorage1, DataStorage dataStorage2, long startColumn, long columns, long power2length, long length, boolean isInverse, int modulus)`
  Create a ParallelRunnable object for transforming the columns of the matrix using a 3-point NTT transform.
  `DataStorage`
  AbstractDataStorageBuilder.`createDataStorage(DataStorage dataStorage)`
  `protected DataStorage`
  ThreeNTTConvolutionStrategy.`createDataStorage(DataStorage dataStorage)`
  Create a cached data storage from the (possibly) cached data storage.
  `protected ParallelRunnable`
  DoubleNTTConvolutionStepStrategy.`createMultiplyInPlaceParallelRunnable(DataStorage sourceAndDestination, DataStorage source, int modulus)`
  Create a ParallelRunnable for multiplying the elements in-place.
  `protected ParallelRunnable`
  FloatNTTConvolutionStepStrategy.`createMultiplyInPlaceParallelRunnable(DataStorage sourceAndDestination, DataStorage source, int modulus)`
  Create a ParallelRunnable for multiplying the elements in-place.
  `protected ParallelRunnable`
  IntNTTConvolutionStepStrategy.`createMultiplyInPlaceParallelRunnable(DataStorage sourceAndDestination, DataStorage source, int modulus)`
  Create a ParallelRunnable for multiplying the elements in-place.
  `protected ParallelRunnable`
  LongNTTConvolutionStepStrategy.`createMultiplyInPlaceParallelRunnable(DataStorage sourceAndDestination, DataStorage source, int modulus)`
  Create a ParallelRunnable for multiplying the elements in-place.
  `protected ParallelRunnable`
  DoubleNTTConvolutionStepStrategy.`createSquareInPlaceParallelRunnable(DataStorage sourceAndDestination, int modulus)`
  Create a ParallelRunnable for squaring the elements in-place.
  `protected ParallelRunnable`
  FloatNTTConvolutionStepStrategy.`createSquareInPlaceParallelRunnable(DataStorage sourceAndDestination, int modulus)`
  Create a ParallelRunnable for squaring the elements in-place.
  `protected ParallelRunnable`
  IntNTTConvolutionStepStrategy.`createSquareInPlaceParallelRunnable(DataStorage sourceAndDestination, int modulus)`
  Create a ParallelRunnable for squaring the elements in-place.
  `protected ParallelRunnable`
  LongNTTConvolutionStepStrategy.`createSquareInPlaceParallelRunnable(DataStorage sourceAndDestination, int modulus)`
  Create a ParallelRunnable for squaring the elements in-place.
  `double[]`
  DoubleCarryCRTStepStrategy.`crt(DataStorage resultMod0, DataStorage resultMod1, DataStorage resultMod2, DataStorage dataStorage, long size, long resultSize, long offset, long length)`
  `float[]`
  FloatCarryCRTStepStrategy.`crt(DataStorage resultMod0, DataStorage resultMod1, DataStorage resultMod2, DataStorage dataStorage, long size, long resultSize, long offset, long length)`
  `int[]`
  IntCarryCRTStepStrategy.`crt(DataStorage resultMod0, DataStorage resultMod1, DataStorage resultMod2, DataStorage dataStorage, long size, long resultSize, long offset, long length)`
  `long[]`
  LongCarryCRTStepStrategy.`crt(DataStorage resultMod0, DataStorage resultMod1, DataStorage resultMod2, DataStorage dataStorage, long size, long resultSize, long offset, long length)`
  `protected ArrayAccess`
  TwoPassFNTStrategy.`getColumns(DataStorage dataStorage, int startColumn, int columns, int rows)`
  Get a block of column data.
  `protected ArrayAccess`
  TwoPassFNTStrategy.`getRows(DataStorage dataStorage, int startRow, int rows, int columns)`
  Get a block of row data.
  `protected void`
  DiskDataStorage.`implCopyFrom(DataStorage dataStorage, long size)`
  `protected void`
  DoubleMemoryDataStorage.`implCopyFrom(DataStorage dataStorage, long size)`
  `protected void`
  FloatMemoryDataStorage.`implCopyFrom(DataStorage dataStorage, long size)`
  `protected void`
  IntMemoryDataStorage.`implCopyFrom(DataStorage dataStorage, long size)`
  `protected void`
  LongMemoryDataStorage.`implCopyFrom(DataStorage dataStorage, long size)`
  `protected abstract void`
  AbstractStepFNTStrategy.`inverseTransform(DataStorage dataStorage, int n1, int n2, long length, long totalTransformLength, int modulus)`
  Inverse transform the data in steps.
  `void`
  AbstractStepFNTStrategy.`inverseTransform(DataStorage dataStorage, int modulus, long totalTransformLength)`
  `void`
  DoubleTableFNTStrategy.`inverseTransform(DataStorage dataStorage, int modulus, long totalTransformLength)`
  `void`
  Factor3NTTStrategy.`inverseTransform(DataStorage dataStorage, int modulus, long totalTransformLength)`
  `void`
  FloatTableFNTStrategy.`inverseTransform(DataStorage dataStorage, int modulus, long totalTransformLength)`
  `void`
  IntTableFNTStrategy.`inverseTransform(DataStorage dataStorage, int modulus, long totalTransformLength)`
  `void`
  LongTableFNTStrategy.`inverseTransform(DataStorage dataStorage, int modulus, long totalTransformLength)`
  `protected void`
  SixStepFNTStrategy.`inverseTransform(DataStorage dataStorage, int n1, int n2, long length, long totalTransformLength, int modulus)`
  `protected void`
  TwoPassFNTStrategy.`inverseTransform(DataStorage dataStorage, int n1, int n2, long length, long totalTransformLength, int modulus)`
  `protected abstract boolean`
  AbstractDataStorageBuilder.`isCached(DataStorage dataStorage)`
  Test if the data storage is of cached type.
  `protected boolean`
  DoubleDataStorageBuilder.`isCached(DataStorage dataStorage)`
  `protected boolean`
  FloatDataStorageBuilder.`isCached(DataStorage dataStorage)`
  `protected boolean`
  IntDataStorageBuilder.`isCached(DataStorage dataStorage)`
  `protected boolean`
  LongDataStorageBuilder.`isCached(DataStorage dataStorage)`
  `void`
  DoubleNTTConvolutionStepStrategy.`multiplyInPlace(DataStorage sourceAndDestination, DataStorage source, int modulus)`
  `void`
  FloatNTTConvolutionStepStrategy.`multiplyInPlace(DataStorage sourceAndDestination, DataStorage source, int modulus)`
  `void`
  IntNTTConvolutionStepStrategy.`multiplyInPlace(DataStorage sourceAndDestination, DataStorage source, int modulus)`
  `void`
  LongNTTConvolutionStepStrategy.`multiplyInPlace(DataStorage sourceAndDestination, DataStorage source, int modulus)`
  `void`
  DoubleNTTConvolutionStepStrategy.`squareInPlace(DataStorage sourceAndDestination, int modulus)`
  `void`
  FloatNTTConvolutionStepStrategy.`squareInPlace(DataStorage sourceAndDestination, int modulus)`
  `void`
  IntNTTConvolutionStepStrategy.`squareInPlace(DataStorage sourceAndDestination, int modulus)`
  `void`
  LongNTTConvolutionStepStrategy.`squareInPlace(DataStorage sourceAndDestination, int modulus)`
  `void`
  AbstractStepFNTStrategy.`transform(DataStorage dataStorage, int modulus)`
  `protected abstract void`
  AbstractStepFNTStrategy.`transform(DataStorage dataStorage, int n1, int n2, long length, int modulus)`
  Transform the data in steps.
  `void`
  DoubleTableFNTStrategy.`transform(DataStorage dataStorage, int modulus)`
  `void`
  Factor3NTTStrategy.`transform(DataStorage dataStorage, int modulus)`
  `void`
  FloatTableFNTStrategy.`transform(DataStorage dataStorage, int modulus)`
  `void`
  IntTableFNTStrategy.`transform(DataStorage dataStorage, int modulus)`
  `void`
  LongTableFNTStrategy.`transform(DataStorage dataStorage, int modulus)`
  `protected void`
  SixStepFNTStrategy.`transform(DataStorage dataStorage, int n1, int n2, long length, int modulus)`
  `protected void`
  TwoPassFNTStrategy.`transform(DataStorage dataStorage, int n1, int n2, long length, int modulus)`
  `void`
  DoubleFactor3NTTStepStrategy.`transformColumns(DataStorage dataStorage0, DataStorage dataStorage1, DataStorage dataStorage2, long startColumn, long columns, long power2length, long length, boolean isInverse, int modulus)`
  `void`
  FloatFactor3NTTStepStrategy.`transformColumns(DataStorage dataStorage0, DataStorage dataStorage1, DataStorage dataStorage2, long startColumn, long columns, long power2length, long length, boolean isInverse, int modulus)`
  `void`
  IntFactor3NTTStepStrategy.`transformColumns(DataStorage dataStorage0, DataStorage dataStorage1, DataStorage dataStorage2, long startColumn, long columns, long power2length, long length, boolean isInverse, int modulus)`
  `void`
  LongFactor3NTTStepStrategy.`transformColumns(DataStorage dataStorage0, DataStorage dataStorage1, DataStorage dataStorage2, long startColumn, long columns, long power2length, long length, boolean isInverse, int modulus)`

- ## Uses of DataStorage in org.apfloat.spi

  Methods in org.apfloat.spi that return DataStorage
  Modifier and Type
  Method
  Description
  `DataStorage`
  CarryCRTStrategy.`carryCRT(DataStorage resultMod0, DataStorage resultMod1, DataStorage resultMod2, long resultSize)`
  Calculate the final result of a three-NTT convolution.
  `DataStorage`
  ConvolutionStrategy.`convolute(DataStorage x, DataStorage y, long resultSize)`
  Convolutes the two sets of data.
  `DataStorage`
  DataStorageBuilder.`createCachedDataStorage(long size)`
  Get a data storage that is cached in memory, if possible, for the requested size of data.
  `DataStorage`
  DataStorageBuilder.`createDataStorage(long size)`
  Get an appropriate type of data storage for the requested size of data.
  `DataStorage`
  DataStorageBuilder.`createDataStorage(DataStorage dataStorage)`
  Convert cached data storage to the appropriate normal data storage type.
  `protected abstract DataStorage`
  DataStorage.`implSubsequence(long offset, long length)`
  Implementation of getting a subsequence of this data storage.
  `final DataStorage`
  DataStorage.`subsequence(long offset, long length)`
  Get a subsequence of this data storage.
  Methods in org.apfloat.spi with parameters of type DataStorage
  Modifier and Type
  Method
  Description
  `T`
  CarryCRTStepStrategy.`carry(DataStorage dataStorage, long size, long resultSize, long offset, long length, T results, T previousResults)`
  Propagate carries from the previous block computed with the CRT method.
  `DataStorage`
  CarryCRTStrategy.`carryCRT(DataStorage resultMod0, DataStorage resultMod1, DataStorage resultMod2, long resultSize)`
  Calculate the final result of a three-NTT convolution.
  `DataStorage`
  ConvolutionStrategy.`convolute(DataStorage x, DataStorage y, long resultSize)`
  Convolutes the two sets of data.
  `final void`
  DataStorage.`copyFrom(DataStorage dataStorage)`
  Copies all data from another data storage to this data storage.
  `final void`
  DataStorage.`copyFrom(DataStorage dataStorage, long size)`
  Copies the specified number of elements from another data storage to this data storage.
  `DataStorage`
  DataStorageBuilder.`createDataStorage(DataStorage dataStorage)`
  Convert cached data storage to the appropriate normal data storage type.
  `T`
  CarryCRTStepStrategy.`crt(DataStorage resultMod0, DataStorage resultMod1, DataStorage resultMod2, DataStorage dataStorage, long size, long resultSize, long offset, long length)`
  Perform the Chinese Remainder Theorem (CRT) on each element of the three result data sets to get the result of each element modulo the product of the three moduli.
  `protected abstract void`
  DataStorage.`implCopyFrom(DataStorage dataStorage, long size)`
  Copies the specified number of elements from another data storage to this data storage.
  `void`
  NTTStrategy.`inverseTransform(DataStorage dataStorage, int modulus, long totalTransformLength)`
  Perform an inverse transform on the data.
  `void`
  NTTConvolutionStepStrategy.`multiplyInPlace(DataStorage sourceAndDestination, DataStorage source, int modulus)`
  Linear multiplication in the number theoretic domain.
  `void`
  NTTConvolutionStepStrategy.`squareInPlace(DataStorage sourceAndDestination, int modulus)`
  Linear squaring in the number theoretic domain.
  `void`
  NTTStrategy.`transform(DataStorage dataStorage, int modulus)`
  Perform a forward transform on the data.
  `void`
  Factor3NTTStepStrategy.`transformColumns(DataStorage dataStorage0, DataStorage dataStorage1, DataStorage dataStorage2, long startColumn, long columns, long power2length, long length, boolean isInverse, int modulus)`
  Transform the columns of a matrix using a 3-point transform.
  Constructors in org.apfloat.spi with parameters of type DataStorage
  Modifier
  Constructor
  Description
  `protected`
  `DataStorage(DataStorage dataStorage, long offset, long length)`
  Subsequence constructor.