ArraySequence, ArraySequenceNested, ArrayStructureBB, ArrayStructureComposite, ArrayStructureMA, ArrayStructureWpublic abstract class ArrayStructureBak extends Array
StructureData getStructureData(Index index).For 1D arrays (or by calculating your own recnum for nD arrays), you can also use:
StructureData getStructureData(int recnum).Once you have a StructureData object, you can access data in a general way by using:
Array StructureData.getArray(Member m)When dealing with large arrays of Structures, there can be significant overhead in using the generic interfaces. A number of convenience routines may be able to avoid extra Object creation, and so are recommended for efficiency. The following may avoid the overhead of creating the StructureData object:
Array getArray(int recno, StructureMembers.Member m)The following can be convenient for accessing all the data in the ArrayStructure for one member, but its efficiency depends on the implementation:
Array getMemberArray(StructureMembers.Member m)These require that you know the data types of the member data, but they are the most efficent:
getScalarXXX(int recnum, Member m) getJavaArrayXXX(int recnum, Member m)where XXX is Byte, Char, Double, Float, Int, Long, Short, or String. For members that are themselves Structures, the equivilent is:
StructureData getScalarStructure(int recnum, Member m) ArrayStructure getArrayStructure(int recnum, Member m)These will return any compatible type as a double or float, but will have extra overhead when the types dont match:
convertScalarXXX(int recnum, Member m) convertJavaArrayXXX(int recnum, Member m)where XXX is Double or Float
Array,
StructureData| 限定符和类型 | 类 | 说明 |
|---|---|---|
class |
ArrayStructureBak.ArrayStructureIterator |
| 限定符和类型 | 字段 | 说明 |
|---|---|---|
protected StructureMembers |
members |
|
protected int |
nelems |
|
protected StructureData[] |
sdata |
| 限定符 | 构造器 | 说明 |
|---|---|---|
protected |
ArrayStructureBak(StructureMembers members,
int[] shape) |
Create a new Array of type StructureData and the given members and shape.
|
protected |
ArrayStructureBak(StructureMembers members,
Index ima) |
| 限定符和类型 | 方法 | 说明 |
|---|---|---|
double |
convertScalarDouble(int recnum,
StructureMembers.Member m) |
Get scalar value as a double, with conversion as needed.
|
float |
convertScalarFloat(int recnum,
StructureMembers.Member m) |
Get scalar value as a float, with conversion as needed.
|
int |
convertScalarInt(int recnum,
StructureMembers.Member m) |
Get scalar value as an int, with conversion as needed.
|
long |
convertScalarLong(int recnum,
StructureMembers.Member m) |
|
Array |
copy() |
DO NOT USE, throws UnsupportedOperationException
|
protected void |
copyBytes(int recnum,
StructureMembers.Member m,
IndexIterator result) |
|
protected void |
copyChars(int recnum,
StructureMembers.Member m,
IndexIterator result) |
|
protected void |
copyDoubles(int recnum,
StructureMembers.Member m,
IndexIterator result) |
|
protected void |
copyFloats(int recnum,
StructureMembers.Member m,
IndexIterator result) |
|
protected void |
copyFrom1DJavaArray(IndexIterator iter,
Object javaArray) |
|
protected void |
copyInts(int recnum,
StructureMembers.Member m,
IndexIterator result) |
|
protected void |
copyLongs(int recnum,
StructureMembers.Member m,
IndexIterator result) |
|
protected void |
copyObjects(int recnum,
StructureMembers.Member m,
IndexIterator result) |
|
protected void |
copySequences(int recnum,
StructureMembers.Member m,
IndexIterator result) |
|
protected void |
copyShorts(int recnum,
StructureMembers.Member m,
IndexIterator result) |
|
protected void |
copyStructures(int recnum,
StructureMembers.Member m,
IndexIterator result) |
|
protected void |
copyTo1DJavaArray(IndexIterator iter,
Object javaArray) |
|
Array |
createView(Index index) |
create new Array with given Index and the same backing store
|
Array |
extractMemberArray(StructureMembers.Member m) |
Extract data for one member, over all structures.
|
StructureMembers.Member |
findMember(String memberName) |
Find a member by its name.
|
Array |
getArray(int recno,
StructureMembers.Member m) |
Get member data of any type for a specific record as an Array.
|
ArrayObject |
getArrayObject(int recnum,
StructureMembers.Member m) |
Get member data of type ArrayObject
|
ArraySequence |
getArraySequence(int recnum,
StructureMembers.Member m) |
Get member data of type ArraySequence
|
ArrayStructureBak |
getArrayStructure(int recnum,
StructureMembers.Member m) |
Get member data of type array of Structure.
|
boolean |
getBoolean(int index) |
|
boolean |
getBoolean(Index i) |
DO NOT USE, throw ForbiddenConversionException
|
byte |
getByte(int index) |
|
byte |
getByte(Index i) |
DO NOT USE, throw ForbiddenConversionException
|
char |
getChar(int index) |
|
char |
getChar(Index i) |
DO NOT USE, throw ForbiddenConversionException
|
Complex |
getComplex(int index) |
|
Complex |
getComplex(Index i) |
not legal, throw ForbiddenConversionException
|
double |
getDouble(int index) |
|
double |
getDouble(Index i) |
DO NOT USE, throw ForbiddenConversionException
|
Class |
getElementType() |
Get the element class type of this Array
|
float |
getFloat(int index) |
|
float |
getFloat(Index i) |
DO NOT USE, throw ForbiddenConversionException
|
int |
getInt(int index) |
|
int |
getInt(Index i) |
DO NOT USE, throw ForbiddenConversionException
|
byte[] |
getJavaArrayByte(int recnum,
StructureMembers.Member m) |
Get member data of type byte as a 1D array.
|
char[] |
getJavaArrayChar(int recnum,
StructureMembers.Member m) |
Get member data of type char as a 1D array.
|
double[] |
getJavaArrayDouble(int recnum,
StructureMembers.Member m) |
Get member data of type double as a 1D array.
|
float[] |
getJavaArrayFloat(int recnum,
StructureMembers.Member m) |
Get member data of type float as a 1D array.
|
int[] |
getJavaArrayInt(int recnum,
StructureMembers.Member m) |
Get member data of type int as a 1D array.
|
long[] |
getJavaArrayLong(int recnum,
StructureMembers.Member m) |
Get member data of type long as a 1D array.
|
short[] |
getJavaArrayShort(int recnum,
StructureMembers.Member m) |
Get member data of type short as a 1D array.
|
String[] |
getJavaArrayString(int recnum,
StructureMembers.Member m) |
Get member data of type String as a 1D array.
|
long |
getLong(int index) |
|
long |
getLong(Index i) |
DO NOT USE, throw ForbiddenConversionException
|
List<StructureMembers.Member> |
getMembers() |
Get a list of structure members.
|
Object |
getObject(int index) |
Get the index-th StructureData of this ArrayStructure.
|
Object |
getObject(Index i) |
Get the index-th StructureData of this ArrayStructure.
|
byte |
getScalarByte(int recnum,
StructureMembers.Member m) |
Get scalar member data of type byte.
|
char |
getScalarChar(int recnum,
StructureMembers.Member m) |
Get scalar member data of type char.
|
double |
getScalarDouble(int recnum,
StructureMembers.Member m) |
Get scalar member data of type double.
|
float |
getScalarFloat(int recnum,
StructureMembers.Member m) |
Get scalar member data of type float.
|
int |
getScalarInt(int recnum,
StructureMembers.Member m) |
Get scalar member data of type int.
|
long |
getScalarLong(int recnum,
StructureMembers.Member m) |
Get scalar member data of type long.
|
Object |
getScalarObject(int recno,
StructureMembers.Member m) |
Get member data array of any type as an Object, eg, Float, Double, String, StructureData etc.
|
short |
getScalarShort(int recnum,
StructureMembers.Member m) |
Get scalar member data of type short.
|
String |
getScalarString(int recnum,
StructureMembers.Member m) |
Get member data of type String or char.
|
StructureData |
getScalarStructure(int recnum,
StructureMembers.Member m) |
Get member data of type Structure.
|
short |
getShort(int index) |
|
short |
getShort(Index i) |
DO NOT USE, throw ForbiddenConversionException
|
long |
getSizeBytes() |
Get the total number of bytes in the array.
|
Object |
getStorage() |
Get underlying primitive array storage.
|
String |
getString(int index) |
|
String |
getString(Index i) |
not legal, throw ForbiddenConversionException
|
StructureData |
getStructureData(int index) |
Get the index-th StructureData of this ArrayStructure.
|
StructureData |
getStructureData(Index i) |
Get the index-th StructureData of this ArrayStructure.
|
StructureDataIterator |
getStructureDataIterator() |
|
List<String> |
getStructureMemberNames() |
Get a list structure member names.
|
StructureMembers |
getStructureMembers() |
Get the StructureMembers object.
|
int |
getStructureSize() |
Get the size of each StructureData object in bytes.
|
protected abstract StructureData |
makeStructureData(ArrayStructureBak as,
int recno) |
|
Array |
sectionNoReduce(List<Range> ranges) |
Create a new Array as a subsection of this Array, without rank reduction.
|
void |
setBoolean(int index,
boolean value) |
|
void |
setBoolean(Index i,
boolean value) |
DO NOT USE, throw ForbiddenConversionException
|
void |
setByte(int index,
byte value) |
|
void |
setByte(Index i,
byte value) |
DO NOT USE, throw ForbiddenConversionException
|
void |
setChar(int index,
char value) |
|
void |
setChar(Index i,
char value) |
DO NOT USE, throw ForbiddenConversionException
|
void |
setComplex(int index,
Complex value) |
|
void |
setComplex(Index i,
Complex value) |
not legal, throw ForbiddenConversionException
|
void |
setDouble(int index,
double value) |
|
void |
setDouble(Index i,
double value) |
DO NOT USE, throw ForbiddenConversionException
|
void |
setFloat(int index,
float value) |
|
void |
setFloat(Index i,
float value) |
DO NOT USE, throw ForbiddenConversionException
|
void |
setInt(int index,
int value) |
|
void |
setInt(Index i,
int value) |
DO NOT USE, throw ForbiddenConversionException
|
void |
setLong(int index,
long value) |
|
void |
setLong(Index i,
long value) |
DO NOT USE, throw ForbiddenConversionException
|
void |
setMemberArray(StructureMembers.Member m,
Array memberArray) |
Set data for one member, over all structures.
|
void |
setObject(int index,
Object value) |
Set the index-th StructureData of this ArrayStructure.
|
void |
setObject(Index i,
Object value) |
Set one of the StructureData of this ArrayStructure.
|
void |
setShort(int index,
short value) |
|
void |
setShort(Index i,
short value) |
DO NOT USE, throw ForbiddenConversionException
|
void |
setString(int index,
String value) |
|
void |
setString(Index i,
String value) |
not legal, throw ForbiddenConversionException
|
void |
showInternal(Formatter f,
Indent indent) |
|
void |
showInternalMembers(Formatter f,
Indent indent) |
arraycopy, copyTo1DJavaArray, copyToNDJavaArray, factory, factory, factory, factory, factory, factory, factoryConstant, flip, get1DJavaArray, getDataAsByteBuffer, getDataAsByteBuffer, getDataAsByteBuffer, getDataType, getIndex, getIndexIterator, getIndexIteratorFast, getIndexPrivate, getRangeIterator, getRank, getShape, getSize, hasNext, isConstant, isUnsigned, makeArray, makeArray, makeArray, makeArray, makeArrayRankPlusOne, next, nextBoolean, nextByte, nextChar, nextDouble, nextFloat, nextInt, nextLong, nextShort, permute, reduce, reduce, resetLocalIterator, reshape, reshapeNoCopy, reshapeVLen, section, section, section, sectionNoReduce, setUnsigned, shapeToString, slice, toString, transposeprotected StructureMembers members
protected int nelems
protected StructureData[] sdata
protected ArrayStructureBak(StructureMembers members, int[] shape)
members - a description of the structure membersshape - the shape of the Array.protected ArrayStructureBak(StructureMembers members, Index ima)
protected void copyFrom1DJavaArray(IndexIterator iter, Object javaArray)
copyFrom1DJavaArray 在类中 Arrayprotected void copyTo1DJavaArray(IndexIterator iter, Object javaArray)
copyTo1DJavaArray 在类中 Arraypublic Class getElementType()
ArraygetElementType 在类中 Arraypublic StructureMembers getStructureMembers()
public List<StructureMembers.Member> getMembers()
public List<String> getStructureMemberNames()
public StructureMembers.Member findMember(String memberName)
memberName - find member with this namepublic long getSizeBytes()
ArraygetSizeBytes 在类中 Arraypublic void setObject(Index i, Object value)
public Object getObject(int index)
public void setObject(int index,
Object value)
public StructureData getStructureData(Index i)
i - which one to get, specified by an Index.public StructureData getStructureData(int index)
index - which one to get, specified by an integer.public Object getStorage()
ArraygetStorage 在类中 Arrayprotected abstract StructureData makeStructureData(ArrayStructureBak as, int recno)
public int getStructureSize()
public StructureDataIterator getStructureDataIterator()
public Array getArray(int recno, StructureMembers.Member m)
recno - get data from the recnum-th StructureData of the ArrayStructure. Must be less than getSize();m - get data from this StructureMembers.Member.public void setMemberArray(StructureMembers.Member m, Array memberArray)
m - set data for this StructureMembers.Member.memberArray - Array values.public Array extractMemberArray(StructureMembers.Member m) throws IOException
m - get data from this StructureMembers.Member.IOException - on read error (only happens for Sequences, otherwise data is already read)protected void copyChars(int recnum,
StructureMembers.Member m,
IndexIterator result)
protected void copyDoubles(int recnum,
StructureMembers.Member m,
IndexIterator result)
protected void copyFloats(int recnum,
StructureMembers.Member m,
IndexIterator result)
protected void copyBytes(int recnum,
StructureMembers.Member m,
IndexIterator result)
protected void copyShorts(int recnum,
StructureMembers.Member m,
IndexIterator result)
protected void copyInts(int recnum,
StructureMembers.Member m,
IndexIterator result)
protected void copyLongs(int recnum,
StructureMembers.Member m,
IndexIterator result)
protected void copyObjects(int recnum,
StructureMembers.Member m,
IndexIterator result)
protected void copyStructures(int recnum,
StructureMembers.Member m,
IndexIterator result)
protected void copySequences(int recnum,
StructureMembers.Member m,
IndexIterator result)
public Object getScalarObject(int recno, StructureMembers.Member m)
recno - get data from the recnum-th StructureData of the ArrayStructure. Must be less than getSize();m - get data from this StructureMembers.Member.public float convertScalarFloat(int recnum,
StructureMembers.Member m)
recnum - get data from the recnum-th StructureData of the ArrayStructure. Must be less than getSize();m - member Variable.ForbiddenConversionException - if not convertible to float.public double convertScalarDouble(int recnum,
StructureMembers.Member m)
recnum - get data from the recnum-th StructureData of the ArrayStructure. Must be less than getSize();m - member Variable.ForbiddenConversionException - if not convertible to double.public int convertScalarInt(int recnum,
StructureMembers.Member m)
recnum - get data from the recnum-th StructureData of the ArrayStructure. Must be less than getSize();m - member Variable.ForbiddenConversionException - if not convertible to double.public long convertScalarLong(int recnum,
StructureMembers.Member m)
public double getScalarDouble(int recnum,
StructureMembers.Member m)
recnum - get data from the recnum-th StructureData of the ArrayStructure. Must be less than getSize();m - get data from this StructureMembers.Member. Must be of type double.public double[] getJavaArrayDouble(int recnum,
StructureMembers.Member m)
recnum - get data from the recnum-th StructureData of the ArrayStructure. Must be less than getSize();m - get data from this StructureMembers.Member. Must be of type double.public float getScalarFloat(int recnum,
StructureMembers.Member m)
recnum - get data from the recnum-th StructureData of the ArrayStructure. Must be less than getSize();m - get data from this StructureMembers.Member. Must be of type float.public float[] getJavaArrayFloat(int recnum,
StructureMembers.Member m)
recnum - get data from the recnum-th StructureData of the ArrayStructure. Must be less than getSize();m - get data from this StructureMembers.Member. Must be of type float.public byte getScalarByte(int recnum,
StructureMembers.Member m)
recnum - get data from the recnum-th StructureData of the ArrayStructure. Must be less than getSize();m - get data from this StructureMembers.Member. Must be of type byte.public byte[] getJavaArrayByte(int recnum,
StructureMembers.Member m)
recnum - get data from the recnum-th StructureData of the ArrayStructure. Must be less than getSize();m - get data from this StructureMembers.Member. Must be of type byte.public short getScalarShort(int recnum,
StructureMembers.Member m)
recnum - get data from the recnum-th StructureData of the ArrayStructure. Must be less than getSize();m - get data from this StructureMembers.Member. Must be of type short.public short[] getJavaArrayShort(int recnum,
StructureMembers.Member m)
recnum - get data from the recnum-th StructureData of the ArrayStructure. Must be less than getSize();m - get data from this StructureMembers.Member. Must be of type float.public int getScalarInt(int recnum,
StructureMembers.Member m)
recnum - get data from the recnum-th StructureData of the ArrayStructure. Must be less than getSize();m - get data from this StructureMembers.Member. Must be of type int.public int[] getJavaArrayInt(int recnum,
StructureMembers.Member m)
recnum - get data from the recnum-th StructureData of the ArrayStructure. Must be less than getSize();m - get data from this StructureMembers.Member. Must be of type int.public long getScalarLong(int recnum,
StructureMembers.Member m)
recnum - get data from the recnum-th StructureData of the ArrayStructure. Must be less than getSize();m - get data from this StructureMembers.Member. Must be of type long.public long[] getJavaArrayLong(int recnum,
StructureMembers.Member m)
recnum - get data from the recnum-th StructureData of the ArrayStructure. Must be less than getSize();m - get data from this StructureMembers.Member. Must be of type long.public char getScalarChar(int recnum,
StructureMembers.Member m)
recnum - get data from the recnum-th StructureData of the ArrayStructure. Must be less than getSize();m - get data from this StructureMembers.Member. Must be of type char.public char[] getJavaArrayChar(int recnum,
StructureMembers.Member m)
recnum - get data from the recnum-th StructureData of the ArrayStructure. Must be less than getSize();m - get data from this StructureMembers.Member. Must be of type char.public String getScalarString(int recnum, StructureMembers.Member m)
recnum - get data from the recnum-th StructureData of the ArrayStructure. Must be less than getSize();m - get data from this StructureMembers.Member. Must be of type String or char.public String[] getJavaArrayString(int recnum, StructureMembers.Member m)
recnum - get data from the recnum-th StructureData of the ArrayStructure. Must be less than getSize();m - get data from this StructureMembers.Member. Must be of type String.public StructureData getScalarStructure(int recnum, StructureMembers.Member m)
recnum - get data from the recnum-th StructureData of the ArrayStructure. Must be less than getSize();m - get data from this StructureMembers.Member. Must be of type Structure.public ArrayStructureBak getArrayStructure(int recnum, StructureMembers.Member m)
recnum - get data from the recnum-th StructureData of the ArrayStructure. Must be less than getSize();m - get data from this StructureMembers.Member. Must be of type Structure.public ArraySequence getArraySequence(int recnum, StructureMembers.Member m)
recnum - get data from the recnum-th StructureData of the ArrayStructure. Must be less than getSize();m - get data from this StructureMembers.Member. Must be of type Structure.public ArrayObject getArrayObject(int recnum, StructureMembers.Member m)
recnum - get data from the recnum-th StructureData of the ArrayStructure. Must be less than getSize();m - get data from this StructureMembers.Member. Must be of type Structure.public Array createView(Index index)
ArraycreateView 在类中 Arrayindex - use this Indexpublic Array sectionNoReduce(List<Range> ranges) throws InvalidRangeException
ArraysectionNoReduce 在类中 Arrayranges - list of Ranges that specify the array subset. Must be same
rank as original Array. A particular Range: 1) may be a subset, or 2) may
be null, meaning use entire Range.InvalidRangeException - if ranges is invalidpublic Array copy()
public double getDouble(Index i)
public void setDouble(Index i, double value)
public float getFloat(Index i)
public void setFloat(Index i, float value)
public long getLong(Index i)
public void setLong(Index i, long value)
public int getInt(Index i)
public void setInt(Index i, int value)
public short getShort(Index i)
public void setShort(Index i, short value)
public byte getByte(Index i)
public void setByte(Index i, byte value)
public boolean getBoolean(Index i)
getBoolean 在类中 Arrayi - Index with current element setindex cast to boolean if necessary.public void setBoolean(Index i, boolean value)
setBoolean 在类中 Arrayi - Index with current element setvalue - the new value; cast to underlying data type if necessary.public void setString(Index i, String value)
public Complex getComplex(Index i)
getComplex 在类中 Arrayi - Index with current element setindex cast to boolean if necessary.public void setComplex(Index i, Complex value)
setComplex 在类中 Arrayi - Index with current element setvalue - the new value; cast to underlying data type if necessary.public char getChar(Index i)
public void setChar(Index i, char value)
public boolean getBoolean(int index)
getBoolean 在类中 Arraypublic void setBoolean(int index,
boolean value)
setBoolean 在类中 Arraypublic Complex getComplex(int index)
getComplex 在类中 Arraypublic void setComplex(int index,
Complex value)
setComplex 在类中 ArrayCopyright © 2019. All rights reserved.