Files
rippled/classripple_1_1AMMOffer.html
2025-11-04 00:36:48 -08:00

732 lines
40 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.9.8"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>rippled: ripple::AMMOffer&lt; TIn, TOut &gt; Class Template Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="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 id="projectrow">
<td id="projectalign">
<div id="projectname">rippled
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.8 -->
<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" 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');
$(document).ready(function() { init_search(); });
});
/* @license-end */
</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">
<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 id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="namespaceripple.html">ripple</a></li><li class="navelem"><a class="el" href="classripple_1_1AMMOffer.html">AMMOffer</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pub-static-methods">Static Public Member Functions</a> &#124;
<a href="#pri-attribs">Private Attributes</a> &#124;
<a href="classripple_1_1AMMOffer-members.html">List of all members</a> </div>
<div class="headertitle"><div class="title">ripple::AMMOffer&lt; TIn, TOut &gt; Class Template Reference</div></div>
</div><!--header-->
<div class="contents">
<p>Represents synthetic AMM offer in <a class="el" href="classripple_1_1BookStep.html">BookStep</a>.
<a href="classripple_1_1AMMOffer.html#details">More...</a></p>
<p><code>#include &lt;<a class="el" href="AMMOffer_8h_source.html">AMMOffer.h</a>&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:a209f16af670729ea5e5789856c0ad49f" id="r_a209f16af670729ea5e5789856c0ad49f"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1AMMOffer.html#a209f16af670729ea5e5789856c0ad49f">AMMOffer</a> (<a class="el" href="classripple_1_1AMMLiquidity.html">AMMLiquidity</a>&lt; TIn, TOut &gt; const &amp;ammLiquidity, TAmounts&lt; TIn, TOut &gt; const &amp;amounts, TAmounts&lt; TIn, TOut &gt; const &amp;balances, Quality const &amp;<a class="el" href="classripple_1_1AMMOffer.html#a486876093ae0534c3b2f6e0de734822f">quality</a>)</td></tr>
<tr class="separator:a209f16af670729ea5e5789856c0ad49f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a486876093ae0534c3b2f6e0de734822f" id="r_a486876093ae0534c3b2f6e0de734822f"><td class="memItemLeft" align="right" valign="top">Quality&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1AMMOffer.html#a486876093ae0534c3b2f6e0de734822f">quality</a> () const noexcept</td></tr>
<tr class="separator:a486876093ae0534c3b2f6e0de734822f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad6eff87d977b5a80f1a07660b455a6db" id="r_ad6eff87d977b5a80f1a07660b455a6db"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classripple_1_1Issue.html">Issue</a> const &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1AMMOffer.html#ad6eff87d977b5a80f1a07660b455a6db">issueIn</a> () const</td></tr>
<tr class="separator:ad6eff87d977b5a80f1a07660b455a6db"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2c97fe4fa25accdb68dc5d76a110acce" id="r_a2c97fe4fa25accdb68dc5d76a110acce"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceripple.html#a00ae0d729cb3e35b6bcac9a27ebb5284">AccountID</a> const &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1AMMOffer.html#a2c97fe4fa25accdb68dc5d76a110acce">owner</a> () const</td></tr>
<tr class="separator:a2c97fe4fa25accdb68dc5d76a110acce"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aaee1051f1666cf67abd13b835787a539" id="r_aaee1051f1666cf67abd13b835787a539"><td class="memItemLeft" align="right" valign="top"><a class="elRef" href="http://en.cppreference.com/w/cpp/utility/optional.html">std::optional</a>&lt; <a class="el" href="namespaceripple.html#a356c68147333a9a48a344718038576d9">uint256</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1AMMOffer.html#aaee1051f1666cf67abd13b835787a539">key</a> () const</td></tr>
<tr class="separator:aaee1051f1666cf67abd13b835787a539"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae00679ef074c1566c961189dbe3c6768" id="r_ae00679ef074c1566c961189dbe3c6768"><td class="memItemLeft" align="right" valign="top">TAmounts&lt; TIn, TOut &gt; const &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1AMMOffer.html#ae00679ef074c1566c961189dbe3c6768">amount</a> () const</td></tr>
<tr class="separator:ae00679ef074c1566c961189dbe3c6768"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8856f999ea2ba636a2c74e642d4bb329" id="r_a8856f999ea2ba636a2c74e642d4bb329"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1AMMOffer.html#a8856f999ea2ba636a2c74e642d4bb329">consume</a> (<a class="el" href="classripple_1_1ApplyView.html">ApplyView</a> &amp;view, TAmounts&lt; TIn, TOut &gt; const &amp;consumed)</td></tr>
<tr class="separator:a8856f999ea2ba636a2c74e642d4bb329"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad2eba1069935d7ca545125141fe44d3a" id="r_ad2eba1069935d7ca545125141fe44d3a"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1AMMOffer.html#ad2eba1069935d7ca545125141fe44d3a">fully_consumed</a> () const</td></tr>
<tr class="separator:ad2eba1069935d7ca545125141fe44d3a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3892b94c6284c67b7bf1e388a26ba11c" id="r_a3892b94c6284c67b7bf1e388a26ba11c"><td class="memItemLeft" align="right" valign="top">TAmounts&lt; TIn, TOut &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1AMMOffer.html#a3892b94c6284c67b7bf1e388a26ba11c">limitOut</a> (TAmounts&lt; TIn, TOut &gt; const &amp;offrAmt, TOut const &amp;limit, bool roundUp) const</td></tr>
<tr class="memdesc:a3892b94c6284c67b7bf1e388a26ba11c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Limit out of the provided offer. <br /></td></tr>
<tr class="separator:a3892b94c6284c67b7bf1e388a26ba11c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8aa2c24c93334f8741d7798df5aa97fc" id="r_a8aa2c24c93334f8741d7798df5aa97fc"><td class="memItemLeft" align="right" valign="top">TAmounts&lt; TIn, TOut &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1AMMOffer.html#a8aa2c24c93334f8741d7798df5aa97fc">limitIn</a> (TAmounts&lt; TIn, TOut &gt; const &amp;offrAmt, TIn const &amp;limit, bool roundUp) const</td></tr>
<tr class="memdesc:a8aa2c24c93334f8741d7798df5aa97fc"><td class="mdescLeft">&#160;</td><td class="mdescRight">Limit in of the provided offer. <br /></td></tr>
<tr class="separator:a8aa2c24c93334f8741d7798df5aa97fc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aedb2204df9f80970d1356c8e1997ca35" id="r_aedb2204df9f80970d1356c8e1997ca35"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classripple_1_1QualityFunction.html">QualityFunction</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1AMMOffer.html#aedb2204df9f80970d1356c8e1997ca35">getQualityFunc</a> () const</td></tr>
<tr class="separator:aedb2204df9f80970d1356c8e1997ca35"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a15fd33ac7f16cc9180854d0fd1c5d6ef" id="r_a15fd33ac7f16cc9180854d0fd1c5d6ef"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1AMMOffer.html#a15fd33ac7f16cc9180854d0fd1c5d6ef">isFunded</a> () const</td></tr>
<tr class="separator:a15fd33ac7f16cc9180854d0fd1c5d6ef"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5d6bfd83553cd0ea0f242da69f13eeb2" id="r_a5d6bfd83553cd0ea0f242da69f13eeb2"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1AMMOffer.html#a5d6bfd83553cd0ea0f242da69f13eeb2">checkInvariant</a> (TAmounts&lt; TIn, TOut &gt; const &amp;consumed, <a class="el" href="classbeast_1_1Journal.html">beast::Journal</a> j) const</td></tr>
<tr class="memdesc:a5d6bfd83553cd0ea0f242da69f13eeb2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Check the new pool product is greater or equal to the old pool product or if decreases then within some threshold. <br /></td></tr>
<tr class="separator:a5d6bfd83553cd0ea0f242da69f13eeb2"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-static-methods" name="pub-static-methods"></a>
Static Public Member Functions</h2></td></tr>
<tr class="memitem:a1e5bdbacd99624d69a544b22fc3b9973" id="r_a1e5bdbacd99624d69a544b22fc3b9973"><td class="memTemplParams" colspan="2">template&lt;typename... Args&gt; </td></tr>
<tr class="memitem:a1e5bdbacd99624d69a544b22fc3b9973"><td class="memTemplItemLeft" align="right" valign="top">static <a class="el" href="namespaceripple.html#adfb760bc3e4ccb79d5d4f6ecff2f1817">TER</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classripple_1_1AMMOffer.html#a1e5bdbacd99624d69a544b22fc3b9973">send</a> (Args &amp;&amp;... args)</td></tr>
<tr class="memdesc:a1e5bdbacd99624d69a544b22fc3b9973"><td class="mdescLeft">&#160;</td><td class="mdescRight">Send funds without incurring the transfer fee. <br /></td></tr>
<tr class="separator:a1e5bdbacd99624d69a544b22fc3b9973"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3c1892e00fa434749dd69df1f4d61f68" id="r_a3c1892e00fa434749dd69df1f4d61f68"><td class="memItemLeft" align="right" valign="top">static <a class="elRef" href="http://en.cppreference.com/w/cpp/utility/pair.html">std::pair</a>&lt; <a class="elRef" href="http://en.cppreference.com/w/cpp/types/integer.html">std::uint32_t</a>, <a class="elRef" href="http://en.cppreference.com/w/cpp/types/integer.html">std::uint32_t</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1AMMOffer.html#a3c1892e00fa434749dd69df1f4d61f68">adjustRates</a> (<a class="elRef" href="http://en.cppreference.com/w/cpp/types/integer.html">std::uint32_t</a> ofrInRate, <a class="elRef" href="http://en.cppreference.com/w/cpp/types/integer.html">std::uint32_t</a> ofrOutRate)</td></tr>
<tr class="separator:a3c1892e00fa434749dd69df1f4d61f68"><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:a463950305358ecea6335e1556448024b" id="r_a463950305358ecea6335e1556448024b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classripple_1_1AMMLiquidity.html">AMMLiquidity</a>&lt; TIn, TOut &gt; const &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1AMMOffer.html#a463950305358ecea6335e1556448024b">ammLiquidity_</a></td></tr>
<tr class="separator:a463950305358ecea6335e1556448024b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac869ea9f47d5a72de6e38b37b32f5ee6" id="r_ac869ea9f47d5a72de6e38b37b32f5ee6"><td class="memItemLeft" align="right" valign="top">TAmounts&lt; TIn, TOut &gt; const&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1AMMOffer.html#ac869ea9f47d5a72de6e38b37b32f5ee6">amounts_</a></td></tr>
<tr class="separator:ac869ea9f47d5a72de6e38b37b32f5ee6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abb2a16ab694596f97e5a404ecd9d1d01" id="r_abb2a16ab694596f97e5a404ecd9d1d01"><td class="memItemLeft" align="right" valign="top">TAmounts&lt; TIn, TOut &gt; const&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1AMMOffer.html#abb2a16ab694596f97e5a404ecd9d1d01">balances_</a></td></tr>
<tr class="separator:abb2a16ab694596f97e5a404ecd9d1d01"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2b1d108410e7790da7d1fa64851ca1b2" id="r_a2b1d108410e7790da7d1fa64851ca1b2"><td class="memItemLeft" align="right" valign="top">Quality const&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1AMMOffer.html#a2b1d108410e7790da7d1fa64851ca1b2">quality_</a></td></tr>
<tr class="separator:a2b1d108410e7790da7d1fa64851ca1b2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a85677b5d46747caaf83f5d97d6122d22" id="r_a85677b5d46747caaf83f5d97d6122d22"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1AMMOffer.html#a85677b5d46747caaf83f5d97d6122d22">consumed_</a></td></tr>
<tr class="separator:a85677b5d46747caaf83f5d97d6122d22"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><div class="compoundTemplParams">template&lt;typename TIn, typename TOut&gt;<br />
class ripple::AMMOffer&lt; TIn, TOut &gt;</div><p>Represents synthetic AMM offer in <a class="el" href="classripple_1_1BookStep.html">BookStep</a>. </p>
<p><a class="el" href="classripple_1_1AMMOffer.html" title="Represents synthetic AMM offer in BookStep.">AMMOffer</a> mirrors <a class="el" href="classripple_1_1TOffer.html">TOffer</a> methods for use in generic <a class="el" href="classripple_1_1BookStep.html">BookStep</a> methods. <a class="el" href="classripple_1_1AMMOffer.html" title="Represents synthetic AMM offer in BookStep.">AMMOffer</a> amounts are changed indirectly in <a class="el" href="classripple_1_1BookStep.html">BookStep</a> limiting steps. </p>
<p class="definition">Definition at line <a class="el" href="AMMOffer_8h_source.html#l00020">20</a> of file <a class="el" href="AMMOffer_8h_source.html">AMMOffer.h</a>.</p>
</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a id="a209f16af670729ea5e5789856c0ad49f" name="a209f16af670729ea5e5789856c0ad49f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a209f16af670729ea5e5789856c0ad49f">&#9670;&#160;</a></span>AMMOffer()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename TIn , typename TOut &gt; </div>
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classripple_1_1AMMOffer.html">ripple::AMMOffer</a>&lt; TIn, TOut &gt;::AMMOffer </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classripple_1_1AMMLiquidity.html">AMMLiquidity</a>&lt; TIn, TOut &gt; const &amp;&#160;</td>
<td class="paramname"><em>ammLiquidity</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">TAmounts&lt; TIn, TOut &gt; const &amp;&#160;</td>
<td class="paramname"><em>amounts</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">TAmounts&lt; TIn, TOut &gt; const &amp;&#160;</td>
<td class="paramname"><em>balances</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">Quality const &amp;&#160;</td>
<td class="paramname"><em>quality</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="AMMOffer_8cpp_source.html#l00009">9</a> of file <a class="el" href="AMMOffer_8cpp_source.html">AMMOffer.cpp</a>.</p>
</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a id="a486876093ae0534c3b2f6e0de734822f" name="a486876093ae0534c3b2f6e0de734822f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a486876093ae0534c3b2f6e0de734822f">&#9670;&#160;</a></span>quality()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename TIn , typename TOut &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">Quality <a class="el" href="classripple_1_1AMMOffer.html">ripple::AMMOffer</a>&lt; TIn, TOut &gt;::quality </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">noexcept</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="AMMOffer_8h_source.html#l00050">50</a> of file <a class="el" href="AMMOffer_8h_source.html">AMMOffer.h</a>.</p>
</div>
</div>
<a id="ad6eff87d977b5a80f1a07660b455a6db" name="ad6eff87d977b5a80f1a07660b455a6db"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad6eff87d977b5a80f1a07660b455a6db">&#9670;&#160;</a></span>issueIn()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename TIn , typename TOut &gt; </div>
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classripple_1_1Issue.html">Issue</a> const &amp; <a class="el" href="classripple_1_1AMMOffer.html">ripple::AMMOffer</a>&lt; TIn, TOut &gt;::issueIn </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="AMMOffer_8cpp_source.html#l00024">24</a> of file <a class="el" href="AMMOffer_8cpp_source.html">AMMOffer.cpp</a>.</p>
</div>
</div>
<a id="a2c97fe4fa25accdb68dc5d76a110acce" name="a2c97fe4fa25accdb68dc5d76a110acce"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2c97fe4fa25accdb68dc5d76a110acce">&#9670;&#160;</a></span>owner()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename TIn , typename TOut &gt; </div>
<table class="memname">
<tr>
<td class="memname"><a class="el" href="namespaceripple.html#a00ae0d729cb3e35b6bcac9a27ebb5284">AccountID</a> const &amp; <a class="el" href="classripple_1_1AMMOffer.html">ripple::AMMOffer</a>&lt; TIn, TOut &gt;::owner </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="AMMOffer_8cpp_source.html#l00031">31</a> of file <a class="el" href="AMMOffer_8cpp_source.html">AMMOffer.cpp</a>.</p>
</div>
</div>
<a id="aaee1051f1666cf67abd13b835787a539" name="aaee1051f1666cf67abd13b835787a539"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aaee1051f1666cf67abd13b835787a539">&#9670;&#160;</a></span>key()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename TIn , typename TOut &gt; </div>
<table class="memname">
<tr>
<td class="memname"><a class="elRef" href="http://en.cppreference.com/w/cpp/utility/optional.html">std::optional</a>&lt; <a class="el" href="namespaceripple.html#a356c68147333a9a48a344718038576d9">uint256</a> &gt; <a class="el" href="classripple_1_1AMMOffer.html">ripple::AMMOffer</a>&lt; TIn, TOut &gt;::key </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="AMMOffer_8h_source.html#l00062">62</a> of file <a class="el" href="AMMOffer_8h_source.html">AMMOffer.h</a>.</p>
</div>
</div>
<a id="ae00679ef074c1566c961189dbe3c6768" name="ae00679ef074c1566c961189dbe3c6768"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae00679ef074c1566c961189dbe3c6768">&#9670;&#160;</a></span>amount()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename TIn , typename TOut &gt; </div>
<table class="memname">
<tr>
<td class="memname">TAmounts&lt; TIn, TOut &gt; const &amp; <a class="el" href="classripple_1_1AMMOffer.html">ripple::AMMOffer</a>&lt; TIn, TOut &gt;::amount </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="AMMOffer_8cpp_source.html#l00038">38</a> of file <a class="el" href="AMMOffer_8cpp_source.html">AMMOffer.cpp</a>.</p>
</div>
</div>
<a id="a8856f999ea2ba636a2c74e642d4bb329" name="a8856f999ea2ba636a2c74e642d4bb329"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8856f999ea2ba636a2c74e642d4bb329">&#9670;&#160;</a></span>consume()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename TIn , typename TOut &gt; </div>
<table class="memname">
<tr>
<td class="memname">void <a class="el" href="classripple_1_1AMMOffer.html">ripple::AMMOffer</a>&lt; TIn, TOut &gt;::consume </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classripple_1_1ApplyView.html">ApplyView</a> &amp;&#160;</td>
<td class="paramname"><em>view</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">TAmounts&lt; TIn, TOut &gt; const &amp;&#160;</td>
<td class="paramname"><em>consumed</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="AMMOffer_8cpp_source.html#l00045">45</a> of file <a class="el" href="AMMOffer_8cpp_source.html">AMMOffer.cpp</a>.</p>
</div>
</div>
<a id="ad2eba1069935d7ca545125141fe44d3a" name="ad2eba1069935d7ca545125141fe44d3a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad2eba1069935d7ca545125141fe44d3a">&#9670;&#160;</a></span>fully_consumed()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename TIn , typename TOut &gt; </div>
<table class="memname">
<tr>
<td class="memname">bool <a class="el" href="classripple_1_1AMMOffer.html">ripple::AMMOffer</a>&lt; TIn, TOut &gt;::fully_consumed </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="AMMOffer_8h_source.html#l00074">74</a> of file <a class="el" href="AMMOffer_8h_source.html">AMMOffer.h</a>.</p>
</div>
</div>
<a id="a3892b94c6284c67b7bf1e388a26ba11c" name="a3892b94c6284c67b7bf1e388a26ba11c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3892b94c6284c67b7bf1e388a26ba11c">&#9670;&#160;</a></span>limitOut()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename TIn , typename TOut &gt; </div>
<table class="memname">
<tr>
<td class="memname">TAmounts&lt; TIn, TOut &gt; <a class="el" href="classripple_1_1AMMOffer.html">ripple::AMMOffer</a>&lt; TIn, TOut &gt;::limitOut </td>
<td>(</td>
<td class="paramtype">TAmounts&lt; TIn, TOut &gt; const &amp;&#160;</td>
<td class="paramname"><em>offrAmt</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">TOut const &amp;&#160;</td>
<td class="paramname"><em>limit</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">bool&#160;</td>
<td class="paramname"><em>roundUp</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td> const</td>
</tr>
</table>
</div><div class="memdoc">
<p>Limit out of the provided offer. </p>
<p>If one-path then swapOut using current balances. If multi-path then ceil_out using current quality. </p>
<p class="definition">Definition at line <a class="el" href="AMMOffer_8cpp_source.html#l00063">63</a> of file <a class="el" href="AMMOffer_8cpp_source.html">AMMOffer.cpp</a>.</p>
</div>
</div>
<a id="a8aa2c24c93334f8741d7798df5aa97fc" name="a8aa2c24c93334f8741d7798df5aa97fc"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8aa2c24c93334f8741d7798df5aa97fc">&#9670;&#160;</a></span>limitIn()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename TIn , typename TOut &gt; </div>
<table class="memname">
<tr>
<td class="memname">TAmounts&lt; TIn, TOut &gt; <a class="el" href="classripple_1_1AMMOffer.html">ripple::AMMOffer</a>&lt; TIn, TOut &gt;::limitIn </td>
<td>(</td>
<td class="paramtype">TAmounts&lt; TIn, TOut &gt; const &amp;&#160;</td>
<td class="paramname"><em>offrAmt</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">TIn const &amp;&#160;</td>
<td class="paramname"><em>limit</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">bool&#160;</td>
<td class="paramname"><em>roundUp</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td> const</td>
</tr>
</table>
</div><div class="memdoc">
<p>Limit in of the provided offer. </p>
<p>If one-path then swapIn using current balances. If multi-path then ceil_in using current quality. </p>
<p class="definition">Definition at line <a class="el" href="AMMOffer_8cpp_source.html#l00088">88</a> of file <a class="el" href="AMMOffer_8cpp_source.html">AMMOffer.cpp</a>.</p>
</div>
</div>
<a id="aedb2204df9f80970d1356c8e1997ca35" name="aedb2204df9f80970d1356c8e1997ca35"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aedb2204df9f80970d1356c8e1997ca35">&#9670;&#160;</a></span>getQualityFunc()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename TIn , typename TOut &gt; </div>
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classripple_1_1QualityFunction.html">QualityFunction</a> <a class="el" href="classripple_1_1AMMOffer.html">ripple::AMMOffer</a>&lt; TIn, TOut &gt;::getQualityFunc </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="AMMOffer_8cpp_source.html#l00107">107</a> of file <a class="el" href="AMMOffer_8cpp_source.html">AMMOffer.cpp</a>.</p>
</div>
</div>
<a id="a1e5bdbacd99624d69a544b22fc3b9973" name="a1e5bdbacd99624d69a544b22fc3b9973"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a1e5bdbacd99624d69a544b22fc3b9973">&#9670;&#160;</a></span>send()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename TIn , typename TOut &gt; </div>
<div class="memtemplate">
template&lt;typename... Args&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static <a class="el" href="namespaceripple.html#adfb760bc3e4ccb79d5d4f6ecff2f1817">TER</a> <a class="el" href="classripple_1_1AMMOffer.html">ripple::AMMOffer</a>&lt; TIn, TOut &gt;::send </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">static</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Send funds without incurring the transfer fee. </p>
<p class="definition">Definition at line <a class="el" href="AMMOffer_8h_source.html#l00104">104</a> of file <a class="el" href="AMMOffer_8h_source.html">AMMOffer.h</a>.</p>
</div>
</div>
<a id="a15fd33ac7f16cc9180854d0fd1c5d6ef" name="a15fd33ac7f16cc9180854d0fd1c5d6ef"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a15fd33ac7f16cc9180854d0fd1c5d6ef">&#9670;&#160;</a></span>isFunded()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename TIn , typename TOut &gt; </div>
<table class="memname">
<tr>
<td class="memname">bool <a class="el" href="classripple_1_1AMMOffer.html">ripple::AMMOffer</a>&lt; TIn, TOut &gt;::isFunded </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="AMMOffer_8h_source.html#l00110">110</a> of file <a class="el" href="AMMOffer_8h_source.html">AMMOffer.h</a>.</p>
</div>
</div>
<a id="a3c1892e00fa434749dd69df1f4d61f68" name="a3c1892e00fa434749dd69df1f4d61f68"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3c1892e00fa434749dd69df1f4d61f68">&#9670;&#160;</a></span>adjustRates()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename TIn , typename TOut &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static <a class="elRef" href="http://en.cppreference.com/w/cpp/utility/pair.html">std::pair</a>&lt; <a class="elRef" href="http://en.cppreference.com/w/cpp/types/integer.html">std::uint32_t</a>, <a class="elRef" href="http://en.cppreference.com/w/cpp/types/integer.html">std::uint32_t</a> &gt; <a class="el" href="classripple_1_1AMMOffer.html">ripple::AMMOffer</a>&lt; TIn, TOut &gt;::adjustRates </td>
<td>(</td>
<td class="paramtype"><a class="elRef" href="http://en.cppreference.com/w/cpp/types/integer.html">std::uint32_t</a>&#160;</td>
<td class="paramname"><em>ofrInRate</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="elRef" href="http://en.cppreference.com/w/cpp/types/integer.html">std::uint32_t</a>&#160;</td>
<td class="paramname"><em>ofrOutRate</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">static</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="AMMOffer_8h_source.html#l00117">117</a> of file <a class="el" href="AMMOffer_8h_source.html">AMMOffer.h</a>.</p>
</div>
</div>
<a id="a5d6bfd83553cd0ea0f242da69f13eeb2" name="a5d6bfd83553cd0ea0f242da69f13eeb2"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5d6bfd83553cd0ea0f242da69f13eeb2">&#9670;&#160;</a></span>checkInvariant()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename TIn , typename TOut &gt; </div>
<table class="memname">
<tr>
<td class="memname">bool <a class="el" href="classripple_1_1AMMOffer.html">ripple::AMMOffer</a>&lt; TIn, TOut &gt;::checkInvariant </td>
<td>(</td>
<td class="paramtype">TAmounts&lt; TIn, TOut &gt; const &amp;&#160;</td>
<td class="paramname"><em>consumed</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="classbeast_1_1Journal.html">beast::Journal</a>&#160;</td>
<td class="paramname"><em>j</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td> const</td>
</tr>
</table>
</div><div class="memdoc">
<p>Check the new pool product is greater or equal to the old pool product or if decreases then within some threshold. </p>
<p class="definition">Definition at line <a class="el" href="AMMOffer_8cpp_source.html#l00117">117</a> of file <a class="el" href="AMMOffer_8cpp_source.html">AMMOffer.cpp</a>.</p>
</div>
</div>
<h2 class="groupheader">Member Data Documentation</h2>
<a id="a463950305358ecea6335e1556448024b" name="a463950305358ecea6335e1556448024b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a463950305358ecea6335e1556448024b">&#9670;&#160;</a></span>ammLiquidity_</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename TIn , typename TOut &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classripple_1_1AMMLiquidity.html">AMMLiquidity</a>&lt;TIn, TOut&gt; const&amp; <a class="el" href="classripple_1_1AMMOffer.html">ripple::AMMOffer</a>&lt; TIn, TOut &gt;::ammLiquidity_</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="AMMOffer_8h_source.html#l00023">23</a> of file <a class="el" href="AMMOffer_8h_source.html">AMMOffer.h</a>.</p>
</div>
</div>
<a id="ac869ea9f47d5a72de6e38b37b32f5ee6" name="ac869ea9f47d5a72de6e38b37b32f5ee6"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac869ea9f47d5a72de6e38b37b32f5ee6">&#9670;&#160;</a></span>amounts_</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename TIn , typename TOut &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">TAmounts&lt;TIn, TOut&gt; const <a class="el" href="classripple_1_1AMMOffer.html">ripple::AMMOffer</a>&lt; TIn, TOut &gt;::amounts_</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="AMMOffer_8h_source.html#l00033">33</a> of file <a class="el" href="AMMOffer_8h_source.html">AMMOffer.h</a>.</p>
</div>
</div>
<a id="abb2a16ab694596f97e5a404ecd9d1d01" name="abb2a16ab694596f97e5a404ecd9d1d01"></a>
<h2 class="memtitle"><span class="permalink"><a href="#abb2a16ab694596f97e5a404ecd9d1d01">&#9670;&#160;</a></span>balances_</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename TIn , typename TOut &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">TAmounts&lt;TIn, TOut&gt; const <a class="el" href="classripple_1_1AMMOffer.html">ripple::AMMOffer</a>&lt; TIn, TOut &gt;::balances_</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="AMMOffer_8h_source.html#l00035">35</a> of file <a class="el" href="AMMOffer_8h_source.html">AMMOffer.h</a>.</p>
</div>
</div>
<a id="a2b1d108410e7790da7d1fa64851ca1b2" name="a2b1d108410e7790da7d1fa64851ca1b2"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2b1d108410e7790da7d1fa64851ca1b2">&#9670;&#160;</a></span>quality_</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename TIn , typename TOut &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">Quality const <a class="el" href="classripple_1_1AMMOffer.html">ripple::AMMOffer</a>&lt; TIn, TOut &gt;::quality_</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="AMMOffer_8h_source.html#l00038">38</a> of file <a class="el" href="AMMOffer_8h_source.html">AMMOffer.h</a>.</p>
</div>
</div>
<a id="a85677b5d46747caaf83f5d97d6122d22" name="a85677b5d46747caaf83f5d97d6122d22"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a85677b5d46747caaf83f5d97d6122d22">&#9670;&#160;</a></span>consumed_</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename TIn , typename TOut &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool <a class="el" href="classripple_1_1AMMOffer.html">ripple::AMMOffer</a>&lt; TIn, TOut &gt;::consumed_</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="AMMOffer_8h_source.html#l00040">40</a> of file <a class="el" href="AMMOffer_8h_source.html">AMMOffer.h</a>.</p>
</div>
</div>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
</small></address>
</body>
</html>