|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectucar.ma2.Array
ucar.ma2.ArrayStructure
public abstract class ArrayStructure
Superclass for implementations of Array of StructureData.
The general way to access data in an ArrayStructure is to useStructureData getStructureData(Index index).For 1D arrays (or by caclulating 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
Method Summary | |
---|---|
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. |
Array |
copy()
DO NOT USE, throws UnsupportedOperationException |
Array |
createView(Index index)
DO NOT USE, throws UnsupportedOperationException |
Array |
extractMemberArray(StructureMembers.Member m)
Extract data for one member, over all structures. |
StructureMembers.Member |
findMember(java.lang.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 |
ArrayStructure |
getArrayStructure(int recnum,
StructureMembers.Member m)
Get member data of type array of Structure. |
boolean |
getBoolean(Index i)
DO NOT USE, throw ForbiddenConversionException |
boolean |
getBoolean(int index)
|
byte |
getByte(Index i)
DO NOT USE, throw ForbiddenConversionException |
byte |
getByte(int index)
|
char |
getChar(Index i)
DO NOT USE, throw ForbiddenConversionException |
char |
getChar(int index)
|
double |
getDouble(Index i)
DO NOT USE, throw ForbiddenConversionException |
double |
getDouble(int index)
|
java.lang.Class |
getElementType()
Get the element class type of this Array |
float |
getFloat(Index i)
DO NOT USE, throw ForbiddenConversionException |
float |
getFloat(int index)
|
int |
getInt(Index i)
DO NOT USE, throw ForbiddenConversionException |
int |
getInt(int index)
|
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. |
java.lang.String[] |
getJavaArrayString(int recnum,
StructureMembers.Member m)
Get member data of type String as a 1D array. |
long |
getLong(Index i)
DO NOT USE, throw ForbiddenConversionException |
long |
getLong(int index)
|
java.util.List<StructureMembers.Member> |
getMembers()
Get a list of structure members. |
java.lang.Object |
getObject(Index i)
Get the index-th StructureData of this ArrayStructure. |
java.lang.Object |
getObject(int index)
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. |
java.lang.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. |
java.lang.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(Index i)
DO NOT USE, throw ForbiddenConversionException |
short |
getShort(int index)
|
long |
getSizeBytes()
Get the total number of bytes in the array. |
java.lang.Object |
getStorage()
Get underlying primitive array storage. |
StructureData |
getStructureData(Index i)
Get the index-th StructureData of this ArrayStructure. |
StructureData |
getStructureData(int index)
Get the index-th StructureData of this ArrayStructure. |
StructureDataIterator |
getStructureDataIterator()
|
java.util.List<java.lang.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. |
void |
setBoolean(Index i,
boolean value)
DO NOT USE, throw ForbiddenConversionException |
void |
setBoolean(int index,
boolean value)
|
void |
setByte(Index i,
byte value)
DO NOT USE, throw ForbiddenConversionException |
void |
setByte(int index,
byte value)
|
void |
setChar(Index i,
char value)
DO NOT USE, throw ForbiddenConversionException |
void |
setChar(int index,
char value)
|
void |
setDouble(Index i,
double value)
DO NOT USE, throw ForbiddenConversionException |
void |
setDouble(int index,
double value)
|
void |
setFloat(Index i,
float value)
DO NOT USE, throw ForbiddenConversionException |
void |
setFloat(int index,
float value)
|
void |
setInt(Index i,
int value)
DO NOT USE, throw ForbiddenConversionException |
void |
setInt(int index,
int value)
|
void |
setLong(Index i,
long value)
DO NOT USE, throw ForbiddenConversionException |
void |
setLong(int index,
long value)
|
void |
setMemberArray(StructureMembers.Member m,
Array memberArray)
Set data for one member, over all structures. |
void |
setObject(Index i,
java.lang.Object value)
Set one of the StructureData of this ArrayStructure. |
void |
setObject(int index,
java.lang.Object value)
Set the index-th StructureData of this ArrayStructure. |
void |
setShort(Index i,
short value)
DO NOT USE, throw ForbiddenConversionException |
void |
setShort(int index,
short value)
|
Methods inherited from class ucar.ma2.Array |
---|
arraycopy, copyTo1DJavaArray, copyToNDJavaArray, factory, factory, factory, factory, factory, factory, factoryConstant, flip, get1DJavaArray, getDataAsByteBuffer, getIndex, getIndexIterator, getIndexIteratorFast, getIndexPrivate, getRangeIterator, getRank, getShape, getSize, hasNext, isUnsigned, makeArray, makeArray, makeArray, next, nextBoolean, nextByte, nextChar, nextDouble, nextFloat, nextInt, nextLong, nextShort, permute, reduce, reduce, resetLocalIterator, reshape, section, section, section, sectionNoReduce, sectionNoReduce, setUnsigned, shapeToString, slice, toString, transpose |
Methods inherited from class java.lang.Object |
---|
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Method Detail |
---|
public java.lang.Class getElementType()
Array
getElementType
in class Array
public StructureMembers getStructureMembers()
public java.util.List<StructureMembers.Member> getMembers()
public java.util.List<java.lang.String> getStructureMemberNames()
public StructureMembers.Member findMember(java.lang.String memberName)
memberName
- find member with this name
public long getSizeBytes()
Array
getSizeBytes
in class Array
public java.lang.Object getObject(Index i)
getObject
in class Array
i
- which one to get, specified by an Index.
public void setObject(Index i, java.lang.Object value)
setObject
in class Array
i
- which one to set, specified by an Index.value
- must be type StructureData.public java.lang.Object getObject(int index)
getObject
in class Array
index
- which one to get, specified by an integer.
public void setObject(int index, java.lang.Object value)
setObject
in class Array
index
- which one to set.value
- must be type StructureData.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 java.lang.Object getStorage()
Array
getStorage
in class Array
public int getStructureSize()
public StructureDataIterator getStructureDataIterator() throws java.io.IOException
java.io.IOException
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 java.io.IOException
m
- get data from this StructureMembers.Member.
java.io.IOException
- on read error (only happens for Sequences, otherwise data is already read)public java.lang.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 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 java.lang.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 java.lang.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 ArrayStructure 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)
index
- use this Index
public Array copy()
copy
in class Array
public double getDouble(Index i)
getDouble
in class Array
i
- Index with current element set
index
cast to double if necessary.public void setDouble(Index i, double value)
setDouble
in class Array
i
- Index with current element setvalue
- the new value; cast to underlying data type if necessary.public float getFloat(Index i)
getFloat
in class Array
i
- Index with current element set
index
cast to float if necessary.public void setFloat(Index i, float value)
setFloat
in class Array
i
- Index with current element setvalue
- the new value; cast to underlying data type if necessary.public long getLong(Index i)
getLong
in class Array
i
- Index with current element set
index
cast to long if necessary.public void setLong(Index i, long value)
setLong
in class Array
i
- Index with current element setvalue
- the new value; cast to underlying data type if necessary.public int getInt(Index i)
getInt
in class Array
i
- Index with current element set
index
cast to int if necessary.public void setInt(Index i, int value)
setInt
in class Array
i
- Index with current element setvalue
- the new value; cast to underlying data type if necessary.public short getShort(Index i)
getShort
in class Array
i
- Index with current element set
index
cast to short if necessary.public void setShort(Index i, short value)
setShort
in class Array
i
- Index with current element setvalue
- the new value; cast to underlying data type if necessary.public byte getByte(Index i)
getByte
in class Array
i
- Index with current element set
index
cast to float if necessary.public void setByte(Index i, byte value)
setByte
in class Array
i
- Index with current element setvalue
- the new value; cast to underlying data type if necessary.public boolean getBoolean(Index i)
getBoolean
in class Array
i
- Index with current element set
index
cast to boolean if necessary.public void setBoolean(Index i, boolean value)
setBoolean
in class Array
i
- Index with current element setvalue
- the new value; cast to underlying data type if necessary.public char getChar(Index i)
getChar
in class Array
i
- Index with current element set
index
cast to char if necessary.public void setChar(Index i, char value)
setChar
in class Array
i
- Index with current element setvalue
- the new value; cast to underlying data type if necessary.public double getDouble(int index)
getDouble
in class Array
public void setDouble(int index, double value)
setDouble
in class Array
public float getFloat(int index)
getFloat
in class Array
public void setFloat(int index, float value)
setFloat
in class Array
public long getLong(int index)
getLong
in class Array
public void setLong(int index, long value)
setLong
in class Array
public int getInt(int index)
getInt
in class Array
public void setInt(int index, int value)
setInt
in class Array
public short getShort(int index)
getShort
in class Array
public void setShort(int index, short value)
setShort
in class Array
public byte getByte(int index)
getByte
in class Array
public void setByte(int index, byte value)
setByte
in class Array
public char getChar(int index)
getChar
in class Array
public void setChar(int index, char value)
setChar
in class Array
public boolean getBoolean(int index)
getBoolean
in class Array
public void setBoolean(int index, boolean value)
setBoolean
in class Array
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |