GNU Radio C++ API Reference 3.10.10.0
The Free & Open Software Radio Ecosystem
 
Loading...
Searching...
No Matches
rs.h
Go to the documentation of this file.
1/* User include file for the Reed-Solomon codec
2 * Copyright 2002, Phil Karn KA9Q
3 * May be used under the terms of the GNU General Public License (GPL)
4 */
5
6#ifndef INCLUDED_RS_H
7#define INCLUDED_RS_H
8#include <gnuradio/fec/api.h>
9
10/* General purpose RS codec, 8-bit symbols */
11FEC_API void encode_rs_char(void* rs, unsigned char* data, unsigned char* parity);
12FEC_API int decode_rs_char(void* rs, unsigned char* data, int* eras_pos, int no_eras);
13FEC_API void* init_rs_char(unsigned int symsize,
14 unsigned int gfpoly,
15 unsigned int fcr,
16 unsigned int prim,
17 unsigned int nroots);
18FEC_API void free_rs_char(void* rs);
19
20/* General purpose RS codec, integer symbols */
21FEC_API void encode_rs_int(void* rs, int* data, int* parity);
22FEC_API int decode_rs_int(void* rs, int* data, int* eras_pos, int no_eras);
23FEC_API void* init_rs_int(unsigned int symsize,
24 unsigned int gfpoly,
25 unsigned int fcr,
26 unsigned int prim,
27 unsigned int nroots);
28FEC_API void free_rs_int(void* rs);
29
30/* CCSDS standard (255,223) RS codec with conventional (*not* dual-basis)
31 * symbol representation
32 */
33FEC_API void encode_rs_8(unsigned char* data, unsigned char* parity);
34FEC_API int decode_rs_8(unsigned char* data, int* eras_pos, int no_eras);
35
36/* CCSDS standard (255,223) RS codec with dual-basis symbol representation
37 */
38FEC_API void encode_rs_ccsds(unsigned char* data, unsigned char* parity);
39FEC_API int decode_rs_ccsds(unsigned char* data, int* eras_pos, int no_eras);
40
41#endif /* INCLUDED_RS_H */
#define FEC_API
Definition gr-fec/include/gnuradio/fec/api.h:18
FEC_API int decode_rs_char(void *rs, unsigned char *data, int *eras_pos, int no_eras)
FEC_API int decode_rs_ccsds(unsigned char *data, int *eras_pos, int no_eras)
FEC_API void free_rs_int(void *rs)
FEC_API void encode_rs_ccsds(unsigned char *data, unsigned char *parity)
FEC_API void free_rs_char(void *rs)
FEC_API void * init_rs_int(unsigned int symsize, unsigned int gfpoly, unsigned int fcr, unsigned int prim, unsigned int nroots)
FEC_API void * init_rs_char(unsigned int symsize, unsigned int gfpoly, unsigned int fcr, unsigned int prim, unsigned int nroots)
FEC_API void encode_rs_8(unsigned char *data, unsigned char *parity)
FEC_API void encode_rs_char(void *rs, unsigned char *data, unsigned char *parity)
FEC_API int decode_rs_int(void *rs, int *data, int *eras_pos, int no_eras)
FEC_API int decode_rs_8(unsigned char *data, int *eras_pos, int no_eras)
FEC_API void encode_rs_int(void *rs, int *data, int *parity)