summaryrefslogtreecommitdiff
path: root/grc/core/utils/expr_utils.py
diff options
context:
space:
mode:
authorDaniel Estévez <daniel@destevez.net>2020-07-19 17:41:08 +0200
committerMarcus Müller <marcus@hostalia.de>2020-10-01 19:47:22 +0200
commitae0c0979d5be3d89510c29834e8226894fad028d (patch)
tree7a0a87c9d3f85b7152aa9b77272d822a18899f1f /grc/core/utils/expr_utils.py
parent5fd9d0926906bf8128f3121218462136d0887266 (diff)
gr-fec: build and export (en|de)code_rs_8() and (en|de)code_rs_ccsds()
These functions implement the CCSDS Reed-Solomon code in the conventional and dual basis respectively. The code for them was already included in gr-fec, but they weren't built. While these functions are currently not used in GNU Radio, they might be used by other OOT modules, as discussed in #3637. The behaviour of the functions (en|de)code_rs_8() could actually be achieved with the currently available (en|de)code_rs_char(), by passing the correct parameters to init_rs_char(), but since the CCSDS code is so popular, having the specific functions is handy. On the other hand, it is not possible to obtain (en|de)code_rs_ccsds() by using (en|de)code_rs_char(), since there is an additional change of basis involved (see decode_rs_ccsds.c). Some reorganization of the code has been needed. The different encode and decode functions use some kind of templating using the C preprocessor. The implmementation uses several symbols that should be defined by the preprocessor before including the implementation. The implementation can be included several times to instance the different functions. The code in (en|de)code_rs.c has been moved to (en|de)code_rs.h, since now it is included and compiled twice instead of being compiled directly. The files char.c and ccsds.c include the appropriate preprocessor definitions from char.h and fixed.h respectively and these are what is built.
Diffstat (limited to 'grc/core/utils/expr_utils.py')
0 files changed, 0 insertions, 0 deletions