diff options
Diffstat (limited to '')
-rw-r--r-- | docs/doxygen/nel/a04665.html | 187 |
1 files changed, 187 insertions, 0 deletions
diff --git a/docs/doxygen/nel/a04665.html b/docs/doxygen/nel/a04665.html new file mode 100644 index 00000000..daeb0053 --- /dev/null +++ b/docs/doxygen/nel/a04665.html @@ -0,0 +1,187 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> +<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"> +<title>NeL: mutex.h File Reference</title> +<link href="doxygen.css" rel="stylesheet" type="text/css"> +</head><body> +<!-- Generated by Doxygen 1.3.6 --> +<div class="qindex"> <form class="search" action="search.php" method="get"> +<a class="qindex" href="main.html">Main Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical List</a> | <a class="qindex" href="annotated.html">Data Structures</a> | <a class="qindex" href="files.html">File List</a> | <a class="qindex" href="namespacemembers.html">Namespace Members</a> | <a class="qindex" href="functions.html">Data Fields</a> | <a class="qindex" href="globals.html">Globals</a> | <a class="qindex" href="pages.html">Related Pages</a> | <span class="search"><u>S</u>earch for <input class="search" type="text" name="query" value="" size="20" accesskey="s"/></span></form></div> +<h1>mutex.h File Reference</h1><hr><a name="_details"></a><h2>Detailed Description</h2> +OS independant class for the mutex management with Windows and Posix implementation Classes CMutex, CSynchronized<p> +<dl compact><dt><b>Id</b></dt><dd><a class="el" href="a04665.html">mutex.h</a>,v 1.27 2004/01/08 15:13:03 lecroart Exp </dd></dl> + +<p> +Definition in file <a class="el" href="a06088.html">mutex.h</a>. +<p> +<code>#include "<a class="el" href="a06590.html">nel/misc/types_nl.h</a>"</code><br> +<code>#include "<a class="el" href="a06553.html">nel/misc/time_nl.h</a>"</code><br> +<code>#include <map></code><br> + +<p> +<a href="a06088.html">Go to the source code of this file.</a><table border=0 cellpadding=0 cellspacing=0> +<tr><td></td></tr> +<tr><td colspan=2><br><h2>Namespaces</h2></td></tr> +<tr><td class="memItemLeft" nowrap align=right valign=top>namespace </td><td class="memItemRight" valign=bottom><a class="el" href="a05378.html">NLMISC</a></td></tr> + +<tr><td colspan=2><br><h2>Defines</h2></td></tr> +<tr><td class="memItemLeft" nowrap align=right valign=top>#define </td><td class="memItemRight" valign=bottom><a class="el" href="a04665.html#a3">ASM_ASWAP_FOR_GCC_CMPXCHG</a></td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>#define </td><td class="memItemRight" valign=bottom><a class="el" href="a04665.html#a2">ASM_ASWAP_FOR_GCC_XCHG</a></td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>#define </td><td class="memItemRight" valign=bottom><a class="el" href="a04665.html#a1">CMutex</a> CFairMutex</td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>#define </td><td class="memItemRight" valign=bottom><a class="el" href="a04665.html#a4">CSynchronized</a> CFairSynchronized</td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>#define </td><td class="memItemRight" valign=bottom><a class="el" href="a04665.html#a0">STORE_MUTEX_NAME</a></td></tr> + +</table> +<hr><h2>Define Documentation</h2> +<a class="anchor" name="a3" doxytag="mutex.h::ASM_ASWAP_FOR_GCC_CMPXCHG" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> #define ASM_ASWAP_FOR_GCC_CMPXCHG + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> +<b>Value:</b><div class="fragment"><pre>__asm__ <span class="keyword">volatile</span>( \ + <span class="stringliteral">"mov $1, %%edx;"</span> \ + <span class="stringliteral">"mov %1, %%ecx;"</span> \ + <span class="stringliteral">"mov (%%ecx), %%eax;"</span> \ + <span class="stringliteral">"1:nop;"</span> \ + <span class="stringliteral">"lock cmpxchgl %%edx, (%%ecx);"</span> \ + <span class="stringliteral">"jne 1b;"</span> \ + <span class="stringliteral">"mov %%eax, %0"</span> \ + : <span class="stringliteral">"=m"</span> (result) \ + : <span class="stringliteral">"m"</span> (lockPtr) \ + : <span class="stringliteral">"eax"</span>, <span class="stringliteral">"ecx"</span>, <span class="stringliteral">"edx"</span>, <span class="stringliteral">"memory"</span> ); +</pre></div> +<p> +Definition at line <a class="el" href="a06088.html#l00138">138</a> of file <a class="el" href="a06088.html">mutex.h</a>. </td> + </tr> +</table> +<a class="anchor" name="a2" doxytag="mutex.h::ASM_ASWAP_FOR_GCC_XCHG" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> #define ASM_ASWAP_FOR_GCC_XCHG + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> +<b>Value:</b><div class="fragment"><pre>__asm__ <span class="keyword">volatile</span>( \ + <span class="stringliteral">"mov %1, %%ecx;"</span> \ + <span class="stringliteral">"mov $1, %%eax;"</span> \ + <span class="stringliteral">"xchg %%eax, (%%ecx);"</span> \ + <span class="stringliteral">"mov %%eax, %0"</span> \ + : <span class="stringliteral">"=m"</span> (result) \ + : <span class="stringliteral">"m"</span> (lockPtr) \ + : <span class="stringliteral">"eax"</span>, <span class="stringliteral">"ecx"</span>, <span class="stringliteral">"memory"</span> ); +</pre></div> +<p> +Definition at line <a class="el" href="a06088.html#l00127">127</a> of file <a class="el" href="a06088.html">mutex.h</a>. +<p> +Referenced by <a class="el" href="a06088.html#l00205">NLMISC::CFastMutex::atomic_swap()</a>. </td> + </tr> +</table> +<a class="anchor" name="a1" doxytag="mutex.h::CMutex" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> #define CMutex CFairMutex + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> + +<p> +Definition at line <a class="el" href="a06088.html#l00057">57</a> of file <a class="el" href="a06088.html">mutex.h</a>. +<p> +Referenced by <a class="el" href="a05637.html#l00118">NLMISC::IDisplayer::IDisplayer()</a>. </td> + </tr> +</table> +<a class="anchor" name="a4" doxytag="mutex.h::CSynchronized" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> #define CSynchronized CFairSynchronized + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> + +<p> +Definition at line <a class="el" href="a06088.html#l00563">563</a> of file <a class="el" href="a06088.html">mutex.h</a>. </td> + </tr> +</table> +<a class="anchor" name="a0" doxytag="mutex.h::STORE_MUTEX_NAME" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> #define STORE_MUTEX_NAME + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> + +<p> +Definition at line <a class="el" href="a06088.html#l00053">53</a> of file <a class="el" href="a06088.html">mutex.h</a>. </td> + </tr> +</table> +<hr size="1"><address style="align: right;"><small>Generated on Tue Mar 16 06:43:10 2004 for NeL by +<a href="http://www.doxygen.org/index.html"> +<img src="doxygen.png" alt="doxygen" align="middle" border=0 > +</a>1.3.6 </small></address> +</body> +</html> |