Files
C-Plus-Plus/d3/d1a/hill__cipher_8cpp__incl.svg
2025-08-15 03:54:34 +00:00

331 lines
15 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.1.2 (20250808.2320)
-->
<!-- Title: ciphers/hill_cipher.cpp Pages: 1 -->
<!--zoomable 149 -->
<svg id="main" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xml:space="preserve" onload="init(evt)">
<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>
<defs>
<circle id="rim" cx="0" cy="0" r="7"/>
<circle id="rim2" cx="0" cy="0" r="3.5"/>
<g id="zoomPlus">
<use xlink:href="#rim" fill="#404040"><set attributeName="fill" to="#808080" begin="zoomplus.mouseover" end="zoomplus.mouseout"/></use>
<path d="M-4,0h8M0,-4v8" fill="none" stroke="white" stroke-width="1.5" pointer-events="none"/>
</g>
<g id="zoomMin">
<use xlink:href="#rim" fill="#404040"><set attributeName="fill" to="#808080" begin="zoomminus.mouseover" end="zoomminus.mouseout"/></use>
<path d="M-4,0h8" fill="none" stroke="white" stroke-width="1.5" pointer-events="none"/>
</g>
<g id="arrowUp" transform="translate(30 24)">
<use xlink:href="#rim"/>
<path pointer-events="none" fill="none" stroke="white" stroke-width="1.5" d="M0,-3.0v7 M-2.5,-0.5L0,-3.0L2.5,-0.5"/>
</g>
<g id="arrowRight" transform="rotate(90) translate(36 -43)">
<use xlink:href="#rim"/>
<path pointer-events="none" fill="none" stroke="white" stroke-width="1.5" d="M0,-3.0v7 M-2.5,-0.5L0,-3.0L2.5,-0.5"/>
</g>
<g id="arrowDown" transform="rotate(180) translate(-30 -48)">
<use xlink:href="#rim"/>
<path pointer-events="none" fill="none" stroke="white" stroke-width="1.5" d="M0,-3.0v7 M-2.5,-0.5L0,-3.0L2.5,-0.5"/>
</g>
<g id="arrowLeft" transform="rotate(270) translate(-36 17)">
<use xlink:href="#rim"/>
<path pointer-events="none" fill="none" stroke="white" stroke-width="1.5" d="M0,-3.0v7 M-2.5,-0.5L0,-3.0L2.5,-0.5"/>
</g>
<g id="resetDef">
<use xlink:href="#rim2" fill="#404040"><set attributeName="fill" to="#808080" begin="reset.mouseover" end="reset.mouseout"/></use>
</g>
</defs>
<script type="application/ecmascript">
var viewWidth = 661;
var viewHeight = 149;
var sectionId = 'dynsection-0';
</script>
<script type="application/ecmascript" xlink:href="../../svg.min.js"/>
<svg id="graph" class="graph">
<g id="viewport">
<title>ciphers/hill_cipher.cpp</title>
<!-- Node1 -->
<g id="Node000001" class="node">
<title>Node1</title>
<g id="a_Node000001"><a xlink:title="Implementation of Hill cipher algorithm.">
<polygon fill="#999999" stroke="#666666" points="361.12,-141 249.12,-141 249.12,-121.75 361.12,-121.75 361.12,-141"/>
<text xml:space="preserve" text-anchor="middle" x="305.12" y="-127.5" font-family="Helvetica,sans-Serif" font-size="10.00">ciphers/hill_cipher.cpp</text>
</a>
</g>
</g>
<!-- Node2 -->
<g id="Node000002" class="node">
<title>Node2</title>
<g id="a_Node000002"><a xlink:title=" ">
<polygon fill="#e0e0e0" stroke="#999999" points="48.25,-80.12 0,-80.12 0,-60.88 48.25,-60.88 48.25,-80.12"/>
<text xml:space="preserve" text-anchor="middle" x="24.12" y="-66.62" font-family="Helvetica,sans-Serif" font-size="10.00">cassert</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="M248.89,-123.77C198.29,-117 122.26,-104.74 58.12,-85.75 56.78,-85.35 55.41,-84.92 54.04,-84.45"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="55.64,-81.32 45.05,-81.07 53.18,-87.87 55.64,-81.32"/>
</a>
</g>
</g>
<!-- Node3 -->
<g id="Node000003" class="node">
<title>Node3</title>
<g id="a_Node000003"><a xlink:title=" ">
<polygon fill="#e0e0e0" stroke="#999999" points="109.62,-80.12 66.62,-80.12 66.62,-60.88 109.62,-60.88 109.62,-80.12"/>
<text xml:space="preserve" text-anchor="middle" x="88.12" y="-66.62" font-family="Helvetica,sans-Serif" font-size="10.00">cmath</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node3 -->
<g id="edge2_Node000001_Node000003" class="edge">
<title>Node1&#45;&gt;Node3</title>
<g id="a_edge2_Node000001_Node000003"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M254.7,-121.32C216.59,-113.76 163.3,-101.67 118.12,-85.75 117.48,-85.52 116.83,-85.29 116.18,-85.04"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="117.6,-81.84 107.03,-81.16 114.87,-88.29 117.6,-81.84"/>
</a>
</g>
</g>
<!-- Node4 -->
<g id="Node000004" class="node">
<title>Node4</title>
<g id="a_Node000004"><a xlink:title=" ">
<polygon fill="#e0e0e0" stroke="#999999" points="172.75,-80.12 127.5,-80.12 127.5,-60.88 172.75,-60.88 172.75,-80.12"/>
<text xml:space="preserve" text-anchor="middle" x="150.12" y="-66.62" font-family="Helvetica,sans-Serif" font-size="10.00">cstdint</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node4 -->
<g id="edge3_Node000001_Node000004" class="edge">
<title>Node1&#45;&gt;Node4</title>
<g id="a_edge3_Node000001_Node000004"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M277.78,-121.29C252.48,-112.7 213.95,-99.17 181.12,-85.75 180.51,-85.5 179.89,-85.24 179.26,-84.98"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="180.98,-81.91 170.42,-81.11 178.17,-88.32 180.98,-81.91"/>
</a>
</g>
</g>
<!-- Node5 -->
<g id="Node000005" class="node">
<title>Node5</title>
<g id="a_Node000005"><a xlink:title=" ">
<polygon fill="#e0e0e0" stroke="#999999" points="235.75,-80.12 190.5,-80.12 190.5,-60.88 235.75,-60.88 235.75,-80.12"/>
<text xml:space="preserve" text-anchor="middle" x="213.12" y="-66.62" font-family="Helvetica,sans-Serif" font-size="10.00">cstring</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node5 -->
<g id="edge4_Node000001_Node000005" class="edge">
<title>Node1&#45;&gt;Node5</title>
<g id="a_edge4_Node000001_Node000005"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M291.15,-121.43C276.7,-112.18 253.87,-97.57 236.63,-86.54"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="238.81,-83.78 228.5,-81.34 235.04,-89.68 238.81,-83.78"/>
</a>
</g>
</g>
<!-- Node6 -->
<g id="Node000006" class="node">
<title>Node6</title>
<g id="a_Node000006"><a xlink:title=" ">
<polygon fill="#e0e0e0" stroke="#999999" points="294.12,-80.12 254.12,-80.12 254.12,-60.88 294.12,-60.88 294.12,-80.12"/>
<text xml:space="preserve" text-anchor="middle" x="274.12" y="-66.62" font-family="Helvetica,sans-Serif" font-size="10.00">ctime</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node6 -->
<g id="edge5_Node000001_Node000006" class="edge">
<title>Node1&#45;&gt;Node6</title>
<g id="a_edge5_Node000001_Node000006"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M300.42,-121.43C296.14,-113.31 289.68,-101.04 284.24,-90.7"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="287.34,-89.08 279.58,-81.87 281.14,-92.34 287.34,-89.08"/>
</a>
</g>
</g>
<!-- Node7 -->
<g id="Node000007" class="node">
<title>Node7</title>
<g id="a_Node000007"><a xlink:title=" ">
<polygon fill="#e0e0e0" stroke="#999999" points="361.62,-80.12 312.62,-80.12 312.62,-60.88 361.62,-60.88 361.62,-80.12"/>
<text xml:space="preserve" text-anchor="middle" x="337.12" y="-66.62" font-family="Helvetica,sans-Serif" font-size="10.00">fstream</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node7 -->
<g id="edge6_Node000001_Node000007" class="edge">
<title>Node1&#45;&gt;Node7</title>
<g id="a_edge6_Node000001_Node000007"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M309.99,-121.43C314.45,-113.22 321.21,-100.78 326.87,-90.37"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="329.8,-92.31 331.5,-81.86 323.65,-88.97 329.8,-92.31"/>
</a>
</g>
</g>
<!-- Node8 -->
<g id="Node000008" class="node">
<title>Node8</title>
<g id="a_Node000008"><a xlink:title=" ">
<polygon fill="#e0e0e0" stroke="#999999" points="429,-80.12 379.25,-80.12 379.25,-60.88 429,-60.88 429,-80.12"/>
<text xml:space="preserve" text-anchor="middle" x="404.12" y="-66.62" font-family="Helvetica,sans-Serif" font-size="10.00">iomanip</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node8 -->
<g id="edge7_Node000001_Node000008" class="edge">
<title>Node1&#45;&gt;Node8</title>
<g id="a_edge7_Node000001_Node000008"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M320.16,-121.43C335.79,-112.14 360.51,-97.44 379.09,-86.39"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="380.84,-89.42 387.65,-81.3 377.26,-83.4 380.84,-89.42"/>
</a>
</g>
</g>
<!-- Node9 -->
<g id="Node000009" class="node">
<title>Node9</title>
<g id="a_Node000009"><a xlink:title=" ">
<polygon fill="#e0e0e0" stroke="#999999" points="518.88,-19.25 465.38,-19.25 465.38,0 518.88,0 518.88,-19.25"/>
<text xml:space="preserve" text-anchor="middle" x="492.12" y="-5.75" font-family="Helvetica,sans-Serif" font-size="10.00">iostream</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node9 -->
<g id="edge8_Node000001_Node000009" class="edge">
<title>Node1&#45;&gt;Node9</title>
<g id="a_edge8_Node000001_Node000009"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M355.36,-121.32C381.86,-114.71 413.82,-103.68 438.12,-85.75 458.27,-70.89 473.9,-46.28 483.05,-29.29"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="485.97,-31.26 487.42,-20.76 479.74,-28.07 485.97,-31.26"/>
</a>
</g>
</g>
<!-- Node10 -->
<g id="Node000010" class="node">
<title>Node10</title>
<g id="a_Node000010"><a xlink:title=" ">
<polygon fill="#e0e0e0" stroke="#999999" points="525.12,-80.12 485.12,-80.12 485.12,-60.88 525.12,-60.88 525.12,-80.12"/>
<text xml:space="preserve" text-anchor="middle" x="505.12" y="-66.62" font-family="Helvetica,sans-Serif" font-size="10.00">string</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node10 -->
<g id="edge9_Node000001_Node000010" class="edge">
<title>Node1&#45;&gt;Node10</title>
<g id="a_edge9_Node000001_Node000010"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M344.82,-121.29C378.73,-113.16 428.63,-100.29 471.12,-85.75 472.11,-85.41 473.1,-85.06 474.1,-84.7"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="475.34,-87.98 483.39,-81.09 472.8,-81.45 475.34,-87.98"/>
</a>
</g>
</g>
<!-- Node11 -->
<g id="Node000011" class="node">
<title>Node11</title>
<g id="a_Node000011"><a xlink:href="../../d1/dbe/lu__decomposition_8h.html" target="_top" xlink:title="Functions associated with LU Decomposition of a square matrix.">
<polygon fill="white" stroke="#666666" points="653,-85.75 543.25,-85.75 543.25,-55.25 653,-55.25 653,-85.75"/>
<text xml:space="preserve" text-anchor="start" x="551.25" y="-72.25" font-family="Helvetica,sans-Serif" font-size="10.00">../numerical_methods</text>
<text xml:space="preserve" text-anchor="middle" x="598.12" y="-61" font-family="Helvetica,sans-Serif" font-size="10.00">/lu_decomposition.h</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node11 -->
<g id="edge10_Node000001_Node000011" class="edge">
<title>Node1&#45;&gt;Node11</title>
<g id="a_edge10_Node000001_Node000011"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M353.89,-121.26C397.86,-112.96 464.57,-100.14 531.76,-86.21"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="532.43,-89.65 541.51,-84.18 531,-82.79 532.43,-89.65"/>
</a>
</g>
</g>
<!-- Node11&#45;&gt;Node9 -->
<g id="edge11_Node000011_Node000009" class="edge">
<title>Node11&#45;&gt;Node9</title>
<g id="a_edge11_Node000011_Node000009"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M571.65,-54.8C555.35,-45.74 534.55,-34.19 518.3,-25.16"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="520.15,-22.18 509.7,-20.39 516.75,-28.3 520.15,-22.18"/>
</a>
</g>
</g>
<!-- Node12 -->
<g id="Node000012" class="node">
<title>Node12</title>
<g id="a_Node000012"><a xlink:title=" ">
<polygon fill="#e0e0e0" stroke="#999999" points="590.38,-19.25 539.88,-19.25 539.88,0 590.38,0 590.38,-19.25"/>
<text xml:space="preserve" text-anchor="middle" x="565.12" y="-5.75" font-family="Helvetica,sans-Serif" font-size="10.00">valarray</text>
</a>
</g>
</g>
<!-- Node11&#45;&gt;Node12 -->
<g id="edge12_Node000011_Node000012" class="edge">
<title>Node11&#45;&gt;Node12</title>
<g id="a_edge12_Node000011_Node000012"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M589.97,-54.95C585.67,-47.28 580.34,-37.77 575.73,-29.54"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="578.89,-28.03 570.95,-21.02 572.79,-31.46 578.89,-28.03"/>
</a>
</g>
</g>
<!-- Node13 -->
<g id="Node000013" class="node">
<title>Node13</title>
<g id="a_Node000013"><a xlink:title=" ">
<polygon fill="#e0e0e0" stroke="#999999" points="651.62,-19.25 608.62,-19.25 608.62,0 651.62,0 651.62,-19.25"/>
<text xml:space="preserve" text-anchor="middle" x="630.12" y="-5.75" font-family="Helvetica,sans-Serif" font-size="10.00">vector</text>
</a>
</g>
</g>
<!-- Node11&#45;&gt;Node13 -->
<g id="edge13_Node000011_Node000013" class="edge">
<title>Node11&#45;&gt;Node13</title>
<g id="a_edge13_Node000011_Node000013"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M606.04,-54.95C610.16,-47.36 615.25,-37.99 619.69,-29.82"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="622.77,-31.49 624.47,-21.03 616.62,-28.15 622.77,-31.49"/>
</a>
</g>
</g>
</g>
</svg>
<g id="navigator" transform="translate(0 0)" fill="#404254">
<rect fill="#f2f5e9" fill-opacity="0.5" stroke="#606060" stroke-width=".5" x="0" y="0" width="60" height="60"/>
<use id="zoomplus" xlink:href="#zoomPlus" x="17" y="9" onmousedown="handleZoom(evt,'in')"/>
<use id="zoomminus" xlink:href="#zoomMin" x="42" y="9" onmousedown="handleZoom(evt,'out')"/>
<use id="reset" xlink:href="#resetDef" x="30" y="36" onmousedown="handleReset()"/>
<use id="arrowup" xlink:href="#arrowUp" x="0" y="0" onmousedown="handlePan(0,-1)"/>
<use id="arrowright" xlink:href="#arrowRight" x="0" y="0" onmousedown="handlePan(1,0)"/>
<use id="arrowdown" xlink:href="#arrowDown" x="0" y="0" onmousedown="handlePan(0,1)"/>
<use id="arrowleft" xlink:href="#arrowLeft" x="0" y="0" onmousedown="handlePan(-1,0)"/>
</g>
<svg viewBox="0 0 15 15" width="100%" height="30px" preserveAspectRatio="xMaxYMin meet">
<g id="arrow_out" transform="scale(0.3 0.3)">
<a xlink:href="hill__cipher_8cpp__incl_org.svg" target="_base">
<rect id="button" ry="5" rx="5" y="6" x="6" height="38" width="38"
fill="#f2f5e9" fill-opacity="0.5" stroke="#606060" stroke-width="1.0"/>
<path id="arrow"
d="M 11.500037,31.436501 C 11.940474,20.09759 22.043105,11.32322 32.158766,21.979434 L 37.068811,17.246167 C 37.068811,17.246167 37.088388,32 37.088388,32 L 22.160133,31.978069 C 22.160133,31.978069 26.997745,27.140456 26.997745,27.140456 C 18.528582,18.264221 13.291696,25.230495 11.500037,31.436501 z"
style="fill:#404040;"/>
</a>
</g>
</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>