GNU Radio's SATELLITES Package
lib/libfec/decode_rs.h File Reference

Go to the source code of this file.

Macros

#define NULL   ((void*)0)
 
#define MIN(a, b)   ((a) < (b) ? (a) : (b))
 
#define A0   (NN)
 

Functions

 for (i=0;i< NROOTS;i++) s[i] = INDEX_OF[lambda[i]]
 
 if (!syn_error)
 
memset &[1] lambda (lambda[0])
 
 if (no_eras > 0)
 
 while (++r<=NROOTS)
 
memcpy &[1][1] reg (reg[0])
 
 for (i=1, k=IPRIM - 1;i<=NN;i++, k=MODNN(k+IPRIM))
 
 if (deg_lambda !=count)
 
 for (i=0;i<=deg_omega;i++)
 
 for (j=count - 1;j >=0;j--)
 

Variables

int i
 
int j
 
int r = no_eras
 
int k
 
data_t u
 
data_t q
 
data_t tmp
 
data_t num1
 
data_t num2
 
data_t den
 
data_t discr_r
 
data_t lambda [NROOTS+1] = 1
 
data_t s [NROOTS]
 
data_t b [NROOTS+1]
 
data_t t [NROOTS+1]
 
data_t omega [NROOTS+1]
 
data_t root [NROOTS]
 
data_t reg [NROOTS+1]
 
data_t loc [NROOTS]
 
int syn_error = 0
 
int count = 0
 
 el = no_eras
 
 deg_lambda = 0
 
 deg_omega = deg_lambda - 1
 
finish __pad0__
 

Macro Definition Documentation

◆ A0

#define A0   (NN)

Referenced by for(), if(), and while().

◆ MIN

#define MIN (   a,
  b 
)    ((a) < (b) ? (a) : (b))

Referenced by for().

◆ NULL

#define NULL   ((void*)0)

Referenced by for().

Function Documentation

◆ for() [1/4]

for ( ) = INDEX_OF[lambda[i]]

References ALPHA_TO, FCR, i, INDEX_OF, j, MODNN, NROOTS, and PRIM.

◆ for() [2/4]

for ( i  = 1,
k  = IPRIM - 1; i <= NNi++,
k  = MODNN(k + IPRIM) 
)

References A0, ALPHA_TO, count, i, j, k, and MODNN.

◆ for() [3/4]

for ( i  = 0;i<=deg_omega;i++)

References A0, ALPHA_TO, i, INDEX_OF, MODNN, and tmp.

◆ for() [4/4]

for ( j  = count - 1; j >= 0; j--)

References A0, ALPHA_TO, FCR, INDEX_OF, j, MIN, MODNN, NN, NULL, and PAD.

◆ if() [1/3]

if ( syn_error)

References memset().

◆ if() [2/3]

if ( no_eras  ,
 
)

References A0, ALPHA_TO, count, i, INDEX_OF, IPRIM, j, k, MODNN, NN, and PRIM.

◆ if() [3/3]

if ( deg_lambda = count)

◆ lambda()

memset&[1] lambda ( lambda  [0])

◆ reg()

memcpy&[1][1] reg ( reg  [0])

◆ while()

while ( ++r<=  NROOTS)

References A0, ALPHA_TO, discr_r, el, INDEX_OF, MODNN, NN, NROOTS, and r.

Variable Documentation

◆ __pad0__

finish __pad0__

◆ b

data_t b[NROOTS+1]

◆ count

count = 0

Referenced by for(), and if().

◆ deg_lambda

deg_lambda = 0

◆ deg_omega

deg_omega = deg_lambda - 1

◆ den

data_t den

◆ discr_r

data_t discr_r

Referenced by while().

◆ el

el = no_eras

Referenced by while().

◆ i

int i
Initial value:
{
deg_lambda
Definition: lib/libfec/decode_rs.h:217
el
Definition: lib/libfec/decode_rs.h:175
deg_omega
Definition: lib/libfec/decode_rs.h:260

Referenced by for(), and if().

◆ j

int j

Referenced by for(), and if().

◆ k

int k

Referenced by for(), and if().

◆ lambda

lambda[0] = 1

◆ loc

data_t loc[NROOTS]

◆ num1

data_t num1

◆ num2

data_t num2

◆ omega

data_t omega[NROOTS+1]

◆ q

data_t q

◆ r

r = no_eras

Referenced by while().

◆ reg

data_t reg[NROOTS+1]

◆ root

data_t root[NROOTS]

◆ s

◆ syn_error

syn_error = 0

◆ t

data_t t[NROOTS+1]

◆ tmp

data_t tmp

Referenced by for().

◆ u

data_t u