diff options
author | Tom Rondeau <trondeau@vt.edu> | 2012-08-20 21:08:24 -0400 |
---|---|---|
committer | Tom Rondeau <trondeau@vt.edu> | 2012-08-20 21:08:24 -0400 |
commit | 372c129f932236fb0bacb83a8c8994171eb4d018 (patch) | |
tree | 1cd46a518208cd5df8e7d6cf6459d0ff37d30751 /gr-trellis/src/lib | |
parent | 8ba8d63dc8cd70b88c537d5ec12d153581f7ef2c (diff) |
trellis: updating gr-trellis to handle changes with gr-digital.
(mostly namespace issues in C++).
Diffstat (limited to 'gr-trellis/src/lib')
24 files changed, 206 insertions, 184 deletions
diff --git a/gr-trellis/src/lib/CMakeLists.txt b/gr-trellis/src/lib/CMakeLists.txt index 8f29f9605b..315ef3a93c 100644 --- a/gr-trellis/src/lib/CMakeLists.txt +++ b/gr-trellis/src/lib/CMakeLists.txt @@ -148,6 +148,7 @@ list(APPEND gr_trellis_sources list(APPEND trellis_libs gnuradio-core + gnuradio-digital ${Boost_LIBRARIES} ) diff --git a/gr-trellis/src/lib/calc_metric.cc b/gr-trellis/src/lib/calc_metric.cc index ce628209b4..4d58a05482 100644 --- a/gr-trellis/src/lib/calc_metric.cc +++ b/gr-trellis/src/lib/calc_metric.cc @@ -27,14 +27,15 @@ template <class T> -void calc_metric(int O, int D, const std::vector<T> &TABLE, const T *in, float *metric, trellis_metric_type_t type) +void calc_metric(int O, int D, const std::vector<T> &TABLE, const T *in, + float *metric, gr::digital::trellis_metric_type_t type) { float minm = FLT_MAX; int minmi = 0; switch (type){ - case TRELLIS_EUCLIDEAN: + case gr::digital::TRELLIS_EUCLIDEAN: for(int o=0;o<O;o++) { metric[o]=0.0; for (int m=0;m<D;m++) { @@ -45,7 +46,7 @@ void calc_metric(int O, int D, const std::vector<T> &TABLE, const T *in, float * } } break; - case TRELLIS_HARD_SYMBOL: + case gr::digital::TRELLIS_HARD_SYMBOL: for(int o=0;o<O;o++) { metric[o]=0.0; for (int m=0;m<D;m++) { @@ -63,7 +64,7 @@ void calc_metric(int O, int D, const std::vector<T> &TABLE, const T *in, float * metric[o] = (o==minmi?0.0:1.0); } break; - case TRELLIS_HARD_BIT: + case gr::digital::TRELLIS_HARD_BIT: throw std::runtime_error ("Invalid metric type (not yet implemented)."); break; default: @@ -74,23 +75,27 @@ void calc_metric(int O, int D, const std::vector<T> &TABLE, const T *in, float * template -void calc_metric<short>(int O, int D, const std::vector<short> &TABLE, const short *in, float *metric, trellis_metric_type_t type); +void calc_metric<short>(int O, int D, const std::vector<short> &TABLE, const short *in, + float *metric, gr::digital::trellis_metric_type_t type); template -void calc_metric<int>(int O, int D, const std::vector<int> &TABLE, const int *in, float *metric, trellis_metric_type_t type); +void calc_metric<int>(int O, int D, const std::vector<int> &TABLE, const int *in, + float *metric, gr::digital::trellis_metric_type_t type); template -void calc_metric<float>(int O, int D, const std::vector<float> &TABLE, const float *in, float *metric, trellis_metric_type_t type); +void calc_metric<float>(int O, int D, const std::vector<float> &TABLE, const float *in, + float *metric, gr::digital::trellis_metric_type_t type); /* -void calc_metric(int O, int D, const std::vector<short> &TABLE, const short *in, float *metric, trellis_metric_type_t type) +void calc_metric(int O, int D, const std::vector<short> &TABLE, const short *in, + float *metric, gr::digital::trellis_metric_type_t type) { float minm = FLT_MAX; int minmi = 0; switch (type){ - case TRELLIS_EUCLIDEAN: + case gr::digital::TRELLIS_EUCLIDEAN: for(int o=0;o<O;o++) { metric[o]=0.0; for (int m=0;m<D;m++) { @@ -99,7 +104,7 @@ void calc_metric(int O, int D, const std::vector<short> &TABLE, const short *in, } } break; - case TRELLIS_HARD_SYMBOL: + case gr::digital::TRELLIS_HARD_SYMBOL: for(int o=0;o<O;o++) { metric[o]=0.0; for (int m=0;m<D;m++) { @@ -115,7 +120,7 @@ void calc_metric(int O, int D, const std::vector<short> &TABLE, const short *in, metric[o] = (o==minmi?0.0:1.0); } break; - case TRELLIS_HARD_BIT: + case gr::digital::TRELLIS_HARD_BIT: throw std::runtime_error ("Invalid metric type (not yet implemented)."); break; default: @@ -124,13 +129,14 @@ void calc_metric(int O, int D, const std::vector<short> &TABLE, const short *in, } -void calc_metric(int O, int D, const std::vector<int> &TABLE, const int *in, float *metric, trellis_metric_type_t type) +void calc_metric(int O, int D, const std::vector<int> &TABLE, const int *in, + float *metric, gr::digital::trellis_metric_type_t type) { float minm = FLT_MAX; int minmi = 0; switch (type){ - case TRELLIS_EUCLIDEAN: + case gr::digital::TRELLIS_EUCLIDEAN: for(int o=0;o<O;o++) { metric[o]=0.0; for (int m=0;m<D;m++) { @@ -139,7 +145,7 @@ void calc_metric(int O, int D, const std::vector<int> &TABLE, const int *in, flo } } break; - case TRELLIS_HARD_SYMBOL: + case gr::digital::TRELLIS_HARD_SYMBOL: for(int o=0;o<O;o++) { metric[o]=0.0; for (int m=0;m<D;m++) { @@ -155,7 +161,7 @@ void calc_metric(int O, int D, const std::vector<int> &TABLE, const int *in, flo metric[o] = (o==minmi?0.0:1.0); } break; - case TRELLIS_HARD_BIT: + case gr::digital::TRELLIS_HARD_BIT: throw std::runtime_error ("Invalid metric type (not yet implemented)."); break; default: @@ -165,13 +171,14 @@ void calc_metric(int O, int D, const std::vector<int> &TABLE, const int *in, flo -void calc_metric(int O, int D, const std::vector<float> &TABLE, const float *in, float *metric, trellis_metric_type_t type) +void calc_metric(int O, int D, const std::vector<float> &TABLE, const float *in, + float *metric, gr::digital::trellis_metric_type_t type) { float minm = FLT_MAX; int minmi = 0; switch (type){ - case TRELLIS_EUCLIDEAN: + case gr::digital::TRELLIS_EUCLIDEAN: for(int o=0;o<O;o++) { metric[o]=0.0; for (int m=0;m<D;m++) { @@ -180,7 +187,7 @@ void calc_metric(int O, int D, const std::vector<float> &TABLE, const float *in, } } break; - case TRELLIS_HARD_SYMBOL: + case gr::digital::TRELLIS_HARD_SYMBOL: for(int o=0;o<O;o++) { metric[o]=0.0; for (int m=0;m<D;m++) { @@ -196,7 +203,7 @@ void calc_metric(int O, int D, const std::vector<float> &TABLE, const float *in, metric[o] = (o==minmi?0.0:1.0); } break; - case TRELLIS_HARD_BIT: + case gr::digital::TRELLIS_HARD_BIT: throw std::runtime_error ("Invalid metric type (not yet implemented)."); break; default: @@ -209,14 +216,15 @@ void calc_metric(int O, int D, const std::vector<float> &TABLE, const float *in, -void calc_metric(int O, int D, const std::vector<gr_complex> &TABLE, const gr_complex *in, float *metric, trellis_metric_type_t type) +void calc_metric(int O, int D, const std::vector<gr_complex> &TABLE, const gr_complex *in, + float *metric, gr::digital::trellis_metric_type_t type) { float minm = FLT_MAX; int minmi = 0; switch (type){ - case TRELLIS_EUCLIDEAN: + case gr::digital::TRELLIS_EUCLIDEAN: for(int o=0;o<O;o++) { metric[o]=0.0; for (int m=0;m<D;m++) { @@ -225,7 +233,7 @@ void calc_metric(int O, int D, const std::vector<gr_complex> &TABLE, const gr_co } } break; - case TRELLIS_HARD_SYMBOL: + case gr::digital::TRELLIS_HARD_SYMBOL: for(int o=0;o<O;o++) { metric[o]=0.0; for (int m=0;m<D;m++) { @@ -241,7 +249,7 @@ void calc_metric(int O, int D, const std::vector<gr_complex> &TABLE, const gr_co metric[o] = (o==minmi?0.0:1.0); } break; - case TRELLIS_HARD_BIT: + case gr::digital::TRELLIS_HARD_BIT: throw std::runtime_error ("Invalid metric type (not yet implemented)."); break; default: diff --git a/gr-trellis/src/lib/calc_metric.h b/gr-trellis/src/lib/calc_metric.h index 489d148317..cc0a12878d 100644 --- a/gr-trellis/src/lib/calc_metric.h +++ b/gr-trellis/src/lib/calc_metric.h @@ -29,17 +29,19 @@ template <class T> -void calc_metric(int O, int D, const std::vector<T> &TABLE, const T *in, float *metric, trellis_metric_type_t type); +void calc_metric(int O, int D, const std::vector<T> &TABLE, const T *in, + float *metric, gr::digital::trellis_metric_type_t type); /* -void calc_metric(int O, int D, const std::vector<short> &TABLE, const short *in, float *metric, trellis_metric_type_t type); +void calc_metric(int O, int D, const std::vector<short> &TABLE, const short *in, float *metric, gr::digital::trellis_metric_type_t type); -void calc_metric(int O, int D, const std::vector<int> &TABLE, const int *in, float *metric, trellis_metric_type_t type); +void calc_metric(int O, int D, const std::vector<int> &TABLE, const int *in, float *metric, gr::digital::trellis_metric_type_t type); -void calc_metric(int O, int D, const std::vector<float> &TABLE, const float *in, float *metric, trellis_metric_type_t type); +void calc_metric(int O, int D, const std::vector<float> &TABLE, const float *in, float *metric, gr::digital::trellis_metric_type_t type); */ -void calc_metric(int O, int D, const std::vector<gr_complex> &TABLE, const gr_complex *in, float *metric, trellis_metric_type_t type); +void calc_metric(int O, int D, const std::vector<gr_complex> &TABLE, const gr_complex *in, + float *metric, gr::digital::trellis_metric_type_t type); diff --git a/gr-trellis/src/lib/core_algorithms.cc b/gr-trellis/src/lib/core_algorithms.cc index 3ed912c08a..442565054a 100644 --- a/gr-trellis/src/lib/core_algorithms.cc +++ b/gr-trellis/src/lib/core_algorithms.cc @@ -154,7 +154,7 @@ void viterbi_algorithm_combined(int I, int S, int O, int S0,int SK, int D, const std::vector<Ti> &TABLE, - trellis_metric_type_t TYPE, + gr::digital::trellis_metric_type_t TYPE, const Ti *in, To *out ) { @@ -231,7 +231,7 @@ void viterbi_algorithm_combined<short,unsigned char>(int I, int S, int O, int S0,int SK, int D, const std::vector<short> &TABLE, - trellis_metric_type_t TYPE, + gr::digital::trellis_metric_type_t TYPE, const short *in, unsigned char *out ); @@ -245,7 +245,7 @@ void viterbi_algorithm_combined<int,unsigned char>(int I, int S, int O, int S0,int SK, int D, const std::vector<int> &TABLE, - trellis_metric_type_t TYPE, + gr::digital::trellis_metric_type_t TYPE, const int *in, unsigned char *out ); @@ -259,7 +259,7 @@ void viterbi_algorithm_combined<float,unsigned char>(int I, int S, int O, int S0,int SK, int D, const std::vector<float> &TABLE, - trellis_metric_type_t TYPE, + gr::digital::trellis_metric_type_t TYPE, const float *in, unsigned char *out ); @@ -273,7 +273,7 @@ void viterbi_algorithm_combined<gr_complex,unsigned char>(int I, int S, int O, int S0,int SK, int D, const std::vector<gr_complex> &TABLE, - trellis_metric_type_t TYPE, + gr::digital::trellis_metric_type_t TYPE, const gr_complex *in, unsigned char *out ); @@ -289,7 +289,7 @@ void viterbi_algorithm_combined<short,short>(int I, int S, int O, int S0,int SK, int D, const std::vector<short> &TABLE, - trellis_metric_type_t TYPE, + gr::digital::trellis_metric_type_t TYPE, const short *in, short *out ); @@ -303,7 +303,7 @@ void viterbi_algorithm_combined<int,short>(int I, int S, int O, int S0,int SK, int D, const std::vector<int> &TABLE, - trellis_metric_type_t TYPE, + gr::digital::trellis_metric_type_t TYPE, const int *in, short *out ); @@ -317,7 +317,7 @@ void viterbi_algorithm_combined<float,short>(int I, int S, int O, int S0,int SK, int D, const std::vector<float> &TABLE, - trellis_metric_type_t TYPE, + gr::digital::trellis_metric_type_t TYPE, const float *in, short *out ); @@ -331,7 +331,7 @@ void viterbi_algorithm_combined<gr_complex,short>(int I, int S, int O, int S0,int SK, int D, const std::vector<gr_complex> &TABLE, - trellis_metric_type_t TYPE, + gr::digital::trellis_metric_type_t TYPE, const gr_complex *in, short *out ); @@ -347,7 +347,7 @@ void viterbi_algorithm_combined<short,int>(int I, int S, int O, int S0,int SK, int D, const std::vector<short> &TABLE, - trellis_metric_type_t TYPE, + gr::digital::trellis_metric_type_t TYPE, const short *in, int *out ); @@ -361,7 +361,7 @@ void viterbi_algorithm_combined<int,int>(int I, int S, int O, int S0,int SK, int D, const std::vector<int> &TABLE, - trellis_metric_type_t TYPE, + gr::digital::trellis_metric_type_t TYPE, const int *in, int *out ); @@ -375,7 +375,7 @@ void viterbi_algorithm_combined<float,int>(int I, int S, int O, int S0,int SK, int D, const std::vector<float> &TABLE, - trellis_metric_type_t TYPE, + gr::digital::trellis_metric_type_t TYPE, const float *in, int *out ); @@ -389,7 +389,7 @@ void viterbi_algorithm_combined<gr_complex,int>(int I, int S, int O, int S0,int SK, int D, const std::vector<gr_complex> &TABLE, - trellis_metric_type_t TYPE, + gr::digital::trellis_metric_type_t TYPE, const gr_complex *in, int *out ); @@ -574,7 +574,7 @@ void siso_algorithm_combined(int I, int S, int O, float (*p2mymin)(float,float), int D, const std::vector<T> &TABLE, - trellis_metric_type_t TYPE, + gr::digital::trellis_metric_type_t TYPE, const float *priori, const T *observations, float *post ) { @@ -726,7 +726,7 @@ void siso_algorithm_combined<short>(int I, int S, int O, float (*p2mymin)(float,float), int D, const std::vector<short> &TABLE, - trellis_metric_type_t TYPE, + gr::digital::trellis_metric_type_t TYPE, const float *priori, const short *observations, float *post ); @@ -742,7 +742,7 @@ void siso_algorithm_combined<int>(int I, int S, int O, float (*p2mymin)(float,float), int D, const std::vector<int> &TABLE, - trellis_metric_type_t TYPE, + gr::digital::trellis_metric_type_t TYPE, const float *priori, const int *observations, float *post ); @@ -758,7 +758,7 @@ void siso_algorithm_combined<float>(int I, int S, int O, float (*p2mymin)(float,float), int D, const std::vector<float> &TABLE, - trellis_metric_type_t TYPE, + gr::digital::trellis_metric_type_t TYPE, const float *priori, const float *observations, float *post ); @@ -774,7 +774,7 @@ void siso_algorithm_combined<gr_complex>(int I, int S, int O, float (*p2mymin)(float,float), int D, const std::vector<gr_complex> &TABLE, - trellis_metric_type_t TYPE, + gr::digital::trellis_metric_type_t TYPE, const float *priori, const gr_complex *observations, float *post ); @@ -787,7 +787,7 @@ void sccc_decoder_combined( const interleaver &INTERLEAVER, int blocklength, int iterations, float (*p2mymin)(float,float), int D, const std::vector<Ti> &TABLE, - trellis_metric_type_t METRIC_TYPE, + gr::digital::trellis_metric_type_t METRIC_TYPE, float scaling, const Ti *observations, To *data ) @@ -900,7 +900,7 @@ void sccc_decoder_combined<float,unsigned char>( const interleaver &INTERLEAVER, int blocklength, int iterations, float (*p2mymin)(float,float), int D, const std::vector<float> &TABLE, - trellis_metric_type_t METRIC_TYPE, + gr::digital::trellis_metric_type_t METRIC_TYPE, float scaling, const float *observations, unsigned char *data ); @@ -912,7 +912,7 @@ void sccc_decoder_combined<float,short>( const interleaver &INTERLEAVER, int blocklength, int iterations, float (*p2mymin)(float,float), int D, const std::vector<float> &TABLE, - trellis_metric_type_t METRIC_TYPE, + gr::digital::trellis_metric_type_t METRIC_TYPE, float scaling, const float *observations, short *data ); @@ -924,7 +924,7 @@ void sccc_decoder_combined<float,int>( const interleaver &INTERLEAVER, int blocklength, int iterations, float (*p2mymin)(float,float), int D, const std::vector<float> &TABLE, - trellis_metric_type_t METRIC_TYPE, + gr::digital::trellis_metric_type_t METRIC_TYPE, float scaling, const float *observations, int *data ); @@ -936,7 +936,7 @@ void sccc_decoder_combined<gr_complex,unsigned char>( const interleaver &INTERLEAVER, int blocklength, int iterations, float (*p2mymin)(float,float), int D, const std::vector<gr_complex> &TABLE, - trellis_metric_type_t METRIC_TYPE, + gr::digital::trellis_metric_type_t METRIC_TYPE, float scaling, const gr_complex *observations, unsigned char *data ); @@ -948,7 +948,7 @@ void sccc_decoder_combined<gr_complex,short>( const interleaver &INTERLEAVER, int blocklength, int iterations, float (*p2mymin)(float,float), int D, const std::vector<gr_complex> &TABLE, - trellis_metric_type_t METRIC_TYPE, + gr::digital::trellis_metric_type_t METRIC_TYPE, float scaling, const gr_complex *observations, short *data ); @@ -960,7 +960,7 @@ void sccc_decoder_combined<gr_complex,int>( const interleaver &INTERLEAVER, int blocklength, int iterations, float (*p2mymin)(float,float), int D, const std::vector<gr_complex> &TABLE, - trellis_metric_type_t METRIC_TYPE, + gr::digital::trellis_metric_type_t METRIC_TYPE, float scaling, const gr_complex *observations, int *data ); @@ -1247,7 +1247,7 @@ void pccc_decoder_combined( const interleaver &INTERLEAVER, int blocklength, int iterations, float (*p2mymin)(float,float), int D, const std::vector<Ti> &TABLE, - trellis_metric_type_t METRIC_TYPE, + gr::digital::trellis_metric_type_t METRIC_TYPE, float scaling, const Ti *observations, To *data ) @@ -1366,7 +1366,7 @@ void pccc_decoder_combined( const interleaver &INTERLEAVER, int blocklength, int iterations, float (*p2mymin)(float,float), int D, const std::vector<float> &TABLE, - trellis_metric_type_t METRIC_TYPE, + gr::digital::trellis_metric_type_t METRIC_TYPE, float scaling, const float *observations, unsigned char *data ); @@ -1379,7 +1379,7 @@ void pccc_decoder_combined( const interleaver &INTERLEAVER, int blocklength, int iterations, float (*p2mymin)(float,float), int D, const std::vector<float> &TABLE, - trellis_metric_type_t METRIC_TYPE, + gr::digital::trellis_metric_type_t METRIC_TYPE, float scaling, const float *observations, short *data ); @@ -1392,7 +1392,7 @@ void pccc_decoder_combined( const interleaver &INTERLEAVER, int blocklength, int iterations, float (*p2mymin)(float,float), int D, const std::vector<float> &TABLE, - trellis_metric_type_t METRIC_TYPE, + gr::digital::trellis_metric_type_t METRIC_TYPE, float scaling, const float *observations, int *data ); @@ -1405,7 +1405,7 @@ void pccc_decoder_combined( const interleaver &INTERLEAVER, int blocklength, int iterations, float (*p2mymin)(float,float), int D, const std::vector<gr_complex> &TABLE, - trellis_metric_type_t METRIC_TYPE, + gr::digital::trellis_metric_type_t METRIC_TYPE, float scaling, const gr_complex *observations, unsigned char *data ); @@ -1418,7 +1418,7 @@ void pccc_decoder_combined( const interleaver &INTERLEAVER, int blocklength, int iterations, float (*p2mymin)(float,float), int D, const std::vector<gr_complex> &TABLE, - trellis_metric_type_t METRIC_TYPE, + gr::digital::trellis_metric_type_t METRIC_TYPE, float scaling, const gr_complex *observations, short *data ); @@ -1431,7 +1431,7 @@ void pccc_decoder_combined( const interleaver &INTERLEAVER, int blocklength, int iterations, float (*p2mymin)(float,float), int D, const std::vector<gr_complex> &TABLE, - trellis_metric_type_t METRIC_TYPE, + gr::digital::trellis_metric_type_t METRIC_TYPE, float scaling, const gr_complex *observations, int *data ); diff --git a/gr-trellis/src/lib/core_algorithms.h b/gr-trellis/src/lib/core_algorithms.h index f1e1fc9c22..4efcc91235 100644 --- a/gr-trellis/src/lib/core_algorithms.h +++ b/gr-trellis/src/lib/core_algorithms.h @@ -55,7 +55,7 @@ void viterbi_algorithm_combined(int I, int S, int O, int S0,int SK, int D, const std::vector<Ti> &TABLE, - trellis_metric_type_t TYPE, + gr::digital::trellis_metric_type_t TYPE, const Ti *in, To *out ); @@ -86,7 +86,7 @@ void siso_algorithm_combined(int I, int S, int O, float (*p2mymin)(float,float), int D, const std::vector<T> &TABLE, - trellis_metric_type_t TYPE, + gr::digital::trellis_metric_type_t TYPE, const float *priori, const T *observations, float *post ); @@ -108,7 +108,7 @@ void sccc_decoder_combined( const interleaver &INTERLEAVER, int blocklength, int iterations, float (*p2mymin)(float,float), int D, const std::vector<Ti> &TABLE, - trellis_metric_type_t METRIC_TYPE, + gr::digital::trellis_metric_type_t METRIC_TYPE, float scaling, const Ti *observations, To *data ); @@ -129,7 +129,7 @@ void pccc_decoder_combined( const interleaver &INTERLEAVER, int blocklength, int iterations, float (*p2mymin)(float,float), int D, const std::vector<Ti> &TABLE, - trellis_metric_type_t METRIC_TYPE, + gr::digital::trellis_metric_type_t METRIC_TYPE, float scaling, const Ti *observations, To *data ); diff --git a/gr-trellis/src/lib/trellis.i b/gr-trellis/src/lib/trellis.i index 3a364802da..60bb831b19 100644 --- a/gr-trellis/src/lib/trellis.i +++ b/gr-trellis/src/lib/trellis.i @@ -20,21 +20,27 @@ * Boston, MA 02110-1301, USA. */ +#define DIGITAL_API + %include "gnuradio.i" // the common stuff //load generated python docstrings %include "trellis_swig_doc.i" %{ +#include "digital/constellation.h" +#include "digital/metric_type.h" #include "fsm.h" #include "interleaver.h" #include "trellis_permutation.h" #include "trellis_siso_f.h" #include "trellis_siso_combined_f.h" #include "trellis_constellation_metrics_cf.h" -#include "digital/constellation.h" %} +%include "digital/constellation.h" +%include "digital/metric_type.h" +%include "constellation.i" // ---------------------------------------------------------------- @@ -49,10 +55,3 @@ %include "trellis_constellation_metrics_cf.i" %include "trellis_generated.i" - -%import "digital/metric_type.h" -%import "constellation.i" - - //%pythoncode %{ - // from gnuradio.gr import TRELLIS_EUCLIDEAN, TRELLIS_HARD_SYMBOL, TRELLIS_HARD_BIT - // %} diff --git a/gr-trellis/src/lib/trellis_constellation_metrics_cf.cc b/gr-trellis/src/lib/trellis_constellation_metrics_cf.cc index 8658b7e9e1..d7a7aba1d4 100644 --- a/gr-trellis/src/lib/trellis_constellation_metrics_cf.cc +++ b/gr-trellis/src/lib/trellis_constellation_metrics_cf.cc @@ -30,17 +30,17 @@ #include <stdexcept> #include <iostream> - - trellis_constellation_metrics_cf_sptr -trellis_make_constellation_metrics_cf (gr::digital::constellation_sptr constellation, trellis_metric_type_t TYPE) +trellis_make_constellation_metrics_cf(constellation_sptr constellation, + trellis_metric_type_t TYPE) { - return gnuradio::get_initial_sptr (new trellis_constellation_metrics_cf (constellation, TYPE)); + return gnuradio::get_initial_sptr + (new trellis_constellation_metrics_cf(constellation, TYPE)); } - -trellis_constellation_metrics_cf::trellis_constellation_metrics_cf (gr::digital::constellation_sptr constellation, trellis_metric_type_t TYPE) +trellis_constellation_metrics_cf::trellis_constellation_metrics_cf(constellation_sptr constellation, + trellis_metric_type_t TYPE) : gr_block ("constellation_metrics_cf", gr_make_io_signature (1, -1, sizeof (gr_complex)), gr_make_io_signature (1, -1, sizeof (float))), @@ -54,7 +54,7 @@ trellis_constellation_metrics_cf::trellis_constellation_metrics_cf (gr::digital: } void -trellis_constellation_metrics_cf::forecast (int noutput_items, gr_vector_int &ninput_items_required) +trellis_constellation_metrics_cf::forecast(int noutput_items, gr_vector_int &ninput_items_required) { assert (noutput_items % d_O == 0); unsigned int input_required = d_D * noutput_items / d_O; @@ -66,10 +66,10 @@ trellis_constellation_metrics_cf::forecast (int noutput_items, gr_vector_int &ni int -trellis_constellation_metrics_cf::general_work (int noutput_items, - gr_vector_int &ninput_items, - gr_vector_const_void_star &input_items, - gr_vector_void_star &output_items) +trellis_constellation_metrics_cf::general_work(int noutput_items, + gr_vector_int &ninput_items, + gr_vector_const_void_star &input_items, + gr_vector_void_star &output_items) { assert (noutput_items % d_O == 0); diff --git a/gr-trellis/src/lib/trellis_constellation_metrics_cf.h b/gr-trellis/src/lib/trellis_constellation_metrics_cf.h index 6896489e6e..91ab30986b 100644 --- a/gr-trellis/src/lib/trellis_constellation_metrics_cf.h +++ b/gr-trellis/src/lib/trellis_constellation_metrics_cf.h @@ -28,10 +28,14 @@ #include <digital/constellation.h> #include <digital/metric_type.h> +using namespace gr::digital; + class trellis_constellation_metrics_cf; typedef boost::shared_ptr<trellis_constellation_metrics_cf> trellis_constellation_metrics_cf_sptr; -TRELLIS_API trellis_constellation_metrics_cf_sptr trellis_make_constellation_metrics_cf (gr::digital::constellation_sptr constellation, trellis_metric_type_t TYPE); +TRELLIS_API trellis_constellation_metrics_cf_sptr + trellis_make_constellation_metrics_cf(constellation_sptr constellation, + trellis_metric_type_t TYPE); /*! * \brief Evaluate metrics for use by the Viterbi algorithm. @@ -40,21 +44,24 @@ TRELLIS_API trellis_constellation_metrics_cf_sptr trellis_make_constellation_met class TRELLIS_API trellis_constellation_metrics_cf : public gr_block { public: - 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); + 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); protected: - trellis_constellation_metrics_cf (gr::digital::constellation_sptr constellation, trellis_metric_type_t TYPE); + trellis_constellation_metrics_cf(constellation_sptr constellation, + trellis_metric_type_t TYPE); private: - gr::digital::constellation_sptr d_constellation; + constellation_sptr d_constellation; trellis_metric_type_t d_TYPE; unsigned int d_O; unsigned int d_D; - friend TRELLIS_API trellis_constellation_metrics_cf_sptr trellis_make_constellation_metrics_cf (gr::digital::constellation_sptr constellation, trellis_metric_type_t TYPE); + friend TRELLIS_API trellis_constellation_metrics_cf_sptr + trellis_make_constellation_metrics_cf(constellation_sptr constellation, + trellis_metric_type_t TYPE); }; diff --git a/gr-trellis/src/lib/trellis_constellation_metrics_cf.i b/gr-trellis/src/lib/trellis_constellation_metrics_cf.i index 861c55566a..13b11c0b06 100644 --- a/gr-trellis/src/lib/trellis_constellation_metrics_cf.i +++ b/gr-trellis/src/lib/trellis_constellation_metrics_cf.i @@ -20,14 +20,12 @@ * Boston, MA 02110-1301, USA. */ -// WARNING: this file is machine generated. Edits will be over written - GR_SWIG_BLOCK_MAGIC(trellis,constellation_metrics_cf); -trellis_constellation_metrics_cf_sptr trellis_make_constellation_metrics_cf (gr::digital::constellation_sptr constellation, trellis_metric_type_t TYPE); +trellis_constellation_metrics_cf_sptr +trellis_make_constellation_metrics_cf(gr::digital::constellation_sptr constellation, + gr::digital::trellis_metric_type_t TYPE); class trellis_constellation_metrics_cf : public gr_block { -private: - trellis_constellation_metrics_cf (gr::digital::constellation_sptr constellation, trellis_metric_type_t TYPE); }; diff --git a/gr-trellis/src/lib/trellis_metrics_X.cc.t b/gr-trellis/src/lib/trellis_metrics_X.cc.t index 77eb8c81b5..756ac92a31 100644 --- a/gr-trellis/src/lib/trellis_metrics_X.cc.t +++ b/gr-trellis/src/lib/trellis_metrics_X.cc.t @@ -34,34 +34,36 @@ @SPTR_NAME@ -trellis_make_@BASE_NAME@ (int O, int D, const std::vector<@I_TYPE@> &TABLE, trellis_metric_type_t TYPE) +trellis_make_@BASE_NAME@(int O, int D, const std::vector<@I_TYPE@> &TABLE, + gr::digital::trellis_metric_type_t TYPE) { - return gnuradio::get_initial_sptr (new @NAME@ (O,D,TABLE,TYPE)); + return gnuradio::get_initial_sptr(new @NAME@(O,D,TABLE,TYPE)); } -@NAME@::@NAME@ (int O, int D, const std::vector<@I_TYPE@> &TABLE, trellis_metric_type_t TYPE) - : gr_block ("@BASE_NAME@", - gr_make_io_signature (1, -1, sizeof (@I_TYPE@)), - gr_make_io_signature (1, -1, sizeof (float))), - d_O (O), - d_D (D), - d_TYPE (TYPE), - d_TABLE (TABLE) +@NAME@::@NAME@(int O, int D, const std::vector<@I_TYPE@> &TABLE, + gr::digital::trellis_metric_type_t TYPE) + : gr_block("@BASE_NAME@", + gr_make_io_signature(1, -1, sizeof (@I_TYPE@)), + gr_make_io_signature(1, -1, sizeof (float))), + d_O (O), + d_D (D), + d_TYPE (TYPE), + d_TABLE (TABLE) { set_relative_rate (1.0 * d_O / ((double) d_D)); set_output_multiple ((int)d_O); } -void @NAME@::set_TABLE (const std::vector<@I_TYPE@> &table) +void @NAME@::set_TABLE(const std::vector<@I_TYPE@> &table) { d_TABLE = table; } void -@NAME@::forecast (int noutput_items, gr_vector_int &ninput_items_required) +@NAME@::forecast(int noutput_items, gr_vector_int &ninput_items_required) { assert (noutput_items % d_O == 0); int input_required = d_D * noutput_items / d_O; @@ -73,25 +75,24 @@ void int -@NAME@::general_work (int noutput_items, - gr_vector_int &ninput_items, - gr_vector_const_void_star &input_items, - gr_vector_void_star &output_items) +@NAME@::general_work(int noutput_items, + gr_vector_int &ninput_items, + gr_vector_const_void_star &input_items, + gr_vector_void_star &output_items) { - assert (noutput_items % d_O == 0); assert (input_items.size() == output_items.size()); int nstreams = input_items.size(); -for (int m=0;m<nstreams;m++) { - const @I_TYPE@ *in = (@I_TYPE@ *) input_items[m]; - float *out = (float *) output_items[m]; + for (int m=0;m<nstreams;m++) { + const @I_TYPE@ *in = (@I_TYPE@ *) input_items[m]; + float *out = (float *) output_items[m]; - for (int i = 0; i < noutput_items / d_O ; i++){ - calc_metric(d_O, d_D, d_TABLE,&(in[i*d_D]),&(out[i*d_O]), d_TYPE); + for(int i = 0; i < noutput_items / d_O ; i++) { + calc_metric(d_O, d_D, d_TABLE,&(in[i*d_D]),&(out[i*d_O]), d_TYPE); + } } -} - consume_each (d_D * noutput_items / d_O); + consume_each(d_D * noutput_items / d_O); return noutput_items; } diff --git a/gr-trellis/src/lib/trellis_metrics_X.h.t b/gr-trellis/src/lib/trellis_metrics_X.h.t index ab406c51ea..9a671bc121 100644 --- a/gr-trellis/src/lib/trellis_metrics_X.h.t +++ b/gr-trellis/src/lib/trellis_metrics_X.h.t @@ -32,7 +32,8 @@ class @NAME@; typedef boost::shared_ptr<@NAME@> @SPTR_NAME@; -TRELLIS_API @SPTR_NAME@ trellis_make_@BASE_NAME@ (int O, int D, const std::vector<@I_TYPE@> &TABLE, trellis_metric_type_t TYPE); +TRELLIS_API @SPTR_NAME@ trellis_make_@BASE_NAME@(int O, int D, const std::vector<@I_TYPE@> &TABLE, + gr::digital::trellis_metric_type_t TYPE); /*! * \brief Evaluate metrics for use by the Viterbi algorithm. @@ -42,24 +43,27 @@ class TRELLIS_API @NAME@ : public gr_block { int d_O; int d_D; - trellis_metric_type_t d_TYPE; + gr::digital::trellis_metric_type_t d_TYPE; std::vector<@I_TYPE@> d_TABLE; - friend TRELLIS_API @SPTR_NAME@ trellis_make_@BASE_NAME@ (int O, int D, const std::vector<@I_TYPE@> &TABLE, trellis_metric_type_t TYPE); - @NAME@ (int O, int D, const std::vector<@I_TYPE@> &TABLE, trellis_metric_type_t TYPE); + friend TRELLIS_API @SPTR_NAME@ trellis_make_@BASE_NAME@(int O, int D, + const std::vector<@I_TYPE@> &TABLE, + gr::digital::trellis_metric_type_t TYPE); + @NAME@(int O, int D, const std::vector<@I_TYPE@> &TABLE, + gr::digital::trellis_metric_type_t TYPE); public: - int O () const { return d_O; } - int D () const { return d_D; } - trellis_metric_type_t TYPE () const { return d_TYPE; } - std::vector<@I_TYPE@> TABLE () const { return d_TABLE; } - void set_TABLE (const std::vector<@I_TYPE@> &table); - 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 O() const { return d_O; } + int D() const { return d_D; } + gr::digital::trellis_metric_type_t TYPE() const { return d_TYPE; } + std::vector<@I_TYPE@> TABLE() const { return d_TABLE; } + void set_TABLE(const std::vector<@I_TYPE@> &table); + 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); }; diff --git a/gr-trellis/src/lib/trellis_metrics_X.i.t b/gr-trellis/src/lib/trellis_metrics_X.i.t index 50aa7a7673..b53594f3a6 100644 --- a/gr-trellis/src/lib/trellis_metrics_X.i.t +++ b/gr-trellis/src/lib/trellis_metrics_X.i.t @@ -24,17 +24,19 @@ GR_SWIG_BLOCK_MAGIC(trellis,@BASE_NAME@); -@SPTR_NAME@ trellis_make_@BASE_NAME@ (int O, int D, const std::vector<@I_TYPE@> &TABLE, trellis_metric_type_t TYPE); +@SPTR_NAME@ trellis_make_@BASE_NAME@ (int O, int D, const std::vector<@I_TYPE@> &TABLE, + gr::digital::trellis_metric_type_t TYPE); class @NAME@ : public gr_block { private: - @NAME@ (int O, int D, const std::vector<@I_TYPE@> &TABLE, trellis_metric_type_t TYPE); + @NAME@ (int O, int D, const std::vector<@I_TYPE@> &TABLE, + gr::digital::trellis_metric_type_t TYPE); public: int O () const { return d_O; } int D () const { return d_D; } - trellis_metric_type_t TYPE () const { return d_TYPE; } + gr::digital::trellis_metric_type_t TYPE () const { return d_TYPE; } void set_TABLE (const std::vector<@I_TYPE@> &table); std::vector<@I_TYPE@> TABLE () const { return d_TABLE; } }; diff --git a/gr-trellis/src/lib/trellis_pccc_decoder_combined_XX.cc.t b/gr-trellis/src/lib/trellis_pccc_decoder_combined_XX.cc.t index 03e21de1f5..e8f9f7296e 100644 --- a/gr-trellis/src/lib/trellis_pccc_decoder_combined_XX.cc.t +++ b/gr-trellis/src/lib/trellis_pccc_decoder_combined_XX.cc.t @@ -45,7 +45,7 @@ trellis_make_@BASE_NAME@ ( trellis_siso_type_t SISO_TYPE, int D, const std::vector<@I_TYPE@> &TABLE, - trellis_metric_type_t METRIC_TYPE, + gr::digital::trellis_metric_type_t METRIC_TYPE, float scaling ) { @@ -71,7 +71,7 @@ trellis_make_@BASE_NAME@ ( trellis_siso_type_t SISO_TYPE, int D, const std::vector<@I_TYPE@> &TABLE, - trellis_metric_type_t METRIC_TYPE, + gr::digital::trellis_metric_type_t METRIC_TYPE, float scaling ) : gr_block ("@BASE_NAME@", diff --git a/gr-trellis/src/lib/trellis_pccc_decoder_combined_XX.h.t b/gr-trellis/src/lib/trellis_pccc_decoder_combined_XX.h.t index 6e45ea10ac..81d9abbc1f 100644 --- a/gr-trellis/src/lib/trellis_pccc_decoder_combined_XX.h.t +++ b/gr-trellis/src/lib/trellis_pccc_decoder_combined_XX.h.t @@ -45,7 +45,7 @@ TRELLIS_API @SPTR_NAME@ trellis_make_@BASE_NAME@ ( trellis_siso_type_t SISO_TYPE, // perform "min-sum" or "sum-product" combining int D, const std::vector<@I_TYPE@> &TABLE, - trellis_metric_type_t METRIC_TYPE, + gr::digital::trellis_metric_type_t METRIC_TYPE, float scaling ); @@ -67,7 +67,7 @@ class TRELLIS_API @NAME@ : public gr_block trellis_siso_type_t d_SISO_TYPE; int d_D; std::vector<@I_TYPE@> d_TABLE; - trellis_metric_type_t d_METRIC_TYPE; + gr::digital::trellis_metric_type_t d_METRIC_TYPE; float d_scaling; std::vector<float> d_buffer; @@ -80,7 +80,7 @@ class TRELLIS_API @NAME@ : public gr_block trellis_siso_type_t SISO_TYPE, int D, const std::vector<@I_TYPE@> &TABLE, - trellis_metric_type_t METRIC_TYPE, + gr::digital::trellis_metric_type_t METRIC_TYPE, float scaling ); @@ -93,7 +93,7 @@ class TRELLIS_API @NAME@ : public gr_block trellis_siso_type_t SISO_TYPE, int D, const std::vector<@I_TYPE@> &TABLE, - trellis_metric_type_t METRIC_TYPE, + gr::digital::trellis_metric_type_t METRIC_TYPE, float scaling ); @@ -109,7 +109,7 @@ public: int repetitions () const { return d_repetitions; } int D () const { return d_D; } std::vector<@I_TYPE@> TABLE () const { return d_TABLE; } - trellis_metric_type_t METRIC_TYPE () const { return d_METRIC_TYPE; } + gr::digital::trellis_metric_type_t METRIC_TYPE () const { return d_METRIC_TYPE; } trellis_siso_type_t SISO_TYPE () const { return d_SISO_TYPE; } float scaling () const { return d_scaling; } void set_scaling (float scaling); diff --git a/gr-trellis/src/lib/trellis_pccc_decoder_combined_XX.i.t b/gr-trellis/src/lib/trellis_pccc_decoder_combined_XX.i.t index d841f67b45..8684ff650c 100644 --- a/gr-trellis/src/lib/trellis_pccc_decoder_combined_XX.i.t +++ b/gr-trellis/src/lib/trellis_pccc_decoder_combined_XX.i.t @@ -33,7 +33,7 @@ GR_SWIG_BLOCK_MAGIC(trellis,@BASE_NAME@); trellis_siso_type_t SISO_TYPE, int D, const std::vector<@I_TYPE@> &TABLE, - trellis_metric_type_t METRIC_TYPE, + gr::digital::trellis_metric_type_t METRIC_TYPE, float scaling ); @@ -50,7 +50,7 @@ private: trellis_siso_type_t SISO_TYPE, int D, const std::vector<@I_TYPE@> &TABLE, - trellis_metric_type_t METRIC_TYPE, + gr::digital::trellis_metric_type_t METRIC_TYPE, float scaling ); @@ -66,7 +66,7 @@ public: int repetitions () const { return d_repetitions; } int D () const { return d_D; } std::vector<@I_TYPE@> TABLE () const { return d_TABLE; } - trellis_metric_type_t METRIC_TYPE () const { return d_METRIC_TYPE; } + gr::digital::trellis_metric_type_t METRIC_TYPE () const { return d_METRIC_TYPE; } trellis_siso_type_t SISO_TYPE () const { return d_SISO_TYPE; } float scaling() const { return d_scaling; } void set_scaling (float scaling); diff --git a/gr-trellis/src/lib/trellis_sccc_decoder_combined_XX.cc.t b/gr-trellis/src/lib/trellis_sccc_decoder_combined_XX.cc.t index 4508ca5cba..0fcfc70a68 100644 --- a/gr-trellis/src/lib/trellis_sccc_decoder_combined_XX.cc.t +++ b/gr-trellis/src/lib/trellis_sccc_decoder_combined_XX.cc.t @@ -45,7 +45,7 @@ trellis_make_@BASE_NAME@ ( trellis_siso_type_t SISO_TYPE, int D, const std::vector<@I_TYPE@> &TABLE, - trellis_metric_type_t METRIC_TYPE, + gr::digital::trellis_metric_type_t METRIC_TYPE, float scaling ) { @@ -71,7 +71,7 @@ trellis_make_@BASE_NAME@ ( trellis_siso_type_t SISO_TYPE, int D, const std::vector<@I_TYPE@> &TABLE, - trellis_metric_type_t METRIC_TYPE, + gr::digital::trellis_metric_type_t METRIC_TYPE, float scaling ) : gr_block ("@BASE_NAME@", diff --git a/gr-trellis/src/lib/trellis_sccc_decoder_combined_XX.h.t b/gr-trellis/src/lib/trellis_sccc_decoder_combined_XX.h.t index 3fdc53c624..2cf03eaa55 100644 --- a/gr-trellis/src/lib/trellis_sccc_decoder_combined_XX.h.t +++ b/gr-trellis/src/lib/trellis_sccc_decoder_combined_XX.h.t @@ -45,7 +45,7 @@ TRELLIS_API @SPTR_NAME@ trellis_make_@BASE_NAME@ ( trellis_siso_type_t SISO_TYPE, // perform "min-sum" or "sum-product" combining int D, const std::vector<@I_TYPE@> &TABLE, - trellis_metric_type_t METRIC_TYPE, + gr::digital::trellis_metric_type_t METRIC_TYPE, float scaling ); @@ -67,7 +67,7 @@ class TRELLIS_API @NAME@ : public gr_block trellis_siso_type_t d_SISO_TYPE; int d_D; std::vector<@I_TYPE@> d_TABLE; - trellis_metric_type_t d_METRIC_TYPE; + gr::digital::trellis_metric_type_t d_METRIC_TYPE; float d_scaling; std::vector<float> d_buffer; @@ -80,7 +80,7 @@ class TRELLIS_API @NAME@ : public gr_block trellis_siso_type_t SISO_TYPE, int D, const std::vector<@I_TYPE@> &TABLE, - trellis_metric_type_t METRIC_TYPE, + gr::digital::trellis_metric_type_t METRIC_TYPE, float scaling ); @@ -93,7 +93,7 @@ class TRELLIS_API @NAME@ : public gr_block trellis_siso_type_t SISO_TYPE, int D, const std::vector<@I_TYPE@> &TABLE, - trellis_metric_type_t METRIC_TYPE, + gr::digital::trellis_metric_type_t METRIC_TYPE, float scaling ); @@ -109,7 +109,7 @@ public: int repetitions () const { return d_repetitions; } int D () const { return d_D; } std::vector<@I_TYPE@> TABLE () const { return d_TABLE; } - trellis_metric_type_t METRIC_TYPE () const { return d_METRIC_TYPE; } + gr::digital::trellis_metric_type_t METRIC_TYPE () const { return d_METRIC_TYPE; } trellis_siso_type_t SISO_TYPE () const { return d_SISO_TYPE; } float scaling () const { return d_scaling; } void set_scaling (float scaling); diff --git a/gr-trellis/src/lib/trellis_sccc_decoder_combined_XX.i.t b/gr-trellis/src/lib/trellis_sccc_decoder_combined_XX.i.t index 84f2eb07d9..872afcad09 100644 --- a/gr-trellis/src/lib/trellis_sccc_decoder_combined_XX.i.t +++ b/gr-trellis/src/lib/trellis_sccc_decoder_combined_XX.i.t @@ -33,7 +33,7 @@ GR_SWIG_BLOCK_MAGIC(trellis,@BASE_NAME@); trellis_siso_type_t SISO_TYPE, int D, const std::vector<@I_TYPE@> &TABLE, - trellis_metric_type_t METRIC_TYPE, + gr::digital::trellis_metric_type_t METRIC_TYPE, float scaling ); @@ -50,7 +50,7 @@ private: trellis_siso_type_t SISO_TYPE, int D, const std::vector<@I_TYPE@> &TABLE, - trellis_metric_type_t METRIC_TYPE, + gr::digital::trellis_metric_type_t METRIC_TYPE, float scaling ); @@ -66,7 +66,7 @@ public: int repetitions () const { return d_repetitions; } int D () const { return d_D; } std::vector<@I_TYPE@> TABLE () const { return d_TABLE; } - trellis_metric_type_t METRIC_TYPE () const { return d_METRIC_TYPE; } + gr::digital::trellis_metric_type_t METRIC_TYPE () const { return d_METRIC_TYPE; } trellis_siso_type_t SISO_TYPE () const { return d_SISO_TYPE; } float scaling() const { return d_scaling; } void set_scaling (float scaling); diff --git a/gr-trellis/src/lib/trellis_siso_combined_f.cc b/gr-trellis/src/lib/trellis_siso_combined_f.cc index d27fe44257..d956c47854 100644 --- a/gr-trellis/src/lib/trellis_siso_combined_f.cc +++ b/gr-trellis/src/lib/trellis_siso_combined_f.cc @@ -43,7 +43,7 @@ trellis_make_siso_combined_f ( trellis_siso_type_t SISO_TYPE, int D, const std::vector<float> &TABLE, - trellis_metric_type_t TYPE) + gr::digital::trellis_metric_type_t TYPE) { return gnuradio::get_initial_sptr(new trellis_siso_combined_f (FSM,K,S0,SK,POSTI,POSTO,SISO_TYPE,D,TABLE,TYPE)); } @@ -58,7 +58,7 @@ trellis_siso_combined_f::trellis_siso_combined_f ( trellis_siso_type_t SISO_TYPE, int D, const std::vector<float> &TABLE, - trellis_metric_type_t TYPE) + gr::digital::trellis_metric_type_t TYPE) : gr_block ("siso_combined_f", gr_make_io_signature (1, -1, sizeof (float)), gr_make_io_signature (1, -1, sizeof (float))), @@ -153,7 +153,7 @@ void siso_algorithm_combined(int I, int S, int O, float (*p2mymin)(float,float), int D, const std::vector<float> &TABLE, - trellis_metric_type_t TYPE, + gr::digital::trellis_metric_type_t TYPE, const float *priori, const float *observations, float *post//, //std::vector<float> &alpha, //std::vector<float> &beta diff --git a/gr-trellis/src/lib/trellis_siso_combined_f.h b/gr-trellis/src/lib/trellis_siso_combined_f.h index 4b28e8de4a..47fa20fb65 100644 --- a/gr-trellis/src/lib/trellis_siso_combined_f.h +++ b/gr-trellis/src/lib/trellis_siso_combined_f.h @@ -43,7 +43,7 @@ TRELLIS_API trellis_siso_combined_f_sptr trellis_make_siso_combined_f ( trellis_siso_type_t d_SISO_TYPE, // perform "min-sum" or "sum-product" combining int D, const std::vector<float> &TABLE, - trellis_metric_type_t TYPE + gr::digital::trellis_metric_type_t TYPE ); /*! @@ -60,7 +60,7 @@ class TRELLIS_API trellis_siso_combined_f : public gr_block trellis_siso_type_t d_SISO_TYPE; int d_D; std::vector<float> d_TABLE; - trellis_metric_type_t d_TYPE; + gr::digital::trellis_metric_type_t d_TYPE; //std::vector<float> d_alpha; //std::vector<float> d_beta; @@ -74,7 +74,7 @@ class TRELLIS_API trellis_siso_combined_f : public gr_block trellis_siso_type_t d_SISO_TYPE, int D, const std::vector<float> &TABLE, - trellis_metric_type_t TYPE); + gr::digital::trellis_metric_type_t TYPE); trellis_siso_combined_f ( @@ -87,7 +87,7 @@ class TRELLIS_API trellis_siso_combined_f : public gr_block trellis_siso_type_t d_SISO_TYPE, int D, const std::vector<float> &TABLE, - trellis_metric_type_t TYPE); + gr::digital::trellis_metric_type_t TYPE); public: @@ -100,7 +100,7 @@ public: trellis_siso_type_t SISO_TYPE () const { return d_SISO_TYPE; } int D () const { return d_D; } std::vector<float> TABLE () const { return d_TABLE; } - trellis_metric_type_t TYPE () const { return d_TYPE; } + gr::digital::trellis_metric_type_t TYPE () const { return d_TYPE; } void forecast (int noutput_items, gr_vector_int &ninput_items_required); int general_work (int noutput_items, diff --git a/gr-trellis/src/lib/trellis_siso_combined_f.i b/gr-trellis/src/lib/trellis_siso_combined_f.i index 781280d896..228cdd1218 100644 --- a/gr-trellis/src/lib/trellis_siso_combined_f.i +++ b/gr-trellis/src/lib/trellis_siso_combined_f.i @@ -32,7 +32,7 @@ trellis_siso_combined_f_sptr trellis_make_siso_combined_f ( trellis_siso_type_t SISO_TYPE, int D, const std::vector<float> &TABLE, - trellis_metric_type_t TYPE); + gr::digital::trellis_metric_type_t TYPE); class trellis_siso_combined_f : public gr_block @@ -48,7 +48,7 @@ private: trellis_siso_type_t SISO_TYPE, int D, const std::vector<float> &TABLE, - trellis_metric_type_t TYPE); + gr::digital::trellis_metric_type_t TYPE); public: fsm FSM () const { return d_FSM; } @@ -60,5 +60,5 @@ public: trellis_siso_type_t SISO_TYPE () const { return d_SISO_TYPE; } int D () const { return d_D; } std::vector<float> TABLE () const { return d_TABLE; } - trellis_metric_type_t TYPE () const { return d_TYPE; } + gr::digital::trellis_metric_type_t TYPE () const { return d_TYPE; } }; diff --git a/gr-trellis/src/lib/trellis_viterbi_combined_XX.cc.t b/gr-trellis/src/lib/trellis_viterbi_combined_XX.cc.t index 74611ab8fb..b337b6f16c 100644 --- a/gr-trellis/src/lib/trellis_viterbi_combined_XX.cc.t +++ b/gr-trellis/src/lib/trellis_viterbi_combined_XX.cc.t @@ -41,7 +41,7 @@ trellis_make_@BASE_NAME@ ( int SK, int D, const std::vector<@I_TYPE@> &TABLE, - trellis_metric_type_t TYPE) + gr::digital::trellis_metric_type_t TYPE) { return gnuradio::get_initial_sptr (new @NAME@ (FSM,K,S0,SK,D,TABLE,TYPE)); } @@ -53,10 +53,10 @@ trellis_make_@BASE_NAME@ ( int SK, int D, const std::vector<@I_TYPE@> &TABLE, - trellis_metric_type_t TYPE) + gr::digital::trellis_metric_type_t TYPE) : gr_block ("@BASE_NAME@", - gr_make_io_signature (1, -1, sizeof (@I_TYPE@)), - gr_make_io_signature (1, -1, sizeof (@O_TYPE@))), + gr_make_io_signature (1, -1, sizeof (@I_TYPE@)), + gr_make_io_signature (1, -1, sizeof (@O_TYPE@))), d_FSM (FSM), d_K (K), d_S0 (S0), @@ -100,7 +100,7 @@ void viterbi_algorithm_combined(int I, int S, int O, int S0,int SK, int D, const std::vector<@I_TYPE@> &TABLE, - trellis_metric_type_t TYPE, + gr::digital::trellis_metric_type_t TYPE, const @I_TYPE@ *in, @O_TYPE@ *out)//, //std::vector<int> &trace) { diff --git a/gr-trellis/src/lib/trellis_viterbi_combined_XX.h.t b/gr-trellis/src/lib/trellis_viterbi_combined_XX.h.t index c7e468e73b..f0a64c3317 100644 --- a/gr-trellis/src/lib/trellis_viterbi_combined_XX.h.t +++ b/gr-trellis/src/lib/trellis_viterbi_combined_XX.h.t @@ -41,7 +41,7 @@ TRELLIS_API @SPTR_NAME@ trellis_make_@BASE_NAME@ ( int SK, int D, const std::vector<@I_TYPE@> &TABLE, - trellis_metric_type_t TYPE); + gr::digital::trellis_metric_type_t TYPE); /*! @@ -55,7 +55,7 @@ class TRELLIS_API @NAME@ : public gr_block int d_SK; int d_D; std::vector<@I_TYPE@> d_TABLE; - trellis_metric_type_t d_TYPE; + gr::digital::trellis_metric_type_t d_TYPE; //std::vector<int> d_trace; friend TRELLIS_API @SPTR_NAME@ trellis_make_@BASE_NAME@ ( @@ -65,7 +65,7 @@ class TRELLIS_API @NAME@ : public gr_block int SK, int D, const std::vector<@I_TYPE@> &TABLE, - trellis_metric_type_t TYPE); + gr::digital::trellis_metric_type_t TYPE); @NAME@ ( @@ -75,7 +75,7 @@ class TRELLIS_API @NAME@ : public gr_block int SK, int D, const std::vector<@I_TYPE@> &TABLE, - trellis_metric_type_t TYPE); + gr::digital::trellis_metric_type_t TYPE); public: @@ -85,7 +85,7 @@ public: int SK () const { return d_SK; } int D () const { return d_D; } std::vector<@I_TYPE@> TABLE () const { return d_TABLE; } - trellis_metric_type_t TYPE () const { return d_TYPE; } + gr::digital::trellis_metric_type_t TYPE () const { return d_TYPE; } //std::vector<int> trace () const { return d_trace; } void set_TABLE (const std::vector<@I_TYPE@> &table); void forecast (int noutput_items, diff --git a/gr-trellis/src/lib/trellis_viterbi_combined_XX.i.t b/gr-trellis/src/lib/trellis_viterbi_combined_XX.i.t index 633ded7707..2687a2056d 100644 --- a/gr-trellis/src/lib/trellis_viterbi_combined_XX.i.t +++ b/gr-trellis/src/lib/trellis_viterbi_combined_XX.i.t @@ -31,7 +31,7 @@ GR_SWIG_BLOCK_MAGIC(trellis,@BASE_NAME@); int SK, int D, const std::vector<@I_TYPE@> &TABLE, - trellis_metric_type_t TYPE); + gr::digital::trellis_metric_type_t TYPE); class @NAME@ : public gr_block @@ -44,7 +44,7 @@ private: int SK, int D, const std::vector<@I_TYPE@> &TABLE, - trellis_metric_type_t TYPE); + gr::digital::trellis_metric_type_t TYPE); public: fsm FSM () const { return d_FSM; } @@ -53,7 +53,7 @@ public: int SK () const { return d_SK; } int D () const { return d_D; } std::vector<@I_TYPE@> TABLE () const { return d_TABLE; } - trellis_metric_type_t TYPE () const { return d_TYPE; } + gr::digital::trellis_metric_type_t TYPE () const { return d_TYPE; } //std::vector<short> trace () const { return d_trace; } void set_TABLE (const std::vector<@I_TYPE@> &table); }; |