public StructureDataIterator getStructureDataIterator(Cursor cursor, int bufferSize) throws IOException {
int parentIndex = cursor.getParentRecnum();
ParentInfo info = indexMap[parentIndex];
List<Integer> index = (info == null) ? new ArrayList<Integer>() : info.recnumList;
return new StructureDataIteratorIndexed(struct, index);
}