mirror of
https://github.com/zxing/zxing.git
synced 2025-03-05 20:48:51 -08:00
More minor code improvements
git-svn-id: https://zxing.googlecode.com/svn/trunk@248 59b500cc-1b3d-0410-9834-0bbf25fbcc57
This commit is contained in:
parent
d028e94082
commit
513479cf20
|
@ -27,6 +27,9 @@ public final class BitArray {
|
||||||
private final int size;
|
private final int size;
|
||||||
|
|
||||||
public BitArray(int size) {
|
public BitArray(int size) {
|
||||||
|
if (size < 1) {
|
||||||
|
throw new IllegalArgumentException("size must be at least 1");
|
||||||
|
}
|
||||||
this.size = size;
|
this.size = size;
|
||||||
this.bits = makeArray(size);
|
this.bits = makeArray(size);
|
||||||
}
|
}
|
||||||
|
|
|
@ -44,16 +44,17 @@ final class GF256Poly {
|
||||||
throw new IllegalArgumentException();
|
throw new IllegalArgumentException();
|
||||||
}
|
}
|
||||||
this.field = field;
|
this.field = field;
|
||||||
if (coefficients.length > 1 && coefficients[0] == 0) {
|
int coefficientsLength = coefficients.length;
|
||||||
|
if (coefficientsLength > 1 && coefficients[0] == 0) {
|
||||||
// Leading term must be non-zero for anything except the constant polynomial "0"
|
// Leading term must be non-zero for anything except the constant polynomial "0"
|
||||||
int firstNonZero = 1;
|
int firstNonZero = 1;
|
||||||
while (firstNonZero < coefficients.length && coefficients[firstNonZero] == 0) {
|
while (firstNonZero < coefficientsLength && coefficients[firstNonZero] == 0) {
|
||||||
firstNonZero++;
|
firstNonZero++;
|
||||||
}
|
}
|
||||||
if (firstNonZero == coefficients.length) {
|
if (firstNonZero == coefficientsLength) {
|
||||||
this.coefficients = field.getZero().coefficients;
|
this.coefficients = field.getZero().coefficients;
|
||||||
} else {
|
} else {
|
||||||
this.coefficients = new int[coefficients.length - firstNonZero];
|
this.coefficients = new int[coefficientsLength - firstNonZero];
|
||||||
System.arraycopy(coefficients,
|
System.arraycopy(coefficients,
|
||||||
firstNonZero,
|
firstNonZero,
|
||||||
this.coefficients,
|
this.coefficients,
|
||||||
|
@ -190,9 +191,8 @@ final class GF256Poly {
|
||||||
}
|
}
|
||||||
int size = coefficients.length;
|
int size = coefficients.length;
|
||||||
int[] product = new int[size];
|
int[] product = new int[size];
|
||||||
System.arraycopy(coefficients, 0, product, 0, size);
|
|
||||||
for (int i = 0; i < size; i++) {
|
for (int i = 0; i < size; i++) {
|
||||||
product[i] = field.multiply(product[i], scalar);
|
product[i] = field.multiply(coefficients[i], scalar);
|
||||||
}
|
}
|
||||||
return new GF256Poly(field, product);
|
return new GF256Poly(field, product);
|
||||||
}
|
}
|
||||||
|
@ -206,9 +206,8 @@ final class GF256Poly {
|
||||||
}
|
}
|
||||||
int size = coefficients.length;
|
int size = coefficients.length;
|
||||||
int[] product = new int[size + degree];
|
int[] product = new int[size + degree];
|
||||||
System.arraycopy(coefficients, 0, product, 0, size);
|
|
||||||
for (int i = 0; i < size; i++) {
|
for (int i = 0; i < size; i++) {
|
||||||
product[i] = field.multiply(product[i], coefficient);
|
product[i] = field.multiply(coefficients[i], coefficient);
|
||||||
}
|
}
|
||||||
return new GF256Poly(field, product);
|
return new GF256Poly(field, product);
|
||||||
}
|
}
|
||||||
|
|
|
@ -40,14 +40,14 @@ final class DecodedBitStreamParser {
|
||||||
' ', '$', '%', '*', '+', '-', '.', '/', ':'
|
' ', '$', '%', '*', '+', '-', '.', '/', ':'
|
||||||
};
|
};
|
||||||
private static final String SHIFT_JIS = "Shift_JIS";
|
private static final String SHIFT_JIS = "Shift_JIS";
|
||||||
|
private static final String EUC_JP = "EUC-JP";
|
||||||
private static final boolean ASSUME_SHIFT_JIS;
|
private static final boolean ASSUME_SHIFT_JIS;
|
||||||
private static final String UTF8 = "UTF-8";
|
private static final String UTF8 = "UTF-8";
|
||||||
private static final String ISO88591 = "ISO-8859-1";
|
private static final String ISO88591 = "ISO-8859-1";
|
||||||
|
|
||||||
static {
|
static {
|
||||||
String platformDefault = System.getProperty("file.encoding");
|
String platformDefault = System.getProperty("file.encoding");
|
||||||
ASSUME_SHIFT_JIS = SHIFT_JIS.equalsIgnoreCase(platformDefault) ||
|
ASSUME_SHIFT_JIS = SHIFT_JIS.equalsIgnoreCase(platformDefault) || EUC_JP.equalsIgnoreCase(platformDefault);
|
||||||
"EUC-JP".equalsIgnoreCase(platformDefault);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private DecodedBitStreamParser() {
|
private DecodedBitStreamParser() {
|
||||||
|
|
Loading…
Reference in a new issue