<!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: csEventCord 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 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 Pages</span></a></li> </ul> </div> <div class="tabs"> <ul> <li><a href="classes.html"><span>Alphabetical List</span></a></li> <li><a href="annotated.html"><span>Class List</span></a></li> <li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li> <li><a href="functions.html"><span>Class Members</span></a></li> </ul> </div> <h1>csEventCord Class Reference</h1><!-- doxytag: class="csEventCord" --><!-- doxytag: inherits="scfImplementation1< csEventCord, iEventCord >" -->Event cord. <a href="#_details">More...</a> <p> <code>#include <<a class="el" href="csevcord_8h-source.html">csutil/csevcord.h</a>></code> <p> <div class="dynheader"> Inheritance diagram for csEventCord:</div> <div class="dynsection"> <p><center><img src="classcsEventCord__inherit__graph.png" border="0" usemap="#csEventCord__inherit__map" alt="Inheritance graph"></center> <map name="csEventCord__inherit__map"> <area shape="rect" href="classscfImplementation1.html" title="scfImplementation1\< csEventCord, iEventCord \>" alt="" coords="60,161,404,188"><area shape="rect" href="classscfImplementation.html" title="scfImplementation\< csEventCord \>" alt="" coords="5,84,261,111"><area shape="rect" href="structiBase.html" title="This is the basic interface: all other interfaces should be derived from this one..." alt="" coords="285,7,341,33"><area shape="rect" href="structiEventCord.html" title="The iEventCord is an interface provided by an event queue to any event handlers wanting..." alt="" coords="285,84,379,111"><area shape="rect" href="classCS_1_1Memory_1_1CustomAllocated.html" title="Class that overrides operator new/operator delete/etc." alt="" coords="23,7,244,33"></map> <center><font size="2">[<a href="graph_legend.html">legend</a>]</font></center></div> <p> <a href="classcsEventCord-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"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classcsEventCord.html#55d570801f613d3382eba62b31656a2c">csEventCord</a> (<a class="el" href="group__event__handling.html#g51e1762faeeefdadf693499fc93db757">csEventID</a>, bool=false)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Create an event cord for a given name. <a href="#55d570801f613d3382eba62b31656a2c"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <a class="el" href="group__event__handling.html#g51e1762faeeefdadf693499fc93db757">csEventID</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classcsEventCord.html#2758ff7252a1026ee4e5f71149b3b357">GetName</a> () const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Get the category of this cord. <a href="#2758ff7252a1026ee4e5f71149b3b357"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classcsEventCord.html#f463343c4c1c448a478a78d346a4d299">GetPass</a> () const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Get whether events are passed to the system event queue. <a href="#f463343c4c1c448a478a78d346a4d299"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual int </td><td class="memItemRight" valign="bottom"><a class="el" href="classcsEventCord.html#dd13d785acfb5e949a93640b0bc3b802">Insert</a> (<a class="el" href="structiEventHandler.html">iEventHandler</a> *, int priority)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Insert an event handler into the event cord. <a href="#dd13d785acfb5e949a93640b0bc3b802"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classcsEventCord.html#2f68822ca8bd4392a045fcbf388fd1f8">Remove</a> (<a class="el" href="structiEventHandler.html">iEventHandler</a> *)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Remove an event handler from the event cord. <a href="#2f68822ca8bd4392a045fcbf388fd1f8"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classcsEventCord.html#fda1234510fca4c05b997e30ad5caec2">SetPass</a> (bool flag)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Set whether events are passed to the system event queue. <a href="#fda1234510fca4c05b997e30ad5caec2"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual </td><td class="memItemRight" valign="bottom"><a class="el" href="classcsEventCord.html#1ad2abcb5369709ed58e1510fce62540">~csEventCord</a> ()</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Destructor. <a href="#1ad2abcb5369709ed58e1510fce62540"></a><br></td></tr> <tr><td colspan="2"><br><h2>Protected Member Functions</h2></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classcsEventCord.html#d67209c7766361f44b4192a862e6eb97">Lock</a> ()</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Lock the queue for modifications: NESTED CALLS TO LOCK/UNLOCK NOT ALLOWED! <a href="#d67209c7766361f44b4192a862e6eb97"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classcsEventCord.html#2357d7434c0435fc222d5e80ac82995a">Unlock</a> ()</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Unlock the queue. <a href="#2357d7434c0435fc222d5e80ac82995a"></a><br></td></tr> <tr><td colspan="2"><br><h2>Protected Attributes</h2></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="group__event__handling.html#g51e1762faeeefdadf693499fc93db757">csEventID</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classcsEventCord.html#d56c1e777685849b7d7fd248b41861f8">name</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">The name of the events on this cord. <a href="#d56c1e777685849b7d7fd248b41861f8"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">volatile bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classcsEventCord.html#ec904cad6d38ee27b97bddcd5f00e1b2">pass</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Pass events to the system queue? <a href="#ec904cad6d38ee27b97bddcd5f00e1b2"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="structcsEventCord_1_1PluginData.html">PluginData</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="classcsEventCord.html#0f02c59ad3bfe5e8ec726a6ad7a60103">plugins</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">The cord itself. <a href="#0f02c59ad3bfe5e8ec726a6ad7a60103"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">volatile int </td><td class="memItemRight" valign="bottom"><a class="el" href="classcsEventCord.html#25bf295a14f5006871c151d27b259557">SpinLock</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Protection against multiple threads accessing the same cord. <a href="#25bf295a14f5006871c151d27b259557"></a><br></td></tr> <tr><td colspan="2"><br><h2>Friends</h2></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">class </td><td class="memItemRight" valign="bottom"><a class="el" href="classcsEventCord.html#045c4aa8c93411d96adb6374223fca27">csEventOutlet</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight"><a class="el" href="structiEventOutlet.html" title="The iEventOutlet is the interface to an object that is provided by an event queue...">iEventOutlet</a> places events into cords. <a href="#045c4aa8c93411d96adb6374223fca27"></a><br></td></tr> <tr><td colspan="2"><br><h2>Classes</h2></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="structcsEventCord_1_1PluginData.html">PluginData</a></td></tr> </table> <hr><a name="_details"></a><h2>Detailed Description</h2> Event cord. <p>Definition at line <a class="el" href="csevcord_8h-source.html#l00038">38</a> of file <a class="el" href="csevcord_8h-source.html">csevcord.h</a>.</p> <hr><h2>Constructor & Destructor Documentation</h2> <a class="anchor" name="55d570801f613d3382eba62b31656a2c"></a><!-- doxytag: member="csEventCord::csEventCord" ref="55d570801f613d3382eba62b31656a2c" args="(csEventID, bool=false)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">csEventCord::csEventCord </td> <td>(</td> <td class="paramtype"><a class="el" href="group__event__handling.html#g51e1762faeeefdadf693499fc93db757">csEventID</a> </td> <td class="paramname">, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">bool </td> <td class="paramname"> = <code>false</code></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> Create an event cord for a given name. <p> </div> </div><p> <a class="anchor" name="1ad2abcb5369709ed58e1510fce62540"></a><!-- doxytag: member="csEventCord::~csEventCord" ref="1ad2abcb5369709ed58e1510fce62540" args="()" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual csEventCord::~csEventCord </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td width="100%"><code> [virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Destructor. <p> </div> </div><p> <hr><h2>Member Function Documentation</h2> <a class="anchor" name="2758ff7252a1026ee4e5f71149b3b357"></a><!-- doxytag: member="csEventCord::GetName" ref="2758ff7252a1026ee4e5f71149b3b357" args="() const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual <a class="el" href="group__event__handling.html#g51e1762faeeefdadf693499fc93db757">csEventID</a> csEventCord::GetName </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td width="100%"> const<code> [inline, virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Get the category of this cord. <p> <p>Implements <a class="el" href="structiEventCord.html#9bd70bb36b0a2d2c344f18966c5505f4">iEventCord</a>.</p> <p>Definition at line <a class="el" href="csevcord_8h-source.html#l00093">93</a> of file <a class="el" href="csevcord_8h-source.html">csevcord.h</a>.</p> </div> </div><p> <a class="anchor" name="f463343c4c1c448a478a78d346a4d299"></a><!-- doxytag: member="csEventCord::GetPass" ref="f463343c4c1c448a478a78d346a4d299" args="() const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual bool csEventCord::GetPass </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td width="100%"> const<code> [inline, virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Get whether events are passed to the system event queue. <p> <p>Implements <a class="el" href="structiEventCord.html#81576bf562f2d4bc97c4964cae9738ae">iEventCord</a>.</p> <p>Definition at line <a class="el" href="csevcord_8h-source.html#l00087">87</a> of file <a class="el" href="csevcord_8h-source.html">csevcord.h</a>.</p> </div> </div><p> <a class="anchor" name="dd13d785acfb5e949a93640b0bc3b802"></a><!-- doxytag: member="csEventCord::Insert" ref="dd13d785acfb5e949a93640b0bc3b802" args="(iEventHandler *, int priority)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual int csEventCord::Insert </td> <td>(</td> <td class="paramtype"><a class="el" href="structiEventHandler.html">iEventHandler</a> * </td> <td class="paramname">, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">int </td> <td class="paramname"> <em>priority</em></td><td> </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> Insert an event handler into the event cord. <p> <p>Implements <a class="el" href="structiEventCord.html#d9b80ee319756877bc8f191310a84ca4">iEventCord</a>.</p> </div> </div><p> <a class="anchor" name="d67209c7766361f44b4192a862e6eb97"></a><!-- doxytag: member="csEventCord::Lock" ref="d67209c7766361f44b4192a862e6eb97" args="()" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void csEventCord::Lock </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td width="100%"><code> [inline, protected]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Lock the queue for modifications: NESTED CALLS TO LOCK/UNLOCK NOT ALLOWED! <p> <p>Definition at line <a class="el" href="csevcord_8h-source.html#l00065">65</a> of file <a class="el" href="csevcord_8h-source.html">csevcord.h</a>.</p> </div> </div><p> <a class="anchor" name="2f68822ca8bd4392a045fcbf388fd1f8"></a><!-- doxytag: member="csEventCord::Remove" ref="2f68822ca8bd4392a045fcbf388fd1f8" args="(iEventHandler *)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual void csEventCord::Remove </td> <td>(</td> <td class="paramtype"><a class="el" href="structiEventHandler.html">iEventHandler</a> * </td> <td class="paramname"> </td> <td> ) </td> <td width="100%"><code> [virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Remove an event handler from the event cord. <p> <p>Implements <a class="el" href="structiEventCord.html#d502185aaa91ee5cb0904006e9d0ec7a">iEventCord</a>.</p> </div> </div><p> <a class="anchor" name="fda1234510fca4c05b997e30ad5caec2"></a><!-- doxytag: member="csEventCord::SetPass" ref="fda1234510fca4c05b997e30ad5caec2" args="(bool flag)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual void csEventCord::SetPass </td> <td>(</td> <td class="paramtype">bool </td> <td class="paramname"> <em>flag</em> </td> <td> ) </td> <td width="100%"><code> [inline, virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Set whether events are passed to the system event queue. <p> <p>Implements <a class="el" href="structiEventCord.html#c8b1125f36dc5e5e518d56d82eea0699">iEventCord</a>.</p> <p>Definition at line <a class="el" href="csevcord_8h-source.html#l00090">90</a> of file <a class="el" href="csevcord_8h-source.html">csevcord.h</a>.</p> </div> </div><p> <a class="anchor" name="2357d7434c0435fc222d5e80ac82995a"></a><!-- doxytag: member="csEventCord::Unlock" ref="2357d7434c0435fc222d5e80ac82995a" args="()" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void csEventCord::Unlock </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td width="100%"><code> [inline, protected]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Unlock the queue. <p> <p>Definition at line <a class="el" href="csevcord_8h-source.html#l00067">67</a> of file <a class="el" href="csevcord_8h-source.html">csevcord.h</a>.</p> </div> </div><p> <hr><h2>Friends And Related Function Documentation</h2> <a class="anchor" name="045c4aa8c93411d96adb6374223fca27"></a><!-- doxytag: member="csEventCord::csEventOutlet" ref="045c4aa8c93411d96adb6374223fca27" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">friend class <a class="el" href="classcsEventOutlet.html">csEventOutlet</a><code> [friend]</code> </td> </tr> </table> </div> <div class="memdoc"> <p> <a class="el" href="structiEventOutlet.html" title="The iEventOutlet is the interface to an object that is provided by an event queue...">iEventOutlet</a> places events into cords. <p> <p>Definition at line <a class="el" href="csevcord_8h-source.html#l00070">70</a> of file <a class="el" href="csevcord_8h-source.html">csevcord.h</a>.</p> </div> </div><p> <hr><h2>Member Data Documentation</h2> <a class="anchor" name="d56c1e777685849b7d7fd248b41861f8"></a><!-- doxytag: member="csEventCord::name" ref="d56c1e777685849b7d7fd248b41861f8" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="group__event__handling.html#g51e1762faeeefdadf693499fc93db757">csEventID</a> <a class="el" href="classcsEventCord.html#d56c1e777685849b7d7fd248b41861f8">csEventCord::name</a><code> [protected]</code> </td> </tr> </table> </div> <div class="memdoc"> <p> The name of the events on this cord. <p> <p>Definition at line <a class="el" href="csevcord_8h-source.html#l00046">46</a> of file <a class="el" href="csevcord_8h-source.html">csevcord.h</a>.</p> </div> </div><p> <a class="anchor" name="ec904cad6d38ee27b97bddcd5f00e1b2"></a><!-- doxytag: member="csEventCord::pass" ref="ec904cad6d38ee27b97bddcd5f00e1b2" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">volatile bool <a class="el" href="classcsEventCord.html#ec904cad6d38ee27b97bddcd5f00e1b2">csEventCord::pass</a><code> [protected]</code> </td> </tr> </table> </div> <div class="memdoc"> <p> Pass events to the system queue? <p> <p>Definition at line <a class="el" href="csevcord_8h-source.html#l00043">43</a> of file <a class="el" href="csevcord_8h-source.html">csevcord.h</a>.</p> </div> </div><p> <a class="anchor" name="0f02c59ad3bfe5e8ec726a6ad7a60103"></a><!-- doxytag: member="csEventCord::plugins" ref="0f02c59ad3bfe5e8ec726a6ad7a60103" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="structcsEventCord_1_1PluginData.html">PluginData</a>* <a class="el" href="classcsEventCord.html#0f02c59ad3bfe5e8ec726a6ad7a60103">csEventCord::plugins</a><code> [protected]</code> </td> </tr> </table> </div> <div class="memdoc"> <p> The cord itself. <p> <p>Definition at line <a class="el" href="csevcord_8h-source.html#l00059">59</a> of file <a class="el" href="csevcord_8h-source.html">csevcord.h</a>.</p> </div> </div><p> <a class="anchor" name="25bf295a14f5006871c151d27b259557"></a><!-- doxytag: member="csEventCord::SpinLock" ref="25bf295a14f5006871c151d27b259557" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">volatile int <a class="el" href="classcsEventCord.html#25bf295a14f5006871c151d27b259557">csEventCord::SpinLock</a><code> [protected]</code> </td> </tr> </table> </div> <div class="memdoc"> <p> Protection against multiple threads accessing the same cord. <p> <p>Definition at line <a class="el" href="csevcord_8h-source.html#l00062">62</a> of file <a class="el" href="csevcord_8h-source.html">csevcord.h</a>.</p> </div> </div><p> <hr>The documentation for this class was generated from the following file:<ul> <li>csutil/<a class="el" href="csevcord_8h-source.html">csevcord.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>