ucar.ma2
Class ArraySequence

java.lang.Object
  extended by ucar.ma2.Array
      extended by ucar.ma2.ArrayStructure
          extended by ucar.ma2.ArraySequence

public class ArraySequence
extends ArrayStructure

ArraySequence is the way to contain the data for a Sequence, using a StructureDataIterator. A Sequence is a one-dimensional Structure with indeterminate length. The only data access is through getStructureIterator(). So an ArraySequence is really a wrapper around a StructureDataIterator, adapting it to an Array.

Since:
Feb 27, 2008
Author:
caron

Nested Class Summary
 
Nested classes/interfaces inherited from class ucar.ma2.ArrayStructure
ArrayStructure.ArrayStructureIterator
 
Field Summary
 
Fields inherited from class ucar.ma2.ArrayStructure
members, nelems, sdata
 
Fields inherited from class ucar.ma2.Array
indexCalc, rank, unsigned
 
Constructor Summary
protected ArraySequence(StructureMembers sm, int[] shape)
           
  ArraySequence(StructureMembers members, StructureDataIterator iter, int nelems)
          Constructor
 
Method Summary
 Array extractMemberArray(StructureMembers.Member proxym)
          Extract data for one member, over all structures.
 Class getElementType()
          n
 long getSizeBytes()
          Get the total number of bytes in the array.
 int getStructureDataCount()
           
 StructureDataIterator getStructureDataIterator()
           
protected  StructureData makeStructureData(ArrayStructure as, int index)
           
 void showInternal(Formatter f, String leadingSpace)
           
 String toString()
           
 
Methods inherited from class ucar.ma2.ArrayStructure
convertScalarDouble, convertScalarFloat, convertScalarInt, convertScalarLong, copy, copyBytes, copyChars, copyDoubles, copyFloats, copyInts, copyLongs, copyObjects, copySequences, copyShorts, copyStructures, createView, findMember, getArray, getArrayObject, getArraySequence, getArrayStructure, getBoolean, getBoolean, getByte, getByte, getChar, getChar, getDouble, getDouble, getFloat, getFloat, getInt, getInt, getJavaArrayByte, getJavaArrayChar, getJavaArrayDouble, getJavaArrayFloat, getJavaArrayInt, getJavaArrayLong, getJavaArrayShort, getJavaArrayString, getLong, getLong, getMembers, getObject, getObject, getScalarByte, getScalarChar, getScalarDouble, getScalarFloat, getScalarInt, getScalarLong, getScalarObject, getScalarShort, getScalarString, getScalarStructure, getShort, getShort, getStorage, getStructureData, getStructureData, getStructureMemberNames, getStructureMembers, getStructureSize, setBoolean, setBoolean, setByte, setByte, setChar, setChar, setDouble, setDouble, setFloat, setFloat, setInt, setInt, setLong, setLong, setMemberArray, setObject, setObject, setShort, setShort, showInternalMembers
 
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, isConstant, isUnsigned, makeArray, makeArray, makeArray, next, nextBoolean, nextByte, nextChar, nextDouble, nextFloat, nextInt, nextLong, nextShort, permute, reduce, reduce, resetLocalIterator, reshape, reshapeNoCopy, section, section, section, sectionNoReduce, sectionNoReduce, setUnsigned, shapeToString, slice, transpose
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

ArraySequence

protected ArraySequence(StructureMembers sm,
                        int[] shape)

ArraySequence

public ArraySequence(StructureMembers members,
                     StructureDataIterator iter,
                     int nelems)
Constructor

Parameters:
members - the members
iter - the iterator
nelems - iterator count, may be missing (<0)
Method Detail

getElementType

public Class getElementType()
n

Overrides:
getElementType in class ArrayStructure
Returns:
StructureDataIterator.class

getStructureDataIterator

public StructureDataIterator getStructureDataIterator()
                                               throws IOException
Overrides:
getStructureDataIterator in class ArrayStructure
Throws:
IOException

getStructureDataCount

public int getStructureDataCount()

getSizeBytes

public long getSizeBytes()
Description copied from class: Array
Get the total number of bytes in the array.

Overrides:
getSizeBytes in class ArrayStructure
Returns:
total number of bytes in the array

makeStructureData

protected StructureData makeStructureData(ArrayStructure as,
                                          int index)
Specified by:
makeStructureData in class ArrayStructure

extractMemberArray

public Array extractMemberArray(StructureMembers.Member proxym)
                         throws IOException
Description copied from class: ArrayStructure
Extract data for one member, over all structures.

Overrides:
extractMemberArray in class ArrayStructure
Parameters:
proxym - get data from this StructureMembers.Member.
Returns:
Array values.
Throws:
IOException - on read error (only happens for Sequences, otherwise data is already read)

toString

public String toString()
Overrides:
toString in class Array

showInternal

public void showInternal(Formatter f,
                         String leadingSpace)
Overrides:
showInternal in class ArrayStructure


Copyright © 1999-2011 UCAR/Unidata. All Rights Reserved.