Package com.pnfsoftware.jeb.util.collect
Class IntGauge
java.lang.Object
com.pnfsoftware.jeb.util.collect.IntGauge
An integer gauge is used to define an integer range to be filled. The range must be reasonably
small (for larger ranges (million+), a custom implementation relying
ISegmentMap
may be
better suited in terms of memory usage).
Example:
- a range [20, 100] is specified
- calls to record
may be used to record partial filling of the
gauge:
record(10, 30)
, record(56, 60)
, record(0, 10)
- the order of the fillings does not matter; however, overlaps are not allowed:
e.g. if the sub-range [10,30[ was recorded and is present, adding a range [25,40[ would be
rejected (record()
would return false)
- when the gauge is complete, isComplete()
returns true
-
Constructor Summary
Constructors -
Method Summary
-
Constructor Details
-
IntGauge
public IntGauge(int size) Create a gauge whose range goes from 0 tosize
. The range must be reasonably small (recommendation: less than 1M).- Parameters:
size
-
-
IntGauge
public IntGauge(int begin, int end) Create a gauge whose range goes frombegin
toend
(exclusive). The range must be reasonably small (recommendation: less than 1M).- Parameters:
begin
-end
-
-
-
Method Details
-
clear
public void clear() -
getBegin
public int getBegin() -
getEnd
public int getEnd() -
record
public boolean record(int begin, int end) -
getRemaining
public int getRemaining() -
isComplete
public boolean isComplete() -
hashCode
public int hashCode() -
equals
-
toString
-