Cleaned up some code to fit in 100 columns.

git-svn-id: https://zxing.googlecode.com/svn/trunk@942 59b500cc-1b3d-0410-9834-0bbf25fbcc57
This commit is contained in:
dswitkin 2009-05-21 15:36:51 +00:00
parent 1c243335a6
commit c9d3eae171
9 changed files with 43 additions and 39 deletions

View file

@ -90,25 +90,25 @@ public final class MultiFormatReader implements Reader {
this.hints = hints; this.hints = hints;
boolean tryHarder = hints != null && hints.containsKey(DecodeHintType.TRY_HARDER); boolean tryHarder = hints != null && hints.containsKey(DecodeHintType.TRY_HARDER);
Vector possibleFormats = hints == null ? null : (Vector) hints.get(DecodeHintType.POSSIBLE_FORMATS); Vector formats = hints == null ? null : (Vector) hints.get(DecodeHintType.POSSIBLE_FORMATS);
readers = new Vector(); readers = new Vector();
if (possibleFormats != null) { if (formats != null) {
boolean addOneDReader = boolean addOneDReader =
possibleFormats.contains(BarcodeFormat.UPC_A) || formats.contains(BarcodeFormat.UPC_A) ||
possibleFormats.contains(BarcodeFormat.UPC_E) || formats.contains(BarcodeFormat.UPC_E) ||
possibleFormats.contains(BarcodeFormat.EAN_13) || formats.contains(BarcodeFormat.EAN_13) ||
possibleFormats.contains(BarcodeFormat.EAN_8) || formats.contains(BarcodeFormat.EAN_8) ||
possibleFormats.contains(BarcodeFormat.CODE_39) || formats.contains(BarcodeFormat.CODE_39) ||
possibleFormats.contains(BarcodeFormat.CODE_128) || formats.contains(BarcodeFormat.CODE_128) ||
possibleFormats.contains(BarcodeFormat.ITF); formats.contains(BarcodeFormat.ITF);
// Put 1D readers upfront in "normal" mode // Put 1D readers upfront in "normal" mode
if (addOneDReader && !tryHarder) { if (addOneDReader && !tryHarder) {
readers.addElement(new MultiFormatOneDReader(hints)); readers.addElement(new MultiFormatOneDReader(hints));
} }
if (possibleFormats.contains(BarcodeFormat.QR_CODE)) { if (formats.contains(BarcodeFormat.QR_CODE)) {
readers.addElement(new QRCodeReader()); readers.addElement(new QRCodeReader());
} }
if (possibleFormats.contains(BarcodeFormat.DATAMATRIX)) { if (formats.contains(BarcodeFormat.DATAMATRIX)) {
readers.addElement(new DataMatrixReader()); readers.addElement(new DataMatrixReader());
} }
// At end in "try harder" mode // At end in "try harder" mode

View file

@ -69,15 +69,16 @@ public final class Result {
} }
/** /**
* @return {@link BarcodeFormat} representing the format of the barcode that was recognized and decoded * @return {@link BarcodeFormat} representing the format of the barcode that was decoded
*/ */
public BarcodeFormat getBarcodeFormat() { public BarcodeFormat getBarcodeFormat() {
return format; return format;
} }
/** /**
* @return {@link Hashtable} mapping {@link ResultMetadataType} keys to values. May be <code>null</code>. * @return {@link Hashtable} mapping {@link ResultMetadataType} keys to values. May be
* This contains optional metadata about what was detected about the barcode, like orientation. * <code>null</code>. This contains optional metadata about what was detected about the barcode,
* like orientation.
*/ */
public Hashtable getResultMetadata() { public Hashtable getResultMetadata() {
return resultMetadata; return resultMetadata;

View file

@ -110,7 +110,8 @@ public abstract class BaseMonochromeBitmapSource implements MonochromeBitmapSour
return column; return column;
} }
public void estimateBlackPoint(BlackPointEstimationMethod method, int argument) throws ReaderException { public void estimateBlackPoint(BlackPointEstimationMethod method, int argument)
throws ReaderException {
if (!method.equals(lastMethod) || argument != lastArgument) { if (!method.equals(lastMethod) || argument != lastArgument) {
int width = getWidth(); int width = getWidth();
int height = getHeight(); int height = getHeight();

View file

@ -42,10 +42,9 @@ public final class BlackPointEstimator {
* @param histogram an array of <em>counts</em> of luminance values * @param histogram an array of <em>counts</em> of luminance values
* @return index within argument of bucket corresponding to brightest values which should be * @return index within argument of bucket corresponding to brightest values which should be
* considered "black" * considered "black"
* @throws ReaderException if "black" and "white" appear to be very close in luminance in the image * @throws ReaderException if "black" and "white" appear to be very close in luminance
*/ */
public static int estimate(int[] histogram) throws ReaderException{ public static int estimate(int[] histogram) throws ReaderException{
int numBuckets = histogram.length; int numBuckets = histogram.length;
int maxBucketCount = 0; int maxBucketCount = 0;
// Find tallest peak in histogram // Find tallest peak in histogram

View file

@ -81,7 +81,8 @@ public final class CharacterSetECI extends ECI {
/** /**
* @param value character set ECI value * @param value character set ECI value
* @return {@link CharacterSetECI} representing ECI of given value, or null if it is legal but unsupported * @return {@link CharacterSetECI} representing ECI of given value, or null if it is legal but
* unsupported
* @throws IllegalArgumentException if ECI value is invalid * @throws IllegalArgumentException if ECI value is invalid
*/ */
public static CharacterSetECI getCharacterSetECIByValue(int value) { public static CharacterSetECI getCharacterSetECIByValue(int value) {
@ -96,7 +97,8 @@ public final class CharacterSetECI extends ECI {
/** /**
* @param name character set ECI encoding name * @param name character set ECI encoding name
* @return {@link CharacterSetECI} representing ECI for character encoding, or null if it is legal but unsupported * @return {@link CharacterSetECI} representing ECI for character encoding, or null if it is legal
* but unsupported
*/ */
public static CharacterSetECI getCharacterSetECIByName(String name) { public static CharacterSetECI getCharacterSetECIByName(String name) {
if (NAME_TO_ECI == null) { if (NAME_TO_ECI == null) {

View file

@ -64,8 +64,8 @@ public final class DefaultGridSampler extends GridSampler {
// transform gets "twisted" such that it maps a straight line of points to a set of points // transform gets "twisted" such that it maps a straight line of points to a set of points
// whose endpoints are in bounds, but others are not. There is probably some mathematical // whose endpoints are in bounds, but others are not. There is probably some mathematical
// way to detect this about the transformation that I don't know yet. // way to detect this about the transformation that I don't know yet.
// This results in an ugly runtime exception despite our clever checks above -- can't have that. // This results in an ugly runtime exception despite our clever checks above -- can't have
// We could check each point's coordinates but that feels duplicative. We settle for // that. We could check each point's coordinates but that feels duplicative. We settle for
// catching and wrapping ArrayIndexOutOfBoundsException. // catching and wrapping ArrayIndexOutOfBoundsException.
throw ReaderException.getInstance(); throw ReaderException.getInstance();
} }

View file

@ -17,8 +17,8 @@
package com.google.zxing.common; package com.google.zxing.common;
/** /**
* Superclass of classes encapsulating types ECIs, according to "Extended Channel Interpretations" 5.3 * Superclass of classes encapsulating types ECIs, according to "Extended Channel Interpretations"
* of ISO 18004. * 5.3 of ISO 18004.
* *
* @author Sean Owen * @author Sean Owen
*/ */

View file

@ -65,18 +65,18 @@ public abstract class GridSampler {
} }
/** /**
* <p>Samples an image for a square matrix of bits of the given dimension. This is used to extract the * <p>Samples an image for a square matrix of bits of the given dimension. This is used to extract
* black/white modules of a 2D barcode like a QR Code found in an image. Because this barcode may be * the black/white modules of a 2D barcode like a QR Code found in an image. Because this barcode
* rotated or perspective-distorted, the caller supplies four points in the source image that define * may be rotated or perspective-distorted, the caller supplies four points in the source image
* known points in the barcode, so that the image may be sampled appropriately.</p> * that define known points in the barcode, so that the image may be sampled appropriately.</p>
* *
* <p>The last eight "from" parameters are four X/Y coordinate pairs of locations of points in * <p>The last eight "from" parameters are four X/Y coordinate pairs of locations of points in
* the image that define some significant points in the image to be sample. For example, * the image that define some significant points in the image to be sample. For example,
* these may be the location of finder pattern in a QR Code.</p> * these may be the location of finder pattern in a QR Code.</p>
* *
* <p>The first eight "to" parameters are four X/Y coordinate pairs measured in the destination * <p>The first eight "to" parameters are four X/Y coordinate pairs measured in the destination
* {@link BitMatrix}, from the top left, where the known points in the image given by the "from" parameters * {@link BitMatrix}, from the top left, where the known points in the image given by the "from"
* map to.</p> * parameters map to.</p>
* *
* <p>These 16 parameters define the transformation needed to sample the image.</p> * <p>These 16 parameters define the transformation needed to sample the image.</p>
* *
@ -84,8 +84,8 @@ public abstract class GridSampler {
* @param dimension width/height of {@link BitMatrix} to sample from iamge * @param dimension width/height of {@link BitMatrix} to sample from iamge
* @return {@link BitMatrix} representing a grid of points sampled from the image within a region * @return {@link BitMatrix} representing a grid of points sampled from the image within a region
* defined by the "from" parameters * defined by the "from" parameters
* @throws ReaderException if image can't be sampled, for example, if the transformation defined by * @throws ReaderException if image can't be sampled, for example, if the transformation defined
* the given points is invalid or results in sampling outside the image boundaries * by the given points is invalid or results in sampling outside the image boundaries
*/ */
public abstract BitMatrix sampleGrid(MonochromeBitmapSource image, public abstract BitMatrix sampleGrid(MonochromeBitmapSource image,
int dimension, int dimension,
@ -102,9 +102,9 @@ public abstract class GridSampler {
* <p>Checks a set of points that have been transformed to sample points on an image against * <p>Checks a set of points that have been transformed to sample points on an image against
* the image's dimensions to see if the point are even within the image.</p> * the image's dimensions to see if the point are even within the image.</p>
* *
* <p>This method will actually "nudge" the endpoints back onto the image if they are found to be barely * <p>This method will actually "nudge" the endpoints back onto the image if they are found to be
* (less than 1 pixel) off the image. This accounts for imperfect detection of finder patterns in an image * barely (less than 1 pixel) off the image. This accounts for imperfect detection of finder
* where the QR Code runs all the way to the image border.</p> * patterns in an image where the QR Code runs all the way to the image border.</p>
* *
* <p>For efficiency, the method will check points from either end of the line until one is found * <p>For efficiency, the method will check points from either end of the line until one is found
* to be within the image. Because the set of points are assumed to be linear, this is valid.</p> * to be within the image. Because the set of points are assumed to be linear, this is valid.</p>
@ -113,7 +113,8 @@ public abstract class GridSampler {
* @param points actual points in x1,y1,...,xn,yn form * @param points actual points in x1,y1,...,xn,yn form
* @throws ReaderException if an endpoint is lies outside the image boundaries * @throws ReaderException if an endpoint is lies outside the image boundaries
*/ */
protected static void checkAndNudgePoints(MonochromeBitmapSource image, float[] points) throws ReaderException { protected static void checkAndNudgePoints(MonochromeBitmapSource image, float[] points)
throws ReaderException {
int width = image.getWidth(); int width = image.getWidth();
int height = image.getHeight(); int height = image.getHeight();
// Check and nudge points from start until we see some that are OK: // Check and nudge points from start until we see some that are OK:

View file

@ -17,9 +17,9 @@
package com.google.zxing.common; package com.google.zxing.common;
/** /**
* <p>This class implements a perspective transform in two dimensions. Given four source and four destination * <p>This class implements a perspective transform in two dimensions. Given four source and four
* points, it will compute the transformation implied between them. The code is based directly upon section * destination points, it will compute the transformation implied between them. The code is based
* 3.4.2 of George Wolberg's "Digital Image Warping"; see pages 54-56.</p> * directly upon section 3.4.2 of George Wolberg's "Digital Image Warping"; see pages 54-56.</p>
* *
* @author Sean Owen * @author Sean Owen
*/ */