ucar.nc2.ft.point
Class PointIteratorFromStructureData

java.lang.Object
  extended by ucar.nc2.ft.point.PointIteratorAbstract
      extended by ucar.nc2.ft.point.PointIteratorFromStructureData
All Implemented Interfaces:
PointFeatureIterator
Direct Known Subclasses:
StandardPointFeatureIterator

public abstract class PointIteratorFromStructureData
extends PointIteratorAbstract

A PointFeatureIterator which uses a StructureDataIterator to iterate over members of a Structure, with optional filtering and calculation of time range and bounding box.

Subclass must implement makeFeature() to turn the StructureData into a PointFeature.

Since:
Feb 29, 2008
Author:
caron

Nested Class Summary
 
Nested classes/interfaces inherited from class ucar.nc2.ft.point.PointIteratorAbstract
PointIteratorAbstract.Filter
 
Field Summary
 
Fields inherited from class ucar.nc2.ft.point.PointIteratorAbstract
calcBounds, collection
 
Constructor Summary
PointIteratorFromStructureData(StructureDataIterator structIter, PointIteratorAbstract.Filter filter)
           
 
Method Summary
 void finish()
          Make sure that the iterator is complete, and recover resources.
 boolean hasNext()
          Check if another PointFeature is available
protected abstract  PointFeature makeFeature(int recnum, StructureData sdata)
           
 PointFeature next()
          Returns the next PointFeature.
 void setBufferSize(int bytes)
          Hint to use this much memory in buffering the iteration.
 
Methods inherited from class ucar.nc2.ft.point.PointIteratorAbstract
calcBounds, finishCalcBounds, getBoundingBox, getCount, getDateRange, setCalculateBounds
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

PointIteratorFromStructureData

public PointIteratorFromStructureData(StructureDataIterator structIter,
                                      PointIteratorAbstract.Filter filter)
                               throws IOException
Throws:
IOException
Method Detail

makeFeature

protected abstract PointFeature makeFeature(int recnum,
                                            StructureData sdata)
                                     throws IOException
Throws:
IOException

hasNext

public boolean hasNext()
                throws IOException
Description copied from interface: PointFeatureIterator
Check if another PointFeature is available

Returns:
true if another PointFeature is available
Throws:
IOException - on i/o error

next

public PointFeature next()
                  throws IOException
Description copied from interface: PointFeatureIterator
Returns the next PointFeature. You must call hasNext() before calling next(), even if you know it will return true.

Returns:
the next PointFeature
Throws:
IOException - on i/o error

setBufferSize

public void setBufferSize(int bytes)
Description copied from interface: PointFeatureIterator
Hint to use this much memory in buffering the iteration. No guarentee that it will be used by the implementation.

Parameters:
bytes - amount of memory in bytes

finish

public void finish()
Description copied from interface: PointFeatureIterator
Make sure that the iterator is complete, and recover resources. You must complete the iteration (until hasNext() returns false) or call finish(). may be called more than once.



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