Package uk.ac.starlink.util
Class ValueWatcher
- java.lang.Object
-
- uk.ac.starlink.util.ValueWatcher
-
public class ValueWatcher extends java.lang.ObjectLooks out for an unused value in a sequence of submitted numbers. This can be used to identify a suitable 'magic' representation for a bad value.- Since:
- 22 Jun 2006
- Author:
- Mark Taylor
-
-
Constructor Summary
Constructors Constructor Description ValueWatcher(long loBound, long hiBound)Constructs a ValueWatcher which will look out for values in the range covered byloBoundandhiBoundinclusive.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.lang.LonggetUnused()Returns a value in the rangeloBound..hiBoundwhich has never been sumitted touseValue(long).voiduseValue(long val)Takes note of a value.
-
-
-
Constructor Detail
-
ValueWatcher
public ValueWatcher(long loBound, long hiBound)Constructs a ValueWatcher which will look out for values in the range covered byloBoundandhiBoundinclusive. These shouldn't be arbitrarily far apart - storage of up to about one bit per value in the range will be required.- Parameters:
loBound- lower bound to watch for (inclusive)hiBound- upper bound to watch for (inclusive)
-
-
Method Detail
-
useValue
public void useValue(long val)
Takes note of a value.valwill never subsequently be returned fromgetUnused().- Parameters:
val- value to note
-
getUnused
public java.lang.Long getUnused()
Returns a value in the rangeloBound..hiBoundwhich has never been sumitted touseValue(long). If there is no such value, returns null.- Returns:
- unused value in range
-
-