<!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"/>
<title>ToPS: tops::GeneralizedHiddenMarkovModel Class Reference</title>

<link href="../../tabs.css" rel="stylesheet" type="text/css"/>
<link href="../../doxygen.css" rel="stylesheet" type="text/css" />



</head>
<body>
<div id="top"><!-- do not remove this div! -->


<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  
  
  <td style="padding-left: 0.5em;">
   <div id="projectname">ToPS
   
   </div>
   
  </td>
  
  
  
 </tr>
 </tbody>
</table>
</div>

<!-- Generated by Doxygen 1.8.0 -->
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="../../index.html"><span>Main&#160;Page</span></a></li>
      <li class="current"><a href="../../annotated.html"><span>Classes</span></a></li>
      <li><a href="../../files.html"><span>Files</span></a></li>
    </ul>
  </div>
  <div id="navrow2" class="tabs2">
    <ul class="tablist">
      <li><a href="../../annotated.html"><span>Class&#160;List</span></a></li>
      <li><a href="../../hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
      <li><a href="../../functions.html"><span>Class&#160;Members</span></a></li>
    </ul>
  </div>
  <div id="nav-path" class="navpath">
    <ul>
      <li class="navelem"><b>tops</b>      </li>
      <li class="navelem"><a class="el" href="classtops_1_1GeneralizedHiddenMarkovModel.html">GeneralizedHiddenMarkovModel</a>      </li>
    </ul>
  </div>
</div>
<div class="header">
  <div class="summary">
<a href="classtops_1_1GeneralizedHiddenMarkovModel.html#pub-methods">Public Member Functions</a>  </div>
  <div class="headertitle">
<div class="title">tops::GeneralizedHiddenMarkovModel Class Reference</div>  </div>
</div><!--header-->
<div class="contents">

<p>This is a class representing Hidden semi-Markov Models.  
 <a href="classtops_1_1GeneralizedHiddenMarkovModel.html#details">More...</a></p>

<p><code>#include &lt;<a class="el" href="../../d3/ddd/GeneralizedHiddenMarkovModel_8hpp_source.html">GeneralizedHiddenMarkovModel.hpp</a>&gt;</code></p>
<div class="dynheader">
Inheritance diagram for tops::GeneralizedHiddenMarkovModel:</div>
<div class="dyncontent">
 <div class="center">
  <img src="classtops_1_1GeneralizedHiddenMarkovModel.png" usemap="#tops::GeneralizedHiddenMarkovModel_map" alt=""/>
  <map id="tops::GeneralizedHiddenMarkovModel_map" name="tops::GeneralizedHiddenMarkovModel_map">
<area href="../../d6/db0/classtops_1_1DecodableModel.html" title="Interface defining probabilistic model with the viterbi, forward and backward algorithm." alt="tops::DecodableModel" shape="rect" coords="0,56,227,80"/>
<area href="../../d4/d17/classtops_1_1ProbabilisticModel.html" title="This is an abstract class representing a generative probabilistic model." alt="tops::ProbabilisticModel" shape="rect" coords="0,0,227,24"/>
</map>
 </div></div>

<p><a href="../../d2/d61/classtops_1_1GeneralizedHiddenMarkovModel-members.html">List of all members.</a></p>
<table class="memberdecls">
<tr><td colspan="2"><h2><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:a33c4191729b2beb37b1c900a823851cc"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a33c4191729b2beb37b1c900a823851cc"></a>
virtual double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classtops_1_1GeneralizedHiddenMarkovModel.html#a33c4191729b2beb37b1c900a823851cc">forward</a> (const Sequence &amp;s, Matrix &amp;alpha) const </td></tr>
<tr class="memdesc:a33c4191729b2beb37b1c900a823851cc"><td class="mdescLeft">&#160;</td><td class="mdescRight">Forward algorithm. <br/></td></tr>
<tr class="memitem:a1eb58c78c5338217e19ffe222643db21"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a1eb58c78c5338217e19ffe222643db21"></a>
virtual double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classtops_1_1GeneralizedHiddenMarkovModel.html#a1eb58c78c5338217e19ffe222643db21">backward</a> (const Sequence &amp;s, Matrix &amp;beta) const </td></tr>
<tr class="memdesc:a1eb58c78c5338217e19ffe222643db21"><td class="mdescLeft">&#160;</td><td class="mdescRight">Backward algorithm. <br/></td></tr>
<tr class="memitem:a3d79218bc61085d3c26145709f0a128e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3d79218bc61085d3c26145709f0a128e"></a>
virtual double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classtops_1_1GeneralizedHiddenMarkovModel.html#a3d79218bc61085d3c26145709f0a128e">viterbi</a> (const Sequence &amp;s, Sequence &amp;path, Matrix &amp;gamma) const </td></tr>
<tr class="memdesc:a3d79218bc61085d3c26145709f0a128e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Viterbi algorithm. <br/></td></tr>
<tr class="memitem:abb20e8b6109fb2e677a84c14a4cd4b1b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="abb20e8b6109fb2e677a84c14a4cd4b1b"></a>
virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classtops_1_1GeneralizedHiddenMarkovModel.html#abb20e8b6109fb2e677a84c14a4cd4b1b">choosePath</a> (const Sequence &amp;s, Sequence &amp;path)</td></tr>
<tr class="memdesc:abb20e8b6109fb2e677a84c14a4cd4b1b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Choose a path given a sequence_length. <br/></td></tr>
<tr class="memitem:afaec4f19a5ff7fd0102b9dd9ea69a923"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="afaec4f19a5ff7fd0102b9dd9ea69a923"></a>
virtual double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classtops_1_1GeneralizedHiddenMarkovModel.html#afaec4f19a5ff7fd0102b9dd9ea69a923">_viterbi</a> (const Sequence &amp;s, Sequence &amp;path, Matrix &amp;gamma) const </td></tr>
<tr class="memdesc:afaec4f19a5ff7fd0102b9dd9ea69a923"><td class="mdescLeft">&#160;</td><td class="mdescRight">Inefficient Viterbi algorithm. <br/></td></tr>
<tr class="memitem:ad2d2afe710eb6e0527b817b8bb6363d2"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad2d2afe710eb6e0527b817b8bb6363d2"></a>
virtual Sequence &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classtops_1_1GeneralizedHiddenMarkovModel.html#ad2d2afe710eb6e0527b817b8bb6363d2">chooseObservation</a> (Sequence &amp;h, int i, int state) const </td></tr>
<tr class="memdesc:ad2d2afe710eb6e0527b817b8bb6363d2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Choose the observation given a state. <br/></td></tr>
<tr class="memitem:a0b7757d5ee7c360f849bedcc7260fd98"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0b7757d5ee7c360f849bedcc7260fd98"></a>
virtual int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classtops_1_1GeneralizedHiddenMarkovModel.html#a0b7757d5ee7c360f849bedcc7260fd98">chooseState</a> (int state) const </td></tr>
<tr class="memdesc:a0b7757d5ee7c360f849bedcc7260fd98"><td class="mdescLeft">&#160;</td><td class="mdescRight">Choose a state. <br/></td></tr>
<tr class="memitem:a1ac923173df8a4560410950aca78ecdb"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a1ac923173df8a4560410950aca78ecdb"></a>
virtual int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classtops_1_1GeneralizedHiddenMarkovModel.html#a1ac923173df8a4560410950aca78ecdb">chooseFirstState</a> () const </td></tr>
<tr class="memdesc:a1ac923173df8a4560410950aca78ecdb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Choose the initial state. <br/></td></tr>
<tr class="memitem:a981f8d1a88178cedc2fe5eb117e22621"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a981f8d1a88178cedc2fe5eb117e22621"></a>
virtual DiscreteIIDModelPtr&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classtops_1_1GeneralizedHiddenMarkovModel.html#a981f8d1a88178cedc2fe5eb117e22621">getInitialProbabilities</a> () const </td></tr>
<tr class="memdesc:a981f8d1a88178cedc2fe5eb117e22621"><td class="mdescLeft">&#160;</td><td class="mdescRight">Choose the initial state. <br/></td></tr>
<tr class="memitem:ae435d1375c670f572945ba048a0148ee"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae435d1375c670f572945ba048a0148ee"></a>
virtual std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classtops_1_1GeneralizedHiddenMarkovModel.html#ae435d1375c670f572945ba048a0148ee">getStateName</a> (int state) const </td></tr>
<tr class="memdesc:ae435d1375c670f572945ba048a0148ee"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get state name. <br/></td></tr>
<tr class="memitem:a26d11f66887c48358545d915bc35d8a5"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a26d11f66887c48358545d915bc35d8a5"></a>
virtual AlphabetPtr&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classtops_1_1GeneralizedHiddenMarkovModel.html#a26d11f66887c48358545d915bc35d8a5">getStateNames</a> () const </td></tr>
<tr class="memdesc:a26d11f66887c48358545d915bc35d8a5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the state names. <br/></td></tr>
<tr class="memitem:a387368f3e1252d25946ef6674f3a5bac"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a387368f3e1252d25946ef6674f3a5bac"></a>
virtual std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classtops_1_1GeneralizedHiddenMarkovModel.html#a387368f3e1252d25946ef6674f3a5bac">model_name</a> () const </td></tr>
<tr class="memdesc:a387368f3e1252d25946ef6674f3a5bac"><td class="mdescLeft">&#160;</td><td class="mdescRight">returns the model name <br/></td></tr>
<tr class="memitem:abe8fc6da1ca28a2d078fef4022162513"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="abe8fc6da1ca28a2d078fef4022162513"></a>
virtual std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classtops_1_1GeneralizedHiddenMarkovModel.html#abe8fc6da1ca28a2d078fef4022162513">str</a> () const </td></tr>
<tr class="memdesc:abe8fc6da1ca28a2d078fef4022162513"><td class="mdescLeft">&#160;</td><td class="mdescRight">returns the string representation of the model <br/></td></tr>
</table>
<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
<div class="textblock"><p>This is a class representing Hidden semi-Markov Models. </p>

<p>Definition at line <a class="el" href="../../d3/ddd/GeneralizedHiddenMarkovModel_8hpp_source.html#l00045">45</a> of file <a class="el" href="../../d3/ddd/GeneralizedHiddenMarkovModel_8hpp_source.html">GeneralizedHiddenMarkovModel.hpp</a>.</p>
</div><hr/>The documentation for this class was generated from the following files:<ul>
<li><a class="el" href="../../d3/ddd/GeneralizedHiddenMarkovModel_8hpp_source.html">GeneralizedHiddenMarkovModel.hpp</a></li>
<li><a class="el" href="../../d1/da2/GeneralizedHiddenMarkovModel_8cpp_source.html">GeneralizedHiddenMarkovModel.cpp</a></li>
</ul>
</div><!-- contents -->


<hr class="footer"/><address class="footer"><small>
Generated on Thu Jun 28 2012 14:40:27 for ToPS by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="../../doxygen.png" alt="doxygen"/>
</a> 1.8.0
</small></address>

</body>
</html>
