<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/> <meta http-equiv="X-UA-Compatible" content="IE=9"/> <meta name="generator" content="Doxygen 1.8.3"/> <title>GNU Radio 3.6.4.1 C++ API: fsm Class Reference</title> <link href="tabs.css" rel="stylesheet" type="text/css"/> <script type="text/javascript" src="jquery.js"></script> <script type="text/javascript" src="dynsections.js"></script> <link href="navtree.css" rel="stylesheet" type="text/css"/> <script type="text/javascript" src="resize.js"></script> <script type="text/javascript" src="navtree.js"></script> <script type="text/javascript"> $(document).ready(initResizable); $(window).load(resizeHeight); </script> <link href="doxygen.css" rel="stylesheet" type="text/css" /> </head> <body> <div id="top"><!-- do not remove this div, it is closed by doxygen! --> <div id="titlearea"> <table cellspacing="0" cellpadding="0"> <tbody> <tr style="height: 56px;"> <td style="padding-left: 0.5em;"> <div id="projectname">GNU Radio 3.6.4.1 C++ API </div> </td> </tr> </tbody> </table> </div> <!-- end header part --> <!-- Generated by Doxygen 1.8.3 --> </div><!-- top --> <div id="side-nav" class="ui-resizable side-nav-resizable"> <div id="nav-tree"> <div id="nav-tree-contents"> <div id="nav-sync" class="sync"></div> </div> </div> <div id="splitbar" style="-moz-user-select:none;" class="ui-resizable-handle"> </div> </div> <script type="text/javascript"> $(document).ready(function(){initNavTree('classfsm.html','');}); </script> <div id="doc-content"> <div class="header"> <div class="summary"> <a href="#pub-methods">Public Member Functions</a> | <a href="classfsm-members.html">List of all members</a> </div> <div class="headertitle"> <div class="title">fsm Class Reference</div> </div> </div><!--header--> <div class="contents"> <p>Finite State Machine Specification class. <a href="classfsm.html#details">More...</a></p> <p><code>#include <<a class="el" href="fsm_8h_source.html">fsm.h</a>></code></p> <table class="memberdecls"> <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a> Public Member Functions</h2></td></tr> <tr class="memitem:a186a9a7368d04e7d98e6976c870baca1"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classfsm.html#a186a9a7368d04e7d98e6976c870baca1">fsm</a> ()</td></tr> <tr class="memdesc:a186a9a7368d04e7d98e6976c870baca1"><td class="mdescLeft"> </td><td class="mdescRight">Constructor to create an uninitialized FSMS. <a href="#a186a9a7368d04e7d98e6976c870baca1"></a><br/></td></tr> <tr class="separator:a186a9a7368d04e7d98e6976c870baca1"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:af908445fb560ef461835f1c3a18016ea"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classfsm.html#af908445fb560ef461835f1c3a18016ea">fsm</a> (const <a class="el" href="classfsm.html">fsm</a> &FSM)</td></tr> <tr class="memdesc:af908445fb560ef461835f1c3a18016ea"><td class="mdescLeft"> </td><td class="mdescRight">Constructor to copy an FSMS. <a href="#af908445fb560ef461835f1c3a18016ea"></a><br/></td></tr> <tr class="separator:af908445fb560ef461835f1c3a18016ea"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a2d6d52f3b3380b5b594d0635cbf9fdd9"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classfsm.html#a2d6d52f3b3380b5b594d0635cbf9fdd9">fsm</a> (int <a class="el" href="classfsm.html#abefd9fd219d4755c4bb2e8b50649fa44">I</a>, int <a class="el" href="classfsm.html#a8936ef142a30c4a508371ab9ffbc2b96">S</a>, int <a class="el" href="classfsm.html#aae6f3dbbcdf85f5f8d43ce00bcfb9eb0">O</a>, const std::vector< int > &<a class="el" href="classfsm.html#ac26a317a2b73bb885a5fc1812ac5159c">NS</a>, const std::vector< int > &<a class="el" href="classfsm.html#a339554ffc3f74952e2cac49d5414fff1">OS</a>)</td></tr> <tr class="memdesc:a2d6d52f3b3380b5b594d0635cbf9fdd9"><td class="mdescLeft"> </td><td class="mdescRight">Constructor to to create an FSMS. <a href="#a2d6d52f3b3380b5b594d0635cbf9fdd9"></a><br/></td></tr> <tr class="separator:a2d6d52f3b3380b5b594d0635cbf9fdd9"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:afd89d3a7abe74449c78e444e21ba65fe"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classfsm.html#afd89d3a7abe74449c78e444e21ba65fe">fsm</a> (const char *<a class="el" href="volk_8tmpl_8h.html#ace3ce91bc48f67ffceaeed6831ee2c57">name</a>)</td></tr> <tr class="memdesc:afd89d3a7abe74449c78e444e21ba65fe"><td class="mdescLeft"> </td><td class="mdescRight">Constructor to create an FSMS from file contents. <a href="#afd89d3a7abe74449c78e444e21ba65fe"></a><br/></td></tr> <tr class="separator:afd89d3a7abe74449c78e444e21ba65fe"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a98222d2d02e9d652ab433fda4df7dc66"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classfsm.html#a98222d2d02e9d652ab433fda4df7dc66">fsm</a> (int k, int n, const std::vector< int > &G)</td></tr> <tr class="memdesc:a98222d2d02e9d652ab433fda4df7dc66"><td class="mdescLeft"> </td><td class="mdescRight">Creates an FSMS from the generator matrix of a (n, k) binary convolutional code. <a href="#a98222d2d02e9d652ab433fda4df7dc66"></a><br/></td></tr> <tr class="separator:a98222d2d02e9d652ab433fda4df7dc66"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ac0a4045b2a911557d593f14a66c44367"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classfsm.html#ac0a4045b2a911557d593f14a66c44367">fsm</a> (int mod_size, int ch_length)</td></tr> <tr class="memdesc:ac0a4045b2a911557d593f14a66c44367"><td class="mdescLeft"> </td><td class="mdescRight">Creates an FSMS describing ISI. <a href="#ac0a4045b2a911557d593f14a66c44367"></a><br/></td></tr> <tr class="separator:ac0a4045b2a911557d593f14a66c44367"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a81f2ebaafddf25b4c1aa418bff459e21"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classfsm.html#a81f2ebaafddf25b4c1aa418bff459e21">fsm</a> (int <a class="el" href="private_8h.html#ad5c6fd3bbe58eed13a3feae013b81f87">P</a>, int <a class="el" href="defines_8h.html#a52037c938e3c1b126c6277da5ca689d0">M</a>, int L)</td></tr> <tr class="memdesc:a81f2ebaafddf25b4c1aa418bff459e21"><td class="mdescLeft"> </td><td class="mdescRight">Creates an FSMS describing the trellis for a CPM. <a href="#a81f2ebaafddf25b4c1aa418bff459e21"></a><br/></td></tr> <tr class="separator:a81f2ebaafddf25b4c1aa418bff459e21"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ac6783c0f811e842c5368e69ec79bc6be"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classfsm.html#ac6783c0f811e842c5368e69ec79bc6be">fsm</a> (const <a class="el" href="classfsm.html">fsm</a> &FSM1, const <a class="el" href="classfsm.html">fsm</a> &FSM2)</td></tr> <tr class="memdesc:ac6783c0f811e842c5368e69ec79bc6be"><td class="mdescLeft"> </td><td class="mdescRight">Creates an FSMS describing the joint trellis of two FSMs. <a href="#ac6783c0f811e842c5368e69ec79bc6be"></a><br/></td></tr> <tr class="separator:ac6783c0f811e842c5368e69ec79bc6be"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a1782872dc0fa453ec798423263fdc3fb"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classfsm.html#a1782872dc0fa453ec798423263fdc3fb">fsm</a> (const <a class="el" href="classfsm.html">fsm</a> &FSM, int n)</td></tr> <tr class="memdesc:a1782872dc0fa453ec798423263fdc3fb"><td class="mdescLeft"> </td><td class="mdescRight">Creates an FSMS representing n stages through the originial FSM (AKA radix-n FSM). <a href="#a1782872dc0fa453ec798423263fdc3fb"></a><br/></td></tr> <tr class="separator:a1782872dc0fa453ec798423263fdc3fb"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:abefd9fd219d4755c4bb2e8b50649fa44"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="classfsm.html#abefd9fd219d4755c4bb2e8b50649fa44">I</a> () const </td></tr> <tr class="separator:abefd9fd219d4755c4bb2e8b50649fa44"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a8936ef142a30c4a508371ab9ffbc2b96"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="classfsm.html#a8936ef142a30c4a508371ab9ffbc2b96">S</a> () const </td></tr> <tr class="separator:a8936ef142a30c4a508371ab9ffbc2b96"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:aae6f3dbbcdf85f5f8d43ce00bcfb9eb0"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="classfsm.html#aae6f3dbbcdf85f5f8d43ce00bcfb9eb0">O</a> () const </td></tr> <tr class="separator:aae6f3dbbcdf85f5f8d43ce00bcfb9eb0"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ac26a317a2b73bb885a5fc1812ac5159c"><td class="memItemLeft" align="right" valign="top">const std::vector< int > & </td><td class="memItemRight" valign="bottom"><a class="el" href="classfsm.html#ac26a317a2b73bb885a5fc1812ac5159c">NS</a> () const </td></tr> <tr class="separator:ac26a317a2b73bb885a5fc1812ac5159c"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a339554ffc3f74952e2cac49d5414fff1"><td class="memItemLeft" align="right" valign="top">const std::vector< int > & </td><td class="memItemRight" valign="bottom"><a class="el" href="classfsm.html#a339554ffc3f74952e2cac49d5414fff1">OS</a> () const </td></tr> <tr class="separator:a339554ffc3f74952e2cac49d5414fff1"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a9477aa18ff75881235e1c2648bc46cff"><td class="memItemLeft" align="right" valign="top">const std::vector< std::vector<br class="typebreak"/> < int > > & </td><td class="memItemRight" valign="bottom"><a class="el" href="classfsm.html#a9477aa18ff75881235e1c2648bc46cff">PS</a> () const </td></tr> <tr class="separator:a9477aa18ff75881235e1c2648bc46cff"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a5aff353214751b6d1bbce1495c9cf8ea"><td class="memItemLeft" align="right" valign="top">const std::vector< std::vector<br class="typebreak"/> < int > > & </td><td class="memItemRight" valign="bottom"><a class="el" href="classfsm.html#a5aff353214751b6d1bbce1495c9cf8ea">PI</a> () const </td></tr> <tr class="separator:a5aff353214751b6d1bbce1495c9cf8ea"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:afac5ed3c857cc75fcb654386d30259b8"><td class="memItemLeft" align="right" valign="top">const std::vector< int > & </td><td class="memItemRight" valign="bottom"><a class="el" href="classfsm.html#afac5ed3c857cc75fcb654386d30259b8">TMi</a> () const </td></tr> <tr class="separator:afac5ed3c857cc75fcb654386d30259b8"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a7806664145c7cb325ccdb04948736f6d"><td class="memItemLeft" align="right" valign="top">const std::vector< int > & </td><td class="memItemRight" valign="bottom"><a class="el" href="classfsm.html#a7806664145c7cb325ccdb04948736f6d">TMl</a> () const </td></tr> <tr class="separator:a7806664145c7cb325ccdb04948736f6d"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a6dcf93654163e7db294fac2c7375b8e8"><td class="memItemLeft" align="right" valign="top"><a class="el" href="volk_8tmpl_8h.html#a8dc2b7da310a28e667530ba0e8ca4cc4">void</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classfsm.html#a6dcf93654163e7db294fac2c7375b8e8">write_trellis_svg</a> (std::string filename, int number_stages)</td></tr> <tr class="memdesc:a6dcf93654163e7db294fac2c7375b8e8"><td class="mdescLeft"> </td><td class="mdescRight">Creates an svg image of the trellis representation. <a href="#a6dcf93654163e7db294fac2c7375b8e8"></a><br/></td></tr> <tr class="separator:a6dcf93654163e7db294fac2c7375b8e8"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ab8f5c2f0cc9c45adb3ebeeb033f7af12"><td class="memItemLeft" align="right" valign="top"><a class="el" href="volk_8tmpl_8h.html#a8dc2b7da310a28e667530ba0e8ca4cc4">void</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classfsm.html#ab8f5c2f0cc9c45adb3ebeeb033f7af12">write_fsm_txt</a> (std::string filename)</td></tr> <tr class="memdesc:ab8f5c2f0cc9c45adb3ebeeb033f7af12"><td class="mdescLeft"> </td><td class="mdescRight">Write the FSMS to a file. <a href="#ab8f5c2f0cc9c45adb3ebeeb033f7af12"></a><br/></td></tr> <tr class="separator:ab8f5c2f0cc9c45adb3ebeeb033f7af12"><td class="memSeparator" colspan="2"> </td></tr> </table> <a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2> <div class="textblock"><p>Finite State Machine Specification class. </p> <p>An instance of this class represents a finite state machine specification (FSMS) rather than the FSM itself. It particular the state of the FSM is not stored within an instance of this class. </p> </div><h2 class="groupheader">Constructor & Destructor Documentation</h2> <a class="anchor" id="a186a9a7368d04e7d98e6976c870baca1"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">fsm::fsm </td> <td>(</td> <td class="paramname"></td><td>)</td> <td></td> </tr> </table> </div><div class="memdoc"> <p>Constructor to create an uninitialized FSMS. </p> </div> </div> <a class="anchor" id="af908445fb560ef461835f1c3a18016ea"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">fsm::fsm </td> <td>(</td> <td class="paramtype">const <a class="el" href="classfsm.html">fsm</a> & </td> <td class="paramname"><em>FSM</em></td><td>)</td> <td></td> </tr> </table> </div><div class="memdoc"> <p>Constructor to copy an FSMS. </p> </div> </div> <a class="anchor" id="a2d6d52f3b3380b5b594d0635cbf9fdd9"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">fsm::fsm </td> <td>(</td> <td class="paramtype">int </td> <td class="paramname"><em>I</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">int </td> <td class="paramname"><em>S</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">int </td> <td class="paramname"><em>O</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const std::vector< int > & </td> <td class="paramname"><em>NS</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const std::vector< int > & </td> <td class="paramname"><em>OS</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </div><div class="memdoc"> <p>Constructor to to create an FSMS. </p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">I</td><td>The number of possible input symbols. </td></tr> <tr><td class="paramname">S</td><td>The number of possible FSM states. </td></tr> <tr><td class="paramname">O</td><td>The number of possible output symbols. </td></tr> <tr><td class="paramname">NS</td><td>A mapping from (current state, input symbol) to next state. next_state = NS[current_state * I + input_symbol] </td></tr> <tr><td class="paramname">OS</td><td>A mapping from (current state, input symbol) to output symbol. output_symbol = OS[current_state * I + input_symbol] </td></tr> </table> </dd> </dl> </div> </div> <a class="anchor" id="afd89d3a7abe74449c78e444e21ba65fe"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">fsm::fsm </td> <td>(</td> <td class="paramtype">const char * </td> <td class="paramname"><em>name</em></td><td>)</td> <td></td> </tr> </table> </div><div class="memdoc"> <p>Constructor to create an FSMS from file contents. </p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">name</td><td>filename </td></tr> </table> </dd> </dl> </div> </div> <a class="anchor" id="a98222d2d02e9d652ab433fda4df7dc66"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">fsm::fsm </td> <td>(</td> <td class="paramtype">int </td> <td class="paramname"><em>k</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">int </td> <td class="paramname"><em>n</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const std::vector< int > & </td> <td class="paramname"><em>G</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </div><div class="memdoc"> <p>Creates an FSMS from the generator matrix of a (n, k) binary convolutional code. </p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">k</td><td>??? </td></tr> <tr><td class="paramname">n</td><td>??? </td></tr> <tr><td class="paramname">G</td><td>??? </td></tr> </table> </dd> </dl> </div> </div> <a class="anchor" id="ac0a4045b2a911557d593f14a66c44367"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">fsm::fsm </td> <td>(</td> <td class="paramtype">int </td> <td class="paramname"><em>mod_size</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">int </td> <td class="paramname"><em>ch_length</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </div><div class="memdoc"> <p>Creates an FSMS describing ISI. </p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">mod_size</td><td>modulation size </td></tr> <tr><td class="paramname">ch_length</td><td>channel length </td></tr> </table> </dd> </dl> </div> </div> <a class="anchor" id="a81f2ebaafddf25b4c1aa418bff459e21"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">fsm::fsm </td> <td>(</td> <td class="paramtype">int </td> <td class="paramname"><em>P</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">int </td> <td class="paramname"><em>M</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">int </td> <td class="paramname"><em>L</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </div><div class="memdoc"> <p>Creates an FSMS describing the trellis for a CPM. </p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">P</td><td>???? h=K/P (relatively prime) </td></tr> <tr><td class="paramname">M</td><td>alphabet size </td></tr> <tr><td class="paramname">L</td><td>pulse duration</td></tr> </table> </dd> </dl> <p>This FSM is based on the paper by B. Rimoldi "A decomposition approach to CPM", IEEE Trans. Info Theory, March 1988 See also my own notes at <a href="http://www.eecs.umich.edu/~anastas/docs/cpm.pdf">http://www.eecs.umich.edu/~anastas/docs/cpm.pdf</a> </p> </div> </div> <a class="anchor" id="ac6783c0f811e842c5368e69ec79bc6be"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">fsm::fsm </td> <td>(</td> <td class="paramtype">const <a class="el" href="classfsm.html">fsm</a> & </td> <td class="paramname"><em>FSM1</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const <a class="el" href="classfsm.html">fsm</a> & </td> <td class="paramname"><em>FSM2</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </div><div class="memdoc"> <p>Creates an FSMS describing the joint trellis of two FSMs. </p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">FSM1</td><td>first FSMS </td></tr> <tr><td class="paramname">FSM2</td><td>second FSMS </td></tr> </table> </dd> </dl> </div> </div> <a class="anchor" id="a1782872dc0fa453ec798423263fdc3fb"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">fsm::fsm </td> <td>(</td> <td class="paramtype">const <a class="el" href="classfsm.html">fsm</a> & </td> <td class="paramname"><em>FSM</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">int </td> <td class="paramname"><em>n</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </div><div class="memdoc"> <p>Creates an FSMS representing n stages through the originial FSM (AKA radix-n FSM). </p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">FSM</td><td>Original FSMs </td></tr> <tr><td class="paramname">n</td><td>Number of stages. </td></tr> </table> </dd> </dl> </div> </div> <h2 class="groupheader">Member Function Documentation</h2> <a class="anchor" id="abefd9fd219d4755c4bb2e8b50649fa44"></a> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">int fsm::I </td> <td>(</td> <td class="paramname"></td><td>)</td> <td> const</td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">inline</span></span> </td> </tr> </table> </div><div class="memdoc"> </div> </div> <a class="anchor" id="ac26a317a2b73bb885a5fc1812ac5159c"></a> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">const std::vector<int>& fsm::NS </td> <td>(</td> <td class="paramname"></td><td>)</td> <td> const</td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">inline</span></span> </td> </tr> </table> </div><div class="memdoc"> </div> </div> <a class="anchor" id="aae6f3dbbcdf85f5f8d43ce00bcfb9eb0"></a> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">int fsm::O </td> <td>(</td> <td class="paramname"></td><td>)</td> <td> const</td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">inline</span></span> </td> </tr> </table> </div><div class="memdoc"> </div> </div> <a class="anchor" id="a339554ffc3f74952e2cac49d5414fff1"></a> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">const std::vector<int>& fsm::OS </td> <td>(</td> <td class="paramname"></td><td>)</td> <td> const</td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">inline</span></span> </td> </tr> </table> </div><div class="memdoc"> </div> </div> <a class="anchor" id="a5aff353214751b6d1bbce1495c9cf8ea"></a> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">const std::vector< std::vector<int> >& fsm::PI </td> <td>(</td> <td class="paramname"></td><td>)</td> <td> const</td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">inline</span></span> </td> </tr> </table> </div><div class="memdoc"> </div> </div> <a class="anchor" id="a9477aa18ff75881235e1c2648bc46cff"></a> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">const std::vector< std::vector<int> >& fsm::PS </td> <td>(</td> <td class="paramname"></td><td>)</td> <td> const</td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">inline</span></span> </td> </tr> </table> </div><div class="memdoc"> </div> </div> <a class="anchor" id="a8936ef142a30c4a508371ab9ffbc2b96"></a> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">int fsm::S </td> <td>(</td> <td class="paramname"></td><td>)</td> <td> const</td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">inline</span></span> </td> </tr> </table> </div><div class="memdoc"> </div> </div> <a class="anchor" id="afac5ed3c857cc75fcb654386d30259b8"></a> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">const std::vector<int>& fsm::TMi </td> <td>(</td> <td class="paramname"></td><td>)</td> <td> const</td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">inline</span></span> </td> </tr> </table> </div><div class="memdoc"> </div> </div> <a class="anchor" id="a7806664145c7cb325ccdb04948736f6d"></a> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">const std::vector<int>& fsm::TMl </td> <td>(</td> <td class="paramname"></td><td>)</td> <td> const</td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">inline</span></span> </td> </tr> </table> </div><div class="memdoc"> </div> </div> <a class="anchor" id="ab8f5c2f0cc9c45adb3ebeeb033f7af12"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="volk_8tmpl_8h.html#a8dc2b7da310a28e667530ba0e8ca4cc4">void</a> fsm::write_fsm_txt </td> <td>(</td> <td class="paramtype">std::string </td> <td class="paramname"><em>filename</em></td><td>)</td> <td></td> </tr> </table> </div><div class="memdoc"> <p>Write the FSMS to a file. </p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">filename</td><td>filename </td></tr> </table> </dd> </dl> </div> </div> <a class="anchor" id="a6dcf93654163e7db294fac2c7375b8e8"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="volk_8tmpl_8h.html#a8dc2b7da310a28e667530ba0e8ca4cc4">void</a> fsm::write_trellis_svg </td> <td>(</td> <td class="paramtype">std::string </td> <td class="paramname"><em>filename</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">int </td> <td class="paramname"><em>number_stages</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </div><div class="memdoc"> <p>Creates an svg image of the trellis representation. </p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">filename</td><td>filename </td></tr> <tr><td class="paramname">number_stages</td><td>???? </td></tr> </table> </dd> </dl> </div> </div> <hr/>The documentation for this class was generated from the following file:<ul> <li><a class="el" href="fsm_8h_source.html">fsm.h</a></li> </ul> </div><!-- contents --> </div><!-- doc-content --> <!-- start footer part --> <div id="nav-path" class="navpath"><!-- id is needed for treeview function! --> <ul> <li class="navelem"><a class="el" href="classfsm.html">fsm</a></li> <li class="footer">Generated on Fri Apr 19 2013 16:20:36 for GNU Radio 3.6.4.1 C++ API by <a href="http://www.doxygen.org/index.html"> <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3 </li> </ul> </div> </body> </html>