Package org.ojalgo.array
Class BufferArray
- java.lang.Object
-
- org.ojalgo.array.BasicArray<N>
-
- org.ojalgo.array.DenseArray<N>
-
- org.ojalgo.array.PlainArray<java.lang.Double>
-
- org.ojalgo.array.BufferArray
-
- All Implemented Interfaces:
java.lang.AutoCloseable
,java.util.RandomAccess
,Access1D<java.lang.Double>
,Access1D.Aggregatable<java.lang.Double>
,Access1D.Collectable<java.lang.Double,Mutate1D>
,Access1D.Visitable<java.lang.Double>
,Factory1D.Builder<DenseArray<java.lang.Double>>
,Mutate1D
,Mutate1D.Fillable<java.lang.Double>
,Mutate1D.Modifiable<java.lang.Double>
,Structure1D
- Direct Known Subclasses:
BufferR032
,BufferR064
,BufferZ008
,BufferZ016
,BufferZ032
,BufferZ064
public abstract class BufferArray extends PlainArray<java.lang.Double> implements java.lang.AutoCloseable
The odd member among the array implementations. It allows to create arrays based on memory mapped files or direct buffers.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description (package private) static interface
BufferArray.BufferConstructor
static class
BufferArray.Factory
static class
BufferArray.MappedFileFactory
-
Nested classes/interfaces inherited from interface org.ojalgo.structure.Access1D
Access1D.Aggregatable<N extends java.lang.Comparable<N>>, Access1D.Collectable<N extends java.lang.Comparable<N>,R extends Mutate1D>, Access1D.ElementView<N extends java.lang.Comparable<N>>, Access1D.SelectionView<N extends java.lang.Comparable<N>>, Access1D.Sliceable<N extends java.lang.Comparable<N>>, Access1D.Visitable<N extends java.lang.Comparable<N>>
-
Nested classes/interfaces inherited from interface org.ojalgo.structure.Mutate1D
Mutate1D.Fillable<N extends java.lang.Comparable<N>>, Mutate1D.Mixable<N extends java.lang.Comparable<N>>, Mutate1D.Modifiable<N extends java.lang.Comparable<N>>, Mutate1D.ModifiableReceiver<N extends java.lang.Comparable<N>>, Mutate1D.Receiver<N extends java.lang.Comparable<N>>, Mutate1D.Sortable
-
Nested classes/interfaces inherited from interface org.ojalgo.structure.Structure1D
Structure1D.BasicMapper<T>, Structure1D.IndexMapper<T>, Structure1D.IntIndex, Structure1D.Logical<S extends Structure1D,B extends Structure1D.Logical<S,B>>, Structure1D.LongIndex, Structure1D.LoopCallback
-
-
Field Summary
Fields Modifier and Type Field Description private java.nio.Buffer
myBuffer
private java.lang.AutoCloseable
myFile
static BufferArray.Factory
R032
static BufferArray.Factory
R064
static BufferArray.Factory
Z008
static BufferArray.Factory
Z016
static BufferArray.Factory
Z032
static BufferArray.Factory
Z064
-
Fields inherited from class org.ojalgo.array.PlainArray
CHARACTERISTICS, MAX_SIZE
-
-
Constructor Summary
Constructors Constructor Description BufferArray(BufferArray.Factory factory, java.nio.Buffer buffer, java.lang.AutoCloseable file)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected void
add(int index, byte addend)
protected void
add(int index, double addend)
protected void
add(int index, float addend)
protected void
add(int index, int addend)
protected void
add(int index, long addend)
protected void
add(int index, short addend)
void
close()
protected void
exchange(int firstA, int firstB, int step, int count)
protected void
fill(int first, int limit, int step, java.lang.Double value)
protected void
fill(int first, int limit, int step, NullaryFunction<?> supplier)
protected void
fillOne(int index, java.lang.Double value)
protected void
fillOne(int index, Access1D<?> values, long valueIndex)
java.lang.Double
get(int index)
protected int
indexOfLargest(int first, int limit, int step)
protected boolean
isAbsolute(int index)
protected boolean
isSmall(int index, double comparedTo)
protected void
modify(int first, int limit, int step, BinaryFunction<java.lang.Double> function, Access1D<java.lang.Double> right)
protected void
modify(int first, int limit, int step, UnaryFunction<java.lang.Double> function)
protected void
modify(int first, int limit, int step, Access1D<java.lang.Double> left, BinaryFunction<java.lang.Double> function)
(package private) void
modify(long extIndex, int intIndex, BinaryFunction<java.lang.Double> function, Access1D<java.lang.Double> right)
(package private) void
modify(long extIndex, int intIndex, UnaryFunction<java.lang.Double> function)
(package private) void
modify(long extIndex, int intIndex, Access1D<java.lang.Double> left, BinaryFunction<java.lang.Double> function)
protected void
modifyOne(int index, UnaryFunction<java.lang.Double> modifier)
void
reset()
Reset this mutable structure to some standard (all zeros) initial state.protected int
searchAscending(java.lang.Double number)
protected void
set(int index, java.lang.Comparable<?> value)
protected void
sortAscending()
protected void
sortDescending()
protected void
visit(int first, int limit, int step, VoidFunction<java.lang.Double> visitor)
protected void
visitOne(int index, VoidFunction<java.lang.Double> visitor)
-
Methods inherited from class org.ojalgo.array.PlainArray
add, add, add, add, add, add, add, add, byteValue, byteValue, count, doubleValue, doubleValue, exchange, fill, fill, fillAll, fillAll, fillOne, fillRange, fillRange, floatValue, floatValue, get, indexOfLargest, intValue, intValue, longValue, longValue, modify, modify, modify, modifyOne, set, set, set, set, set, set, set, set, set, set, set, set, set, shortValue, shortValue, size, visit, visitOne
-
Methods inherited from class org.ojalgo.array.DenseArray
build
-
Methods inherited from class org.ojalgo.array.BasicArray
aggregateRange, equals, factory, getMathType, hashCode, indexOfLargest, isPrimitive, modifyAll, modifyMatching, modifyMatching, modifyRange, supplyTo, toString, visitAll, visitRange, wrapInArray1D, wrapInArray2D, wrapInArrayAnyD
-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface org.ojalgo.structure.Access1D
asCollectable1D, asKeyed1D, axpy, dot, elements, nonzeros, select, supplyTo, toRawCopy1D
-
Methods inherited from interface org.ojalgo.structure.Access1D.Aggregatable
aggregateAll
-
Methods inherited from interface org.ojalgo.structure.Access1D.Collectable
collect
-
Methods inherited from interface org.ojalgo.structure.Mutate1D.Fillable
fillCompatible, fillMatching, fillMatching, fillMatching
-
-
-
-
Field Detail
-
R032
public static final BufferArray.Factory R032
-
R064
public static final BufferArray.Factory R064
-
Z008
public static final BufferArray.Factory Z008
-
Z016
public static final BufferArray.Factory Z016
-
Z032
public static final BufferArray.Factory Z032
-
Z064
public static final BufferArray.Factory Z064
-
myBuffer
private final java.nio.Buffer myBuffer
-
myFile
private final java.lang.AutoCloseable myFile
-
-
Constructor Detail
-
BufferArray
BufferArray(BufferArray.Factory factory, java.nio.Buffer buffer, java.lang.AutoCloseable file)
-
-
Method Detail
-
close
public void close()
- Specified by:
close
in interfacejava.lang.AutoCloseable
-
get
public java.lang.Double get(int index)
- Specified by:
get
in classPlainArray<java.lang.Double>
-
reset
public void reset()
Description copied from interface:Mutate1D
Reset this mutable structure to some standard (all zeros) initial state. It must still be usuable after this call, and the structure/size/shape must not change.
-
add
protected final void add(int index, byte addend)
- Overrides:
add
in classPlainArray<java.lang.Double>
-
add
protected final void add(int index, double addend)
- Specified by:
add
in classPlainArray<java.lang.Double>
-
add
protected final void add(int index, float addend)
- Overrides:
add
in classPlainArray<java.lang.Double>
-
add
protected final void add(int index, int addend)
- Overrides:
add
in classPlainArray<java.lang.Double>
-
add
protected final void add(int index, long addend)
- Overrides:
add
in classPlainArray<java.lang.Double>
-
add
protected final void add(int index, short addend)
- Overrides:
add
in classPlainArray<java.lang.Double>
-
exchange
protected void exchange(int firstA, int firstB, int step, int count)
- Specified by:
exchange
in classPlainArray<java.lang.Double>
-
fill
protected void fill(int first, int limit, int step, java.lang.Double value)
- Specified by:
fill
in classPlainArray<java.lang.Double>
-
fill
protected void fill(int first, int limit, int step, NullaryFunction<?> supplier)
- Specified by:
fill
in classPlainArray<java.lang.Double>
-
fillOne
protected void fillOne(int index, Access1D<?> values, long valueIndex)
- Specified by:
fillOne
in classPlainArray<java.lang.Double>
-
fillOne
protected void fillOne(int index, java.lang.Double value)
- Specified by:
fillOne
in classPlainArray<java.lang.Double>
-
indexOfLargest
protected int indexOfLargest(int first, int limit, int step)
- Specified by:
indexOfLargest
in classPlainArray<java.lang.Double>
-
isAbsolute
protected boolean isAbsolute(int index)
- Specified by:
isAbsolute
in classPlainArray<java.lang.Double>
- See Also:
Scalar.isAbsolute()
-
isSmall
protected boolean isSmall(int index, double comparedTo)
- Specified by:
isSmall
in classPlainArray<java.lang.Double>
- See Also:
NormedVectorSpace.isSmall(double)
-
modify
protected void modify(int first, int limit, int step, Access1D<java.lang.Double> left, BinaryFunction<java.lang.Double> function)
- Specified by:
modify
in classPlainArray<java.lang.Double>
-
modify
protected void modify(int first, int limit, int step, BinaryFunction<java.lang.Double> function, Access1D<java.lang.Double> right)
- Specified by:
modify
in classPlainArray<java.lang.Double>
-
modify
protected void modify(int first, int limit, int step, UnaryFunction<java.lang.Double> function)
- Specified by:
modify
in classPlainArray<java.lang.Double>
-
modifyOne
protected void modifyOne(int index, UnaryFunction<java.lang.Double> modifier)
- Specified by:
modifyOne
in classPlainArray<java.lang.Double>
-
searchAscending
protected int searchAscending(java.lang.Double number)
- Specified by:
searchAscending
in classPlainArray<java.lang.Double>
-
set
protected void set(int index, java.lang.Comparable<?> value)
- Specified by:
set
in classPlainArray<java.lang.Double>
-
sortAscending
protected void sortAscending()
- Specified by:
sortAscending
in classPlainArray<java.lang.Double>
-
sortDescending
protected void sortDescending()
- Specified by:
sortDescending
in classPlainArray<java.lang.Double>
-
visit
protected void visit(int first, int limit, int step, VoidFunction<java.lang.Double> visitor)
- Specified by:
visit
in classPlainArray<java.lang.Double>
-
visitOne
protected void visitOne(int index, VoidFunction<java.lang.Double> visitor)
- Specified by:
visitOne
in classPlainArray<java.lang.Double>
-
modify
void modify(long extIndex, int intIndex, Access1D<java.lang.Double> left, BinaryFunction<java.lang.Double> function)
- Specified by:
modify
in classDenseArray<java.lang.Double>
-
modify
void modify(long extIndex, int intIndex, BinaryFunction<java.lang.Double> function, Access1D<java.lang.Double> right)
- Specified by:
modify
in classDenseArray<java.lang.Double>
-
modify
void modify(long extIndex, int intIndex, UnaryFunction<java.lang.Double> function)
- Specified by:
modify
in classDenseArray<java.lang.Double>
-
-