Several enhancements to gr-trellis and gnuradio-examples/python/channel-coding:
[debian/gnuradio] / gr-trellis / src / lib / fsm.h
index b5a8e0d5bc1ffe067ef3758596209c7c2cdd7bc7..01703e35fce7da35991153e2fb23c9c7e6da95cb 100644 (file)
@@ -37,12 +37,18 @@ private:
   std::vector<int> d_OS;\r
   std::vector<int> d_PS;\r
   std::vector<int> d_PI;\r
+  std::vector<int> d_TMi;\r
+  std::vector<int> d_TMl;\r
+  void generate_PS_PI ();\r
+  void generate_TM ();\r
+  bool find_es(int es);\r
 public:\r
   fsm();\r
   fsm(const fsm &FSM);\r
-  fsm(const int I, const int S, const int O, const std::vector<int> &NS, const std::vector<int> &OS);\r
+  fsm(int I, int S, int O, const std::vector<int> &NS, const std::vector<int> &OS);\r
   fsm(const char *name);\r
-  fsm(const int mod_size, const int ch_length);\r
+  fsm(int k, int n, const std::vector<int> &G);\r
+  fsm(int mod_size, int ch_length);\r
   int I () const { return d_I; }\r
   int S () const { return d_S; }\r
   int O () const { return d_O; }\r
@@ -50,6 +56,8 @@ public:
   const std::vector<int> & OS () const { return d_OS; }\r
   const std::vector<int> & PS () const { return d_PS; }\r
   const std::vector<int> & PI () const { return d_PI; }\r
+  const std::vector<int> & TMi () const { return d_TMi; }\r
+  const std::vector<int> & TMl () const { return d_TMl; }\r
 };\r
 \r
 #endif\r