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) doublepercentileLevelToIterateFrom(package private) doublepercentileLevelToIterateTo(package private) intpercentileTicksPerHalfDistance(package private) booleanreachedLastRecordedValue-
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) doublegetPercentileIteratedFrom()(package private) doublegetPercentileIteratedTo()booleanhasNext()Returns true if the iteration has more elements.(package private) voidincrementIterationLevel()(package private) booleanreachedIterationLevel()voidreset(int percentileTicksPerHalfDistance)Reset iterator for re-use in a fresh iteration over the same histogram data set.private voidreset(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:AbstractHistogramIteratorReturns 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:
hasNextin interfacejava.util.Iterator<HistogramIterationValue>- Overrides:
hasNextin classAbstractHistogramIterator- Returns:
- true if the iterator has more elements.
-
incrementIterationLevel
void incrementIterationLevel()
- Specified by:
incrementIterationLevelin classAbstractHistogramIterator
-
reachedIterationLevel
boolean reachedIterationLevel()
- Specified by:
reachedIterationLevelin classAbstractHistogramIterator- Returns:
- true if the current position's data should be emitted by the iterator
-
getPercentileIteratedTo
double getPercentileIteratedTo()
- Overrides:
getPercentileIteratedToin classAbstractHistogramIterator
-
getPercentileIteratedFrom
double getPercentileIteratedFrom()
- Overrides:
getPercentileIteratedFromin classAbstractHistogramIterator
-
-