Sophie

Sophie

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

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: csutil/eventhandlers.h File 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><a href="classes.html"><span>Classes</span></a></li>
    <li class="current"><a href="files.html"><span>Files</span></a></li>
    <li><a href="pages.html"><span>Related&nbsp;Pages</span></a></li>
  </ul>
</div>
<h1>csutil/eventhandlers.h File Reference</h1>Event handler naming, name management, indexing, and instantiation. <a href="#_details">More...</a>
<p>
<code>#include &quot;<a class="el" href="cssysdef_8h-source.html">cssysdef.h</a>&quot;</code><br>
<code>#include &quot;csextern.h&quot;</code><br>
<code>#include &quot;<a class="el" href="iutil_2eventnames_8h-source.html">iutil/eventnames.h</a>&quot;</code><br>
<code>#include &quot;<a class="el" href="iutil_2eventhandlers_8h-source.html">iutil/eventhandlers.h</a>&quot;</code><br>
<code>#include &quot;<a class="el" href="eventh_8h-source.html">iutil/eventh.h</a>&quot;</code><br>
<code>#include &quot;<a class="el" href="csstring_8h-source.html">csutil/csstring.h</a>&quot;</code><br>
<code>#include &quot;<a class="el" href="csutil_2eventnames_8h-source.html">csutil/eventnames.h</a>&quot;</code><br>
<code>#include &quot;<a class="el" href="scf__implementation_8h-source.html">csutil/scf_implementation.h</a>&quot;</code><br>
<code>#include &quot;<a class="el" href="hash_8h-source.html">csutil/hash.h</a>&quot;</code><br>
<code>#include &quot;<a class="el" href="csutil_2strset_8h-source.html">csutil/strset.h</a>&quot;</code><br>
<code>#include &quot;<a class="el" href="ref_8h-source.html">csutil/ref.h</a>&quot;</code><br>

<p>
<a href="csutil_2eventhandlers_8h-source.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>Classes</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsEventHandlerRegistry.html">csEventHandlerRegistry</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The <a class="el" href="classcsEventHandlerRegistry.html" title="The csEventHandlerRegistry maintains a global one-to-one mapping from strings to...">csEventHandlerRegistry</a> maintains a global one-to-one mapping from strings to csHandlerIDs, and a one-to-(zero or one) mapping from csHandlerIDs to <a class="el" href="structiEventHandler.html" title="This interface describes an entity that can receive events.">iEventHandler</a> pointers.  <a href="classcsEventHandlerRegistry.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="classFrameSignpost__2DConsole.html">FrameSignpost_2DConsole</a></td></tr>

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

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

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

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

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

<tr><td colspan="2"><br><h2>Defines</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="csutil_2eventhandlers_8h.html#754fd78231a571e0e56e2630b0a4736f">CS_EVENTHANDLER_PHASE_2D</a>(x)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Use this macro to declare your event handler as wanting to handle the csevFrame event in the "2D" phase (i.e., after any handlers in the "3D" phase and before any handlers in the "console" phase).  <a href="#754fd78231a571e0e56e2630b0a4736f"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="csutil_2eventhandlers_8h.html#fe3929bf12ab372791dfa4f926761d08">CS_EVENTHANDLER_PHASE_3D</a>(x)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Use this macro to declare your event handler as wanting to handle the csevFrame event in the "3D" phase (i.e., after any handlers in the "logic" phase and before any handlers in the "2D" phase).  <a href="#fe3929bf12ab372791dfa4f926761d08"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="csutil_2eventhandlers_8h.html#4c23b693961ab200f5decd08f6faa852">CS_EVENTHANDLER_PHASE_CONSOLE</a>(x)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Use this macro to declare your event handler as wanting to handle the csevFrame event in the "Console" phase (i.e., after any handlers in the "2D" phase and before any handlers in the "debug" phase).  <a href="#4c23b693961ab200f5decd08f6faa852"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="csutil_2eventhandlers_8h.html#e816522aa09b4fa75dc09de21329b9e6">CS_EVENTHANDLER_PHASE_DEBUG</a>(x)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Use this macro to declare your event handler as wanting to handle the csevFrame event in the "Debug" phase (i.e., after any handlers in the "Console" phase and before any handlers in the "Frame" phase).  <a href="#e816522aa09b4fa75dc09de21329b9e6"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="csutil_2eventhandlers_8h.html#412901a6fddc603080b4ae1259e47401">CS_EVENTHANDLER_PHASE_FRAME</a>(x)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Use this macro to declare your event handler as wanting to handle the csevFrame event in the "Frame" phase (i.e., after any handlers in the "Debug" phase.  <a href="#412901a6fddc603080b4ae1259e47401"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="csutil_2eventhandlers_8h.html#4ada3b18ed11fdfb128f8a272177fe5d">CS_EVENTHANDLER_PHASE_LOGIC</a>(x)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Use this macro to declare your event handler as wanting to handle the csevFrame event in the "logic" phase (i.e., before any handlers in the "3D" phase).  <a href="#4ada3b18ed11fdfb128f8a272177fe5d"></a><br></td></tr>
</table>
<hr><a name="_details"></a><h2>Detailed Description</h2>
Event handler naming, name management, indexing, and instantiation. 
<p>

<p>Definition in file <a class="el" href="csutil_2eventhandlers_8h-source.html">eventhandlers.h</a>.</p>
<hr><h2>Define Documentation</h2>
<a class="anchor" name="754fd78231a571e0e56e2630b0a4736f"></a><!-- doxytag: member="eventhandlers.h::CS_EVENTHANDLER_PHASE_2D" ref="754fd78231a571e0e56e2630b0a4736f" args="(x)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define CS_EVENTHANDLER_PHASE_2D          </td>
          <td>(</td>
          <td class="paramtype">x&nbsp;</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
<b>Value:</b><div class="fragment"><pre class="fragment"><a class="code" href="group__event__handling.html#g4f7b2a21cfb5997a2bb258920fafc61f" title="Macro to create default GenericName and GenericName methods.">CS_EVENTHANDLER_NAMES</a>(x)                                                \
<a class="code" href="group__event__handling.html#g3b8588d425823594019243398b3d4447" title="Macro to declare instance constraints which are the same as the generics.">CS_EVENTHANDLER_DEFAULT_INSTANCE_CONSTRAINTS</a>                            \
<a class="code" href="cssysdef_8h.html#66bba4b4bdb4b6dadd37563abc499d48" title="Use the CS_CONST_METHOD macro in front of method declarations to indicate that they...">CS_CONST_METHOD</a> <span class="keyword">virtual</span> <span class="keyword">const</span> <a class="code" href="group__event__handling.html#gd62f963e20f1180634a9557b392d987d">csHandlerID</a> * GenericPrec                 \
(<a class="code" href="classcsRef.html" title="A smart pointer.">csRef&lt;iEventHandlerRegistry&gt;</a> &amp;r1, <a class="code" href="classcsRef.html" title="A smart pointer.">csRef&lt;iEventNameRegistry&gt;</a> &amp;r2,       \
 <a class="code" href="group__event__handling.html#g51e1762faeeefdadf693499fc93db757" title="A csEventID is a handle for a string representing an event&amp;#39;s hierarchical name...">csEventID</a> event) <span class="keyword">const</span> {                                               \
  <span class="keyword">static</span> <a class="code" href="group__event__handling.html#gd62f963e20f1180634a9557b392d987d">csHandlerID</a> precConstraint[3];                                 \
  <span class="keywordflow">if</span> (event != <a class="code" href="group__event__handling.html#gb6d197b308f4c78c8690de6a1c252d04" title="Frame event.">csevFrame</a>(r2))                                           \
    <span class="keywordflow">return</span> 0;                                                           \
  precConstraint[0] = FrameSignpost_Logic3D::StaticID(r1);              \
  precConstraint[1] = FrameSignpost_3D2D::StaticID(r1);                 \
  precConstraint[2] = <a class="code" href="group__event__handling.html#g9aa0e2476106e51c7a44ced844b6f20b">CS_HANDLERLIST_END</a>;                               \
  <span class="keywordflow">return</span> precConstraint;                                                \
}                                                                       \
<a class="code" href="cssysdef_8h.html#66bba4b4bdb4b6dadd37563abc499d48" title="Use the CS_CONST_METHOD macro in front of method declarations to indicate that they...">CS_CONST_METHOD</a> <span class="keyword">virtual</span> <span class="keyword">const</span> <a class="code" href="group__event__handling.html#gd62f963e20f1180634a9557b392d987d">csHandlerID</a> * GenericSucc                 \
(<a class="code" href="classcsRef.html" title="A smart pointer.">csRef&lt;iEventHandlerRegistry&gt;</a> &amp;r1, <a class="code" href="classcsRef.html" title="A smart pointer.">csRef&lt;iEventNameRegistry&gt;</a> &amp;r2,       \
 <a class="code" href="group__event__handling.html#g51e1762faeeefdadf693499fc93db757" title="A csEventID is a handle for a string representing an event&amp;#39;s hierarchical name...">csEventID</a> event) <span class="keyword">const</span> {                                               \
  <span class="keyword">static</span> <a class="code" href="group__event__handling.html#gd62f963e20f1180634a9557b392d987d">csHandlerID</a> succConstraint[4];                                 \
  <span class="keywordflow">if</span> (event != <a class="code" href="group__event__handling.html#gb6d197b308f4c78c8690de6a1c252d04" title="Frame event.">csevFrame</a>(r2))                                           \
    <span class="keywordflow">return</span> 0;                                                           \
  succConstraint[0] = FrameSignpost_2DConsole::StaticID(r1);            \
  succConstraint[1] = FrameSignpost_ConsoleDebug::StaticID(r1);         \
  succConstraint[2] = FrameSignpost_DebugFrame::StaticID(r1);           \
  succConstraint[3] = <a class="code" href="group__event__handling.html#g9aa0e2476106e51c7a44ced844b6f20b">CS_HANDLERLIST_END</a>;                               \
  <span class="keywordflow">return</span> succConstraint;                                                \
}
</pre></div>Use this macro to declare your event handler as wanting to handle the csevFrame event in the "2D" phase (i.e., after any handlers in the "3D" phase and before any handlers in the "console" phase). 
<p>

<p>Definition at line <a class="el" href="csutil_2eventhandlers_8h-source.html#l00387">387</a> of file <a class="el" href="csutil_2eventhandlers_8h-source.html">eventhandlers.h</a>.</p>

</div>
</div><p>
<a class="anchor" name="fe3929bf12ab372791dfa4f926761d08"></a><!-- doxytag: member="eventhandlers.h::CS_EVENTHANDLER_PHASE_3D" ref="fe3929bf12ab372791dfa4f926761d08" args="(x)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define CS_EVENTHANDLER_PHASE_3D          </td>
          <td>(</td>
          <td class="paramtype">x&nbsp;</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
<b>Value:</b><div class="fragment"><pre class="fragment"><a class="code" href="group__event__handling.html#g4f7b2a21cfb5997a2bb258920fafc61f" title="Macro to create default GenericName and GenericName methods.">CS_EVENTHANDLER_NAMES</a>(x)                                                \
<a class="code" href="group__event__handling.html#g3b8588d425823594019243398b3d4447" title="Macro to declare instance constraints which are the same as the generics.">CS_EVENTHANDLER_DEFAULT_INSTANCE_CONSTRAINTS</a>                            \
<a class="code" href="cssysdef_8h.html#66bba4b4bdb4b6dadd37563abc499d48" title="Use the CS_CONST_METHOD macro in front of method declarations to indicate that they...">CS_CONST_METHOD</a> <span class="keyword">virtual</span> <span class="keyword">const</span> <a class="code" href="group__event__handling.html#gd62f963e20f1180634a9557b392d987d">csHandlerID</a> * GenericPrec                 \
(<a class="code" href="classcsRef.html" title="A smart pointer.">csRef&lt;iEventHandlerRegistry&gt;</a> &amp;r1, <a class="code" href="classcsRef.html" title="A smart pointer.">csRef&lt;iEventNameRegistry&gt;</a> &amp;r2,       \
 <a class="code" href="group__event__handling.html#g51e1762faeeefdadf693499fc93db757" title="A csEventID is a handle for a string representing an event&amp;#39;s hierarchical name...">csEventID</a> event) <span class="keyword">const</span> {                                               \
  <span class="keyword">static</span> <a class="code" href="group__event__handling.html#gd62f963e20f1180634a9557b392d987d">csHandlerID</a> precConstraint[2];                                 \
  <span class="keywordflow">if</span> (event != <a class="code" href="group__event__handling.html#gb6d197b308f4c78c8690de6a1c252d04" title="Frame event.">csevFrame</a>(r2))                                           \
    <span class="keywordflow">return</span> 0;                                                           \
  precConstraint[0] = FrameSignpost_Logic3D::StaticID(r1);              \
  precConstraint[1] = <a class="code" href="group__event__handling.html#g9aa0e2476106e51c7a44ced844b6f20b">CS_HANDLERLIST_END</a>;                               \
  <span class="keywordflow">return</span> precConstraint;                                                \
}                                                                       \
<a class="code" href="cssysdef_8h.html#66bba4b4bdb4b6dadd37563abc499d48" title="Use the CS_CONST_METHOD macro in front of method declarations to indicate that they...">CS_CONST_METHOD</a> <span class="keyword">virtual</span> <span class="keyword">const</span> <a class="code" href="group__event__handling.html#gd62f963e20f1180634a9557b392d987d">csHandlerID</a> * GenericSucc                 \
(<a class="code" href="classcsRef.html" title="A smart pointer.">csRef&lt;iEventHandlerRegistry&gt;</a> &amp;r1, <a class="code" href="classcsRef.html" title="A smart pointer.">csRef&lt;iEventNameRegistry&gt;</a> &amp;r2,       \
 <a class="code" href="group__event__handling.html#g51e1762faeeefdadf693499fc93db757" title="A csEventID is a handle for a string representing an event&amp;#39;s hierarchical name...">csEventID</a> event) <span class="keyword">const</span> {                                               \
  <span class="keyword">static</span> <a class="code" href="group__event__handling.html#gd62f963e20f1180634a9557b392d987d">csHandlerID</a> succConstraint[5];                                 \
  <span class="keywordflow">if</span> (event != <a class="code" href="group__event__handling.html#gb6d197b308f4c78c8690de6a1c252d04" title="Frame event.">csevFrame</a>(r2))                                           \
    <span class="keywordflow">return</span> 0;                                                           \
  succConstraint[0] = FrameSignpost_3D2D::StaticID(r1);                 \
  succConstraint[1] = FrameSignpost_2DConsole::StaticID(r1);            \
  succConstraint[2] = FrameSignpost_ConsoleDebug::StaticID(r1);         \
  succConstraint[3] = FrameSignpost_DebugFrame::StaticID(r1);           \
  succConstraint[4] = <a class="code" href="group__event__handling.html#g9aa0e2476106e51c7a44ced844b6f20b">CS_HANDLERLIST_END</a>;                               \
  <span class="keywordflow">return</span> succConstraint;                                                \
}
</pre></div>Use this macro to declare your event handler as wanting to handle the csevFrame event in the "3D" phase (i.e., after any handlers in the "logic" phase and before any handlers in the "2D" phase). 
<p>

<p>Definition at line <a class="el" href="csutil_2eventhandlers_8h-source.html#l00354">354</a> of file <a class="el" href="csutil_2eventhandlers_8h-source.html">eventhandlers.h</a>.</p>

</div>
</div><p>
<a class="anchor" name="4c23b693961ab200f5decd08f6faa852"></a><!-- doxytag: member="eventhandlers.h::CS_EVENTHANDLER_PHASE_CONSOLE" ref="4c23b693961ab200f5decd08f6faa852" args="(x)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define CS_EVENTHANDLER_PHASE_CONSOLE          </td>
          <td>(</td>
          <td class="paramtype">x&nbsp;</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
<b>Value:</b><div class="fragment"><pre class="fragment"><a class="code" href="group__event__handling.html#g4f7b2a21cfb5997a2bb258920fafc61f" title="Macro to create default GenericName and GenericName methods.">CS_EVENTHANDLER_NAMES</a>(x)                                                \
<a class="code" href="group__event__handling.html#g3b8588d425823594019243398b3d4447" title="Macro to declare instance constraints which are the same as the generics.">CS_EVENTHANDLER_DEFAULT_INSTANCE_CONSTRAINTS</a>                            \
<a class="code" href="cssysdef_8h.html#66bba4b4bdb4b6dadd37563abc499d48" title="Use the CS_CONST_METHOD macro in front of method declarations to indicate that they...">CS_CONST_METHOD</a> <span class="keyword">virtual</span> <span class="keyword">const</span> <a class="code" href="group__event__handling.html#gd62f963e20f1180634a9557b392d987d">csHandlerID</a> * GenericPrec                 \
(<a class="code" href="classcsRef.html" title="A smart pointer.">csRef&lt;iEventHandlerRegistry&gt;</a> &amp;r1, <a class="code" href="classcsRef.html" title="A smart pointer.">csRef&lt;iEventNameRegistry&gt;</a> &amp;r2,       \
 <a class="code" href="group__event__handling.html#g51e1762faeeefdadf693499fc93db757" title="A csEventID is a handle for a string representing an event&amp;#39;s hierarchical name...">csEventID</a> event) <span class="keyword">const</span> {                                               \
  <span class="keyword">static</span> <a class="code" href="group__event__handling.html#gd62f963e20f1180634a9557b392d987d">csHandlerID</a> precConstraint[4];                                 \
  <span class="keywordflow">if</span> (event != <a class="code" href="group__event__handling.html#gb6d197b308f4c78c8690de6a1c252d04" title="Frame event.">csevFrame</a>(r2))                                           \
    <span class="keywordflow">return</span> 0;                                                           \
  precConstraint[0] = FrameSignpost_Logic3D::StaticID(r1);              \
  precConstraint[1] = FrameSignpost_3D2D::StaticID(r1);                 \
  precConstraint[2] = FrameSignpost_2DConsole::StaticID(r1);            \
  precConstraint[3] = <a class="code" href="group__event__handling.html#g9aa0e2476106e51c7a44ced844b6f20b">CS_HANDLERLIST_END</a>;                               \
  <span class="keywordflow">return</span> precConstraint;                                                \
}                                                                       \
<a class="code" href="cssysdef_8h.html#66bba4b4bdb4b6dadd37563abc499d48" title="Use the CS_CONST_METHOD macro in front of method declarations to indicate that they...">CS_CONST_METHOD</a> <span class="keyword">virtual</span> <span class="keyword">const</span> <a class="code" href="group__event__handling.html#gd62f963e20f1180634a9557b392d987d">csHandlerID</a> * GenericSucc                 \
(<a class="code" href="classcsRef.html" title="A smart pointer.">csRef&lt;iEventHandlerRegistry&gt;</a> &amp;r1, <a class="code" href="classcsRef.html" title="A smart pointer.">csRef&lt;iEventNameRegistry&gt;</a> &amp;r2,       \
 <a class="code" href="group__event__handling.html#g51e1762faeeefdadf693499fc93db757" title="A csEventID is a handle for a string representing an event&amp;#39;s hierarchical name...">csEventID</a> event) <span class="keyword">const</span> {                                               \
  <span class="keyword">static</span> <a class="code" href="group__event__handling.html#gd62f963e20f1180634a9557b392d987d">csHandlerID</a> succConstraint[3];                                 \
  <span class="keywordflow">if</span> (event != <a class="code" href="group__event__handling.html#gb6d197b308f4c78c8690de6a1c252d04" title="Frame event.">csevFrame</a>(r2))                                           \
    <span class="keywordflow">return</span> 0;                                                           \
  succConstraint[0] = FrameSignpost_ConsoleDebug::StaticID(r1);         \
  succConstraint[1] = FrameSignpost_DebugFrame::StaticID(r1);           \
  succConstraint[2] = <a class="code" href="group__event__handling.html#g9aa0e2476106e51c7a44ced844b6f20b">CS_HANDLERLIST_END</a>;                               \
  <span class="keywordflow">return</span> succConstraint;                                                \
}
</pre></div>Use this macro to declare your event handler as wanting to handle the csevFrame event in the "Console" phase (i.e., after any handlers in the "2D" phase and before any handlers in the "debug" phase). 
<p>

<p>Definition at line <a class="el" href="csutil_2eventhandlers_8h-source.html#l00420">420</a> of file <a class="el" href="csutil_2eventhandlers_8h-source.html">eventhandlers.h</a>.</p>

</div>
</div><p>
<a class="anchor" name="e816522aa09b4fa75dc09de21329b9e6"></a><!-- doxytag: member="eventhandlers.h::CS_EVENTHANDLER_PHASE_DEBUG" ref="e816522aa09b4fa75dc09de21329b9e6" args="(x)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define CS_EVENTHANDLER_PHASE_DEBUG          </td>
          <td>(</td>
          <td class="paramtype">x&nbsp;</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
<b>Value:</b><div class="fragment"><pre class="fragment"><a class="code" href="group__event__handling.html#g4f7b2a21cfb5997a2bb258920fafc61f" title="Macro to create default GenericName and GenericName methods.">CS_EVENTHANDLER_NAMES</a>(x)                                                \
<a class="code" href="group__event__handling.html#g3b8588d425823594019243398b3d4447" title="Macro to declare instance constraints which are the same as the generics.">CS_EVENTHANDLER_DEFAULT_INSTANCE_CONSTRAINTS</a>                            \
<a class="code" href="cssysdef_8h.html#66bba4b4bdb4b6dadd37563abc499d48" title="Use the CS_CONST_METHOD macro in front of method declarations to indicate that they...">CS_CONST_METHOD</a> <span class="keyword">virtual</span> <span class="keyword">const</span> <a class="code" href="group__event__handling.html#gd62f963e20f1180634a9557b392d987d">csHandlerID</a> * GenericPrec                 \
(<a class="code" href="classcsRef.html" title="A smart pointer.">csRef&lt;iEventHandlerRegistry&gt;</a> &amp;r1, <a class="code" href="classcsRef.html" title="A smart pointer.">csRef&lt;iEventNameRegistry&gt;</a> &amp;r2,       \
 <a class="code" href="group__event__handling.html#g51e1762faeeefdadf693499fc93db757" title="A csEventID is a handle for a string representing an event&amp;#39;s hierarchical name...">csEventID</a> event) <span class="keyword">const</span> {                                               \
  <span class="keyword">static</span> <a class="code" href="group__event__handling.html#gd62f963e20f1180634a9557b392d987d">csHandlerID</a> precConstraint[5];                                 \
  <span class="keywordflow">if</span> (event != <a class="code" href="group__event__handling.html#gb6d197b308f4c78c8690de6a1c252d04" title="Frame event.">csevFrame</a>(r2))                                           \
    <span class="keywordflow">return</span> 0;                                                           \
  precConstraint[0] = FrameSignpost_Logic3D::StaticID(r1);              \
  precConstraint[0] = FrameSignpost_3D2D::StaticID(r1);                 \
  precConstraint[0] = FrameSignpost_2DConsole::StaticID(r1);            \
  precConstraint[0] = FrameSignpost_ConsoleDebug::StaticID(r1);         \
  precConstraint[1] = <a class="code" href="group__event__handling.html#g9aa0e2476106e51c7a44ced844b6f20b">CS_HANDLERLIST_END</a>;                               \
  <span class="keywordflow">return</span> precConstraint;                                                \
}                                                                       \
<a class="code" href="cssysdef_8h.html#66bba4b4bdb4b6dadd37563abc499d48" title="Use the CS_CONST_METHOD macro in front of method declarations to indicate that they...">CS_CONST_METHOD</a> <span class="keyword">virtual</span> <span class="keyword">const</span> <a class="code" href="group__event__handling.html#gd62f963e20f1180634a9557b392d987d">csHandlerID</a> * GenericSucc                 \
(<a class="code" href="classcsRef.html" title="A smart pointer.">csRef&lt;iEventHandlerRegistry&gt;</a> &amp;r1, <a class="code" href="classcsRef.html" title="A smart pointer.">csRef&lt;iEventNameRegistry&gt;</a> &amp;r2,       \
 <a class="code" href="group__event__handling.html#g51e1762faeeefdadf693499fc93db757" title="A csEventID is a handle for a string representing an event&amp;#39;s hierarchical name...">csEventID</a> event) <span class="keyword">const</span> {                                               \
  <span class="keyword">static</span> <a class="code" href="group__event__handling.html#gd62f963e20f1180634a9557b392d987d">csHandlerID</a> succConstraint[2];                                 \
  <span class="keywordflow">if</span> (event != <a class="code" href="group__event__handling.html#gb6d197b308f4c78c8690de6a1c252d04" title="Frame event.">csevFrame</a>(r2))                                           \
    <span class="keywordflow">return</span> 0;                                                           \
  succConstraint[0] = FrameSignpost_DebugFrame::StaticID(r1);           \
  succConstraint[1] = <a class="code" href="group__event__handling.html#g9aa0e2476106e51c7a44ced844b6f20b">CS_HANDLERLIST_END</a>;                               \
  <span class="keywordflow">return</span> succConstraint;                                                \
}
</pre></div>Use this macro to declare your event handler as wanting to handle the csevFrame event in the "Debug" phase (i.e., after any handlers in the "Console" phase and before any handlers in the "Frame" phase). 
<p>

<p>Definition at line <a class="el" href="csutil_2eventhandlers_8h-source.html#l00453">453</a> of file <a class="el" href="csutil_2eventhandlers_8h-source.html">eventhandlers.h</a>.</p>

</div>
</div><p>
<a class="anchor" name="412901a6fddc603080b4ae1259e47401"></a><!-- doxytag: member="eventhandlers.h::CS_EVENTHANDLER_PHASE_FRAME" ref="412901a6fddc603080b4ae1259e47401" args="(x)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define CS_EVENTHANDLER_PHASE_FRAME          </td>
          <td>(</td>
          <td class="paramtype">x&nbsp;</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
<b>Value:</b><div class="fragment"><pre class="fragment"><a class="code" href="group__event__handling.html#g4f7b2a21cfb5997a2bb258920fafc61f" title="Macro to create default GenericName and GenericName methods.">CS_EVENTHANDLER_NAMES</a>(x)                                                \
<a class="code" href="group__event__handling.html#g3b8588d425823594019243398b3d4447" title="Macro to declare instance constraints which are the same as the generics.">CS_EVENTHANDLER_DEFAULT_INSTANCE_CONSTRAINTS</a>                            \
<a class="code" href="cssysdef_8h.html#66bba4b4bdb4b6dadd37563abc499d48" title="Use the CS_CONST_METHOD macro in front of method declarations to indicate that they...">CS_CONST_METHOD</a> <span class="keyword">virtual</span> <span class="keyword">const</span> <a class="code" href="group__event__handling.html#gd62f963e20f1180634a9557b392d987d">csHandlerID</a> * GenericPrec                 \
(<a class="code" href="classcsRef.html" title="A smart pointer.">csRef&lt;iEventHandlerRegistry&gt;</a> &amp;r1, <a class="code" href="classcsRef.html" title="A smart pointer.">csRef&lt;iEventNameRegistry&gt;</a> &amp;r2,       \
 <a class="code" href="group__event__handling.html#g51e1762faeeefdadf693499fc93db757" title="A csEventID is a handle for a string representing an event&amp;#39;s hierarchical name...">csEventID</a> event) <span class="keyword">const</span> {                                               \
  <span class="keyword">static</span> <a class="code" href="group__event__handling.html#gd62f963e20f1180634a9557b392d987d">csHandlerID</a> precConstraint[6];                                 \
  <span class="keywordflow">if</span> (event != <a class="code" href="group__event__handling.html#gb6d197b308f4c78c8690de6a1c252d04" title="Frame event.">csevFrame</a>(r2))                                           \
    <span class="keywordflow">return</span> 0;                                                           \
  precConstraint[0] = FrameSignpost_Logic3D::StaticID(r1);              \
  precConstraint[0] = FrameSignpost_3D2D::StaticID(r1);                 \
  precConstraint[0] = FrameSignpost_2DConsole::StaticID(r1);            \
  precConstraint[0] = FrameSignpost_ConsoleDebug::StaticID(r1);         \
  precConstraint[0] = FrameSignpost_DebugFrame::StaticID(r1);           \
  precConstraint[1] = <a class="code" href="group__event__handling.html#g9aa0e2476106e51c7a44ced844b6f20b">CS_HANDLERLIST_END</a>;                               \
  <span class="keywordflow">return</span> precConstraint;                                                \
}                                                                       \
<a class="code" href="cssysdef_8h.html#66bba4b4bdb4b6dadd37563abc499d48" title="Use the CS_CONST_METHOD macro in front of method declarations to indicate that they...">CS_CONST_METHOD</a> <span class="keyword">virtual</span> <span class="keyword">const</span> <a class="code" href="group__event__handling.html#gd62f963e20f1180634a9557b392d987d">csHandlerID</a> * GenericSucc                 \
(<a class="code" href="classcsRef.html" title="A smart pointer.">csRef&lt;iEventHandlerRegistry&gt;</a> &amp;, <a class="code" href="classcsRef.html" title="A smart pointer.">csRef&lt;iEventNameRegistry&gt;</a> &amp;,           \
 <a class="code" href="group__event__handling.html#g51e1762faeeefdadf693499fc93db757" title="A csEventID is a handle for a string representing an event&amp;#39;s hierarchical name...">csEventID</a>) <span class="keyword">const</span> {                                                     \
  <span class="keywordflow">return</span> 0;                                                             \
}
</pre></div>Use this macro to declare your event handler as wanting to handle the csevFrame event in the "Frame" phase (i.e., after any handlers in the "Debug" phase. 
<p>

<p>Definition at line <a class="el" href="csutil_2eventhandlers_8h-source.html#l00485">485</a> of file <a class="el" href="csutil_2eventhandlers_8h-source.html">eventhandlers.h</a>.</p>

</div>
</div><p>
<a class="anchor" name="4ada3b18ed11fdfb128f8a272177fe5d"></a><!-- doxytag: member="eventhandlers.h::CS_EVENTHANDLER_PHASE_LOGIC" ref="4ada3b18ed11fdfb128f8a272177fe5d" args="(x)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define CS_EVENTHANDLER_PHASE_LOGIC          </td>
          <td>(</td>
          <td class="paramtype">x&nbsp;</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
<b>Value:</b><div class="fragment"><pre class="fragment"><a class="code" href="group__event__handling.html#g4f7b2a21cfb5997a2bb258920fafc61f" title="Macro to create default GenericName and GenericName methods.">CS_EVENTHANDLER_NAMES</a>(x)                                                \
<a class="code" href="group__event__handling.html#g3b8588d425823594019243398b3d4447" title="Macro to declare instance constraints which are the same as the generics.">CS_EVENTHANDLER_DEFAULT_INSTANCE_CONSTRAINTS</a>                            \
<a class="code" href="cssysdef_8h.html#66bba4b4bdb4b6dadd37563abc499d48" title="Use the CS_CONST_METHOD macro in front of method declarations to indicate that they...">CS_CONST_METHOD</a> <span class="keyword">virtual</span> <span class="keyword">const</span> <a class="code" href="group__event__handling.html#gd62f963e20f1180634a9557b392d987d">csHandlerID</a> * GenericPrec                 \
(<a class="code" href="classcsRef.html" title="A smart pointer.">csRef&lt;iEventHandlerRegistry&gt;</a> &amp;, <a class="code" href="classcsRef.html" title="A smart pointer.">csRef&lt;iEventNameRegistry&gt;</a> &amp;,           \
 <a class="code" href="group__event__handling.html#g51e1762faeeefdadf693499fc93db757" title="A csEventID is a handle for a string representing an event&amp;#39;s hierarchical name...">csEventID</a>) <span class="keyword">const</span> {                                                     \
  <span class="keywordflow">return</span> 0;                                                             \
}                                                                       \
<a class="code" href="cssysdef_8h.html#66bba4b4bdb4b6dadd37563abc499d48" title="Use the CS_CONST_METHOD macro in front of method declarations to indicate that they...">CS_CONST_METHOD</a> <span class="keyword">virtual</span> <span class="keyword">const</span> <a class="code" href="group__event__handling.html#gd62f963e20f1180634a9557b392d987d">csHandlerID</a> * GenericSucc                 \
(<a class="code" href="classcsRef.html" title="A smart pointer.">csRef&lt;iEventHandlerRegistry&gt;</a> &amp;r1, csRef&lt;iEventNameRegistry&gt; &amp;r2,       \
 <a class="code" href="group__event__handling.html#g51e1762faeeefdadf693499fc93db757" title="A csEventID is a handle for a string representing an event&amp;#39;s hierarchical name...">csEventID</a> event) <span class="keyword">const</span> {                                               \
  <span class="keyword">static</span> <a class="code" href="group__event__handling.html#gd62f963e20f1180634a9557b392d987d">csHandlerID</a> succConstraint[6];                                 \
  <span class="keywordflow">if</span> (event != <a class="code" href="group__event__handling.html#gb6d197b308f4c78c8690de6a1c252d04" title="Frame event.">csevFrame</a>(r2))                                           \
    <span class="keywordflow">return</span> 0;                                                           \
  succConstraint[0] = FrameSignpost_Logic3D::StaticID(r1);              \
  succConstraint[1] = FrameSignpost_3D2D::StaticID(r1);                 \
  succConstraint[2] = FrameSignpost_2DConsole::StaticID(r1);            \
  succConstraint[3] = FrameSignpost_ConsoleDebug::StaticID(r1);         \
  succConstraint[4] = FrameSignpost_DebugFrame::StaticID(r1);           \
  succConstraint[5] = <a class="code" href="group__event__handling.html#g9aa0e2476106e51c7a44ced844b6f20b">CS_HANDLERLIST_END</a>;                               \
  <span class="keywordflow">return</span> succConstraint;                                                \
}
</pre></div>Use this macro to declare your event handler as wanting to handle the csevFrame event in the "logic" phase (i.e., before any handlers in the "3D" phase). 
<p>

<p>Definition at line <a class="el" href="csutil_2eventhandlers_8h-source.html#l00325">325</a> of file <a class="el" href="csutil_2eventhandlers_8h-source.html">eventhandlers.h</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>