Sophie

Sophie

distrib > Mandriva > 2010.0 > i586 > media > contrib-release > by-pkgid > bad97183153701b09df5fae1052b1c30 > files > 1203

crystalspace-doc-1.2.1-5mdv2010.0.i586.rpm

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>Crystal Space 1.2.1: csWin32RegistryConfig Class Reference (Crystal Space 1.2.1 Public API Reference)</title>
<link href="tabs.css" rel="stylesheet" type="text/css">
<link href="doxygen.css" rel="stylesheet" type="text/css">
</head><body>
<table border="0" cellpadding="0" cellspacing="0" width="100%" class="head">
 <tr height="59">
  <td class="head" width="202" valign="bottom" style="padding-left:0;"><a href="http://www.crystalspace3d.org/"><img src="csblur.png" width="236" height="59" alt="CrystalSpace" border="0"></a></td>
  <td class="head"><h2>Public API Reference</h2></td>
 </tr>
 <tr height="11">
  <td colspan="2" class="headshadow" valign="top" style="padding-left:0;"><img src="csblurb.png" width="236" height="11" alt="" border="0"></td>
 </tr>
</table>
<div class="content">
<!-- Generated by Doxygen 1.5.3 -->
<div class="tabs">
  <ul>
    <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
    <li><a href="modules.html"><span>Modules</span></a></li>
    <li><a href="namespaces.html"><span>Namespaces</span></a></li>
    <li class="current"><a href="classes.html"><span>Classes</span></a></li>
    <li><a href="files.html"><span>Files</span></a></li>
    <li><a href="pages.html"><span>Related&nbsp;Pages</span></a></li>
  </ul>
</div>
<div class="tabs">
  <ul>
    <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
    <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
    <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
    <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
  </ul>
</div>
<h1>csWin32RegistryConfig Class Reference</h1><!-- doxytag: class="csWin32RegistryConfig" --><!-- doxytag: inherits="scfImplementation1&lt; csWin32RegistryConfig, iConfigFile &gt;" -->An <a class="el" href="structiConfigFile.html" title="Configuration file interface.">iConfigFile</a>, storing the settings in the Windows registry.  
<a href="#_details">More...</a>
<p>
<code>#include &lt;<a class="el" href="registrycfg_8h-source.html">csutil/win32/registrycfg.h</a>&gt;</code>
<p>
<div class="dynheader">
Inheritance diagram for csWin32RegistryConfig:</div>
<div class="dynsection">
<p><center><img src="classcsWin32RegistryConfig__inherit__graph.png" border="0" usemap="#csWin32RegistryConfig__inherit__map" alt="Inheritance graph"></center>
<map name="csWin32RegistryConfig__inherit__map">
<area shape="rect" href="classscfImplementation1.html" title="scfImplementation1\&lt; csWin32RegistryConfig, iConfigFile \&gt;" alt="" coords="79,161,479,188"><area shape="rect" href="classscfImplementation.html" title="scfImplementation\&lt; csWin32RegistryConfig \&gt;" alt="" coords="5,84,325,111"><area shape="rect" href="structiBase.html" title="This is the basic interface: all other interfaces should be derived from this one..." alt="" coords="332,7,388,33"><area shape="rect" href="structiConfigFile.html" title="Configuration file interface." alt="" coords="349,84,435,111"><area shape="rect" href="classCS_1_1Memory_1_1CustomAllocated.html" title="Class that overrides operator new/operator delete/etc." alt="" coords="55,7,276,33"></map>
<center><font size="2">[<a href="graph_legend.html">legend</a>]</font></center></div>

<p>
<a href="classcsWin32RegistryConfig-members.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0">
<tr><td></td></tr>
<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsWin32RegistryConfig.html#c7f7575e742d0549f2a699bb4ffdba17">Clear</a> ()</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Delete all options and rewind all iterators.  <a href="#c7f7575e742d0549f2a699bb4ffdba17"></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="classcsWin32RegistryConfig.html#85f7f54f4ac7e74153a1e748454ff4f3">Close</a> ()</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Close the current registry key.  <a href="#85f7f54f4ac7e74153a1e748454ff4f3"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsWin32RegistryConfig.html#33035cf4c20b06cf5f828a9757e24af4">DeleteKey</a> (const char *Key)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Delete a key and its value and comment.  <a href="#33035cf4c20b06cf5f828a9757e24af4"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <a class="el" href="classcsPtr.html">csPtr</a><br>
&lt; <a class="el" href="structiConfigIterator.html">iConfigIterator</a> &gt;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsWin32RegistryConfig.html#c29298fbb929ed4dba97d57daf331775">Enumerate</a> (const char *Subsection=0)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Enumerate selected keys.  <a href="#c29298fbb929ed4dba97d57daf331775"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsWin32RegistryConfig.html#68b9ff7111fbae27326ac0ed265fba1c">GetBool</a> (const char *Key, bool Def=false) const </td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get a boolean value from the configuration.  <a href="#68b9ff7111fbae27326ac0ed265fba1c"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual const char *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsWin32RegistryConfig.html#dbff21a5476ca6a1e2d0a6f4f9b4d3c3">GetComment</a> (const char *Key) const </td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the comment of the given key, or 0 if no comment exists.  <a href="#dbff21a5476ca6a1e2d0a6f4f9b4d3c3"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual const char *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsWin32RegistryConfig.html#127186ba95646a877035dd16034867dc">GetEOFComment</a> () const </td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">return the final comment at the end of the configuration file  <a href="#127186ba95646a877035dd16034867dc"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual const char *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsWin32RegistryConfig.html#296ab62133b7b0418e4a5c2e340df2a4">GetFileName</a> () const </td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get configuration file name.  <a href="#296ab62133b7b0418e4a5c2e340df2a4"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual float&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsWin32RegistryConfig.html#06b408eed05fc2e77896f6ca9e3f0ee5">GetFloat</a> (const char *Key, float Def=0.0) const </td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get a float value from the configuration.  <a href="#06b408eed05fc2e77896f6ca9e3f0ee5"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsWin32RegistryConfig.html#01653ae73d610c0b52eb2d4cd7b72925">GetInt</a> (const char *Key, int Def=0) const </td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get an integer value from the configuration.  <a href="#01653ae73d610c0b52eb2d4cd7b72925"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual const char *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsWin32RegistryConfig.html#04325f7942794369b27142dedfe25a4a">GetStr</a> (const char *Key, const char *Def=&quot;&quot;) const </td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get a string value from the configuration.  <a href="#04325f7942794369b27142dedfe25a4a"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <a class="el" href="structiVFS.html">iVFS</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsWin32RegistryConfig.html#5f309ce1e0b982be5accdbad4896e1bf">GetVFS</a> () const </td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the VFS object on which this file is stored (if any).  <a href="#5f309ce1e0b982be5accdbad4896e1bf"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsWin32RegistryConfig.html#45f8a00b2de8434d2679ec19158af664">KeyExists</a> (const char *Key) const </td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Test if a key exists.  <a href="#45f8a00b2de8434d2679ec19158af664"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsWin32RegistryConfig.html#3f01c814ef0b4e966f491e3645fad565">Load</a> (const char *iFileName, <a class="el" href="structiVFS.html">iVFS</a> *=0, bool Merge=false, bool NewWins=true)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Load a configuration file.  <a href="#3f01c814ef0b4e966f491e3645fad565"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsWin32RegistryConfig.html#a9f2a5b99fc6835e24c5efb4176e5e3a">Open</a> (const char *Key, HKEY parent=HKEY_CURRENT_USER)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Open a registry key.  <a href="#a9f2a5b99fc6835e24c5efb4176e5e3a"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsWin32RegistryConfig.html#3a8b6f3197fe76a5ddf44c6b70af811d">Save</a> (const char *iFileName, <a class="el" href="structiVFS.html">iVFS</a> *=0)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Save configuration into the given file (on VFS or on the physical filesystem).  <a href="#3a8b6f3197fe76a5ddf44c6b70af811d"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsWin32RegistryConfig.html#60b982a8a96271cf70d36b89b740820f">Save</a> ()</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Save configuration to the same place from which it was loaded.  <a href="#60b982a8a96271cf70d36b89b740820f"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsWin32RegistryConfig.html#11fc03c6da5c97db62b3bc35a121dd95">SetBool</a> (const char *Key, bool Value)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set a boolean value.  <a href="#11fc03c6da5c97db62b3bc35a121dd95"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsWin32RegistryConfig.html#56de946a28e14d9702cc7c26c2b54031">SetComment</a> (const char *Key, const char *Text)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set the comment for given key.  <a href="#56de946a28e14d9702cc7c26c2b54031"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsWin32RegistryConfig.html#bd52bf1a5a93386e17a15ccf9cf8ef74">SetEOFComment</a> (const char *Text)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">set the final comment at the end of the configuration file  <a href="#bd52bf1a5a93386e17a15ccf9cf8ef74"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsWin32RegistryConfig.html#2b87d62f4a4b4c519f907611e4998d78">SetFileName</a> (const char *, <a class="el" href="structiVFS.html">iVFS</a> *)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set config file name.  <a href="#2b87d62f4a4b4c519f907611e4998d78"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsWin32RegistryConfig.html#1a40181d308a58a724ba72113cf5eed0">SetFloat</a> (const char *Key, float Value)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set a floating-point value.  <a href="#1a40181d308a58a724ba72113cf5eed0"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsWin32RegistryConfig.html#63e3f776010beea80ba85f72f76534e4">SetInt</a> (const char *Key, int Value)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set an integer value.  <a href="#63e3f776010beea80ba85f72f76534e4"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsWin32RegistryConfig.html#de3e146f04918761d1a2ebd779ee1e59">SetStr</a> (const char *Key, const char *Val)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set an null-terminated string value.  <a href="#de3e146f04918761d1a2ebd779ee1e59"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsWin32RegistryConfig.html#6e5d482e8c3448178fc50f45cc90fa9f">SubsectionExists</a> (const char *Subsection) const </td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Test if at least one key exists with the given Subsection prefix.  <a href="#6e5d482e8c3448178fc50f45cc90fa9f"></a><br></td></tr>
<tr><td colspan="2"><br><h2>Friends</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="2d7cd1dd491a4add6eb378c1b33139d1"></a><!-- doxytag: member="csWin32RegistryConfig::csWin32RegistryIterator" ref="2d7cd1dd491a4add6eb378c1b33139d1" args="" -->
class&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsWin32RegistryConfig.html#2d7cd1dd491a4add6eb378c1b33139d1">csWin32RegistryIterator</a></td></tr>

</table>
<hr><a name="_details"></a><h2>Detailed Description</h2>
An <a class="el" href="structiConfigFile.html" title="Configuration file interface.">iConfigFile</a>, storing the settings in the Windows registry. 
<p>
<dl class="remark" compact><dt><b>Remarks:</b></dt><dd>This class provides functionality specific to the Win32 platform. To ensure that code using this functionality compiles properly on all other platforms, the use of the class and inclusion of the header file should be surrounded by appropriate '#if defined(CS_PLATFORM_WIN32) ... #endif' statements. </dd></dl>

<p>Definition at line <a class="el" href="registrycfg_8h-source.html#l00043">43</a> of file <a class="el" href="registrycfg_8h-source.html">registrycfg.h</a>.</p>
<hr><h2>Member Function Documentation</h2>
<a class="anchor" name="c7f7575e742d0549f2a699bb4ffdba17"></a><!-- doxytag: member="csWin32RegistryConfig::Clear" ref="c7f7575e742d0549f2a699bb4ffdba17" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void csWin32RegistryConfig::Clear           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Delete all options and rewind all iterators. 
<p>

<p>Implements <a class="el" href="structiConfigFile.html#2f9ffafeb0fb141317ccd4bcdf27a4c5">iConfigFile</a>.</p>

</div>
</div><p>
<a class="anchor" name="85f7f54f4ac7e74153a1e748454ff4f3"></a><!-- doxytag: member="csWin32RegistryConfig::Close" ref="85f7f54f4ac7e74153a1e748454ff4f3" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void csWin32RegistryConfig::Close           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Close the current registry key. 
<p>
Use this if you want reuse a registry config object at a later time but want to free it's resources for the time being. <dl class="remark" compact><dt><b>Remarks:</b></dt><dd>This is called automatically on destruction or <a class="el" href="classcsWin32RegistryConfig.html#a9f2a5b99fc6835e24c5efb4176e5e3a" title="Open a registry key.">Open()</a>. </dd></dl>

</div>
</div><p>
<a class="anchor" name="33035cf4c20b06cf5f828a9757e24af4"></a><!-- doxytag: member="csWin32RegistryConfig::DeleteKey" ref="33035cf4c20b06cf5f828a9757e24af4" args="(const char *Key)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void csWin32RegistryConfig::DeleteKey           </td>
          <td>(</td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>Key</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Delete a key and its value and comment. 
<p>

<p>Implements <a class="el" href="structiConfigFile.html#be5a3cd2a0008b2b1a1d0bf6fadf26c3">iConfigFile</a>.</p>

</div>
</div><p>
<a class="anchor" name="c29298fbb929ed4dba97d57daf331775"></a><!-- doxytag: member="csWin32RegistryConfig::Enumerate" ref="c29298fbb929ed4dba97d57daf331775" args="(const char *Subsection=0)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="classcsPtr.html">csPtr</a>&lt;<a class="el" href="structiConfigIterator.html">iConfigIterator</a>&gt; csWin32RegistryConfig::Enumerate           </td>
          <td>(</td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>Subsection</em> = <code>0</code>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Enumerate selected keys. 
<p>
If a subsection is given, only those keys which are prefixed by the subsection string will be enumerated. The returned iterator does not yet point to a valid key. You must call Next() to set it to the first key. 
<p>Implements <a class="el" href="structiConfigFile.html#b7c4701d439cecfa848ee2d2d3069b53">iConfigFile</a>.</p>

</div>
</div><p>
<a class="anchor" name="68b9ff7111fbae27326ac0ed265fba1c"></a><!-- doxytag: member="csWin32RegistryConfig::GetBool" ref="68b9ff7111fbae27326ac0ed265fba1c" args="(const char *Key, bool Def=false) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual bool csWin32RegistryConfig::GetBool           </td>
          <td>(</td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>Key</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool&nbsp;</td>
          <td class="paramname"> <em>Def</em> = <code>false</code></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"> const<code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Get a boolean value from the configuration. 
<p>
The optional default value (Def parameter) will be used if the key was not found. 
<p>Implements <a class="el" href="structiConfigFile.html#571a6754e0628698e00939db8e978aab">iConfigFile</a>.</p>

</div>
</div><p>
<a class="anchor" name="dbff21a5476ca6a1e2d0a6f4f9b4d3c3"></a><!-- doxytag: member="csWin32RegistryConfig::GetComment" ref="dbff21a5476ca6a1e2d0a6f4f9b4d3c3" args="(const char *Key) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual const char* csWin32RegistryConfig::GetComment           </td>
          <td>(</td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>Key</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"> const<code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Get the comment of the given key, or 0 if no comment exists. 
<p>

<p>Implements <a class="el" href="structiConfigFile.html#1340a49a3b842a014efddfee86046b24">iConfigFile</a>.</p>

</div>
</div><p>
<a class="anchor" name="127186ba95646a877035dd16034867dc"></a><!-- doxytag: member="csWin32RegistryConfig::GetEOFComment" ref="127186ba95646a877035dd16034867dc" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual const char* csWin32RegistryConfig::GetEOFComment           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"> const<code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
return the final comment at the end of the configuration file 
<p>

<p>Implements <a class="el" href="structiConfigFile.html#db1a8f5c2ac5fdcce859df5538a4d654">iConfigFile</a>.</p>

</div>
</div><p>
<a class="anchor" name="296ab62133b7b0418e4a5c2e340df2a4"></a><!-- doxytag: member="csWin32RegistryConfig::GetFileName" ref="296ab62133b7b0418e4a5c2e340df2a4" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual const char* csWin32RegistryConfig::GetFileName           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"> const<code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Get configuration file name. 
<p>

<p>Implements <a class="el" href="structiConfigFile.html#2183db4f11cdcaf8b9dd8b92618585e6">iConfigFile</a>.</p>

</div>
</div><p>
<a class="anchor" name="06b408eed05fc2e77896f6ca9e3f0ee5"></a><!-- doxytag: member="csWin32RegistryConfig::GetFloat" ref="06b408eed05fc2e77896f6ca9e3f0ee5" args="(const char *Key, float Def=0.0) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual float csWin32RegistryConfig::GetFloat           </td>
          <td>(</td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>Key</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">float&nbsp;</td>
          <td class="paramname"> <em>Def</em> = <code>0.0</code></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"> const<code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Get a float value from the configuration. 
<p>
The optional default value (Def parameter) will be used if the key was not found. 
<p>Implements <a class="el" href="structiConfigFile.html#c829e1af3a2a530eef875a969c9b24ac">iConfigFile</a>.</p>

</div>
</div><p>
<a class="anchor" name="01653ae73d610c0b52eb2d4cd7b72925"></a><!-- doxytag: member="csWin32RegistryConfig::GetInt" ref="01653ae73d610c0b52eb2d4cd7b72925" args="(const char *Key, int Def=0) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual int csWin32RegistryConfig::GetInt           </td>
          <td>(</td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>Key</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>Def</em> = <code>0</code></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"> const<code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Get an integer value from the configuration. 
<p>
The optional default value (Def parameter) will be used if the key was not found. 
<p>Implements <a class="el" href="structiConfigFile.html#058ef45008514b8fab06e5b3bf126238">iConfigFile</a>.</p>

</div>
</div><p>
<a class="anchor" name="04325f7942794369b27142dedfe25a4a"></a><!-- doxytag: member="csWin32RegistryConfig::GetStr" ref="04325f7942794369b27142dedfe25a4a" args="(const char *Key, const char *Def=&quot;&quot;) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual const char* csWin32RegistryConfig::GetStr           </td>
          <td>(</td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>Key</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>Def</em> = <code>&quot;&quot;</code></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"> const<code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Get a string value from the configuration. 
<p>
The optional default value (Def parameter) will be used if the key was not found. 
<p>Implements <a class="el" href="structiConfigFile.html#f1907f764a4fd50addec669a214491a6">iConfigFile</a>.</p>

</div>
</div><p>
<a class="anchor" name="5f309ce1e0b982be5accdbad4896e1bf"></a><!-- doxytag: member="csWin32RegistryConfig::GetVFS" ref="5f309ce1e0b982be5accdbad4896e1bf" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="structiVFS.html">iVFS</a>* csWin32RegistryConfig::GetVFS           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"> const<code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Get the VFS object on which this file is stored (if any). 
<p>
Returns 0 if this file resides within the real (non-VFS) filesystem. 
<p>Implements <a class="el" href="structiConfigFile.html#6d13df20f0442c1fbf65f59e4daac67a">iConfigFile</a>.</p>

</div>
</div><p>
<a class="anchor" name="45f8a00b2de8434d2679ec19158af664"></a><!-- doxytag: member="csWin32RegistryConfig::KeyExists" ref="45f8a00b2de8434d2679ec19158af664" args="(const char *Key) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual bool csWin32RegistryConfig::KeyExists           </td>
          <td>(</td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>Key</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"> const<code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Test if a key exists. 
<p>

<p>Implements <a class="el" href="structiConfigFile.html#ea44c9e9825898dffa3024247e247e6f">iConfigFile</a>.</p>

</div>
</div><p>
<a class="anchor" name="3f01c814ef0b4e966f491e3645fad565"></a><!-- doxytag: member="csWin32RegistryConfig::Load" ref="3f01c814ef0b4e966f491e3645fad565" args="(const char *iFileName, iVFS *=0, bool Merge=false, bool NewWins=true)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual bool csWin32RegistryConfig::Load           </td>
          <td>(</td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>iFileName</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structiVFS.html">iVFS</a> *&nbsp;</td>
          <td class="paramname"> = <code>0</code>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool&nbsp;</td>
          <td class="paramname"> <em>Merge</em> = <code>false</code>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool&nbsp;</td>
          <td class="paramname"> <em>NewWins</em> = <code>true</code></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Load a configuration file. 
<p>
If the file resides in a real filesystem, rather than a VFS filesystem, then pass 0 for the VFS argument. <p>
You can set the Merge flag to merge the newly loaded configuration information into the existing information. If you do so, nothing will happen if the named file doesn't exist. The NewWins flag determines the behavior in case of configuration key conflicts. If true, then the new configuration value replaces the old for that key. If false, then the old value is kept, and the new value is ignored. The recorded file name will be set to the name of the newly loaded file if the Merge flag is false; otherwise it will retain the old name. 
<p>Implements <a class="el" href="structiConfigFile.html#0b1a3f6ebd3ccaa9be019fb616156ad7">iConfigFile</a>.</p>

</div>
</div><p>
<a class="anchor" name="a9f2a5b99fc6835e24c5efb4176e5e3a"></a><!-- doxytag: member="csWin32RegistryConfig::Open" ref="a9f2a5b99fc6835e24c5efb4176e5e3a" args="(const char *Key, HKEY parent=HKEY_CURRENT_USER)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool csWin32RegistryConfig::Open           </td>
          <td>(</td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>Key</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">HKEY&nbsp;</td>
          <td class="paramname"> <em>parent</em> = <code>HKEY_CURRENT_USER</code></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Open a registry key. 
<p>
This will open the key named <code>Key</code> as a subkey of <code>parent</code>. <dl class="remark" compact><dt><b>Remarks:</b></dt><dd>The key must be the full path, e.g. "Software\CrystalSpace". <p>
If <code>parent</code> is none of the default HKEY_ roots, the key must remain open as long as a registry config object isn't <a class="el" href="classcsWin32RegistryConfig.html#85f7f54f4ac7e74153a1e748454ff4f3" title="Close the current registry key.">Close()</a>d. </dd></dl>

</div>
</div><p>
<a class="anchor" name="3a8b6f3197fe76a5ddf44c6b70af811d"></a><!-- doxytag: member="csWin32RegistryConfig::Save" ref="3a8b6f3197fe76a5ddf44c6b70af811d" args="(const char *iFileName, iVFS *=0)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual bool csWin32RegistryConfig::Save           </td>
          <td>(</td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>iFileName</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structiVFS.html">iVFS</a> *&nbsp;</td>
          <td class="paramname"> = <code>0</code></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Save configuration into the given file (on VFS or on the physical filesystem). 
<p>
If the second parameter is skipped, the file will be written to the physical filesystem, otherwise it is stored on given VFS filesystem. This method does not change the internally stored file name. 
<p>Implements <a class="el" href="structiConfigFile.html#cf862ed68d57a0e307e059ac049b8202">iConfigFile</a>.</p>

</div>
</div><p>
<a class="anchor" name="60b982a8a96271cf70d36b89b740820f"></a><!-- doxytag: member="csWin32RegistryConfig::Save" ref="60b982a8a96271cf70d36b89b740820f" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual bool csWin32RegistryConfig::Save           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Save configuration to the same place from which it was loaded. 
<p>
Returns true if the save operation succeeded. 
<p>Implements <a class="el" href="structiConfigFile.html#e1a3711352a01b8e5611fb6d0d58a351">iConfigFile</a>.</p>

</div>
</div><p>
<a class="anchor" name="11fc03c6da5c97db62b3bc35a121dd95"></a><!-- doxytag: member="csWin32RegistryConfig::SetBool" ref="11fc03c6da5c97db62b3bc35a121dd95" args="(const char *Key, bool Value)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void csWin32RegistryConfig::SetBool           </td>
          <td>(</td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>Key</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool&nbsp;</td>
          <td class="paramname"> <em>Value</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Set a boolean value. 
<p>

<p>Implements <a class="el" href="structiConfigFile.html#075259cdd90c949538041f6bd0d98722">iConfigFile</a>.</p>

</div>
</div><p>
<a class="anchor" name="56de946a28e14d9702cc7c26c2b54031"></a><!-- doxytag: member="csWin32RegistryConfig::SetComment" ref="56de946a28e14d9702cc7c26c2b54031" args="(const char *Key, const char *Text)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual bool csWin32RegistryConfig::SetComment           </td>
          <td>(</td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>Key</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>Text</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Set the comment for given key. 
<p>
In addition to an actual comment, you can use "" for Text to place an empty comment line before this key, or 0 to remove the comment entirely. The comment may contain newline characters. Returns false if the key does not exist. 
<p>Implements <a class="el" href="structiConfigFile.html#0c6dd11917647182fb9632264e588c42">iConfigFile</a>.</p>

</div>
</div><p>
<a class="anchor" name="bd52bf1a5a93386e17a15ccf9cf8ef74"></a><!-- doxytag: member="csWin32RegistryConfig::SetEOFComment" ref="bd52bf1a5a93386e17a15ccf9cf8ef74" args="(const char *Text)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void csWin32RegistryConfig::SetEOFComment           </td>
          <td>(</td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>Text</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
set the final comment at the end of the configuration file 
<p>

<p>Implements <a class="el" href="structiConfigFile.html#0ed1957a7cdd5b9de17c92dd4b7d2a82">iConfigFile</a>.</p>

</div>
</div><p>
<a class="anchor" name="2b87d62f4a4b4c519f907611e4998d78"></a><!-- doxytag: member="csWin32RegistryConfig::SetFileName" ref="2b87d62f4a4b4c519f907611e4998d78" args="(const char *, iVFS *)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void csWin32RegistryConfig::SetFileName           </td>
          <td>(</td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname">, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structiVFS.html">iVFS</a> *&nbsp;</td>
          <td class="paramname"></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Set config file name. 
<p>
You can use this if you want <a class="el" href="classcsWin32RegistryConfig.html#60b982a8a96271cf70d36b89b740820f" title="Save configuration to the same place from which it was loaded.">Save()</a> to write to another file. This will set the dirty flag. 
<p>Implements <a class="el" href="structiConfigFile.html#020ae0fa1c3ce264bd46ed90561c4dbd">iConfigFile</a>.</p>

</div>
</div><p>
<a class="anchor" name="1a40181d308a58a724ba72113cf5eed0"></a><!-- doxytag: member="csWin32RegistryConfig::SetFloat" ref="1a40181d308a58a724ba72113cf5eed0" args="(const char *Key, float Value)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void csWin32RegistryConfig::SetFloat           </td>
          <td>(</td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>Key</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">float&nbsp;</td>
          <td class="paramname"> <em>Value</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Set a floating-point value. 
<p>

<p>Implements <a class="el" href="structiConfigFile.html#d6fddd5fd6223bd179c1da1f101464a6">iConfigFile</a>.</p>

</div>
</div><p>
<a class="anchor" name="63e3f776010beea80ba85f72f76534e4"></a><!-- doxytag: member="csWin32RegistryConfig::SetInt" ref="63e3f776010beea80ba85f72f76534e4" args="(const char *Key, int Value)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void csWin32RegistryConfig::SetInt           </td>
          <td>(</td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>Key</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>Value</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Set an integer value. 
<p>

<p>Implements <a class="el" href="structiConfigFile.html#16d2d2c324f71e232fd86ccc42b678f0">iConfigFile</a>.</p>

</div>
</div><p>
<a class="anchor" name="de3e146f04918761d1a2ebd779ee1e59"></a><!-- doxytag: member="csWin32RegistryConfig::SetStr" ref="de3e146f04918761d1a2ebd779ee1e59" args="(const char *Key, const char *Val)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void csWin32RegistryConfig::SetStr           </td>
          <td>(</td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>Key</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 width="100%"><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Set an null-terminated string value. 
<p>

<p>Implements <a class="el" href="structiConfigFile.html#98cd57c950aa067f5ffa51e7b22a8f6e">iConfigFile</a>.</p>

</div>
</div><p>
<a class="anchor" name="6e5d482e8c3448178fc50f45cc90fa9f"></a><!-- doxytag: member="csWin32RegistryConfig::SubsectionExists" ref="6e5d482e8c3448178fc50f45cc90fa9f" args="(const char *Subsection) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual bool csWin32RegistryConfig::SubsectionExists           </td>
          <td>(</td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>Subsection</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"> const<code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Test if at least one key exists with the given Subsection prefix. 
<p>

<p>Implements <a class="el" href="structiConfigFile.html#aa086cbf83a800a3e9ed9fc88740b376">iConfigFile</a>.</p>

</div>
</div><p>
<hr>The documentation for this class was generated from the following file:<ul>
<li>csutil/win32/<a class="el" href="registrycfg_8h-source.html">registrycfg.h</a></ul>
<hr size="1"><address><small>Generated for Crystal Space 1.2.1 by 
<a href="http://www.doxygen.org/index.html">doxygen</a> 1.5.3 
</small></address> </div></body> </html>