Files
entt/structentt_1_1Actor.html
2018-08-02 17:38:31 +02:00

819 lines
43 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::Actor&lt; Entity &gt; Struct 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
&#160;<span id="projectnumber">2.7.2</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="structentt_1_1Actor.html">Actor</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#pub-types">Public Types</a> &#124;
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="structentt_1_1Actor-members.html">List of all members</a> </div>
<div class="headertitle">
<div class="title">entt::Actor&lt; Entity &gt; Struct Template Reference</div> </div>
</div><!--header-->
<div class="contents">
<p>Dedicated to those who aren't confident with entity-component systems.
<a href="structentt_1_1Actor.html#details">More...</a></p>
<p><code>#include &lt;<a class="el" href="actor_8hpp_source.html">actor.hpp</a>&gt;</code></p>
<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:a59ce601affb52396d2cacdc3ffd14928"><td class="memItemLeft" align="right" valign="top"><a id="a59ce601affb52396d2cacdc3ffd14928"></a>
using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structentt_1_1Actor.html#a59ce601affb52396d2cacdc3ffd14928">registry_type</a> = <a class="el" href="classentt_1_1Registry.html">Registry</a>&lt; Entity &gt;</td></tr>
<tr class="memdesc:a59ce601affb52396d2cacdc3ffd14928"><td class="mdescLeft">&#160;</td><td class="mdescRight">Type of registry used internally. <br /></td></tr>
<tr class="separator:a59ce601affb52396d2cacdc3ffd14928"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a809cbe96d54fe86b470246a34e873a4e"><td class="memItemLeft" align="right" valign="top"><a id="a809cbe96d54fe86b470246a34e873a4e"></a>
using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structentt_1_1Actor.html#a809cbe96d54fe86b470246a34e873a4e">entity_type</a> = Entity</td></tr>
<tr class="memdesc:a809cbe96d54fe86b470246a34e873a4e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Underlying entity identifier. <br /></td></tr>
<tr class="separator:a809cbe96d54fe86b470246a34e873a4e"><td class="memSeparator" colspan="2">&#160;</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:a000a099327600af5eaf86990fe886260"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structentt_1_1Actor.html#a000a099327600af5eaf86990fe886260">Actor</a> (<a class="el" href="classentt_1_1Registry.html">Registry</a>&lt; Entity &gt; &amp;reg)</td></tr>
<tr class="memdesc:a000a099327600af5eaf86990fe886260"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructs an actor by using the given registry. <a href="#a000a099327600af5eaf86990fe886260">More...</a><br /></td></tr>
<tr class="separator:a000a099327600af5eaf86990fe886260"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3ab5d325569b88346684a1cffd6bd633"><td class="memItemLeft" align="right" valign="top"><a id="a3ab5d325569b88346684a1cffd6bd633"></a>
virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structentt_1_1Actor.html#a3ab5d325569b88346684a1cffd6bd633">~Actor</a> ()</td></tr>
<tr class="memdesc:a3ab5d325569b88346684a1cffd6bd633"><td class="mdescLeft">&#160;</td><td class="mdescRight">Default destructor. <br /></td></tr>
<tr class="separator:a3ab5d325569b88346684a1cffd6bd633"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a02fb1433a35bb6df68a79a8bdd80036c"><td class="memItemLeft" align="right" valign="top"><a id="a02fb1433a35bb6df68a79a8bdd80036c"></a>
&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structentt_1_1Actor.html#a02fb1433a35bb6df68a79a8bdd80036c">Actor</a> (const <a class="el" href="structentt_1_1Actor.html">Actor</a> &amp;)=default</td></tr>
<tr class="memdesc:a02fb1433a35bb6df68a79a8bdd80036c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Default copy constructor. <br /></td></tr>
<tr class="separator:a02fb1433a35bb6df68a79a8bdd80036c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a851508562e73c601be2965929b31c218"><td class="memItemLeft" align="right" valign="top"><a id="a851508562e73c601be2965929b31c218"></a>
&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structentt_1_1Actor.html#a851508562e73c601be2965929b31c218">Actor</a> (<a class="el" href="structentt_1_1Actor.html">Actor</a> &amp;&amp;)=default</td></tr>
<tr class="memdesc:a851508562e73c601be2965929b31c218"><td class="mdescLeft">&#160;</td><td class="mdescRight">Default move constructor. <br /></td></tr>
<tr class="separator:a851508562e73c601be2965929b31c218"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af65a5bd2973d27a9adb1a62b746111fe"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structentt_1_1Actor.html">Actor</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structentt_1_1Actor.html#af65a5bd2973d27a9adb1a62b746111fe">operator=</a> (const <a class="el" href="structentt_1_1Actor.html">Actor</a> &amp;)=default</td></tr>
<tr class="memdesc:af65a5bd2973d27a9adb1a62b746111fe"><td class="mdescLeft">&#160;</td><td class="mdescRight">Default copy assignment operator. <a href="#af65a5bd2973d27a9adb1a62b746111fe">More...</a><br /></td></tr>
<tr class="separator:af65a5bd2973d27a9adb1a62b746111fe"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:adbb2c4045a701b76d5fd514ec9221c02"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structentt_1_1Actor.html">Actor</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structentt_1_1Actor.html#adbb2c4045a701b76d5fd514ec9221c02">operator=</a> (<a class="el" href="structentt_1_1Actor.html">Actor</a> &amp;&amp;)=default</td></tr>
<tr class="memdesc:adbb2c4045a701b76d5fd514ec9221c02"><td class="mdescLeft">&#160;</td><td class="mdescRight">Default move assignment operator. <a href="#adbb2c4045a701b76d5fd514ec9221c02">More...</a><br /></td></tr>
<tr class="separator:adbb2c4045a701b76d5fd514ec9221c02"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0a161248d739e780833e534f7d1cf638"><td class="memTemplParams" colspan="2">template&lt;typename Tag , typename... Args&gt; </td></tr>
<tr class="memitem:a0a161248d739e780833e534f7d1cf638"><td class="memTemplItemLeft" align="right" valign="top">Tag &amp;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structentt_1_1Actor.html#a0a161248d739e780833e534f7d1cf638">assign</a> (<a class="el" href="structentt_1_1tag__t.html">tag_t</a>, Args &amp;&amp;... args)</td></tr>
<tr class="memdesc:a0a161248d739e780833e534f7d1cf638"><td class="mdescLeft">&#160;</td><td class="mdescRight">Assigns the given tag to an actor. <a href="#a0a161248d739e780833e534f7d1cf638">More...</a><br /></td></tr>
<tr class="separator:a0a161248d739e780833e534f7d1cf638"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7631fdb2de787c10b016a71905906147"><td class="memTemplParams" colspan="2">template&lt;typename Component , typename... Args&gt; </td></tr>
<tr class="memitem:a7631fdb2de787c10b016a71905906147"><td class="memTemplItemLeft" align="right" valign="top">Component &amp;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structentt_1_1Actor.html#a7631fdb2de787c10b016a71905906147">assign</a> (Args &amp;&amp;... args)</td></tr>
<tr class="memdesc:a7631fdb2de787c10b016a71905906147"><td class="mdescLeft">&#160;</td><td class="mdescRight">Assigns the given component to an actor. <a href="#a7631fdb2de787c10b016a71905906147">More...</a><br /></td></tr>
<tr class="separator:a7631fdb2de787c10b016a71905906147"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4c805918eeb0f01c86529a3c9b4e9b13"><td class="memTemplParams" colspan="2">template&lt;typename Tag &gt; </td></tr>
<tr class="memitem:a4c805918eeb0f01c86529a3c9b4e9b13"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structentt_1_1Actor.html#a4c805918eeb0f01c86529a3c9b4e9b13">remove</a> (<a class="el" href="structentt_1_1tag__t.html">tag_t</a>)</td></tr>
<tr class="memdesc:a4c805918eeb0f01c86529a3c9b4e9b13"><td class="mdescLeft">&#160;</td><td class="mdescRight">Removes the given tag from an actor. <a href="#a4c805918eeb0f01c86529a3c9b4e9b13">More...</a><br /></td></tr>
<tr class="separator:a4c805918eeb0f01c86529a3c9b4e9b13"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2a647927841d9c2440cfb664f371bf09"><td class="memTemplParams" colspan="2">template&lt;typename Component &gt; </td></tr>
<tr class="memitem:a2a647927841d9c2440cfb664f371bf09"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structentt_1_1Actor.html#a2a647927841d9c2440cfb664f371bf09">remove</a> ()</td></tr>
<tr class="memdesc:a2a647927841d9c2440cfb664f371bf09"><td class="mdescLeft">&#160;</td><td class="mdescRight">Removes the given component from an actor. <a href="#a2a647927841d9c2440cfb664f371bf09">More...</a><br /></td></tr>
<tr class="separator:a2a647927841d9c2440cfb664f371bf09"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a17e417a142fb430413f08bc56b7f95e1"><td class="memTemplParams" colspan="2">template&lt;typename Tag &gt; </td></tr>
<tr class="memitem:a17e417a142fb430413f08bc56b7f95e1"><td class="memTemplItemLeft" align="right" valign="top">bool&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structentt_1_1Actor.html#a17e417a142fb430413f08bc56b7f95e1">has</a> (<a class="el" href="structentt_1_1tag__t.html">tag_t</a>) const ENTT_NOEXCEPT</td></tr>
<tr class="memdesc:a17e417a142fb430413f08bc56b7f95e1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Checks if an actor owns the given tag. <a href="#a17e417a142fb430413f08bc56b7f95e1">More...</a><br /></td></tr>
<tr class="separator:a17e417a142fb430413f08bc56b7f95e1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac606b0a0418351c925d29809f7107662"><td class="memTemplParams" colspan="2">template&lt;typename Component &gt; </td></tr>
<tr class="memitem:ac606b0a0418351c925d29809f7107662"><td class="memTemplItemLeft" align="right" valign="top">bool&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structentt_1_1Actor.html#ac606b0a0418351c925d29809f7107662">has</a> () const ENTT_NOEXCEPT</td></tr>
<tr class="memdesc:ac606b0a0418351c925d29809f7107662"><td class="mdescLeft">&#160;</td><td class="mdescRight">Checks if an actor has the given component. <a href="#ac606b0a0418351c925d29809f7107662">More...</a><br /></td></tr>
<tr class="separator:ac606b0a0418351c925d29809f7107662"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae6a07d30d0aca366d5b1eb3e839e36bc"><td class="memTemplParams" colspan="2">template&lt;typename Tag &gt; </td></tr>
<tr class="memitem:ae6a07d30d0aca366d5b1eb3e839e36bc"><td class="memTemplItemLeft" align="right" valign="top">const Tag &amp;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structentt_1_1Actor.html#ae6a07d30d0aca366d5b1eb3e839e36bc">get</a> (<a class="el" href="structentt_1_1tag__t.html">tag_t</a>) const ENTT_NOEXCEPT</td></tr>
<tr class="memdesc:ae6a07d30d0aca366d5b1eb3e839e36bc"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns a reference to the given tag for an actor. <a href="#ae6a07d30d0aca366d5b1eb3e839e36bc">More...</a><br /></td></tr>
<tr class="separator:ae6a07d30d0aca366d5b1eb3e839e36bc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae3ef92c5829b365871bb9fffb013d825"><td class="memTemplParams" colspan="2">template&lt;typename Tag &gt; </td></tr>
<tr class="memitem:ae3ef92c5829b365871bb9fffb013d825"><td class="memTemplItemLeft" align="right" valign="top">Tag &amp;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structentt_1_1Actor.html#ae3ef92c5829b365871bb9fffb013d825">get</a> (<a class="el" href="structentt_1_1tag__t.html">tag_t</a>) ENTT_NOEXCEPT</td></tr>
<tr class="memdesc:ae3ef92c5829b365871bb9fffb013d825"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns a reference to the given tag for an actor. <a href="#ae3ef92c5829b365871bb9fffb013d825">More...</a><br /></td></tr>
<tr class="separator:ae3ef92c5829b365871bb9fffb013d825"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acd9d53518e387076d89df97767fee4f1"><td class="memTemplParams" colspan="2">template&lt;typename Component &gt; </td></tr>
<tr class="memitem:acd9d53518e387076d89df97767fee4f1"><td class="memTemplItemLeft" align="right" valign="top">const Component &amp;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structentt_1_1Actor.html#acd9d53518e387076d89df97767fee4f1">get</a> () const ENTT_NOEXCEPT</td></tr>
<tr class="memdesc:acd9d53518e387076d89df97767fee4f1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns a reference to the given component for an actor. <a href="#acd9d53518e387076d89df97767fee4f1">More...</a><br /></td></tr>
<tr class="separator:acd9d53518e387076d89df97767fee4f1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a636b3ba19d4762b9b616a5e47e959b08"><td class="memTemplParams" colspan="2">template&lt;typename Component &gt; </td></tr>
<tr class="memitem:a636b3ba19d4762b9b616a5e47e959b08"><td class="memTemplItemLeft" align="right" valign="top">Component &amp;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structentt_1_1Actor.html#a636b3ba19d4762b9b616a5e47e959b08">get</a> () ENTT_NOEXCEPT</td></tr>
<tr class="memdesc:a636b3ba19d4762b9b616a5e47e959b08"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns a reference to the given component for an actor. <a href="#a636b3ba19d4762b9b616a5e47e959b08">More...</a><br /></td></tr>
<tr class="separator:a636b3ba19d4762b9b616a5e47e959b08"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab31a5da2d556ff3c01e0cea59f090956"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="structentt_1_1Actor.html#a59ce601affb52396d2cacdc3ffd14928">registry_type</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structentt_1_1Actor.html#ab31a5da2d556ff3c01e0cea59f090956">registry</a> () const ENTT_NOEXCEPT</td></tr>
<tr class="memdesc:ab31a5da2d556ff3c01e0cea59f090956"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns a reference to the underlying registry. <a href="#ab31a5da2d556ff3c01e0cea59f090956">More...</a><br /></td></tr>
<tr class="separator:ab31a5da2d556ff3c01e0cea59f090956"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae914b8f7817cdfaf596983743df126fe"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structentt_1_1Actor.html#a59ce601affb52396d2cacdc3ffd14928">registry_type</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structentt_1_1Actor.html#ae914b8f7817cdfaf596983743df126fe">registry</a> () ENTT_NOEXCEPT</td></tr>
<tr class="memdesc:ae914b8f7817cdfaf596983743df126fe"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns a reference to the underlying registry. <a href="#ae914b8f7817cdfaf596983743df126fe">More...</a><br /></td></tr>
<tr class="separator:ae914b8f7817cdfaf596983743df126fe"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afb70b6f30071680efab23715a7e61a29"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structentt_1_1Actor.html#a809cbe96d54fe86b470246a34e873a4e">entity_type</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structentt_1_1Actor.html#afb70b6f30071680efab23715a7e61a29">entity</a> () const ENTT_NOEXCEPT</td></tr>
<tr class="memdesc:afb70b6f30071680efab23715a7e61a29"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the entity associated with an actor. <a href="#afb70b6f30071680efab23715a7e61a29">More...</a><br /></td></tr>
<tr class="separator:afb70b6f30071680efab23715a7e61a29"><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 Entity&gt;<br />
struct entt::Actor&lt; Entity &gt;</h3>
<p>Dedicated to those who aren't confident with entity-component systems. </p>
<p>Tiny wrapper around a registry, for all those users that aren't confident with entity-component systems and prefer to iterate objects directly.</p>
<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>
</table>
</dd>
</dl>
<p class="definition">Definition at line <a class="el" href="actor_8hpp_source.html#l00023">23</a> of file <a class="el" href="actor_8hpp_source.html">actor.hpp</a>.</p>
</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a id="a000a099327600af5eaf86990fe886260"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a000a099327600af5eaf86990fe886260">&#9670;&nbsp;</a></span>Actor()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Entity &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="structentt_1_1Actor.html">entt::Actor</a>&lt; Entity &gt;::<a class="el" href="structentt_1_1Actor.html">Actor</a> </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classentt_1_1Registry.html">Registry</a>&lt; Entity &gt; &amp;&#160;</td>
<td class="paramname"><em>reg</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>Constructs an actor by using the given registry. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">reg</td><td>An entity-component system properly initialized. </td></tr>
</table>
</dd>
</dl>
<p class="definition">Definition at line <a class="el" href="actor_8hpp_source.html#l00033">33</a> of file <a class="el" href="actor_8hpp_source.html">actor.hpp</a>.</p>
</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a id="a0a161248d739e780833e534f7d1cf638"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0a161248d739e780833e534f7d1cf638">&#9670;&nbsp;</a></span>assign() <span class="overload">[1/2]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Entity &gt; </div>
<div class="memtemplate">
template&lt;typename Tag , typename... Args&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">Tag&amp; <a class="el" href="structentt_1_1Actor.html">entt::Actor</a>&lt; Entity &gt;::assign </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structentt_1_1tag__t.html">tag_t</a>&#160;</td>
<td class="paramname">, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">Args &amp;&amp;...&#160;</td>
<td class="paramname"><em>args</em>&#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>Assigns the given tag to an actor. </p>
<p>A new instance of the given tag is created and initialized with the arguments provided (the tag must have a proper constructor or be of aggregate type). Then the tag is removed from its previous owner (if any) and assigned to the actor.</p>
<dl class="tparams"><dt>Template Parameters</dt><dd>
<table class="tparams">
<tr><td class="paramname">Tag</td><td>Type of the tag to create. </td></tr>
<tr><td class="paramname">Args</td><td>Types of arguments to use to construct the tag. </td></tr>
</table>
</dd>
</dl>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">args</td><td>Parameters to use to initialize the tag. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>A reference to the newly created tag. </dd></dl>
<p class="definition">Definition at line <a class="el" href="actor_8hpp_source.html#l00066">66</a> of file <a class="el" href="actor_8hpp_source.html">actor.hpp</a>.</p>
</div>
</div>
<a id="a7631fdb2de787c10b016a71905906147"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7631fdb2de787c10b016a71905906147">&#9670;&nbsp;</a></span>assign() <span class="overload">[2/2]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Entity &gt; </div>
<div class="memtemplate">
template&lt;typename Component , typename... Args&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">Component&amp; <a class="el" href="structentt_1_1Actor.html">entt::Actor</a>&lt; Entity &gt;::assign </td>
<td>(</td>
<td class="paramtype">Args &amp;&amp;...&#160;</td>
<td class="paramname"><em>args</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>Assigns the given component to an actor. </p>
<p>A new instance of the given component is created and initialized with the arguments provided (the component must have a proper constructor or be of aggregate type). Then the component is assigned to the actor.<br />
In case the actor already has a component of the given type, it's replaced with the new one.</p>
<dl class="tparams"><dt>Template Parameters</dt><dd>
<table class="tparams">
<tr><td class="paramname">Component</td><td>Type of the component to create. </td></tr>
<tr><td class="paramname">Args</td><td>Types of arguments to use to construct the component. </td></tr>
</table>
</dd>
</dl>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">args</td><td>Parameters to use to initialize the component. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>A reference to the newly created component. </dd></dl>
<p class="definition">Definition at line <a class="el" href="actor_8hpp_source.html#l00085">85</a> of file <a class="el" href="actor_8hpp_source.html">actor.hpp</a>.</p>
</div>
</div>
<a id="afb70b6f30071680efab23715a7e61a29"></a>
<h2 class="memtitle"><span class="permalink"><a href="#afb70b6f30071680efab23715a7e61a29">&#9670;&nbsp;</a></span>entity()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Entity &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="structentt_1_1Actor.html#a809cbe96d54fe86b470246a34e873a4e">entity_type</a> <a class="el" href="structentt_1_1Actor.html">entt::Actor</a>&lt; Entity &gt;::entity </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 the entity associated with an actor. </p>
<dl class="section return"><dt>Returns</dt><dd>The entity associated with the actor. </dd></dl>
<p class="definition">Definition at line <a class="el" href="actor_8hpp_source.html#l00189">189</a> of file <a class="el" href="actor_8hpp_source.html">actor.hpp</a>.</p>
</div>
</div>
<a id="ae6a07d30d0aca366d5b1eb3e839e36bc"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae6a07d30d0aca366d5b1eb3e839e36bc">&#9670;&nbsp;</a></span>get() <span class="overload">[1/4]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Entity &gt; </div>
<div class="memtemplate">
template&lt;typename Tag &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">const Tag&amp; <a class="el" href="structentt_1_1Actor.html">entt::Actor</a>&lt; Entity &gt;::get </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structentt_1_1tag__t.html">tag_t</a>&#160;</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 a reference to the given tag for an actor. </p>
<dl class="tparams"><dt>Template Parameters</dt><dd>
<table class="tparams">
<tr><td class="paramname">Tag</td><td>Type of the tag to get. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>A reference to the instance of the tag owned by the actor. </dd></dl>
<p class="definition">Definition at line <a class="el" href="actor_8hpp_source.html#l00134">134</a> of file <a class="el" href="actor_8hpp_source.html">actor.hpp</a>.</p>
</div>
</div>
<a id="ae3ef92c5829b365871bb9fffb013d825"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae3ef92c5829b365871bb9fffb013d825">&#9670;&nbsp;</a></span>get() <span class="overload">[2/4]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Entity &gt; </div>
<div class="memtemplate">
template&lt;typename Tag &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">Tag&amp; <a class="el" href="structentt_1_1Actor.html">entt::Actor</a>&lt; Entity &gt;::get </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structentt_1_1tag__t.html">tag_t</a>&#160;</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 a reference to the given tag for an actor. </p>
<dl class="tparams"><dt>Template Parameters</dt><dd>
<table class="tparams">
<tr><td class="paramname">Tag</td><td>Type of the tag to get. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>A reference to the instance of the tag owned by the actor. </dd></dl>
<p class="definition">Definition at line <a class="el" href="actor_8hpp_source.html#l00145">145</a> of file <a class="el" href="actor_8hpp_source.html">actor.hpp</a>.</p>
</div>
</div>
<a id="acd9d53518e387076d89df97767fee4f1"></a>
<h2 class="memtitle"><span class="permalink"><a href="#acd9d53518e387076d89df97767fee4f1">&#9670;&nbsp;</a></span>get() <span class="overload">[3/4]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Entity &gt; </div>
<div class="memtemplate">
template&lt;typename Component &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">const Component&amp; <a class="el" href="structentt_1_1Actor.html">entt::Actor</a>&lt; Entity &gt;::get </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 a reference to the given component for an actor. </p>
<dl class="tparams"><dt>Template Parameters</dt><dd>
<table class="tparams">
<tr><td class="paramname">Component</td><td>Type of the component to get. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>A reference to the instance of the component owned by the actor. </dd></dl>
<p class="definition">Definition at line <a class="el" href="actor_8hpp_source.html#l00155">155</a> of file <a class="el" href="actor_8hpp_source.html">actor.hpp</a>.</p>
</div>
</div>
<a id="a636b3ba19d4762b9b616a5e47e959b08"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a636b3ba19d4762b9b616a5e47e959b08">&#9670;&nbsp;</a></span>get() <span class="overload">[4/4]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Entity &gt; </div>
<div class="memtemplate">
template&lt;typename Component &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">Component&amp; <a class="el" href="structentt_1_1Actor.html">entt::Actor</a>&lt; Entity &gt;::get </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 a reference to the given component for an actor. </p>
<dl class="tparams"><dt>Template Parameters</dt><dd>
<table class="tparams">
<tr><td class="paramname">Component</td><td>Type of the component to get. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>A reference to the instance of the component owned by the actor. </dd></dl>
<p class="definition">Definition at line <a class="el" href="actor_8hpp_source.html#l00165">165</a> of file <a class="el" href="actor_8hpp_source.html">actor.hpp</a>.</p>
</div>
</div>
<a id="a17e417a142fb430413f08bc56b7f95e1"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a17e417a142fb430413f08bc56b7f95e1">&#9670;&nbsp;</a></span>has() <span class="overload">[1/2]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Entity &gt; </div>
<div class="memtemplate">
template&lt;typename Tag &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool <a class="el" href="structentt_1_1Actor.html">entt::Actor</a>&lt; Entity &gt;::has </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structentt_1_1tag__t.html">tag_t</a>&#160;</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>Checks if an actor owns the given tag. </p>
<dl class="tparams"><dt>Template Parameters</dt><dd>
<table class="tparams">
<tr><td class="paramname">Tag</td><td>Type of the tag for which to perform the check. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>True if the actor owns the tag, false otherwise. </dd></dl>
<p class="definition">Definition at line <a class="el" href="actor_8hpp_source.html#l00114">114</a> of file <a class="el" href="actor_8hpp_source.html">actor.hpp</a>.</p>
</div>
</div>
<a id="ac606b0a0418351c925d29809f7107662"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac606b0a0418351c925d29809f7107662">&#9670;&nbsp;</a></span>has() <span class="overload">[2/2]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Entity &gt; </div>
<div class="memtemplate">
template&lt;typename Component &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool <a class="el" href="structentt_1_1Actor.html">entt::Actor</a>&lt; Entity &gt;::has </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>Checks if an actor has the given component. </p>
<dl class="tparams"><dt>Template Parameters</dt><dd>
<table class="tparams">
<tr><td class="paramname">Component</td><td>Type of the component for which to perform the check. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>True if the actor has the component, false otherwise. </dd></dl>
<p class="definition">Definition at line <a class="el" href="actor_8hpp_source.html#l00124">124</a> of file <a class="el" href="actor_8hpp_source.html">actor.hpp</a>.</p>
</div>
</div>
<a id="af65a5bd2973d27a9adb1a62b746111fe"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af65a5bd2973d27a9adb1a62b746111fe">&#9670;&nbsp;</a></span>operator=() <span class="overload">[1/2]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Entity &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="structentt_1_1Actor.html">Actor</a>&amp; <a class="el" href="structentt_1_1Actor.html">entt::Actor</a>&lt; Entity &gt;::operator= </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="structentt_1_1Actor.html">Actor</a>&lt; Entity &gt; &amp;&#160;</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">default</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Default copy assignment operator. </p>
<dl class="section return"><dt>Returns</dt><dd>This actor. </dd></dl>
</div>
</div>
<a id="adbb2c4045a701b76d5fd514ec9221c02"></a>
<h2 class="memtitle"><span class="permalink"><a href="#adbb2c4045a701b76d5fd514ec9221c02">&#9670;&nbsp;</a></span>operator=() <span class="overload">[2/2]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Entity &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="structentt_1_1Actor.html">Actor</a>&amp; <a class="el" href="structentt_1_1Actor.html">entt::Actor</a>&lt; Entity &gt;::operator= </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structentt_1_1Actor.html">Actor</a>&lt; Entity &gt; &amp;&amp;&#160;</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">default</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Default move assignment operator. </p>
<dl class="section return"><dt>Returns</dt><dd>This actor. </dd></dl>
</div>
</div>
<a id="ab31a5da2d556ff3c01e0cea59f090956"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab31a5da2d556ff3c01e0cea59f090956">&#9670;&nbsp;</a></span>registry() <span class="overload">[1/2]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Entity &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">const <a class="el" href="structentt_1_1Actor.html#a59ce601affb52396d2cacdc3ffd14928">registry_type</a>&amp; <a class="el" href="structentt_1_1Actor.html">entt::Actor</a>&lt; Entity &gt;::registry </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 a reference to the underlying registry. </p>
<dl class="section return"><dt>Returns</dt><dd>A reference to the underlying registry. </dd></dl>
<p class="definition">Definition at line <a class="el" href="actor_8hpp_source.html#l00173">173</a> of file <a class="el" href="actor_8hpp_source.html">actor.hpp</a>.</p>
</div>
</div>
<a id="ae914b8f7817cdfaf596983743df126fe"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae914b8f7817cdfaf596983743df126fe">&#9670;&nbsp;</a></span>registry() <span class="overload">[2/2]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Entity &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="structentt_1_1Actor.html#a59ce601affb52396d2cacdc3ffd14928">registry_type</a>&amp; <a class="el" href="structentt_1_1Actor.html">entt::Actor</a>&lt; Entity &gt;::registry </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 a reference to the underlying registry. </p>
<dl class="section return"><dt>Returns</dt><dd>A reference to the underlying registry. </dd></dl>
<p class="definition">Definition at line <a class="el" href="actor_8hpp_source.html#l00181">181</a> of file <a class="el" href="actor_8hpp_source.html">actor.hpp</a>.</p>
</div>
</div>
<a id="a4c805918eeb0f01c86529a3c9b4e9b13"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4c805918eeb0f01c86529a3c9b4e9b13">&#9670;&nbsp;</a></span>remove() <span class="overload">[1/2]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Entity &gt; </div>
<div class="memtemplate">
template&lt;typename Tag &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void <a class="el" href="structentt_1_1Actor.html">entt::Actor</a>&lt; Entity &gt;::remove </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structentt_1_1tag__t.html">tag_t</a>&#160;</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>Removes the given tag from an actor. </p>
<dl class="tparams"><dt>Template Parameters</dt><dd>
<table class="tparams">
<tr><td class="paramname">Tag</td><td>Type of the tag to remove. </td></tr>
</table>
</dd>
</dl>
<p class="definition">Definition at line <a class="el" href="actor_8hpp_source.html#l00094">94</a> of file <a class="el" href="actor_8hpp_source.html">actor.hpp</a>.</p>
</div>
</div>
<a id="a2a647927841d9c2440cfb664f371bf09"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2a647927841d9c2440cfb664f371bf09">&#9670;&nbsp;</a></span>remove() <span class="overload">[2/2]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Entity &gt; </div>
<div class="memtemplate">
template&lt;typename Component &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void <a class="el" href="structentt_1_1Actor.html">entt::Actor</a>&lt; Entity &gt;::remove </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>Removes the given component from an actor. </p>
<dl class="tparams"><dt>Template Parameters</dt><dd>
<table class="tparams">
<tr><td class="paramname">Component</td><td>Type of the component to remove. </td></tr>
</table>
</dd>
</dl>
<p class="definition">Definition at line <a class="el" href="actor_8hpp_source.html#l00104">104</a> of file <a class="el" href="actor_8hpp_source.html">actor.hpp</a>.</p>
</div>
</div>
<hr/>The documentation for this struct was generated from the following file:<ul>
<li>src/entt/entity/<a class="el" href="actor_8hpp_source.html">actor.hpp</a></li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.13
</small></address>
</body>
</html>