comparison mupdf-source/thirdparty/zxing-cpp/core/src/ReedSolomonDecoder.h @ 2:b50eed0cc0ef upstream

ADD: MuPDF v1.26.7: the MuPDF source as downloaded by a default build of PyMuPDF 1.26.4. The directory name has changed: no version number in the expanded directory now.
author Franz Glasner <fzglas.hg@dom66.de>
date Mon, 15 Sep 2025 11:43:07 +0200
parents
children
comparison
equal deleted inserted replaced
1:1d09e1dec1d9 2:b50eed0cc0ef
1 /*
2 * Copyright 2016 Nu-book Inc.
3 * Copyright 2016 ZXing authors
4 */
5 // SPDX-License-Identifier: Apache-2.0
6
7 #pragma once
8
9 #include <vector>
10
11 namespace ZXing {
12
13 class GenericGF;
14
15 /**
16 * <p>Implements Reed-Solomon decoding, as the name implies.</p>
17 *
18 * <p>The algorithm will not be explained here, but the following references were helpful
19 * in creating this implementation:</p>
20 *
21 * <ul>
22 * <li>Bruce Maggs.
23 * <a href="http://www.cs.cmu.edu/afs/cs.cmu.edu/project/pscico-guyb/realworld/www/rs_decode.ps">
24 * "Decoding Reed-Solomon Codes"</a> (see discussion of Forney's Formula)</li>
25 * <li>J.I. Hall. <a href="www.mth.msu.edu/~jhall/classes/codenotes/GRS.pdf">
26 * "Chapter 5. Generalized Reed-Solomon Codes"</a>
27 * (see discussion of Euclidean algorithm)</li>
28 * </ul>
29 *
30 * <p>Much credit is due to William Rucklidge since portions of this code are an indirect
31 * port of his C++ Reed-Solomon implementation.</p>
32 *
33 * @author Sean Owen
34 * @author William Rucklidge
35 * @author sanfordsquires
36 */
37
38 /**
39 * @brief ReedSolomonDecode fixes errors in a message containing both data and parity codewords.
40 *
41 * @param message data and error-correction/parity codewords
42 * @param numECCodeWords number of error-correction code words
43 * @return true iff message errors could successfully be fixed (or there have not been any)
44 */
45 bool ReedSolomonDecode(const GenericGF& field, std::vector<int>& message, int numECCodeWords);
46
47 } // ZXing