diff options
author | Josh Blum | 2011-09-05 21:15:49 -0700 |
---|---|---|
committer | Josh Blum | 2011-09-05 21:15:49 -0700 |
commit | ca86c6f82d81bbc57bfe898afb8489a419ddbe63 (patch) | |
tree | 272a4623e6fd247c82d17d01e65ed14f3abe72a4 /gr-trellis/src/lib/core_algorithms.h | |
parent | 0ea25051b5126d9761e49ceeb0e5d76aaecd2ca3 (diff) | |
parent | 492446d2ec6ed85d6437bb35caf4700b02930147 (diff) | |
download | gnuradio-ca86c6f82d81bbc57bfe898afb8489a419ddbe63.tar.gz gnuradio-ca86c6f82d81bbc57bfe898afb8489a419ddbe63.tar.bz2 gnuradio-ca86c6f82d81bbc57bfe898afb8489a419ddbe63.zip |
Merge branch 'next' of gnuradio.org:gnuradio into next
Conflicts:
gr-trellis/src/lib/trellis_permutation.h
Diffstat (limited to 'gr-trellis/src/lib/core_algorithms.h')
-rw-r--r-- | gr-trellis/src/lib/core_algorithms.h | 36 |
1 files changed, 24 insertions, 12 deletions
diff --git a/gr-trellis/src/lib/core_algorithms.h b/gr-trellis/src/lib/core_algorithms.h index fd45844c0..cab7086ba 100644 --- a/gr-trellis/src/lib/core_algorithms.h +++ b/gr-trellis/src/lib/core_algorithms.h @@ -91,11 +91,21 @@ void siso_algorithm_combined(int I, int S, int O, ); +template<class T> +void sccc_decoder( + const fsm &FSMo, int STo0, int SToK, + const fsm &FSMi, int STi0, int STiK, + const interleaver &INTERLEAVER, int blocklength, int iterations, + float (*p2mymin)(float,float), + const float *iprioro, T *data +); + + template<class Ti, class To> void sccc_decoder_combined( const fsm &FSMo, int STo0, int SToK, const fsm &FSMi, int STi0, int STiK, - const interleaver &INTERLEAVER, int blocklength, int repetitions, + const interleaver &INTERLEAVER, int blocklength, int iterations, float (*p2mymin)(float,float), int D, const std::vector<Ti> &TABLE, trellis_metric_type_t METRIC_TYPE, @@ -103,26 +113,28 @@ void sccc_decoder_combined( const Ti *observations, To *data ); - template<class T> -void sccc_decoder( - const fsm &FSMo, int STo0, int SToK, - const fsm &FSMi, int STi0, int STiK, - const interleaver &INTERLEAVER, int blocklength, int repetitions, +void pccc_decoder( + const fsm &FSM1, int ST10, int ST1K, + const fsm &FSM2, int ST20, int ST2K, + const interleaver &INTERLEAVER, int blocklength, int iterations, float (*p2mymin)(float,float), - const float *iprioro, T *data + const float *cprioro, T *data ); - -template<class T> -void pccc_decoder( +template<class Ti, class To> +void pccc_decoder_combined( const fsm &FSM1, int ST10, int ST1K, const fsm &FSM2, int ST20, int ST2K, - const interleaver &INTERLEAVER, int blocklength, int repetitions, + const interleaver &INTERLEAVER, int blocklength, int iterations, float (*p2mymin)(float,float), - const float *cprioro, T *data + int D, const std::vector<Ti> &TABLE, + trellis_metric_type_t METRIC_TYPE, + float scaling, + const Ti *observations, To *data ); + #endif |