Package com.io7m.jserial.core
Interface SerialNumberLongType
- All Known Implementing Classes:
SerialNumber32
,SerialNumber40
,SerialNumber48
,SerialNumber56
,SerialNumber62
public interface SerialNumberLongType
The type of serial number arithmetic functions that are implemented using
63
bits or fewer.-
Method Summary
Modifier and TypeMethodDescriptionlong
add
(long s0, long s1) int
bits()
long
compare
(long s0, long s1) Compare the serial numberss0
ands1
.long
distance
(long s0, long s1) Calculate the signed distance betweens0
ands1
.default long
distanceUnsigned
(long s0, long s1) Calculate the unsigned distance betweens0
ands1
.boolean
inRange
(long s) Determine serial number validity.
-
Method Details
-
add
long add(long s0, long s1) - Parameters:
s0
- A serial numbers1
- A serial number- Returns:
s0 + s1
-
bits
int bits()- Returns:
- The number of bits used
-
compare
long compare(long s0, long s1) Compare the serial numberss0
ands1
.- Parameters:
s0
- A serial numbers1
- A serial number- Returns:
0
if the serial numbers are equal, a value less than0
ifs0 < s1
, or a value greater than0
ifs0 > s1
-
distance
long distance(long s0, long s1) Calculate the signed distance betweens0
ands1
.- Parameters:
s0
- A serial numbers1
- A serial number- Returns:
- The distance
-
distanceUnsigned
default long distanceUnsigned(long s0, long s1) Calculate the unsigned distance betweens0
ands1
.- Parameters:
s0
- A serial numbers1
- A serial number- Returns:
- The distance
-
inRange
boolean inRange(long s) Determine serial number validity.- Parameters:
s
- A serial number- Returns:
true
iffs0
is in the range[0, (2 ^ bits()) - 1]
-