Imported Upstream version 3.2.2
[debian/gnuradio] / gr-trellis / src / lib / fsm.i
index 004fef98e91a2bb4d5114dc0391a0d18f3c02bf6..1e9c7ad8f52e4d8c86671eff88a748a095ab2db3 100644 (file)
@@ -27,8 +27,8 @@ private:
   int d_O;
   std::vector<int> d_NS;
   std::vector<int> d_OS;
-  std::vector<int> d_PS;
-  std::vector<int> d_PI;
+  std::vector< std::vector<int> > d_PS;
+  std::vector< std::vector<int> > d_PI;
   std::vector<int> d_TMi;
   std::vector<int> d_TMl;
   void generate_PS_PI ();
@@ -40,14 +40,20 @@ public:
   fsm(const char *name);
   fsm(int k, int n, const std::vector<int> &G);
   fsm(int mod_size, int ch_length);
+  fsm(int P, int M, int L);
+  fsm(const fsm &FSM1, const fsm &FSM2);
+  fsm(const fsm &FSM, int n);
   int I () const { return d_I; }
   int S () const { return d_S; }
   int O () const { return d_O; }
   const std::vector<int> & NS () const { return d_NS; }
   const std::vector<int> & OS () const { return d_OS; }
-  const std::vector<int> & PS () const { return d_PS; }
-  const std::vector<int> & PI () const { return d_PI; }
+  // disable these accessors until we find out how to swig them
+  //const std::vector< std::vector<int> > & PS () const { return d_PS; }
+  //const std::vector< std::vector<int> > & PI () const { return d_PI; }
   const std::vector<int> & TMi () const { return d_TMi; }
   const std::vector<int> & TMl () const { return d_TMl; }
+  void fsm::write_trellis_svg(std::string filename ,int number_stages);
+  void fsm::write_fsm_txt(std::string filename);
 };