Class ErrorCorrection
- java.lang.Object
-
- com.google.zxing.pdf417.decoder.ec.ErrorCorrection
-
public final class ErrorCorrection extends java.lang.ObjectPDF417 error correction implementation.
This example is quite useful in understanding the algorithm.
- See Also:
ReedSolomonDecoder
-
-
Constructor Summary
Constructors Constructor Description ErrorCorrection()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description intdecode(int[] received, int numECCodewords, int[] erasures)private int[]findErrorLocations(ModulusPoly errorLocator)private int[]findErrorMagnitudes(ModulusPoly errorEvaluator, ModulusPoly errorLocator, int[] errorLocations)private ModulusPoly[]runEuclideanAlgorithm(ModulusPoly a, ModulusPoly b, int R)
-
-
-
Field Detail
-
field
private final ModulusGF field
-
-
Method Detail
-
decode
public int decode(int[] received, int numECCodewords, int[] erasures) throws ChecksumException- Parameters:
received- received codewordsnumECCodewords- number of those codewords used for ECerasures- location of erasures- Returns:
- number of errors
- Throws:
ChecksumException- if errors cannot be corrected, maybe because of too many errors
-
runEuclideanAlgorithm
private ModulusPoly[] runEuclideanAlgorithm(ModulusPoly a, ModulusPoly b, int R) throws ChecksumException
- Throws:
ChecksumException
-
findErrorLocations
private int[] findErrorLocations(ModulusPoly errorLocator) throws ChecksumException
- Throws:
ChecksumException
-
findErrorMagnitudes
private int[] findErrorMagnitudes(ModulusPoly errorEvaluator, ModulusPoly errorLocator, int[] errorLocations)
-
-