Package org.HdrHistogram
Class PercentileIterator
- java.lang.Object
-
- org.HdrHistogram.AbstractHistogramIterator
-
- org.HdrHistogram.PercentileIterator
-
- All Implemented Interfaces:
java.util.Iterator<HistogramIterationValue>
public class PercentileIterator extends AbstractHistogramIterator implements java.util.Iterator<HistogramIterationValue>
Used for iterating through histogram values according to percentile levels. The iteration is performed in steps that start at 0% and reduce their distance to 100% according to the percentileTicksPerHalfDistance parameter, ultimately reaching 100% when all recorded histogram values are exhausted.
-
-
Field Summary
Fields Modifier and Type Field Description (package private) double
percentileLevelToIterateFrom
(package private) double
percentileLevelToIterateTo
(package private) int
percentileTicksPerHalfDistance
(package private) boolean
reachedLastRecordedValue
-
Fields inherited from class org.HdrHistogram.AbstractHistogramIterator
arrayTotalCount, countAtThisValue, currentIndex, currentIterationValue, currentValueAtIndex, histogram, nextValueAtIndex, prevValueIteratedTo, totalCountToCurrentIndex, totalCountToPrevIndex, totalValueToCurrentIndex
-
-
Constructor Summary
Constructors Constructor Description PercentileIterator(AbstractHistogram histogram, int percentileTicksPerHalfDistance)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description (package private) double
getPercentileIteratedFrom()
(package private) double
getPercentileIteratedTo()
boolean
hasNext()
Returns true if the iteration has more elements.(package private) void
incrementIterationLevel()
(package private) boolean
reachedIterationLevel()
void
reset(int percentileTicksPerHalfDistance)
Reset iterator for re-use in a fresh iteration over the same histogram data set.private void
reset(AbstractHistogram histogram, int percentileTicksPerHalfDistance)
-
Methods inherited from class org.HdrHistogram.AbstractHistogramIterator
getValueIteratedTo, incrementSubBucket, next, remove, resetIterator
-
-
-
-
Constructor Detail
-
PercentileIterator
public PercentileIterator(AbstractHistogram histogram, int percentileTicksPerHalfDistance)
- Parameters:
histogram
- The histogram this iterator will operate onpercentileTicksPerHalfDistance
- The number of equal-sized iteration steps per half-distance to 100%.
-
-
Method Detail
-
reset
public void reset(int percentileTicksPerHalfDistance)
Reset iterator for re-use in a fresh iteration over the same histogram data set.- Parameters:
percentileTicksPerHalfDistance
- The number of iteration steps per half-distance to 100%.
-
reset
private void reset(AbstractHistogram histogram, int percentileTicksPerHalfDistance)
-
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
-
reachedIterationLevel
boolean reachedIterationLevel()
- Specified by:
reachedIterationLevel
in classAbstractHistogramIterator
- Returns:
- true if the current position's data should be emitted by the iterator
-
getPercentileIteratedTo
double getPercentileIteratedTo()
- Overrides:
getPercentileIteratedTo
in classAbstractHistogramIterator
-
getPercentileIteratedFrom
double getPercentileIteratedFrom()
- Overrides:
getPercentileIteratedFrom
in classAbstractHistogramIterator
-
-