1104 lines
89 KiB
HTML
1104 lines
89 KiB
HTML
<!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.13"/>
|
|
<meta name="viewport" content="width=device-width, initial-scale=1"/>
|
|
<title>EnTT: entt::basic_storage< Entity, Type, typename > 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="search/search.css" rel="stylesheet" type="text/css"/>
|
|
<script type="text/javascript" src="search/searchdata.js"></script>
|
|
<script type="text/javascript" src="search/search.js"></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 id="projectalign" style="padding-left: 0.5em;">
|
|
<div id="projectname">EnTT
|
|
 <span id="projectnumber">3.2.1</span>
|
|
</div>
|
|
</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
</div>
|
|
<!-- end header part -->
|
|
<!-- Generated by Doxygen 1.8.13 -->
|
|
<script type="text/javascript">
|
|
var searchBox = new SearchBox("searchBox", "search",false,'Search');
|
|
</script>
|
|
<script type="text/javascript" src="menudata.js"></script>
|
|
<script type="text/javascript" src="menu.js"></script>
|
|
<script type="text/javascript">
|
|
$(function() {
|
|
initMenu('',true,false,'search.php','Search');
|
|
$(document).ready(function() { init_search(); });
|
|
});
|
|
</script>
|
|
<div id="main-nav"></div>
|
|
<!-- window showing the filter options -->
|
|
<div id="MSearchSelectWindow"
|
|
onmouseover="return searchBox.OnSearchSelectShow()"
|
|
onmouseout="return searchBox.OnSearchSelectHide()"
|
|
onkeydown="return searchBox.OnSearchSelectKey(event)">
|
|
</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 id="nav-path" class="navpath">
|
|
<ul>
|
|
<li class="navelem"><a class="el" href="namespaceentt.html">entt</a></li><li class="navelem"><a class="el" href="classentt_1_1basic__storage.html">basic_storage</a></li> </ul>
|
|
</div>
|
|
</div><!-- top -->
|
|
<div class="header">
|
|
<div class="summary">
|
|
<a href="#nested-classes">Classes</a> |
|
|
<a href="#pub-types">Public Types</a> |
|
|
<a href="#pub-methods">Public Member Functions</a> |
|
|
<a href="classentt_1_1basic__storage-members.html">List of all members</a> </div>
|
|
<div class="headertitle">
|
|
<div class="title">entt::basic_storage< Entity, Type, typename > Class Template Reference</div> </div>
|
|
</div><!--header-->
|
|
<div class="contents">
|
|
|
|
<p>Basic storage implementation.
|
|
<a href="classentt_1_1basic__storage.html#details">More...</a></p>
|
|
|
|
<p><code>#include <<a class="el" href="storage_8hpp_source.html">storage.hpp</a>></code></p>
|
|
<div class="dynheader">
|
|
Inheritance diagram for entt::basic_storage< Entity, Type, typename >:</div>
|
|
<div class="dyncontent">
|
|
<div class="center"><img src="classentt_1_1basic__storage__inherit__graph.png" border="0" usemap="#entt_1_1basic__storage_3_01Entity_00_01Type_00_01typename_01_4_inherit__map" alt="Inheritance graph"/></div>
|
|
<map name="entt_1_1basic__storage_3_01Entity_00_01Type_00_01typename_01_4_inherit__map" id="entt_1_1basic__storage_3_01Entity_00_01Type_00_01typename_01_4_inherit__map">
|
|
<area shape="rect" id="node3" href="structentt_1_1storage.html" title="Basic storage implementation. " alt="" coords="24,169,169,211"/>
|
|
<area shape="rect" id="node2" href="classentt_1_1sparse__set.html" title="Basic sparse set implementation. " alt="" coords="9,5,184,32"/>
|
|
</map>
|
|
<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
|
|
<div class="dynheader">
|
|
Collaboration diagram for entt::basic_storage< Entity, Type, typename >:</div>
|
|
<div class="dyncontent">
|
|
<div class="center"><img src="classentt_1_1basic__storage__coll__graph.png" border="0" usemap="#entt_1_1basic__storage_3_01Entity_00_01Type_00_01typename_01_4_coll__map" alt="Collaboration graph"/></div>
|
|
<map name="entt_1_1basic__storage_3_01Entity_00_01Type_00_01typename_01_4_coll__map" id="entt_1_1basic__storage_3_01Entity_00_01Type_00_01typename_01_4_coll__map">
|
|
<area shape="rect" id="node2" href="classentt_1_1sparse__set.html" title="Basic sparse set implementation. " alt="" coords="9,5,184,32"/>
|
|
</map>
|
|
<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
|
|
<table class="memberdecls">
|
|
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-types"></a>
|
|
Public Types</h2></td></tr>
|
|
<tr class="memitem:aa4e4358d25212b71d9629e470b845c53"><td class="memItemLeft" align="right" valign="top"><a id="aa4e4358d25212b71d9629e470b845c53"></a>
|
|
using </td><td class="memItemRight" valign="bottom"><a class="el" href="classentt_1_1basic__storage.html#aa4e4358d25212b71d9629e470b845c53">object_type</a> = Type</td></tr>
|
|
<tr class="memdesc:aa4e4358d25212b71d9629e470b845c53"><td class="mdescLeft"> </td><td class="mdescRight">Type of the objects associated with the entities. <br /></td></tr>
|
|
<tr class="separator:aa4e4358d25212b71d9629e470b845c53"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:ab49ab5a065759dcd17f6c0b6a0b8fcba"><td class="memItemLeft" align="right" valign="top"><a id="ab49ab5a065759dcd17f6c0b6a0b8fcba"></a>
|
|
using </td><td class="memItemRight" valign="bottom"><a class="el" href="classentt_1_1basic__storage.html#ab49ab5a065759dcd17f6c0b6a0b8fcba">entity_type</a> = Entity</td></tr>
|
|
<tr class="memdesc:ab49ab5a065759dcd17f6c0b6a0b8fcba"><td class="mdescLeft"> </td><td class="mdescRight">Underlying entity identifier. <br /></td></tr>
|
|
<tr class="separator:ab49ab5a065759dcd17f6c0b6a0b8fcba"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:afffeca2fda54eebf889c2e4f447ab37b"><td class="memItemLeft" align="right" valign="top"><a id="afffeca2fda54eebf889c2e4f447ab37b"></a>
|
|
using </td><td class="memItemRight" valign="bottom"><a class="el" href="classentt_1_1basic__storage.html#afffeca2fda54eebf889c2e4f447ab37b">size_type</a> = std::size_t</td></tr>
|
|
<tr class="memdesc:afffeca2fda54eebf889c2e4f447ab37b"><td class="mdescLeft"> </td><td class="mdescRight">Unsigned integer type. <br /></td></tr>
|
|
<tr class="separator:afffeca2fda54eebf889c2e4f447ab37b"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a9a1c32a0adebc8c3dc279064742c858f"><td class="memItemLeft" align="right" valign="top"><a id="a9a1c32a0adebc8c3dc279064742c858f"></a>
|
|
using </td><td class="memItemRight" valign="bottom"><a class="el" href="classentt_1_1basic__storage.html#a9a1c32a0adebc8c3dc279064742c858f">iterator_type</a> = iterator< false ></td></tr>
|
|
<tr class="memdesc:a9a1c32a0adebc8c3dc279064742c858f"><td class="mdescLeft"> </td><td class="mdescRight">Random access iterator type. <br /></td></tr>
|
|
<tr class="separator:a9a1c32a0adebc8c3dc279064742c858f"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:aaa02d4db8defee92683bbc47b3eaa869"><td class="memItemLeft" align="right" valign="top"><a id="aaa02d4db8defee92683bbc47b3eaa869"></a>
|
|
using </td><td class="memItemRight" valign="bottom"><a class="el" href="classentt_1_1basic__storage.html#aaa02d4db8defee92683bbc47b3eaa869">const_iterator_type</a> = iterator< true ></td></tr>
|
|
<tr class="memdesc:aaa02d4db8defee92683bbc47b3eaa869"><td class="mdescLeft"> </td><td class="mdescRight">Constant random access iterator type. <br /></td></tr>
|
|
<tr class="separator:aaa02d4db8defee92683bbc47b3eaa869"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="inherit_header pub_types_classentt_1_1sparse__set"><td colspan="2" onclick="javascript:toggleInherit('pub_types_classentt_1_1sparse__set')"><img src="closed.png" alt="-"/> Public Types inherited from <a class="el" href="classentt_1_1sparse__set.html">entt::sparse_set< Entity ></a></td></tr>
|
|
<tr class="memitem:a9a1dbe5ab2dbb098beae0bff56bbf780 inherit pub_types_classentt_1_1sparse__set"><td class="memItemLeft" align="right" valign="top"><a id="a9a1dbe5ab2dbb098beae0bff56bbf780"></a>
|
|
using </td><td class="memItemRight" valign="bottom"><a class="el" href="classentt_1_1sparse__set.html#a9a1dbe5ab2dbb098beae0bff56bbf780">entity_type</a> = Entity</td></tr>
|
|
<tr class="memdesc:a9a1dbe5ab2dbb098beae0bff56bbf780 inherit pub_types_classentt_1_1sparse__set"><td class="mdescLeft"> </td><td class="mdescRight">Underlying entity identifier. <br /></td></tr>
|
|
<tr class="separator:a9a1dbe5ab2dbb098beae0bff56bbf780 inherit pub_types_classentt_1_1sparse__set"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a3d2138b0eb8c7ac968e9e38a9e981ec1 inherit pub_types_classentt_1_1sparse__set"><td class="memItemLeft" align="right" valign="top"><a id="a3d2138b0eb8c7ac968e9e38a9e981ec1"></a>
|
|
using </td><td class="memItemRight" valign="bottom"><a class="el" href="classentt_1_1sparse__set.html#a3d2138b0eb8c7ac968e9e38a9e981ec1">size_type</a> = std::size_t</td></tr>
|
|
<tr class="memdesc:a3d2138b0eb8c7ac968e9e38a9e981ec1 inherit pub_types_classentt_1_1sparse__set"><td class="mdescLeft"> </td><td class="mdescRight">Unsigned integer type. <br /></td></tr>
|
|
<tr class="separator:a3d2138b0eb8c7ac968e9e38a9e981ec1 inherit pub_types_classentt_1_1sparse__set"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a580b210d5a24c49ca8c255646f3bb469 inherit pub_types_classentt_1_1sparse__set"><td class="memItemLeft" align="right" valign="top"><a id="a580b210d5a24c49ca8c255646f3bb469"></a>
|
|
using </td><td class="memItemRight" valign="bottom"><a class="el" href="classentt_1_1sparse__set.html#a580b210d5a24c49ca8c255646f3bb469">iterator_type</a> = iterator</td></tr>
|
|
<tr class="memdesc:a580b210d5a24c49ca8c255646f3bb469 inherit pub_types_classentt_1_1sparse__set"><td class="mdescLeft"> </td><td class="mdescRight">Random access iterator type. <br /></td></tr>
|
|
<tr class="separator:a580b210d5a24c49ca8c255646f3bb469 inherit pub_types_classentt_1_1sparse__set"><td class="memSeparator" colspan="2"> </td></tr>
|
|
</table><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:a8f2a2a968a241832acc338b8dca2f744"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classentt_1_1basic__storage.html#a8f2a2a968a241832acc338b8dca2f744">reserve</a> (const <a class="el" href="classentt_1_1sparse__set.html#a3d2138b0eb8c7ac968e9e38a9e981ec1">size_type</a> cap)</td></tr>
|
|
<tr class="memdesc:a8f2a2a968a241832acc338b8dca2f744"><td class="mdescLeft"> </td><td class="mdescRight">Increases the capacity of a storage. <a href="#a8f2a2a968a241832acc338b8dca2f744">More...</a><br /></td></tr>
|
|
<tr class="separator:a8f2a2a968a241832acc338b8dca2f744"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a208fc8c4400c12e41229345badd0bc99"><td class="memItemLeft" align="right" valign="top"><a id="a208fc8c4400c12e41229345badd0bc99"></a>
|
|
void </td><td class="memItemRight" valign="bottom"><a class="el" href="classentt_1_1basic__storage.html#a208fc8c4400c12e41229345badd0bc99">shrink_to_fit</a> ()</td></tr>
|
|
<tr class="memdesc:a208fc8c4400c12e41229345badd0bc99"><td class="mdescLeft"> </td><td class="mdescRight">Requests the removal of unused capacity. <br /></td></tr>
|
|
<tr class="separator:a208fc8c4400c12e41229345badd0bc99"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a8e38d136d24bb38ef96c02135549c5d8"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classentt_1_1basic__storage.html#aa4e4358d25212b71d9629e470b845c53">object_type</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="classentt_1_1basic__storage.html#a8e38d136d24bb38ef96c02135549c5d8">raw</a> () const ENTT_NOEXCEPT</td></tr>
|
|
<tr class="memdesc:a8e38d136d24bb38ef96c02135549c5d8"><td class="mdescLeft"> </td><td class="mdescRight">Direct access to the array of objects. <a href="#a8e38d136d24bb38ef96c02135549c5d8">More...</a><br /></td></tr>
|
|
<tr class="separator:a8e38d136d24bb38ef96c02135549c5d8"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:ae7757471c65eca305d2b83b570571065"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classentt_1_1basic__storage.html#aa4e4358d25212b71d9629e470b845c53">object_type</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="classentt_1_1basic__storage.html#ae7757471c65eca305d2b83b570571065">raw</a> () ENTT_NOEXCEPT</td></tr>
|
|
<tr class="memdesc:ae7757471c65eca305d2b83b570571065"><td class="mdescLeft"> </td><td class="mdescRight">Direct access to the array of objects. <a href="#ae7757471c65eca305d2b83b570571065">More...</a><br /></td></tr>
|
|
<tr class="separator:ae7757471c65eca305d2b83b570571065"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:aa5499c18eea80f3c903afef5031abf1b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classentt_1_1basic__storage.html#aaa02d4db8defee92683bbc47b3eaa869">const_iterator_type</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classentt_1_1basic__storage.html#aa5499c18eea80f3c903afef5031abf1b">cbegin</a> () const ENTT_NOEXCEPT</td></tr>
|
|
<tr class="memdesc:aa5499c18eea80f3c903afef5031abf1b"><td class="mdescLeft"> </td><td class="mdescRight">Returns an iterator to the beginning. <a href="#aa5499c18eea80f3c903afef5031abf1b">More...</a><br /></td></tr>
|
|
<tr class="separator:aa5499c18eea80f3c903afef5031abf1b"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:aecc4b13b67a7664c5c36596f2b927bed"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classentt_1_1basic__storage.html#aaa02d4db8defee92683bbc47b3eaa869">const_iterator_type</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classentt_1_1basic__storage.html#aecc4b13b67a7664c5c36596f2b927bed">begin</a> () const ENTT_NOEXCEPT</td></tr>
|
|
<tr class="memdesc:aecc4b13b67a7664c5c36596f2b927bed"><td class="mdescLeft"> </td><td class="mdescRight">Returns an iterator to the beginning. <a href="#aecc4b13b67a7664c5c36596f2b927bed">More...</a><br /></td></tr>
|
|
<tr class="separator:aecc4b13b67a7664c5c36596f2b927bed"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:ab963b76ebe297a1ad4a2c433aa55f2b5"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classentt_1_1sparse__set.html#a580b210d5a24c49ca8c255646f3bb469">iterator_type</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classentt_1_1basic__storage.html#ab963b76ebe297a1ad4a2c433aa55f2b5">begin</a> () ENTT_NOEXCEPT</td></tr>
|
|
<tr class="memdesc:ab963b76ebe297a1ad4a2c433aa55f2b5"><td class="mdescLeft"> </td><td class="mdescRight">Returns an iterator to the beginning. <a href="#ab963b76ebe297a1ad4a2c433aa55f2b5">More...</a><br /></td></tr>
|
|
<tr class="separator:ab963b76ebe297a1ad4a2c433aa55f2b5"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a5fb9f5fd4996f424ab94b70f79b15205"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classentt_1_1basic__storage.html#aaa02d4db8defee92683bbc47b3eaa869">const_iterator_type</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classentt_1_1basic__storage.html#a5fb9f5fd4996f424ab94b70f79b15205">cend</a> () const ENTT_NOEXCEPT</td></tr>
|
|
<tr class="memdesc:a5fb9f5fd4996f424ab94b70f79b15205"><td class="mdescLeft"> </td><td class="mdescRight">Returns an iterator to the end. <a href="#a5fb9f5fd4996f424ab94b70f79b15205">More...</a><br /></td></tr>
|
|
<tr class="separator:a5fb9f5fd4996f424ab94b70f79b15205"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a43640288a074495b549779ad271d7010"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classentt_1_1basic__storage.html#aaa02d4db8defee92683bbc47b3eaa869">const_iterator_type</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classentt_1_1basic__storage.html#a43640288a074495b549779ad271d7010">end</a> () const ENTT_NOEXCEPT</td></tr>
|
|
<tr class="memdesc:a43640288a074495b549779ad271d7010"><td class="mdescLeft"> </td><td class="mdescRight">Returns an iterator to the end. <a href="#a43640288a074495b549779ad271d7010">More...</a><br /></td></tr>
|
|
<tr class="separator:a43640288a074495b549779ad271d7010"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a9922f88c0ed8f587ff4ae09745f67ae9"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classentt_1_1sparse__set.html#a580b210d5a24c49ca8c255646f3bb469">iterator_type</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classentt_1_1basic__storage.html#a9922f88c0ed8f587ff4ae09745f67ae9">end</a> () ENTT_NOEXCEPT</td></tr>
|
|
<tr class="memdesc:a9922f88c0ed8f587ff4ae09745f67ae9"><td class="mdescLeft"> </td><td class="mdescRight">Returns an iterator to the end. <a href="#a9922f88c0ed8f587ff4ae09745f67ae9">More...</a><br /></td></tr>
|
|
<tr class="separator:a9922f88c0ed8f587ff4ae09745f67ae9"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:ab9f40b67e8a21a0aa2071ea127a1e4b9"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classentt_1_1basic__storage.html#aa4e4358d25212b71d9629e470b845c53">object_type</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classentt_1_1basic__storage.html#ab9f40b67e8a21a0aa2071ea127a1e4b9">get</a> (const <a class="el" href="classentt_1_1sparse__set.html#a9a1dbe5ab2dbb098beae0bff56bbf780">entity_type</a> entt) const ENTT_NOEXCEPT</td></tr>
|
|
<tr class="memdesc:ab9f40b67e8a21a0aa2071ea127a1e4b9"><td class="mdescLeft"> </td><td class="mdescRight">Returns the object associated with an entity. <a href="#ab9f40b67e8a21a0aa2071ea127a1e4b9">More...</a><br /></td></tr>
|
|
<tr class="separator:ab9f40b67e8a21a0aa2071ea127a1e4b9"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a629a39bfc6a29036671dea9d9b42f70d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classentt_1_1basic__storage.html#aa4e4358d25212b71d9629e470b845c53">object_type</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classentt_1_1basic__storage.html#a629a39bfc6a29036671dea9d9b42f70d">get</a> (const <a class="el" href="classentt_1_1sparse__set.html#a9a1dbe5ab2dbb098beae0bff56bbf780">entity_type</a> entt) ENTT_NOEXCEPT</td></tr>
|
|
<tr class="memdesc:a629a39bfc6a29036671dea9d9b42f70d"><td class="mdescLeft"> </td><td class="mdescRight">Returns the object associated with an entity. <a href="#a629a39bfc6a29036671dea9d9b42f70d">More...</a><br /></td></tr>
|
|
<tr class="separator:a629a39bfc6a29036671dea9d9b42f70d"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:aab7da23b603d6cc78e67b3509ad979fa"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classentt_1_1basic__storage.html#aa4e4358d25212b71d9629e470b845c53">object_type</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="classentt_1_1basic__storage.html#aab7da23b603d6cc78e67b3509ad979fa">try_get</a> (const <a class="el" href="classentt_1_1sparse__set.html#a9a1dbe5ab2dbb098beae0bff56bbf780">entity_type</a> entt) const ENTT_NOEXCEPT</td></tr>
|
|
<tr class="memdesc:aab7da23b603d6cc78e67b3509ad979fa"><td class="mdescLeft"> </td><td class="mdescRight">Returns a pointer to the object associated with an entity, if any. <a href="#aab7da23b603d6cc78e67b3509ad979fa">More...</a><br /></td></tr>
|
|
<tr class="separator:aab7da23b603d6cc78e67b3509ad979fa"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a8ff9d6ef48840c8ad88f8c0b8b5dcd35"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classentt_1_1basic__storage.html#aa4e4358d25212b71d9629e470b845c53">object_type</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="classentt_1_1basic__storage.html#a8ff9d6ef48840c8ad88f8c0b8b5dcd35">try_get</a> (const <a class="el" href="classentt_1_1sparse__set.html#a9a1dbe5ab2dbb098beae0bff56bbf780">entity_type</a> entt) ENTT_NOEXCEPT</td></tr>
|
|
<tr class="memdesc:a8ff9d6ef48840c8ad88f8c0b8b5dcd35"><td class="mdescLeft"> </td><td class="mdescRight">Returns a pointer to the object associated with an entity, if any. <a href="#a8ff9d6ef48840c8ad88f8c0b8b5dcd35">More...</a><br /></td></tr>
|
|
<tr class="separator:a8ff9d6ef48840c8ad88f8c0b8b5dcd35"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a4cf7d707b57b6dd63c4d7852a23b6f5e"><td class="memTemplParams" colspan="2">template<typename... Args> </td></tr>
|
|
<tr class="memitem:a4cf7d707b57b6dd63c4d7852a23b6f5e"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classentt_1_1basic__storage.html#aa4e4358d25212b71d9629e470b845c53">object_type</a> & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classentt_1_1basic__storage.html#a4cf7d707b57b6dd63c4d7852a23b6f5e">construct</a> (const <a class="el" href="classentt_1_1sparse__set.html#a9a1dbe5ab2dbb098beae0bff56bbf780">entity_type</a> entt, Args &&... args)</td></tr>
|
|
<tr class="memdesc:a4cf7d707b57b6dd63c4d7852a23b6f5e"><td class="mdescLeft"> </td><td class="mdescRight">Assigns an entity to a storage and constructs its object. <a href="#a4cf7d707b57b6dd63c4d7852a23b6f5e">More...</a><br /></td></tr>
|
|
<tr class="separator:a4cf7d707b57b6dd63c4d7852a23b6f5e"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a5ef85c69a23deffd46b2dcfafcc4a668"><td class="memTemplParams" colspan="2">template<typename It , typename... Args> </td></tr>
|
|
<tr class="memitem:a5ef85c69a23deffd46b2dcfafcc4a668"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classentt_1_1sparse__set.html#a580b210d5a24c49ca8c255646f3bb469">iterator_type</a> </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classentt_1_1basic__storage.html#a5ef85c69a23deffd46b2dcfafcc4a668">batch</a> (It first, It last, Args &&... args)</td></tr>
|
|
<tr class="memdesc:a5ef85c69a23deffd46b2dcfafcc4a668"><td class="mdescLeft"> </td><td class="mdescRight">Assigns one or more entities to a storage and default constructs or copy constructs their objects. <a href="#a5ef85c69a23deffd46b2dcfafcc4a668">More...</a><br /></td></tr>
|
|
<tr class="separator:a5ef85c69a23deffd46b2dcfafcc4a668"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:ab59f0a70b5d25e66062e5ae5b501ab41"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classentt_1_1basic__storage.html#ab59f0a70b5d25e66062e5ae5b501ab41">destroy</a> (const <a class="el" href="classentt_1_1sparse__set.html#a9a1dbe5ab2dbb098beae0bff56bbf780">entity_type</a> entt)</td></tr>
|
|
<tr class="memdesc:ab59f0a70b5d25e66062e5ae5b501ab41"><td class="mdescLeft"> </td><td class="mdescRight">Removes an entity from a storage and destroys its object. <a href="#ab59f0a70b5d25e66062e5ae5b501ab41">More...</a><br /></td></tr>
|
|
<tr class="separator:ab59f0a70b5d25e66062e5ae5b501ab41"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a35f98e0151152bbf10fd1666f4bcf00b"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classentt_1_1basic__storage.html#a35f98e0151152bbf10fd1666f4bcf00b">swap</a> (const <a class="el" href="classentt_1_1sparse__set.html#a9a1dbe5ab2dbb098beae0bff56bbf780">entity_type</a> lhs, const <a class="el" href="classentt_1_1sparse__set.html#a9a1dbe5ab2dbb098beae0bff56bbf780">entity_type</a> rhs) ENTT_NOEXCEPT override</td></tr>
|
|
<tr class="memdesc:a35f98e0151152bbf10fd1666f4bcf00b"><td class="mdescLeft"> </td><td class="mdescRight">Swaps entities and objects in the internal packed arrays. <a href="#a35f98e0151152bbf10fd1666f4bcf00b">More...</a><br /></td></tr>
|
|
<tr class="separator:a35f98e0151152bbf10fd1666f4bcf00b"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:ac9b5e700778b280a69bb13faff484756"><td class="memTemplParams" colspan="2">template<typename Compare , typename Sort = std_sort, typename... Args> </td></tr>
|
|
<tr class="memitem:ac9b5e700778b280a69bb13faff484756"><td class="memTemplItemLeft" align="right" valign="top">void </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classentt_1_1basic__storage.html#ac9b5e700778b280a69bb13faff484756">sort</a> (<a class="el" href="classentt_1_1sparse__set.html#a580b210d5a24c49ca8c255646f3bb469">iterator_type</a> first, <a class="el" href="classentt_1_1sparse__set.html#a580b210d5a24c49ca8c255646f3bb469">iterator_type</a> last, Compare compare, Sort algo=Sort{}, Args &&... args)</td></tr>
|
|
<tr class="memdesc:ac9b5e700778b280a69bb13faff484756"><td class="mdescLeft"> </td><td class="mdescRight">Sort elements according to the given comparison function. <a href="#ac9b5e700778b280a69bb13faff484756">More...</a><br /></td></tr>
|
|
<tr class="separator:ac9b5e700778b280a69bb13faff484756"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a1ed587372f7bcf15ab0d17397c2dad81"><td class="memItemLeft" align="right" valign="top"><a id="a1ed587372f7bcf15ab0d17397c2dad81"></a>
|
|
void </td><td class="memItemRight" valign="bottom"><a class="el" href="classentt_1_1basic__storage.html#a1ed587372f7bcf15ab0d17397c2dad81">reset</a> ()</td></tr>
|
|
<tr class="memdesc:a1ed587372f7bcf15ab0d17397c2dad81"><td class="mdescLeft"> </td><td class="mdescRight">Resets a storage. <br /></td></tr>
|
|
<tr class="separator:a1ed587372f7bcf15ab0d17397c2dad81"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="inherit_header pub_methods_classentt_1_1sparse__set"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classentt_1_1sparse__set')"><img src="closed.png" alt="-"/> Public Member Functions inherited from <a class="el" href="classentt_1_1sparse__set.html">entt::sparse_set< Entity ></a></td></tr>
|
|
<tr class="memitem:a8ef544aaed30126797f6f0b9a9f8b9e8 inherit pub_methods_classentt_1_1sparse__set"><td class="memItemLeft" align="right" valign="top"><a id="a8ef544aaed30126797f6f0b9a9f8b9e8"></a>
|
|
 </td><td class="memItemRight" valign="bottom"><a class="el" href="classentt_1_1sparse__set.html#a8ef544aaed30126797f6f0b9a9f8b9e8">sparse_set</a> ()=default</td></tr>
|
|
<tr class="memdesc:a8ef544aaed30126797f6f0b9a9f8b9e8 inherit pub_methods_classentt_1_1sparse__set"><td class="mdescLeft"> </td><td class="mdescRight">Default constructor. <br /></td></tr>
|
|
<tr class="separator:a8ef544aaed30126797f6f0b9a9f8b9e8 inherit pub_methods_classentt_1_1sparse__set"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:af684a44e129f3aafd311814b5972378f inherit pub_methods_classentt_1_1sparse__set"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classentt_1_1sparse__set.html#af684a44e129f3aafd311814b5972378f">sparse_set</a> (const <a class="el" href="classentt_1_1sparse__set.html">sparse_set</a> &other)</td></tr>
|
|
<tr class="memdesc:af684a44e129f3aafd311814b5972378f inherit pub_methods_classentt_1_1sparse__set"><td class="mdescLeft"> </td><td class="mdescRight">Copy constructor. <a href="classentt_1_1sparse__set.html#af684a44e129f3aafd311814b5972378f">More...</a><br /></td></tr>
|
|
<tr class="separator:af684a44e129f3aafd311814b5972378f inherit pub_methods_classentt_1_1sparse__set"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:af8f4f137b5ac0984599067d5408db5bf inherit pub_methods_classentt_1_1sparse__set"><td class="memItemLeft" align="right" valign="top"><a id="af8f4f137b5ac0984599067d5408db5bf"></a>
|
|
 </td><td class="memItemRight" valign="bottom"><a class="el" href="classentt_1_1sparse__set.html#af8f4f137b5ac0984599067d5408db5bf">sparse_set</a> (<a class="el" href="classentt_1_1sparse__set.html">sparse_set</a> &&)=default</td></tr>
|
|
<tr class="memdesc:af8f4f137b5ac0984599067d5408db5bf inherit pub_methods_classentt_1_1sparse__set"><td class="mdescLeft"> </td><td class="mdescRight">Default move constructor. <br /></td></tr>
|
|
<tr class="separator:af8f4f137b5ac0984599067d5408db5bf inherit pub_methods_classentt_1_1sparse__set"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a74c49e0d205b6240bf14ac3003cfcbd1 inherit pub_methods_classentt_1_1sparse__set"><td class="memItemLeft" align="right" valign="top"><a id="a74c49e0d205b6240bf14ac3003cfcbd1"></a>
|
|
virtual </td><td class="memItemRight" valign="bottom"><a class="el" href="classentt_1_1sparse__set.html#a74c49e0d205b6240bf14ac3003cfcbd1">~sparse_set</a> () ENTT_NOEXCEPT=default</td></tr>
|
|
<tr class="memdesc:a74c49e0d205b6240bf14ac3003cfcbd1 inherit pub_methods_classentt_1_1sparse__set"><td class="mdescLeft"> </td><td class="mdescRight">Default destructor. <br /></td></tr>
|
|
<tr class="separator:a74c49e0d205b6240bf14ac3003cfcbd1 inherit pub_methods_classentt_1_1sparse__set"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a32a00ca96cc7e78089fb7120d144de34 inherit pub_methods_classentt_1_1sparse__set"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classentt_1_1sparse__set.html">sparse_set</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classentt_1_1sparse__set.html#a32a00ca96cc7e78089fb7120d144de34">operator=</a> (const <a class="el" href="classentt_1_1sparse__set.html">sparse_set</a> &other)</td></tr>
|
|
<tr class="memdesc:a32a00ca96cc7e78089fb7120d144de34 inherit pub_methods_classentt_1_1sparse__set"><td class="mdescLeft"> </td><td class="mdescRight">Copy assignment operator. <a href="classentt_1_1sparse__set.html#a32a00ca96cc7e78089fb7120d144de34">More...</a><br /></td></tr>
|
|
<tr class="separator:a32a00ca96cc7e78089fb7120d144de34 inherit pub_methods_classentt_1_1sparse__set"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a7cb1c0bffe341b847537956075b398fa inherit pub_methods_classentt_1_1sparse__set"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classentt_1_1sparse__set.html">sparse_set</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classentt_1_1sparse__set.html#a7cb1c0bffe341b847537956075b398fa">operator=</a> (<a class="el" href="classentt_1_1sparse__set.html">sparse_set</a> &&)=default</td></tr>
|
|
<tr class="memdesc:a7cb1c0bffe341b847537956075b398fa inherit pub_methods_classentt_1_1sparse__set"><td class="mdescLeft"> </td><td class="mdescRight">Default move assignment operator. <a href="classentt_1_1sparse__set.html#a7cb1c0bffe341b847537956075b398fa">More...</a><br /></td></tr>
|
|
<tr class="separator:a7cb1c0bffe341b847537956075b398fa inherit pub_methods_classentt_1_1sparse__set"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a8b4b9dd989877bc333fdc455fcd068d7 inherit pub_methods_classentt_1_1sparse__set"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classentt_1_1sparse__set.html#a8b4b9dd989877bc333fdc455fcd068d7">reserve</a> (const <a class="el" href="classentt_1_1sparse__set.html#a3d2138b0eb8c7ac968e9e38a9e981ec1">size_type</a> cap)</td></tr>
|
|
<tr class="memdesc:a8b4b9dd989877bc333fdc455fcd068d7 inherit pub_methods_classentt_1_1sparse__set"><td class="mdescLeft"> </td><td class="mdescRight">Increases the capacity of a sparse set. <a href="classentt_1_1sparse__set.html#a8b4b9dd989877bc333fdc455fcd068d7">More...</a><br /></td></tr>
|
|
<tr class="separator:a8b4b9dd989877bc333fdc455fcd068d7 inherit pub_methods_classentt_1_1sparse__set"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a30267005e552fce0d2a9b4e4d70d6656 inherit pub_methods_classentt_1_1sparse__set"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classentt_1_1sparse__set.html#a3d2138b0eb8c7ac968e9e38a9e981ec1">size_type</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classentt_1_1sparse__set.html#a30267005e552fce0d2a9b4e4d70d6656">capacity</a> () const ENTT_NOEXCEPT</td></tr>
|
|
<tr class="memdesc:a30267005e552fce0d2a9b4e4d70d6656 inherit pub_methods_classentt_1_1sparse__set"><td class="mdescLeft"> </td><td class="mdescRight">Returns the number of elements that a sparse set has currently allocated space for. <a href="classentt_1_1sparse__set.html#a30267005e552fce0d2a9b4e4d70d6656">More...</a><br /></td></tr>
|
|
<tr class="separator:a30267005e552fce0d2a9b4e4d70d6656 inherit pub_methods_classentt_1_1sparse__set"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a75f5d70148a149e4cbc485c7a7b00dda inherit pub_methods_classentt_1_1sparse__set"><td class="memItemLeft" align="right" valign="top"><a id="a75f5d70148a149e4cbc485c7a7b00dda"></a>
|
|
void </td><td class="memItemRight" valign="bottom"><a class="el" href="classentt_1_1sparse__set.html#a75f5d70148a149e4cbc485c7a7b00dda">shrink_to_fit</a> ()</td></tr>
|
|
<tr class="memdesc:a75f5d70148a149e4cbc485c7a7b00dda inherit pub_methods_classentt_1_1sparse__set"><td class="mdescLeft"> </td><td class="mdescRight">Requests the removal of unused capacity. <br /></td></tr>
|
|
<tr class="separator:a75f5d70148a149e4cbc485c7a7b00dda inherit pub_methods_classentt_1_1sparse__set"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:af79345df59154e5ea9e58b7efa7ff8f0 inherit pub_methods_classentt_1_1sparse__set"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classentt_1_1sparse__set.html#a3d2138b0eb8c7ac968e9e38a9e981ec1">size_type</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classentt_1_1sparse__set.html#af79345df59154e5ea9e58b7efa7ff8f0">extent</a> () const ENTT_NOEXCEPT</td></tr>
|
|
<tr class="memdesc:af79345df59154e5ea9e58b7efa7ff8f0 inherit pub_methods_classentt_1_1sparse__set"><td class="mdescLeft"> </td><td class="mdescRight">Returns the extent of a sparse set. <a href="classentt_1_1sparse__set.html#af79345df59154e5ea9e58b7efa7ff8f0">More...</a><br /></td></tr>
|
|
<tr class="separator:af79345df59154e5ea9e58b7efa7ff8f0 inherit pub_methods_classentt_1_1sparse__set"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a340dff7484f1e58feff58a5f0627e190 inherit pub_methods_classentt_1_1sparse__set"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classentt_1_1sparse__set.html#a3d2138b0eb8c7ac968e9e38a9e981ec1">size_type</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classentt_1_1sparse__set.html#a340dff7484f1e58feff58a5f0627e190">size</a> () const ENTT_NOEXCEPT</td></tr>
|
|
<tr class="memdesc:a340dff7484f1e58feff58a5f0627e190 inherit pub_methods_classentt_1_1sparse__set"><td class="mdescLeft"> </td><td class="mdescRight">Returns the number of elements in a sparse set. <a href="classentt_1_1sparse__set.html#a340dff7484f1e58feff58a5f0627e190">More...</a><br /></td></tr>
|
|
<tr class="separator:a340dff7484f1e58feff58a5f0627e190 inherit pub_methods_classentt_1_1sparse__set"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:ae1a16cb354a9ed5ded92b6edcddce15e inherit pub_methods_classentt_1_1sparse__set"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classentt_1_1sparse__set.html#ae1a16cb354a9ed5ded92b6edcddce15e">empty</a> () const ENTT_NOEXCEPT</td></tr>
|
|
<tr class="memdesc:ae1a16cb354a9ed5ded92b6edcddce15e inherit pub_methods_classentt_1_1sparse__set"><td class="mdescLeft"> </td><td class="mdescRight">Checks whether a sparse set is empty. <a href="classentt_1_1sparse__set.html#ae1a16cb354a9ed5ded92b6edcddce15e">More...</a><br /></td></tr>
|
|
<tr class="separator:ae1a16cb354a9ed5ded92b6edcddce15e inherit pub_methods_classentt_1_1sparse__set"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a2eafe4975271769b08fe7f7d4924992f inherit pub_methods_classentt_1_1sparse__set"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classentt_1_1sparse__set.html#a9a1dbe5ab2dbb098beae0bff56bbf780">entity_type</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="classentt_1_1sparse__set.html#a2eafe4975271769b08fe7f7d4924992f">data</a> () const ENTT_NOEXCEPT</td></tr>
|
|
<tr class="memdesc:a2eafe4975271769b08fe7f7d4924992f inherit pub_methods_classentt_1_1sparse__set"><td class="mdescLeft"> </td><td class="mdescRight">Direct access to the internal packed array. <a href="classentt_1_1sparse__set.html#a2eafe4975271769b08fe7f7d4924992f">More...</a><br /></td></tr>
|
|
<tr class="separator:a2eafe4975271769b08fe7f7d4924992f inherit pub_methods_classentt_1_1sparse__set"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a06743336f265989b48e106a3d3bd1562 inherit pub_methods_classentt_1_1sparse__set"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classentt_1_1sparse__set.html#a580b210d5a24c49ca8c255646f3bb469">iterator_type</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classentt_1_1sparse__set.html#a06743336f265989b48e106a3d3bd1562">begin</a> () const ENTT_NOEXCEPT</td></tr>
|
|
<tr class="memdesc:a06743336f265989b48e106a3d3bd1562 inherit pub_methods_classentt_1_1sparse__set"><td class="mdescLeft"> </td><td class="mdescRight">Returns an iterator to the beginning. <a href="classentt_1_1sparse__set.html#a06743336f265989b48e106a3d3bd1562">More...</a><br /></td></tr>
|
|
<tr class="separator:a06743336f265989b48e106a3d3bd1562 inherit pub_methods_classentt_1_1sparse__set"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a69d6c1288f673c6f92d2b1b028d6aa75 inherit pub_methods_classentt_1_1sparse__set"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classentt_1_1sparse__set.html#a580b210d5a24c49ca8c255646f3bb469">iterator_type</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classentt_1_1sparse__set.html#a69d6c1288f673c6f92d2b1b028d6aa75">end</a> () const ENTT_NOEXCEPT</td></tr>
|
|
<tr class="memdesc:a69d6c1288f673c6f92d2b1b028d6aa75 inherit pub_methods_classentt_1_1sparse__set"><td class="mdescLeft"> </td><td class="mdescRight">Returns an iterator to the end. <a href="classentt_1_1sparse__set.html#a69d6c1288f673c6f92d2b1b028d6aa75">More...</a><br /></td></tr>
|
|
<tr class="separator:a69d6c1288f673c6f92d2b1b028d6aa75 inherit pub_methods_classentt_1_1sparse__set"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a0ed57521bb3279b5ed3cd397b65abf01 inherit pub_methods_classentt_1_1sparse__set"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classentt_1_1sparse__set.html#a580b210d5a24c49ca8c255646f3bb469">iterator_type</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classentt_1_1sparse__set.html#a0ed57521bb3279b5ed3cd397b65abf01">find</a> (const <a class="el" href="classentt_1_1sparse__set.html#a9a1dbe5ab2dbb098beae0bff56bbf780">entity_type</a> entt) const ENTT_NOEXCEPT</td></tr>
|
|
<tr class="memdesc:a0ed57521bb3279b5ed3cd397b65abf01 inherit pub_methods_classentt_1_1sparse__set"><td class="mdescLeft"> </td><td class="mdescRight">Finds an entity. <a href="classentt_1_1sparse__set.html#a0ed57521bb3279b5ed3cd397b65abf01">More...</a><br /></td></tr>
|
|
<tr class="separator:a0ed57521bb3279b5ed3cd397b65abf01 inherit pub_methods_classentt_1_1sparse__set"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:af4eb4faf1aa28d20717716bea7981f5b inherit pub_methods_classentt_1_1sparse__set"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classentt_1_1sparse__set.html#af4eb4faf1aa28d20717716bea7981f5b">has</a> (const <a class="el" href="classentt_1_1sparse__set.html#a9a1dbe5ab2dbb098beae0bff56bbf780">entity_type</a> entt) const ENTT_NOEXCEPT</td></tr>
|
|
<tr class="memdesc:af4eb4faf1aa28d20717716bea7981f5b inherit pub_methods_classentt_1_1sparse__set"><td class="mdescLeft"> </td><td class="mdescRight">Checks if a sparse set contains an entity. <a href="classentt_1_1sparse__set.html#af4eb4faf1aa28d20717716bea7981f5b">More...</a><br /></td></tr>
|
|
<tr class="separator:af4eb4faf1aa28d20717716bea7981f5b inherit pub_methods_classentt_1_1sparse__set"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:afbdea531952ca6857abdfddf7866b5a2 inherit pub_methods_classentt_1_1sparse__set"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classentt_1_1sparse__set.html#a3d2138b0eb8c7ac968e9e38a9e981ec1">size_type</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classentt_1_1sparse__set.html#afbdea531952ca6857abdfddf7866b5a2">index</a> (const <a class="el" href="classentt_1_1sparse__set.html#a9a1dbe5ab2dbb098beae0bff56bbf780">entity_type</a> entt) const ENTT_NOEXCEPT</td></tr>
|
|
<tr class="memdesc:afbdea531952ca6857abdfddf7866b5a2 inherit pub_methods_classentt_1_1sparse__set"><td class="mdescLeft"> </td><td class="mdescRight">Returns the position of an entity in a sparse set. <a href="classentt_1_1sparse__set.html#afbdea531952ca6857abdfddf7866b5a2">More...</a><br /></td></tr>
|
|
<tr class="separator:afbdea531952ca6857abdfddf7866b5a2 inherit pub_methods_classentt_1_1sparse__set"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a4f6d293b9bc7227de22c86722881083f inherit pub_methods_classentt_1_1sparse__set"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classentt_1_1sparse__set.html#a4f6d293b9bc7227de22c86722881083f">construct</a> (const <a class="el" href="classentt_1_1sparse__set.html#a9a1dbe5ab2dbb098beae0bff56bbf780">entity_type</a> entt)</td></tr>
|
|
<tr class="memdesc:a4f6d293b9bc7227de22c86722881083f inherit pub_methods_classentt_1_1sparse__set"><td class="mdescLeft"> </td><td class="mdescRight">Assigns an entity to a sparse set. <a href="classentt_1_1sparse__set.html#a4f6d293b9bc7227de22c86722881083f">More...</a><br /></td></tr>
|
|
<tr class="separator:a4f6d293b9bc7227de22c86722881083f inherit pub_methods_classentt_1_1sparse__set"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a642460f7f0ca8e42220c43c785467063 inherit pub_methods_classentt_1_1sparse__set"><td class="memTemplParams" colspan="2">template<typename It > </td></tr>
|
|
<tr class="memitem:a642460f7f0ca8e42220c43c785467063 inherit pub_methods_classentt_1_1sparse__set"><td class="memTemplItemLeft" align="right" valign="top">void </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classentt_1_1sparse__set.html#a642460f7f0ca8e42220c43c785467063">batch</a> (It first, It last)</td></tr>
|
|
<tr class="memdesc:a642460f7f0ca8e42220c43c785467063 inherit pub_methods_classentt_1_1sparse__set"><td class="mdescLeft"> </td><td class="mdescRight">Assigns one or more entities to a sparse set. <a href="classentt_1_1sparse__set.html#a642460f7f0ca8e42220c43c785467063">More...</a><br /></td></tr>
|
|
<tr class="separator:a642460f7f0ca8e42220c43c785467063 inherit pub_methods_classentt_1_1sparse__set"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:ab69719626bee1add76096046db86a170 inherit pub_methods_classentt_1_1sparse__set"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classentt_1_1sparse__set.html#ab69719626bee1add76096046db86a170">destroy</a> (const <a class="el" href="classentt_1_1sparse__set.html#a9a1dbe5ab2dbb098beae0bff56bbf780">entity_type</a> entt)</td></tr>
|
|
<tr class="memdesc:ab69719626bee1add76096046db86a170 inherit pub_methods_classentt_1_1sparse__set"><td class="mdescLeft"> </td><td class="mdescRight">Removes an entity from a sparse set. <a href="classentt_1_1sparse__set.html#ab69719626bee1add76096046db86a170">More...</a><br /></td></tr>
|
|
<tr class="separator:ab69719626bee1add76096046db86a170 inherit pub_methods_classentt_1_1sparse__set"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:afae939a408911c573256cf0299d76828 inherit pub_methods_classentt_1_1sparse__set"><td class="memTemplParams" colspan="2">template<typename Compare , typename Sort = std_sort, typename... Args> </td></tr>
|
|
<tr class="memitem:afae939a408911c573256cf0299d76828 inherit pub_methods_classentt_1_1sparse__set"><td class="memTemplItemLeft" align="right" valign="top">void </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classentt_1_1sparse__set.html#afae939a408911c573256cf0299d76828">sort</a> (<a class="el" href="classentt_1_1sparse__set.html#a580b210d5a24c49ca8c255646f3bb469">iterator_type</a> first, <a class="el" href="classentt_1_1sparse__set.html#a580b210d5a24c49ca8c255646f3bb469">iterator_type</a> last, Compare compare, Sort algo=Sort{}, Args &&... args)</td></tr>
|
|
<tr class="memdesc:afae939a408911c573256cf0299d76828 inherit pub_methods_classentt_1_1sparse__set"><td class="mdescLeft"> </td><td class="mdescRight">Sort elements according to the given comparison function. <a href="classentt_1_1sparse__set.html#afae939a408911c573256cf0299d76828">More...</a><br /></td></tr>
|
|
<tr class="separator:afae939a408911c573256cf0299d76828 inherit pub_methods_classentt_1_1sparse__set"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a28b36afb6ae6f91d995ff259184d6515 inherit pub_methods_classentt_1_1sparse__set"><td class="memTemplParams" colspan="2">template<typename Apply , typename Compare , typename Sort = std_sort, typename... Args> </td></tr>
|
|
<tr class="memitem:a28b36afb6ae6f91d995ff259184d6515 inherit pub_methods_classentt_1_1sparse__set"><td class="memTemplItemLeft" align="right" valign="top">void </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classentt_1_1sparse__set.html#a28b36afb6ae6f91d995ff259184d6515">arrange</a> (<a class="el" href="classentt_1_1sparse__set.html#a580b210d5a24c49ca8c255646f3bb469">iterator_type</a> first, <a class="el" href="classentt_1_1sparse__set.html#a580b210d5a24c49ca8c255646f3bb469">iterator_type</a> last, Apply apply, Compare compare, Sort algo=Sort{}, Args &&... args)</td></tr>
|
|
<tr class="memdesc:a28b36afb6ae6f91d995ff259184d6515 inherit pub_methods_classentt_1_1sparse__set"><td class="mdescLeft"> </td><td class="mdescRight">Sort elements according to the given comparison function. <a href="classentt_1_1sparse__set.html#a28b36afb6ae6f91d995ff259184d6515">More...</a><br /></td></tr>
|
|
<tr class="separator:a28b36afb6ae6f91d995ff259184d6515 inherit pub_methods_classentt_1_1sparse__set"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:ab0481dde89f07e9ca50d79777de898b6 inherit pub_methods_classentt_1_1sparse__set"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classentt_1_1sparse__set.html#ab0481dde89f07e9ca50d79777de898b6">respect</a> (const <a class="el" href="classentt_1_1sparse__set.html">sparse_set</a> &other) ENTT_NOEXCEPT</td></tr>
|
|
<tr class="memdesc:ab0481dde89f07e9ca50d79777de898b6 inherit pub_methods_classentt_1_1sparse__set"><td class="mdescLeft"> </td><td class="mdescRight">Sort entities according to their order in another sparse set. <a href="classentt_1_1sparse__set.html#ab0481dde89f07e9ca50d79777de898b6">More...</a><br /></td></tr>
|
|
<tr class="separator:ab0481dde89f07e9ca50d79777de898b6 inherit pub_methods_classentt_1_1sparse__set"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:abcf1b927ccc18fba0fef178d168c1fa7 inherit pub_methods_classentt_1_1sparse__set"><td class="memItemLeft" align="right" valign="top"><a id="abcf1b927ccc18fba0fef178d168c1fa7"></a>
|
|
void </td><td class="memItemRight" valign="bottom"><a class="el" href="classentt_1_1sparse__set.html#abcf1b927ccc18fba0fef178d168c1fa7">reset</a> ()</td></tr>
|
|
<tr class="memdesc:abcf1b927ccc18fba0fef178d168c1fa7 inherit pub_methods_classentt_1_1sparse__set"><td class="mdescLeft"> </td><td class="mdescRight">Resets a sparse set. <br /></td></tr>
|
|
<tr class="separator:abcf1b927ccc18fba0fef178d168c1fa7 inherit pub_methods_classentt_1_1sparse__set"><td class="memSeparator" colspan="2"> </td></tr>
|
|
</table>
|
|
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
|
|
<div class="textblock"><h3>template<typename Entity, typename Type, typename = std::void_t<>><br />
|
|
class entt::basic_storage< Entity, Type, typename ></h3>
|
|
|
|
<p>Basic storage implementation. </p>
|
|
<p>This class is a refinement of a sparse set that associates an object to an entity. The main purpose of this class is to extend sparse sets to store components in a registry. It guarantees fast access both to the elements and to the entities.</p>
|
|
<dl class="section note"><dt>Note</dt><dd>Entities and objects have the same order. It's guaranteed both in case of raw access (either to entities or objects) and when using random or input access iterators.</dd>
|
|
<dd>
|
|
Internal data structures arrange elements to maximize performance. Because of that, there are no guarantees that elements have the expected order when iterate directly the internal packed array (see <code>raw</code> and <code>size</code> member functions for that). Use <code>begin</code> and <code>end</code> instead.</dd></dl>
|
|
<dl class="section warning"><dt>Warning</dt><dd>Empty types aren't explicitly instantiated. Temporary objects are returned in place of the instances of the components and raw access isn't available for them.</dd></dl>
|
|
<dl class="section see"><dt>See also</dt><dd><a class="el" href="classentt_1_1sparse__set.html#a8ef544aaed30126797f6f0b9a9f8b9e8" title="Default constructor. ">sparse_set<Entity></a></dd></dl>
|
|
<dl class="tparams"><dt>Template Parameters</dt><dd>
|
|
<table class="tparams">
|
|
<tr><td class="paramname">Entity</td><td>A valid entity type (see <a class="el" href="structentt_1_1entt__traits.html" title="Entity traits. ">entt_traits</a> for more details). </td></tr>
|
|
<tr><td class="paramname">Type</td><td>Type of objects assigned to the entities. </td></tr>
|
|
</table>
|
|
</dd>
|
|
</dl>
|
|
|
|
<p class="definition">Definition at line <a class="el" href="storage_8hpp_source.html#l00051">51</a> of file <a class="el" href="storage_8hpp_source.html">storage.hpp</a>.</p>
|
|
</div><h2 class="groupheader">Member Function Documentation</h2>
|
|
<a id="a5ef85c69a23deffd46b2dcfafcc4a668"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a5ef85c69a23deffd46b2dcfafcc4a668">◆ </a></span>batch()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<div class="memtemplate">
|
|
template<typename Entity, typename Type, typename = std::void_t<>> </div>
|
|
<div class="memtemplate">
|
|
template<typename It , typename... Args> </div>
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname"><a class="el" href="classentt_1_1sparse__set.html#a580b210d5a24c49ca8c255646f3bb469">iterator_type</a> <a class="el" href="classentt_1_1basic__storage.html">entt::basic_storage</a>< Entity, Type, typename >::batch </td>
|
|
<td>(</td>
|
|
<td class="paramtype">It </td>
|
|
<td class="paramname"><em>first</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">It </td>
|
|
<td class="paramname"><em>last</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">Args &&... </td>
|
|
<td class="paramname"><em>args</em> </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>Assigns one or more entities to a storage and default constructs or copy constructs their objects. </p>
|
|
<p>The object type must be at least move and default insertable if no arguments are provided, move and copy insertable otherwise.</p>
|
|
<dl class="section warning"><dt>Warning</dt><dd>Attempting to assign an entity that already belongs to the storage results in undefined behavior.<br />
|
|
An assertion will abort the execution at runtime in debug mode if the storage already contains the given entity.</dd></dl>
|
|
<dl class="tparams"><dt>Template Parameters</dt><dd>
|
|
<table class="tparams">
|
|
<tr><td class="paramname">It</td><td>Type of forward iterator. </td></tr>
|
|
<tr><td class="paramname">Args</td><td>Types of arguments to use to construct the object. </td></tr>
|
|
</table>
|
|
</dd>
|
|
</dl>
|
|
<dl class="params"><dt>Parameters</dt><dd>
|
|
<table class="params">
|
|
<tr><td class="paramname">first</td><td>An iterator to the first element of the range of entities. </td></tr>
|
|
<tr><td class="paramname">last</td><td>An iterator past the last element of the range of entities. </td></tr>
|
|
<tr><td class="paramname">args</td><td>Parameters to use to construct an object for the entities. </td></tr>
|
|
</table>
|
|
</dd>
|
|
</dl>
|
|
<dl class="section return"><dt>Returns</dt><dd>An iterator to the list of instances just created and sorted the same of the entities. </dd></dl>
|
|
|
|
<p class="definition">Definition at line <a class="el" href="storage_8hpp_source.html#l00356">356</a> of file <a class="el" href="storage_8hpp_source.html">storage.hpp</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="aecc4b13b67a7664c5c36596f2b927bed"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#aecc4b13b67a7664c5c36596f2b927bed">◆ </a></span>begin() <span class="overload">[1/2]</span></h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<div class="memtemplate">
|
|
template<typename Entity, typename Type, typename = std::void_t<>> </div>
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname"><a class="el" href="classentt_1_1basic__storage.html#aaa02d4db8defee92683bbc47b3eaa869">const_iterator_type</a> <a class="el" href="classentt_1_1basic__storage.html">entt::basic_storage</a>< Entity, Type, typename >::begin </td>
|
|
<td>(</td>
|
|
<td class="paramname"></td><td>)</td>
|
|
<td> const</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>Returns an iterator to the beginning. </p>
|
|
<p>The returned iterator points to the first instance of the given type. If the storage is empty, the returned iterator will be equal to <code><a class="el" href="classentt_1_1basic__storage.html#a9922f88c0ed8f587ff4ae09745f67ae9" title="Returns an iterator to the end. ">end()</a></code>.</p>
|
|
<dl class="section note"><dt>Note</dt><dd>Random access iterators stay true to the order imposed by a call to either <code>sort</code> or <code>respect</code>.</dd></dl>
|
|
<dl class="section return"><dt>Returns</dt><dd>An iterator to the first instance of the given type. </dd></dl>
|
|
|
|
<p class="definition">Definition at line <a class="el" href="storage_8hpp_source.html#l00230">230</a> of file <a class="el" href="storage_8hpp_source.html">storage.hpp</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="ab963b76ebe297a1ad4a2c433aa55f2b5"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#ab963b76ebe297a1ad4a2c433aa55f2b5">◆ </a></span>begin() <span class="overload">[2/2]</span></h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<div class="memtemplate">
|
|
template<typename Entity, typename Type, typename = std::void_t<>> </div>
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname"><a class="el" href="classentt_1_1sparse__set.html#a580b210d5a24c49ca8c255646f3bb469">iterator_type</a> <a class="el" href="classentt_1_1basic__storage.html">entt::basic_storage</a>< Entity, Type, typename >::begin </td>
|
|
<td>(</td>
|
|
<td class="paramname"></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>Returns an iterator to the beginning. </p>
|
|
<p>The returned iterator points to the first instance of the given type. If the storage is empty, the returned iterator will be equal to <code><a class="el" href="classentt_1_1basic__storage.html#a9922f88c0ed8f587ff4ae09745f67ae9" title="Returns an iterator to the end. ">end()</a></code>.</p>
|
|
<dl class="section note"><dt>Note</dt><dd>Random access iterators stay true to the order imposed by a call to either <code>sort</code> or <code>respect</code>.</dd></dl>
|
|
<dl class="section return"><dt>Returns</dt><dd>An iterator to the first instance of the given type. </dd></dl>
|
|
|
|
<p class="definition">Definition at line <a class="el" href="storage_8hpp_source.html#l00235">235</a> of file <a class="el" href="storage_8hpp_source.html">storage.hpp</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="aa5499c18eea80f3c903afef5031abf1b"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#aa5499c18eea80f3c903afef5031abf1b">◆ </a></span>cbegin()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<div class="memtemplate">
|
|
template<typename Entity, typename Type, typename = std::void_t<>> </div>
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname"><a class="el" href="classentt_1_1basic__storage.html#aaa02d4db8defee92683bbc47b3eaa869">const_iterator_type</a> <a class="el" href="classentt_1_1basic__storage.html">entt::basic_storage</a>< Entity, Type, typename >::cbegin </td>
|
|
<td>(</td>
|
|
<td class="paramname"></td><td>)</td>
|
|
<td> const</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>Returns an iterator to the beginning. </p>
|
|
<p>The returned iterator points to the first instance of the given type. If the storage is empty, the returned iterator will be equal to <code><a class="el" href="classentt_1_1basic__storage.html#a9922f88c0ed8f587ff4ae09745f67ae9" title="Returns an iterator to the end. ">end()</a></code>.</p>
|
|
<dl class="section note"><dt>Note</dt><dd>Random access iterators stay true to the order imposed by a call to either <code>sort</code> or <code>respect</code>.</dd></dl>
|
|
<dl class="section return"><dt>Returns</dt><dd>An iterator to the first instance of the given type. </dd></dl>
|
|
|
|
<p class="definition">Definition at line <a class="el" href="storage_8hpp_source.html#l00224">224</a> of file <a class="el" href="storage_8hpp_source.html">storage.hpp</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a5fb9f5fd4996f424ab94b70f79b15205"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a5fb9f5fd4996f424ab94b70f79b15205">◆ </a></span>cend()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<div class="memtemplate">
|
|
template<typename Entity, typename Type, typename = std::void_t<>> </div>
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname"><a class="el" href="classentt_1_1basic__storage.html#aaa02d4db8defee92683bbc47b3eaa869">const_iterator_type</a> <a class="el" href="classentt_1_1basic__storage.html">entt::basic_storage</a>< Entity, Type, typename >::cend </td>
|
|
<td>(</td>
|
|
<td class="paramname"></td><td>)</td>
|
|
<td> const</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>Returns an iterator to the end. </p>
|
|
<p>The returned iterator points to the element following the last instance of the given type. Attempting to dereference the returned iterator results in undefined behavior.</p>
|
|
<dl class="section note"><dt>Note</dt><dd>Random access iterators stay true to the order imposed by a call to either <code>sort</code> or <code>respect</code>.</dd></dl>
|
|
<dl class="section return"><dt>Returns</dt><dd>An iterator to the element following the last instance of the given type. </dd></dl>
|
|
|
|
<p class="definition">Definition at line <a class="el" href="storage_8hpp_source.html#l00254">254</a> of file <a class="el" href="storage_8hpp_source.html">storage.hpp</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a4cf7d707b57b6dd63c4d7852a23b6f5e"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a4cf7d707b57b6dd63c4d7852a23b6f5e">◆ </a></span>construct()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<div class="memtemplate">
|
|
template<typename Entity, typename Type, typename = std::void_t<>> </div>
|
|
<div class="memtemplate">
|
|
template<typename... Args> </div>
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname"><a class="el" href="classentt_1_1basic__storage.html#aa4e4358d25212b71d9629e470b845c53">object_type</a>& <a class="el" href="classentt_1_1basic__storage.html">entt::basic_storage</a>< Entity, Type, typename >::construct </td>
|
|
<td>(</td>
|
|
<td class="paramtype">const <a class="el" href="classentt_1_1sparse__set.html#a9a1dbe5ab2dbb098beae0bff56bbf780">entity_type</a> </td>
|
|
<td class="paramname"><em>entt</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">Args &&... </td>
|
|
<td class="paramname"><em>args</em> </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>Assigns an entity to a storage and constructs its object. </p>
|
|
<p>This version accept both types that can be constructed in place directly and types like aggregates that do not work well with a placement new as performed usually under the hood during an <em>emplace back</em>.</p>
|
|
<dl class="section warning"><dt>Warning</dt><dd>Attempting to use an entity that already belongs to the storage results in undefined behavior.<br />
|
|
An assertion will abort the execution at runtime in debug mode if the storage already contains the given entity.</dd></dl>
|
|
<dl class="tparams"><dt>Template Parameters</dt><dd>
|
|
<table class="tparams">
|
|
<tr><td class="paramname">Args</td><td>Types of arguments to use to construct the object. </td></tr>
|
|
</table>
|
|
</dd>
|
|
</dl>
|
|
<dl class="params"><dt>Parameters</dt><dd>
|
|
<table class="params">
|
|
<tr><td class="paramname">entt</td><td>A valid entity identifier. </td></tr>
|
|
<tr><td class="paramname">args</td><td>Parameters to use to construct an object for the entity. </td></tr>
|
|
</table>
|
|
</dd>
|
|
</dl>
|
|
<dl class="section return"><dt>Returns</dt><dd>The object associated with the entity. </dd></dl>
|
|
|
|
<p class="definition">Definition at line <a class="el" href="storage_8hpp_source.html#l00322">322</a> of file <a class="el" href="storage_8hpp_source.html">storage.hpp</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="ab59f0a70b5d25e66062e5ae5b501ab41"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#ab59f0a70b5d25e66062e5ae5b501ab41">◆ </a></span>destroy()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<div class="memtemplate">
|
|
template<typename Entity, typename Type, typename = std::void_t<>> </div>
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">void <a class="el" href="classentt_1_1basic__storage.html">entt::basic_storage</a>< Entity, Type, typename >::destroy </td>
|
|
<td>(</td>
|
|
<td class="paramtype">const <a class="el" href="classentt_1_1sparse__set.html#a9a1dbe5ab2dbb098beae0bff56bbf780">entity_type</a> </td>
|
|
<td class="paramname"><em>entt</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>Removes an entity from a storage and destroys its object. </p>
|
|
<dl class="section warning"><dt>Warning</dt><dd>Attempting to use an entity that doesn't belong to the storage results in undefined behavior.<br />
|
|
An assertion will abort the execution at runtime in debug mode if the storage doesn't contain the given entity.</dd></dl>
|
|
<dl class="params"><dt>Parameters</dt><dd>
|
|
<table class="params">
|
|
<tr><td class="paramname">entt</td><td>A valid entity identifier. </td></tr>
|
|
</table>
|
|
</dd>
|
|
</dl>
|
|
|
|
<p class="definition">Definition at line <a class="el" href="storage_8hpp_source.html#l00379">379</a> of file <a class="el" href="storage_8hpp_source.html">storage.hpp</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a43640288a074495b549779ad271d7010"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a43640288a074495b549779ad271d7010">◆ </a></span>end() <span class="overload">[1/2]</span></h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<div class="memtemplate">
|
|
template<typename Entity, typename Type, typename = std::void_t<>> </div>
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname"><a class="el" href="classentt_1_1basic__storage.html#aaa02d4db8defee92683bbc47b3eaa869">const_iterator_type</a> <a class="el" href="classentt_1_1basic__storage.html">entt::basic_storage</a>< Entity, Type, typename >::end </td>
|
|
<td>(</td>
|
|
<td class="paramname"></td><td>)</td>
|
|
<td> const</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>Returns an iterator to the end. </p>
|
|
<p>The returned iterator points to the element following the last instance of the given type. Attempting to dereference the returned iterator results in undefined behavior.</p>
|
|
<dl class="section note"><dt>Note</dt><dd>Random access iterators stay true to the order imposed by a call to either <code>sort</code> or <code>respect</code>.</dd></dl>
|
|
<dl class="section return"><dt>Returns</dt><dd>An iterator to the element following the last instance of the given type. </dd></dl>
|
|
|
|
<p class="definition">Definition at line <a class="el" href="storage_8hpp_source.html#l00259">259</a> of file <a class="el" href="storage_8hpp_source.html">storage.hpp</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a9922f88c0ed8f587ff4ae09745f67ae9"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a9922f88c0ed8f587ff4ae09745f67ae9">◆ </a></span>end() <span class="overload">[2/2]</span></h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<div class="memtemplate">
|
|
template<typename Entity, typename Type, typename = std::void_t<>> </div>
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname"><a class="el" href="classentt_1_1sparse__set.html#a580b210d5a24c49ca8c255646f3bb469">iterator_type</a> <a class="el" href="classentt_1_1basic__storage.html">entt::basic_storage</a>< Entity, Type, typename >::end </td>
|
|
<td>(</td>
|
|
<td class="paramname"></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>Returns an iterator to the end. </p>
|
|
<p>The returned iterator points to the element following the last instance of the given type. Attempting to dereference the returned iterator results in undefined behavior.</p>
|
|
<dl class="section note"><dt>Note</dt><dd>Random access iterators stay true to the order imposed by a call to either <code>sort</code> or <code>respect</code>.</dd></dl>
|
|
<dl class="section return"><dt>Returns</dt><dd>An iterator to the element following the last instance of the given type. </dd></dl>
|
|
|
|
<p class="definition">Definition at line <a class="el" href="storage_8hpp_source.html#l00264">264</a> of file <a class="el" href="storage_8hpp_source.html">storage.hpp</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="ab9f40b67e8a21a0aa2071ea127a1e4b9"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#ab9f40b67e8a21a0aa2071ea127a1e4b9">◆ </a></span>get() <span class="overload">[1/2]</span></h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<div class="memtemplate">
|
|
template<typename Entity, typename Type, typename = std::void_t<>> </div>
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">const <a class="el" href="classentt_1_1basic__storage.html#aa4e4358d25212b71d9629e470b845c53">object_type</a>& <a class="el" href="classentt_1_1basic__storage.html">entt::basic_storage</a>< Entity, Type, typename >::get </td>
|
|
<td>(</td>
|
|
<td class="paramtype">const <a class="el" href="classentt_1_1sparse__set.html#a9a1dbe5ab2dbb098beae0bff56bbf780">entity_type</a> </td>
|
|
<td class="paramname"><em>entt</em></td><td>)</td>
|
|
<td> const</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>Returns the object associated with an entity. </p>
|
|
<dl class="section warning"><dt>Warning</dt><dd>Attempting to use an entity that doesn't belong to the storage results in undefined behavior.<br />
|
|
An assertion will abort the execution at runtime in debug mode if the storage doesn't contain the given entity.</dd></dl>
|
|
<dl class="params"><dt>Parameters</dt><dd>
|
|
<table class="params">
|
|
<tr><td class="paramname">entt</td><td>A valid entity identifier. </td></tr>
|
|
</table>
|
|
</dd>
|
|
</dl>
|
|
<dl class="section return"><dt>Returns</dt><dd>The object associated with the entity. </dd></dl>
|
|
|
|
<p class="definition">Definition at line <a class="el" href="storage_8hpp_source.html#l00280">280</a> of file <a class="el" href="storage_8hpp_source.html">storage.hpp</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a629a39bfc6a29036671dea9d9b42f70d"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a629a39bfc6a29036671dea9d9b42f70d">◆ </a></span>get() <span class="overload">[2/2]</span></h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<div class="memtemplate">
|
|
template<typename Entity, typename Type, typename = std::void_t<>> </div>
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname"><a class="el" href="classentt_1_1basic__storage.html#aa4e4358d25212b71d9629e470b845c53">object_type</a>& <a class="el" href="classentt_1_1basic__storage.html">entt::basic_storage</a>< Entity, Type, typename >::get </td>
|
|
<td>(</td>
|
|
<td class="paramtype">const <a class="el" href="classentt_1_1sparse__set.html#a9a1dbe5ab2dbb098beae0bff56bbf780">entity_type</a> </td>
|
|
<td class="paramname"><em>entt</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>Returns the object associated with an entity. </p>
|
|
<dl class="section warning"><dt>Warning</dt><dd>Attempting to use an entity that doesn't belong to the storage results in undefined behavior.<br />
|
|
An assertion will abort the execution at runtime in debug mode if the storage doesn't contain the given entity.</dd></dl>
|
|
<dl class="params"><dt>Parameters</dt><dd>
|
|
<table class="params">
|
|
<tr><td class="paramname">entt</td><td>A valid entity identifier. </td></tr>
|
|
</table>
|
|
</dd>
|
|
</dl>
|
|
<dl class="section return"><dt>Returns</dt><dd>The object associated with the entity. </dd></dl>
|
|
|
|
<p class="definition">Definition at line <a class="el" href="storage_8hpp_source.html#l00285">285</a> of file <a class="el" href="storage_8hpp_source.html">storage.hpp</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a8e38d136d24bb38ef96c02135549c5d8"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a8e38d136d24bb38ef96c02135549c5d8">◆ </a></span>raw() <span class="overload">[1/2]</span></h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<div class="memtemplate">
|
|
template<typename Entity, typename Type, typename = std::void_t<>> </div>
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">const <a class="el" href="classentt_1_1basic__storage.html#aa4e4358d25212b71d9629e470b845c53">object_type</a>* <a class="el" href="classentt_1_1basic__storage.html">entt::basic_storage</a>< Entity, Type, typename >::raw </td>
|
|
<td>(</td>
|
|
<td class="paramname"></td><td>)</td>
|
|
<td> const</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>Direct access to the array of objects. </p>
|
|
<p>The returned pointer is such that range <code>[<a class="el" href="classentt_1_1basic__storage.html#ae7757471c65eca305d2b83b570571065" title="Direct access to the array of objects. ">raw()</a>, <a class="el" href="classentt_1_1basic__storage.html#ae7757471c65eca305d2b83b570571065" title="Direct access to the array of objects. ">raw()</a> + <a class="el" href="classentt_1_1sparse__set.html#a340dff7484f1e58feff58a5f0627e190" title="Returns the number of elements in a sparse set. ">size()</a>]</code> is always a valid range, even if the container is empty.</p>
|
|
<dl class="section note"><dt>Note</dt><dd>There are no guarantees on the order, even though either <code>sort</code> or <code>respect</code> has been previously invoked. Internal data structures arrange elements to maximize performance. Accessing them directly gives a performance boost but less guarantees. Use <code>begin</code> and <code>end</code> if you want to iterate the storage in the expected order.</dd></dl>
|
|
<dl class="section return"><dt>Returns</dt><dd>A pointer to the array of objects. </dd></dl>
|
|
|
|
<p class="definition">Definition at line <a class="el" href="storage_8hpp_source.html#l00203">203</a> of file <a class="el" href="storage_8hpp_source.html">storage.hpp</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="ae7757471c65eca305d2b83b570571065"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#ae7757471c65eca305d2b83b570571065">◆ </a></span>raw() <span class="overload">[2/2]</span></h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<div class="memtemplate">
|
|
template<typename Entity, typename Type, typename = std::void_t<>> </div>
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname"><a class="el" href="classentt_1_1basic__storage.html#aa4e4358d25212b71d9629e470b845c53">object_type</a>* <a class="el" href="classentt_1_1basic__storage.html">entt::basic_storage</a>< Entity, Type, typename >::raw </td>
|
|
<td>(</td>
|
|
<td class="paramname"></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>Direct access to the array of objects. </p>
|
|
<p>The returned pointer is such that range <code>[<a class="el" href="classentt_1_1basic__storage.html#ae7757471c65eca305d2b83b570571065" title="Direct access to the array of objects. ">raw()</a>, <a class="el" href="classentt_1_1basic__storage.html#ae7757471c65eca305d2b83b570571065" title="Direct access to the array of objects. ">raw()</a> + <a class="el" href="classentt_1_1sparse__set.html#a340dff7484f1e58feff58a5f0627e190" title="Returns the number of elements in a sparse set. ">size()</a>]</code> is always a valid range, even if the container is empty.</p>
|
|
<dl class="section note"><dt>Note</dt><dd>There are no guarantees on the order, even though either <code>sort</code> or <code>respect</code> has been previously invoked. Internal data structures arrange elements to maximize performance. Accessing them directly gives a performance boost but less guarantees. Use <code>begin</code> and <code>end</code> if you want to iterate the storage in the expected order.</dd></dl>
|
|
<dl class="section return"><dt>Returns</dt><dd>A pointer to the array of objects. </dd></dl>
|
|
|
|
<p class="definition">Definition at line <a class="el" href="storage_8hpp_source.html#l00208">208</a> of file <a class="el" href="storage_8hpp_source.html">storage.hpp</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a8f2a2a968a241832acc338b8dca2f744"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a8f2a2a968a241832acc338b8dca2f744">◆ </a></span>reserve()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<div class="memtemplate">
|
|
template<typename Entity, typename Type, typename = std::void_t<>> </div>
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">void <a class="el" href="classentt_1_1basic__storage.html">entt::basic_storage</a>< Entity, Type, typename >::reserve </td>
|
|
<td>(</td>
|
|
<td class="paramtype">const <a class="el" href="classentt_1_1sparse__set.html#a3d2138b0eb8c7ac968e9e38a9e981ec1">size_type</a> </td>
|
|
<td class="paramname"><em>cap</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>Increases the capacity of a storage. </p>
|
|
<p>If the new capacity is greater than the current capacity, new storage is allocated, otherwise the method does nothing.</p>
|
|
<dl class="params"><dt>Parameters</dt><dd>
|
|
<table class="params">
|
|
<tr><td class="paramname">cap</td><td>Desired capacity. </td></tr>
|
|
</table>
|
|
</dd>
|
|
</dl>
|
|
|
|
<p class="definition">Definition at line <a class="el" href="storage_8hpp_source.html#l00177">177</a> of file <a class="el" href="storage_8hpp_source.html">storage.hpp</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="ac9b5e700778b280a69bb13faff484756"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#ac9b5e700778b280a69bb13faff484756">◆ </a></span>sort()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<div class="memtemplate">
|
|
template<typename Entity, typename Type, typename = std::void_t<>> </div>
|
|
<div class="memtemplate">
|
|
template<typename Compare , typename Sort = std_sort, typename... Args> </div>
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">void <a class="el" href="classentt_1_1basic__storage.html">entt::basic_storage</a>< Entity, Type, typename >::sort </td>
|
|
<td>(</td>
|
|
<td class="paramtype"><a class="el" href="classentt_1_1sparse__set.html#a580b210d5a24c49ca8c255646f3bb469">iterator_type</a> </td>
|
|
<td class="paramname"><em>first</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype"><a class="el" href="classentt_1_1sparse__set.html#a580b210d5a24c49ca8c255646f3bb469">iterator_type</a> </td>
|
|
<td class="paramname"><em>last</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">Compare </td>
|
|
<td class="paramname"><em>compare</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">Sort </td>
|
|
<td class="paramname"><em>algo</em> = <code>Sort{}</code>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">Args &&... </td>
|
|
<td class="paramname"><em>args</em> </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>Sort elements according to the given comparison function. </p>
|
|
<p>Sort the elements so that iterating the range with a couple of iterators returns them in the expected order. See <code>begin</code> and <code>end</code> for more details.</p>
|
|
<p>The comparison function object must return <code>true</code> if the first element is <em>less</em> than the second one, <code>false</code> otherwise. The signature of the comparison function should be equivalent to one of the following:</p>
|
|
<div class="fragment"><div class="line">bool(<span class="keyword">const</span> Entity, <span class="keyword">const</span> Entity);</div><div class="line">bool(<span class="keyword">const</span> Type &, <span class="keyword">const</span> Type &);</div></div><!-- fragment --><p>Moreover, the comparison function object shall induce a <em>strict weak ordering</em> on the values.</p>
|
|
<p>The sort function oject must offer a member function template <code>operator()</code> that accepts three arguments:</p>
|
|
<ul>
|
|
<li>An iterator to the first element of the range to sort.</li>
|
|
<li>An iterator past the last element of the range to sort.</li>
|
|
<li>A comparison function to use to compare the elements.</li>
|
|
</ul>
|
|
<dl class="section note"><dt>Note</dt><dd>Attempting to iterate elements using a raw pointer returned by a call to either <code>data</code> or <code>raw</code> gives no guarantees on the order, even though <code>sort</code> has been invoked.</dd></dl>
|
|
<dl class="section warning"><dt>Warning</dt><dd>Empty types are never instantiated. Therefore, only comparison function objects that require to return entities rather than components are accepted.</dd></dl>
|
|
<dl class="tparams"><dt>Template Parameters</dt><dd>
|
|
<table class="tparams">
|
|
<tr><td class="paramname">Compare</td><td>Type of comparison function object. </td></tr>
|
|
<tr><td class="paramname">Sort</td><td>Type of sort function object. </td></tr>
|
|
<tr><td class="paramname">Args</td><td>Types of arguments to forward to the sort function object. </td></tr>
|
|
</table>
|
|
</dd>
|
|
</dl>
|
|
<dl class="params"><dt>Parameters</dt><dd>
|
|
<table class="params">
|
|
<tr><td class="paramname">first</td><td>An iterator to the first element of the range to sort. </td></tr>
|
|
<tr><td class="paramname">last</td><td>An iterator past the last element of the range to sort. </td></tr>
|
|
<tr><td class="paramname">compare</td><td>A valid comparison function object. </td></tr>
|
|
<tr><td class="paramname">algo</td><td>A valid sort function object. </td></tr>
|
|
<tr><td class="paramname">args</td><td>Arguments to forward to the sort function object, if any. </td></tr>
|
|
</table>
|
|
</dd>
|
|
</dl>
|
|
|
|
<p class="definition">Definition at line <a class="el" href="storage_8hpp_source.html#l00449">449</a> of file <a class="el" href="storage_8hpp_source.html">storage.hpp</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a35f98e0151152bbf10fd1666f4bcf00b"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a35f98e0151152bbf10fd1666f4bcf00b">◆ </a></span>swap()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<div class="memtemplate">
|
|
template<typename Entity, typename Type, typename = std::void_t<>> </div>
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">void <a class="el" href="classentt_1_1basic__storage.html">entt::basic_storage</a>< Entity, Type, typename >::swap </td>
|
|
<td>(</td>
|
|
<td class="paramtype">const <a class="el" href="classentt_1_1sparse__set.html#a9a1dbe5ab2dbb098beae0bff56bbf780">entity_type</a> </td>
|
|
<td class="paramname"><em>lhs</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">const <a class="el" href="classentt_1_1sparse__set.html#a9a1dbe5ab2dbb098beae0bff56bbf780">entity_type</a> </td>
|
|
<td class="paramname"><em>rhs</em> </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 class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Swaps entities and objects in the internal packed arrays. </p>
|
|
<dl class="section warning"><dt>Warning</dt><dd>Attempting to swap entities that don't belong to the sparse set results in undefined behavior.<br />
|
|
An assertion will abort the execution at runtime in debug mode if the sparse set doesn't contain the given entities.</dd></dl>
|
|
<dl class="params"><dt>Parameters</dt><dd>
|
|
<table class="params">
|
|
<tr><td class="paramname">lhs</td><td>A valid entity identifier. </td></tr>
|
|
<tr><td class="paramname">rhs</td><td>A valid entity identifier. </td></tr>
|
|
</table>
|
|
</dd>
|
|
</dl>
|
|
|
|
<p>Reimplemented from <a class="el" href="classentt_1_1sparse__set.html#a5ef14da059528647a5d72f2e2ce0d762">entt::sparse_set< Entity ></a>.</p>
|
|
|
|
<p class="definition">Definition at line <a class="el" href="storage_8hpp_source.html#l00398">398</a> of file <a class="el" href="storage_8hpp_source.html">storage.hpp</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="aab7da23b603d6cc78e67b3509ad979fa"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#aab7da23b603d6cc78e67b3509ad979fa">◆ </a></span>try_get() <span class="overload">[1/2]</span></h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<div class="memtemplate">
|
|
template<typename Entity, typename Type, typename = std::void_t<>> </div>
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">const <a class="el" href="classentt_1_1basic__storage.html#aa4e4358d25212b71d9629e470b845c53">object_type</a>* <a class="el" href="classentt_1_1basic__storage.html">entt::basic_storage</a>< Entity, Type, typename >::try_get </td>
|
|
<td>(</td>
|
|
<td class="paramtype">const <a class="el" href="classentt_1_1sparse__set.html#a9a1dbe5ab2dbb098beae0bff56bbf780">entity_type</a> </td>
|
|
<td class="paramname"><em>entt</em></td><td>)</td>
|
|
<td> const</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>Returns a pointer to the object associated with an entity, if any. </p>
|
|
<dl class="params"><dt>Parameters</dt><dd>
|
|
<table class="params">
|
|
<tr><td class="paramname">entt</td><td>A valid entity identifier. </td></tr>
|
|
</table>
|
|
</dd>
|
|
</dl>
|
|
<dl class="section return"><dt>Returns</dt><dd>The object associated with the entity, if any. </dd></dl>
|
|
|
|
<p class="definition">Definition at line <a class="el" href="storage_8hpp_source.html#l00294">294</a> of file <a class="el" href="storage_8hpp_source.html">storage.hpp</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a8ff9d6ef48840c8ad88f8c0b8b5dcd35"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a8ff9d6ef48840c8ad88f8c0b8b5dcd35">◆ </a></span>try_get() <span class="overload">[2/2]</span></h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<div class="memtemplate">
|
|
template<typename Entity, typename Type, typename = std::void_t<>> </div>
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname"><a class="el" href="classentt_1_1basic__storage.html#aa4e4358d25212b71d9629e470b845c53">object_type</a>* <a class="el" href="classentt_1_1basic__storage.html">entt::basic_storage</a>< Entity, Type, typename >::try_get </td>
|
|
<td>(</td>
|
|
<td class="paramtype">const <a class="el" href="classentt_1_1sparse__set.html#a9a1dbe5ab2dbb098beae0bff56bbf780">entity_type</a> </td>
|
|
<td class="paramname"><em>entt</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>Returns a pointer to the object associated with an entity, if any. </p>
|
|
<dl class="params"><dt>Parameters</dt><dd>
|
|
<table class="params">
|
|
<tr><td class="paramname">entt</td><td>A valid entity identifier. </td></tr>
|
|
</table>
|
|
</dd>
|
|
</dl>
|
|
<dl class="section return"><dt>Returns</dt><dd>The object associated with the entity, if any. </dd></dl>
|
|
|
|
<p class="definition">Definition at line <a class="el" href="storage_8hpp_source.html#l00299">299</a> of file <a class="el" href="storage_8hpp_source.html">storage.hpp</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<hr/>The documentation for this class was generated from the following file:<ul>
|
|
<li>src/entt/entity/<a class="el" href="storage_8hpp_source.html">storage.hpp</a></li>
|
|
</ul>
|
|
</div><!-- contents -->
|
|
<!-- start footer part -->
|
|
<hr class="footer"/><address class="footer"><small>
|
|
Generated by  <a href="http://www.doxygen.org/index.html">
|
|
<img class="footer" src="doxygen.png" alt="doxygen"/>
|
|
</a> 1.8.13
|
|
</small></address>
|
|
</body>
|
|
</html>
|