Sophie

Sophie

distrib > Fedora > 14 > x86_64 > media > updates > by-pkgid > 0b420d0fce195cf4115dc6a3be5c2da2 > files > 196

sphinxbase-devel-0.7-1.fc14.i686.rpm

<!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"/>
<title>SphinxBase: include/sphinxbase/glist.h File Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript">
$(document).ready(initResizable);
</script>
<link href="doxygen.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<!-- Generated by Doxygen 1.7.3 -->
<div id="top">
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td style="padding-left: 0.5em;">
   <div id="projectname">SphinxBase&#160;<span id="projectnumber">0.6</span></div>
  </td>
 </tr>
 </tbody>
</table>
</div>
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
      <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
      <li class="current"><a href="files.html"><span>Files</span></a></li>
    </ul>
  </div>
  <div id="navrow2" class="tabs2">
    <ul class="tablist">
      <li><a href="files.html"><span>File&#160;List</span></a></li>
      <li><a href="globals.html"><span>Globals</span></a></li>
    </ul>
  </div>
</div>
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
  initNavTree('glist_8h.html','');
</script>
<div id="doc-content">
<div class="header">
  <div class="summary">
<a href="#nested-classes">Data Structures</a> &#124;
<a href="#define-members">Defines</a> &#124;
<a href="#typedef-members">Typedefs</a> &#124;
<a href="#func-members">Functions</a>  </div>
  <div class="headertitle">
<h1>include/sphinxbase/glist.h File Reference</h1>  </div>
</div>
<div class="contents">

<p>Generic linked-lists maintenance.  
<a href="#_details">More...</a></p>
<div class="textblock"><code>#include &lt;stdlib.h&gt;</code><br/>
<code>#include &lt;sphinxbase/sphinxbase_export.h&gt;</code><br/>
<code>#include &lt;sphinxbase/prim_type.h&gt;</code><br/>
</div>
<p><a href="glist_8h_source.html">Go to the source code of this file.</a></p>
<table class="memberdecls">
<tr><td colspan="2"><h2><a name="nested-classes"></a>
Data Structures</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgnode__s.html">gnode_s</a></td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">A node in a generic list.  <a href="structgnode__s.html#_details">More...</a><br/></td></tr>
<tr><td colspan="2"><h2><a name="define-members"></a>
Defines</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="glist_8h.html#ace56682f14d84cc456c805d26fd86734">gnode_ptr</a>(g)&#160;&#160;&#160;((g)-&gt;data.ptr)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Head of a list of gnodes.  <a href="#ace56682f14d84cc456c805d26fd86734"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a7daab0205c40d1b449529ee4cc54522b"></a><!-- doxytag: member="glist.h::gnode_int32" ref="a7daab0205c40d1b449529ee4cc54522b" args="(g)" -->
#define&#160;</td><td class="memItemRight" valign="bottom"><b>gnode_int32</b>(g)&#160;&#160;&#160;((g)-&gt;data.i)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3af0cc8d5d612e85fa433ac3edf42fd6"></a><!-- doxytag: member="glist.h::gnode_uint32" ref="a3af0cc8d5d612e85fa433ac3edf42fd6" args="(g)" -->
#define&#160;</td><td class="memItemRight" valign="bottom"><b>gnode_uint32</b>(g)&#160;&#160;&#160;((g)-&gt;data.ui)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aaf6a2bdc69642303426c20fc0bdfa5f6"></a><!-- doxytag: member="glist.h::gnode_float32" ref="aaf6a2bdc69642303426c20fc0bdfa5f6" args="(g)" -->
#define&#160;</td><td class="memItemRight" valign="bottom"><b>gnode_float32</b>(g)&#160;&#160;&#160;((float32)(g)-&gt;data.fl)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="abfea8eee77afc1e3046ef33ae6c0f5b4"></a><!-- doxytag: member="glist.h::gnode_float64" ref="abfea8eee77afc1e3046ef33ae6c0f5b4" args="(g)" -->
#define&#160;</td><td class="memItemRight" valign="bottom"><b>gnode_float64</b>(g)&#160;&#160;&#160;((g)-&gt;data.fl)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a33fc794db097ba2a5a36eba12c418993"></a><!-- doxytag: member="glist.h::gnode_next" ref="a33fc794db097ba2a5a36eba12c418993" args="(g)" -->
#define&#160;</td><td class="memItemRight" valign="bottom"><b>gnode_next</b>(g)&#160;&#160;&#160;((g)-&gt;next)</td></tr>
<tr><td colspan="2"><h2><a name="typedef-members"></a>
Typedefs</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a35eee566c2974c9a3e3055daf1611793"></a><!-- doxytag: member="glist.h::gnode_t" ref="a35eee566c2974c9a3e3055daf1611793" args="" -->
typedef struct <a class="el" href="structgnode__s.html">gnode_s</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="glist_8h.html#a35eee566c2974c9a3e3055daf1611793">gnode_t</a></td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">A node in a generic list. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a576a9ce77a5af8b912e75b32bce607f2"></a><!-- doxytag: member="glist.h::glist_t" ref="a576a9ce77a5af8b912e75b32bce607f2" args="" -->
typedef <a class="el" href="structgnode__s.html">gnode_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><b>glist_t</b></td></tr>
<tr><td colspan="2"><h2><a name="func-members"></a>
Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">SPHINXBASE_EXPORT <a class="el" href="structgnode__s.html">glist_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="glist_8h.html#a77a9c20b7df5a289477af405ab778377">glist_add_ptr</a> (<a class="el" href="structgnode__s.html">glist_t</a> g, void *ptr)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Create and prepend a new list node, with the given user-defined data, at the HEAD of the given generic list.  <a href="#a77a9c20b7df5a289477af405ab778377"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">SPHINXBASE_EXPORT <a class="el" href="structgnode__s.html">glist_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="glist_8h.html#a28adfcc24a784aaed1a0b3c4c4de4c42">glist_add_int32</a> (<a class="el" href="structgnode__s.html">glist_t</a> g, int32 val)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Create and prepend a new list node containing an integer.  <a href="#a28adfcc24a784aaed1a0b3c4c4de4c42"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">SPHINXBASE_EXPORT <a class="el" href="structgnode__s.html">glist_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="glist_8h.html#aeb741d435322f34df5e5d3a99abf00de">glist_add_uint32</a> (<a class="el" href="structgnode__s.html">glist_t</a> g, uint32 val)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Create and prepend a new list node containing an unsigned integer.  <a href="#aeb741d435322f34df5e5d3a99abf00de"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">SPHINXBASE_EXPORT <a class="el" href="structgnode__s.html">glist_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="glist_8h.html#a4fc4db2fbebd7b659554227d411f6737">glist_add_float32</a> (<a class="el" href="structgnode__s.html">glist_t</a> g, float32 val)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Create and prepend a new list node containing a single-precision float.  <a href="#a4fc4db2fbebd7b659554227d411f6737"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">SPHINXBASE_EXPORT <a class="el" href="structgnode__s.html">glist_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="glist_8h.html#a5bdd11639ef5846abb7ceb6caf059f4e">glist_add_float64</a> (<a class="el" href="structgnode__s.html">glist_t</a> g, float64 val)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Create and prepend a new list node containing a double-precision float.  <a href="#a5bdd11639ef5846abb7ceb6caf059f4e"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">SPHINXBASE_EXPORT <a class="el" href="structgnode__s.html">gnode_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="glist_8h.html#a2d641da6b349c1c939e3b954382513ba">glist_insert_ptr</a> (<a class="el" href="structgnode__s.html">gnode_t</a> *gn, void *ptr)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Create and insert a new list node, with the given user-defined data, after the given generic node gn.  <a href="#a2d641da6b349c1c939e3b954382513ba"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">SPHINXBASE_EXPORT <a class="el" href="structgnode__s.html">gnode_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="glist_8h.html#a327b6478ee05ac17e3c3b3189579413e">glist_insert_int32</a> (<a class="el" href="structgnode__s.html">gnode_t</a> *gn, int32 val)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Create and insert a new list node containing an integer.  <a href="#a327b6478ee05ac17e3c3b3189579413e"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">SPHINXBASE_EXPORT <a class="el" href="structgnode__s.html">gnode_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="glist_8h.html#ab7e58ee641d3648f047eef70a20a4647">glist_insert_uint32</a> (<a class="el" href="structgnode__s.html">gnode_t</a> *gn, uint32 val)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Create and insert a new list node containing an unsigned integer.  <a href="#ab7e58ee641d3648f047eef70a20a4647"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">SPHINXBASE_EXPORT <a class="el" href="structgnode__s.html">gnode_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="glist_8h.html#aff08aed022168872fc9d30cd299df2ce">glist_insert_float32</a> (<a class="el" href="structgnode__s.html">gnode_t</a> *gn, float32 val)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Create and insert a new list node containing a single-precision float.  <a href="#aff08aed022168872fc9d30cd299df2ce"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">SPHINXBASE_EXPORT <a class="el" href="structgnode__s.html">gnode_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="glist_8h.html#a97a682e38319dd8f67765732467110f9">glist_insert_float64</a> (<a class="el" href="structgnode__s.html">gnode_t</a> *gn, float64 val)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Create and insert a new list node containing a double-precision float.  <a href="#a97a682e38319dd8f67765732467110f9"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">SPHINXBASE_EXPORT <a class="el" href="structgnode__s.html">glist_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="glist_8h.html#a399a2a093c6c4ce1012762e4c25c8185">glist_reverse</a> (<a class="el" href="structgnode__s.html">glist_t</a> g)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Reverse the order of the given glist.  <a href="#a399a2a093c6c4ce1012762e4c25c8185"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">SPHINXBASE_EXPORT int32&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="glist_8h.html#aeb046e39c540d2f5f792119ea0d24c48">glist_count</a> (<a class="el" href="structgnode__s.html">glist_t</a> g)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Count the number of element in a given link list.  <a href="#aeb046e39c540d2f5f792119ea0d24c48"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">SPHINXBASE_EXPORT void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="glist_8h.html#a45380e15d2c33afc554fd60a8828580c">glist_free</a> (<a class="el" href="structgnode__s.html">glist_t</a> g)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Free the given generic list; user-defined data contained within is not automatically freed.  <a href="#a45380e15d2c33afc554fd60a8828580c"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">SPHINXBASE_EXPORT <a class="el" href="structgnode__s.html">gnode_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="glist_8h.html#a68b51aea4de463b284a19668a713d502">gnode_free</a> (<a class="el" href="structgnode__s.html">gnode_t</a> *gn, <a class="el" href="structgnode__s.html">gnode_t</a> *pred)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Free the given node, gn, of a glist, pred being its predecessor in the list.  <a href="#a68b51aea4de463b284a19668a713d502"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a6921d6b8b11cb9e05fadeaa091e89234"></a><!-- doxytag: member="glist.h::glist_tail" ref="a6921d6b8b11cb9e05fadeaa091e89234" args="(glist_t g)" -->
SPHINXBASE_EXPORT <a class="el" href="structgnode__s.html">gnode_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="glist_8h.html#a6921d6b8b11cb9e05fadeaa091e89234">glist_tail</a> (<a class="el" href="structgnode__s.html">glist_t</a> g)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Return the last node in the given list. <br/></td></tr>
</table>
<hr/><a name="_details"></a><h2>Detailed Description</h2>
<div class="textblock"><p>Generic linked-lists maintenance. </p>
<p>Only insert at the head of the list. A convenient little linked-list package, but a double-edged sword: the user must keep track of the data type within the linked list elements. When it was first written, there was no selective deletions except to destroy the entire list. This is modified in later version.</p>
<p>(C++ would be good for this, but that's a double-edged sword as well.) </p>

<p>Definition in file <a class="el" href="glist_8h_source.html">glist.h</a>.</p>
</div><hr/><h2>Define Documentation</h2>
<a class="anchor" id="ace56682f14d84cc456c805d26fd86734"></a><!-- doxytag: member="glist.h::gnode_ptr" ref="ace56682f14d84cc456c805d26fd86734" args="(g)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define gnode_ptr</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">g</td><td>)</td>
          <td>&#160;&#160;&#160;((g)-&gt;data.ptr)</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Head of a list of gnodes. </p>
<p>Access macros, for convenience </p>

<p>Definition at line <a class="el" href="glist_8h_source.html#l00109">109</a> of file <a class="el" href="glist_8h_source.html">glist.h</a>.</p>

<p>Referenced by <a class="el" href="cmd__ln_8c_source.html#l01028">cmd_ln_free_r()</a>, <a class="el" href="jsgf_8c_source.html#l00127">jsgf_grammar_free()</a>, <a class="el" href="listelem__alloc_8c_source.html#l00121">listelem_alloc_free()</a>, <a class="el" href="listelem__alloc_8c_source.html#l00233">listelem_get_item()</a>, <a class="el" href="listelem__alloc_8c_source.html#l00273">listelem_stats()</a>, <a class="el" href="ngram__model_8c_source.html#l01194">ngram_model_read_classdef()</a>, <a class="el" href="ngram__model__set_8c_source.html#l00182">ngram_model_set_read()</a>, and <a class="el" href="feat_8c_source.html#l00169">parse_subvecs()</a>.</p>

</div>
</div>
<hr/><h2>Function Documentation</h2>
<a class="anchor" id="a4fc4db2fbebd7b659554227d411f6737"></a><!-- doxytag: member="glist.h::glist_add_float32" ref="a4fc4db2fbebd7b659554227d411f6737" args="(glist_t g, float32 val)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">SPHINXBASE_EXPORT <a class="el" href="structgnode__s.html">glist_t</a> glist_add_float32 </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structgnode__s.html">glist_t</a>&#160;</td>
          <td class="paramname"><em>g</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">float32&#160;</td>
          <td class="paramname"><em>val</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Create and prepend a new list node containing a single-precision float. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">g</td><td>a link list </td></tr>
    <tr><td class="paramname">val</td><td>a float32 vlaue </td></tr>
  </table>
  </dd>
</dl>

<p>Definition at line <a class="el" href="glist_8c_source.html#l00110">110</a> of file <a class="el" href="glist_8c_source.html">glist.c</a>.</p>

<p>References <a class="el" href="ckd__alloc_8h_source.html#l00248">ckd_calloc</a>, <a class="el" href="glist_8c_source.html#l00110">glist_add_float32()</a>, and <a class="el" href="glist_8h_source.html#l00102">gnode_s::next</a>.</p>

<p>Referenced by <a class="el" href="glist_8c_source.html#l00110">glist_add_float32()</a>, and <a class="el" href="ngram__model_8c_source.html#l01000">ngram_model_add_class()</a>.</p>

</div>
</div>
<a class="anchor" id="a5bdd11639ef5846abb7ceb6caf059f4e"></a><!-- doxytag: member="glist.h::glist_add_float64" ref="a5bdd11639ef5846abb7ceb6caf059f4e" args="(glist_t g, float64 val)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">SPHINXBASE_EXPORT <a class="el" href="structgnode__s.html">glist_t</a> glist_add_float64 </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structgnode__s.html">glist_t</a>&#160;</td>
          <td class="paramname"><em>g</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">float64&#160;</td>
          <td class="paramname"><em>val</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Create and prepend a new list node containing a double-precision float. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">g</td><td>a link list </td></tr>
    <tr><td class="paramname">val</td><td>a float64 vlaue </td></tr>
  </table>
  </dd>
</dl>

<p>Definition at line <a class="el" href="glist_8c_source.html#l00122">122</a> of file <a class="el" href="glist_8c_source.html">glist.c</a>.</p>

<p>References <a class="el" href="ckd__alloc_8h_source.html#l00248">ckd_calloc</a>, <a class="el" href="glist_8c_source.html#l00122">glist_add_float64()</a>, and <a class="el" href="glist_8h_source.html#l00102">gnode_s::next</a>.</p>

<p>Referenced by <a class="el" href="glist_8c_source.html#l00122">glist_add_float64()</a>.</p>

</div>
</div>
<a class="anchor" id="a28adfcc24a784aaed1a0b3c4c4de4c42"></a><!-- doxytag: member="glist.h::glist_add_int32" ref="a28adfcc24a784aaed1a0b3c4c4de4c42" args="(glist_t g, int32 val)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">SPHINXBASE_EXPORT <a class="el" href="structgnode__s.html">glist_t</a> glist_add_int32 </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structgnode__s.html">glist_t</a>&#160;</td>
          <td class="paramname"><em>g</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int32&#160;</td>
          <td class="paramname"><em>val</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Create and prepend a new list node containing an integer. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">g</td><td>a link list </td></tr>
    <tr><td class="paramname">val</td><td>an integer value </td></tr>
  </table>
  </dd>
</dl>

<p>Definition at line <a class="el" href="glist_8c_source.html#l00086">86</a> of file <a class="el" href="glist_8c_source.html">glist.c</a>.</p>

<p>References <a class="el" href="ckd__alloc_8h_source.html#l00248">ckd_calloc</a>, <a class="el" href="glist_8c_source.html#l00086">glist_add_int32()</a>, and <a class="el" href="glist_8h_source.html#l00102">gnode_s::next</a>.</p>

<p>Referenced by <a class="el" href="glist_8c_source.html#l00086">glist_add_int32()</a>, and <a class="el" href="feat_8c_source.html#l00169">parse_subvecs()</a>.</p>

</div>
</div>
<a class="anchor" id="a77a9c20b7df5a289477af405ab778377"></a><!-- doxytag: member="glist.h::glist_add_ptr" ref="a77a9c20b7df5a289477af405ab778377" args="(glist_t g, void *ptr)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">SPHINXBASE_EXPORT <a class="el" href="structgnode__s.html">glist_t</a> glist_add_ptr </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structgnode__s.html">glist_t</a>&#160;</td>
          <td class="paramname"><em>g</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>ptr</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Create and prepend a new list node, with the given user-defined data, at the HEAD of the given generic list. </p>
<p>Return the new list thus formed. g may be NULL to indicate an initially empty list. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">g</td><td>a link list </td></tr>
    <tr><td class="paramname">ptr</td><td>a pointer </td></tr>
  </table>
  </dd>
</dl>

<p>Definition at line <a class="el" href="glist_8c_source.html#l00074">74</a> of file <a class="el" href="glist_8c_source.html">glist.c</a>.</p>

<p>References <a class="el" href="ckd__alloc_8h_source.html#l00248">ckd_calloc</a>, <a class="el" href="glist_8c_source.html#l00074">glist_add_ptr()</a>, and <a class="el" href="glist_8h_source.html#l00102">gnode_s::next</a>.</p>

<p>Referenced by <a class="el" href="glist_8c_source.html#l00074">glist_add_ptr()</a>, <a class="el" href="hash__table_8c_source.html#l00622">hash_table_tolist()</a>, <a class="el" href="jsgf_8c_source.html#l00081">jsgf_grammar_new()</a>, <a class="el" href="ngram__model__set_8c_source.html#l00182">ngram_model_set_read()</a>, and <a class="el" href="feat_8c_source.html#l00169">parse_subvecs()</a>.</p>

</div>
</div>
<a class="anchor" id="aeb741d435322f34df5e5d3a99abf00de"></a><!-- doxytag: member="glist.h::glist_add_uint32" ref="aeb741d435322f34df5e5d3a99abf00de" args="(glist_t g, uint32 val)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">SPHINXBASE_EXPORT <a class="el" href="structgnode__s.html">glist_t</a> glist_add_uint32 </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structgnode__s.html">glist_t</a>&#160;</td>
          <td class="paramname"><em>g</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint32&#160;</td>
          <td class="paramname"><em>val</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Create and prepend a new list node containing an unsigned integer. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">g</td><td>a link list </td></tr>
    <tr><td class="paramname">val</td><td>an unsigned integer value </td></tr>
  </table>
  </dd>
</dl>

<p>Definition at line <a class="el" href="glist_8c_source.html#l00098">98</a> of file <a class="el" href="glist_8c_source.html">glist.c</a>.</p>

<p>References <a class="el" href="ckd__alloc_8h_source.html#l00248">ckd_calloc</a>, <a class="el" href="glist_8c_source.html#l00098">glist_add_uint32()</a>, and <a class="el" href="glist_8h_source.html#l00102">gnode_s::next</a>.</p>

<p>Referenced by <a class="el" href="glist_8c_source.html#l00098">glist_add_uint32()</a>.</p>

</div>
</div>
<a class="anchor" id="aeb046e39c540d2f5f792119ea0d24c48"></a><!-- doxytag: member="glist.h::glist_count" ref="aeb046e39c540d2f5f792119ea0d24c48" args="(glist_t g)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">SPHINXBASE_EXPORT int32 glist_count </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structgnode__s.html">glist_t</a>&#160;</td>
          <td class="paramname"><em>g</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Count the number of element in a given link list. </p>
<dl class="return"><dt><b>Returns:</b></dt><dd>the number of elements in the given glist_t </dd></dl>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">g</td><td>input link list </td></tr>
  </table>
  </dd>
</dl>

<p>Definition at line <a class="el" href="glist_8c_source.html#l00145">145</a> of file <a class="el" href="glist_8c_source.html">glist.c</a>.</p>

<p>References <a class="el" href="glist_8c_source.html#l00145">glist_count()</a>, and <a class="el" href="glist_8h_source.html#l00102">gnode_s::next</a>.</p>

<p>Referenced by <a class="el" href="glist_8c_source.html#l00145">glist_count()</a>, <a class="el" href="ngram__model__set_8c_source.html#l00182">ngram_model_set_read()</a>, and <a class="el" href="feat_8c_source.html#l00169">parse_subvecs()</a>.</p>

</div>
</div>
<a class="anchor" id="a45380e15d2c33afc554fd60a8828580c"></a><!-- doxytag: member="glist.h::glist_free" ref="a45380e15d2c33afc554fd60a8828580c" args="(glist_t g)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">SPHINXBASE_EXPORT void glist_free </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structgnode__s.html">glist_t</a>&#160;</td>
          <td class="paramname"><em>g</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Free the given generic list; user-defined data contained within is not automatically freed. </p>
<p>The caller must have done that already. </p>

<p>Definition at line <a class="el" href="glist_8c_source.html#l00133">133</a> of file <a class="el" href="glist_8c_source.html">glist.c</a>.</p>

<p>References <a class="el" href="ckd__alloc_8c_source.html#l00241">ckd_free()</a>, <a class="el" href="glist_8c_source.html#l00133">glist_free()</a>, and <a class="el" href="glist_8h_source.html#l00102">gnode_s::next</a>.</p>

<p>Referenced by <a class="el" href="cmd__ln_8c_source.html#l01028">cmd_ln_free_r()</a>, <a class="el" href="glist_8c_source.html#l00133">glist_free()</a>, <a class="el" href="jsgf_8c_source.html#l00127">jsgf_grammar_free()</a>, <a class="el" href="listelem__alloc_8c_source.html#l00121">listelem_alloc_free()</a>, <a class="el" href="ngram__model_8c_source.html#l01000">ngram_model_add_class()</a>, <a class="el" href="ngram__model_8c_source.html#l01194">ngram_model_read_classdef()</a>, <a class="el" href="ngram__model__set_8c_source.html#l00182">ngram_model_set_read()</a>, and <a class="el" href="feat_8c_source.html#l00169">parse_subvecs()</a>.</p>

</div>
</div>
<a class="anchor" id="aff08aed022168872fc9d30cd299df2ce"></a><!-- doxytag: member="glist.h::glist_insert_float32" ref="aff08aed022168872fc9d30cd299df2ce" args="(gnode_t *gn, float32 val)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">SPHINXBASE_EXPORT <a class="el" href="structgnode__s.html">gnode_t</a>* glist_insert_float32 </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structgnode__s.html">gnode_t</a> *&#160;</td>
          <td class="paramname"><em>gn</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">float32&#160;</td>
          <td class="paramname"><em>val</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Create and insert a new list node containing a single-precision float. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">gn</td><td>a generic node which a value will be inserted after it </td></tr>
    <tr><td class="paramname">val</td><td>float32 inserted </td></tr>
  </table>
  </dd>
</dl>

<p>Definition at line <a class="el" href="glist_8c_source.html#l00230">230</a> of file <a class="el" href="glist_8c_source.html">glist.c</a>.</p>

<p>References <a class="el" href="ckd__alloc_8h_source.html#l00248">ckd_calloc</a>, <a class="el" href="glist_8c_source.html#l00230">glist_insert_float32()</a>, and <a class="el" href="glist_8h_source.html#l00102">gnode_s::next</a>.</p>

<p>Referenced by <a class="el" href="glist_8c_source.html#l00230">glist_insert_float32()</a>.</p>

</div>
</div>
<a class="anchor" id="a97a682e38319dd8f67765732467110f9"></a><!-- doxytag: member="glist.h::glist_insert_float64" ref="a97a682e38319dd8f67765732467110f9" args="(gnode_t *gn, float64 val)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">SPHINXBASE_EXPORT <a class="el" href="structgnode__s.html">gnode_t</a>* glist_insert_float64 </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structgnode__s.html">gnode_t</a> *&#160;</td>
          <td class="paramname"><em>gn</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">float64&#160;</td>
          <td class="paramname"><em>val</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Create and insert a new list node containing a double-precision float. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">gn</td><td>a generic node which a value will be inserted after it </td></tr>
    <tr><td class="paramname">val</td><td>float64 inserted </td></tr>
  </table>
  </dd>
</dl>

<p>Definition at line <a class="el" href="glist_8c_source.html#l00244">244</a> of file <a class="el" href="glist_8c_source.html">glist.c</a>.</p>

<p>References <a class="el" href="ckd__alloc_8h_source.html#l00248">ckd_calloc</a>, <a class="el" href="glist_8c_source.html#l00244">glist_insert_float64()</a>, and <a class="el" href="glist_8h_source.html#l00102">gnode_s::next</a>.</p>

<p>Referenced by <a class="el" href="glist_8c_source.html#l00244">glist_insert_float64()</a>.</p>

</div>
</div>
<a class="anchor" id="a327b6478ee05ac17e3c3b3189579413e"></a><!-- doxytag: member="glist.h::glist_insert_int32" ref="a327b6478ee05ac17e3c3b3189579413e" args="(gnode_t *gn, int32 val)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">SPHINXBASE_EXPORT <a class="el" href="structgnode__s.html">gnode_t</a>* glist_insert_int32 </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structgnode__s.html">gnode_t</a> *&#160;</td>
          <td class="paramname"><em>gn</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int32&#160;</td>
          <td class="paramname"><em>val</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Create and insert a new list node containing an integer. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">gn</td><td>a generic node which a value will be inserted after it </td></tr>
    <tr><td class="paramname">val</td><td>int32 inserted </td></tr>
  </table>
  </dd>
</dl>

<p>Definition at line <a class="el" href="glist_8c_source.html#l00201">201</a> of file <a class="el" href="glist_8c_source.html">glist.c</a>.</p>

<p>References <a class="el" href="ckd__alloc_8h_source.html#l00248">ckd_calloc</a>, <a class="el" href="glist_8c_source.html#l00201">glist_insert_int32()</a>, and <a class="el" href="glist_8h_source.html#l00102">gnode_s::next</a>.</p>

<p>Referenced by <a class="el" href="glist_8c_source.html#l00201">glist_insert_int32()</a>.</p>

</div>
</div>
<a class="anchor" id="a2d641da6b349c1c939e3b954382513ba"></a><!-- doxytag: member="glist.h::glist_insert_ptr" ref="a2d641da6b349c1c939e3b954382513ba" args="(gnode_t *gn, void *ptr)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">SPHINXBASE_EXPORT <a class="el" href="structgnode__s.html">gnode_t</a>* glist_insert_ptr </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structgnode__s.html">gnode_t</a> *&#160;</td>
          <td class="paramname"><em>gn</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>ptr</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Create and insert a new list node, with the given user-defined data, after the given generic node gn. </p>
<p>gn cannot be NULL. Return ptr to the newly created gnode_t. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">gn</td><td>a generic node which ptr will be inserted after it </td></tr>
    <tr><td class="paramname">ptr</td><td>pointer inserted </td></tr>
  </table>
  </dd>
</dl>

<p>Definition at line <a class="el" href="glist_8c_source.html#l00187">187</a> of file <a class="el" href="glist_8c_source.html">glist.c</a>.</p>

<p>References <a class="el" href="ckd__alloc_8h_source.html#l00248">ckd_calloc</a>, <a class="el" href="glist_8c_source.html#l00187">glist_insert_ptr()</a>, and <a class="el" href="glist_8h_source.html#l00102">gnode_s::next</a>.</p>

<p>Referenced by <a class="el" href="glist_8c_source.html#l00187">glist_insert_ptr()</a>.</p>

</div>
</div>
<a class="anchor" id="ab7e58ee641d3648f047eef70a20a4647"></a><!-- doxytag: member="glist.h::glist_insert_uint32" ref="ab7e58ee641d3648f047eef70a20a4647" args="(gnode_t *gn, uint32 val)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">SPHINXBASE_EXPORT <a class="el" href="structgnode__s.html">gnode_t</a>* glist_insert_uint32 </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structgnode__s.html">gnode_t</a> *&#160;</td>
          <td class="paramname"><em>gn</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint32&#160;</td>
          <td class="paramname"><em>val</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Create and insert a new list node containing an unsigned integer. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">gn</td><td>a generic node which a value will be inserted after it </td></tr>
    <tr><td class="paramname">val</td><td>uint32 inserted </td></tr>
  </table>
  </dd>
</dl>

<p>Definition at line <a class="el" href="glist_8c_source.html#l00215">215</a> of file <a class="el" href="glist_8c_source.html">glist.c</a>.</p>

<p>References <a class="el" href="ckd__alloc_8h_source.html#l00248">ckd_calloc</a>, <a class="el" href="glist_8c_source.html#l00215">glist_insert_uint32()</a>, and <a class="el" href="glist_8h_source.html#l00102">gnode_s::next</a>.</p>

<p>Referenced by <a class="el" href="glist_8c_source.html#l00215">glist_insert_uint32()</a>.</p>

</div>
</div>
<a class="anchor" id="a399a2a093c6c4ce1012762e4c25c8185"></a><!-- doxytag: member="glist.h::glist_reverse" ref="a399a2a093c6c4ce1012762e4c25c8185" args="(glist_t g)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">SPHINXBASE_EXPORT <a class="el" href="structgnode__s.html">glist_t</a> glist_reverse </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structgnode__s.html">glist_t</a>&#160;</td>
          <td class="paramname"><em>g</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Reverse the order of the given glist. </p>
<p>(glist_add() adds to the head; one might ultimately want the reverse of that.) NOTE: The list is reversed "in place"; i.e., no new memory is allocated. </p>
<dl class="return"><dt><b>Returns:</b></dt><dd>: The head of the new list. </dd></dl>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">g</td><td>input link list </td></tr>
  </table>
  </dd>
</dl>

<p>Definition at line <a class="el" href="glist_8c_source.html#l00169">169</a> of file <a class="el" href="glist_8c_source.html">glist.c</a>.</p>

<p>References <a class="el" href="glist_8c_source.html#l00169">glist_reverse()</a>, and <a class="el" href="glist_8h_source.html#l00102">gnode_s::next</a>.</p>

<p>Referenced by <a class="el" href="glist_8c_source.html#l00169">glist_reverse()</a>, <a class="el" href="jsgf_8c_source.html#l00081">jsgf_grammar_new()</a>, <a class="el" href="ngram__model_8c_source.html#l01000">ngram_model_add_class()</a>, and <a class="el" href="ngram__model__set_8c_source.html#l00182">ngram_model_set_read()</a>.</p>

</div>
</div>
<a class="anchor" id="a68b51aea4de463b284a19668a713d502"></a><!-- doxytag: member="glist.h::gnode_free" ref="a68b51aea4de463b284a19668a713d502" args="(gnode_t *gn, gnode_t *pred)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">SPHINXBASE_EXPORT <a class="el" href="structgnode__s.html">gnode_t</a>* gnode_free </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structgnode__s.html">gnode_t</a> *&#160;</td>
          <td class="paramname"><em>gn</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structgnode__s.html">gnode_t</a> *&#160;</td>
          <td class="paramname"><em>pred</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Free the given node, gn, of a glist, pred being its predecessor in the list. </p>
<p>Return ptr to the next node in the list after the freed node. </p>

<p>Definition at line <a class="el" href="glist_8c_source.html#l00257">257</a> of file <a class="el" href="glist_8c_source.html">glist.c</a>.</p>

<p>References <a class="el" href="ckd__alloc_8c_source.html#l00241">ckd_free()</a>, <a class="el" href="glist_8c_source.html#l00257">gnode_free()</a>, and <a class="el" href="glist_8h_source.html#l00102">gnode_s::next</a>.</p>

<p>Referenced by <a class="el" href="glist_8c_source.html#l00257">gnode_free()</a>.</p>

</div>
</div>
</div>
</div>
  <div id="nav-path" class="navpath">
    <ul>
      <li class="navelem"><a class="el" href="glist_8h.html">glist.h</a>      </li>
      <li class="footer">Generated on Tue Apr 19 2011 for SphinxBase by&#160;
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.3 </li>
    </ul>
  </div>

</body>
</html>