3
0
mirror of https://github.com/jlu5/PyLink.git synced 2024-11-01 09:19:23 +01:00
PyLink/docs/technical/protocol-modules.svg
2017-11-12 12:07:08 -08:00

156 lines
11 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 2.38.0 (20140413.2041)
-->
<!-- Title: G Pages: 1 -->
<svg width="530pt" height="651pt"
viewBox="0.00 0.00 530.00 651.00" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 647)">
<title>G</title>
<polygon fill="white" stroke="none" points="-4,4 -4,-647 526,-647 526,4 -4,4"/>
<g id="clust1" class="cluster"><title>cluster_core</title>
<polygon fill="#90ee90" stroke="#90ee90" points="77,-416 77,-635 333,-635 333,-416 77,-416"/>
<text text-anchor="middle" x="205" y="-619.8" font-family="Times,serif" font-size="14.00">Core classes (pylinkirc.classes)</text>
</g>
<g id="clust2" class="cluster"><title>cluster_helper</title>
<polygon fill="lightblue" stroke="lightblue" points="83,-163 83,-408 302,-408 302,-163 83,-163"/>
<text text-anchor="middle" x="192.5" y="-392.8" font-family="Times,serif" font-size="14.00">Protocol module helpers</text>
<text text-anchor="middle" x="192.5" y="-377.8" font-family="Times,serif" font-size="14.00">(pylinkirc.protocols.ircs2s_common)</text>
</g>
<g id="clust3" class="cluster"><title>cluster_helper</title>
<polygon fill="lightcyan" stroke="lightcyan" points="91,-171 91,-246 285,-246 285,-171 91,-171"/>
<text text-anchor="middle" x="188" y="-230.8" font-family="Times,serif" font-size="14.00">pylinkirc.protocols.ts6_common</text>
</g>
<g id="clust4" class="cluster"><title>cluster_pluggable</title>
<polygon fill="khaki" stroke="khaki" points="8,-8 8,-155 514,-155 514,-8 8,-8"/>
<text text-anchor="middle" x="261" y="-139.8" font-family="Times,serif" font-size="14.00">Complete protocol modules (pylinkirc.protocols.*)</text>
</g>
<!-- PyLinkNetworkCore -->
<g id="node1" class="node"><title>PyLinkNetworkCore</title>
<ellipse fill="white" stroke="white" cx="205" cy="-586" rx="84.485" ry="18"/>
<text text-anchor="middle" x="205" y="-582.3" font-family="Times,serif" font-size="14.00">PyLinkNetworkCore</text>
</g>
<!-- PyLinkNetworkCoreWithUtils -->
<g id="node2" class="node"><title>PyLinkNetworkCoreWithUtils</title>
<ellipse fill="white" stroke="white" cx="205" cy="-514" rx="119.679" ry="18"/>
<text text-anchor="middle" x="205" y="-510.3" font-family="Times,serif" font-size="14.00">PyLinkNetworkCoreWithUtils</text>
</g>
<!-- PyLinkNetworkCore&#45;&gt;PyLinkNetworkCoreWithUtils -->
<g id="edge1" class="edge"><title>PyLinkNetworkCore&#45;&gt;PyLinkNetworkCoreWithUtils</title>
<path fill="none" stroke="#111111" stroke-width="0.75" stroke-opacity="0.800000" d="M205,-567.697C205,-559.983 205,-550.712 205,-542.112"/>
<polygon fill="#111111" fill-opacity="0.800000" stroke="#111111" stroke-width="0.75" stroke-opacity="0.800000" points="208.5,-542.104 205,-532.104 201.5,-542.104 208.5,-542.104"/>
</g>
<!-- IRCNetwork -->
<g id="node3" class="node"><title>IRCNetwork</title>
<ellipse fill="white" stroke="white" cx="205" cy="-442" rx="55.7903" ry="18"/>
<text text-anchor="middle" x="205" y="-438.3" font-family="Times,serif" font-size="14.00">IRCNetwork</text>
</g>
<!-- PyLinkNetworkCoreWithUtils&#45;&gt;IRCNetwork -->
<g id="edge2" class="edge"><title>PyLinkNetworkCoreWithUtils&#45;&gt;IRCNetwork</title>
<path fill="none" stroke="#111111" stroke-width="0.75" stroke-opacity="0.800000" d="M205,-495.697C205,-487.983 205,-478.712 205,-470.112"/>
<polygon fill="#111111" fill-opacity="0.800000" stroke="#111111" stroke-width="0.75" stroke-opacity="0.800000" points="208.5,-470.104 205,-460.104 201.5,-470.104 208.5,-470.104"/>
</g>
<!-- IRCCommonProtocol -->
<g id="node4" class="node"><title>IRCCommonProtocol</title>
<ellipse fill="white" stroke="white" cx="205" cy="-344" rx="89.0842" ry="18"/>
<text text-anchor="middle" x="205" y="-340.3" font-family="Times,serif" font-size="14.00">IRCCommonProtocol</text>
</g>
<!-- IRCNetwork&#45;&gt;IRCCommonProtocol -->
<g id="edge3" class="edge"><title>IRCNetwork&#45;&gt;IRCCommonProtocol</title>
<path fill="none" stroke="#111111" stroke-width="0.75" stroke-opacity="0.800000" d="M205,-423.837C205,-409.503 205,-388.807 205,-372.216"/>
<polygon fill="#111111" fill-opacity="0.800000" stroke="#111111" stroke-width="0.75" stroke-opacity="0.800000" points="208.5,-372.014 205,-362.014 201.5,-372.014 208.5,-372.014"/>
</g>
<!-- IRCS2SProtocol -->
<g id="node5" class="node"><title>IRCS2SProtocol</title>
<ellipse fill="white" stroke="white" cx="214" cy="-272" rx="69.5877" ry="18"/>
<text text-anchor="middle" x="214" y="-268.3" font-family="Times,serif" font-size="14.00">IRCS2SProtocol</text>
</g>
<!-- IRCCommonProtocol&#45;&gt;IRCS2SProtocol -->
<g id="edge4" class="edge"><title>IRCCommonProtocol&#45;&gt;IRCS2SProtocol</title>
<path fill="none" stroke="#111111" stroke-width="0.75" stroke-opacity="0.800000" d="M207.225,-325.697C208.217,-317.983 209.408,-308.712 210.514,-300.112"/>
<polygon fill="#111111" fill-opacity="0.800000" stroke="#111111" stroke-width="0.75" stroke-opacity="0.800000" points="213.997,-300.469 211.801,-290.104 207.054,-299.576 213.997,-300.469"/>
</g>
<!-- clientbot -->
<g id="node13" class="node"><title>clientbot</title>
<ellipse fill="white" stroke="white" cx="464" cy="-106" rx="41.6928" ry="18"/>
<text text-anchor="middle" x="464" y="-102.3" font-family="Times,serif" font-size="14.00">clientbot</text>
</g>
<!-- IRCCommonProtocol&#45;&gt;clientbot -->
<g id="edge12" class="edge"><title>IRCCommonProtocol&#45;&gt;clientbot</title>
<path fill="none" stroke="#111111" stroke-width="0.75" stroke-opacity="0.800000" d="M233.699,-326.923C251.178,-316.837 273.771,-303.27 293,-290 319.052,-272.023 326.338,-268.098 349,-246 386.799,-209.142 424.679,-160.559 446.146,-131.67"/>
<polygon fill="#111111" fill-opacity="0.800000" stroke="#111111" stroke-width="0.75" stroke-opacity="0.800000" points="449.147,-133.498 452.263,-123.372 443.512,-129.345 449.147,-133.498"/>
</g>
<!-- TS6BaseProtocol -->
<g id="node6" class="node"><title>TS6BaseProtocol</title>
<ellipse fill="white" stroke="white" cx="187" cy="-197" rx="72.2875" ry="18"/>
<text text-anchor="middle" x="187" y="-193.3" font-family="Times,serif" font-size="14.00">TS6BaseProtocol</text>
</g>
<!-- IRCS2SProtocol&#45;&gt;TS6BaseProtocol -->
<g id="edge5" class="edge"><title>IRCS2SProtocol&#45;&gt;TS6BaseProtocol</title>
<path fill="none" stroke="#111111" stroke-width="0.75" stroke-opacity="0.800000" d="M207.738,-254.069C204.49,-245.287 200.448,-234.36 196.798,-224.49"/>
<polygon fill="#111111" fill-opacity="0.800000" stroke="#111111" stroke-width="0.75" stroke-opacity="0.800000" points="200.073,-223.257 193.322,-215.092 193.508,-225.685 200.073,-223.257"/>
</g>
<!-- p10 -->
<g id="node7" class="node"><title>p10</title>
<ellipse fill="white" stroke="white" cx="293" cy="-106" rx="27" ry="18"/>
<text text-anchor="middle" x="293" y="-102.3" font-family="Times,serif" font-size="14.00">p10</text>
</g>
<!-- IRCS2SProtocol&#45;&gt;p10 -->
<g id="edge6" class="edge"><title>IRCS2SProtocol&#45;&gt;p10</title>
<path fill="none" stroke="#111111" stroke-width="0.75" stroke-opacity="0.800000" d="M269.936,-261.101C277.361,-257.496 284.089,-252.611 289,-246 313.082,-213.582 307.4,-164.181 300.569,-133.833"/>
<polygon fill="#111111" fill-opacity="0.800000" stroke="#111111" stroke-width="0.75" stroke-opacity="0.800000" points="303.928,-132.834 298.152,-123.952 297.129,-134.497 303.928,-132.834"/>
</g>
<!-- ngircd -->
<g id="node8" class="node"><title>ngircd</title>
<ellipse fill="white" stroke="white" cx="371" cy="-106" rx="33.2948" ry="18"/>
<text text-anchor="middle" x="371" y="-102.3" font-family="Times,serif" font-size="14.00">ngircd</text>
</g>
<!-- IRCS2SProtocol&#45;&gt;ngircd -->
<g id="edge7" class="edge"><title>IRCS2SProtocol&#45;&gt;ngircd</title>
<path fill="none" stroke="#111111" stroke-width="0.75" stroke-opacity="0.800000" d="M276.712,-264.047C289.461,-260.278 302.009,-254.58 312,-246 345.593,-217.151 360.541,-165.861 366.824,-134.301"/>
<polygon fill="#111111" fill-opacity="0.800000" stroke="#111111" stroke-width="0.75" stroke-opacity="0.800000" points="370.276,-134.882 368.637,-124.415 363.391,-133.62 370.276,-134.882"/>
</g>
<!-- ts6 -->
<g id="node9" class="node"><title>ts6</title>
<ellipse fill="white" stroke="white" cx="43" cy="-106" rx="27" ry="18"/>
<text text-anchor="middle" x="43" y="-102.3" font-family="Times,serif" font-size="14.00">ts6</text>
</g>
<!-- TS6BaseProtocol&#45;&gt;ts6 -->
<g id="edge8" class="edge"><title>TS6BaseProtocol&#45;&gt;ts6</title>
<path fill="none" stroke="#111111" stroke-width="0.75" stroke-opacity="0.800000" d="M137.801,-183.792C118.234,-177.355 96.3078,-168.023 79,-155 70.5984,-148.678 63.2254,-139.88 57.3761,-131.54"/>
<polygon fill="#111111" fill-opacity="0.800000" stroke="#111111" stroke-width="0.75" stroke-opacity="0.800000" points="60.2708,-129.572 51.8527,-123.138 54.4215,-133.417 60.2708,-129.572"/>
</g>
<!-- inspircd -->
<g id="node11" class="node"><title>inspircd</title>
<ellipse fill="white" stroke="white" cx="209" cy="-106" rx="38.9931" ry="18"/>
<text text-anchor="middle" x="209" y="-102.3" font-family="Times,serif" font-size="14.00">inspircd</text>
</g>
<!-- TS6BaseProtocol&#45;&gt;inspircd -->
<g id="edge10" class="edge"><title>TS6BaseProtocol&#45;&gt;inspircd</title>
<path fill="none" stroke="#111111" stroke-width="0.75" stroke-opacity="0.800000" d="M191.242,-178.84C194.377,-166.158 198.707,-148.64 202.307,-134.077"/>
<polygon fill="#111111" fill-opacity="0.800000" stroke="#111111" stroke-width="0.75" stroke-opacity="0.800000" points="205.769,-134.655 204.771,-124.107 198.974,-132.975 205.769,-134.655"/>
</g>
<!-- unreal -->
<g id="node12" class="node"><title>unreal</title>
<ellipse fill="white" stroke="white" cx="120" cy="-106" rx="32.4942" ry="18"/>
<text text-anchor="middle" x="120" y="-102.3" font-family="Times,serif" font-size="14.00">unreal</text>
</g>
<!-- TS6BaseProtocol&#45;&gt;unreal -->
<g id="edge11" class="edge"><title>TS6BaseProtocol&#45;&gt;unreal</title>
<path fill="none" stroke="#111111" stroke-width="0.75" stroke-opacity="0.800000" d="M174.398,-179.26C164.099,-165.579 149.413,-146.071 137.895,-130.772"/>
<polygon fill="#111111" fill-opacity="0.800000" stroke="#111111" stroke-width="0.75" stroke-opacity="0.800000" points="140.682,-128.653 131.871,-122.769 135.089,-132.863 140.682,-128.653"/>
</g>
<!-- hybrid -->
<g id="node10" class="node"><title>hybrid</title>
<ellipse fill="white" stroke="white" cx="50" cy="-34" rx="33.5952" ry="18"/>
<text text-anchor="middle" x="50" y="-30.3" font-family="Times,serif" font-size="14.00">hybrid</text>
</g>
<!-- ts6&#45;&gt;hybrid -->
<g id="edge9" class="edge"><title>ts6&#45;&gt;hybrid</title>
<path fill="none" stroke="#111111" stroke-width="0.75" stroke-opacity="0.800000" d="M44.7303,-87.6966C45.5017,-79.9827 46.4288,-70.7125 47.2888,-62.1124"/>
<polygon fill="#111111" fill-opacity="0.800000" stroke="#111111" stroke-width="0.75" stroke-opacity="0.800000" points="50.7771,-62.403 48.2896,-52.1043 43.8118,-61.7064 50.7771,-62.403"/>
</g>
</g>
</svg>