Class LazySearchIterator

  • All Implemented Interfaces:
    Closeable, AutoCloseable, Iterator<Data>, CloseableIterator<Data>

    public class LazySearchIterator
    extends Object
    implements CloseableIterator<Data>
    Iterator that search the quad tree depth first. 32000 indices are cached at a time and each time a node is visited the indices are removed from the node so that the memory footprint is kept small. Note that if other iterators operate on the same tree then they can interfere with each other.
    Author:
    Jesse
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void close()  
      boolean hasNext()  
      Data next()  
      void remove()  
      • Methods inherited from class Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
      • Methods inherited from interface Iterator

        forEachRemaining
    • Constructor Detail

      • LazySearchIterator

        public LazySearchIterator​(QuadTree tree,
                                  Envelope bounds)
    • Method Detail

      • hasNext

        public boolean hasNext()
        Specified by:
        hasNext in interface Iterator<Data>
      • next

        public Data next()
        Specified by:
        next in interface Iterator<Data>
      • remove

        public void remove()
        Specified by:
        remove in interface Iterator<Data>
      • close

        public void close()
                   throws IOException
        Specified by:
        close in interface AutoCloseable
        Specified by:
        close in interface Closeable
        Specified by:
        close in interface CloseableIterator<Data>
        Throws:
        IOException - if an I/O error occurs