diff options
author | anastas | 2006-08-16 20:07:36 +0000 |
---|---|---|
committer | anastas | 2006-08-16 20:07:36 +0000 |
commit | d5c192f9e3cde58589845b7b51057afc45d3bc79 (patch) | |
tree | 04dc746388bb19f66bae93d110e4f2a5ca14c64b /gr-trellis/src/lib/trellis_viterbi_i.cc | |
parent | 1f0a124c68a40b2eee063267d4f7aeba4ed87619 (diff) | |
download | gnuradio-d5c192f9e3cde58589845b7b51057afc45d3bc79.tar.gz gnuradio-d5c192f9e3cde58589845b7b51057afc45d3bc79.tar.bz2 gnuradio-d5c192f9e3cde58589845b7b51057afc45d3bc79.zip |
Several enhancements to gr-trellis and gnuradio-examples/python/channel-coding:
-Added fsm constructor for generating FSM directly from the
generator matrix of binary convolutional codes.
-Added functionality to fsm class to compute the best way to
go from any state to any other state (useful for termination)
-Added soft-in-soft-out (SISO) block for turbo processing
-Added turbo decoding examples
git-svn-id: http://gnuradio.org/svn/gnuradio/trunk@3322 221aa14e-8319-0410-a670-987f0aec2ac5
Diffstat (limited to 'gr-trellis/src/lib/trellis_viterbi_i.cc')
-rw-r--r-- | gr-trellis/src/lib/trellis_viterbi_i.cc | 18 |
1 files changed, 9 insertions, 9 deletions
diff --git a/gr-trellis/src/lib/trellis_viterbi_i.cc b/gr-trellis/src/lib/trellis_viterbi_i.cc index 58a39f6e5..2ff304ebb 100644 --- a/gr-trellis/src/lib/trellis_viterbi_i.cc +++ b/gr-trellis/src/lib/trellis_viterbi_i.cc @@ -34,18 +34,18 @@ static const float INF = 1.0e9; trellis_viterbi_i_sptr trellis_make_viterbi_i ( const fsm &FSM, - const int K, - const int S0, - const int SK) + int K, + int S0, + int SK) { return trellis_viterbi_i_sptr (new trellis_viterbi_i (FSM,K,S0,SK)); } trellis_viterbi_i::trellis_viterbi_i ( const fsm &FSM, - const int K, - const int S0, - const int SK) + int K, + int S0, + int SK) : gr_block ("viterbi_i", gr_make_io_signature (1, -1, sizeof (float)), gr_make_io_signature (1, -1, sizeof (int))), @@ -74,13 +74,13 @@ trellis_viterbi_i::forecast (int noutput_items, gr_vector_int &ninput_items_requ -void viterbi_algorithm(const int I, const int S, const int O, +void viterbi_algorithm(int I, int S, int O, const std::vector<int> &NS, const std::vector<int> &OS, const std::vector<int> &PS, const std::vector<int> &PI, - const int K, - const int S0,const int SK, + int K, + int S0,int SK, const float *in, int *out, std::vector<int> &trace) { |