Class ContourPlot.Iterators.RowSpliterator<P extends ContourPlot.PixelBase>

  • All Implemented Interfaces:
    java.util.Spliterator<P>
    Enclosing class:
    ContourPlot.Iterators

    public static final class ContourPlot.Iterators.RowSpliterator<P extends ContourPlot.PixelBase>
    extends java.lang.Object
    implements java.util.Spliterator<P>
    Special Spliterator for images which guarantees that each split will cover at least an entire row of the image.
    Author:
    hageldave
    • Nested Class Summary

      • Nested classes/interfaces inherited from interface java.util.Spliterator

        java.util.Spliterator.OfDouble, java.util.Spliterator.OfInt, java.util.Spliterator.OfLong, java.util.Spliterator.OfPrimitive<T extends java.lang.Object,​T_CONS extends java.lang.Object,​T_SPLITR extends java.util.Spliterator.OfPrimitive<T,​T_CONS,​T_SPLITR>>
    • Field Summary

      Fields 
      Modifier and Type Field Description
      private int endXinclusive  
      private int endYinclusive  
      private java.util.function.Supplier<P> pixelSupplier  
      private P px  
      private int startX  
      private int x  
      private int y  
      • Fields inherited from interface java.util.Spliterator

        CONCURRENT, DISTINCT, IMMUTABLE, NONNULL, ORDERED, SIZED, SORTED, SUBSIZED
    • Constructor Summary

      Constructors 
      Constructor Description
      RowSpliterator​(int startX, int width, int startY, int endYincl, java.util.function.Supplier<P> pixelSupplier)
      Creates a new RowSpliterator for iterating the pixels in the specified area.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      int characteristics()  
      long estimateSize()  
      void forEachRemaining​(java.util.function.Consumer<? super P> action)  
      boolean tryAdvance​(java.util.function.Consumer<? super P> action)  
      java.util.Spliterator<P> trySplit()  
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
      • Methods inherited from interface java.util.Spliterator

        getComparator, getExactSizeIfKnown, hasCharacteristics
    • Field Detail

      • startX

        private final int startX
      • endXinclusive

        private final int endXinclusive
      • x

        private int x
      • y

        private int y
      • endYinclusive

        private int endYinclusive
    • Constructor Detail

      • RowSpliterator

        public RowSpliterator​(int startX,
                              int width,
                              int startY,
                              int endYincl,
                              java.util.function.Supplier<P> pixelSupplier)
        Creates a new RowSpliterator for iterating the pixels in the specified area. Each split is guaranteed to cover at least 1 entire row of the area.
        Parameters:
        startX - left boundary of the area (inclusive)
        width - width of the area
        startY - top boundary of the area (inclusive)
        endYincl - bottom boundary of the area (inclusive)
        pixelSupplier - a function that allocates a new pixel
    • Method Detail

      • tryAdvance

        public boolean tryAdvance​(java.util.function.Consumer<? super P> action)
        Specified by:
        tryAdvance in interface java.util.Spliterator<P extends ContourPlot.PixelBase>
      • forEachRemaining

        public void forEachRemaining​(java.util.function.Consumer<? super P> action)
        Specified by:
        forEachRemaining in interface java.util.Spliterator<P extends ContourPlot.PixelBase>
      • trySplit

        public java.util.Spliterator<P> trySplit()
        Specified by:
        trySplit in interface java.util.Spliterator<P extends ContourPlot.PixelBase>
      • estimateSize

        public long estimateSize()
        Specified by:
        estimateSize in interface java.util.Spliterator<P extends ContourPlot.PixelBase>
      • characteristics

        public int characteristics()
        Specified by:
        characteristics in interface java.util.Spliterator<P extends ContourPlot.PixelBase>