From d5c192f9e3cde58589845b7b51057afc45d3bc79 Mon Sep 17 00:00:00 2001 From: anastas Date: Wed, 16 Aug 2006 20:07:36 +0000 Subject: 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 --- gr-trellis/src/lib/trellis_encoder_bb.cc | 30 ++++++++++++++---------------- 1 file changed, 14 insertions(+), 16 deletions(-) (limited to 'gr-trellis/src/lib/trellis_encoder_bb.cc') diff --git a/gr-trellis/src/lib/trellis_encoder_bb.cc b/gr-trellis/src/lib/trellis_encoder_bb.cc index aecba87a4..cad4490ad 100644 --- a/gr-trellis/src/lib/trellis_encoder_bb.cc +++ b/gr-trellis/src/lib/trellis_encoder_bb.cc @@ -29,12 +29,12 @@ #include trellis_encoder_bb_sptr -trellis_make_encoder_bb (const fsm &FSM, const int ST) +trellis_make_encoder_bb (const fsm &FSM, int ST) { return trellis_encoder_bb_sptr (new trellis_encoder_bb (FSM,ST)); } -trellis_encoder_bb::trellis_encoder_bb (const fsm &FSM, const int ST) +trellis_encoder_bb::trellis_encoder_bb (const fsm &FSM, int ST) : gr_sync_block ("encoder_bb", gr_make_io_signature (1, -1, sizeof (unsigned char)), gr_make_io_signature (1, -1, sizeof (unsigned char))), @@ -50,26 +50,24 @@ trellis_encoder_bb::work (int noutput_items, gr_vector_const_void_star &input_items, gr_vector_void_star &output_items) { - int d_ST_tmp; + int ST_tmp; assert (input_items.size() == output_items.size()); int nstreams = input_items.size(); -for (int m=0;m