Package org.HdrHistogram
Class LogarithmicIterator
java.lang.Object
org.HdrHistogram.AbstractHistogramIterator
org.HdrHistogram.LogarithmicIterator
- All Implemented Interfaces:
Iterator<HistogramIterationValue>
public class LogarithmicIterator
extends AbstractHistogramIterator
implements Iterator<HistogramIterationValue>
Used for iterating through histogram values in logarithmically increasing levels. The iteration is
performed in steps that start at valueUnitsInFirstBucket and increase exponentially according to
logBase, 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
FieldsModifier and TypeFieldDescription(package private) long(package private) long(package private) double(package private) double(package private) longFields inherited from class org.HdrHistogram.AbstractHistogramIterator
arrayTotalCount, countAtThisValue, currentIndex, currentIterationValue, currentValueAtIndex, histogram, nextValueAtIndex, prevValueIteratedTo, totalCountToCurrentIndex, totalCountToPrevIndex, totalValueToCurrentIndex -
Constructor Summary
ConstructorsConstructorDescriptionLogarithmicIterator(AbstractHistogram histogram, long valueUnitsInFirstBucket, double logBase) -
Method Summary
Modifier and TypeMethodDescription(package private) longbooleanhasNext()Returns true if the iteration has more elements.(package private) void(package private) booleanvoidreset(long valueUnitsInFirstBucket, double logBase) Reset iterator for re-use in a fresh iteration over the same histogram data set.private voidreset(AbstractHistogram histogram, long valueUnitsInFirstBucket, double logBase) Methods inherited from class org.HdrHistogram.AbstractHistogramIterator
getPercentileIteratedFrom, getPercentileIteratedTo, incrementSubBucket, next, remove, resetIteratorMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface java.util.Iterator
forEachRemaining, next, remove
-
Field Details
-
valueUnitsInFirstBucket
long valueUnitsInFirstBucket -
logBase
double logBase -
nextValueReportingLevel
double nextValueReportingLevel -
currentStepHighestValueReportingLevel
long currentStepHighestValueReportingLevel -
currentStepLowestValueReportingLevel
long currentStepLowestValueReportingLevel
-
-
Constructor Details
-
LogarithmicIterator
public LogarithmicIterator(AbstractHistogram histogram, long valueUnitsInFirstBucket, double logBase) - Parameters:
histogram- The histogram this iterator will operate onvalueUnitsInFirstBucket- the size (in value units) of the first value bucket steplogBase- the multiplier by which the bucket size is expanded in each iteration step.
-
-
Method Details
-
reset
public void reset(long valueUnitsInFirstBucket, double logBase) Reset iterator for re-use in a fresh iteration over the same histogram data set.- Parameters:
valueUnitsInFirstBucket- the size (in value units) of the first value bucket steplogBase- the multiplier by which the bucket size is expanded in each iteration step.
-
reset
-
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 interfaceIterator<HistogramIterationValue>- Overrides:
hasNextin classAbstractHistogramIterator- Returns:
- true if the iterator has more elements.
-
incrementIterationLevel
void incrementIterationLevel()- Specified by:
incrementIterationLevelin classAbstractHistogramIterator
-
getValueIteratedTo
long getValueIteratedTo()- Overrides:
getValueIteratedToin classAbstractHistogramIterator
-
reachedIterationLevel
boolean reachedIterationLevel()- Specified by:
reachedIterationLevelin classAbstractHistogramIterator- Returns:
- true if the current position's data should be emitted by the iterator
-