Sophie

Sophie

distrib > Fedora > 16 > i386 > by-pkgid > 4bc66056a634db26a1f4d0845dc41ca6 > files > 5480

mrpt-doc-0.9.5-0.1.20110925svn2670.fc16.i686.rpm

<!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>mrpt::utils::mrptEvent Class Reference</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
<link href="tabs.css" rel="stylesheet" type="text/css">
</head><body>
<div align="left"><a href="http://www.mrpt.org/">Main MRPT website</a> &gt; <b>C++ reference</b> </div>
<div align="right">
<a href="index.html"><img border="0" src="mrpt_logo.png" alt="MRPT logo"></a>
</div>
<!-- Generated by Doxygen 1.7.5 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
      <li><a href="pages.html"><span>Related&#160;Pages</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="annotated.html"><span>Classes</span></a></li>
      <li><a href="files.html"><span>Files</span></a></li>
      <li>
        <div id="MSearchBox" class="MSearchBoxInactive">
          <div class="left">
            <form id="FSearchBox" action="search.php" method="get">
              <img id="MSearchSelect" src="search/mag.png" alt=""/>
              <input type="text" id="MSearchField" name="query" value="Search" size="20" accesskey="S" 
                     onfocus="searchBox.OnSearchFieldFocus(true)" 
                     onblur="searchBox.OnSearchFieldFocus(false)"/>
            </form>
          </div><div class="right"></div>
        </div>
      </li>
    </ul>
  </div>
  <div id="navrow2" class="tabs2">
    <ul class="tablist">
      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
    </ul>
  </div>
  <div id="nav-path" class="navpath">
    <ul>
      <li class="navelem"><a class="el" href="namespacemrpt.html">mrpt</a>      </li>
      <li class="navelem"><a class="el" href="namespacemrpt_1_1utils.html">utils</a>      </li>
      <li class="navelem"><a class="el" href="classmrpt_1_1utils_1_1mrpt_event.html">mrptEvent</a>      </li>
    </ul>
  </div>
</div>
<div class="header">
  <div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pub-attribs">Public Attributes</a> &#124;
<a href="#pro-methods">Protected Member Functions</a>  </div>
  <div class="headertitle">
<div class="title">mrpt::utils::mrptEvent Class Reference<div class="ingroups"><a class="el" href="group__mrpt__base__grp.html">[mrpt-base]</a></div></div>  </div>
</div>
<div class="contents">
<!-- doxytag: class="mrpt::utils::mrptEvent" --><hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
<div class="textblock"><p>The basic event type for the observer-observable pattern in MRPT. </p>
<p>You can sub-class this base class to create custom event types, then tell between them in runtime with <a class="el" href="classmrpt_1_1utils_1_1mrpt_event.html#aa9971e6282c268bd4380e294bfb71b60">isOfType&lt;T&gt;()</a>, for example: </p>
<div class="fragment"><pre class="fragment">   <span class="keywordflow">if</span> (e.isOfType&lt;mrptEventOnDestroy&gt;())
   {
     <span class="keyword">const</span> mrptEventOnDestroy* ev = e.getAs&lt;mrptEventOnDestroy&gt;();
     ev-&gt; ...
   }
</pre></div><dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="classmrpt_1_1utils_1_1_c_observer.html" title="Inherit from this class to get notified about events from any CObservable object after subscribing to...">CObserver</a>, <a class="el" href="classmrpt_1_1utils_1_1_c_observable.html" title="Inherit from this class for those objects capable of being observed by a CObserver class...">CObservable</a> </dd></dl>
</div>
<p><code>#include &lt;<a class="el" href="mrpt_event_8h_source.html">mrpt/utils/mrptEvent.h</a>&gt;</code></p>
<div class="dynheader">
Inheritance diagram for mrpt::utils::mrptEvent:</div>
<div class="dyncontent">
<div class="center"><img src="classmrpt_1_1utils_1_1mrpt_event__inherit__graph.png" border="0" usemap="#mrpt_1_1utils_1_1mrpt_event_inherit__map" alt="Inheritance graph"/></div>
<map name="mrpt_1_1utils_1_1mrpt_event_inherit__map" id="mrpt_1_1utils_1_1mrpt_event_inherit__map">
<area shape="rect" id="node3" href="classmrpt_1_1gui_1_1mrpt_event3_d_window_grab_image_file.html" title="An event sent by a CDisplayWindow3D window when an image is saved after enabling this feature with CD..." alt="" coords="203,5,493,32"/><area shape="rect" id="node5" href="classmrpt_1_1gui_1_1mrpt_event_mouse_down.html" title="An event sent by a window upon a mouse click, giving the (x,y) pixel coordinates." alt="" coords="241,56,455,83"/><area shape="rect" id="node7" href="classmrpt_1_1gui_1_1mrpt_event_window_char.html" title="An event sent by a window upon a char pressed by the user." alt="" coords="240,107,456,133"/><area shape="rect" id="node9" href="classmrpt_1_1gui_1_1mrpt_event_window_resize.html" title="An event sent by a window upon resize." alt="" coords="233,157,463,184"/><area shape="rect" id="node11" href="classmrpt_1_1opengl_1_1mrpt_event_g_l_post_render.html" title="An event sent by an mrpt::opengl::COpenGLViewport after calling the scene OpenGL drawing primitives a..." alt="" coords="224,208,472,235"/><area shape="rect" id="node13" href="classmrpt_1_1opengl_1_1mrpt_event_g_l_pre_render.html" title="An event sent by an mrpt::opengl::COpenGLViewport just after clearing the viewport and setting the GL..." alt="" coords="227,259,469,285"/><area shape="rect" id="node15" href="classmrpt_1_1slam_1_1mrpt_event_metric_map_clear.html" title="Event emitted by a metric up upon call of clear()" alt="" coords="226,309,470,336"/><area shape="rect" id="node17" href="classmrpt_1_1slam_1_1mrpt_event_metric_map_insert.html" title="Event emitted by a metric up upon a succesful call to insertObservation()" alt="" coords="225,360,471,387"/><area shape="rect" id="node19" href="classmrpt_1_1utils_1_1mrpt_event_on_destroy.html" title="An event sent by any CObservable object (automatically) just before being destroyed and telling its o..." alt="" coords="243,411,453,437"/></map>
<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>

<p><a href="classmrpt_1_1utils_1_1mrpt_event-members.html">List of all members.</a></p>
<table class="memberdecls">
<tr><td colspan="2"><h2><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1utils_1_1mrpt_event.html#a8a2e1e1de9f534f2eace62dcfbee7e7a">mrptEvent</a> ()</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Default ctor.  <a href="#a8a2e1e1de9f534f2eace62dcfbee7e7a"></a><br/></td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;class EVENTTYPE &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">bool&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classmrpt_1_1utils_1_1mrpt_event.html#aa9971e6282c268bd4380e294bfb71b60">isOfType</a> () const </td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;class EVENTTYPE &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">const EVENTTYPE *&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classmrpt_1_1utils_1_1mrpt_event.html#ab487ce428310b75d268edadff6be6c0c">getAs</a> () const </td></tr>
<tr><td colspan="2"><h2><a name="pub-attribs"></a>
Public Attributes</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__time__date.html#ga42674286d8d56afea013b6329bb7327a">mrpt::system::TTimeStamp</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1utils_1_1mrpt_event.html#aceba670cb9ef07097a20af98b5e40f61">timestamp</a></td></tr>
<tr><td colspan="2"><h2><a name="pro-methods"></a>
Protected Member Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1utils_1_1mrpt_event.html#acfe7c36c5c89d7efd437f83870171f0a">do_nothing</a> ()</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Just to allow this class to be polymorphic.  <a href="#acfe7c36c5c89d7efd437f83870171f0a"></a><br/></td></tr>
</table>
<hr/><h2>Constructor &amp; Destructor Documentation</h2>
<a class="anchor" id="a8a2e1e1de9f534f2eace62dcfbee7e7a"></a><!-- doxytag: member="mrpt::utils::mrptEvent::mrptEvent" ref="a8a2e1e1de9f534f2eace62dcfbee7e7a" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">mrpt::utils::mrptEvent::mrptEvent </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Default ctor. </p>

<p>Definition at line <a class="el" href="mrpt_event_8h_source.html#l00060">60</a> of file <a class="el" href="mrpt_event_8h_source.html">mrptEvent.h</a>.</p>

</div>
</div>
<hr/><h2>Member Function Documentation</h2>
<a class="anchor" id="acfe7c36c5c89d7efd437f83870171f0a"></a><!-- doxytag: member="mrpt::utils::mrptEvent::do_nothing" ref="acfe7c36c5c89d7efd437f83870171f0a" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void mrpt::utils::mrptEvent::do_nothing </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td><code> [inline, protected, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Just to allow this class to be polymorphic. </p>

<p>Reimplemented in <a class="el" href="classmrpt_1_1opengl_1_1mrpt_event_g_l_post_render.html#a542ed748df75229d5881f328afaa5bf4">mrpt::opengl::mrptEventGLPostRender</a>, <a class="el" href="classmrpt_1_1gui_1_1mrpt_event3_d_window_grab_image_file.html#aae9f0c9c79a47664165f927c9b0f7b7a">mrpt::gui::mrptEvent3DWindowGrabImageFile</a>, <a class="el" href="classmrpt_1_1opengl_1_1mrpt_event_g_l_pre_render.html#a17e4b0221e743d4dd47cf124e3f15870">mrpt::opengl::mrptEventGLPreRender</a>, <a class="el" href="classmrpt_1_1gui_1_1mrpt_event_mouse_down.html#ab27ba5fb02d35e41abc881119e9b25b3">mrpt::gui::mrptEventMouseDown</a>, <a class="el" href="classmrpt_1_1gui_1_1mrpt_event_window_resize.html#a551f070ee9724b870f4ee52aea566ff1">mrpt::gui::mrptEventWindowResize</a>, <a class="el" href="classmrpt_1_1gui_1_1mrpt_event_window_char.html#a92bc871ddd8b7ed913da2d8e4f352597">mrpt::gui::mrptEventWindowChar</a>, <a class="el" href="classmrpt_1_1utils_1_1mrpt_event_on_destroy.html#afd57a1b738e02f6fa49b972715dcc98c">mrpt::utils::mrptEventOnDestroy</a>, <a class="el" href="classmrpt_1_1slam_1_1mrpt_event_metric_map_insert.html#a79d11b319a5fd36ba189aa33260bc5b2">mrpt::slam::mrptEventMetricMapInsert</a>, and <a class="el" href="classmrpt_1_1slam_1_1mrpt_event_metric_map_clear.html#ac89507164a51f8e55206c60386e2600d">mrpt::slam::mrptEventMetricMapClear</a>.</p>

<p>Definition at line <a class="el" href="mrpt_event_8h_source.html#l00057">57</a> of file <a class="el" href="mrpt_event_8h_source.html">mrptEvent.h</a>.</p>

</div>
</div>
<a class="anchor" id="ab487ce428310b75d268edadff6be6c0c"></a><!-- doxytag: member="mrpt::utils::mrptEvent::getAs" ref="ab487ce428310b75d268edadff6be6c0c" args="() const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class EVENTTYPE &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">const EVENTTYPE* mrpt::utils::mrptEvent::getAs </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="mrpt_event_8h_source.html#l00066">66</a> of file <a class="el" href="mrpt_event_8h_source.html">mrptEvent.h</a>.</p>

</div>
</div>
<a class="anchor" id="aa9971e6282c268bd4380e294bfb71b60"></a><!-- doxytag: member="mrpt::utils::mrptEvent::isOfType" ref="aa9971e6282c268bd4380e294bfb71b60" args="() const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class EVENTTYPE &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">bool mrpt::utils::mrptEvent::isOfType </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="mrpt_event_8h_source.html#l00063">63</a> of file <a class="el" href="mrpt_event_8h_source.html">mrptEvent.h</a>.</p>

</div>
</div>
<hr/><h2>Member Data Documentation</h2>
<a class="anchor" id="aceba670cb9ef07097a20af98b5e40f61"></a><!-- doxytag: member="mrpt::utils::mrptEvent::timestamp" ref="aceba670cb9ef07097a20af98b5e40f61" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__time__date.html#ga42674286d8d56afea013b6329bb7327a">mrpt::system::TTimeStamp</a> <a class="el" href="classmrpt_1_1utils_1_1mrpt_event.html#aceba670cb9ef07097a20af98b5e40f61">mrpt::utils::mrptEvent::timestamp</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="mrpt_event_8h_source.html#l00068">68</a> of file <a class="el" href="mrpt_event_8h_source.html">mrptEvent.h</a>.</p>

</div>
</div>
</div>
<br><hr><br> <table border="0" width="100%"> <tr> <td> Page generated by <a href="http://www.doxygen.org" target="_blank">Doxygen 1.7.5</a> for MRPT 0.9.5 SVN: at Sun Sep 25 17:20:18 UTC 2011</td><td></td> <td width="100"> </td> <td width="150">  </td></tr> </table>  </body></html>