Files
GridFire/docs/html/classgridfire_1_1_reaction_set.html

1070 lines
55 KiB
HTML

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.13.2"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>GridFire: gridfire::ReactionSet Class 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>
<script type="text/javascript" src="clipboard.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="cookie.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" />
<link href="doxygen-awesome.css" rel="stylesheet" type="text/css"/>
<link href="doxygen-awesome-sidebar-only.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 id="projectrow">
<td id="projectalign">
<div id="projectname">GridFire<span id="projectnumber">&#160;v0.7.0-alpha</span>
</div>
<div id="projectbrief">General Purpose Nuclear Network</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.13.2 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() { codefold.init(0); });
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search',true);
$(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function(){initNavTree('classgridfire_1_1_reaction_set.html',''); initResizable(true); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div class="header">
<div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pri-attribs">Private Attributes</a> &#124;
<a href="#friends">Friends</a> &#124;
<a href="classgridfire_1_1_reaction_set-members.html">List of all members</a> </div>
<div class="headertitle"><div class="title">gridfire::ReactionSet Class Reference<span class="mlabels"><span class="mlabel final">final</span></span></div></div>
</div><!--header-->
<div class="contents">
<p><code>#include &lt;reaction.h&gt;</code></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:a9a63306b92e23e3651c955ab614084de" id="r_a9a63306b92e23e3651c955ab614084de"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a9a63306b92e23e3651c955ab614084de">ReactionSet</a> (std::vector&lt; std::unique_ptr&lt; <a class="el" href="classgridfire_1_1reaction_1_1_reaction.html">Reaction</a> &gt; &gt; &amp;&amp;reactions)</td></tr>
<tr class="memdesc:a9a63306b92e23e3651c955ab614084de"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructs a <a class="el" href="classgridfire_1_1_reaction_set.html">ReactionSet</a> from a vector of reactions. <br /></td></tr>
<tr class="separator:a9a63306b92e23e3651c955ab614084de"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a789dee5d93810b85062e59508fe0adea" id="r_a789dee5d93810b85062e59508fe0adea"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a789dee5d93810b85062e59508fe0adea">ReactionSet</a> (const std::vector&lt; <a class="el" href="classgridfire_1_1reaction_1_1_reaction.html">Reaction</a> * &gt; &amp;reactions)</td></tr>
<tr class="separator:a789dee5d93810b85062e59508fe0adea"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab9edff40316b42ce41b2f895962c1041" id="r_ab9edff40316b42ce41b2f895962c1041"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ab9edff40316b42ce41b2f895962c1041">ReactionSet</a> ()</td></tr>
<tr class="separator:ab9edff40316b42ce41b2f895962c1041"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acfe2341ae1f016ad82098b6f5a1efc45" id="r_acfe2341ae1f016ad82098b6f5a1efc45"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#acfe2341ae1f016ad82098b6f5a1efc45">ReactionSet</a> (const <a class="el" href="classgridfire_1_1reaction_1_1_reaction_set.html">ReactionSet</a> &amp;other)</td></tr>
<tr class="memdesc:acfe2341ae1f016ad82098b6f5a1efc45"><td class="mdescLeft">&#160;</td><td class="mdescRight">Copy constructor. <br /></td></tr>
<tr class="separator:acfe2341ae1f016ad82098b6f5a1efc45"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aac890bf7fdf689890d765ff67489520a" id="r_aac890bf7fdf689890d765ff67489520a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classgridfire_1_1reaction_1_1_reaction_set.html">ReactionSet</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#aac890bf7fdf689890d765ff67489520a">operator=</a> (const <a class="el" href="classgridfire_1_1reaction_1_1_reaction_set.html">ReactionSet</a> &amp;other)</td></tr>
<tr class="memdesc:aac890bf7fdf689890d765ff67489520a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Copy assignment operator. <br /></td></tr>
<tr class="separator:aac890bf7fdf689890d765ff67489520a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad9dbc77e93467c95ebda908b53e9a9d1" id="r_ad9dbc77e93467c95ebda908b53e9a9d1"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ad9dbc77e93467c95ebda908b53e9a9d1">add_reaction</a> (const <a class="el" href="classgridfire_1_1reaction_1_1_reaction.html">Reaction</a> &amp;reaction)</td></tr>
<tr class="memdesc:ad9dbc77e93467c95ebda908b53e9a9d1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Adds a reaction to the set. <br /></td></tr>
<tr class="separator:ad9dbc77e93467c95ebda908b53e9a9d1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad7e95562ea0860bf492b447341f41fb5" id="r_ad7e95562ea0860bf492b447341f41fb5"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ad7e95562ea0860bf492b447341f41fb5">add_reaction</a> (std::unique_ptr&lt; <a class="el" href="classgridfire_1_1reaction_1_1_reaction.html">Reaction</a> &gt; &amp;&amp;reaction)</td></tr>
<tr class="separator:ad7e95562ea0860bf492b447341f41fb5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6a4836776f5dd00158d2336e5bcc3222" id="r_a6a4836776f5dd00158d2336e5bcc3222"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a6a4836776f5dd00158d2336e5bcc3222">extend</a> (const <a class="el" href="classgridfire_1_1reaction_1_1_reaction_set.html">ReactionSet</a> &amp;other)</td></tr>
<tr class="separator:a6a4836776f5dd00158d2336e5bcc3222"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1177193b1e46b4e5be630028883ab8dd" id="r_a1177193b1e46b4e5be630028883ab8dd"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a1177193b1e46b4e5be630028883ab8dd">remove_reaction</a> (const <a class="el" href="classgridfire_1_1reaction_1_1_reaction.html">Reaction</a> &amp;reaction)</td></tr>
<tr class="memdesc:a1177193b1e46b4e5be630028883ab8dd"><td class="mdescLeft">&#160;</td><td class="mdescRight">Removes a reaction from the set. <br /></td></tr>
<tr class="separator:a1177193b1e46b4e5be630028883ab8dd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae5f8078e77a700a8356487fbd69ba387" id="r_ae5f8078e77a700a8356487fbd69ba387"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ae5f8078e77a700a8356487fbd69ba387">contains</a> (const std::string_view &amp;id) const</td></tr>
<tr class="memdesc:ae5f8078e77a700a8356487fbd69ba387"><td class="mdescLeft">&#160;</td><td class="mdescRight">Checks if the set contains a reaction with the given ID. <br /></td></tr>
<tr class="separator:ae5f8078e77a700a8356487fbd69ba387"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2f6b165c86634a68f35032c2267255f8" id="r_a2f6b165c86634a68f35032c2267255f8"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a2f6b165c86634a68f35032c2267255f8">contains</a> (const <a class="el" href="classgridfire_1_1reaction_1_1_reaction.html">Reaction</a> &amp;reaction) const</td></tr>
<tr class="memdesc:a2f6b165c86634a68f35032c2267255f8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Checks if the set contains the given reaction. <br /></td></tr>
<tr class="separator:a2f6b165c86634a68f35032c2267255f8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af14cf34d7367cb6a6be5191724c2d4cf" id="r_af14cf34d7367cb6a6be5191724c2d4cf"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#af14cf34d7367cb6a6be5191724c2d4cf">size</a> () const</td></tr>
<tr class="memdesc:af14cf34d7367cb6a6be5191724c2d4cf"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the number of reactions in the set. <br /></td></tr>
<tr class="separator:af14cf34d7367cb6a6be5191724c2d4cf"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa8e0d65aafc6e0320690b4906e1bf300" id="r_aa8e0d65aafc6e0320690b4906e1bf300"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#aa8e0d65aafc6e0320690b4906e1bf300">clear</a> ()</td></tr>
<tr class="memdesc:aa8e0d65aafc6e0320690b4906e1bf300"><td class="mdescLeft">&#160;</td><td class="mdescRight">Removes all reactions from the set. <br /></td></tr>
<tr class="separator:aa8e0d65aafc6e0320690b4906e1bf300"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5b872a8519740a6d06cfaed03784826a" id="r_a5b872a8519740a6d06cfaed03784826a"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a5b872a8519740a6d06cfaed03784826a">contains_species</a> (const fourdst::atomic::Species &amp;species) const</td></tr>
<tr class="memdesc:a5b872a8519740a6d06cfaed03784826a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Checks if any reaction in the set involves the given species. <br /></td></tr>
<tr class="separator:a5b872a8519740a6d06cfaed03784826a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a256998eddf292f744d51cdc3e178d4c2" id="r_a256998eddf292f744d51cdc3e178d4c2"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a256998eddf292f744d51cdc3e178d4c2">contains_reactant</a> (const fourdst::atomic::Species &amp;species) const</td></tr>
<tr class="memdesc:a256998eddf292f744d51cdc3e178d4c2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Checks if any reaction in the set contains the given species as a reactant. <br /></td></tr>
<tr class="separator:a256998eddf292f744d51cdc3e178d4c2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4bdf50219d686a6cbc0b3cc5365dc18e" id="r_a4bdf50219d686a6cbc0b3cc5365dc18e"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a4bdf50219d686a6cbc0b3cc5365dc18e">contains_product</a> (const fourdst::atomic::Species &amp;species) const</td></tr>
<tr class="memdesc:a4bdf50219d686a6cbc0b3cc5365dc18e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Checks if any reaction in the set contains the given species as a product. <br /></td></tr>
<tr class="separator:a4bdf50219d686a6cbc0b3cc5365dc18e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4057f74ae647b691f4f61f150553c52b" id="r_a4057f74ae647b691f4f61f150553c52b"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classgridfire_1_1reaction_1_1_reaction.html">Reaction</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a4057f74ae647b691f4f61f150553c52b">operator[]</a> (size_t index) const</td></tr>
<tr class="memdesc:a4057f74ae647b691f4f61f150553c52b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Accesses a reaction by its index. <br /></td></tr>
<tr class="separator:a4057f74ae647b691f4f61f150553c52b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a896b4e492ef596d9174aeda4b59c46cd" id="r_a896b4e492ef596d9174aeda4b59c46cd"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classgridfire_1_1reaction_1_1_reaction.html">Reaction</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a896b4e492ef596d9174aeda4b59c46cd">operator[]</a> (const std::string_view &amp;id) const</td></tr>
<tr class="memdesc:a896b4e492ef596d9174aeda4b59c46cd"><td class="mdescLeft">&#160;</td><td class="mdescRight">Accesses a reaction by its ID. <br /></td></tr>
<tr class="separator:a896b4e492ef596d9174aeda4b59c46cd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4e572e823a80b905e7d002b612123135" id="r_a4e572e823a80b905e7d002b612123135"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a4e572e823a80b905e7d002b612123135">operator==</a> (const <a class="el" href="classgridfire_1_1reaction_1_1_reaction_set.html">ReactionSet</a> &amp;other) const</td></tr>
<tr class="memdesc:a4e572e823a80b905e7d002b612123135"><td class="mdescLeft">&#160;</td><td class="mdescRight">Compares this set with another for equality. <br /></td></tr>
<tr class="separator:a4e572e823a80b905e7d002b612123135"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a529189f464aebc6b5ac5c717f70e14b8" id="r_a529189f464aebc6b5ac5c717f70e14b8"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a529189f464aebc6b5ac5c717f70e14b8">operator!=</a> (const <a class="el" href="classgridfire_1_1reaction_1_1_reaction_set.html">ReactionSet</a> &amp;other) const</td></tr>
<tr class="memdesc:a529189f464aebc6b5ac5c717f70e14b8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Compares this set with another for inequality. <br /></td></tr>
<tr class="separator:a529189f464aebc6b5ac5c717f70e14b8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad28907fc08de978461d68cc5b77a3a99" id="r_ad28907fc08de978461d68cc5b77a3a99"><td class="memItemLeft" align="right" valign="top">uint64_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ad28907fc08de978461d68cc5b77a3a99">hash</a> (uint64_t seed) const</td></tr>
<tr class="memdesc:ad28907fc08de978461d68cc5b77a3a99"><td class="mdescLeft">&#160;</td><td class="mdescRight">Computes a hash for the entire set. <br /></td></tr>
<tr class="separator:ad28907fc08de978461d68cc5b77a3a99"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a133ad8cca6a75d31ef8efe67801aef1b" id="r_a133ad8cca6a75d31ef8efe67801aef1b"><td class="memItemLeft" align="right" valign="top">std::unordered_set&lt; fourdst::atomic::Species &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a133ad8cca6a75d31ef8efe67801aef1b">getReactionSetSpecies</a> () const</td></tr>
<tr class="separator:a133ad8cca6a75d31ef8efe67801aef1b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr><td colspan="2"><div class="groupHeader">Iterators</div></td></tr>
<tr><td colspan="2"><div class="groupText"><p>Provides iterators to loop over the reactions in the set. </p>
</div></td></tr>
<tr class="memitem:a228f2a00f46a6ee01be887490a722613" id="r_a228f2a00f46a6ee01be887490a722613"><td class="memItemLeft" align="right" valign="top">auto&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a228f2a00f46a6ee01be887490a722613">begin</a> ()</td></tr>
<tr class="separator:a228f2a00f46a6ee01be887490a722613"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:adb73fe9ff0178359409e2bea46a620c2" id="r_adb73fe9ff0178359409e2bea46a620c2"><td class="memItemLeft" align="right" valign="top">auto&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#adb73fe9ff0178359409e2bea46a620c2">begin</a> () const</td></tr>
<tr class="separator:adb73fe9ff0178359409e2bea46a620c2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abae9fbc4b4306479a6cd3173ac628987" id="r_abae9fbc4b4306479a6cd3173ac628987"><td class="memItemLeft" align="right" valign="top">auto&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#abae9fbc4b4306479a6cd3173ac628987">end</a> ()</td></tr>
<tr class="separator:abae9fbc4b4306479a6cd3173ac628987"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a436f9c4b8f8a4e115b19728d57d8e105" id="r_a436f9c4b8f8a4e115b19728d57d8e105"><td class="memItemLeft" align="right" valign="top">auto&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a436f9c4b8f8a4e115b19728d57d8e105">end</a> () const</td></tr>
<tr class="separator:a436f9c4b8f8a4e115b19728d57d8e105"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pri-attribs" name="pri-attribs"></a>
Private Attributes</h2></td></tr>
<tr class="memitem:aff5ae284012009164d4b3033577709eb" id="r_aff5ae284012009164d4b3033577709eb"><td class="memItemLeft" align="right" valign="top">quill::Logger *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#aff5ae284012009164d4b3033577709eb">m_logger</a> = fourdst::logging::LogManager::getInstance().getLogger(&quot;log&quot;)</td></tr>
<tr class="separator:aff5ae284012009164d4b3033577709eb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abd6feda1b3f65a6177904755581f6efe" id="r_abd6feda1b3f65a6177904755581f6efe"><td class="memItemLeft" align="right" valign="top">std::vector&lt; std::unique_ptr&lt; <a class="el" href="classgridfire_1_1reaction_1_1_reaction.html">Reaction</a> &gt; &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#abd6feda1b3f65a6177904755581f6efe">m_reactions</a></td></tr>
<tr class="separator:abd6feda1b3f65a6177904755581f6efe"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af92e3003b2a3606b48ab857cdedc3111" id="r_af92e3003b2a3606b48ab857cdedc3111"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#af92e3003b2a3606b48ab857cdedc3111">m_id</a></td></tr>
<tr class="separator:af92e3003b2a3606b48ab857cdedc3111"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a62965c04447909462bb4f2112661ef44" id="r_a62965c04447909462bb4f2112661ef44"><td class="memItemLeft" align="right" valign="top">std::unordered_map&lt; std::string, size_t &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a62965c04447909462bb4f2112661ef44">m_reactionNameMap</a></td></tr>
<tr class="memdesc:a62965c04447909462bb4f2112661ef44"><td class="mdescLeft">&#160;</td><td class="mdescRight">Maps reaction IDs to <a class="el" href="classgridfire_1_1_reaction.html" title="Represents a single nuclear reaction from a specific data source.">Reaction</a> objects for quick lookup. <br /></td></tr>
<tr class="separator:a62965c04447909462bb4f2112661ef44"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="friends" name="friends"></a>
Friends</h2></td></tr>
<tr class="memitem:a5a5e6ed364794f872c2c819536e24c20" id="r_a5a5e6ed364794f872c2c819536e24c20"><td class="memItemLeft" align="right" valign="top">std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a5a5e6ed364794f872c2c819536e24c20">operator&lt;&lt;</a> (std::ostream &amp;os, const <a class="el" href="classgridfire_1_1reaction_1_1_reaction_set.html">ReactionSet</a> &amp;rs)</td></tr>
<tr class="separator:a5a5e6ed364794f872c2c819536e24c20"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a id="a9a63306b92e23e3651c955ab614084de" name="a9a63306b92e23e3651c955ab614084de"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9a63306b92e23e3651c955ab614084de">&#9670;&#160;</a></span>ReactionSet() <span class="overload">[1/4]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">gridfire::reaction::ReactionSet::ReactionSet </td>
<td>(</td>
<td class="paramtype">std::vector&lt; std::unique_ptr&lt; <a class="el" href="classgridfire_1_1reaction_1_1_reaction.html">Reaction</a> &gt; &gt; &amp;&amp;</td> <td class="paramname"><span class="paramname"><em>reactions</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel explicit">explicit</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Constructs a <a class="el" href="classgridfire_1_1_reaction_set.html">ReactionSet</a> from a vector of reactions. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">reactions</td><td>The initial vector of <a class="el" href="classgridfire_1_1_reaction.html" title="Represents a single nuclear reaction from a specific data source.">Reaction</a> objects. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a789dee5d93810b85062e59508fe0adea" name="a789dee5d93810b85062e59508fe0adea"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a789dee5d93810b85062e59508fe0adea">&#9670;&#160;</a></span>ReactionSet() <span class="overload">[2/4]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">gridfire::reaction::ReactionSet::ReactionSet </td>
<td>(</td>
<td class="paramtype">const std::vector&lt; <a class="el" href="classgridfire_1_1reaction_1_1_reaction.html">Reaction</a> * &gt; &amp;</td> <td class="paramname"><span class="paramname"><em>reactions</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel explicit">explicit</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="ab9edff40316b42ce41b2f895962c1041" name="ab9edff40316b42ce41b2f895962c1041"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab9edff40316b42ce41b2f895962c1041">&#9670;&#160;</a></span>ReactionSet() <span class="overload">[3/4]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">gridfire::reaction::ReactionSet::ReactionSet </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel default">default</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="acfe2341ae1f016ad82098b6f5a1efc45" name="acfe2341ae1f016ad82098b6f5a1efc45"></a>
<h2 class="memtitle"><span class="permalink"><a href="#acfe2341ae1f016ad82098b6f5a1efc45">&#9670;&#160;</a></span>ReactionSet() <span class="overload">[4/4]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">gridfire::reaction::ReactionSet::ReactionSet </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classgridfire_1_1reaction_1_1_reaction_set.html">ReactionSet</a> &amp;</td> <td class="paramname"><span class="paramname"><em>other</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Copy constructor. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">other</td><td>The <a class="el" href="classgridfire_1_1_reaction_set.html">ReactionSet</a> to copy. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a id="ad9dbc77e93467c95ebda908b53e9a9d1" name="ad9dbc77e93467c95ebda908b53e9a9d1"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad9dbc77e93467c95ebda908b53e9a9d1">&#9670;&#160;</a></span>add_reaction() <span class="overload">[1/2]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void gridfire::reaction::ReactionSet::add_reaction </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classgridfire_1_1reaction_1_1_reaction.html">Reaction</a> &amp;</td> <td class="paramname"><span class="paramname"><em>reaction</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Adds a reaction to the set. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">reaction</td><td>The <a class="el" href="classgridfire_1_1_reaction.html" title="Represents a single nuclear reaction from a specific data source.">Reaction</a> to add. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="ad7e95562ea0860bf492b447341f41fb5" name="ad7e95562ea0860bf492b447341f41fb5"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad7e95562ea0860bf492b447341f41fb5">&#9670;&#160;</a></span>add_reaction() <span class="overload">[2/2]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void gridfire::reaction::ReactionSet::add_reaction </td>
<td>(</td>
<td class="paramtype">std::unique_ptr&lt; <a class="el" href="classgridfire_1_1reaction_1_1_reaction.html">Reaction</a> &gt; &amp;&amp;</td> <td class="paramname"><span class="paramname"><em>reaction</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a228f2a00f46a6ee01be887490a722613" name="a228f2a00f46a6ee01be887490a722613"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a228f2a00f46a6ee01be887490a722613">&#9670;&#160;</a></span>begin() <span class="overload">[1/2]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">auto gridfire::reaction::ReactionSet::begin </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel inline">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="adb73fe9ff0178359409e2bea46a620c2" name="adb73fe9ff0178359409e2bea46a620c2"></a>
<h2 class="memtitle"><span class="permalink"><a href="#adb73fe9ff0178359409e2bea46a620c2">&#9670;&#160;</a></span>begin() <span class="overload">[2/2]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">auto gridfire::reaction::ReactionSet::begin </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel inline">inline</span><span class="mlabel nodiscard">nodiscard</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="aa8e0d65aafc6e0320690b4906e1bf300" name="aa8e0d65aafc6e0320690b4906e1bf300"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa8e0d65aafc6e0320690b4906e1bf300">&#9670;&#160;</a></span>clear()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void gridfire::reaction::ReactionSet::clear </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Removes all reactions from the set. </p>
</div>
</div>
<a id="a2f6b165c86634a68f35032c2267255f8" name="a2f6b165c86634a68f35032c2267255f8"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2f6b165c86634a68f35032c2267255f8">&#9670;&#160;</a></span>contains() <span class="overload">[1/2]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool gridfire::reaction::ReactionSet::contains </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classgridfire_1_1reaction_1_1_reaction.html">Reaction</a> &amp;</td> <td class="paramname"><span class="paramname"><em>reaction</em></span></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel nodiscard">nodiscard</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Checks if the set contains the given reaction. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">reaction</td><td>The <a class="el" href="classgridfire_1_1_reaction.html" title="Represents a single nuclear reaction from a specific data source.">Reaction</a> to find. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>True if the reaction is in the set, false otherwise. </dd></dl>
</div>
</div>
<a id="ae5f8078e77a700a8356487fbd69ba387" name="ae5f8078e77a700a8356487fbd69ba387"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae5f8078e77a700a8356487fbd69ba387">&#9670;&#160;</a></span>contains() <span class="overload">[2/2]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool gridfire::reaction::ReactionSet::contains </td>
<td>(</td>
<td class="paramtype">const std::string_view &amp;</td> <td class="paramname"><span class="paramname"><em>id</em></span></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel nodiscard">nodiscard</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Checks if the set contains a reaction with the given ID. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">id</td><td>The ID of the reaction to find. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>True if the reaction is in the set, false otherwise. </dd></dl>
</div>
</div>
<a id="a4bdf50219d686a6cbc0b3cc5365dc18e" name="a4bdf50219d686a6cbc0b3cc5365dc18e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4bdf50219d686a6cbc0b3cc5365dc18e">&#9670;&#160;</a></span>contains_product()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool gridfire::reaction::ReactionSet::contains_product </td>
<td>(</td>
<td class="paramtype">const fourdst::atomic::Species &amp;</td> <td class="paramname"><span class="paramname"><em>species</em></span></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel nodiscard">nodiscard</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Checks if any reaction in the set contains the given species as a product. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">species</td><td>The species to check for. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>True if the species is a product in any reaction. </dd></dl>
</div>
</div>
<a id="a256998eddf292f744d51cdc3e178d4c2" name="a256998eddf292f744d51cdc3e178d4c2"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a256998eddf292f744d51cdc3e178d4c2">&#9670;&#160;</a></span>contains_reactant()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool gridfire::reaction::ReactionSet::contains_reactant </td>
<td>(</td>
<td class="paramtype">const fourdst::atomic::Species &amp;</td> <td class="paramname"><span class="paramname"><em>species</em></span></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel nodiscard">nodiscard</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Checks if any reaction in the set contains the given species as a reactant. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">species</td><td>The species to check for. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>True if the species is a reactant in any reaction. </dd></dl>
</div>
</div>
<a id="a5b872a8519740a6d06cfaed03784826a" name="a5b872a8519740a6d06cfaed03784826a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5b872a8519740a6d06cfaed03784826a">&#9670;&#160;</a></span>contains_species()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool gridfire::reaction::ReactionSet::contains_species </td>
<td>(</td>
<td class="paramtype">const fourdst::atomic::Species &amp;</td> <td class="paramname"><span class="paramname"><em>species</em></span></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel nodiscard">nodiscard</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Checks if any reaction in the set involves the given species. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">species</td><td>The species to check for. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>True if the species is involved in any reaction. </dd></dl>
</div>
</div>
<a id="abae9fbc4b4306479a6cd3173ac628987" name="abae9fbc4b4306479a6cd3173ac628987"></a>
<h2 class="memtitle"><span class="permalink"><a href="#abae9fbc4b4306479a6cd3173ac628987">&#9670;&#160;</a></span>end() <span class="overload">[1/2]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">auto gridfire::reaction::ReactionSet::end </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel inline">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a436f9c4b8f8a4e115b19728d57d8e105" name="a436f9c4b8f8a4e115b19728d57d8e105"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a436f9c4b8f8a4e115b19728d57d8e105">&#9670;&#160;</a></span>end() <span class="overload">[2/2]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">auto gridfire::reaction::ReactionSet::end </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel inline">inline</span><span class="mlabel nodiscard">nodiscard</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a6a4836776f5dd00158d2336e5bcc3222" name="a6a4836776f5dd00158d2336e5bcc3222"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6a4836776f5dd00158d2336e5bcc3222">&#9670;&#160;</a></span>extend()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void gridfire::reaction::ReactionSet::extend </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classgridfire_1_1reaction_1_1_reaction_set.html">ReactionSet</a> &amp;</td> <td class="paramname"><span class="paramname"><em>other</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a133ad8cca6a75d31ef8efe67801aef1b" name="a133ad8cca6a75d31ef8efe67801aef1b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a133ad8cca6a75d31ef8efe67801aef1b">&#9670;&#160;</a></span>getReactionSetSpecies()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">std::unordered_set&lt; Species &gt; gridfire::reaction::ReactionSet::getReactionSetSpecies </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel nodiscard">nodiscard</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="ad28907fc08de978461d68cc5b77a3a99" name="ad28907fc08de978461d68cc5b77a3a99"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad28907fc08de978461d68cc5b77a3a99">&#9670;&#160;</a></span>hash()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">uint64_t gridfire::reaction::ReactionSet::hash </td>
<td>(</td>
<td class="paramtype">uint64_t</td> <td class="paramname"><span class="paramname"><em>seed</em></span></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel nodiscard">nodiscard</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Computes a hash for the entire set. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">seed</td><td>The seed for the hash function. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>A 64-bit hash value.</dd></dl>
<p>The algorithm computes the hash of each individual reaction, sorts the hashes, and then computes a final hash over the sorted list of hashes. This ensures the hash is order-independent. </p>
</div>
</div>
<a id="a529189f464aebc6b5ac5c717f70e14b8" name="a529189f464aebc6b5ac5c717f70e14b8"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a529189f464aebc6b5ac5c717f70e14b8">&#9670;&#160;</a></span>operator!=()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">bool gridfire::reaction::ReactionSet::operator!= </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classgridfire_1_1reaction_1_1_reaction_set.html">ReactionSet</a> &amp;</td> <td class="paramname"><span class="paramname"><em>other</em></span></td><td>)</td>
<td> const</td>
</tr>
</table>
</div><div class="memdoc">
<p>Compares this set with another for inequality. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">other</td><td>The other <a class="el" href="classgridfire_1_1_reaction_set.html">ReactionSet</a> to compare with. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>True if the sets are not equal. </dd></dl>
</div>
</div>
<a id="aac890bf7fdf689890d765ff67489520a" name="aac890bf7fdf689890d765ff67489520a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aac890bf7fdf689890d765ff67489520a">&#9670;&#160;</a></span>operator=()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classgridfire_1_1reaction_1_1_reaction_set.html">ReactionSet</a> &amp; gridfire::reaction::ReactionSet::operator= </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classgridfire_1_1reaction_1_1_reaction_set.html">ReactionSet</a> &amp;</td> <td class="paramname"><span class="paramname"><em>other</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Copy assignment operator. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">other</td><td>The <a class="el" href="classgridfire_1_1_reaction_set.html">ReactionSet</a> to assign from. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>A reference to this <a class="el" href="classgridfire_1_1_reaction_set.html">ReactionSet</a>. </dd></dl>
</div>
</div>
<a id="a4e572e823a80b905e7d002b612123135" name="a4e572e823a80b905e7d002b612123135"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4e572e823a80b905e7d002b612123135">&#9670;&#160;</a></span>operator==()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">bool gridfire::reaction::ReactionSet::operator== </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classgridfire_1_1reaction_1_1_reaction_set.html">ReactionSet</a> &amp;</td> <td class="paramname"><span class="paramname"><em>other</em></span></td><td>)</td>
<td> const</td>
</tr>
</table>
</div><div class="memdoc">
<p>Compares this set with another for equality. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">other</td><td>The other <a class="el" href="classgridfire_1_1_reaction_set.html">ReactionSet</a> to compare with. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>True if the sets are equal (same size and hash). </dd></dl>
</div>
</div>
<a id="a896b4e492ef596d9174aeda4b59c46cd" name="a896b4e492ef596d9174aeda4b59c46cd"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a896b4e492ef596d9174aeda4b59c46cd">&#9670;&#160;</a></span>operator[]() <span class="overload">[1/2]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">const <a class="el" href="classgridfire_1_1reaction_1_1_reaction.html">Reaction</a> &amp; gridfire::reaction::ReactionSet::operator[] </td>
<td>(</td>
<td class="paramtype">const std::string_view &amp;</td> <td class="paramname"><span class="paramname"><em>id</em></span></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel nodiscard">nodiscard</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Accesses a reaction by its ID. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">id</td><td>The ID of the reaction to access. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>A const reference to the <a class="el" href="classgridfire_1_1_reaction.html" title="Represents a single nuclear reaction from a specific data source.">Reaction</a>. </dd></dl>
<dl class="exception"><dt>Exceptions</dt><dd>
<table class="exception">
<tr><td class="paramname">std::out_of_range</td><td>if no reaction with the given ID exists. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a4057f74ae647b691f4f61f150553c52b" name="a4057f74ae647b691f4f61f150553c52b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4057f74ae647b691f4f61f150553c52b">&#9670;&#160;</a></span>operator[]() <span class="overload">[2/2]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">const <a class="el" href="classgridfire_1_1reaction_1_1_reaction.html">Reaction</a> &amp; gridfire::reaction::ReactionSet::operator[] </td>
<td>(</td>
<td class="paramtype">size_t</td> <td class="paramname"><span class="paramname"><em>index</em></span></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel nodiscard">nodiscard</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Accesses a reaction by its index. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">index</td><td>The index of the reaction to access. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>A const reference to the <a class="el" href="classgridfire_1_1_reaction.html" title="Represents a single nuclear reaction from a specific data source.">Reaction</a>. </dd></dl>
<dl class="exception"><dt>Exceptions</dt><dd>
<table class="exception">
<tr><td class="paramname">std::out_of_range</td><td>if the index is out of bounds. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a1177193b1e46b4e5be630028883ab8dd" name="a1177193b1e46b4e5be630028883ab8dd"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a1177193b1e46b4e5be630028883ab8dd">&#9670;&#160;</a></span>remove_reaction()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void gridfire::reaction::ReactionSet::remove_reaction </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classgridfire_1_1reaction_1_1_reaction.html">Reaction</a> &amp;</td> <td class="paramname"><span class="paramname"><em>reaction</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Removes a reaction from the set. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">reaction</td><td>The <a class="el" href="classgridfire_1_1_reaction.html" title="Represents a single nuclear reaction from a specific data source.">Reaction</a> to remove. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="af14cf34d7367cb6a6be5191724c2d4cf" name="af14cf34d7367cb6a6be5191724c2d4cf"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af14cf34d7367cb6a6be5191724c2d4cf">&#9670;&#160;</a></span>size()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">size_t gridfire::reaction::ReactionSet::size </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel inline">inline</span><span class="mlabel nodiscard">nodiscard</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Gets the number of reactions in the set. </p>
<dl class="section return"><dt>Returns</dt><dd>The size of the set. </dd></dl>
</div>
</div>
<h2 class="groupheader">Friends And Related Symbol Documentation</h2>
<a id="a5a5e6ed364794f872c2c819536e24c20" name="a5a5e6ed364794f872c2c819536e24c20"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5a5e6ed364794f872c2c819536e24c20">&#9670;&#160;</a></span>operator&lt;&lt;</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">std::ostream &amp; operator&lt;&lt; </td>
<td>(</td>
<td class="paramtype">std::ostream &amp;</td> <td class="paramname"><span class="paramname"><em>os</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="classgridfire_1_1reaction_1_1_reaction_set.html">ReactionSet</a> &amp;</td> <td class="paramname"><span class="paramname"><em>rs</em></span>&#160;)</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel friend">friend</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<h2 class="groupheader">Member Data Documentation</h2>
<a id="af92e3003b2a3606b48ab857cdedc3111" name="af92e3003b2a3606b48ab857cdedc3111"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af92e3003b2a3606b48ab857cdedc3111">&#9670;&#160;</a></span>m_id</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">std::string gridfire::reaction::ReactionSet::m_id</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel private">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="aff5ae284012009164d4b3033577709eb" name="aff5ae284012009164d4b3033577709eb"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aff5ae284012009164d4b3033577709eb">&#9670;&#160;</a></span>m_logger</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">quill::Logger* gridfire::reaction::ReactionSet::m_logger = fourdst::logging::LogManager::getInstance().getLogger(&quot;log&quot;)</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel private">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a62965c04447909462bb4f2112661ef44" name="a62965c04447909462bb4f2112661ef44"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a62965c04447909462bb4f2112661ef44">&#9670;&#160;</a></span>m_reactionNameMap</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">std::unordered_map&lt;std::string, size_t&gt; gridfire::reaction::ReactionSet::m_reactionNameMap</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel private">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Maps reaction IDs to <a class="el" href="classgridfire_1_1_reaction.html" title="Represents a single nuclear reaction from a specific data source.">Reaction</a> objects for quick lookup. </p>
</div>
</div>
<a id="abd6feda1b3f65a6177904755581f6efe" name="abd6feda1b3f65a6177904755581f6efe"></a>
<h2 class="memtitle"><span class="permalink"><a href="#abd6feda1b3f65a6177904755581f6efe">&#9670;&#160;</a></span>m_reactions</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">std::vector&lt;std::unique_ptr&lt;<a class="el" href="classgridfire_1_1reaction_1_1_reaction.html">Reaction</a>&gt; &gt; gridfire::reaction::ReactionSet::m_reactions</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel private">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<hr/>The documentation for this class was generated from the following files:<ul>
<li>src/include/gridfire/reaction/<a class="el" href="reaction_8h.html">reaction.h</a></li>
<li>src/lib/reaction/<a class="el" href="reaction_8cpp.html">reaction.cpp</a></li>
</ul>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="namespacegridfire.html">gridfire</a></li><li class="navelem"><a class="el" href="classgridfire_1_1_reaction_set.html">ReactionSet</a></li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
</ul>
</div>
</body>
</html>