<?xml version='1.0' encoding='UTF-8' standalone='no'?>
<doxygen xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="compound.xsd" version="1.8.13">
  <compounddef id="classViterbiTCH__AFS4__75" kind="class" language="C++" prot="public">
    <compoundname>ViterbiTCH_AFS4_75</compoundname>
    <basecompoundref refid="classViterbiBase" prot="public" virt="non-virtual">ViterbiBase</basecompoundref>
    <includes refid="AmrCoder_8h" local="no">AmrCoder.h</includes>
    <innerclass refid="structViterbiTCH__AFS4__75_1_1candStruct" prot="public">ViterbiTCH_AFS4_75::candStruct</innerclass>
      <sectiondef kind="user-defined">
      <header>Core values.</header>
      <description><para>name Lots of precomputed elements so the compiler can optimize like hell. </para></description>
      <memberdef kind="variable" id="classViterbiTCH__AFS4__75_1a5ab179493f33f9f382c099c87a356e24" prot="private" static="yes" mutable="no">
        <type>const unsigned</type>
        <definition>const unsigned ViterbiTCH_AFS4_75::mIRate</definition>
        <argsstring></argsstring>
        <name>mIRate</name>
        <initializer>= 5</initializer>
        <briefdescription>
<para>reciprocal of rate </para>        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/build/gr-gsm-git/src/gr-gsm-git/lib/decoding/openbts/AmrCoder.h" line="836" column="1" bodyfile="/build/gr-gsm-git/src/gr-gsm-git/lib/decoding/openbts/AmrCoder.h" bodystart="836" bodyend="-1"/>
      </memberdef>
      <memberdef kind="variable" id="classViterbiTCH__AFS4__75_1a1a8c7204f0ba343bab2e4368dc99ffc1" prot="private" static="yes" mutable="no">
        <type>const unsigned</type>
        <definition>const unsigned ViterbiTCH_AFS4_75::mOrder</definition>
        <argsstring></argsstring>
        <name>mOrder</name>
        <initializer>= 6</initializer>
        <briefdescription>
<para>memory length of generators </para>        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/build/gr-gsm-git/src/gr-gsm-git/lib/decoding/openbts/AmrCoder.h" line="837" column="1" bodyfile="/build/gr-gsm-git/src/gr-gsm-git/lib/decoding/openbts/AmrCoder.h" bodystart="837" bodyend="-1"/>
      </memberdef>
      </sectiondef>
      <sectiondef kind="user-defined">
      <header>Derived values.</header>
      <memberdef kind="variable" id="classViterbiTCH__AFS4__75_1afc4e5cd843732fa3e136512168e20c90" prot="private" static="yes" mutable="no">
        <type>const unsigned</type>
        <definition>const unsigned ViterbiTCH_AFS4_75::mIStates</definition>
        <argsstring></argsstring>
        <name>mIStates</name>
        <initializer>= 0x01 &lt;&lt; mOrder</initializer>
        <briefdescription>
<para>number of states, number of survivors </para>        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/build/gr-gsm-git/src/gr-gsm-git/lib/decoding/openbts/AmrCoder.h" line="841" column="1" bodyfile="/build/gr-gsm-git/src/gr-gsm-git/lib/decoding/openbts/AmrCoder.h" bodystart="841" bodyend="-1"/>
      </memberdef>
      <memberdef kind="variable" id="classViterbiTCH__AFS4__75_1ae0ca7cc380eee10c4c02ac996bd44593" prot="private" static="yes" mutable="no">
        <type>const uint32_t</type>
        <definition>const uint32_t ViterbiTCH_AFS4_75::mSMask</definition>
        <argsstring></argsstring>
        <name>mSMask</name>
        <initializer>= mIStates-1</initializer>
        <briefdescription>
<para>survivor mask </para>        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/build/gr-gsm-git/src/gr-gsm-git/lib/decoding/openbts/AmrCoder.h" line="842" column="1" bodyfile="/build/gr-gsm-git/src/gr-gsm-git/lib/decoding/openbts/AmrCoder.h" bodystart="842" bodyend="-1"/>
      </memberdef>
      <memberdef kind="variable" id="classViterbiTCH__AFS4__75_1ac180c2ff681fda5dc5432ef5834eb90c" prot="private" static="yes" mutable="no">
        <type>const uint32_t</type>
        <definition>const uint32_t ViterbiTCH_AFS4_75::mCMask</definition>
        <argsstring></argsstring>
        <name>mCMask</name>
        <initializer>= (mSMask&lt;&lt;1) | 0x01</initializer>
        <briefdescription>
<para>candidate mask </para>        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/build/gr-gsm-git/src/gr-gsm-git/lib/decoding/openbts/AmrCoder.h" line="843" column="1" bodyfile="/build/gr-gsm-git/src/gr-gsm-git/lib/decoding/openbts/AmrCoder.h" bodystart="843" bodyend="-1"/>
      </memberdef>
      <memberdef kind="variable" id="classViterbiTCH__AFS4__75_1abc817d5c3eee1ce7802fdd6880da7f55" prot="private" static="yes" mutable="no">
        <type>const uint32_t</type>
        <definition>const uint32_t ViterbiTCH_AFS4_75::mOMask</definition>
        <argsstring></argsstring>
        <name>mOMask</name>
        <initializer>= (0x01&lt;&lt;mIRate)-1</initializer>
        <briefdescription>
<para>ouput mask, all iRate low bits set </para>        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/build/gr-gsm-git/src/gr-gsm-git/lib/decoding/openbts/AmrCoder.h" line="844" column="1" bodyfile="/build/gr-gsm-git/src/gr-gsm-git/lib/decoding/openbts/AmrCoder.h" bodystart="844" bodyend="-1"/>
      </memberdef>
      <memberdef kind="variable" id="classViterbiTCH__AFS4__75_1ab4f605b333d4f07a8122f81bc73810e2" prot="private" static="yes" mutable="no">
        <type>const unsigned</type>
        <definition>const unsigned ViterbiTCH_AFS4_75::mNumCands</definition>
        <argsstring></argsstring>
        <name>mNumCands</name>
        <initializer>= mIStates*2</initializer>
        <briefdescription>
<para>number of candidates to generate during branching </para>        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/build/gr-gsm-git/src/gr-gsm-git/lib/decoding/openbts/AmrCoder.h" line="845" column="1" bodyfile="/build/gr-gsm-git/src/gr-gsm-git/lib/decoding/openbts/AmrCoder.h" bodystart="845" bodyend="-1"/>
      </memberdef>
      <memberdef kind="variable" id="classViterbiTCH__AFS4__75_1a07101f30ffe1e4b6ed6e7b207f74be57" prot="private" static="yes" mutable="no">
        <type>const unsigned</type>
        <definition>const unsigned ViterbiTCH_AFS4_75::mDeferral</definition>
        <argsstring></argsstring>
        <name>mDeferral</name>
        <initializer>= 5*mOrder</initializer>
        <briefdescription>
<para>deferral to be used </para>        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/build/gr-gsm-git/src/gr-gsm-git/lib/decoding/openbts/AmrCoder.h" line="846" column="1" bodyfile="/build/gr-gsm-git/src/gr-gsm-git/lib/decoding/openbts/AmrCoder.h" bodystart="846" bodyend="-1"/>
      </memberdef>
      </sectiondef>
      <sectiondef kind="user-defined">
      <memberdef kind="variable" id="classViterbiTCH__AFS4__75_1a18dc536d62990ef3da60f8cfb6841eed" prot="private" static="no" mutable="no">
        <type>uint32_t</type>
        <definition>uint32_t ViterbiTCH_AFS4_75::mCoeffs[mIRate]</definition>
        <argsstring>[mIRate]</argsstring>
        <name>mCoeffs</name>
        <briefdescription>
<para>output polynomial for each generator </para>        </briefdescription>
        <detaileddescription>
<para>Precomputed tables. </para>        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/build/gr-gsm-git/src/gr-gsm-git/lib/decoding/openbts/AmrCoder.h" line="852" column="1" bodyfile="/build/gr-gsm-git/src/gr-gsm-git/lib/decoding/openbts/AmrCoder.h" bodystart="852" bodyend="-1"/>
      </memberdef>
      <memberdef kind="variable" id="classViterbiTCH__AFS4__75_1a84499490f5287c1425ebd86cf359fb4a" prot="private" static="no" mutable="no">
        <type>uint32_t</type>
        <definition>uint32_t ViterbiTCH_AFS4_75::mCoeffsFB[mIRate]</definition>
        <argsstring>[mIRate]</argsstring>
        <name>mCoeffsFB</name>
        <briefdescription>
<para>feedback polynomial for each generator </para>        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/build/gr-gsm-git/src/gr-gsm-git/lib/decoding/openbts/AmrCoder.h" line="853" column="1" bodyfile="/build/gr-gsm-git/src/gr-gsm-git/lib/decoding/openbts/AmrCoder.h" bodystart="853" bodyend="-1"/>
      </memberdef>
      <memberdef kind="variable" id="classViterbiTCH__AFS4__75_1af2b937640b7b33b8029d9c57084c9406" prot="private" static="no" mutable="no">
        <type>uint32_t</type>
        <definition>uint32_t ViterbiTCH_AFS4_75::mStateTable[mIRate][2 *mIStates]</definition>
        <argsstring>[mIRate][2 *mIStates]</argsstring>
        <name>mStateTable</name>
        <briefdescription>
<para>precomputed generator output tables </para>        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/build/gr-gsm-git/src/gr-gsm-git/lib/decoding/openbts/AmrCoder.h" line="854" column="1" bodyfile="/build/gr-gsm-git/src/gr-gsm-git/lib/decoding/openbts/AmrCoder.h" bodystart="854" bodyend="-1"/>
      </memberdef>
      <memberdef kind="variable" id="classViterbiTCH__AFS4__75_1a0631ecea35cbc343c038e3e858425bf5" prot="private" static="no" mutable="no">
        <type>uint32_t</type>
        <definition>uint32_t ViterbiTCH_AFS4_75::mGeneratorTable[2 *mIStates]</definition>
        <argsstring>[2 *mIStates]</argsstring>
        <name>mGeneratorTable</name>
        <briefdescription>
<para>precomputed coder output table </para>        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/build/gr-gsm-git/src/gr-gsm-git/lib/decoding/openbts/AmrCoder.h" line="855" column="1" bodyfile="/build/gr-gsm-git/src/gr-gsm-git/lib/decoding/openbts/AmrCoder.h" bodystart="855" bodyend="-1"/>
      </memberdef>
      </sectiondef>
      <sectiondef kind="user-defined">
      <header>Survivors and candidates.</header>
      <memberdef kind="variable" id="classViterbiTCH__AFS4__75_1ab07b4c72d04ebc18e1e1dd671dd42aac" prot="private" static="no" mutable="no">
        <type><ref refid="classViterbiTCH__AFS4__75_1ac2f277710edfcaf412a53c7162424afd" kindref="member">vCand</ref></type>
        <definition>vCand ViterbiTCH_AFS4_75::mSurvivors[mIStates]</definition>
        <argsstring>[mIStates]</argsstring>
        <name>mSurvivors</name>
        <briefdescription>
<para>current survivor pool </para>        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/build/gr-gsm-git/src/gr-gsm-git/lib/decoding/openbts/AmrCoder.h" line="885" column="1" bodyfile="/build/gr-gsm-git/src/gr-gsm-git/lib/decoding/openbts/AmrCoder.h" bodystart="885" bodyend="-1"/>
      </memberdef>
      <memberdef kind="variable" id="classViterbiTCH__AFS4__75_1a9080aac6f4699cb4fad1cbe55635e527" prot="private" static="no" mutable="no">
        <type><ref refid="classViterbiTCH__AFS4__75_1ac2f277710edfcaf412a53c7162424afd" kindref="member">vCand</ref></type>
        <definition>vCand ViterbiTCH_AFS4_75::mCandidates[2 *mIStates]</definition>
        <argsstring>[2 *mIStates]</argsstring>
        <name>mCandidates</name>
        <briefdescription>
<para>current candidate pool </para>        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/build/gr-gsm-git/src/gr-gsm-git/lib/decoding/openbts/AmrCoder.h" line="886" column="1" bodyfile="/build/gr-gsm-git/src/gr-gsm-git/lib/decoding/openbts/AmrCoder.h" bodystart="886" bodyend="-1"/>
      </memberdef>
      </sectiondef>
      <sectiondef kind="public-type">
      <memberdef kind="typedef" id="classViterbiTCH__AFS4__75_1ac2f277710edfcaf412a53c7162424afd" prot="public" static="no">
        <type>struct <ref refid="structViterbiTCH__AFS4__75_1_1candStruct" kindref="compound">ViterbiTCH_AFS4_75::candStruct</ref></type>
        <definition>typedef struct ViterbiTCH_AFS4_75::candStruct  ViterbiTCH_AFS4_75::vCand</definition>
        <argsstring></argsstring>
        <name>vCand</name>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
<para>A candidate sequence in a Viterbi decoder. The 32-bit state register can support a deferral of 5*order with a 6th-order coder. </para>        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/build/gr-gsm-git/src/gr-gsm-git/lib/decoding/openbts/AmrCoder.h" line="869" column="1"/>
      </memberdef>
      </sectiondef>
      <sectiondef kind="public-func">
      <memberdef kind="function" id="classViterbiTCH__AFS4__75_1ae3fbd409a01c84d4faab5924b1a88b38" prot="public" static="no" const="no" explicit="no" inline="yes" virt="non-virtual">
        <type>void</type>
        <definition>void ViterbiTCH_AFS4_75::vitClear</definition>
        <argsstring>(vCand &amp;v)</argsstring>
        <name>vitClear</name>
        <param>
          <type><ref refid="classViterbiTCH__AFS4__75_1ac2f277710edfcaf412a53c7162424afd" kindref="member">vCand</ref> &amp;</type>
          <declname>v</declname>
        </param>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
<para>Clear a structure. </para>        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/build/gr-gsm-git/src/gr-gsm-git/lib/decoding/openbts/AmrCoder.h" line="872" column="1" bodyfile="/build/gr-gsm-git/src/gr-gsm-git/lib/decoding/openbts/AmrCoder.h" bodystart="872" bodyend="878"/>
        <references refid="structViterbiTCH__AFS4__75_1_1candStruct_1a62c69c8830f6c0639b66502ddf869c65" compoundref="AmrCoder_8h" startline="868">ViterbiTCH_AFS4_75::candStruct::cost</references>
        <references refid="structViterbiTCH__AFS4__75_1_1candStruct_1a3eb4577d125032ebdb81d72b638c37e0" compoundref="AmrCoder_8h" startline="865">ViterbiTCH_AFS4_75::candStruct::iState</references>
        <references refid="structViterbiTCH__AFS4__75_1_1candStruct_1a12563824665433aa209f82cb7faaaea6" compoundref="AmrCoder_8h" startline="866">ViterbiTCH_AFS4_75::candStruct::oState</references>
        <references refid="structViterbiTCH__AFS4__75_1_1candStruct_1ab59e725df691a1740dbff9a640ef30ae" compoundref="AmrCoder_8h" startline="867">ViterbiTCH_AFS4_75::candStruct::rState</references>
      </memberdef>
      <memberdef kind="function" id="classViterbiTCH__AFS4__75_1a5a94a7aeb7f92b7894b56661cd386e3a" prot="public" static="no" const="yes" explicit="no" inline="yes" virt="non-virtual">
        <type>unsigned</type>
        <definition>unsigned ViterbiTCH_AFS4_75::iRate</definition>
        <argsstring>() const</argsstring>
        <name>iRate</name>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/build/gr-gsm-git/src/gr-gsm-git/lib/decoding/openbts/AmrCoder.h" line="891" column="1" bodyfile="/build/gr-gsm-git/src/gr-gsm-git/lib/decoding/openbts/AmrCoder.h" bodystart="891" bodyend="891"/>
      </memberdef>
      <memberdef kind="function" id="classViterbiTCH__AFS4__75_1a4fab0ba6f0b0ad3464f3bc6a6a50b66d" prot="public" static="no" const="yes" explicit="no" inline="yes" virt="non-virtual">
        <type>uint32_t</type>
        <definition>uint32_t ViterbiTCH_AFS4_75::cMask</definition>
        <argsstring>() const</argsstring>
        <name>cMask</name>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/build/gr-gsm-git/src/gr-gsm-git/lib/decoding/openbts/AmrCoder.h" line="892" column="1" bodyfile="/build/gr-gsm-git/src/gr-gsm-git/lib/decoding/openbts/AmrCoder.h" bodystart="892" bodyend="892"/>
      </memberdef>
      <memberdef kind="function" id="classViterbiTCH__AFS4__75_1a123790a59c3409d1722d0de55c8cf020" prot="public" static="no" const="yes" explicit="no" inline="yes" virt="non-virtual">
        <type>uint32_t</type>
        <definition>uint32_t ViterbiTCH_AFS4_75::stateTable</definition>
        <argsstring>(unsigned g, unsigned i) const</argsstring>
        <name>stateTable</name>
        <param>
          <type>unsigned</type>
          <declname>g</declname>
        </param>
        <param>
          <type>unsigned</type>
          <declname>i</declname>
        </param>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/build/gr-gsm-git/src/gr-gsm-git/lib/decoding/openbts/AmrCoder.h" line="893" column="1" bodyfile="/build/gr-gsm-git/src/gr-gsm-git/lib/decoding/openbts/AmrCoder.h" bodystart="893" bodyend="893"/>
      </memberdef>
      <memberdef kind="function" id="classViterbiTCH__AFS4__75_1aba66686e70fd88cc98f0186cff33a86d" prot="public" static="no" const="yes" explicit="no" inline="yes" virt="non-virtual">
        <type>unsigned</type>
        <definition>unsigned ViterbiTCH_AFS4_75::deferral</definition>
        <argsstring>() const</argsstring>
        <name>deferral</name>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/build/gr-gsm-git/src/gr-gsm-git/lib/decoding/openbts/AmrCoder.h" line="894" column="1" bodyfile="/build/gr-gsm-git/src/gr-gsm-git/lib/decoding/openbts/AmrCoder.h" bodystart="894" bodyend="894"/>
        <references refid="classViterbiTCH__AFS12__2_1aab0ac3610868d50378f5162ae15ce231">ViterbiTCH_AFS12_2::initializeStates</references>
        <references refid="classViterbiTCH__AFS12__2_1a95561ce47766940a39ee41e6869172b6">ViterbiTCH_AFS12_2::step</references>
      </memberdef>
      <memberdef kind="function" id="classViterbiTCH__AFS4__75_1a29916cdc1d3d611cc0b0ff970c5d702e" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type></type>
        <definition>ViterbiTCH_AFS4_75::ViterbiTCH_AFS4_75</definition>
        <argsstring>()</argsstring>
        <name>ViterbiTCH_AFS4_75</name>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/build/gr-gsm-git/src/gr-gsm-git/lib/decoding/openbts/AmrCoder.h" line="897" column="1"/>
      </memberdef>
      <memberdef kind="function" id="classViterbiTCH__AFS4__75_1a4b3a8e7acda8e84ab8890543dd0be349" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>void</type>
        <definition>void ViterbiTCH_AFS4_75::initializeStates</definition>
        <argsstring>()</argsstring>
        <name>initializeStates</name>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
<para>Set all cost metrics to zero. </para>        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/build/gr-gsm-git/src/gr-gsm-git/lib/decoding/openbts/AmrCoder.h" line="900" column="1"/>
      </memberdef>
      <memberdef kind="function" id="classViterbiTCH__AFS4__75_1aa2962c0348c2c9356fcc376b95d6617e" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>const <ref refid="classViterbiTCH__AFS4__75_1ac2f277710edfcaf412a53c7162424afd" kindref="member">vCand</ref> &amp;</type>
        <definition>const vCand&amp; ViterbiTCH_AFS4_75::step</definition>
        <argsstring>(uint32_t inSample, const float *probs, const float *iprobs)</argsstring>
        <name>step</name>
        <param>
          <type>uint32_t</type>
          <declname>inSample</declname>
        </param>
        <param>
          <type>const float *</type>
          <declname>probs</declname>
        </param>
        <param>
          <type>const float *</type>
          <declname>iprobs</declname>
        </param>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
<para>Full cycle of the Viterbi algorithm: branch, metrics, prune, select. <simplesect kind="return"><para>reference to minimum-cost candidate. </para></simplesect>
</para>        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/build/gr-gsm-git/src/gr-gsm-git/lib/decoding/openbts/AmrCoder.h" line="906" column="1"/>
      </memberdef>
      </sectiondef>
      <sectiondef kind="private-func">
      <memberdef kind="function" id="classViterbiTCH__AFS4__75_1aa2feb4bda05109ae754f0cc0b629a193" prot="private" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>void</type>
        <definition>void ViterbiTCH_AFS4_75::branchCandidates</definition>
        <argsstring>()</argsstring>
        <name>branchCandidates</name>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
<para>Branch survivors into new candidates. </para>        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/build/gr-gsm-git/src/gr-gsm-git/lib/decoding/openbts/AmrCoder.h" line="911" column="1"/>
      </memberdef>
      <memberdef kind="function" id="classViterbiTCH__AFS4__75_1ac945913e564efe19b7dc7209bf42f1cc" prot="private" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>void</type>
        <definition>void ViterbiTCH_AFS4_75::getSoftCostMetrics</definition>
        <argsstring>(uint32_t inSample, const float *probs, const float *iprobs)</argsstring>
        <name>getSoftCostMetrics</name>
        <param>
          <type>uint32_t</type>
          <declname>inSample</declname>
        </param>
        <param>
          <type>const float *</type>
          <declname>probs</declname>
        </param>
        <param>
          <type>const float *</type>
          <declname>iprobs</declname>
        </param>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
<para>Compute cost metrics for soft-inputs. </para>        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/build/gr-gsm-git/src/gr-gsm-git/lib/decoding/openbts/AmrCoder.h" line="914" column="1"/>
      </memberdef>
      <memberdef kind="function" id="classViterbiTCH__AFS4__75_1a2696c4c109be7355d1e7fa831cc7cded" prot="private" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>void</type>
        <definition>void ViterbiTCH_AFS4_75::pruneCandidates</definition>
        <argsstring>()</argsstring>
        <name>pruneCandidates</name>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
<para>Select survivors from the candidate set. </para>        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/build/gr-gsm-git/src/gr-gsm-git/lib/decoding/openbts/AmrCoder.h" line="917" column="1"/>
      </memberdef>
      <memberdef kind="function" id="classViterbiTCH__AFS4__75_1a3c131156a63d40b5de5e40e4bc314cf9" prot="private" static="no" const="yes" explicit="no" inline="no" virt="non-virtual">
        <type>const <ref refid="classViterbiTCH__AFS4__75_1ac2f277710edfcaf412a53c7162424afd" kindref="member">vCand</ref> &amp;</type>
        <definition>const vCand&amp; ViterbiTCH_AFS4_75::minCost</definition>
        <argsstring>() const</argsstring>
        <name>minCost</name>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
<para>Find the minimum cost survivor. </para>        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/build/gr-gsm-git/src/gr-gsm-git/lib/decoding/openbts/AmrCoder.h" line="920" column="1"/>
      </memberdef>
      <memberdef kind="function" id="classViterbiTCH__AFS4__75_1a7d48b71ffc85050b02b024f5e0a36822" prot="private" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>void</type>
        <definition>void ViterbiTCH_AFS4_75::computeStateTables</definition>
        <argsstring>(unsigned g)</argsstring>
        <name>computeStateTables</name>
        <param>
          <type>unsigned</type>
          <declname>g</declname>
        </param>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
<para>Precompute the state tables. <parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>g</parametername>
</parameternamelist>
<parameterdescription>
<para><ref refid="classGenerator" kindref="compound">Generator</ref> index 0..((1/rate)-1) </para></parameterdescription>
</parameteritem>
</parameterlist>
</para>        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/build/gr-gsm-git/src/gr-gsm-git/lib/decoding/openbts/AmrCoder.h" line="926" column="1"/>
      </memberdef>
      <memberdef kind="function" id="classViterbiTCH__AFS4__75_1aa93f825c9be6987a9141aa5901288250" prot="private" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>void</type>
        <definition>void ViterbiTCH_AFS4_75::computeGeneratorTable</definition>
        <argsstring>()</argsstring>
        <name>computeGeneratorTable</name>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
<para>Precompute the generator outputs. mCoeffs must be defined first. </para>        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/build/gr-gsm-git/src/gr-gsm-git/lib/decoding/openbts/AmrCoder.h" line="932" column="1"/>
      </memberdef>
      <memberdef kind="function" id="classViterbiTCH__AFS4__75_1a10ae27aa975b81a6d183698b16c7055a" prot="private" static="no" const="yes" explicit="no" inline="no" virt="virtual">
        <type>void</type>
        <definition>void ViterbiTCH_AFS4_75::encode</definition>
        <argsstring>(const BitVector &amp;in, BitVector &amp;target) const</argsstring>
        <name>encode</name>
        <reimplements refid="classViterbiBase_1ada634c1d9d9761e8fd849f93c2c2bba4">encode</reimplements>
        <param>
          <type>const <ref refid="classBitVector" kindref="compound">BitVector</ref> &amp;</type>
          <declname>in</declname>
        </param>
        <param>
          <type><ref refid="classBitVector" kindref="compound">BitVector</ref> &amp;</type>
          <declname>target</declname>
        </param>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/build/gr-gsm-git/src/gr-gsm-git/lib/decoding/openbts/AmrCoder.h" line="933" column="1"/>
      </memberdef>
      <memberdef kind="function" id="classViterbiTCH__AFS4__75_1aa3acd186917d5e8ff51ea5b037434161" prot="private" static="no" const="no" explicit="no" inline="no" virt="virtual">
        <type>void</type>
        <definition>void ViterbiTCH_AFS4_75::decode</definition>
        <argsstring>(const SoftVector &amp;in, BitVector &amp;target)</argsstring>
        <name>decode</name>
        <reimplements refid="classViterbiBase_1a6ce7d0720db188acf79bb0078bb02bea">decode</reimplements>
        <param>
          <type>const <ref refid="classSoftVector" kindref="compound">SoftVector</ref> &amp;</type>
          <declname>in</declname>
        </param>
        <param>
          <type><ref refid="classBitVector" kindref="compound">BitVector</ref> &amp;</type>
          <declname>target</declname>
        </param>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/build/gr-gsm-git/src/gr-gsm-git/lib/decoding/openbts/AmrCoder.h" line="934" column="1"/>
      </memberdef>
      </sectiondef>
    <briefdescription>
    </briefdescription>
    <detaileddescription>
<para>Class to represent recursive systematic convolutional coders/decoders of rate 1/5, memory length 6. </para>    </detaileddescription>
    <inheritancegraph>
      <node id="406">
        <label>ViterbiBase</label>
        <link refid="classViterbiBase"/>
      </node>
      <node id="405">
        <label>ViterbiTCH_AFS4_75</label>
        <link refid="classViterbiTCH__AFS4__75"/>
        <childnode refid="406" relation="public-inheritance">
        </childnode>
      </node>
    </inheritancegraph>
    <collaborationgraph>
      <node id="408">
        <label>ViterbiBase</label>
        <link refid="classViterbiBase"/>
      </node>
      <node id="407">
        <label>ViterbiTCH_AFS4_75</label>
        <link refid="classViterbiTCH__AFS4__75"/>
        <childnode refid="408" relation="public-inheritance">
        </childnode>
      </node>
    </collaborationgraph>
    <location file="/build/gr-gsm-git/src/gr-gsm-git/lib/decoding/openbts/AmrCoder.h" line="829" column="1" bodyfile="/build/gr-gsm-git/src/gr-gsm-git/lib/decoding/openbts/AmrCoder.h" bodystart="829" bodyend="936"/>
    <listofallmembers>
      <member refid="classViterbiBase_1a33940c637e576fb7f18fba0bdcf81cf4" prot="public" virt="non-virtual"><scope>ViterbiTCH_AFS4_75</scope><name>applyPoly</name></member>
      <member refid="classViterbiBase_1a80a471965ab1231000f6693d1564d2f3" prot="public" virt="non-virtual"><scope>ViterbiTCH_AFS4_75</scope><name>applyPoly</name></member>
      <member refid="classViterbiTCH__AFS4__75_1aa2feb4bda05109ae754f0cc0b629a193" prot="private" virt="non-virtual"><scope>ViterbiTCH_AFS4_75</scope><name>branchCandidates</name></member>
      <member refid="classViterbiTCH__AFS4__75_1a4fab0ba6f0b0ad3464f3bc6a6a50b66d" prot="public" virt="non-virtual"><scope>ViterbiTCH_AFS4_75</scope><name>cMask</name></member>
      <member refid="classViterbiTCH__AFS4__75_1aa93f825c9be6987a9141aa5901288250" prot="private" virt="non-virtual"><scope>ViterbiTCH_AFS4_75</scope><name>computeGeneratorTable</name></member>
      <member refid="classViterbiTCH__AFS4__75_1a7d48b71ffc85050b02b024f5e0a36822" prot="private" virt="non-virtual"><scope>ViterbiTCH_AFS4_75</scope><name>computeStateTables</name></member>
      <member refid="classViterbiTCH__AFS4__75_1aa3acd186917d5e8ff51ea5b037434161" prot="private" virt="virtual"><scope>ViterbiTCH_AFS4_75</scope><name>decode</name></member>
      <member refid="classViterbiTCH__AFS4__75_1aba66686e70fd88cc98f0186cff33a86d" prot="public" virt="non-virtual"><scope>ViterbiTCH_AFS4_75</scope><name>deferral</name></member>
      <member refid="classViterbiTCH__AFS4__75_1a10ae27aa975b81a6d183698b16c7055a" prot="private" virt="virtual"><scope>ViterbiTCH_AFS4_75</scope><name>encode</name></member>
      <member refid="classViterbiBase_1a3a66056f1a2fff22f0fec39552fc20eb" prot="public" virt="virtual"><scope>ViterbiTCH_AFS4_75</scope><name>getBEC</name></member>
      <member refid="classViterbiTCH__AFS4__75_1ac945913e564efe19b7dc7209bf42f1cc" prot="private" virt="non-virtual"><scope>ViterbiTCH_AFS4_75</scope><name>getSoftCostMetrics</name></member>
      <member refid="classViterbiTCH__AFS4__75_1a4b3a8e7acda8e84ab8890543dd0be349" prot="public" virt="non-virtual"><scope>ViterbiTCH_AFS4_75</scope><name>initializeStates</name></member>
      <member refid="classViterbiTCH__AFS4__75_1a5a94a7aeb7f92b7894b56661cd386e3a" prot="public" virt="non-virtual"><scope>ViterbiTCH_AFS4_75</scope><name>iRate</name></member>
      <member refid="classViterbiTCH__AFS4__75_1a9080aac6f4699cb4fad1cbe55635e527" prot="private" virt="non-virtual"><scope>ViterbiTCH_AFS4_75</scope><name>mCandidates</name></member>
      <member refid="classViterbiTCH__AFS4__75_1ac180c2ff681fda5dc5432ef5834eb90c" prot="private" virt="non-virtual"><scope>ViterbiTCH_AFS4_75</scope><name>mCMask</name></member>
      <member refid="classViterbiTCH__AFS4__75_1a18dc536d62990ef3da60f8cfb6841eed" prot="private" virt="non-virtual"><scope>ViterbiTCH_AFS4_75</scope><name>mCoeffs</name></member>
      <member refid="classViterbiTCH__AFS4__75_1a84499490f5287c1425ebd86cf359fb4a" prot="private" virt="non-virtual"><scope>ViterbiTCH_AFS4_75</scope><name>mCoeffsFB</name></member>
      <member refid="classViterbiTCH__AFS4__75_1a07101f30ffe1e4b6ed6e7b207f74be57" prot="private" virt="non-virtual"><scope>ViterbiTCH_AFS4_75</scope><name>mDeferral</name></member>
      <member refid="classViterbiTCH__AFS4__75_1a0631ecea35cbc343c038e3e858425bf5" prot="private" virt="non-virtual"><scope>ViterbiTCH_AFS4_75</scope><name>mGeneratorTable</name></member>
      <member refid="classViterbiTCH__AFS4__75_1a3c131156a63d40b5de5e40e4bc314cf9" prot="private" virt="non-virtual"><scope>ViterbiTCH_AFS4_75</scope><name>minCost</name></member>
      <member refid="classViterbiTCH__AFS4__75_1a5ab179493f33f9f382c099c87a356e24" prot="private" virt="non-virtual"><scope>ViterbiTCH_AFS4_75</scope><name>mIRate</name></member>
      <member refid="classViterbiTCH__AFS4__75_1afc4e5cd843732fa3e136512168e20c90" prot="private" virt="non-virtual"><scope>ViterbiTCH_AFS4_75</scope><name>mIStates</name></member>
      <member refid="classViterbiTCH__AFS4__75_1ab4f605b333d4f07a8122f81bc73810e2" prot="private" virt="non-virtual"><scope>ViterbiTCH_AFS4_75</scope><name>mNumCands</name></member>
      <member refid="classViterbiTCH__AFS4__75_1abc817d5c3eee1ce7802fdd6880da7f55" prot="private" virt="non-virtual"><scope>ViterbiTCH_AFS4_75</scope><name>mOMask</name></member>
      <member refid="classViterbiTCH__AFS4__75_1a1a8c7204f0ba343bab2e4368dc99ffc1" prot="private" virt="non-virtual"><scope>ViterbiTCH_AFS4_75</scope><name>mOrder</name></member>
      <member refid="classViterbiTCH__AFS4__75_1ae0ca7cc380eee10c4c02ac996bd44593" prot="private" virt="non-virtual"><scope>ViterbiTCH_AFS4_75</scope><name>mSMask</name></member>
      <member refid="classViterbiTCH__AFS4__75_1af2b937640b7b33b8029d9c57084c9406" prot="private" virt="non-virtual"><scope>ViterbiTCH_AFS4_75</scope><name>mStateTable</name></member>
      <member refid="classViterbiTCH__AFS4__75_1ab07b4c72d04ebc18e1e1dd671dd42aac" prot="private" virt="non-virtual"><scope>ViterbiTCH_AFS4_75</scope><name>mSurvivors</name></member>
      <member refid="classViterbiTCH__AFS4__75_1a2696c4c109be7355d1e7fa831cc7cded" prot="private" virt="non-virtual"><scope>ViterbiTCH_AFS4_75</scope><name>pruneCandidates</name></member>
      <member refid="classViterbiTCH__AFS4__75_1a123790a59c3409d1722d0de55c8cf020" prot="public" virt="non-virtual"><scope>ViterbiTCH_AFS4_75</scope><name>stateTable</name></member>
      <member refid="classViterbiTCH__AFS4__75_1aa2962c0348c2c9356fcc376b95d6617e" prot="public" virt="non-virtual"><scope>ViterbiTCH_AFS4_75</scope><name>step</name></member>
      <member refid="classViterbiTCH__AFS4__75_1ac2f277710edfcaf412a53c7162424afd" prot="public" virt="non-virtual"><scope>ViterbiTCH_AFS4_75</scope><name>vCand</name></member>
      <member refid="classViterbiTCH__AFS4__75_1ae3fbd409a01c84d4faab5924b1a88b38" prot="public" virt="non-virtual"><scope>ViterbiTCH_AFS4_75</scope><name>vitClear</name></member>
      <member refid="classViterbiTCH__AFS4__75_1a29916cdc1d3d611cc0b0ff970c5d702e" prot="public" virt="non-virtual"><scope>ViterbiTCH_AFS4_75</scope><name>ViterbiTCH_AFS4_75</name></member>
    </listofallmembers>
  </compounddef>
</doxygen>
