cdm/src/main/java/ucar/ma2/ArraySequenceNested.java
public void finish() {
    sequenceOffset = new int[nelems];

    total = 0;
    for (int i=0; i<nelems; i++) {
      sequenceOffset[i] = total;
      total += sequenceLen[i];
    }

    sdata = new StructureData[nelems];
    for (int i=0; i<nelems; i++)
      sdata[i] = new StructureDataA( this, sequenceOffset[i]);

    // make the member arrays
    for (StructureMembers.Member m : members.getMembers()) {
      int[] mShape = m.getShape();
      int[] shape = new int[mShape.length + 1];
      shape[0] = total;
      System.arraycopy(mShape, 0, shape, 1, mShape.length);

      // LOOK not doing nested structures
      Array data = Array.factory(m.getDataType(), shape);
      m.setDataArray(data);
    }
  }
public void finish() {
    sequenceOffset = new int[nelems];

    total = 0;
    for (int i=0; i<nelems; i++) {
      sequenceOffset[i] = total;
      total += sequenceLen[i];
    }

    sdata = new StructureData[nelems];
    for (int i=0; i<nelems; i++)
      sdata[i] = new StructureDataA( this, sequenceOffset[i]);

    // make the member arrays
    for (StructureMembers.Member m : members.getMembers()) {
      int[] mShape = m.getShape();
      int[] shape = new int[mShape.length + 1];
      shape[0] = total;
      System.arraycopy(mShape, 0, shape, 1, mShape.length);

      // LOOK not doing nested structures
      Array data = Array.factory(m.getDataType(), shape);
      m.setDataArray(data);
    }
  }
public void finish ( ) { sequenceOffset = new int [ nelems ] ; total = 0 ; for ( int i = 0 ; i < nelems ; i ++ ) { sequenceOffset [ i ] = total ; total += sequenceLen [ i ] ; } sdata = new StructureData [ nelems ] ; for ( int i = 0 ; i < nelems ; i ++ ) sdata [ i ] = new StructureDataA ( this , sequenceOffset [ i ] ) ; // make the member arrays for ( StructureMembers . Member m : members . getMembers ( ) ) { int [ ] mShape = m . getShape ( ) ; int [ ] shape = new int [ mShape . length + 1 ] ; shape [ 0 ] = total ; System . arraycopy ( mShape , 0 , shape , 1 , mShape . length ) ; // LOOK not doing nested structures Array data = Array . factory ( m . getDataType ( ) , shape ) ; m . setDataArray ( data ) ; } }
Call this when you have set all the sequence lengths.
Call this when you have set all the sequence lengths .