类 ArraySequenceNested


  • public class ArraySequenceNested
    extends ArrayStructureBak
    Handles nested sequences: a 1D array of variable length 1D arrays of StructureData. Uses same technique as ArrayStructureMA for the inner fields; data storage is in member arrays. Used only by opendap internals. Example use:
        ArraySequence aseq = new ArraySequence( members, outerLength);
        for (int seq=0; seq < outerLength; seq++) {
          aseq.setSequenceLength(seq, seqLength);
        }
        aseq.finish();
     
    作者:
    caron
    • 构造器详细资料

      • ArraySequenceNested

        public ArraySequenceNested​(StructureMembers members,
                                   int nseq)
        This is used for inner sequences, ie variable length structures nested inside of another structure.
        参数:
        members - the members of the STructure
        nseq - the number of sequences, ie the length of the outer structure.
    • 方法详细资料

      • getStructureData

        public StructureData getStructureData​(int index)
        从类复制的说明: ArrayStructureBak
        Get the index-th StructureData of this ArrayStructure.
        覆盖:
        getStructureData 在类中 ArrayStructureBak
        参数:
        index - which one to get, specified by an integer.
        返回:
        object of type StructureData.
      • setSequenceLength

        public void setSequenceLength​(int outerIndex,
                                      int len)
        Set the length of one of the sequences.
        参数:
        outerIndex - which sequence?
        len - what is its length?
      • getSequenceLength

        public int getSequenceLength​(int outerIndex)
        Get the length of the ith sequence.
        参数:
        outerIndex - which sequence?
        返回:
        its length
      • getSequenceOffset

        public int getSequenceOffset​(int outerIndex)
        Get the the starting index of the ith sequence.
        参数:
        outerIndex - which sequence?
        返回:
        its starting index
      • finish

        public void finish()
        Call this when you have set all the sequence lengths.
      • getTotalNumberOfStructures

        public int getTotalNumberOfStructures()
        返回:
        the total number of Structures over all the nested sequences.
      • flatten

        public ArrayStructureBak flatten()
        Flatten the Structures into a 1D array of Structures of length getTotalNumberOfStructures().
        返回:
        Array of Structures
      • getScalarDouble

        public double getScalarDouble​(int recnum,
                                      StructureMembers.Member m)
        从类复制的说明: ArrayStructureBak
        Get scalar member data of type double.
        覆盖:
        getScalarDouble 在类中 ArrayStructureBak
        参数:
        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.
        返回:
        scalar double value
      • getJavaArrayDouble

        public double[] getJavaArrayDouble​(int recnum,
                                           StructureMembers.Member m)
        从类复制的说明: ArrayStructureBak
        Get member data of type double as a 1D array. The member data may be any rank.
        覆盖:
        getJavaArrayDouble 在类中 ArrayStructureBak
        参数:
        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.
        返回:
        double[]
      • getScalarFloat

        public float getScalarFloat​(int recnum,
                                    StructureMembers.Member m)
        从类复制的说明: ArrayStructureBak
        Get scalar member data of type float.
        覆盖:
        getScalarFloat 在类中 ArrayStructureBak
        参数:
        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.
        返回:
        scalar double value
      • getJavaArrayFloat

        public float[] getJavaArrayFloat​(int recnum,
                                         StructureMembers.Member m)
        从类复制的说明: ArrayStructureBak
        Get member data of type float as a 1D array.
        覆盖:
        getJavaArrayFloat 在类中 ArrayStructureBak
        参数:
        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.
        返回:
        float[]
      • getScalarByte

        public byte getScalarByte​(int recnum,
                                  StructureMembers.Member m)
        从类复制的说明: ArrayStructureBak
        Get scalar member data of type byte.
        覆盖:
        getScalarByte 在类中 ArrayStructureBak
        参数:
        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.
        返回:
        scalar double value
      • getJavaArrayByte

        public byte[] getJavaArrayByte​(int recnum,
                                       StructureMembers.Member m)
        从类复制的说明: ArrayStructureBak
        Get member data of type byte as a 1D array.
        覆盖:
        getJavaArrayByte 在类中 ArrayStructureBak
        参数:
        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.
        返回:
        byte[]
      • getScalarShort

        public short getScalarShort​(int recnum,
                                    StructureMembers.Member m)
        从类复制的说明: ArrayStructureBak
        Get scalar member data of type short.
        覆盖:
        getScalarShort 在类中 ArrayStructureBak
        参数:
        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.
        返回:
        scalar double value
      • getJavaArrayShort

        public short[] getJavaArrayShort​(int recnum,
                                         StructureMembers.Member m)
        从类复制的说明: ArrayStructureBak
        Get member data of type short as a 1D array.
        覆盖:
        getJavaArrayShort 在类中 ArrayStructureBak
        参数:
        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.
        返回:
        short[]
      • getScalarInt

        public int getScalarInt​(int recnum,
                                StructureMembers.Member m)
        从类复制的说明: ArrayStructureBak
        Get scalar member data of type int.
        覆盖:
        getScalarInt 在类中 ArrayStructureBak
        参数:
        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.
        返回:
        scalar double value
      • getJavaArrayInt

        public int[] getJavaArrayInt​(int recnum,
                                     StructureMembers.Member m)
        从类复制的说明: ArrayStructureBak
        Get member data of type int as a 1D array.
        覆盖:
        getJavaArrayInt 在类中 ArrayStructureBak
        参数:
        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.
        返回:
        int[]
      • getScalarLong

        public long getScalarLong​(int recnum,
                                  StructureMembers.Member m)
        从类复制的说明: ArrayStructureBak
        Get scalar member data of type long.
        覆盖:
        getScalarLong 在类中 ArrayStructureBak
        参数:
        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.
        返回:
        scalar double value
      • getJavaArrayLong

        public long[] getJavaArrayLong​(int recnum,
                                       StructureMembers.Member m)
        从类复制的说明: ArrayStructureBak
        Get member data of type long as a 1D array.
        覆盖:
        getJavaArrayLong 在类中 ArrayStructureBak
        参数:
        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.
        返回:
        long[]
      • getScalarChar

        public char getScalarChar​(int recnum,
                                  StructureMembers.Member m)
        从类复制的说明: ArrayStructureBak
        Get scalar member data of type char.
        覆盖:
        getScalarChar 在类中 ArrayStructureBak
        参数:
        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.
        返回:
        scalar double value
      • getJavaArrayChar

        public char[] getJavaArrayChar​(int recnum,
                                       StructureMembers.Member m)
        从类复制的说明: ArrayStructureBak
        Get member data of type char as a 1D array.
        覆盖:
        getJavaArrayChar 在类中 ArrayStructureBak
        参数:
        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.
        返回:
        char[]
      • getScalarString

        public java.lang.String getScalarString​(int recnum,
                                                StructureMembers.Member m)
        从类复制的说明: ArrayStructureBak
        Get member data of type String or char.
        覆盖:
        getScalarString 在类中 ArrayStructureBak
        参数:
        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.
        返回:
        scalar String value
      • getJavaArrayString

        public java.lang.String[] getJavaArrayString​(int recnum,
                                                     StructureMembers.Member m)
        从类复制的说明: ArrayStructureBak
        Get member data of type String as a 1D array.
        覆盖:
        getJavaArrayString 在类中 ArrayStructureBak
        参数:
        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.
        返回:
        String[]
      • getScalarStructure

        public StructureData getScalarStructure​(int recnum,
                                                StructureMembers.Member m)
        从类复制的说明: ArrayStructureBak
        Get member data of type Structure.
        覆盖:
        getScalarStructure 在类中 ArrayStructureBak
        参数:
        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.
        返回:
        scalar StructureData
      • getArrayStructure

        public ArrayStructureBak getArrayStructure​(int recnum,
                                                   StructureMembers.Member m)
        从类复制的说明: ArrayStructureBak
        Get member data of type array of Structure.
        覆盖:
        getArrayStructure 在类中 ArrayStructureBak
        参数:
        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.
        返回:
        nested ArrayStructure.