Package org.HdrHistogram
Class LinearIterator
- java.lang.Object
-
- org.HdrHistogram.AbstractHistogramIterator
-
- org.HdrHistogram.LinearIterator
-
- All Implemented Interfaces:
java.util.Iterator<HistogramIterationValue>
public class LinearIterator extends AbstractHistogramIterator implements java.util.Iterator<HistogramIterationValue>
Used for iterating through histogram values in linear steps. The iteration is performed in steps of valueUnitsPerBucket in size, terminating when all recorded histogram values are exhausted. Note that each iteration "bucket" includes values up to and including the next bucket boundary value.
-
-
Field Summary
Fields Modifier and Type Field Description private long
currentStepHighestValueReportingLevel
private long
currentStepLowestValueReportingLevel
private long
valueUnitsPerBucket
-
Fields inherited from class org.HdrHistogram.AbstractHistogramIterator
arrayTotalCount, countAtThisValue, currentIndex, currentIterationValue, currentValueAtIndex, histogram, nextValueAtIndex, prevValueIteratedTo, totalCountToCurrentIndex, totalCountToPrevIndex, totalValueToCurrentIndex
-
-
Constructor Summary
Constructors Constructor Description LinearIterator(AbstractHistogram histogram, long valueUnitsPerBucket)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description (package private) long
getValueIteratedTo()
boolean
hasNext()
Returns true if the iteration has more elements.(package private) void
incrementIterationLevel()
(package private) boolean
reachedIterationLevel()
void
reset(long valueUnitsPerBucket)
Reset iterator for re-use in a fresh iteration over the same histogram data set.private void
reset(AbstractHistogram histogram, long valueUnitsPerBucket)
-
Methods inherited from class org.HdrHistogram.AbstractHistogramIterator
getPercentileIteratedFrom, getPercentileIteratedTo, incrementSubBucket, next, remove, resetIterator
-
-
-
-
Constructor Detail
-
LinearIterator
public LinearIterator(AbstractHistogram histogram, long valueUnitsPerBucket)
- Parameters:
histogram
- The histogram this iterator will operate onvalueUnitsPerBucket
- The size (in value units) of each bucket iteration.
-
-
Method Detail
-
reset
public void reset(long valueUnitsPerBucket)
Reset iterator for re-use in a fresh iteration over the same histogram data set.- Parameters:
valueUnitsPerBucket
- The size (in value units) of each bucket iteration.
-
reset
private void reset(AbstractHistogram histogram, long valueUnitsPerBucket)
-
hasNext
public boolean hasNext()
Description copied from class:AbstractHistogramIterator
Returns true if the iteration has more elements. (In other words, returns true if next would return an element rather than throwing an exception.)- Specified by:
hasNext
in interfacejava.util.Iterator<HistogramIterationValue>
- Overrides:
hasNext
in classAbstractHistogramIterator
- Returns:
- true if the iterator has more elements.
-
incrementIterationLevel
void incrementIterationLevel()
- Specified by:
incrementIterationLevel
in classAbstractHistogramIterator
-
getValueIteratedTo
long getValueIteratedTo()
- Overrides:
getValueIteratedTo
in classAbstractHistogramIterator
-
reachedIterationLevel
boolean reachedIterationLevel()
- Specified by:
reachedIterationLevel
in classAbstractHistogramIterator
- Returns:
- true if the current position's data should be emitted by the iterator
-
-