Data Structures | |
| struct | _convolutional_code_ |
Defines | |
| #define | IT_CONVOLUTIONAL_CODE(q) IT_CAST(it_convolutional_code_t, q) |
| #define | it_convolutional_code_encode(it_this, b) __it_convolutional_code_encode(IT_CONVOLUTIONAL_CODE(it_this), b) |
| #define | it_convolutional_code_encode_symbolic(it_this, b) __it_convolutional_code_encode_symbolic(IT_CONVOLUTIONAL_CODE(it_this), b) |
| #define | it_cc_encode(cc, b) it_convolutional_code_encode(cc, b) |
| #define | it_cc_encode_symbolic(cc, b) it_convolutional_code_encode_symbolic(cc, b) |
| #define | it_cc_decode(cc, v) it_convolutional_code_decode(cc, v) |
| #define | it_cc_next(cc, s, b) it_convolutional_code_trellis_next(cc, s, b) |
| #define | it_cc_label(cc, s, b) it_convolutional_code_trellis_label(cc, s, b) |
Typedefs | |
| typedef struct _convolutional_code_ | it_convolutional_code_t |
Functions | |
| it_instanciate (it_convolutional_code_t) | |
| static it_convolutional_code_t * | it_convolutional_code_new (imat generators, int feedback) |
| static bvec | __it_convolutional_code_encode (it_convolutional_code_t *it_this, bvec b) |
| static ivec | __it_convolutional_code_encode_symbolic (it_convolutional_code_t *it_this, ivec b) |
| static int | it_convolutional_code_trellis_label (it_convolutional_code_t *cc, int state, int symbol) |
| static int | it_convolutional_code_trellis_next (it_convolutional_code_t *cc, int state, int symbol) |
| ivec | it_viterbi_decode_symbolic (it_convolutional_code_t *cc, mat metrics) |
| bvec | it_viterbi_decode (it_convolutional_code_t *cc, mat metrics) |
| #define it_cc_decode | ( | cc, | |||
| v | ) | it_convolutional_code_decode(cc, v) |
Definition at line 118 of file convcode.h.
| #define it_cc_encode | ( | cc, | |||
| b | ) | it_convolutional_code_encode(cc, b) |
| #define it_cc_encode_symbolic | ( | cc, | |||
| b | ) | it_convolutional_code_encode_symbolic(cc, b) |
Definition at line 117 of file convcode.h.
Referenced by trellis_coded_quantizer_dequantize(), and trellis_coded_quantizer_quantize().
| #define it_cc_label | ( | cc, | |||
| s, | |||||
| b | ) | it_convolutional_code_trellis_label(cc, s, b) |
Definition at line 120 of file convcode.h.
Referenced by convolutional_code_encode(), and convolutional_code_encode_symbolic().
| #define it_cc_next | ( | cc, | |||
| s, | |||||
| b | ) | it_convolutional_code_trellis_next(cc, s, b) |
Definition at line 119 of file convcode.h.
Referenced by convolutional_code_encode(), and convolutional_code_encode_symbolic().
| #define IT_CONVOLUTIONAL_CODE | ( | q | ) | IT_CAST(it_convolutional_code_t, q) |
| #define it_convolutional_code_encode | ( | it_this, | |||
| b | ) | __it_convolutional_code_encode(IT_CONVOLUTIONAL_CODE(it_this), b) |
Definition at line 88 of file convcode.h.
| #define it_convolutional_code_encode_symbolic | ( | it_this, | |||
| b | ) | __it_convolutional_code_encode_symbolic(IT_CONVOLUTIONAL_CODE(it_this), b) |
Definition at line 94 of file convcode.h.
| typedef struct _convolutional_code_ it_convolutional_code_t |
| static bvec __it_convolutional_code_encode | ( | it_convolutional_code_t * | it_this, | |
| bvec | b | |||
| ) | [inline, static] |
| static ivec __it_convolutional_code_encode_symbolic | ( | it_convolutional_code_t * | it_this, | |
| ivec | b | |||
| ) | [inline, static] |
| static it_convolutional_code_t* it_convolutional_code_new | ( | imat | generators, | |
| int | feedback | |||
| ) | [inline, static] |
| static int it_convolutional_code_trellis_label | ( | it_convolutional_code_t * | cc, | |
| int | state, | |||
| int | symbol | |||
| ) | [inline, static] |
Definition at line 102 of file convcode.h.
References _convolutional_code_::output.
Referenced by it_convolutional_code_trellis_next().
| static int it_convolutional_code_trellis_next | ( | it_convolutional_code_t * | cc, | |
| int | state, | |||
| int | symbol | |||
| ) | [inline, static] |
Definition at line 108 of file convcode.h.
References _convolutional_code_::automaton, and it_convolutional_code_trellis_label().
| it_instanciate | ( | it_convolutional_code_t | ) |
Definition at line 64 of file convcode.c.
References convolutional_code_destructor(), convolutional_code_encode(), convolutional_code_encode_symbolic(), DUMM_NODE, encode_conv(), fls(), imat_clone(), imat_height(), imat_new(), imat_new_set(), imat_width(), it_construct, it_new_args_next, it_new_args_start, it_new_args_stop, it_overload, it_set_magic, mat_new_zeros(), NULL_INDEX, state, vec_new_set(), and vec_new_zeros().
| bvec it_viterbi_decode | ( | it_convolutional_code_t * | cc, | |
| mat | metrics | |||
| ) |
Definition at line 297 of file convcode.c.
References bit, bvec_new(), it_viterbi_decode_symbolic(), ivec_delete(), _convolutional_code_::k, and mat_width().
Referenced by main().
| ivec it_viterbi_decode_symbolic | ( | it_convolutional_code_t * | cc, | |
| mat | metrics | |||
| ) |
Definition at line 271 of file convcode.c.
References _convolutional_code_::automaton, _convolutional_code_::input, ivec_length(), _convolutional_code_::logalpha_0, _convolutional_code_::logbeta_end, logviterbi(), and _convolutional_code_::next_state_logpt.
Referenced by it_viterbi_decode(), and trellis_coded_quantizer_quantize().
|
|