Package net.algart.arrays
Enum Class Arrays.CopyAlgorithm
- All Implemented Interfaces:
Serializable
,Comparable<Arrays.CopyAlgorithm>
,Constable
- Enclosing class:
Arrays
The information about the internal algorithm, which was used by copying methods of this package:
Arrays.copy(ArrayContext, UpdatableArray, Array)
,
Arrays.copy(ArrayContext, UpdatableArray, Array, int, boolean)
,
Arrays.compareAndCopy(ArrayContext, UpdatableArray, Array)
,
Matrices.copy(ArrayContext, Matrix, Matrix)
, etc.
This information is returned by Arrays.CopyStatus.algorithm()
method of the object,
returned by all these copying methods.
Can be useful for profiling and debugging needs.-
Nested Class Summary
Nested classes/interfaces inherited from class java.lang.Enum
Enum.EnumDesc<E extends Enum<E>>
-
Enum Constant Summary
Enum ConstantDescriptionThe optimized algorithm, used byArrays.copy(ArrayContext, UpdatableArray, Array, int, boolean)
method in "non-strict" mode: it splits the underlying array of the source one into "layers" (by the last coordinate, if it is amatrix
) and preloads every layer into Java memory before copying.The optimized algorithm, used byArrays.copy(ArrayContext, UpdatableArray, Array, int, boolean)
method in "non-strict" mode: it preloads the underlying array of the source one into Java memory before copying.The optimized algorithm, used byArrays.copy(ArrayContext, UpdatableArray, Array, int, boolean)
method in "non-strict" mode: it recursibly splits the underlying array of the source one into a tree of "tiles" (by all coordinates, if it is amatrix
) and preloads every tile, which is little enough, into Java memory before copying.The optimized algorithm, used byArrays.copy(ArrayContext, UpdatableArray, Array, int, boolean)
method in "non-strict" mode: it splits the underlying array of the source one into a regular grid of "tiles" (by all coordinates, if it is amatrix
) and preloads every tile into Java memory before copying.Usual parallel copying algorithm, implemented byArrays.Copier
class or by the analogous private class, used byArrays.compareAndCopy(ArrayContext, UpdatableArray, Array)
method. -
Method Summary
Modifier and TypeMethodDescriptionstatic Arrays.CopyAlgorithm
Returns the enum constant of this class with the specified name.static Arrays.CopyAlgorithm[]
values()
Returns an array containing the constants of this enum class, in the order they are declared.
-
Enum Constant Details
-
SIMPLE
Usual parallel copying algorithm, implemented byArrays.Copier
class or by the analogous private class, used byArrays.compareAndCopy(ArrayContext, UpdatableArray, Array)
method. -
BUFFERING_WHOLE_ARRAY
The optimized algorithm, used byArrays.copy(ArrayContext, UpdatableArray, Array, int, boolean)
method in "non-strict" mode: it preloads the underlying array of the source one into Java memory before copying. May be used if the source array is a view of some underlying array, created not bySimpleMemoryModel
: some views of such arrays, for example, geometrical matrix transformations, work much faster if the underlying array is located in a usual Java memory (SimpleMemoryModel
). -
BUFFERING_LAYERS
The optimized algorithm, used byArrays.copy(ArrayContext, UpdatableArray, Array, int, boolean)
method in "non-strict" mode: it splits the underlying array of the source one into "layers" (by the last coordinate, if it is amatrix
) and preloads every layer into Java memory before copying. May be used if the source array is a view of some underlying array, created not bySimpleMemoryModel
: some views of such arrays, for example, geometrical matrix transformations, work much faster if the underlying array is located in a usual Java memory (SimpleMemoryModel
). -
REGULAR_BUFFERING_TILES
The optimized algorithm, used byArrays.copy(ArrayContext, UpdatableArray, Array, int, boolean)
method in "non-strict" mode: it splits the underlying array of the source one into a regular grid of "tiles" (by all coordinates, if it is amatrix
) and preloads every tile into Java memory before copying. May be used if the source array is a view of some underlying array, created not bySimpleMemoryModel
: some views of such arrays, for example, geometrical matrix transformations, work much faster if the underlying array is located in a usual Java memory (SimpleMemoryModel
). -
RECURSIVE_BUFFERING_TILES
The optimized algorithm, used byArrays.copy(ArrayContext, UpdatableArray, Array, int, boolean)
method in "non-strict" mode: it recursibly splits the underlying array of the source one into a tree of "tiles" (by all coordinates, if it is amatrix
) and preloads every tile, which is little enough, into Java memory before copying. May be used if the source array is a view of some underlying array, created not bySimpleMemoryModel
: some views of such arrays, for example, geometrical matrix transformations, work much faster if the underlying array is located in a usual Java memory (SimpleMemoryModel
). -
TILING
-
UNTILING
-
-
Method Details
-
values
Returns an array containing the constants of this enum class, in the order they are declared.- Returns:
- an array containing the constants of this enum class, in the order they are declared
-
valueOf
Returns the enum constant of this class with the specified name. The string must match exactly an identifier used to declare an enum constant in this class. (Extraneous whitespace characters are not permitted.)- Parameters:
name
- the name of the enum constant to be returned.- Returns:
- the enum constant with the specified name
- Throws:
IllegalArgumentException
- if this enum class has no constant with the specified nameNullPointerException
- if the argument is null
-