Files
GridFire/docs/html/policy__abstract_8h__dep__incl.svg
2025-11-25 14:31:59 -05:00

355 lines
17 KiB
XML

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 13.0.1 (20250615.1724)
-->
<!-- Title: src/include/gridfire/policy/policy_abstract.h Pages: 1 -->
<svg width="419pt" height="438pt"
viewBox="0.00 0.00 419.00 438.00" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<svg id="main" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xml:space="preserve">
<style type="text/css"><![CDATA[
.node, .edge {opacity: 0.7;}
.node.selected, .edge.selected {opacity: 1;}
.edge:hover path { stroke: red; }
.edge:hover polygon { stroke: red; fill: red; }
]]></style>
<script type="application/ecmascript" xlink:href="svg.min.js"/>
<svg id="graph" class="graph">
<g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 433.5)">
<title>src/include/gridfire/policy/policy_abstract.h</title>
<!-- Node1 -->
<g id="Node000001" class="node">
<title>Node1</title>
<g id="a_Node000001"><a xlink:title="Abstract policy interfaces used to construct reaction networks (DynamicEngine) from seed compositions...">
<polygon fill="#999999" stroke="#666666" points="279.62,-429.5 157.88,-429.5 157.88,-399 279.62,-399 279.62,-429.5"/>
<text xml:space="preserve" text-anchor="start" x="165.88" y="-416" font-family="Helvetica,sans-Serif" font-size="10.00">src/include/gridfire</text>
<text xml:space="preserve" text-anchor="middle" x="218.75" y="-404.75" font-family="Helvetica,sans-Serif" font-size="10.00">/policy/policy_abstract.h</text>
</a>
</g>
</g>
<!-- Node2 -->
<g id="Node000002" class="node">
<title>Node2</title>
<g id="a_Node000002"><a xlink:href="chains_8h.html" target="_top" xlink:title="Concrete implementations of ReactionChainPolicy for key stellar reaction chains.">
<polygon fill="white" stroke="#666666" points="335.5,-296.5 240,-296.5 240,-266 335.5,-266 335.5,-296.5"/>
<text xml:space="preserve" text-anchor="start" x="248" y="-283" font-family="Helvetica,sans-Serif" font-size="10.00">src/include/gridfire</text>
<text xml:space="preserve" text-anchor="middle" x="287.75" y="-271.75" font-family="Helvetica,sans-Serif" font-size="10.00">/policy/chains.h</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node2 -->
<g id="edge1_Node000001_Node000002" class="edge">
<title>Node1&#45;&gt;Node2</title>
<g id="a_edge1_Node000001_Node000002"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M231.59,-388.88C245.83,-361.84 268.34,-319.1 280.07,-296.83"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="228.67,-386.91 227.1,-397.39 234.86,-390.17 228.67,-386.91"/>
</a>
</g>
</g>
<!-- Node3 -->
<g id="Node000003" class="node">
<title>Node3</title>
<g id="a_Node000003"><a xlink:href="policy_8h.html" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="219.5,-163.5 124,-163.5 124,-133 219.5,-133 219.5,-163.5"/>
<text xml:space="preserve" text-anchor="start" x="132" y="-150" font-family="Helvetica,sans-Serif" font-size="10.00">src/include/gridfire</text>
<text xml:space="preserve" text-anchor="middle" x="171.75" y="-138.75" font-family="Helvetica,sans-Serif" font-size="10.00">/policy/policy.h</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node3 -->
<g id="edge13_Node000001_Node000003" class="edge">
<title>Node1&#45;&gt;Node3</title>
<g id="a_edge13_Node000001_Node000003"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M146.25,-409.97C112.77,-404.36 75.83,-391.5 54.75,-363 32.97,-333.54 -16.15,-316.9 64.75,-199.5 78.43,-179.64 102.1,-167.43 123.7,-160.02"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="145.55,-413.4 155.95,-411.38 146.56,-406.47 145.55,-413.4"/>
</a>
</g>
</g>
<!-- Node8 -->
<g id="Node000008" class="node">
<title>Node8</title>
<g id="a_Node000008"><a xlink:href="stellar__policy_8h.html" target="_top" xlink:title="High&#45;level concrete NetworkPolicy for specific stellar environments.">
<polygon fill="white" stroke="#666666" points="374.38,-230 263.12,-230 263.12,-199.5 374.38,-199.5 374.38,-230"/>
<text xml:space="preserve" text-anchor="start" x="271.12" y="-216.5" font-family="Helvetica,sans-Serif" font-size="10.00">src/include/gridfire</text>
<text xml:space="preserve" text-anchor="middle" x="318.75" y="-205.25" font-family="Helvetica,sans-Serif" font-size="10.00">/policy/stellar_policy.h</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node8 -->
<g id="edge19_Node000001_Node000008" class="edge">
<title>Node1&#45;&gt;Node8</title>
<g id="a_edge19_Node000001_Node000008"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M253.89,-392.58C284.34,-372.42 326.33,-338.67 344.75,-296.5 354.53,-274.09 340.7,-246.79 329.76,-230.37"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="252.24,-389.47 245.72,-397.82 256.03,-395.36 252.24,-389.47"/>
</a>
</g>
</g>
<!-- Node9 -->
<g id="Node000009" class="node">
<title>Node9</title>
<g id="a_Node000009"><a xlink:href="stellar__policy_8cpp.html" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="410.75,-163.5 310.75,-163.5 310.75,-133 410.75,-133 410.75,-163.5"/>
<text xml:space="preserve" text-anchor="start" x="318.75" y="-150" font-family="Helvetica,sans-Serif" font-size="10.00">src/lib/policy/stellar</text>
<text xml:space="preserve" text-anchor="middle" x="360.75" y="-138.75" font-family="Helvetica,sans-Serif" font-size="10.00">_policy.cpp</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node9 -->
<g id="edge22_Node000001_Node000009" class="edge">
<title>Node1&#45;&gt;Node9</title>
<g id="a_edge22_Node000001_Node000009"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M273.98,-394C290.98,-386.23 308.85,-375.97 322.75,-363 347.64,-339.77 346.68,-327.5 360.75,-296.5 379.06,-256.15 393.19,-242.79 383.75,-199.5 380.97,-186.75 374.65,-173.37 369.34,-163.62"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="272.73,-390.73 264.95,-397.92 275.52,-397.15 272.73,-390.73"/>
</a>
</g>
</g>
<!-- Node10 -->
<g id="Node000010" class="node">
<title>Node10</title>
<g id="a_Node000010"><a xlink:href="chains_8cpp.html" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="206.25,-224.38 85.25,-224.38 85.25,-205.12 206.25,-205.12 206.25,-224.38"/>
<text xml:space="preserve" text-anchor="middle" x="145.75" y="-210.88" font-family="Helvetica,sans-Serif" font-size="10.00">src/lib/policy/chains.cpp</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node10 -->
<g id="edge20_Node000001_Node000010" class="edge">
<title>Node1&#45;&gt;Node10</title>
<g id="a_edge20_Node000001_Node000010"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M146.48,-407.29C117.11,-400.89 85.88,-388.14 67.75,-363 32.72,-314.43 105.34,-248.13 134.42,-224.53"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="145.65,-410.7 156.13,-409.16 146.98,-403.82 145.65,-410.7"/>
</a>
</g>
</g>
<!-- Node11 -->
<g id="Node000011" class="node">
<title>Node11</title>
<g id="a_Node000011"><a xlink:href="policy__logical_8h.html" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="190.88,-363 76.62,-363 76.62,-332.5 190.88,-332.5 190.88,-363"/>
<text xml:space="preserve" text-anchor="start" x="84.62" y="-349.5" font-family="Helvetica,sans-Serif" font-size="10.00">src/include/gridfire</text>
<text xml:space="preserve" text-anchor="middle" x="133.75" y="-338.25" font-family="Helvetica,sans-Serif" font-size="10.00">/policy/policy_logical.h</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node11 -->
<g id="edge14_Node000001_Node000011" class="edge">
<title>Node1&#45;&gt;Node11</title>
<g id="a_edge14_Node000001_Node000011"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M190.47,-391.79C178.15,-382.44 164.03,-371.73 152.96,-363.33"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="188.17,-394.44 198.26,-397.7 192.41,-388.87 188.17,-394.44"/>
</a>
</g>
</g>
<!-- Node12 -->
<g id="Node000012" class="node">
<title>Node12</title>
<g id="a_Node000012"><a xlink:href="policy__logical_8cpp.html" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="222.38,-296.5 123.12,-296.5 123.12,-266 222.38,-266 222.38,-296.5"/>
<text xml:space="preserve" text-anchor="start" x="131.12" y="-283" font-family="Helvetica,sans-Serif" font-size="10.00">src/lib/policy/policy</text>
<text xml:space="preserve" text-anchor="middle" x="172.75" y="-271.75" font-family="Helvetica,sans-Serif" font-size="10.00">_logical.cpp</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node12 -->
<g id="edge21_Node000001_Node000012" class="edge">
<title>Node1&#45;&gt;Node12</title>
<g id="a_edge21_Node000001_Node000012"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M214.45,-387.38C211.35,-371.28 206.5,-350.32 199.75,-332.5 194.98,-319.9 187.66,-306.51 181.84,-296.72"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="210.99,-387.91 216.23,-397.13 217.88,-386.66 210.99,-387.91"/>
</a>
</g>
</g>
<!-- Node2&#45;&gt;Node3 -->
<g id="edge2_Node000002_Node000003" class="edge">
<title>Node2&#45;&gt;Node3</title>
<g id="a_edge2_Node000002_Node000003"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M267.43,-257.3C243.57,-230.36 204.73,-186.5 184.66,-163.83"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="264.64,-259.43 273.89,-264.6 269.88,-254.79 264.64,-259.43"/>
</a>
</g>
</g>
<!-- Node2&#45;&gt;Node8 -->
<g id="edge9_Node000002_Node000008" class="edge">
<title>Node2&#45;&gt;Node8</title>
<g id="a_edge9_Node000002_Node000008"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M299.67,-255.44C303.75,-246.96 308.18,-237.74 311.74,-230.33"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="296.62,-253.72 295.44,-264.25 302.93,-256.75 296.62,-253.72"/>
</a>
</g>
</g>
<!-- Node2&#45;&gt;Node10 -->
<g id="edge12_Node000002_Node000010" class="edge">
<title>Node2&#45;&gt;Node10</title>
<g id="a_edge12_Node000002_Node000010"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M245.38,-261.01C218.95,-249 186.16,-234.1 165.59,-224.76"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="243.6,-264.04 254.15,-264.99 246.49,-257.67 243.6,-264.04"/>
</a>
</g>
</g>
<!-- Node4 -->
<g id="Node000004" class="node">
<title>Node4</title>
<g id="a_Node000004"><a xlink:href="gridfire_8h.html" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="95.5,-97 0,-97 0,-66.5 95.5,-66.5 95.5,-97"/>
<text xml:space="preserve" text-anchor="start" x="8" y="-83.5" font-family="Helvetica,sans-Serif" font-size="10.00">src/include/gridfire</text>
<text xml:space="preserve" text-anchor="middle" x="47.75" y="-72.25" font-family="Helvetica,sans-Serif" font-size="10.00">/gridfire.h</text>
</a>
</g>
</g>
<!-- Node3&#45;&gt;Node4 -->
<g id="edge3_Node000003_Node000004" class="edge">
<title>Node3&#45;&gt;Node4</title>
<g id="a_edge3_Node000003_Node000004"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M133.64,-127.43C114.97,-117.71 92.88,-106.22 75.78,-97.33"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="131.78,-130.41 142.27,-131.92 135.01,-124.2 131.78,-130.41"/>
</a>
</g>
</g>
<!-- Node5 -->
<g id="Node000005" class="node">
<title>Node5</title>
<g id="a_Node000005"><a xlink:href="policy_2bindings_8cpp.html" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="213.75,-24.88 65.75,-24.88 65.75,-5.63 213.75,-5.63 213.75,-24.88"/>
<text xml:space="preserve" text-anchor="middle" x="139.75" y="-11.38" font-family="Helvetica,sans-Serif" font-size="10.00">src/python/policy/bindings.cpp</text>
</a>
</g>
</g>
<!-- Node3&#45;&gt;Node5 -->
<g id="edge4_Node000003_Node000005" class="edge">
<title>Node3&#45;&gt;Node5</title>
<g id="a_edge4_Node000003_Node000005"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M154.63,-123.07C149.89,-115.13 145.35,-106.02 142.75,-97 135.45,-71.66 137.26,-39.99 138.73,-24.95"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="151.66,-124.92 160,-131.45 157.55,-121.14 151.66,-124.92"/>
</a>
</g>
</g>
<!-- Node6 -->
<g id="Node000006" class="node">
<title>Node6</title>
<g id="a_Node000006"><a xlink:href="py__policy_8cpp.html" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="377.88,-30.5 239.62,-30.5 239.62,0 377.88,0 377.88,-30.5"/>
<text xml:space="preserve" text-anchor="start" x="247.62" y="-17" font-family="Helvetica,sans-Serif" font-size="10.00">src/python/policy/trampoline</text>
<text xml:space="preserve" text-anchor="middle" x="308.75" y="-5.75" font-family="Helvetica,sans-Serif" font-size="10.00">/py_policy.cpp</text>
</a>
</g>
</g>
<!-- Node3&#45;&gt;Node6 -->
<g id="edge5_Node000003_Node000006" class="edge">
<title>Node3&#45;&gt;Node6</title>
<g id="a_edge5_Node000003_Node000006"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M230.57,-137.69C255.36,-130.61 282.25,-118.32 298.75,-97 313.53,-77.9 313.03,-48.29 311.06,-30.73"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="230,-134.22 221.2,-140.12 231.76,-141 230,-134.22"/>
</a>
</g>
</g>
<!-- Node7 -->
<g id="Node000007" class="node">
<title>Node7</title>
<g id="a_Node000007"><a xlink:href="py__policy_8h.html" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="289.88,-97 151.62,-97 151.62,-66.5 289.88,-66.5 289.88,-97"/>
<text xml:space="preserve" text-anchor="start" x="159.62" y="-83.5" font-family="Helvetica,sans-Serif" font-size="10.00">src/python/policy/trampoline</text>
<text xml:space="preserve" text-anchor="middle" x="220.75" y="-72.25" font-family="Helvetica,sans-Serif" font-size="10.00">/py_policy.h</text>
</a>
</g>
</g>
<!-- Node3&#45;&gt;Node7 -->
<g id="edge6_Node000003_Node000007" class="edge">
<title>Node3&#45;&gt;Node7</title>
<g id="a_edge6_Node000003_Node000007"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M189.74,-123.57C196.42,-114.78 203.79,-105.07 209.68,-97.33"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="187.05,-121.33 183.78,-131.41 192.62,-125.56 187.05,-121.33"/>
</a>
</g>
</g>
<!-- Node7&#45;&gt;Node5 -->
<g id="edge7_Node000007_Node000005" class="edge">
<title>Node7&#45;&gt;Node5</title>
<g id="a_edge7_Node000007_Node000005"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M193.69,-59.2C179.07,-47.56 161.81,-33.82 150.83,-25.07"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="191.18,-61.68 201.19,-65.17 195.54,-56.2 191.18,-61.68"/>
</a>
</g>
</g>
<!-- Node7&#45;&gt;Node6 -->
<g id="edge8_Node000007_Node000006" class="edge">
<title>Node7&#45;&gt;Node6</title>
<g id="a_edge8_Node000007_Node000006"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M249.65,-59.57C262.49,-50.16 277.29,-39.31 288.86,-30.83"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="247.94,-56.48 241.94,-65.22 252.07,-62.13 247.94,-56.48"/>
</a>
</g>
</g>
<!-- Node8&#45;&gt;Node3 -->
<g id="edge10_Node000008_Node000003" class="edge">
<title>Node8&#45;&gt;Node3</title>
<g id="a_edge10_Node000008_Node000003"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M275.14,-194.62C252.77,-184.8 225.95,-173.03 205.23,-163.94"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="273.44,-197.69 284.01,-198.51 276.26,-191.28 273.44,-197.69"/>
</a>
</g>
</g>
<!-- Node8&#45;&gt;Node9 -->
<g id="edge11_Node000008_Node000009" class="edge">
<title>Node8&#45;&gt;Node9</title>
<g id="a_edge11_Node000008_Node000009"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M334.54,-189.51C340.16,-180.87 346.32,-171.41 351.26,-163.83"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="331.63,-187.56 329.11,-197.85 337.5,-191.38 331.63,-187.56"/>
</a>
</g>
</g>
<!-- Node11&#45;&gt;Node2 -->
<g id="edge15_Node000011_Node000002" class="edge">
<title>Node11&#45;&gt;Node2</title>
<g id="a_edge15_Node000011_Node000002"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M179.12,-327.75C202.62,-317.91 230.87,-306.07 252.68,-296.94"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="177.96,-324.44 170.09,-331.53 180.67,-330.89 177.96,-324.44"/>
</a>
</g>
</g>
<!-- Node11&#45;&gt;Node3 -->
<g id="edge16_Node000011_Node000003" class="edge">
<title>Node11&#45;&gt;Node3</title>
<g id="a_edge16_Node000011_Node000003"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M112.38,-323.68C87.32,-293.7 52.14,-240.36 76.75,-199.5 87.15,-182.24 105.68,-170.6 123.63,-162.91"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="109.57,-325.78 118.76,-331.05 114.86,-321.2 109.57,-325.78"/>
</a>
</g>
</g>
<!-- Node11&#45;&gt;Node10 -->
<g id="edge17_Node000011_Node000010" class="edge">
<title>Node11&#45;&gt;Node10</title>
<g id="a_edge17_Node000011_Node000010"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M120.77,-321.89C114.07,-305.85 108.33,-284.59 113.75,-266 118.44,-249.91 130.01,-234.06 137.87,-224.59"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="117.46,-323.06 124.81,-330.69 123.82,-320.14 117.46,-323.06"/>
</a>
</g>
</g>
<!-- Node11&#45;&gt;Node12 -->
<g id="edge18_Node000011_Node000012" class="edge">
<title>Node11&#45;&gt;Node12</title>
<g id="a_edge18_Node000011_Node000012"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M148.41,-322.51C153.63,-313.87 159.35,-304.41 163.94,-296.83"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="145.56,-320.45 143.38,-330.82 151.55,-324.07 145.56,-320.45"/>
</a>
</g>
</g>
</g>
</svg>
</svg>
<style type='text/css'>
<![CDATA[
[data-mouse-over-selected='false'] { opacity: 0.7; }
[data-mouse-over-selected='true'] { opacity: 1.0; }
]]>
</style>
<script type="application/ecmascript"><![CDATA[
document.addEventListener('DOMContentLoaded', (event) => {
highlightEdges();
highlightAdjacentNodes();
});
]]></script>
</svg>