Package org.ojalgo.array
Class ArrayFactory<N extends java.lang.Comparable<N>,I extends BasicArray<N>>
- java.lang.Object
-
- org.ojalgo.array.ArrayFactory<N,I>
-
- All Implemented Interfaces:
Factory1D<I>
,FactorySupplement
- Direct Known Subclasses:
BasicArray.Factory
,DenseArray.Factory
abstract class ArrayFactory<N extends java.lang.Comparable<N>,I extends BasicArray<N>> extends java.lang.Object implements Factory1D<I>
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface org.ojalgo.structure.Factory1D
Factory1D.Builder<I extends Structure1D>, Factory1D.MayBeSparse<I extends Structure1D,DENSE extends Factory1D.Builder<I>,SPARSE extends Factory1D.Builder<I>>, Factory1D.TwoStep<I extends Structure1D,B extends Factory1D.Builder<I>>
-
-
Constructor Summary
Constructors Constructor Description ArrayFactory()
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description (package private) abstract AggregatorSet<N>
aggregator()
abstract FunctionSet<N>
function()
(package private) abstract long
getCapacityLimit()
I
make(int size)
I
make(long count)
(package private) SegmentedArray<N>
makeSegmented(long... structure)
(package private) abstract I
makeStructuredZero(long... structure)
Typically sparse, but if very small then dense If very large then also segmented(package private) abstract I
makeToBeFilled(long... structure)
Always dense, but maybe segmentedabstract Scalar.Factory<N>
scalar()
(package private) SegmentedArray<N>
wrapAsSegments(BasicArray<N>... segments)
There are several requirements on the segments: All segments, except possibly the last, must have the same length/size/count. That size must be a power of 2. The size of the last segment must be <= "the segment size".-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.ojalgo.structure.FactorySupplement
getMathType
-
-
-
-
Method Detail
-
function
public abstract FunctionSet<N> function()
- Specified by:
function
in interfaceFactorySupplement
-
make
public I make(int size)
-
make
public I make(long count)
-
scalar
public abstract Scalar.Factory<N> scalar()
- Specified by:
scalar
in interfaceFactorySupplement
-
aggregator
abstract AggregatorSet<N> aggregator()
-
getCapacityLimit
abstract long getCapacityLimit()
-
makeSegmented
SegmentedArray<N> makeSegmented(long... structure)
-
makeStructuredZero
abstract I makeStructuredZero(long... structure)
Typically sparse, but if very small then dense If very large then also segmented
-
makeToBeFilled
abstract I makeToBeFilled(long... structure)
Always dense, but maybe segmented
-
wrapAsSegments
@SafeVarargs final SegmentedArray<N> wrapAsSegments(BasicArray<N>... segments)
There are several requirements on the segments:- All segments, except possibly the last, must have the same length/size/count.
- That size must be a power of 2.
- The size of the last segment must be <= "the segment size".
- Throws:
java.lang.IllegalArgumentException
- if either of the 3 requirements are broken.
-
-