Sophie

Sophie

distrib > Mageia > 3 > i586 > by-pkgid > e578f4cf935b2a206e9e379369138ca9 > files > 984

fife-doc-0.3.3-4.mga3.noarch.rpm

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.3"/>
<title>FIFE: FIFE::QuadTree&lt; DataType, MinimumSize &gt; Class Template Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
  $(document).ready(initResizable);
  $(window).load(resizeHeight);
</script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
  $(document).ready(function() { searchBox.OnSelectItem(0); });
</script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td style="padding-left: 0.5em;">
   <div id="projectname">FIFE
   &#160;<span id="projectnumber">2008.0</span>
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.3 -->
<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="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><a href="examples.html"><span>Examples</span></a></li>
      <li>
        <div id="MSearchBox" class="MSearchBoxInactive">
        <span class="left">
          <img id="MSearchSelect" src="search/mag_sel.png"
               onmouseover="return searchBox.OnSearchSelectShow()"
               onmouseout="return searchBox.OnSearchSelectHide()"
               alt=""/>
          <input type="text" id="MSearchField" value="Search" accesskey="S"
               onfocus="searchBox.OnSearchFieldFocus(true)" 
               onblur="searchBox.OnSearchFieldFocus(false)" 
               onkeyup="searchBox.OnSearchFieldChange(event)"/>
          </span><span class="right">
            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
          </span>
        </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="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
    </ul>
  </div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
      <div id="nav-sync" class="sync"></div>
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
$(document).ready(function(){initNavTree('class_f_i_f_e_1_1_quad_tree.html','');});
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Pages</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div class="header">
  <div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="class_f_i_f_e_1_1_quad_tree-members.html">List of all members</a>  </div>
  <div class="headertitle">
<div class="title">FIFE::QuadTree&lt; DataType, MinimumSize &gt; Class Template Reference</div>  </div>
</div><!--header-->
<div class="contents">

<p><code>#include &lt;<a class="el" href="quadtree_8h_source.html">quadtree.h</a>&gt;</code></p>
<div class="dynheader">
Inheritance diagram for FIFE::QuadTree&lt; DataType, MinimumSize &gt;:</div>
<div class="dyncontent">
<div class="center"><img src="class_f_i_f_e_1_1_quad_tree__inherit__graph.png" border="0" usemap="#_f_i_f_e_1_1_quad_tree_3_01_data_type_00_01_minimum_size_01_4_inherit__map" alt="Inheritance graph"/></div>
<map name="_f_i_f_e_1_1_quad_tree_3_01_data_type_00_01_minimum_size_01_4_inherit__map" id="_f_i_f_e_1_1_quad_tree_3_01_data_type_00_01_minimum_size_01_4_inherit__map">
<area shape="rect" id="node3" href="class_f_i_f_e_1_1_quad_tree.html" title="{FIFE::QuadTree\&lt; Instance\lList, MIN_TREE_SIZE \&gt;\n|# m_root\l# m_cursor\l|+ QuadTree()\l+ ~QuadTree()\l+ find_container()\l+ find_container()\l+ apply_visitor()\l+ clear()\l}" alt="" coords="9,265,271,445"/></map>
</div>
<div class="dynheader">
Collaboration diagram for FIFE::QuadTree&lt; DataType, MinimumSize &gt;:</div>
<div class="dyncontent">
<div class="center"><img src="class_f_i_f_e_1_1_quad_tree__coll__graph.png" border="0" usemap="#_f_i_f_e_1_1_quad_tree_3_01_data_type_00_01_minimum_size_01_4_coll__map" alt="Collaboration graph"/></div>
<map name="_f_i_f_e_1_1_quad_tree_3_01_data_type_00_01_minimum_size_01_4_coll__map" id="_f_i_f_e_1_1_quad_tree_3_01_data_type_00_01_minimum_size_01_4_coll__map">
<area shape="rect" id="node2" href="class_f_i_f_e_1_1_quad_node.html" title="{FIFE::QuadNode\&lt; DataType,\l MinimumSize \&gt;\n|# m_x\l# m_y\l# m_size\l# m_data\l|+ QuadNode()\l+ ~QuadNode()\l+ find_container()\l+ find_container()\l+ apply_visitor()\l+ x()\l+ y()\l+ size()\l+ data()\l+ contains()\l+ splice()\l+ parent()\l+ create_parent()\l# subnode()\l}" alt="" coords="4,6,275,333"/></map>
</div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:abda52058b45ff411174b2db6b3098469"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_f_i_f_e_1_1_quad_tree.html#abda52058b45ff411174b2db6b3098469">QuadTree</a> (int32_t x=0, int32_t y=0, int32_t starting_size=MinimumSize)</td></tr>
<tr class="separator:abda52058b45ff411174b2db6b3098469"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af80a55dee35a637ee217c00669f6224f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_f_i_f_e_1_1_quad_node.html">Node</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_f_i_f_e_1_1_quad_tree.html#af80a55dee35a637ee217c00669f6224f">find_container</a> (int32_t x, int32_t y, int32_t w, int32_t h)</td></tr>
<tr class="separator:af80a55dee35a637ee217c00669f6224f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1f93da3a8cf32dc94859fe06f8ecf406"><td class="memTemplParams" colspan="2">template&lt;typename Visitor &gt; </td></tr>
<tr class="memitem:a1f93da3a8cf32dc94859fe06f8ecf406"><td class="memTemplItemLeft" align="right" valign="top">Visitor &amp;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="class_f_i_f_e_1_1_quad_tree.html#a1f93da3a8cf32dc94859fe06f8ecf406">apply_visitor</a> (Visitor &amp;visitor)</td></tr>
<tr class="separator:a1f93da3a8cf32dc94859fe06f8ecf406"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><h3>template&lt;typename DataType, int32_t MinimumSize = 128&gt;<br/>
class FIFE::QuadTree&lt; DataType, MinimumSize &gt;</h3>

<p>Dynamic <a class="el" href="class_f_i_f_e_1_1_quad_tree.html">QuadTree</a> A space partitioning tree automatically expanding to adjust to any object size put into the data structure. </p>

<p>Definition at line <a class="el" href="quadtree_8h_source.html#l00150">150</a> of file <a class="el" href="quadtree_8h_source.html">quadtree.h</a>.</p>
</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a class="anchor" id="abda52058b45ff411174b2db6b3098469"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename DataType, int32_t MinimumSize = 128&gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class_f_i_f_e_1_1_quad_tree.html">FIFE::QuadTree</a>&lt; DataType, MinimumSize &gt;::<a class="el" href="class_f_i_f_e_1_1_quad_tree.html">QuadTree</a> </td>
          <td>(</td>
          <td class="paramtype">int32_t&#160;</td>
          <td class="paramname"><em>x</em> = <code>0</code>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int32_t&#160;</td>
          <td class="paramname"><em>y</em> = <code>0</code>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int32_t&#160;</td>
          <td class="paramname"><em>starting_size</em> = <code>MinimumSize</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>Create a new <a class="el" href="class_f_i_f_e_1_1_quad_tree.html">QuadTree</a> </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">x</td><td>The X position of the starting node. </td></tr>
    <tr><td class="paramname">y</td><td>The Y position of the starting node. </td></tr>
    <tr><td class="paramname">starting_size</td><td>The width and height of the starting node. </td></tr>
  </table>
  </dd>
</dl>

<p>Definition at line <a class="el" href="quadtree_8h_source.html#l00159">159</a> of file <a class="el" href="quadtree_8h_source.html">quadtree.h</a>.</p>

</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a class="anchor" id="a1f93da3a8cf32dc94859fe06f8ecf406"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename DataType, int32_t MinimumSize = 128&gt; </div>
<div class="memtemplate">
template&lt;typename Visitor &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">Visitor&amp; <a class="el" href="class_f_i_f_e_1_1_quad_tree.html">FIFE::QuadTree</a>&lt; DataType, MinimumSize &gt;::apply_visitor </td>
          <td>(</td>
          <td class="paramtype">Visitor &amp;&#160;</td>
          <td class="paramname"><em>visitor</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>Apply a visitor recursively to the <a class="el" href="class_f_i_f_e_1_1_quad_tree.html">QuadTree</a> </p>

<p>Definition at line <a class="el" href="quadtree_8h_source.html#l00190">190</a> of file <a class="el" href="quadtree_8h_source.html">quadtree.h</a>.</p>

</div>
</div>
<a class="anchor" id="af80a55dee35a637ee217c00669f6224f"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename DataType , int32_t MinimumSize&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class_f_i_f_e_1_1_quad_node.html">QuadNode</a>&lt; DataType, MinimumSize &gt; * <a class="el" href="class_f_i_f_e_1_1_quad_tree.html">FIFE::QuadTree</a>&lt; DataType, MinimumSize &gt;::find_container </td>
          <td>(</td>
          <td class="paramtype">int32_t&#160;</td>
          <td class="paramname"><em>x</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int32_t&#160;</td>
          <td class="paramname"><em>y</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int32_t&#160;</td>
          <td class="paramname"><em>w</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int32_t&#160;</td>
          <td class="paramname"><em>h</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Find a container node for a given rectangle. This guarantees to return a Node with the following properties: 1.) The node contains the rectangle (as defined by the contains function). 2.) All subnodes can not contain the rectangle or it has the MinimumSize. This function will extend the tree automatically so that this guarantee can be fulfilled. This function is optimized for sequential access. This means accessing different rectangles that are 'near' to each other will be fast. </p>
<dl class="section warning"><dt>Warning</dt><dd>If you put different sized objects in (for example) lists in the quadnode, the returned node will <b>not</b> contain all objects which might intersect with the given rectangle. </dd></dl>

<p>Definition at line <a class="el" href="quadtree_8h_source.html#l00359">359</a> of file <a class="el" href="quadtree_8h_source.html">quadtree.h</a>.</p>

<p>References <a class="el" href="quadtree_8h_source.html#l00298">FIFE::QuadNode&lt; DataType, MinimumSize &gt;::create_parent()</a>, and <a class="el" href="quadtree_8h_source.html#l00254">FIFE::QuadNode&lt; DataType, MinimumSize &gt;::find_container()</a>.</p>

</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li>engine/core/util/structures/<a class="el" href="quadtree_8h_source.html">quadtree.h</a></li>
</ul>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
  <ul>
    <li class="navelem"><a class="el" href="namespace_f_i_f_e.html">FIFE</a></li><li class="navelem"><a class="el" href="class_f_i_f_e_1_1_quad_tree.html">QuadTree</a></li>
    <li class="footer">Generated on Wed Apr 10 2013 23:07:07 for FIFE by
    <a href="http://www.doxygen.org/index.html">
    <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3 </li>
  </ul>
</div>
</body>
</html>