Sophie

Sophie

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

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: CS Namespace 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 class="current"><a href="namespaces.html"><span>Namespaces</span></a></li>
    <li><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="namespaces.html"><span>Namespace List</span></a></li>
    <li><a href="namespacemembers.html"><span>Namespace&nbsp;Members</span></a></li>
  </ul>
</div>
<h1>CS Namespace Reference<br>
<small>
[<a class="el" href="group__geom__utils.html">Geometry utilities</a>,&nbsp;<a class="el" href="group__geom__utils.html">Geometry utilities</a>,&nbsp;<a class="el" href="group__gfx.html">Graphics</a>,&nbsp;<a class="el" href="group__gfx3d.html">3D</a>,&nbsp;<a class="el" href="group__plugincommon.html">Common Plugin Classes</a>,&nbsp;<a class="el" href="group__plugincommon.html">Common Plugin Classes</a>,&nbsp;<a class="el" href="group__plugincommon.html">Common Plugin Classes</a>,&nbsp;<a class="el" href="group__plugincommon.html">Common Plugin Classes</a>,&nbsp;<a class="el" href="group__plugincommon.html">Common Plugin Classes</a>,&nbsp;<a class="el" href="group__util__memory.html">Memory Management</a>,&nbsp;<a class="el" href="group__util__memory.html">Memory Management</a>,&nbsp;<a class="el" href="group__event__handling.html">Event handling</a>,&nbsp;<a class="el" href="group__util__memory.html">Memory Management</a>,&nbsp;<a class="el" href="group__util.html">Utilities</a>,&nbsp;<a class="el" href="group__util.html">Utilities</a>,&nbsp;<a class="el" href="group__util.html">Utilities</a>,&nbsp;<a class="el" href="group__gfx3d.html">3D</a>]</small>
</h1>Main namespace for CrystalSpace.  
<a href="#_details">More...</a>
<p>
<table border="0" cellpadding="0" cellspacing="0">
<tr><td></td></tr>
<tr><td colspan="2"><br><h2>Classes</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">struct &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structCS_1_1AllocPlatform.html">AllocPlatform</a></td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCS_1_1CowWrapper.html">CowWrapper</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Copy-on-write wrapper for arbitrary types.  <a href="classCS_1_1CowWrapper.html#_details">More...</a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCS_1_1DataBuffer.html">DataBuffer</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This is an implementation of <a class="el" href="structiDataBuffer.html" title="The iDataBuffer interface can be used to exchange buffers with abstract data between...">iDataBuffer</a> interface.  <a href="classCS_1_1DataBuffer.html#_details">More...</a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCS_1_1ImageAutoConvert.html">ImageAutoConvert</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Small wrapper class to automatically convert an image into a different storage format, if needed.  <a href="classCS_1_1ImageAutoConvert.html#_details">More...</a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCS_1_1MeasureTime.html">MeasureTime</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Simple helper class to measure execution time of a block.  <a href="classCS_1_1MeasureTime.html#_details">More...</a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCS_1_1NumberedFilenameHelper.html">NumberedFilenameHelper</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Helper to deal with numbered filename.  <a href="classCS_1_1NumberedFilenameHelper.html#_details">More...</a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCS_1_1RenderBufferPersistent.html">RenderBufferPersistent</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Render buffer wrapper with additional persistence information.  <a href="classCS_1_1RenderBufferPersistent.html#_details">More...</a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCS_1_1RenderViewClipper.html">RenderViewClipper</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Helper to clip in the context of a render view.  <a href="classCS_1_1RenderViewClipper.html#_details">More...</a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCS_1_1ShaderVariableContextImpl.html">ShaderVariableContextImpl</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Simple implementation for <a class="el" href="structiShaderVariableContext.html" title="This is a baseclass for all interfaces which provides shadervariables both dynamically...">iShaderVariableContext</a>.  <a href="classCS_1_1ShaderVariableContextImpl.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="structCS_1_1ShaderVarName.html">ShaderVarName</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Helper class to obtain an ID for a shader variable.  <a href="structCS_1_1ShaderVarName.html#_details">More...</a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCS_1_1SpinLock.html">SpinLock</a></td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCS_1_1StructuredTextureFormat.html">StructuredTextureFormat</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Structured representation of a texture format.  <a href="classCS_1_1StructuredTextureFormat.html#_details">More...</a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCS_1_1SubRectangles.html">SubRectangles</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">A class managing allocations of sub-rectangles.  <a href="classCS_1_1SubRectangles.html#_details">More...</a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCS_1_1SubRectanglesCompact.html">SubRectanglesCompact</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">A variation of <a class="el" href="classCS_1_1SubRectangles.html" title="A class managing allocations of sub-rectangles.">SubRectangles</a> that tries to place rectangles in a rectangular fashion.  <a href="classCS_1_1SubRectanglesCompact.html#_details">More...</a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCS_1_1TextureFormatStrings.html">TextureFormatStrings</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Texture format string parser routines.  <a href="classCS_1_1TextureFormatStrings.html#_details">More...</a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCS_1_1TriangleIndicesStream.html">TriangleIndicesStream</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Helper class to extract triangles from an index buffer.  <a href="classCS_1_1TriangleIndicesStream.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="structCS_1_1TriangleT.html">TriangleT</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">A templated triangle.  <a href="structCS_1_1TriangleT.html#_details">More...</a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCS_1_1UberScreenshotMaker.html">UberScreenshotMaker</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Helper to create "&amp;uuml;berscreenshots", screenshots with a resolution larger than the current framebuffer resolution.  <a href="classCS_1_1UberScreenshotMaker.html#_details">More...</a><br></td></tr>
<tr><td colspan="2"><br><h2>Namespaces</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">namespace &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceCS_1_1Debug.html">Debug</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Debugging utilities and helpers. <br></td></tr>

<p>
<tr><td class="memItemLeft" nowrap align="right" valign="top">namespace &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceCS_1_1Deprecated.html">Deprecated</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Contains deprecated code that will be removed after next stable release. <br></td></tr>

<p>
<tr><td class="memItemLeft" nowrap align="right" valign="top">namespace &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceCS_1_1DocSystem.html">DocSystem</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Document system / XML helper classes. <br></td></tr>

<p>
<tr><td class="memItemLeft" nowrap align="right" valign="top">namespace &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceCS_1_1DocumentHelper.html">DocumentHelper</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">For compatibility. <br></td></tr>

<p>
<tr><td class="memItemLeft" nowrap align="right" valign="top">namespace &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceCS_1_1Implementation.html">Implementation</a></td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">namespace &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceCS_1_1Macros.html">Macros</a></td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">namespace &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceCS_1_1Math.html">Math</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Mathematical functions and definitions. <br></td></tr>

<p>
<tr><td class="memItemLeft" nowrap align="right" valign="top">namespace &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceCS_1_1Memory.html">Memory</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight"><a class="el" href="namespaceCS_1_1Memory.html" title="Memory allocation.">Memory</a> allocation. <br></td></tr>

<p>
<tr><td class="memItemLeft" nowrap align="right" valign="top">namespace &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceCS_1_1Meta.html">Meta</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Meta-programming helpers. <br></td></tr>

<p>
<tr><td class="memItemLeft" nowrap align="right" valign="top">namespace &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceCS_1_1Platform.html">Platform</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight"><a class="el" href="namespaceCS_1_1Platform.html" title="Platform specific code and wrappers.">Platform</a> specific code and wrappers. <br></td></tr>

<p>
<tr><td class="memItemLeft" nowrap align="right" valign="top">namespace &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceCS_1_1Plugin.html">Plugin</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight"><a class="el" href="namespaceCS_1_1Implementation.html">Implementation</a> of all plugins. <br></td></tr>

<p>
<tr><td class="memItemLeft" nowrap align="right" valign="top">namespace &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceCS_1_1PluginCommon.html">PluginCommon</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Common code shared among a number of plugins. <br></td></tr>

<p>
<tr><td class="memItemLeft" nowrap align="right" valign="top">namespace &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceCS_1_1SndSys.html">SndSys</a></td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">namespace &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceCS_1_1Threading.html">Threading</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Functions and classes for threading, locking and atomic operations. <br></td></tr>

<p>
<tr><td class="memItemLeft" nowrap align="right" valign="top">namespace &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceCS_1_1Utility.html">Utility</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Assorted utility functions and classes that doesn't belong anywhere else. <br></td></tr>

<p>
<tr><td colspan="2"><br><h2>Typedefs</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef <br>
<a class="el" href="classCS_1_1Utility_1_1ImportKit.html">CS::Utility::ImportKit</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceCS.html#7bc7e8b620fdebeb554f411b78ef6fa8">ImportKit</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Import kit, old name.  <a href="#7bc7e8b620fdebeb554f411b78ef6fa8"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ccf35a0d32b04cc6915f02360a0f70ac"></a><!-- doxytag: member="CS::NonCopyable" ref="ccf35a0d32b04cc6915f02360a0f70ac" args="" -->
typedef <br>
<a class="el" href="classCS_1_1Implementation_1_1NonCopyable__.html">Implementation::NonCopyable_</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceCS.html#ccf35a0d32b04cc6915f02360a0f70ac">NonCopyable</a></td></tr>

<tr><td colspan="2"><br><h2>Functions</h2></td></tr>
<tr><td class="memTemplParams" nowrap colspan="2">template&lt;class T, class Fn, class P&gt; </td></tr>
<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">CS_FORCEINLINE_TEMPLATEMETHOD <br>
Fn &amp;&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceCS.html#245f309276200b8c70ce1ee3bddff457">ForEach</a> (T it, Fn &amp;Func, P &amp;p)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Iterate over all elements in the iterator and perform operation given by Func.  <a href="#245f309276200b8c70ce1ee3bddff457"></a><br></td></tr>
<tr><td class="memTemplParams" nowrap colspan="2">template&lt;class T, class Fn&gt; </td></tr>
<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">CS_FORCEINLINE_TEMPLATEMETHOD <br>
Fn &amp;&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceCS.html#50ddfda2b9b4d9ed73cc1131dfacdbd0">ForEach</a> (T *start, T *end, Fn &amp;Func)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Iterate over all elements in the list and perform operation given by Func.  <a href="#50ddfda2b9b4d9ed73cc1131dfacdbd0"></a><br></td></tr>
<tr><td class="memTemplParams" nowrap colspan="2">template&lt;class T, class Fn&gt; </td></tr>
<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">CS_FORCEINLINE_TEMPLATEMETHOD <br>
Fn &amp;&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceCS.html#758542d851630e3c385594b388044098">ForEach</a> (T it, Fn &amp;Func)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Iterate over all elements in the iterator and perform operation given by Func.  <a href="#758542d851630e3c385594b388044098"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="group__event__handling.html#gd62f963e20f1180634a9557b392d987d">csHandlerID</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceCS.html#2d55e184219c75f56d60f02a67fc42ae">RegisterWeakListener</a> (<a class="el" href="structiEventQueue.html">iEventQueue</a> *q, <a class="el" href="structiEventHandler.html">iEventHandler</a> *listener, <a class="el" href="classcsRef.html">csRef</a>&lt; <a class="el" href="structiEventHandler.html">iEventHandler</a> &gt; &amp;handler)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Helper function for registering an event handler using a weak reference.  <a href="#2d55e184219c75f56d60f02a67fc42ae"></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="namespaceCS.html#82f6e5ca930984b58b34962fd8bab92e">RemoveWeakListener</a> (<a class="el" href="structiEventQueue.html">iEventQueue</a> *q, <a class="el" href="classcsRef.html">csRef</a>&lt; <a class="el" href="structiEventHandler.html">iEventHandler</a> &gt; &amp;handler)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Helper function for removing an event handler that was registered with <a class="el" href="namespaceCS.html#2d55e184219c75f56d60f02a67fc42ae" title="Helper function for registering an event handler using a weak reference.">RegisterWeakListener()</a>.  <a href="#82f6e5ca930984b58b34962fd8bab92e"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">char *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceCS.html#19f5a5d4c1265c3ba98aa85ec1f1d81f">StrDup</a> (const <a class="el" href="group__util.html#g43124e776b499fd41c598b2f6d210242">wchar_t</a> *s)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Allocate a char string with <a class="el" href="cssysdef_8h.html#bcc451ff5f6451f8b8bcbe91c762bcf0">cs_malloc()</a> and copy an UTF-8 version of the string into the newly allocated storage.  <a href="#19f5a5d4c1265c3ba98aa85ec1f1d81f"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">char *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceCS.html#77fba057e7351adb82ced35e32e5e2d4">StrDup</a> (const char *s)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Allocate a char string with <a class="el" href="cssysdef_8h.html#bcc451ff5f6451f8b8bcbe91c762bcf0">cs_malloc()</a> and copy the string into the newly allocated storage.  <a href="#77fba057e7351adb82ced35e32e5e2d4"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="group__util.html#g43124e776b499fd41c598b2f6d210242">wchar_t</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceCS.html#a791ab7a63ad9497777da29be3589741">StrDupW</a> (const char *s)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Allocate a wide char string with <a class="el" href="cssysdef_8h.html#bcc451ff5f6451f8b8bcbe91c762bcf0">cs_malloc()</a> and copy the string converted from UTF-8 into the newly allocated storage.  <a href="#a791ab7a63ad9497777da29be3589741"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="group__util.html#g43124e776b499fd41c598b2f6d210242">wchar_t</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceCS.html#2a255ea1bc67ebee680069a791b1c610">StrDupW</a> (const <a class="el" href="group__util.html#g43124e776b499fd41c598b2f6d210242">wchar_t</a> *s)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Allocate a wide char string with <a class="el" href="cssysdef_8h.html#bcc451ff5f6451f8b8bcbe91c762bcf0">cs_malloc()</a> and copy the string into the newly allocated storage.  <a href="#2a255ea1bc67ebee680069a791b1c610"></a><br></td></tr>
<tr><td class="memTemplParams" nowrap colspan="2">template&lt;class T&gt; </td></tr>
<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">CS_FORCEINLINE_TEMPLATEMETHOD <br>
void&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceCS.html#68d61355d1c8c8d00c9ed83c963a2dce">Swap</a> (T &amp;a, T &amp;b)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Swap two elements.  <a href="#68d61355d1c8c8d00c9ed83c963a2dce"></a><br></td></tr>
</table>
<hr><a name="_details"></a><h2>Detailed Description</h2>
Main namespace for CrystalSpace. <hr><h2>Typedef Documentation</h2>
<a class="anchor" name="7bc7e8b620fdebeb554f411b78ef6fa8"></a><!-- doxytag: member="CS::ImportKit" ref="7bc7e8b620fdebeb554f411b78ef6fa8" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef <a class="el" href="classCS_1_1Utility_1_1ImportKit.html">CS::Utility::ImportKit</a> <a class="el" href="classCS_1_1Utility_1_1ImportKit.html">CS::ImportKit</a>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Import kit, old name. 
<p>
<dl compact><dt><b><a class="el" href="deprecated.html#_deprecated000023">Deprecated:</a></b></dt><dd>Use <a class="el" href="classCS_1_1Utility_1_1ImportKit.html" title="Crystal Space Import Kit.">CS::Utility::ImportKit</a> instead. </dd></dl>

<p>Definition at line <a class="el" href="importkit_8h-source.html#l00212">212</a> of file <a class="el" href="importkit_8h-source.html">importkit.h</a>.</p>

</div>
</div><p>
<hr><h2>Function Documentation</h2>
<a class="anchor" name="245f309276200b8c70ce1ee3bddff457"></a><!-- doxytag: member="CS::ForEach" ref="245f309276200b8c70ce1ee3bddff457" args="(T it, Fn &amp;Func, P &amp;p)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T, class Fn, class P&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">CS_FORCEINLINE_TEMPLATEMETHOD Fn&amp; CS::ForEach           </td>
          <td>(</td>
          <td class="paramtype">T&nbsp;</td>
          <td class="paramname"> <em>it</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">Fn &amp;&nbsp;</td>
          <td class="paramname"> <em>Func</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">P &amp;&nbsp;</td>
          <td class="paramname"> <em>p</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Iterate over all elements in the iterator and perform operation given by Func. 
<p>

<p>Definition at line <a class="el" href="algorithms_8h-source.html#l00081">81</a> of file <a class="el" href="algorithms_8h-source.html">algorithms.h</a>.</p>

</div>
</div><p>
<a class="anchor" name="50ddfda2b9b4d9ed73cc1131dfacdbd0"></a><!-- doxytag: member="CS::ForEach" ref="50ddfda2b9b4d9ed73cc1131dfacdbd0" args="(T *start, T *end, Fn &amp;Func)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T, class Fn&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">CS_FORCEINLINE_TEMPLATEMETHOD Fn&amp; CS::ForEach           </td>
          <td>(</td>
          <td class="paramtype">T *&nbsp;</td>
          <td class="paramname"> <em>start</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">T *&nbsp;</td>
          <td class="paramname"> <em>end</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">Fn &amp;&nbsp;</td>
          <td class="paramname"> <em>Func</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Iterate over all elements in the list and perform operation given by Func. 
<p>

<p>Definition at line <a class="el" href="algorithms_8h-source.html#l00066">66</a> of file <a class="el" href="algorithms_8h-source.html">algorithms.h</a>.</p>

</div>
</div><p>
<a class="anchor" name="758542d851630e3c385594b388044098"></a><!-- doxytag: member="CS::ForEach" ref="758542d851630e3c385594b388044098" args="(T it, Fn &amp;Func)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T, class Fn&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">CS_FORCEINLINE_TEMPLATEMETHOD Fn&amp; CS::ForEach           </td>
          <td>(</td>
          <td class="paramtype">T&nbsp;</td>
          <td class="paramname"> <em>it</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">Fn &amp;&nbsp;</td>
          <td class="paramname"> <em>Func</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Iterate over all elements in the iterator and perform operation given by Func. 
<p>
<div class="fragment"><pre class="fragment"> <a class="code" href="classcsArray.html" title="A templated array class.">csArray&lt;int&gt;</a> anArray;
 anArray.<a class="code" href="classcsArray.html#6c1acc9a8bdc9d19272f5236089c6b5b" title="Push a copy of an element onto the tail end of the array.">Push</a> (1);
 anArray.<a class="code" href="classcsArray.html#6c1acc9a8bdc9d19272f5236089c6b5b" title="Push a copy of an element onto the tail end of the array.">Push</a> (4);
 <a class="code" href="namespaceCS.html#758542d851630e3c385594b388044098" title="Iterate over all elements in the iterator and perform operation given by Func.">ForEach</a> (anArray.<a class="code" href="classcsArray.html#3cda67933291c4f269dd217c177f8279" title="Returns an Iterator which traverses the array.">GetIterator</a> (), OurFunctor ());
</pre></div> 
<p>Definition at line <a class="el" href="algorithms_8h-source.html#l00052">52</a> of file <a class="el" href="algorithms_8h-source.html">algorithms.h</a>.</p>

</div>
</div><p>
<a class="anchor" name="2d55e184219c75f56d60f02a67fc42ae"></a><!-- doxytag: member="CS::RegisterWeakListener" ref="2d55e184219c75f56d60f02a67fc42ae" args="(iEventQueue *q, iEventHandler *listener, csRef&lt; iEventHandler &gt; &amp;handler)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__event__handling.html#gd62f963e20f1180634a9557b392d987d">csHandlerID</a> CS::RegisterWeakListener           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structiEventQueue.html">iEventQueue</a> *&nbsp;</td>
          <td class="paramname"> <em>q</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structiEventHandler.html">iEventHandler</a> *&nbsp;</td>
          <td class="paramname"> <em>listener</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classcsRef.html">csRef</a>&lt; <a class="el" href="structiEventHandler.html">iEventHandler</a> &gt; &amp;&nbsp;</td>
          <td class="paramname"> <em>handler</em></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>
Helper function for registering an event handler using a weak reference. 
<p>
Use <a class="el" href="namespaceCS.html#82f6e5ca930984b58b34962fd8bab92e" title="Helper function for removing an event handler that was registered with RegisterWeakListener()...">RemoveWeakListener()</a> to remove an event handler registered with this function. 
</div>
</div><p>
<a class="anchor" name="82f6e5ca930984b58b34962fd8bab92e"></a><!-- doxytag: member="CS::RemoveWeakListener" ref="82f6e5ca930984b58b34962fd8bab92e" args="(iEventQueue *q, csRef&lt; iEventHandler &gt; &amp;handler)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void CS::RemoveWeakListener           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structiEventQueue.html">iEventQueue</a> *&nbsp;</td>
          <td class="paramname"> <em>q</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classcsRef.html">csRef</a>&lt; <a class="el" href="structiEventHandler.html">iEventHandler</a> &gt; &amp;&nbsp;</td>
          <td class="paramname"> <em>handler</em></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>
Helper function for removing an event handler that was registered with <a class="el" href="namespaceCS.html#2d55e184219c75f56d60f02a67fc42ae" title="Helper function for registering an event handler using a weak reference.">RegisterWeakListener()</a>. 
<p>

</div>
</div><p>
<a class="anchor" name="19f5a5d4c1265c3ba98aa85ec1f1d81f"></a><!-- doxytag: member="CS::StrDup" ref="19f5a5d4c1265c3ba98aa85ec1f1d81f" args="(const wchar_t *s)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">char* CS::StrDup           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="group__util.html#g43124e776b499fd41c598b2f6d210242">wchar_t</a> *&nbsp;</td>
          <td class="paramname"> <em>s</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Allocate a char string with <a class="el" href="cssysdef_8h.html#bcc451ff5f6451f8b8bcbe91c762bcf0">cs_malloc()</a> and copy an UTF-8 version of the string into the newly allocated storage. 
<p>
<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="namespaceCS.html#77fba057e7351adb82ced35e32e5e2d4" title="Allocate a char string with cs_malloc() and copy the string into the newly allocated...">StrDup(const char*)</a> </dd></dl>

</div>
</div><p>
<a class="anchor" name="77fba057e7351adb82ced35e32e5e2d4"></a><!-- doxytag: member="CS::StrDup" ref="77fba057e7351adb82ced35e32e5e2d4" args="(const char *s)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">char* CS::StrDup           </td>
          <td>(</td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>s</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Allocate a char string with <a class="el" href="cssysdef_8h.html#bcc451ff5f6451f8b8bcbe91c762bcf0">cs_malloc()</a> and copy the string into the newly allocated storage. 
<p>
This is a handy method for copying strings, in fact it is an analogue of the strdup() function from <a class="el" href="string_8h.html" title="String interface.">string.h</a>, but using <a class="el" href="cssysdef_8h.html#bcc451ff5f6451f8b8bcbe91c762bcf0">cs_malloc()</a>. (Also, strdup() is not present on some platforms). To free the pointer the caller should call <a class="el" href="cssysdef_8h.html#7af27c7b7c38c438787a3d2f4e5079c4">cs_free()</a>. 
</div>
</div><p>
<a class="anchor" name="a791ab7a63ad9497777da29be3589741"></a><!-- doxytag: member="CS::StrDupW" ref="a791ab7a63ad9497777da29be3589741" args="(const char *s)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__util.html#g43124e776b499fd41c598b2f6d210242">wchar_t</a>* CS::StrDupW           </td>
          <td>(</td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>s</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Allocate a wide char string with <a class="el" href="cssysdef_8h.html#bcc451ff5f6451f8b8bcbe91c762bcf0">cs_malloc()</a> and copy the string converted from UTF-8 into the newly allocated storage. 
<p>
<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="namespaceCS.html#77fba057e7351adb82ced35e32e5e2d4" title="Allocate a char string with cs_malloc() and copy the string into the newly allocated...">StrDup(const char*)</a> </dd></dl>

</div>
</div><p>
<a class="anchor" name="2a255ea1bc67ebee680069a791b1c610"></a><!-- doxytag: member="CS::StrDupW" ref="2a255ea1bc67ebee680069a791b1c610" args="(const wchar_t *s)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__util.html#g43124e776b499fd41c598b2f6d210242">wchar_t</a>* CS::StrDupW           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="group__util.html#g43124e776b499fd41c598b2f6d210242">wchar_t</a> *&nbsp;</td>
          <td class="paramname"> <em>s</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Allocate a wide char string with <a class="el" href="cssysdef_8h.html#bcc451ff5f6451f8b8bcbe91c762bcf0">cs_malloc()</a> and copy the string into the newly allocated storage. 
<p>
<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="namespaceCS.html#77fba057e7351adb82ced35e32e5e2d4" title="Allocate a char string with cs_malloc() and copy the string into the newly allocated...">StrDup(const char*)</a> </dd></dl>

</div>
</div><p>
<a class="anchor" name="68d61355d1c8c8d00c9ed83c963a2dce"></a><!-- doxytag: member="CS::Swap" ref="68d61355d1c8c8d00c9ed83c963a2dce" args="(T &amp;a, T &amp;b)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">CS_FORCEINLINE_TEMPLATEMETHOD void CS::Swap           </td>
          <td>(</td>
          <td class="paramtype">T &amp;&nbsp;</td>
          <td class="paramname"> <em>a</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">T &amp;&nbsp;</td>
          <td class="paramname"> <em>b</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Swap two elements. 
<p>

<p>Definition at line <a class="el" href="algorithms_8h-source.html#l00034">34</a> of file <a class="el" href="algorithms_8h-source.html">algorithms.h</a>.</p>

<p>Referenced by <a class="el" href="math_8h-source.html#l00055">csSort()</a>.</p>

</div>
</div><p>
<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>