Fix corner case - pure barcode, 1 pixel module
[zxing.git] / core / src / com / google / zxing / Reader.java
index ca6892c..47e843b 100644 (file)
@@ -37,9 +37,9 @@ public interface Reader {
    *
    * @param image image of barcode to decode
    * @return String which the barcode encodes
-   * @throws ReaderException if the barcode cannot be located or decoded for any reason
+   * @throws NotFoundException if the barcode cannot be located or decoded for any reason
    */
-  Result decode(BinaryBitmap image) throws ReaderException;
+  Result decode(BinaryBitmap image) throws NotFoundException, ChecksumException, FormatException;
 
   /**
    * Locates and decodes a barcode in some format within an image. This method also accepts
@@ -51,8 +51,14 @@ public interface Reader {
    * meaning of the data depends upon the hint type. The implementation may or may not do
    * anything with these hints.
    * @return String which the barcode encodes
-   * @throws ReaderException if the barcode cannot be located or decoded for any reason
+   * @throws NotFoundException if the barcode cannot be located or decoded for any reason
    */
-  Result decode(BinaryBitmap image, Hashtable hints) throws ReaderException;
+  Result decode(BinaryBitmap image, Hashtable hints) throws NotFoundException, ChecksumException, FormatException;
+
+  /**
+   * Resets any internal state the implementation has after a decode, to prepare it
+   * for reuse.
+   */
+  void reset();
 
 }
\ No newline at end of file