X-Git-Url: https://gitweb.fperrin.net/?a=blobdiff_plain;f=tim%2Fprune%2Fdata%2FIntegerRange.java;h=d2424d1bcf557c272de9d1b850b2b301573c6b22;hb=92dad5df664287acb51728e9ea599f150765d34a;hp=61ae34c4ad58f7e9d61a4f320bc76181f43da3e7;hpb=312fec956e43f5d0a38617da5d0add9c62563e2c;p=GpsPrune.git diff --git a/tim/prune/data/IntegerRange.java b/tim/prune/data/IntegerRange.java index 61ae34c..d2424d1 100644 --- a/tim/prune/data/IntegerRange.java +++ b/tim/prune/data/IntegerRange.java @@ -2,35 +2,46 @@ package tim.prune.data; /** * Represents a range of integers, holding the maximum and - * minimum values. Values assumed to be >= 0. + * minimum values. */ public class IntegerRange { private int _min = -1, _max = -1; + private boolean _foundValues = false; /** - * Add a value to the range - * @param inValue value to add, only positive values considered + * Clear for a new range calculation */ - public void addValue(int inValue) + public void clear() { - if (inValue >= 0) - { - if (inValue < _min || _min < 0) _min = inValue; - if (inValue > _max) _max = inValue; - } + _min = -1; + _max = -1; + _foundValues = false; } /** - * @return true if positive data values were found + * Add a value to the range + * @param inValue value to add */ - public boolean hasData() + public void addValue(int inValue) { - return (_max >= 0); + if (inValue < _min || !_foundValues) { + _min = inValue; + } + if (inValue > _max || !_foundValues) { + _max = inValue; + } + _foundValues = true; } + /** + * @return true if any values added to the range + */ + public boolean hasValues() { + return _foundValues; + } /** * @return minimum value, or -1 if none found