Sophie

Sophie

distrib > Mandriva > 2010.0 > i586 > media > contrib-release > by-pkgid > 874255f3b26b44feb57fbe38a7384518 > files > 209

gmerlin-0.4.1-2mdv2010.0.i586.rpm

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
<title>gmerlin: Parameter description</title>
<link href="tabs.css" rel="stylesheet" type="text/css">
<link href="doxygen.css" rel="stylesheet" type="text/css">
</head><body>
<!-- Generated by Doxygen 1.5.9 -->
<div class="navigation" id="top">
  <div class="tabs">
    <ul>
      <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
      <li><a href="pages.html"><span>Related&nbsp;Pages</span></a></li>
      <li><a href="modules.html"><span>Modules</span></a></li>
      <li><a href="annotated.html"><span>Data&nbsp;Structures</span></a></li>
      <li><a href="files.html"><span>Files</span></a></li>
      <li><a href="dirs.html"><span>Directories</span></a></li>
    </ul>
  </div>
</div>
<div class="contents">
<h1>Parameter description</h1><table border="0" cellpadding="0" cellspacing="0">
<tr><td></td></tr>
<tr><td colspan="2"><br><h2>Data Structures</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">union &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="unionbg__parameter__value__t.html">bg_parameter_value_t</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Container for a parameter value.  <a href="unionbg__parameter__value__t.html#_details">More...</a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">struct &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structbg__parameter__info__s.html">bg_parameter_info_s</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Parmeter description.  <a href="structbg__parameter__info__s.html#_details">More...</a><br></td></tr>
<tr><td colspan="2"><br><h2>Defines</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__parameter.html#g29d6b1f41653160fc8f7f0be0cbe9d9e">BG_PARAMETER_SYNC</a>&nbsp;&nbsp;&nbsp;(1&lt;&lt;0)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Apply the value whenever the widgets value changes.  <a href="#g29d6b1f41653160fc8f7f0be0cbe9d9e"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__parameter.html#g2293456ab6e3f3b332642e1f8561d559">BG_PARAMETER_HIDE_DIALOG</a>&nbsp;&nbsp;&nbsp;(1&lt;&lt;1)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Don't make a configuration widget (for objects, which change values themselves).  <a href="#g2293456ab6e3f3b332642e1f8561d559"></a><br></td></tr>
<tr><td colspan="2"><br><h2>Typedefs</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef struct <a class="el" href="structbg__parameter__info__s.html">bg_parameter_info_s</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__parameter.html#g2acc6d9b0c4b04b8983128d3b7f54b01">bg_parameter_info_t</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Typedef for parmeter description.  <a href="#g2acc6d9b0c4b04b8983128d3b7f54b01"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef void(*&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__parameter.html#g2938a274fb8dd11ccb09b2443e21d9ab">bg_set_parameter_func_t</a> )(void *data, const char *name, const <a class="el" href="unionbg__parameter__value__t.html">bg_parameter_value_t</a> *v)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Generic prototype for setting parameters in a module.  <a href="#g2938a274fb8dd11ccb09b2443e21d9ab"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef int(*&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__parameter.html#g55a1c10315002062e6072aaab50f0e82">bg_get_parameter_func_t</a> )(void *data, const char *name, <a class="el" href="unionbg__parameter__value__t.html">bg_parameter_value_t</a> *v)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Generic prototype for getting parameters from a module.  <a href="#g55a1c10315002062e6072aaab50f0e82"></a><br></td></tr>
<tr><td colspan="2"><br><h2>Enumerations</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">enum &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__parameter.html#g485cb1ae1f850f1d28241425e9555a2c">bg_parameter_type_t</a> { <br>
&nbsp;&nbsp;<a class="el" href="group__parameter.html#gg485cb1ae1f850f1d28241425e9555a2c25092139aa62c72322d6af45010988eb">BG_PARAMETER_SECTION</a>, 
<br>
&nbsp;&nbsp;<a class="el" href="group__parameter.html#gg485cb1ae1f850f1d28241425e9555a2cebdf145ac02247281276038831853660">BG_PARAMETER_CHECKBUTTON</a>, 
<br>
&nbsp;&nbsp;<a class="el" href="group__parameter.html#gg485cb1ae1f850f1d28241425e9555a2c51190e0dc82927424c40b5f61065e9b5">BG_PARAMETER_INT</a>, 
<br>
&nbsp;&nbsp;<a class="el" href="group__parameter.html#gg485cb1ae1f850f1d28241425e9555a2c6d86c0ec6f5b546d466e03592164e50d">BG_PARAMETER_FLOAT</a>, 
<br>
&nbsp;&nbsp;<a class="el" href="group__parameter.html#gg485cb1ae1f850f1d28241425e9555a2cef38d41b53ab4ce303724f2d46d73589">BG_PARAMETER_SLIDER_INT</a>, 
<br>
&nbsp;&nbsp;<a class="el" href="group__parameter.html#gg485cb1ae1f850f1d28241425e9555a2c52a7773f9a37d77d697331c9d3cf3c31">BG_PARAMETER_SLIDER_FLOAT</a>, 
<br>
&nbsp;&nbsp;<a class="el" href="group__parameter.html#gg485cb1ae1f850f1d28241425e9555a2cbea75f0e743bba8872db286945d4a48c">BG_PARAMETER_STRING</a>, 
<br>
&nbsp;&nbsp;<a class="el" href="group__parameter.html#gg485cb1ae1f850f1d28241425e9555a2c6dd38a507e5c0d970a7b5221432457f8">BG_PARAMETER_STRING_HIDDEN</a>, 
<br>
&nbsp;&nbsp;<a class="el" href="group__parameter.html#gg485cb1ae1f850f1d28241425e9555a2c68a1ee4db8dddfb2b330292a9a4b57f0">BG_PARAMETER_STRINGLIST</a>, 
<br>
&nbsp;&nbsp;<a class="el" href="group__parameter.html#gg485cb1ae1f850f1d28241425e9555a2c51fc0d7b0f71970831a751cf6f972735">BG_PARAMETER_COLOR_RGB</a>, 
<br>
&nbsp;&nbsp;<a class="el" href="group__parameter.html#gg485cb1ae1f850f1d28241425e9555a2c2b24485d870b7d3f7cd78830cb1a85b5">BG_PARAMETER_COLOR_RGBA</a>, 
<br>
&nbsp;&nbsp;<a class="el" href="group__parameter.html#gg485cb1ae1f850f1d28241425e9555a2cd370b957575639c91d0d0bbc9b7875fa">BG_PARAMETER_FONT</a>, 
<br>
&nbsp;&nbsp;<a class="el" href="group__parameter.html#gg485cb1ae1f850f1d28241425e9555a2c98aedec58df3ff6f4ea62ae6b6e3812a">BG_PARAMETER_DEVICE</a>, 
<br>
&nbsp;&nbsp;<a class="el" href="group__parameter.html#gg485cb1ae1f850f1d28241425e9555a2c5a342226a50a884e83a35d5f6be7c380">BG_PARAMETER_FILE</a>, 
<br>
&nbsp;&nbsp;<a class="el" href="group__parameter.html#gg485cb1ae1f850f1d28241425e9555a2ceb5c2655cdb61bf69e972d58f0754143">BG_PARAMETER_DIRECTORY</a>, 
<br>
&nbsp;&nbsp;<a class="el" href="group__parameter.html#gg485cb1ae1f850f1d28241425e9555a2c812906528e74bdea167c526522798635">BG_PARAMETER_MULTI_MENU</a>, 
<br>
&nbsp;&nbsp;<a class="el" href="group__parameter.html#gg485cb1ae1f850f1d28241425e9555a2cad31fcd30df8574b4cdead5a35868df9">BG_PARAMETER_MULTI_LIST</a>, 
<br>
&nbsp;&nbsp;<a class="el" href="group__parameter.html#gg485cb1ae1f850f1d28241425e9555a2cea2d16d14ae816ee5ed471f86624a23c">BG_PARAMETER_MULTI_CHAIN</a>, 
<br>
&nbsp;&nbsp;<a class="el" href="group__parameter.html#gg485cb1ae1f850f1d28241425e9555a2c5c75b46116ea6ac57fbd068c8c3e26d3">BG_PARAMETER_TIME</a>, 
<br>
&nbsp;&nbsp;<a class="el" href="group__parameter.html#gg485cb1ae1f850f1d28241425e9555a2cf9c597ad57ab289dfd9ea5eccc6669cf">BG_PARAMETER_POSITION</a>, 
<br>
&nbsp;&nbsp;<a class="el" href="group__parameter.html#gg485cb1ae1f850f1d28241425e9555a2c2fa9bd874ced11134614ebd57ca11b82">BG_PARAMETER_BUTTON</a>
<br>
 }</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Parameter type.  <a href="group__parameter.html#g485cb1ae1f850f1d28241425e9555a2c">More...</a><br></td></tr>
<tr><td colspan="2"><br><h2>Functions</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="structbg__parameter__info__s.html">bg_parameter_info_t</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__parameter.html#g9a239948bcaf809ecb797851fd9f14d8">bg_parameter_info_copy_array</a> (const <a class="el" href="structbg__parameter__info__s.html">bg_parameter_info_t</a> *src)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Copy a NULL terminated parameter array.  <a href="#g9a239948bcaf809ecb797851fd9f14d8"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__parameter.html#g6775e05f6960267b839b1a9ce9e03f22">bg_parameter_info_set_const_ptrs</a> (<a class="el" href="structbg__parameter__info__s.html">bg_parameter_info_t</a> *info)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set the const pointers of a dynamically allocated parameter info.  <a href="#g6775e05f6960267b839b1a9ce9e03f22"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__parameter.html#g811d088d112d402b4f1ef398b35164e9">bg_parameter_info_copy</a> (<a class="el" href="structbg__parameter__info__s.html">bg_parameter_info_t</a> *dst, const <a class="el" href="structbg__parameter__info__s.html">bg_parameter_info_t</a> *src)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Copy a single parameter description.  <a href="#g811d088d112d402b4f1ef398b35164e9"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__parameter.html#g394bbc66cc56d03f762fd53d1b55cca9">bg_parameter_info_destroy_array</a> (<a class="el" href="structbg__parameter__info__s.html">bg_parameter_info_t</a> *info)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Free a NULL terminated parameter array.  <a href="#g394bbc66cc56d03f762fd53d1b55cca9"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__parameter.html#g0f97ab6754e8064506bec87d3fdd2b66">bg_parameter_value_copy</a> (<a class="el" href="unionbg__parameter__value__t.html">bg_parameter_value_t</a> *dst, const <a class="el" href="unionbg__parameter__value__t.html">bg_parameter_value_t</a> *src, const <a class="el" href="structbg__parameter__info__s.html">bg_parameter_info_t</a> *info)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Copy a parameter value.  <a href="#g0f97ab6754e8064506bec87d3fdd2b66"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__parameter.html#g1722917f8a346c5a8dae7178a5e84522">bg_parameter_value_free</a> (<a class="el" href="unionbg__parameter__value__t.html">bg_parameter_value_t</a> *val, <a class="el" href="group__parameter.html#g485cb1ae1f850f1d28241425e9555a2c">bg_parameter_type_t</a> type)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Free a parameter value.  <a href="#g1722917f8a346c5a8dae7178a5e84522"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="structbg__parameter__info__s.html">bg_parameter_info_t</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__parameter.html#g16c7a1ac408ea8840018c627d742bd51">bg_parameter_info_concat_arrays</a> (<a class="el" href="structbg__parameter__info__s.html">bg_parameter_info_t</a> const **srcs)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Concatenate multiple arrays into one.  <a href="#g16c7a1ac408ea8840018c627d742bd51"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__parameter.html#g38d92459a765c23f59a754bc1386cd83">bg_parameter_get_selected</a> (const <a class="el" href="structbg__parameter__info__s.html">bg_parameter_info_t</a> *info, const char *val)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the index for a multi-options parameter.  <a href="#g38d92459a765c23f59a754bc1386cd83"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">const <a class="el" href="structbg__parameter__info__s.html">bg_parameter_info_t</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__parameter.html#g39f54bd272e557b5d55e6b7290a5dcb4">bg_parameter_find</a> (const <a class="el" href="structbg__parameter__info__s.html">bg_parameter_info_t</a> *info, const char *name)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Find a parameter info.  <a href="#g39f54bd272e557b5d55e6b7290a5dcb4"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="structbg__parameter__info__s.html">bg_parameter_info_t</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__parameter.html#gf79bfb7a44e89f9882cd99d6123066ec">bg_xml_2_parameters</a> (xmlDocPtr xml_doc, xmlNodePtr xml_parameters)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Convert a libxml2 node into a parameter array.  <a href="#gf79bfb7a44e89f9882cd99d6123066ec"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__parameter.html#g8efd0779e8c6e3425bc345a0d99e3374">bg_parameters_2_xml</a> (const <a class="el" href="structbg__parameter__info__s.html">bg_parameter_info_t</a> *info, xmlNodePtr xml_parameters)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Convert a parameter array into a libxml2 node.  <a href="#g8efd0779e8c6e3425bc345a0d99e3374"></a><br></td></tr>
</table>
<hr><a name="_details"></a><h2>Detailed Description</h2>
Parameters are universal data containers, which are the basis for all configuration mechanisms.<p>
A configurable module foo, should provide at least 2 functions. One, which lets the application get a null-terminated array of parameter description and one of type <a class="el" href="group__parameter.html#g2938a274fb8dd11ccb09b2443e21d9ab">bg_set_parameter_func_t</a>. It's up to the module, if the parameter array is allocated per instance or if it's just a static array. Some parameters (e.g. window coordinates) are not configured by a dialog. Instead, they are changed by the module. For these parameters, set <a class="el" href="group__parameter.html#g2293456ab6e3f3b332642e1f8561d559">BG_PARAMETER_HIDE_DIALOG</a> for the flags and provide another function of type <a class="el" href="group__parameter.html#g55a1c10315002062e6072aaab50f0e82">bg_get_parameter_func_t</a>, which lets the core read the updated value. <hr><h2>Define Documentation</h2>
<a class="anchor" name="g29d6b1f41653160fc8f7f0be0cbe9d9e"></a><!-- doxytag: member="parameter.h::BG_PARAMETER_SYNC" ref="g29d6b1f41653160fc8f7f0be0cbe9d9e" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define BG_PARAMETER_SYNC&nbsp;&nbsp;&nbsp;(1&lt;&lt;0)          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Apply the value whenever the widgets value changes. 
<p>

</div>
</div><p>
<a class="anchor" name="g2293456ab6e3f3b332642e1f8561d559"></a><!-- doxytag: member="parameter.h::BG_PARAMETER_HIDE_DIALOG" ref="g2293456ab6e3f3b332642e1f8561d559" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define BG_PARAMETER_HIDE_DIALOG&nbsp;&nbsp;&nbsp;(1&lt;&lt;1)          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Don't make a configuration widget (for objects, which change values themselves). 
<p>

</div>
</div><p>
<hr><h2>Typedef Documentation</h2>
<a class="anchor" name="g2acc6d9b0c4b04b8983128d3b7f54b01"></a><!-- doxytag: member="parameter.h::bg_parameter_info_t" ref="g2acc6d9b0c4b04b8983128d3b7f54b01" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef struct <a class="el" href="structbg__parameter__info__s.html">bg_parameter_info_s</a> <a class="el" href="structbg__parameter__info__s.html">bg_parameter_info_t</a>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Typedef for parmeter description. 
<p>

</div>
</div><p>
<a class="anchor" name="g2938a274fb8dd11ccb09b2443e21d9ab"></a><!-- doxytag: member="parameter.h::bg_set_parameter_func_t" ref="g2938a274fb8dd11ccb09b2443e21d9ab" args=")(void *data, const char *name, const bg_parameter_value_t *v)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef void(* <a class="el" href="group__parameter.html#g2938a274fb8dd11ccb09b2443e21d9ab">bg_set_parameter_func_t</a>)(void *data, const char *name, const <a class="el" href="unionbg__parameter__value__t.html">bg_parameter_value_t</a> *v)          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Generic prototype for setting parameters in a module. 
<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>data</em>&nbsp;</td><td>Instance </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>name</em>&nbsp;</td><td>Name of the parameter </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>v</em>&nbsp;</td><td>Value</td></tr>
  </table>
</dl>
This function is usually called from "Apply" buttons in config dialogs. It's called subsequently for all defined püarameters. After that, it *must* be called with a NULL argument for the name to signal, that all parameters are set. Modules can do some additional setup stuff then. If not, the name == NULL case must be handled nevertheless. 
</div>
</div><p>
<a class="anchor" name="g55a1c10315002062e6072aaab50f0e82"></a><!-- doxytag: member="parameter.h::bg_get_parameter_func_t" ref="g55a1c10315002062e6072aaab50f0e82" args=")(void *data, const char *name, bg_parameter_value_t *v)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef int(* <a class="el" href="group__parameter.html#g55a1c10315002062e6072aaab50f0e82">bg_get_parameter_func_t</a>)(void *data, const char *name, <a class="el" href="unionbg__parameter__value__t.html">bg_parameter_value_t</a> *v)          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Generic prototype for getting parameters from a module. 
<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>data</em>&nbsp;</td><td>Instance </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>name</em>&nbsp;</td><td>Name of the parameter </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>v</em>&nbsp;</td><td>Value</td></tr>
  </table>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>1 if a parameter was found and set, 0 else.</dd></dl>
Provide this function, if your module changes parameters by itself. Set the <a class="el" href="group__parameter.html#g2293456ab6e3f3b332642e1f8561d559">BG_PARAMETER_HIDE_DIALOG</a> to prevent building config dialogs for those parameters. 
</div>
</div><p>
<hr><h2>Enumeration Type Documentation</h2>
<a class="anchor" name="g485cb1ae1f850f1d28241425e9555a2c"></a><!-- doxytag: member="parameter.h::bg_parameter_type_t" ref="g485cb1ae1f850f1d28241425e9555a2c" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">enum <a class="el" href="group__parameter.html#g485cb1ae1f850f1d28241425e9555a2c">bg_parameter_type_t</a>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Parameter type. 
<p>
These define both the data type and the appearance of an eventual configuration widget. <dl compact><dt><b>Enumerator: </b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"><em><a class="anchor" name="gg485cb1ae1f850f1d28241425e9555a2c25092139aa62c72322d6af45010988eb"></a><!-- doxytag: member="BG_PARAMETER_SECTION" ref="gg485cb1ae1f850f1d28241425e9555a2c25092139aa62c72322d6af45010988eb" args="" -->BG_PARAMETER_SECTION</em>&nbsp;</td><td>
Dummy type. It contains no data but acts as a separator in notebook style configuration windows. </td></tr>
<tr><td valign="top"><em><a class="anchor" name="gg485cb1ae1f850f1d28241425e9555a2cebdf145ac02247281276038831853660"></a><!-- doxytag: member="BG_PARAMETER_CHECKBUTTON" ref="gg485cb1ae1f850f1d28241425e9555a2cebdf145ac02247281276038831853660" args="" -->BG_PARAMETER_CHECKBUTTON</em>&nbsp;</td><td>
Bool. </td></tr>
<tr><td valign="top"><em><a class="anchor" name="gg485cb1ae1f850f1d28241425e9555a2c51190e0dc82927424c40b5f61065e9b5"></a><!-- doxytag: member="BG_PARAMETER_INT" ref="gg485cb1ae1f850f1d28241425e9555a2c51190e0dc82927424c40b5f61065e9b5" args="" -->BG_PARAMETER_INT</em>&nbsp;</td><td>
Integer spinbutton. </td></tr>
<tr><td valign="top"><em><a class="anchor" name="gg485cb1ae1f850f1d28241425e9555a2c6d86c0ec6f5b546d466e03592164e50d"></a><!-- doxytag: member="BG_PARAMETER_FLOAT" ref="gg485cb1ae1f850f1d28241425e9555a2c6d86c0ec6f5b546d466e03592164e50d" args="" -->BG_PARAMETER_FLOAT</em>&nbsp;</td><td>
Float spinbutton. </td></tr>
<tr><td valign="top"><em><a class="anchor" name="gg485cb1ae1f850f1d28241425e9555a2cef38d41b53ab4ce303724f2d46d73589"></a><!-- doxytag: member="BG_PARAMETER_SLIDER_INT" ref="gg485cb1ae1f850f1d28241425e9555a2cef38d41b53ab4ce303724f2d46d73589" args="" -->BG_PARAMETER_SLIDER_INT</em>&nbsp;</td><td>
Integer slider. </td></tr>
<tr><td valign="top"><em><a class="anchor" name="gg485cb1ae1f850f1d28241425e9555a2c52a7773f9a37d77d697331c9d3cf3c31"></a><!-- doxytag: member="BG_PARAMETER_SLIDER_FLOAT" ref="gg485cb1ae1f850f1d28241425e9555a2c52a7773f9a37d77d697331c9d3cf3c31" args="" -->BG_PARAMETER_SLIDER_FLOAT</em>&nbsp;</td><td>
Float slider. </td></tr>
<tr><td valign="top"><em><a class="anchor" name="gg485cb1ae1f850f1d28241425e9555a2cbea75f0e743bba8872db286945d4a48c"></a><!-- doxytag: member="BG_PARAMETER_STRING" ref="gg485cb1ae1f850f1d28241425e9555a2cbea75f0e743bba8872db286945d4a48c" args="" -->BG_PARAMETER_STRING</em>&nbsp;</td><td>
String (one line only). </td></tr>
<tr><td valign="top"><em><a class="anchor" name="gg485cb1ae1f850f1d28241425e9555a2c6dd38a507e5c0d970a7b5221432457f8"></a><!-- doxytag: member="BG_PARAMETER_STRING_HIDDEN" ref="gg485cb1ae1f850f1d28241425e9555a2c6dd38a507e5c0d970a7b5221432457f8" args="" -->BG_PARAMETER_STRING_HIDDEN</em>&nbsp;</td><td>
Encrypted string (displays as ***). </td></tr>
<tr><td valign="top"><em><a class="anchor" name="gg485cb1ae1f850f1d28241425e9555a2c68a1ee4db8dddfb2b330292a9a4b57f0"></a><!-- doxytag: member="BG_PARAMETER_STRINGLIST" ref="gg485cb1ae1f850f1d28241425e9555a2c68a1ee4db8dddfb2b330292a9a4b57f0" args="" -->BG_PARAMETER_STRINGLIST</em>&nbsp;</td><td>
Popdown menu with string values. </td></tr>
<tr><td valign="top"><em><a class="anchor" name="gg485cb1ae1f850f1d28241425e9555a2c51fc0d7b0f71970831a751cf6f972735"></a><!-- doxytag: member="BG_PARAMETER_COLOR_RGB" ref="gg485cb1ae1f850f1d28241425e9555a2c51fc0d7b0f71970831a751cf6f972735" args="" -->BG_PARAMETER_COLOR_RGB</em>&nbsp;</td><td>
RGB Color. </td></tr>
<tr><td valign="top"><em><a class="anchor" name="gg485cb1ae1f850f1d28241425e9555a2c2b24485d870b7d3f7cd78830cb1a85b5"></a><!-- doxytag: member="BG_PARAMETER_COLOR_RGBA" ref="gg485cb1ae1f850f1d28241425e9555a2c2b24485d870b7d3f7cd78830cb1a85b5" args="" -->BG_PARAMETER_COLOR_RGBA</em>&nbsp;</td><td>
RGBA Color. </td></tr>
<tr><td valign="top"><em><a class="anchor" name="gg485cb1ae1f850f1d28241425e9555a2cd370b957575639c91d0d0bbc9b7875fa"></a><!-- doxytag: member="BG_PARAMETER_FONT" ref="gg485cb1ae1f850f1d28241425e9555a2cd370b957575639c91d0d0bbc9b7875fa" args="" -->BG_PARAMETER_FONT</em>&nbsp;</td><td>
Font (contains fontconfig compatible fontname). </td></tr>
<tr><td valign="top"><em><a class="anchor" name="gg485cb1ae1f850f1d28241425e9555a2c98aedec58df3ff6f4ea62ae6b6e3812a"></a><!-- doxytag: member="BG_PARAMETER_DEVICE" ref="gg485cb1ae1f850f1d28241425e9555a2c98aedec58df3ff6f4ea62ae6b6e3812a" args="" -->BG_PARAMETER_DEVICE</em>&nbsp;</td><td>
Device. </td></tr>
<tr><td valign="top"><em><a class="anchor" name="gg485cb1ae1f850f1d28241425e9555a2c5a342226a50a884e83a35d5f6be7c380"></a><!-- doxytag: member="BG_PARAMETER_FILE" ref="gg485cb1ae1f850f1d28241425e9555a2c5a342226a50a884e83a35d5f6be7c380" args="" -->BG_PARAMETER_FILE</em>&nbsp;</td><td>
File. </td></tr>
<tr><td valign="top"><em><a class="anchor" name="gg485cb1ae1f850f1d28241425e9555a2ceb5c2655cdb61bf69e972d58f0754143"></a><!-- doxytag: member="BG_PARAMETER_DIRECTORY" ref="gg485cb1ae1f850f1d28241425e9555a2ceb5c2655cdb61bf69e972d58f0754143" args="" -->BG_PARAMETER_DIRECTORY</em>&nbsp;</td><td>
Directory. </td></tr>
<tr><td valign="top"><em><a class="anchor" name="gg485cb1ae1f850f1d28241425e9555a2c812906528e74bdea167c526522798635"></a><!-- doxytag: member="BG_PARAMETER_MULTI_MENU" ref="gg485cb1ae1f850f1d28241425e9555a2c812906528e74bdea167c526522798635" args="" -->BG_PARAMETER_MULTI_MENU</em>&nbsp;</td><td>
Menu with config- and infobutton. </td></tr>
<tr><td valign="top"><em><a class="anchor" name="gg485cb1ae1f850f1d28241425e9555a2cad31fcd30df8574b4cdead5a35868df9"></a><!-- doxytag: member="BG_PARAMETER_MULTI_LIST" ref="gg485cb1ae1f850f1d28241425e9555a2cad31fcd30df8574b4cdead5a35868df9" args="" -->BG_PARAMETER_MULTI_LIST</em>&nbsp;</td><td>
List with config- and infobutton. </td></tr>
<tr><td valign="top"><em><a class="anchor" name="gg485cb1ae1f850f1d28241425e9555a2cea2d16d14ae816ee5ed471f86624a23c"></a><!-- doxytag: member="BG_PARAMETER_MULTI_CHAIN" ref="gg485cb1ae1f850f1d28241425e9555a2cea2d16d14ae816ee5ed471f86624a23c" args="" -->BG_PARAMETER_MULTI_CHAIN</em>&nbsp;</td><td>
Several subitems (including suboptions) can be arranged in a chain. </td></tr>
<tr><td valign="top"><em><a class="anchor" name="gg485cb1ae1f850f1d28241425e9555a2c5c75b46116ea6ac57fbd068c8c3e26d3"></a><!-- doxytag: member="BG_PARAMETER_TIME" ref="gg485cb1ae1f850f1d28241425e9555a2c5c75b46116ea6ac57fbd068c8c3e26d3" args="" -->BG_PARAMETER_TIME</em>&nbsp;</td><td>
Time. </td></tr>
<tr><td valign="top"><em><a class="anchor" name="gg485cb1ae1f850f1d28241425e9555a2cf9c597ad57ab289dfd9ea5eccc6669cf"></a><!-- doxytag: member="BG_PARAMETER_POSITION" ref="gg485cb1ae1f850f1d28241425e9555a2cf9c597ad57ab289dfd9ea5eccc6669cf" args="" -->BG_PARAMETER_POSITION</em>&nbsp;</td><td>
Position (x/y coordinates, scaled 0..1). </td></tr>
<tr><td valign="top"><em><a class="anchor" name="gg485cb1ae1f850f1d28241425e9555a2c2fa9bd874ced11134614ebd57ca11b82"></a><!-- doxytag: member="BG_PARAMETER_BUTTON" ref="gg485cb1ae1f850f1d28241425e9555a2c2fa9bd874ced11134614ebd57ca11b82" args="" -->BG_PARAMETER_BUTTON</em>&nbsp;</td><td>
Pressing the button causes set_parameter to be called with NULL value. </td></tr>
</table>
</dl>

</div>
</div><p>
<hr><h2>Function Documentation</h2>
<a class="anchor" name="g9a239948bcaf809ecb797851fd9f14d8"></a><!-- doxytag: member="parameter.h::bg_parameter_info_copy_array" ref="g9a239948bcaf809ecb797851fd9f14d8" args="(const bg_parameter_info_t *src)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="structbg__parameter__info__s.html">bg_parameter_info_t</a>* bg_parameter_info_copy_array           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="structbg__parameter__info__s.html">bg_parameter_info_t</a> *&nbsp;</td>
          <td class="paramname"> <em>src</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Copy a NULL terminated parameter array. 
<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>src</em>&nbsp;</td><td>Source array</td></tr>
  </table>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>A newly allocated parameter array, whose contents are copied from src.</dd></dl>
Use <a class="el" href="group__parameter.html#g394bbc66cc56d03f762fd53d1b55cca9">bg_parameter_info_destroy_array</a> to free the returned array. 
</div>
</div><p>
<a class="anchor" name="g6775e05f6960267b839b1a9ce9e03f22"></a><!-- doxytag: member="parameter.h::bg_parameter_info_set_const_ptrs" ref="g6775e05f6960267b839b1a9ce9e03f22" args="(bg_parameter_info_t *info)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void bg_parameter_info_set_const_ptrs           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structbg__parameter__info__s.html">bg_parameter_info_t</a> *&nbsp;</td>
          <td class="paramname"> <em>info</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Set the const pointers of a dynamically allocated parameter info. 
<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>info</em>&nbsp;</td><td>A parameter info</td></tr>
  </table>
</dl>
This copied the adresses of the *_nc pointers to their constant equivalents. Use this for each parameter in routines, which dynamically allocate parameter infos. 
</div>
</div><p>
<a class="anchor" name="g811d088d112d402b4f1ef398b35164e9"></a><!-- doxytag: member="parameter.h::bg_parameter_info_copy" ref="g811d088d112d402b4f1ef398b35164e9" args="(bg_parameter_info_t *dst, const bg_parameter_info_t *src)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void bg_parameter_info_copy           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structbg__parameter__info__s.html">bg_parameter_info_t</a> *&nbsp;</td>
          <td class="paramname"> <em>dst</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="structbg__parameter__info__s.html">bg_parameter_info_t</a> *&nbsp;</td>
          <td class="paramname"> <em>src</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Copy a single parameter description. 
<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>dst</em>&nbsp;</td><td>Destination parameter description </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>src</em>&nbsp;</td><td>Source parameter description</td></tr>
  </table>
</dl>
Make sure, that src is memset to 0 before calling this. 
</div>
</div><p>
<a class="anchor" name="g394bbc66cc56d03f762fd53d1b55cca9"></a><!-- doxytag: member="parameter.h::bg_parameter_info_destroy_array" ref="g394bbc66cc56d03f762fd53d1b55cca9" args="(bg_parameter_info_t *info)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void bg_parameter_info_destroy_array           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structbg__parameter__info__s.html">bg_parameter_info_t</a> *&nbsp;</td>
          <td class="paramname"> <em>info</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Free a NULL terminated parameter array. 
<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>info</em>&nbsp;</td><td>Parameter array </td></tr>
  </table>
</dl>

</div>
</div><p>
<a class="anchor" name="g0f97ab6754e8064506bec87d3fdd2b66"></a><!-- doxytag: member="parameter.h::bg_parameter_value_copy" ref="g0f97ab6754e8064506bec87d3fdd2b66" args="(bg_parameter_value_t *dst, const bg_parameter_value_t *src, const bg_parameter_info_t *info)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void bg_parameter_value_copy           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="unionbg__parameter__value__t.html">bg_parameter_value_t</a> *&nbsp;</td>
          <td class="paramname"> <em>dst</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="unionbg__parameter__value__t.html">bg_parameter_value_t</a> *&nbsp;</td>
          <td class="paramname"> <em>src</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="structbg__parameter__info__s.html">bg_parameter_info_t</a> *&nbsp;</td>
          <td class="paramname"> <em>info</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Copy a parameter value. 
<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>dst</em>&nbsp;</td><td>Destination </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>src</em>&nbsp;</td><td>Source </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>info</em>&nbsp;</td><td>Parameter description</td></tr>
  </table>
</dl>
Make sure, that dst is either memset to 0 or contains data, which was created by <a class="el" href="group__parameter.html#g0f97ab6754e8064506bec87d3fdd2b66">bg_parameter_value_copy</a> 
</div>
</div><p>
<a class="anchor" name="g1722917f8a346c5a8dae7178a5e84522"></a><!-- doxytag: member="parameter.h::bg_parameter_value_free" ref="g1722917f8a346c5a8dae7178a5e84522" args="(bg_parameter_value_t *val, bg_parameter_type_t type)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void bg_parameter_value_free           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="unionbg__parameter__value__t.html">bg_parameter_value_t</a> *&nbsp;</td>
          <td class="paramname"> <em>val</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__parameter.html#g485cb1ae1f850f1d28241425e9555a2c">bg_parameter_type_t</a>&nbsp;</td>
          <td class="paramname"> <em>type</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Free a parameter value. 
<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>val</em>&nbsp;</td><td>A parameter value </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>type</em>&nbsp;</td><td>Type of the parameter </td></tr>
  </table>
</dl>

</div>
</div><p>
<a class="anchor" name="g16c7a1ac408ea8840018c627d742bd51"></a><!-- doxytag: member="parameter.h::bg_parameter_info_concat_arrays" ref="g16c7a1ac408ea8840018c627d742bd51" args="(bg_parameter_info_t const **srcs)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="structbg__parameter__info__s.html">bg_parameter_info_t</a>* bg_parameter_info_concat_arrays           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structbg__parameter__info__s.html">bg_parameter_info_t</a> const **&nbsp;</td>
          <td class="paramname"> <em>srcs</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Concatenate multiple arrays into one. 
<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>srcs</em>&nbsp;</td><td>NULL terminated array of source arrays </td></tr>
  </table>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>A newly allocated array </dd></dl>

</div>
</div><p>
<a class="anchor" name="g38d92459a765c23f59a754bc1386cd83"></a><!-- doxytag: member="parameter.h::bg_parameter_get_selected" ref="g38d92459a765c23f59a754bc1386cd83" args="(const bg_parameter_info_t *info, const char *val)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int bg_parameter_get_selected           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="structbg__parameter__info__s.html">bg_parameter_info_t</a> *&nbsp;</td>
          <td class="paramname"> <em>info</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>val</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Get the index for a multi-options parameter. 
<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>info</em>&nbsp;</td><td>A parameter info </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>val</em>&nbsp;</td><td>The value </td></tr>
  </table>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>The index of val in the multi_names array</dd></dl>
If val does not occur in the multi_names[] array, try the default value. If that fails as well, return 0. 
</div>
</div><p>
<a class="anchor" name="g39f54bd272e557b5d55e6b7290a5dcb4"></a><!-- doxytag: member="parameter.h::bg_parameter_find" ref="g39f54bd272e557b5d55e6b7290a5dcb4" args="(const bg_parameter_info_t *info, const char *name)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const <a class="el" href="structbg__parameter__info__s.html">bg_parameter_info_t</a>* bg_parameter_find           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="structbg__parameter__info__s.html">bg_parameter_info_t</a> *&nbsp;</td>
          <td class="paramname"> <em>info</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>name</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Find a parameter info. 
<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>info</em>&nbsp;</td><td>A parameter info </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>name</em>&nbsp;</td><td>The name of the the parameter </td></tr>
  </table>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>Parameter info matching name or NULL</dd></dl>
This function looks for a parameter info with the given name in an array or parameters. Sub-parameters are also searched. 
</div>
</div><p>
<a class="anchor" name="gf79bfb7a44e89f9882cd99d6123066ec"></a><!-- doxytag: member="parameter.h::bg_xml_2_parameters" ref="gf79bfb7a44e89f9882cd99d6123066ec" args="(xmlDocPtr xml_doc, xmlNodePtr xml_parameters)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="structbg__parameter__info__s.html">bg_parameter_info_t</a>* bg_xml_2_parameters           </td>
          <td>(</td>
          <td class="paramtype">xmlDocPtr&nbsp;</td>
          <td class="paramname"> <em>xml_doc</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">xmlNodePtr&nbsp;</td>
          <td class="paramname"> <em>xml_parameters</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Convert a libxml2 node into a parameter array. 
<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>xml_doc</em>&nbsp;</td><td>Pointer to the xml document </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>xml_parameters</em>&nbsp;</td><td>Pointer to the xml node containing the parameters </td></tr>
  </table>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>A newly allocated array</dd></dl>
See the libxml2 documentation for more infos 
</div>
</div><p>
<a class="anchor" name="g8efd0779e8c6e3425bc345a0d99e3374"></a><!-- doxytag: member="parameter.h::bg_parameters_2_xml" ref="g8efd0779e8c6e3425bc345a0d99e3374" args="(const bg_parameter_info_t *info, xmlNodePtr xml_parameters)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void bg_parameters_2_xml           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="structbg__parameter__info__s.html">bg_parameter_info_t</a> *&nbsp;</td>
          <td class="paramname"> <em>info</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">xmlNodePtr&nbsp;</td>
          <td class="paramname"> <em>xml_parameters</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Convert a parameter array into a libxml2 node. 
<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>info</em>&nbsp;</td><td>Parameter array </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>xml_parameters</em>&nbsp;</td><td>Pointer to the xml node for the parameters</td></tr>
  </table>
</dl>
See the libxml2 documentation for more infos 
</div>
</div><p>
</div>
<hr size="1"><address style="text-align: right;"><small>Generated on Sat Aug 22 01:28:05 2009 for gmerlin by&nbsp;
<a href="http://www.doxygen.org/index.html">
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.9 </small></address>
</body>
</html>