diff options
author | Bill Yi <byi@google.com> | 2015-06-23 13:53:11 -0700 |
---|---|---|
committer | Bill Yi <byi@google.com> | 2015-06-23 13:53:11 -0700 |
commit | 4e213d510f437769f8a28578dd4f786fb7d16c44 (patch) | |
tree | 0d5cbd5a7eee87b3dca5820d282ef618a7e25991 /init_rs.c | |
download | fec-4e213d510f437769f8a28578dd4f786fb7d16c44.tar.gz |
Initial codenougat-mr1-arc
Diffstat (limited to 'init_rs.c')
-rw-r--r-- | init_rs.c | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/init_rs.c b/init_rs.c new file mode 100644 index 0000000..ef1cf47 --- /dev/null +++ b/init_rs.c @@ -0,0 +1,39 @@ +/* Initialize a RS codec + * + * Copyright 2002 Phil Karn, KA9Q + * May be used under the terms of the GNU Lesser General Public License (LGPL) + */ +#include <stdlib.h> +#include "fec.h" + +#if !defined(NULL) +#define NULL ((void *)0) +#endif + +#include "rs-common.h" + +void free_rs(void *p){ + struct rs *rs = (struct rs *)p; + + free(rs->alpha_to); + free(rs->index_of); + free(rs->genpoly); + free(rs); +} + +/* Initialize a Reed-Solomon codec + * symsize = symbol size, bits + * gfpoly = Field generator polynomial coefficients + * fcr = first root of RS code generator polynomial, index form + * prim = primitive element to generate polynomial roots + * nroots = RS code generator polynomial degree (number of roots) + * pad = padding bytes at front of shortened block + */ +void *init_rs_common(int symsize,int gfpoly,int fcr,int prim, + int nroots,int pad){ + struct rs *rs; + +#include "init_rs.h" + + return rs; +} |