summaryrefslogtreecommitdiff
path: root/gr-trellis/lib/sccc_decoder_combined_blk_impl.h
diff options
context:
space:
mode:
Diffstat (limited to 'gr-trellis/lib/sccc_decoder_combined_blk_impl.h')
-rw-r--r--gr-trellis/lib/sccc_decoder_combined_blk_impl.h113
1 files changed, 58 insertions, 55 deletions
diff --git a/gr-trellis/lib/sccc_decoder_combined_blk_impl.h b/gr-trellis/lib/sccc_decoder_combined_blk_impl.h
index 8236c79a49..91a5fbd3da 100644
--- a/gr-trellis/lib/sccc_decoder_combined_blk_impl.h
+++ b/gr-trellis/lib/sccc_decoder_combined_blk_impl.h
@@ -26,67 +26,70 @@
#include <gnuradio/trellis/sccc_decoder_combined_blk.h>
namespace gr {
- namespace trellis {
+namespace trellis {
- template <class IN_T, class OUT_T>
- class sccc_decoder_combined_blk_impl : public sccc_decoder_combined_blk<IN_T,OUT_T>
- {
- private:
- fsm d_FSMo;
- int d_STo0;
- int d_SToK;
- fsm d_FSMi;
- int d_STi0;
- int d_STiK;
- interleaver d_INTERLEAVER;
- int d_blocklength;
- int d_repetitions;
- siso_type_t d_SISO_TYPE;
- int d_D;
- std::vector<IN_T> d_TABLE;
- digital::trellis_metric_type_t d_METRIC_TYPE;
- float d_scaling;
- std::vector<float> d_buffer;
+template <class IN_T, class OUT_T>
+class sccc_decoder_combined_blk_impl : public sccc_decoder_combined_blk<IN_T, OUT_T>
+{
+private:
+ fsm d_FSMo;
+ int d_STo0;
+ int d_SToK;
+ fsm d_FSMi;
+ int d_STi0;
+ int d_STiK;
+ interleaver d_INTERLEAVER;
+ int d_blocklength;
+ int d_repetitions;
+ siso_type_t d_SISO_TYPE;
+ int d_D;
+ std::vector<IN_T> d_TABLE;
+ digital::trellis_metric_type_t d_METRIC_TYPE;
+ float d_scaling;
+ std::vector<float> d_buffer;
- public:
- sccc_decoder_combined_blk_impl(const fsm &FSMo, int STo0, int SToK,
- const fsm &FSMi, int STi0, int STiK,
- const interleaver &INTERLEAVER,
- int blocklength,
- int repetitions,
- siso_type_t SISO_TYPE,
- int D,
- const std::vector<IN_T> &TABLE,
- digital::trellis_metric_type_t METRIC_TYPE,
- float scaling);
- ~sccc_decoder_combined_blk_impl();
+public:
+ sccc_decoder_combined_blk_impl(const fsm& FSMo,
+ int STo0,
+ int SToK,
+ const fsm& FSMi,
+ int STi0,
+ int STiK,
+ const interleaver& INTERLEAVER,
+ int blocklength,
+ int repetitions,
+ siso_type_t SISO_TYPE,
+ int D,
+ const std::vector<IN_T>& TABLE,
+ digital::trellis_metric_type_t METRIC_TYPE,
+ float scaling);
+ ~sccc_decoder_combined_blk_impl();
- fsm FSMo() const { return d_FSMo; }
- fsm FSMi() const { return d_FSMi; }
- int STo0() const { return d_STo0; }
- int SToK() const { return d_SToK; }
- int STi0() const { return d_STi0; }
- int STiK() const { return d_STiK; }
- interleaver INTERLEAVER() const { return d_INTERLEAVER; }
- int blocklength() const { return d_blocklength; }
- int repetitions() const { return d_repetitions; }
- int D() const { return d_D; }
- std::vector<IN_T> TABLE() const { return d_TABLE; }
- digital::trellis_metric_type_t METRIC_TYPE() const { return d_METRIC_TYPE; }
- siso_type_t SISO_TYPE() const { return d_SISO_TYPE; }
- float scaling() const { return d_scaling; }
- void set_scaling(float scaling);
+ fsm FSMo() const { return d_FSMo; }
+ fsm FSMi() const { return d_FSMi; }
+ int STo0() const { return d_STo0; }
+ int SToK() const { return d_SToK; }
+ int STi0() const { return d_STi0; }
+ int STiK() const { return d_STiK; }
+ interleaver INTERLEAVER() const { return d_INTERLEAVER; }
+ int blocklength() const { return d_blocklength; }
+ int repetitions() const { return d_repetitions; }
+ int D() const { return d_D; }
+ std::vector<IN_T> TABLE() const { return d_TABLE; }
+ digital::trellis_metric_type_t METRIC_TYPE() const { return d_METRIC_TYPE; }
+ siso_type_t SISO_TYPE() const { return d_SISO_TYPE; }
+ float scaling() const { return d_scaling; }
+ void set_scaling(float scaling);
- void forecast(int noutput_items,
- gr_vector_int &ninput_items_required);
+ void forecast(int noutput_items, gr_vector_int& ninput_items_required);
- int general_work(int noutput_items,
- gr_vector_int &ninput_items,
- gr_vector_const_void_star &input_items,
- gr_vector_void_star &output_items);
- };
+ int general_work(int noutput_items,
+ gr_vector_int& ninput_items,
+ gr_vector_const_void_star& input_items,
+ gr_vector_void_star& output_items);
+};
- } /* namespace trellis */
+} /* namespace trellis */
} /* namespace gr */
#endif /* SCCC_DECODER_COMBINED_BLK_IMPL_H */