Given data and error-correction codewords received, possibly corrupted by errors, attempts to correct the errors in-place.
data and error correction codewords
positions of any known erasures
number of error correction codewords that are available in codewords
This method deals with the fact, that the decoding process doesn't always yield a single most likely value. The current error correction implementation doesn't deal with erasures very well, so it's better to provide a value for these ambiguous codewords instead of treating it as an erasure. The problem is that we don't know which of the ambiguous values to choose. We try decode using the first value, and if that fails, we use another of the ambiguous values and try to decode again. This usually only happens on very hard to read and decode barcodes, so decoding the normal barcodes is not affected by this.
contains the indexes of erasures
array with the indexes that have more than one most likely value
two dimensional array that contains the ambiguous values. The first dimension must be the same length as the ambiguousIndexes array
Verify that all is OK with the codeword array.
Generated using TypeDoc
Guenther Grau