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 TypeMethodDescriptionlongadd(long s0, long s1) intbits()longcompare(long s0, long s1) Compare the serial numberss0ands1.longdistance(long s0, long s1) Calculate the signed distance betweens0ands1.default longdistanceUnsigned(long s0, long s1) Calculate the unsigned distance betweens0ands1.booleaninRange(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 numberss0ands1.- Parameters:
s0- A serial numbers1- A serial number- Returns:
0if the serial numbers are equal, a value less than0ifs0 < s1, or a value greater than0ifs0 > s1
-
distance
long distance(long s0, long s1) Calculate the signed distance betweens0ands1.- Parameters:
s0- A serial numbers1- A serial number- Returns:
- The distance
-
distanceUnsigned
default long distanceUnsigned(long s0, long s1) Calculate the unsigned distance betweens0ands1.- 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:
trueiffs0is in the range[0, (2 ^ bits()) - 1]
-