Update all hierarchy charts in the docs

Added notes on how the abstracts are represented, ensured all the class
hierarchies were up to date, and changed the orientation so the classes
are actually readable in the big chart.
This commit is contained in:
Dave Jones
2016-09-26 11:08:17 +01:00
parent 412ca72066
commit 576fced6c4
30 changed files with 823 additions and 615 deletions

View File

@@ -2,17 +2,19 @@
gpiozero gpiozero
======== ========
.. image:: https://badge.fury.io/py/gpiozero.svg .. only:: builder_html
:target: https://badge.fury.io/py/gpiozero
:alt: Latest Version
.. image:: https://travis-ci.org/RPi-Distro/python-gpiozero.svg?branch=master .. image:: https://badge.fury.io/py/gpiozero.svg
:target: https://travis-ci.org/RPi-Distro/python-gpiozero :target: https://badge.fury.io/py/gpiozero
:alt: Build Tests :alt: Latest Version
.. image:: https://img.shields.io/codecov/c/github/RPi-Distro/python-gpiozero/master.svg?maxAge=2592000 .. image:: https://travis-ci.org/RPi-Distro/python-gpiozero.svg?branch=master
:target: https://codecov.io/github/RPi-Distro/python-gpiozero :target: https://travis-ci.org/RPi-Distro/python-gpiozero
:alt: Code Coverage :alt: Build Tests
.. image:: https://img.shields.io/codecov/c/github/RPi-Distro/python-gpiozero/master.svg?maxAge=2592000
:target: https://codecov.io/github/RPi-Distro/python-gpiozero
:alt: Code Coverage
A simple interface to GPIO devices with Raspberry Pi. A simple interface to GPIO devices with Raspberry Pi.

View File

@@ -23,7 +23,8 @@ classes (most of which are documented in their corresponding chapters):
devices like HATs devices like HATs
There are also several `mixin classes`_ for adding important functionality There are also several `mixin classes`_ for adding important functionality
at numerous points in the hierarchy, which is illustrated below: at numerous points in the hierarchy, which is illustrated below (mixin classes
are represented in purple, while abstract classes are shaded lighter):
.. image:: images/device_hierarchy.* .. image:: images/device_hierarchy.*

View File

@@ -52,7 +52,8 @@ Base Classes
The classes in the sections above are derived from a series of base classes, The classes in the sections above are derived from a series of base classes,
some of which are effectively abstract. The classes form the (partial) some of which are effectively abstract. The classes form the (partial)
hierarchy displayed in the graph below: hierarchy displayed in the graph below (abstract classes are shaded lighter
than concrete classes):
.. image:: images/input_device_hierarchy.* .. image:: images/input_device_hierarchy.*

View File

@@ -35,7 +35,8 @@ Base Classes
The classes in the sections above are derived from a series of base classes, The classes in the sections above are derived from a series of base classes,
some of which are effectively abstract. The classes form the (partial) some of which are effectively abstract. The classes form the (partial)
hierarchy displayed in the graph below: hierarchy displayed in the graph below (abstract classes are shaded lighter
than concrete classes):
.. image:: images/other_device_hierarchy.* .. image:: images/other_device_hierarchy.*

View File

@@ -62,7 +62,8 @@ Base Classes
The classes in the sections above are derived from a series of base classes, The classes in the sections above are derived from a series of base classes,
some of which are effectively abstract. The classes form the (partial) some of which are effectively abstract. The classes form the (partial)
hierarchy displayed in the graph below: hierarchy displayed in the graph below (abstract classes are shaded lighter
than concrete classes):
.. image:: images/output_device_hierarchy.* .. image:: images/output_device_hierarchy.*

View File

@@ -121,7 +121,8 @@ Base Classes
The classes in the sections above are derived from a series of base classes, The classes in the sections above are derived from a series of base classes,
some of which are effectively abstract. The classes form the (partial) some of which are effectively abstract. The classes form the (partial)
hierarchy displayed in the graph below: hierarchy displayed in the graph below (abstract classes are shaded lighter
than concrete classes):
.. image:: images/spi_device_hierarchy.* .. image:: images/spi_device_hierarchy.*

View File

@@ -1,7 +1,7 @@
/* vim: set et sw=4 sts=4: */ /* vim: set et sw=4 sts=4: */
digraph classes { digraph classes {
graph [rankdir=BT]; graph [rankdir=RL];
node [shape=rect, style=filled, fontname=Sans, fontsize=10]; node [shape=rect, style=filled, fontname=Sans, fontsize=10];
edge []; edge [];
@@ -24,6 +24,7 @@ digraph classes {
PiLiter->LEDBoard; PiLiter->LEDBoard;
PiLiterBarGraph->LEDBarGraph; PiLiterBarGraph->LEDBarGraph;
TrafficLights->LEDBoard; TrafficLights->LEDBoard;
SnowPi->LEDBoard;
PiTraffic->TrafficLights; PiTraffic->TrafficLights;
PiStop->TrafficLights; PiStop->TrafficLights;
TrafficLightsBuzzer->CompositeOutputDevice; TrafficLightsBuzzer->CompositeOutputDevice;

Binary file not shown.

Before

Width:  |  Height:  |  Size: 58 KiB

After

Width:  |  Height:  |  Size: 62 KiB

View File

@@ -1,228 +1,238 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?> <?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" <!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"> "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 2.36.0 (20140111.2315) <!-- Generated by graphviz version 2.38.0 (20140413.2041)
--> -->
<!-- Title: classes Pages: 1 --> <!-- Title: classes Pages: 1 -->
<svg width="733pt" height="476pt" <svg width="845pt" height="462pt"
viewBox="0.00 0.00 733.00 476.00" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"> viewBox="0.00 0.00 845.00 462.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 472)"> <g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 458)">
<title>classes</title> <title>classes</title>
<polygon fill="white" stroke="none" points="-4,4 -4,-472 729,-472 729,4 -4,4"/> <polygon fill="white" stroke="none" points="-4,4 -4,-458 841,-458 841,4 -4,4"/>
<!-- Device --> <!-- Device -->
<g id="node1" class="node"><title>Device</title> <g id="node1" class="node"><title>Device</title>
<polygon fill="#9ec6e0" stroke="#9ec6e0" points="607,-468 553,-468 553,-432 607,-432 607,-468"/> <polygon fill="#9ec6e0" stroke="#9ec6e0" points="54,-117 0,-117 0,-81 54,-81 54,-117"/>
<text text-anchor="middle" x="580" y="-447.5" font-family="Sans" font-size="10.00" fill="#000000">Device</text> <text text-anchor="middle" x="27" y="-96.5" font-family="Sans" font-size="10.00" fill="#000000">Device</text>
</g> </g>
<!-- CompositeDevice --> <!-- CompositeDevice -->
<g id="node2" class="node"><title>CompositeDevice</title> <g id="node2" class="node"><title>CompositeDevice</title>
<polygon fill="#9ec6e0" stroke="#9ec6e0" points="580.5,-396 479.5,-396 479.5,-360 580.5,-360 580.5,-396"/> <polygon fill="#9ec6e0" stroke="#9ec6e0" points="191,-144 90,-144 90,-108 191,-108 191,-144"/>
<text text-anchor="middle" x="530" y="-375.5" font-family="Sans" font-size="10.00" fill="#000000">CompositeDevice</text> <text text-anchor="middle" x="140.5" y="-123.5" font-family="Sans" font-size="10.00" fill="#000000">CompositeDevice</text>
</g> </g>
<!-- CompositeDevice&#45;&gt;Device --> <!-- CompositeDevice&#45;&gt;Device -->
<g id="edge1" class="edge"><title>CompositeDevice&#45;&gt;Device</title> <g id="edge1" class="edge"><title>CompositeDevice&#45;&gt;Device</title>
<path fill="none" stroke="black" d="M542.36,-396.303C548.233,-404.526 555.369,-414.517 561.842,-423.579"/> <path fill="none" stroke="black" d="M89.9451,-114C81.1791,-111.877 72.2061,-109.705 63.9077,-107.695"/>
<polygon fill="black" stroke="black" points="559.122,-425.793 567.783,-431.896 564.818,-421.724 559.122,-425.793"/> <polygon fill="black" stroke="black" points="64.7221,-104.291 54.1792,-105.339 63.0746,-111.095 64.7221,-104.291"/>
</g> </g>
<!-- CompositeOutputDevice --> <!-- CompositeOutputDevice -->
<g id="node3" class="node"><title>CompositeOutputDevice</title> <g id="node3" class="node"><title>CompositeOutputDevice</title>
<polygon fill="#9ec6e0" stroke="#9ec6e0" points="375,-324 241,-324 241,-288 375,-288 375,-324"/> <polygon fill="#9ec6e0" stroke="#9ec6e0" points="361,-252 227,-252 227,-216 361,-216 361,-252"/>
<text text-anchor="middle" x="308" y="-303.5" font-family="Sans" font-size="10.00" fill="#000000">CompositeOutputDevice</text> <text text-anchor="middle" x="294" y="-231.5" font-family="Sans" font-size="10.00" fill="#000000">CompositeOutputDevice</text>
</g> </g>
<!-- CompositeOutputDevice&#45;&gt;CompositeDevice --> <!-- CompositeOutputDevice&#45;&gt;CompositeDevice -->
<g id="edge2" class="edge"><title>CompositeOutputDevice&#45;&gt;CompositeDevice</title> <g id="edge2" class="edge"><title>CompositeOutputDevice&#45;&gt;CompositeDevice</title>
<path fill="none" stroke="black" d="M362.023,-324.034C394.615,-334.311 436.197,-347.422 469.834,-358.029"/> <path fill="none" stroke="black" d="M242.978,-215.876C237.433,-213.187 231.992,-210.223 227,-207 203.166,-191.61 180.052,-169.109 163.878,-151.725"/>
<polygon fill="black" stroke="black" points="468.958,-361.422 479.547,-361.091 471.063,-354.746 468.958,-361.422"/> <polygon fill="black" stroke="black" points="166.284,-149.169 156.958,-144.142 161.114,-153.888 166.284,-149.169"/>
</g> </g>
<!-- LEDCollection --> <!-- LEDCollection -->
<g id="node4" class="node"><title>LEDCollection</title> <g id="node4" class="node"><title>LEDCollection</title>
<polygon fill="#9ec6e0" stroke="#9ec6e0" points="237,-252 155,-252 155,-216 237,-216 237,-252"/> <polygon fill="#9ec6e0" stroke="#9ec6e0" points="490.5,-306 408.5,-306 408.5,-270 490.5,-270 490.5,-306"/>
<text text-anchor="middle" x="196" y="-231.5" font-family="Sans" font-size="10.00" fill="#000000">LEDCollection</text> <text text-anchor="middle" x="449.5" y="-285.5" font-family="Sans" font-size="10.00" fill="#000000">LEDCollection</text>
</g> </g>
<!-- LEDCollection&#45;&gt;CompositeOutputDevice --> <!-- LEDCollection&#45;&gt;CompositeOutputDevice -->
<g id="edge3" class="edge"><title>LEDCollection&#45;&gt;CompositeOutputDevice</title> <g id="edge3" class="edge"><title>LEDCollection&#45;&gt;CompositeOutputDevice</title>
<path fill="none" stroke="black" d="M223.398,-252.124C237.907,-261.192 255.916,-272.448 271.585,-282.241"/> <path fill="none" stroke="black" d="M408.17,-273.812C392.206,-268.196 373.505,-261.618 355.956,-255.444"/>
<polygon fill="black" stroke="black" points="270.161,-285.478 280.496,-287.81 273.871,-279.542 270.161,-285.478"/> <polygon fill="black" stroke="black" points="356.945,-252.081 346.35,-252.065 354.622,-258.685 356.945,-252.081"/>
</g> </g>
<!-- LEDBoard --> <!-- LEDBoard -->
<g id="node5" class="node"><title>LEDBoard</title> <g id="node5" class="node"><title>LEDBoard</title>
<polygon fill="#2980b9" stroke="#2980b9" points="140,-180 76,-180 76,-144 140,-144 140,-180"/> <polygon fill="#2980b9" stroke="#2980b9" points="610.5,-387 546.5,-387 546.5,-351 610.5,-351 610.5,-387"/>
<text text-anchor="middle" x="108" y="-159.5" font-family="Sans" font-size="10.00" fill="#ffffff">LEDBoard</text> <text text-anchor="middle" x="578.5" y="-366.5" font-family="Sans" font-size="10.00" fill="#ffffff">LEDBoard</text>
</g> </g>
<!-- LEDBoard&#45;&gt;LEDCollection --> <!-- LEDBoard&#45;&gt;LEDCollection -->
<g id="edge4" class="edge"><title>LEDBoard&#45;&gt;LEDCollection</title> <g id="edge4" class="edge"><title>LEDBoard&#45;&gt;LEDCollection</title>
<path fill="none" stroke="black" d="M129.753,-180.303C140.836,-189.119 154.474,-199.968 166.49,-209.526"/> <path fill="none" stroke="black" d="M548.999,-350.822C530.861,-339.254 507.182,-324.152 487.587,-311.654"/>
<polygon fill="black" stroke="black" points="164.493,-212.41 174.497,-215.896 168.85,-206.931 164.493,-212.41"/> <polygon fill="black" stroke="black" points="489.219,-308.544 478.906,-306.117 485.455,-314.446 489.219,-308.544"/>
</g> </g>
<!-- LEDBarGraph --> <!-- LEDBarGraph -->
<g id="node6" class="node"><title>LEDBarGraph</title> <g id="node6" class="node"><title>LEDBarGraph</title>
<polygon fill="#2980b9" stroke="#2980b9" points="243.5,-180 162.5,-180 162.5,-144 243.5,-144 243.5,-180"/> <polygon fill="#2980b9" stroke="#2980b9" points="619,-306 538,-306 538,-270 619,-270 619,-306"/>
<text text-anchor="middle" x="203" y="-159.5" font-family="Sans" font-size="10.00" fill="#ffffff">LEDBarGraph</text> <text text-anchor="middle" x="578.5" y="-285.5" font-family="Sans" font-size="10.00" fill="#ffffff">LEDBarGraph</text>
</g> </g>
<!-- LEDBarGraph&#45;&gt;LEDCollection --> <!-- LEDBarGraph&#45;&gt;LEDCollection -->
<g id="edge5" class="edge"><title>LEDBarGraph&#45;&gt;LEDCollection</title> <g id="edge5" class="edge"><title>LEDBarGraph&#45;&gt;LEDCollection</title>
<path fill="none" stroke="black" d="M201.27,-180.303C200.498,-188.017 199.571,-197.288 198.711,-205.888"/> <path fill="none" stroke="black" d="M537.665,-288C525.958,-288 512.998,-288 500.73,-288"/>
<polygon fill="black" stroke="black" points="195.223,-205.597 197.71,-215.896 202.188,-206.294 195.223,-205.597"/> <polygon fill="black" stroke="black" points="500.63,-284.5 490.63,-288 500.63,-291.5 500.63,-284.5"/>
</g> </g>
<!-- PiLiter --> <!-- PiLiter -->
<g id="node7" class="node"><title>PiLiter</title> <g id="node7" class="node"><title>PiLiter</title>
<polygon fill="#2980b9" stroke="#2980b9" points="54,-108 0,-108 0,-72 54,-72 54,-108"/> <polygon fill="#2980b9" stroke="#2980b9" points="728,-454 674,-454 674,-418 728,-418 728,-454"/>
<text text-anchor="middle" x="27" y="-87.5" font-family="Sans" font-size="10.00" fill="#ffffff">PiLiter</text> <text text-anchor="middle" x="701" y="-433.5" font-family="Sans" font-size="10.00" fill="#ffffff">PiLiter</text>
</g> </g>
<!-- PiLiter&#45;&gt;LEDBoard --> <!-- PiLiter&#45;&gt;LEDBoard -->
<g id="edge6" class="edge"><title>PiLiter&#45;&gt;LEDBoard</title> <g id="edge6" class="edge"><title>PiLiter&#45;&gt;LEDBoard</title>
<path fill="none" stroke="black" d="M47.0225,-108.303C57.1256,-117.035 69.536,-127.76 80.5175,-137.25"/> <path fill="none" stroke="black" d="M673.853,-421.462C658.056,-412.679 637.595,-401.302 619.767,-391.389"/>
<polygon fill="black" stroke="black" points="78.3532,-140.005 88.2078,-143.896 82.9302,-134.709 78.3532,-140.005"/> <polygon fill="black" stroke="black" points="621.163,-388.161 610.723,-386.36 617.762,-394.279 621.163,-388.161"/>
</g> </g>
<!-- PiLiterBarGraph --> <!-- PiLiterBarGraph -->
<g id="node8" class="node"><title>PiLiterBarGraph</title> <g id="node8" class="node"><title>PiLiterBarGraph</title>
<polygon fill="#2980b9" stroke="#2980b9" points="254,-108 162,-108 162,-72 254,-72 254,-108"/> <polygon fill="#2980b9" stroke="#2980b9" points="747,-292 655,-292 655,-256 747,-256 747,-292"/>
<text text-anchor="middle" x="208" y="-87.5" font-family="Sans" font-size="10.00" fill="#ffffff">PiLiterBarGraph</text> <text text-anchor="middle" x="701" y="-271.5" font-family="Sans" font-size="10.00" fill="#ffffff">PiLiterBarGraph</text>
</g> </g>
<!-- PiLiterBarGraph&#45;&gt;LEDBarGraph --> <!-- PiLiterBarGraph&#45;&gt;LEDBarGraph -->
<g id="edge7" class="edge"><title>PiLiterBarGraph&#45;&gt;LEDBarGraph</title> <g id="edge7" class="edge"><title>PiLiterBarGraph&#45;&gt;LEDBarGraph</title>
<path fill="none" stroke="black" d="M206.764,-108.303C206.213,-116.017 205.551,-125.288 204.937,-133.888"/> <path fill="none" stroke="black" d="M654.787,-279.253C646.431,-280.224 637.663,-281.242 629.183,-282.228"/>
<polygon fill="black" stroke="black" points="201.443,-133.672 204.222,-143.896 208.425,-134.17 201.443,-133.672"/> <polygon fill="black" stroke="black" points="628.558,-278.777 619.029,-283.407 629.366,-285.73 628.558,-278.777"/>
</g> </g>
<!-- TrafficLights --> <!-- TrafficLights -->
<g id="node9" class="node"><title>TrafficLights</title> <g id="node9" class="node"><title>TrafficLights</title>
<polygon fill="#2980b9" stroke="#2980b9" points="144,-108 72,-108 72,-72 144,-72 144,-108"/> <polygon fill="#2980b9" stroke="#2980b9" points="737,-400 665,-400 665,-364 737,-364 737,-400"/>
<text text-anchor="middle" x="108" y="-87.5" font-family="Sans" font-size="10.00" fill="#ffffff">TrafficLights</text> <text text-anchor="middle" x="701" y="-379.5" font-family="Sans" font-size="10.00" fill="#ffffff">TrafficLights</text>
</g> </g>
<!-- TrafficLights&#45;&gt;LEDBoard --> <!-- TrafficLights&#45;&gt;LEDBoard -->
<g id="edge8" class="edge"><title>TrafficLights&#45;&gt;LEDBoard</title> <g id="edge8" class="edge"><title>TrafficLights&#45;&gt;LEDBoard</title>
<path fill="none" stroke="black" d="M108,-108.303C108,-116.017 108,-125.288 108,-133.888"/> <path fill="none" stroke="black" d="M664.822,-378.205C651.071,-376.721 635.199,-375.009 620.902,-373.467"/>
<polygon fill="black" stroke="black" points="104.5,-133.896 108,-143.896 111.5,-133.896 104.5,-133.896"/> <polygon fill="black" stroke="black" points="621.14,-369.972 610.822,-372.379 620.389,-376.932 621.14,-369.972"/>
</g>
<!-- SnowPi -->
<g id="node10" class="node"><title>SnowPi</title>
<polygon fill="#2980b9" stroke="#2980b9" points="728,-346 674,-346 674,-310 728,-310 728,-346"/>
<text text-anchor="middle" x="701" y="-325.5" font-family="Sans" font-size="10.00" fill="#ffffff">SnowPi</text>
</g>
<!-- SnowPi&#45;&gt;LEDBoard -->
<g id="edge9" class="edge"><title>SnowPi&#45;&gt;LEDBoard</title>
<path fill="none" stroke="black" d="M673.853,-336.896C658.201,-342.222 637.971,-349.105 620.259,-355.132"/>
<polygon fill="black" stroke="black" points="619.062,-351.842 610.723,-358.376 621.317,-358.469 619.062,-351.842"/>
</g> </g>
<!-- PiTraffic --> <!-- PiTraffic -->
<g id="node10" class="node"><title>PiTraffic</title> <g id="node11" class="node"><title>PiTraffic</title>
<polygon fill="#2980b9" stroke="#2980b9" points="99,-36 45,-36 45,-0 99,-0 99,-36"/> <polygon fill="#2980b9" stroke="#2980b9" points="837,-427 783,-427 783,-391 837,-391 837,-427"/>
<text text-anchor="middle" x="72" y="-15.5" font-family="Sans" font-size="10.00" fill="#ffffff">PiTraffic</text> <text text-anchor="middle" x="810" y="-406.5" font-family="Sans" font-size="10.00" fill="#ffffff">PiTraffic</text>
</g> </g>
<!-- PiTraffic&#45;&gt;TrafficLights --> <!-- PiTraffic&#45;&gt;TrafficLights -->
<g id="edge9" class="edge"><title>PiTraffic&#45;&gt;TrafficLights</title> <g id="edge10" class="edge"><title>PiTraffic&#45;&gt;TrafficLights</title>
<path fill="none" stroke="black" d="M80.8989,-36.3034C84.9968,-44.2716 89.9488,-53.9005 94.4927,-62.7359"/> <path fill="none" stroke="black" d="M782.825,-402.395C772.094,-399.687 759.359,-396.474 747.209,-393.408"/>
<polygon fill="black" stroke="black" points="91.5174,-64.6035 99.2035,-71.8957 97.7425,-61.402 91.5174,-64.6035"/> <polygon fill="black" stroke="black" points="747.749,-389.935 737.197,-390.881 746.036,-396.722 747.749,-389.935"/>
</g> </g>
<!-- PiStop --> <!-- PiStop -->
<g id="node11" class="node"><title>PiStop</title> <g id="node12" class="node"><title>PiStop</title>
<polygon fill="#2980b9" stroke="#2980b9" points="171,-36 117,-36 117,-0 171,-0 171,-36"/> <polygon fill="#2980b9" stroke="#2980b9" points="837,-373 783,-373 783,-337 837,-337 837,-373"/>
<text text-anchor="middle" x="144" y="-15.5" font-family="Sans" font-size="10.00" fill="#ffffff">PiStop</text> <text text-anchor="middle" x="810" y="-352.5" font-family="Sans" font-size="10.00" fill="#ffffff">PiStop</text>
</g> </g>
<!-- PiStop&#45;&gt;TrafficLights --> <!-- PiStop&#45;&gt;TrafficLights -->
<g id="edge10" class="edge"><title>PiStop&#45;&gt;TrafficLights</title> <g id="edge11" class="edge"><title>PiStop&#45;&gt;TrafficLights</title>
<path fill="none" stroke="black" d="M135.101,-36.3034C131.003,-44.2716 126.051,-53.9005 121.507,-62.7359"/> <path fill="none" stroke="black" d="M782.825,-361.605C772.094,-364.313 759.359,-367.526 747.209,-370.592"/>
<polygon fill="black" stroke="black" points="118.258,-61.402 116.797,-71.8957 124.483,-64.6035 118.258,-61.402"/> <polygon fill="black" stroke="black" points="746.036,-367.278 737.197,-373.119 747.749,-374.065 746.036,-367.278"/>
</g> </g>
<!-- TrafficLightsBuzzer --> <!-- TrafficLightsBuzzer -->
<g id="node12" class="node"><title>TrafficLightsBuzzer</title> <g id="node13" class="node"><title>TrafficLightsBuzzer</title>
<polygon fill="#2980b9" stroke="#2980b9" points="360.5,-252 255.5,-252 255.5,-216 360.5,-216 360.5,-252"/> <polygon fill="#2980b9" stroke="#2980b9" points="502,-252 397,-252 397,-216 502,-216 502,-252"/>
<text text-anchor="middle" x="308" y="-231.5" font-family="Sans" font-size="10.00" fill="#ffffff">TrafficLightsBuzzer</text> <text text-anchor="middle" x="449.5" y="-231.5" font-family="Sans" font-size="10.00" fill="#ffffff">TrafficLightsBuzzer</text>
</g> </g>
<!-- TrafficLightsBuzzer&#45;&gt;CompositeOutputDevice --> <!-- TrafficLightsBuzzer&#45;&gt;CompositeOutputDevice -->
<g id="edge11" class="edge"><title>TrafficLightsBuzzer&#45;&gt;CompositeOutputDevice</title> <g id="edge12" class="edge"><title>TrafficLightsBuzzer&#45;&gt;CompositeOutputDevice</title>
<path fill="none" stroke="black" d="M308,-252.303C308,-260.017 308,-269.288 308,-277.888"/> <path fill="none" stroke="black" d="M396.96,-234C388.696,-234 379.995,-234 371.3,-234"/>
<polygon fill="black" stroke="black" points="304.5,-277.896 308,-287.896 311.5,-277.896 304.5,-277.896"/> <polygon fill="black" stroke="black" points="371.125,-230.5 361.124,-234 371.124,-237.5 371.125,-230.5"/>
</g> </g>
<!-- FishDish --> <!-- FishDish -->
<g id="node13" class="node"><title>FishDish</title> <g id="node14" class="node"><title>FishDish</title>
<polygon fill="#2980b9" stroke="#2980b9" points="324,-180 268,-180 268,-144 324,-144 324,-180"/> <polygon fill="#2980b9" stroke="#2980b9" points="606.5,-252 550.5,-252 550.5,-216 606.5,-216 606.5,-252"/>
<text text-anchor="middle" x="296" y="-159.5" font-family="Sans" font-size="10.00" fill="#ffffff">FishDish</text> <text text-anchor="middle" x="578.5" y="-231.5" font-family="Sans" font-size="10.00" fill="#ffffff">FishDish</text>
</g> </g>
<!-- FishDish&#45;&gt;TrafficLightsBuzzer --> <!-- FishDish&#45;&gt;TrafficLightsBuzzer -->
<g id="edge12" class="edge"><title>FishDish&#45;&gt;TrafficLightsBuzzer</title> <g id="edge13" class="edge"><title>FishDish&#45;&gt;TrafficLightsBuzzer</title>
<path fill="none" stroke="black" d="M298.966,-180.303C300.289,-188.017 301.878,-197.288 303.352,-205.888"/> <path fill="none" stroke="black" d="M550.255,-234C539.046,-234 525.57,-234 512.2,-234"/>
<polygon fill="black" stroke="black" points="299.928,-206.631 305.068,-215.896 306.828,-205.448 299.928,-206.631"/> <polygon fill="black" stroke="black" points="512.036,-230.5 502.036,-234 512.036,-237.5 512.036,-230.5"/>
</g> </g>
<!-- TrafficHat --> <!-- TrafficHat -->
<g id="node14" class="node"><title>TrafficHat</title> <g id="node15" class="node"><title>TrafficHat</title>
<polygon fill="#2980b9" stroke="#2980b9" points="403.5,-180 342.5,-180 342.5,-144 403.5,-144 403.5,-180"/> <polygon fill="#2980b9" stroke="#2980b9" points="609,-198 548,-198 548,-162 609,-162 609,-198"/>
<text text-anchor="middle" x="373" y="-159.5" font-family="Sans" font-size="10.00" fill="#ffffff">TrafficHat</text> <text text-anchor="middle" x="578.5" y="-177.5" font-family="Sans" font-size="10.00" fill="#ffffff">TrafficHat</text>
</g> </g>
<!-- TrafficHat&#45;&gt;TrafficLightsBuzzer --> <!-- TrafficHat&#45;&gt;TrafficLightsBuzzer -->
<g id="edge13" class="edge"><title>TrafficHat&#45;&gt;TrafficLightsBuzzer</title> <g id="edge14" class="edge"><title>TrafficHat&#45;&gt;TrafficLightsBuzzer</title>
<path fill="none" stroke="black" d="M356.933,-180.303C349.061,-188.78 339.445,-199.136 330.827,-208.417"/> <path fill="none" stroke="black" d="M547.724,-192.661C534.246,-198.392 517.911,-205.337 502.51,-211.886"/>
<polygon fill="black" stroke="black" points="328.122,-206.186 323.883,-215.896 333.252,-210.949 328.122,-206.186"/> <polygon fill="black" stroke="black" points="500.908,-208.763 493.075,-215.897 503.647,-215.205 500.908,-208.763"/>
</g> </g>
<!-- Robot --> <!-- Robot -->
<g id="node15" class="node"><title>Robot</title> <g id="node16" class="node"><title>Robot</title>
<polygon fill="#2980b9" stroke="#2980b9" points="485,-324 431,-324 431,-288 485,-288 485,-324"/> <polygon fill="#2980b9" stroke="#2980b9" points="321,-198 267,-198 267,-162 321,-162 321,-198"/>
<text text-anchor="middle" x="458" y="-303.5" font-family="Sans" font-size="10.00" fill="#ffffff">Robot</text> <text text-anchor="middle" x="294" y="-177.5" font-family="Sans" font-size="10.00" fill="#ffffff">Robot</text>
</g> </g>
<!-- Robot&#45;&gt;CompositeDevice --> <!-- Robot&#45;&gt;CompositeDevice -->
<g id="edge14" class="edge"><title>Robot&#45;&gt;CompositeDevice</title> <g id="edge15" class="edge"><title>Robot&#45;&gt;CompositeDevice</title>
<path fill="none" stroke="black" d="M475.798,-324.303C484.604,-332.865 495.382,-343.344 505.001,-352.696"/> <path fill="none" stroke="black" d="M266.956,-170.717C248.746,-164.226 223.673,-155.289 200.727,-147.111"/>
<polygon fill="black" stroke="black" points="502.797,-355.434 512.407,-359.896 507.677,-350.415 502.797,-355.434"/> <polygon fill="black" stroke="black" points="201.644,-143.722 191.049,-143.661 199.294,-150.316 201.644,-143.722"/>
</g> </g>
<!-- RyanteckRobot --> <!-- RyanteckRobot -->
<g id="node16" class="node"><title>RyanteckRobot</title> <g id="node17" class="node"><title>RyanteckRobot</title>
<polygon fill="#2980b9" stroke="#2980b9" points="465,-252 379,-252 379,-216 465,-216 465,-252"/> <polygon fill="#2980b9" stroke="#2980b9" points="492.5,-198 406.5,-198 406.5,-162 492.5,-162 492.5,-198"/>
<text text-anchor="middle" x="422" y="-231.5" font-family="Sans" font-size="10.00" fill="#ffffff">RyanteckRobot</text> <text text-anchor="middle" x="449.5" y="-177.5" font-family="Sans" font-size="10.00" fill="#ffffff">RyanteckRobot</text>
</g> </g>
<!-- RyanteckRobot&#45;&gt;Robot --> <!-- RyanteckRobot&#45;&gt;Robot -->
<g id="edge15" class="edge"><title>RyanteckRobot&#45;&gt;Robot</title> <g id="edge16" class="edge"><title>RyanteckRobot&#45;&gt;Robot</title>
<path fill="none" stroke="black" d="M430.899,-252.303C434.997,-260.272 439.949,-269.9 444.493,-278.736"/> <path fill="none" stroke="black" d="M406.149,-180C382.707,-180 353.867,-180 331.439,-180"/>
<polygon fill="black" stroke="black" points="441.517,-280.604 449.203,-287.896 447.742,-277.402 441.517,-280.604"/> <polygon fill="black" stroke="black" points="331.313,-176.5 321.313,-180 331.313,-183.5 331.313,-176.5"/>
</g> </g>
<!-- CamJamKitRobot --> <!-- CamJamKitRobot -->
<g id="node17" class="node"><title>CamJamKitRobot</title> <g id="node18" class="node"><title>CamJamKitRobot</title>
<polygon fill="#2980b9" stroke="#2980b9" points="579,-252 483,-252 483,-216 579,-216 579,-252"/> <polygon fill="#2980b9" stroke="#2980b9" points="497.5,-144 401.5,-144 401.5,-108 497.5,-108 497.5,-144"/>
<text text-anchor="middle" x="531" y="-231.5" font-family="Sans" font-size="10.00" fill="#ffffff">CamJamKitRobot</text> <text text-anchor="middle" x="449.5" y="-123.5" font-family="Sans" font-size="10.00" fill="#ffffff">CamJamKitRobot</text>
</g> </g>
<!-- CamJamKitRobot&#45;&gt;Robot --> <!-- CamJamKitRobot&#45;&gt;Robot -->
<g id="edge16" class="edge"><title>CamJamKitRobot&#45;&gt;Robot</title> <g id="edge17" class="edge"><title>CamJamKitRobot&#45;&gt;Robot</title>
<path fill="none" stroke="black" d="M512.955,-252.303C503.938,-260.95 492.882,-271.551 483.057,-280.973"/> <path fill="none" stroke="black" d="M401.192,-142.642C378.531,-150.615 351.832,-160.007 330.875,-167.379"/>
<polygon fill="black" stroke="black" points="480.633,-278.448 475.837,-287.896 485.478,-283.501 480.633,-278.448"/> <polygon fill="black" stroke="black" points="329.661,-164.096 321.389,-170.717 331.984,-170.7 329.661,-164.096"/>
</g> </g>
<!-- Motor --> <!-- Motor -->
<g id="node18" class="node"><title>Motor</title> <g id="node19" class="node"><title>Motor</title>
<polygon fill="#2980b9" stroke="#2980b9" points="557,-324 503,-324 503,-288 557,-288 557,-324"/> <polygon fill="#2980b9" stroke="#2980b9" points="321,-144 267,-144 267,-108 321,-108 321,-144"/>
<text text-anchor="middle" x="530" y="-303.5" font-family="Sans" font-size="10.00" fill="#ffffff">Motor</text> <text text-anchor="middle" x="294" y="-123.5" font-family="Sans" font-size="10.00" fill="#ffffff">Motor</text>
</g> </g>
<!-- Motor&#45;&gt;CompositeDevice --> <!-- Motor&#45;&gt;CompositeDevice -->
<g id="edge17" class="edge"><title>Motor&#45;&gt;CompositeDevice</title> <g id="edge18" class="edge"><title>Motor&#45;&gt;CompositeDevice</title>
<path fill="none" stroke="black" d="M530,-324.303C530,-332.017 530,-341.288 530,-349.888"/> <path fill="none" stroke="black" d="M266.956,-126C248.908,-126 224.12,-126 201.342,-126"/>
<polygon fill="black" stroke="black" points="526.5,-349.896 530,-359.896 533.5,-349.896 526.5,-349.896"/> <polygon fill="black" stroke="black" points="201.049,-122.5 191.049,-126 201.049,-129.5 201.049,-122.5"/>
</g> </g>
<!-- Servo --> <!-- Servo -->
<g id="node19" class="node"><title>Servo</title> <g id="node20" class="node"><title>Servo</title>
<polygon fill="#2980b9" stroke="#2980b9" points="629,-324 575,-324 575,-288 629,-288 629,-324"/> <polygon fill="#2980b9" stroke="#2980b9" points="321,-90 267,-90 267,-54 321,-54 321,-90"/>
<text text-anchor="middle" x="602" y="-303.5" font-family="Sans" font-size="10.00" fill="#ffffff">Servo</text> <text text-anchor="middle" x="294" y="-69.5" font-family="Sans" font-size="10.00" fill="#ffffff">Servo</text>
</g> </g>
<!-- Servo&#45;&gt;CompositeDevice --> <!-- Servo&#45;&gt;CompositeDevice -->
<g id="edge18" class="edge"><title>Servo&#45;&gt;CompositeDevice</title> <g id="edge19" class="edge"><title>Servo&#45;&gt;CompositeDevice</title>
<path fill="none" stroke="black" d="M584.202,-324.303C575.396,-332.865 564.618,-343.344 554.999,-352.696"/> <path fill="none" stroke="black" d="M266.956,-81.2829C248.746,-87.7738 223.673,-96.7105 200.727,-104.889"/>
<polygon fill="black" stroke="black" points="552.323,-350.415 547.593,-359.896 557.203,-355.434 552.323,-350.415"/> <polygon fill="black" stroke="black" points="199.294,-101.684 191.049,-108.339 201.644,-108.278 199.294,-101.684"/>
</g> </g>
<!-- AngularServo --> <!-- AngularServo -->
<g id="node20" class="node"><title>AngularServo</title> <g id="node21" class="node"><title>AngularServo</title>
<polygon fill="#2980b9" stroke="#2980b9" points="678.5,-252 597.5,-252 597.5,-216 678.5,-216 678.5,-252"/> <polygon fill="#2980b9" stroke="#2980b9" points="490,-90 409,-90 409,-54 490,-54 490,-90"/>
<text text-anchor="middle" x="638" y="-231.5" font-family="Sans" font-size="10.00" fill="#ffffff">AngularServo</text> <text text-anchor="middle" x="449.5" y="-69.5" font-family="Sans" font-size="10.00" fill="#ffffff">AngularServo</text>
</g> </g>
<!-- AngularServo&#45;&gt;Servo --> <!-- AngularServo&#45;&gt;Servo -->
<g id="edge19" class="edge"><title>AngularServo&#45;&gt;Servo</title> <g id="edge20" class="edge"><title>AngularServo&#45;&gt;Servo</title>
<path fill="none" stroke="black" d="M629.101,-252.303C625.003,-260.272 620.051,-269.9 615.507,-278.736"/> <path fill="none" stroke="black" d="M408.97,-72C385.09,-72 354.867,-72 331.545,-72"/>
<polygon fill="black" stroke="black" points="612.258,-277.402 610.797,-287.896 618.483,-280.604 612.258,-277.402"/> <polygon fill="black" stroke="black" points="331.363,-68.5001 321.363,-72 331.363,-75.5001 331.363,-68.5001"/>
</g> </g>
<!-- Energenie --> <!-- Energenie -->
<g id="node21" class="node"><title>Energenie</title> <g id="node22" class="node"><title>Energenie</title>
<polygon fill="#2980b9" stroke="#2980b9" points="663.5,-396 598.5,-396 598.5,-360 663.5,-360 663.5,-396"/> <polygon fill="#2980b9" stroke="#2980b9" points="173,-90 108,-90 108,-54 173,-54 173,-90"/>
<text text-anchor="middle" x="631" y="-375.5" font-family="Sans" font-size="10.00" fill="#ffffff">Energenie</text> <text text-anchor="middle" x="140.5" y="-69.5" font-family="Sans" font-size="10.00" fill="#ffffff">Energenie</text>
</g> </g>
<!-- Energenie&#45;&gt;Device --> <!-- Energenie&#45;&gt;Device -->
<g id="edge20" class="edge"><title>Energenie&#45;&gt;Device</title> <g id="edge21" class="edge"><title>Energenie&#45;&gt;Device</title>
<path fill="none" stroke="black" d="M618.393,-396.303C612.403,-404.526 605.124,-414.517 598.521,-423.579"/> <path fill="none" stroke="black" d="M107.847,-79.6649C94.1694,-82.9769 78.0958,-86.8692 63.9692,-90.29"/>
<polygon fill="black" stroke="black" points="595.522,-421.752 592.462,-431.896 601.179,-425.874 595.522,-421.752"/> <polygon fill="black" stroke="black" points="62.9844,-86.9272 54.089,-92.6825 64.6319,-93.7306 62.9844,-86.9272"/>
</g> </g>
<!-- ButtonBoard --> <!-- ButtonBoard -->
<g id="node22" class="node"><title>ButtonBoard</title> <g id="node23" class="node"><title>ButtonBoard</title>
<polygon fill="#2980b9" stroke="#2980b9" points="724.5,-324 647.5,-324 647.5,-288 724.5,-288 724.5,-324"/> <polygon fill="#2980b9" stroke="#2980b9" points="332.5,-36 255.5,-36 255.5,-0 332.5,-0 332.5,-36"/>
<text text-anchor="middle" x="686" y="-303.5" font-family="Sans" font-size="10.00" fill="#ffffff">ButtonBoard</text> <text text-anchor="middle" x="294" y="-15.5" font-family="Sans" font-size="10.00" fill="#ffffff">ButtonBoard</text>
</g> </g>
<!-- ButtonBoard&#45;&gt;CompositeDevice --> <!-- ButtonBoard&#45;&gt;CompositeDevice -->
<g id="edge21" class="edge"><title>ButtonBoard&#45;&gt;CompositeDevice</title> <g id="edge22" class="edge"><title>ButtonBoard&#45;&gt;CompositeDevice</title>
<path fill="none" stroke="black" d="M647.838,-324.124C626.607,-333.651 599.992,-345.593 577.431,-355.717"/> <path fill="none" stroke="black" d="M255.244,-28.9887C245.394,-33.0006 235.241,-38.2594 227,-45 204.672,-63.2615 212.28,-79.5278 191,-99 189.894,-100.012 188.744,-100.999 187.557,-101.962"/>
<polygon fill="black" stroke="black" points="575.729,-352.644 568.038,-359.932 578.594,-359.031 575.729,-352.644"/> <polygon fill="black" stroke="black" points="185.354,-99.2363 179.313,-107.94 189.463,-104.903 185.354,-99.2363"/>
</g> </g>
</g> </g>
</svg> </svg>

Before

Width:  |  Height:  |  Size: 14 KiB

After

Width:  |  Height:  |  Size: 15 KiB

View File

@@ -1,7 +1,7 @@
/* vim: set et sw=4 sts=4: */ /* vim: set et sw=4 sts=4: */
digraph classes { digraph classes {
graph [rankdir=BT]; graph [rankdir=RL];
node [shape=rect, style=filled, fontname=Sans, fontsize=10]; node [shape=rect, style=filled, fontname=Sans, fontsize=10];
edge []; edge [];
@@ -60,11 +60,21 @@ digraph classes {
SPIDevice->Device; SPIDevice->Device;
AnalogInputDevice->SPIDevice; AnalogInputDevice->SPIDevice;
MCP3xxx->AnalogInputDevice; MCP3xxx->AnalogInputDevice;
MCP30xx->MCP3xxx;
MCP32xx->MCP3xxx;
MCP33xx->MCP3xxx; MCP33xx->MCP3xxx;
MCP3004->MCP3xxx; MCP3xx2->MCP3xxx;
MCP3008->MCP3xxx;
MCP3204->MCP3xxx; MCP3001->MCP30xx;
MCP3208->MCP3xxx; MCP3002->MCP30xx;
MCP3004->MCP30xx;
MCP3008->MCP30xx;
MCP3201->MCP32xx;
MCP3202->MCP32xx;
MCP3204->MCP32xx;
MCP3208->MCP32xx;
MCP3002->MCP3xx2;
MCP3202->MCP3xx2;
MCP3301->MCP33xx; MCP3301->MCP33xx;
MCP3302->MCP33xx; MCP3302->MCP33xx;
MCP3304->MCP33xx; MCP3304->MCP33xx;
@@ -75,10 +85,15 @@ digraph classes {
LEDCollection->CompositeOutputDevice; LEDCollection->CompositeOutputDevice;
LEDBoard->LEDCollection; LEDBoard->LEDCollection;
LEDBarGraph->LEDCollection; LEDBarGraph->LEDCollection;
LedBorg->RGBLED;
ButtonBoard->CompositeDevice;
ButtonBoard->HoldMixin;
PiLiter->LEDBoard; PiLiter->LEDBoard;
PiLiterBarGraph->LEDBarGraph; PiLiterBarGraph->LEDBarGraph;
TrafficLights->LEDBoard; TrafficLights->LEDBoard;
SnowPi->LEDBoard;
PiTraffic->TrafficLights; PiTraffic->TrafficLights;
PiStop->TrafficLights;
TrafficLightsBuzzer->CompositeOutputDevice; TrafficLightsBuzzer->CompositeOutputDevice;
FishDish->TrafficLightsBuzzer; FishDish->TrafficLightsBuzzer;
TrafficHat->TrafficLightsBuzzer; TrafficHat->TrafficLightsBuzzer;
@@ -90,10 +105,14 @@ digraph classes {
CamJamKitRobot->Robot; CamJamKitRobot->Robot;
Motor->CompositeDevice; Motor->CompositeDevice;
Motor->SourceMixin; Motor->SourceMixin;
Servo->CompositeDevice;
Servo->SourceMixin;
AngularServo->Servo;
InternalDevice->Device; InternalDevice->Device;
InternalDevice->EventsMixin; InternalDevice->EventsMixin;
TimeOfDay->InternalDevice; TimeOfDay->InternalDevice;
PingServer->InternalDevice; PingServer->InternalDevice;
CPUTemperature->InternalDevice;
} }

Binary file not shown.

Binary file not shown.

Before

Width:  |  Height:  |  Size: 164 KiB

After

Width:  |  Height:  |  Size: 247 KiB

File diff suppressed because it is too large Load Diff

Before

Width:  |  Height:  |  Size: 36 KiB

After

Width:  |  Height:  |  Size: 46 KiB

View File

@@ -1,7 +1,7 @@
/* vim: set et sw=4 sts=4: */ /* vim: set et sw=4 sts=4: */
digraph classes { digraph classes {
graph [rankdir=BT]; graph [rankdir=RL];
node [shape=rect, style=filled, fontname=Sans, fontsize=10]; node [shape=rect, style=filled, fontname=Sans, fontsize=10];
edge []; edge [];

Binary file not shown.

Before

Width:  |  Height:  |  Size: 28 KiB

After

Width:  |  Height:  |  Size: 28 KiB

View File

@@ -1,108 +1,108 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?> <?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" <!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"> "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 2.36.0 (20140111.2315) <!-- Generated by graphviz version 2.38.0 (20140413.2041)
--> -->
<!-- Title: classes Pages: 1 --> <!-- Title: classes Pages: 1 -->
<svg width="453pt" height="332pt" <svg width="566pt" height="260pt"
viewBox="0.00 0.00 453.00 332.00" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"> viewBox="0.00 0.00 566.00 260.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 328)"> <g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 256)">
<title>classes</title> <title>classes</title>
<polygon fill="white" stroke="none" points="-4,4 -4,-328 449,-328 449,4 -4,4"/> <polygon fill="white" stroke="none" points="-4,4 -4,-256 562,-256 562,4 -4,4"/>
<!-- Device --> <!-- Device -->
<g id="node1" class="node"><title>Device</title> <g id="node1" class="node"><title>Device</title>
<polygon fill="#9ec6e0" stroke="#9ec6e0" points="335,-324 281,-324 281,-288 335,-288 335,-324"/> <polygon fill="#9ec6e0" stroke="#9ec6e0" points="54,-103 0,-103 0,-67 54,-67 54,-103"/>
<text text-anchor="middle" x="308" y="-303.5" font-family="Sans" font-size="10.00" fill="#000000">Device</text> <text text-anchor="middle" x="27" y="-82.5" font-family="Sans" font-size="10.00" fill="#000000">Device</text>
</g> </g>
<!-- GPIODevice --> <!-- GPIODevice -->
<g id="node2" class="node"><title>GPIODevice</title> <g id="node2" class="node"><title>GPIODevice</title>
<polygon fill="#9ec6e0" stroke="#9ec6e0" points="344,-252 272,-252 272,-216 344,-216 344,-252"/> <polygon fill="#9ec6e0" stroke="#9ec6e0" points="162,-103 90,-103 90,-67 162,-67 162,-103"/>
<text text-anchor="middle" x="308" y="-231.5" font-family="Sans" font-size="10.00" fill="#000000">GPIODevice</text> <text text-anchor="middle" x="126" y="-82.5" font-family="Sans" font-size="10.00" fill="#000000">GPIODevice</text>
</g> </g>
<!-- GPIODevice&#45;&gt;Device --> <!-- GPIODevice&#45;&gt;Device -->
<g id="edge1" class="edge"><title>GPIODevice&#45;&gt;Device</title> <g id="edge1" class="edge"><title>GPIODevice&#45;&gt;Device</title>
<path fill="none" stroke="black" d="M308,-252.303C308,-260.017 308,-269.288 308,-277.888"/> <path fill="none" stroke="black" d="M89.9808,-85C81.6627,-85 72.77,-85 64.3922,-85"/>
<polygon fill="black" stroke="black" points="304.5,-277.896 308,-287.896 311.5,-277.896 304.5,-277.896"/> <polygon fill="black" stroke="black" points="64.1378,-81.5001 54.1378,-85 64.1377,-88.5001 64.1378,-81.5001"/>
</g> </g>
<!-- SmoothedInputDevice --> <!-- SmoothedInputDevice -->
<g id="node3" class="node"><title>SmoothedInputDevice</title> <g id="node3" class="node"><title>SmoothedInputDevice</title>
<polygon fill="#9ec6e0" stroke="#9ec6e0" points="289.5,-108 166.5,-108 166.5,-72 289.5,-72 289.5,-108"/> <polygon fill="#9ec6e0" stroke="#9ec6e0" points="430,-144 307,-144 307,-108 430,-108 430,-144"/>
<text text-anchor="middle" x="228" y="-87.5" font-family="Sans" font-size="10.00" fill="#000000">SmoothedInputDevice</text> <text text-anchor="middle" x="368.5" y="-123.5" font-family="Sans" font-size="10.00" fill="#000000">SmoothedInputDevice</text>
</g> </g>
<!-- InputDevice --> <!-- InputDevice -->
<g id="node4" class="node"><title>InputDevice</title> <g id="node4" class="node"><title>InputDevice</title>
<polygon fill="#2980b9" stroke="#2980b9" points="344.5,-180 271.5,-180 271.5,-144 344.5,-144 344.5,-180"/> <polygon fill="#2980b9" stroke="#2980b9" points="271,-103 198,-103 198,-67 271,-67 271,-103"/>
<text text-anchor="middle" x="308" y="-159.5" font-family="Sans" font-size="10.00" fill="#ffffff">InputDevice</text> <text text-anchor="middle" x="234.5" y="-82.5" font-family="Sans" font-size="10.00" fill="#ffffff">InputDevice</text>
</g> </g>
<!-- SmoothedInputDevice&#45;&gt;InputDevice --> <!-- SmoothedInputDevice&#45;&gt;InputDevice -->
<g id="edge4" class="edge"><title>SmoothedInputDevice&#45;&gt;InputDevice</title> <g id="edge4" class="edge"><title>SmoothedInputDevice&#45;&gt;InputDevice</title>
<path fill="none" stroke="black" d="M247.775,-108.303C257.754,-117.035 270.011,-127.76 280.857,-137.25"/> <path fill="none" stroke="black" d="M309.219,-107.897C299.683,-104.936 289.93,-101.906 280.77,-99.0612"/>
<polygon fill="black" stroke="black" points="278.622,-139.945 288.452,-143.896 283.231,-134.677 278.622,-139.945"/> <polygon fill="black" stroke="black" points="281.69,-95.6819 271.102,-96.0581 279.613,-102.367 281.69,-95.6819"/>
</g> </g>
<!-- InputDevice&#45;&gt;GPIODevice --> <!-- InputDevice&#45;&gt;GPIODevice -->
<g id="edge2" class="edge"><title>InputDevice&#45;&gt;GPIODevice</title> <g id="edge2" class="edge"><title>InputDevice&#45;&gt;GPIODevice</title>
<path fill="none" stroke="black" d="M308,-180.303C308,-188.017 308,-197.288 308,-205.888"/> <path fill="none" stroke="black" d="M197.741,-85C189.578,-85 180.799,-85 172.296,-85"/>
<polygon fill="black" stroke="black" points="304.5,-205.896 308,-215.896 311.5,-205.896 304.5,-205.896"/> <polygon fill="black" stroke="black" points="172.122,-81.5001 162.122,-85 172.122,-88.5001 172.122,-81.5001"/>
</g> </g>
<!-- DigitalInputDevice --> <!-- DigitalInputDevice -->
<g id="node5" class="node"><title>DigitalInputDevice</title> <g id="node5" class="node"><title>DigitalInputDevice</title>
<polygon fill="#2980b9" stroke="#2980b9" points="439.5,-108 336.5,-108 336.5,-72 439.5,-72 439.5,-108"/> <polygon fill="#2980b9" stroke="#2980b9" points="420,-63 317,-63 317,-27 420,-27 420,-63"/>
<text text-anchor="middle" x="388" y="-87.5" font-family="Sans" font-size="10.00" fill="#ffffff">DigitalInputDevice</text> <text text-anchor="middle" x="368.5" y="-42.5" font-family="Sans" font-size="10.00" fill="#ffffff">DigitalInputDevice</text>
</g> </g>
<!-- DigitalInputDevice&#45;&gt;InputDevice --> <!-- DigitalInputDevice&#45;&gt;InputDevice -->
<g id="edge3" class="edge"><title>DigitalInputDevice&#45;&gt;InputDevice</title> <g id="edge3" class="edge"><title>DigitalInputDevice&#45;&gt;InputDevice</title>
<path fill="none" stroke="black" d="M368.225,-108.303C358.246,-117.035 345.989,-127.76 335.143,-137.25"/> <path fill="none" stroke="black" d="M316.843,-60.3506C305.034,-63.9291 292.532,-67.7177 280.964,-71.2231"/>
<polygon fill="black" stroke="black" points="332.769,-134.677 327.548,-143.896 337.378,-139.945 332.769,-134.677"/> <polygon fill="black" stroke="black" points="279.635,-67.9685 271.08,-74.2182 281.665,-74.6677 279.635,-67.9685"/>
</g> </g>
<!-- Button --> <!-- Button -->
<g id="node6" class="node"><title>Button</title> <g id="node6" class="node"><title>Button</title>
<polygon fill="#2980b9" stroke="#2980b9" points="445,-36 391,-36 391,-0 445,-0 445,-36"/> <polygon fill="#2980b9" stroke="#2980b9" points="539,-36 485,-36 485,-0 539,-0 539,-36"/>
<text text-anchor="middle" x="418" y="-15.5" font-family="Sans" font-size="10.00" fill="#ffffff">Button</text> <text text-anchor="middle" x="512" y="-15.5" font-family="Sans" font-size="10.00" fill="#ffffff">Button</text>
</g> </g>
<!-- Button&#45;&gt;DigitalInputDevice --> <!-- Button&#45;&gt;DigitalInputDevice -->
<g id="edge5" class="edge"><title>Button&#45;&gt;DigitalInputDevice</title> <g id="edge5" class="edge"><title>Button&#45;&gt;DigitalInputDevice</title>
<path fill="none" stroke="black" d="M410.584,-36.3034C407.206,-44.1868 403.13,-53.6958 399.377,-62.4536"/> <path fill="none" stroke="black" d="M484.717,-23.0152C469.335,-25.9502 449.238,-29.785 430.144,-33.4284"/>
<polygon fill="black" stroke="black" points="396.053,-61.3255 395.33,-71.8957 402.487,-64.0829 396.053,-61.3255"/> <polygon fill="black" stroke="black" points="429.447,-29.9981 420.28,-35.3105 430.759,-36.8741 429.447,-29.9981"/>
</g> </g>
<!-- MotionSensor --> <!-- MotionSensor -->
<g id="node7" class="node"><title>MotionSensor</title> <g id="node7" class="node"><title>MotionSensor</title>
<polygon fill="#2980b9" stroke="#2980b9" points="82.5,-36 -0.5,-36 -0.5,-0 82.5,-0 82.5,-36"/> <polygon fill="#2980b9" stroke="#2980b9" points="553.5,-252 470.5,-252 470.5,-216 553.5,-216 553.5,-252"/>
<text text-anchor="middle" x="41" y="-15.5" font-family="Sans" font-size="10.00" fill="#ffffff">MotionSensor</text> <text text-anchor="middle" x="512" y="-231.5" font-family="Sans" font-size="10.00" fill="#ffffff">MotionSensor</text>
</g> </g>
<!-- MotionSensor&#45;&gt;SmoothedInputDevice --> <!-- MotionSensor&#45;&gt;SmoothedInputDevice -->
<g id="edge6" class="edge"><title>MotionSensor&#45;&gt;SmoothedInputDevice</title> <g id="edge6" class="edge"><title>MotionSensor&#45;&gt;SmoothedInputDevice</title>
<path fill="none" stroke="black" d="M82.5014,-34.5353C109.086,-44.4869 143.895,-57.5168 172.8,-68.3368"/> <path fill="none" stroke="black" d="M479.125,-215.734C474.645,-212.92 470.154,-209.962 466,-207 441.533,-189.557 415.537,-167.509 396.698,-150.822"/>
<polygon fill="black" stroke="black" points="171.763,-71.6859 182.356,-71.9139 174.217,-65.1302 171.763,-71.6859"/> <polygon fill="black" stroke="black" points="398.878,-148.077 389.088,-144.028 394.216,-153.299 398.878,-148.077"/>
</g> </g>
<!-- LightSensor --> <!-- LightSensor -->
<g id="node8" class="node"><title>LightSensor</title> <g id="node8" class="node"><title>LightSensor</title>
<polygon fill="#2980b9" stroke="#2980b9" points="175,-36 101,-36 101,-0 175,-0 175,-36"/> <polygon fill="#2980b9" stroke="#2980b9" points="549,-198 475,-198 475,-162 549,-162 549,-198"/>
<text text-anchor="middle" x="138" y="-15.5" font-family="Sans" font-size="10.00" fill="#ffffff">LightSensor</text> <text text-anchor="middle" x="512" y="-177.5" font-family="Sans" font-size="10.00" fill="#ffffff">LightSensor</text>
</g> </g>
<!-- LightSensor&#45;&gt;SmoothedInputDevice --> <!-- LightSensor&#45;&gt;SmoothedInputDevice -->
<g id="edge7" class="edge"><title>LightSensor&#45;&gt;SmoothedInputDevice</title> <g id="edge7" class="edge"><title>LightSensor&#45;&gt;SmoothedInputDevice</title>
<path fill="none" stroke="black" d="M160.247,-36.3034C171.582,-45.1193 185.53,-55.9679 197.819,-65.5258"/> <path fill="none" stroke="black" d="M474.927,-166.234C460.143,-160.592 442.674,-153.925 426.253,-147.659"/>
<polygon fill="black" stroke="black" points="195.966,-68.519 206.009,-71.8957 200.264,-62.9935 195.966,-68.519"/> <polygon fill="black" stroke="black" points="427.325,-144.321 416.734,-144.026 424.829,-150.861 427.325,-144.321"/>
</g> </g>
<!-- LineSensor --> <!-- LineSensor -->
<g id="node9" class="node"><title>LineSensor</title> <g id="node9" class="node"><title>LineSensor</title>
<polygon fill="#2980b9" stroke="#2980b9" points="263,-36 193,-36 193,-0 263,-0 263,-36"/> <polygon fill="#2980b9" stroke="#2980b9" points="547,-144 477,-144 477,-108 547,-108 547,-144"/>
<text text-anchor="middle" x="228" y="-15.5" font-family="Sans" font-size="10.00" fill="#ffffff">LineSensor</text> <text text-anchor="middle" x="512" y="-123.5" font-family="Sans" font-size="10.00" fill="#ffffff">LineSensor</text>
</g> </g>
<!-- LineSensor&#45;&gt;SmoothedInputDevice --> <!-- LineSensor&#45;&gt;SmoothedInputDevice -->
<g id="edge8" class="edge"><title>LineSensor&#45;&gt;SmoothedInputDevice</title> <g id="edge8" class="edge"><title>LineSensor&#45;&gt;SmoothedInputDevice</title>
<path fill="none" stroke="black" d="M228,-36.3034C228,-44.0173 228,-53.2875 228,-61.8876"/> <path fill="none" stroke="black" d="M476.747,-126C465.711,-126 453.043,-126 440.37,-126"/>
<polygon fill="black" stroke="black" points="224.5,-61.8956 228,-71.8957 231.5,-61.8957 224.5,-61.8956"/> <polygon fill="black" stroke="black" points="440.237,-122.5 430.237,-126 440.237,-129.5 440.237,-122.5"/>
</g> </g>
<!-- DistanceSensor --> <!-- DistanceSensor -->
<g id="node10" class="node"><title>DistanceSensor</title> <g id="node10" class="node"><title>DistanceSensor</title>
<polygon fill="#2980b9" stroke="#2980b9" points="373,-36 281,-36 281,-0 373,-0 373,-36"/> <polygon fill="#2980b9" stroke="#2980b9" points="558,-90 466,-90 466,-54 558,-54 558,-90"/>
<text text-anchor="middle" x="327" y="-15.5" font-family="Sans" font-size="10.00" fill="#ffffff">DistanceSensor</text> <text text-anchor="middle" x="512" y="-69.5" font-family="Sans" font-size="10.00" fill="#ffffff">DistanceSensor</text>
</g> </g>
<!-- DistanceSensor&#45;&gt;SmoothedInputDevice --> <!-- DistanceSensor&#45;&gt;SmoothedInputDevice -->
<g id="edge9" class="edge"><title>DistanceSensor&#45;&gt;SmoothedInputDevice</title> <g id="edge9" class="edge"><title>DistanceSensor&#45;&gt;SmoothedInputDevice</title>
<path fill="none" stroke="black" d="M302.782,-36.1239C290.077,-45.1069 274.336,-56.2375 260.577,-65.9659"/> <path fill="none" stroke="black" d="M465.839,-89.2344C453.213,-94.0529 439.33,-99.351 426.131,-104.388"/>
<polygon fill="black" stroke="black" points="258.456,-63.1791 252.311,-71.8102 262.497,-68.8947 258.456,-63.1791"/> <polygon fill="black" stroke="black" points="424.763,-101.164 416.668,-107.999 427.259,-107.704 424.763,-101.164"/>
</g> </g>
</g> </g>
</svg> </svg>

Before

Width:  |  Height:  |  Size: 6.5 KiB

After

Width:  |  Height:  |  Size: 6.5 KiB

View File

@@ -1,7 +1,7 @@
/* vim: set et sw=4 sts=4: */ /* vim: set et sw=4 sts=4: */
digraph classes { digraph classes {
graph [rankdir=BT]; graph [rankdir=RL];
node [shape=rect, style=filled, fontname=Sans, fontsize=10]; node [shape=rect, style=filled, fontname=Sans, fontsize=10];
edge []; edge [];
@@ -16,4 +16,5 @@ digraph classes {
InternalDevice->Device; InternalDevice->Device;
TimeOfDay->InternalDevice; TimeOfDay->InternalDevice;
PingServer->InternalDevice; PingServer->InternalDevice;
CPUTemperature->InternalDevice;
} }

Binary file not shown.

Before

Width:  |  Height:  |  Size: 8.8 KiB

After

Width:  |  Height:  |  Size: 11 KiB

View File

@@ -1,48 +1,58 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?> <?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" <!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"> "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 2.36.0 (20140111.2315) <!-- Generated by graphviz version 2.38.0 (20140413.2041)
--> -->
<!-- Title: classes Pages: 1 --> <!-- Title: classes Pages: 1 -->
<svg width="163pt" height="188pt" <svg width="317pt" height="152pt"
viewBox="0.00 0.00 163.00 188.00" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"> viewBox="0.00 0.00 317.00 152.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 184)"> <g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 148)">
<title>classes</title> <title>classes</title>
<polygon fill="white" stroke="none" points="-4,4 -4,-184 159,-184 159,4 -4,4"/> <polygon fill="white" stroke="none" points="-4,4 -4,-148 313,-148 313,4 -4,4"/>
<!-- Device --> <!-- Device -->
<g id="node1" class="node"><title>Device</title> <g id="node1" class="node"><title>Device</title>
<polygon fill="#9ec6e0" stroke="#9ec6e0" points="104,-180 50,-180 50,-144 104,-144 104,-180"/> <polygon fill="#9ec6e0" stroke="#9ec6e0" points="54,-90 0,-90 0,-54 54,-54 54,-90"/>
<text text-anchor="middle" x="77" y="-159.5" font-family="Sans" font-size="10.00" fill="#000000">Device</text> <text text-anchor="middle" x="27" y="-69.5" font-family="Sans" font-size="10.00" fill="#000000">Device</text>
</g> </g>
<!-- InternalDevice --> <!-- InternalDevice -->
<g id="node2" class="node"><title>InternalDevice</title> <g id="node2" class="node"><title>InternalDevice</title>
<polygon fill="#9ec6e0" stroke="#9ec6e0" points="119.5,-108 34.5,-108 34.5,-72 119.5,-72 119.5,-108"/> <polygon fill="#9ec6e0" stroke="#9ec6e0" points="175,-90 90,-90 90,-54 175,-54 175,-90"/>
<text text-anchor="middle" x="77" y="-87.5" font-family="Sans" font-size="10.00" fill="#000000">InternalDevice</text> <text text-anchor="middle" x="132.5" y="-69.5" font-family="Sans" font-size="10.00" fill="#000000">InternalDevice</text>
</g> </g>
<!-- InternalDevice&#45;&gt;Device --> <!-- InternalDevice&#45;&gt;Device -->
<g id="edge1" class="edge"><title>InternalDevice&#45;&gt;Device</title> <g id="edge1" class="edge"><title>InternalDevice&#45;&gt;Device</title>
<path fill="none" stroke="black" d="M77,-108.303C77,-116.017 77,-125.288 77,-133.888"/> <path fill="none" stroke="black" d="M89.999,-72C81.4576,-72 72.5283,-72 64.1926,-72"/>
<polygon fill="black" stroke="black" points="73.5001,-133.896 77,-143.896 80.5001,-133.896 73.5001,-133.896"/> <polygon fill="black" stroke="black" points="64.0256,-68.5001 54.0256,-72 64.0255,-75.5001 64.0256,-68.5001"/>
</g> </g>
<!-- TimeOfDay --> <!-- TimeOfDay -->
<g id="node3" class="node"><title>TimeOfDay</title> <g id="node3" class="node"><title>TimeOfDay</title>
<polygon fill="#2980b9" stroke="#2980b9" points="68.5,-36 -0.5,-36 -0.5,-0 68.5,-0 68.5,-36"/> <polygon fill="#2980b9" stroke="#2980b9" points="294.5,-144 225.5,-144 225.5,-108 294.5,-108 294.5,-144"/>
<text text-anchor="middle" x="34" y="-15.5" font-family="Sans" font-size="10.00" fill="#ffffff">TimeOfDay</text> <text text-anchor="middle" x="260" y="-123.5" font-family="Sans" font-size="10.00" fill="#ffffff">TimeOfDay</text>
</g> </g>
<!-- TimeOfDay&#45;&gt;InternalDevice --> <!-- TimeOfDay&#45;&gt;InternalDevice -->
<g id="edge2" class="edge"><title>TimeOfDay&#45;&gt;InternalDevice</title> <g id="edge2" class="edge"><title>TimeOfDay&#45;&gt;InternalDevice</title>
<path fill="none" stroke="black" d="M44.6292,-36.3034C49.6281,-44.4411 55.691,-54.311 61.2121,-63.2987"/> <path fill="none" stroke="black" d="M225.368,-111.529C212.862,-106.148 198.372,-99.9132 184.65,-94.0087"/>
<polygon fill="black" stroke="black" points="58.2766,-65.2069 66.4931,-71.8957 64.2411,-61.5429 58.2766,-65.2069"/> <polygon fill="black" stroke="black" points="185.875,-90.7257 175.306,-89.9883 183.108,-97.1558 185.875,-90.7257"/>
</g> </g>
<!-- PingServer --> <!-- PingServer -->
<g id="node4" class="node"><title>PingServer</title> <g id="node4" class="node"><title>PingServer</title>
<polygon fill="#2980b9" stroke="#2980b9" points="155,-36 87,-36 87,-0 155,-0 155,-36"/> <polygon fill="#2980b9" stroke="#2980b9" points="294,-90 226,-90 226,-54 294,-54 294,-90"/>
<text text-anchor="middle" x="121" y="-15.5" font-family="Sans" font-size="10.00" fill="#ffffff">PingServer</text> <text text-anchor="middle" x="260" y="-69.5" font-family="Sans" font-size="10.00" fill="#ffffff">PingServer</text>
</g> </g>
<!-- PingServer&#45;&gt;InternalDevice --> <!-- PingServer&#45;&gt;InternalDevice -->
<g id="edge3" class="edge"><title>PingServer&#45;&gt;InternalDevice</title> <g id="edge3" class="edge"><title>PingServer&#45;&gt;InternalDevice</title>
<path fill="none" stroke="black" d="M110.124,-36.3034C105.008,-44.4411 98.8045,-54.311 93.1551,-63.2987"/> <path fill="none" stroke="black" d="M225.698,-72C213.314,-72 198.952,-72 185.303,-72"/>
<polygon fill="black" stroke="black" points="90.1098,-61.5667 87.7513,-71.8957 96.0363,-65.2919 90.1098,-61.5667"/> <polygon fill="black" stroke="black" points="185.049,-68.5001 175.049,-72 185.049,-75.5001 185.049,-68.5001"/>
</g>
<!-- CPUTemperature -->
<g id="node5" class="node"><title>CPUTemperature</title>
<polygon fill="#2980b9" stroke="#2980b9" points="309,-36 211,-36 211,-0 309,-0 309,-36"/>
<text text-anchor="middle" x="260" y="-15.5" font-family="Sans" font-size="10.00" fill="#ffffff">CPUTemperature</text>
</g>
<!-- CPUTemperature&#45;&gt;InternalDevice -->
<g id="edge4" class="edge"><title>CPUTemperature&#45;&gt;InternalDevice</title>
<path fill="none" stroke="black" d="M216.861,-36.1314C206.507,-40.5867 195.31,-45.4043 184.585,-50.0191"/>
<polygon fill="black" stroke="black" points="183.117,-46.8407 175.314,-54.0082 185.883,-53.2707 183.117,-46.8407"/>
</g> </g>
</g> </g>
</svg> </svg>

Before

Width:  |  Height:  |  Size: 2.7 KiB

After

Width:  |  Height:  |  Size: 3.3 KiB

View File

@@ -1,7 +1,7 @@
/* vim: set et sw=4 sts=4: */ /* vim: set et sw=4 sts=4: */
digraph classes { digraph classes {
graph [rankdir=BT]; graph [rankdir=RL];
node [shape=rect, style=filled, fontname=Sans, fontsize=10]; node [shape=rect, style=filled, fontname=Sans, fontsize=10];
edge []; edge [];

Binary file not shown.

Before

Width:  |  Height:  |  Size: 22 KiB

After

Width:  |  Height:  |  Size: 21 KiB

View File

@@ -1,108 +1,108 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?> <?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" <!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"> "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 2.36.0 (20140111.2315) <!-- Generated by graphviz version 2.38.0 (20140413.2041)
--> -->
<!-- Title: classes Pages: 1 --> <!-- Title: classes Pages: 1 -->
<svg width="259pt" height="332pt" <svg width="530pt" height="179pt"
viewBox="0.00 0.00 259.00 332.00" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"> viewBox="0.00 0.00 530.00 179.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 328)"> <g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 175)">
<title>classes</title> <title>classes</title>
<polygon fill="white" stroke="none" points="-4,4 -4,-328 255,-328 255,4 -4,4"/> <polygon fill="white" stroke="none" points="-4,4 -4,-175 526,-175 526,4 -4,4"/>
<!-- Device --> <!-- Device -->
<g id="node1" class="node"><title>Device</title> <g id="node1" class="node"><title>Device</title>
<polygon fill="#9ec6e0" stroke="#9ec6e0" points="206,-324 152,-324 152,-288 206,-288 206,-324"/> <polygon fill="#9ec6e0" stroke="#9ec6e0" points="54,-63 0,-63 0,-27 54,-27 54,-63"/>
<text text-anchor="middle" x="179" y="-303.5" font-family="Sans" font-size="10.00" fill="#000000">Device</text> <text text-anchor="middle" x="27" y="-42.5" font-family="Sans" font-size="10.00" fill="#000000">Device</text>
</g> </g>
<!-- GPIODevice --> <!-- GPIODevice -->
<g id="node2" class="node"><title>GPIODevice</title> <g id="node2" class="node"><title>GPIODevice</title>
<polygon fill="#9ec6e0" stroke="#9ec6e0" points="173,-252 101,-252 101,-216 173,-216 173,-252"/> <polygon fill="#9ec6e0" stroke="#9ec6e0" points="162,-90 90,-90 90,-54 162,-54 162,-90"/>
<text text-anchor="middle" x="137" y="-231.5" font-family="Sans" font-size="10.00" fill="#000000">GPIODevice</text> <text text-anchor="middle" x="126" y="-69.5" font-family="Sans" font-size="10.00" fill="#000000">GPIODevice</text>
</g> </g>
<!-- GPIODevice&#45;&gt;Device --> <!-- GPIODevice&#45;&gt;Device -->
<g id="edge1" class="edge"><title>GPIODevice&#45;&gt;Device</title> <g id="edge1" class="edge"><title>GPIODevice&#45;&gt;Device</title>
<path fill="none" stroke="black" d="M147.382,-252.303C152.265,-260.441 158.187,-270.311 163.579,-279.299"/> <path fill="none" stroke="black" d="M89.9808,-62.2524C81.4779,-59.8856 72.3745,-57.3517 63.8345,-54.9745"/>
<polygon fill="black" stroke="black" points="160.591,-281.121 168.737,-287.896 166.594,-277.52 160.591,-281.121"/> <polygon fill="black" stroke="black" points="64.7101,-51.5853 54.1378,-52.2755 62.833,-58.3289 64.7101,-51.5853"/>
</g> </g>
<!-- OutputDevice --> <!-- OutputDevice -->
<g id="node3" class="node"><title>OutputDevice</title> <g id="node3" class="node"><title>OutputDevice</title>
<polygon fill="#2980b9" stroke="#2980b9" points="177,-180 95,-180 95,-144 177,-144 177,-180"/> <polygon fill="#2980b9" stroke="#2980b9" points="280,-90 198,-90 198,-54 280,-54 280,-90"/>
<text text-anchor="middle" x="136" y="-159.5" font-family="Sans" font-size="10.00" fill="#ffffff">OutputDevice</text> <text text-anchor="middle" x="239" y="-69.5" font-family="Sans" font-size="10.00" fill="#ffffff">OutputDevice</text>
</g> </g>
<!-- OutputDevice&#45;&gt;GPIODevice --> <!-- OutputDevice&#45;&gt;GPIODevice -->
<g id="edge2" class="edge"><title>OutputDevice&#45;&gt;GPIODevice</title> <g id="edge2" class="edge"><title>OutputDevice&#45;&gt;GPIODevice</title>
<path fill="none" stroke="black" d="M136.247,-180.303C136.357,-188.017 136.49,-197.288 136.613,-205.888"/> <path fill="none" stroke="black" d="M197.926,-72C189.627,-72 180.827,-72 172.353,-72"/>
<polygon fill="black" stroke="black" points="133.113,-205.947 136.756,-215.896 140.112,-205.847 133.113,-205.947"/> <polygon fill="black" stroke="black" points="172.235,-68.5001 162.235,-72 172.235,-75.5001 172.235,-68.5001"/>
</g> </g>
<!-- DigitalOutputDevice --> <!-- DigitalOutputDevice -->
<g id="node4" class="node"><title>DigitalOutputDevice</title> <g id="node4" class="node"><title>DigitalOutputDevice</title>
<polygon fill="#2980b9" stroke="#2980b9" points="129,-108 17,-108 17,-72 129,-72 129,-108"/> <polygon fill="#2980b9" stroke="#2980b9" points="428,-117 316,-117 316,-81 428,-81 428,-117"/>
<text text-anchor="middle" x="73" y="-87.5" font-family="Sans" font-size="10.00" fill="#ffffff">DigitalOutputDevice</text> <text text-anchor="middle" x="372" y="-96.5" font-family="Sans" font-size="10.00" fill="#ffffff">DigitalOutputDevice</text>
</g> </g>
<!-- DigitalOutputDevice&#45;&gt;OutputDevice --> <!-- DigitalOutputDevice&#45;&gt;OutputDevice -->
<g id="edge3" class="edge"><title>DigitalOutputDevice&#45;&gt;OutputDevice</title> <g id="edge3" class="edge"><title>DigitalOutputDevice&#45;&gt;OutputDevice</title>
<path fill="none" stroke="black" d="M88.573,-108.303C96.2022,-116.78 105.523,-127.136 113.876,-136.417"/> <path fill="none" stroke="black" d="M315.824,-87.6278C307.373,-85.886 298.687,-84.0957 290.347,-82.3769"/>
<polygon fill="black" stroke="black" points="111.315,-138.804 120.606,-143.896 116.518,-134.121 111.315,-138.804"/> <polygon fill="black" stroke="black" points="290.886,-78.9146 280.386,-80.3238 289.473,-85.7705 290.886,-78.9146"/>
</g> </g>
<!-- LED --> <!-- LED -->
<g id="node5" class="node"><title>LED</title> <g id="node5" class="node"><title>LED</title>
<polygon fill="#2980b9" stroke="#2980b9" points="54,-36 0,-36 0,-0 54,-0 54,-36"/> <polygon fill="#2980b9" stroke="#2980b9" points="520,-171 466,-171 466,-135 520,-135 520,-171"/>
<text text-anchor="middle" x="27" y="-15.5" font-family="Sans" font-size="10.00" fill="#ffffff">LED</text> <text text-anchor="middle" x="493" y="-150.5" font-family="Sans" font-size="10.00" fill="#ffffff">LED</text>
</g> </g>
<!-- LED&#45;&gt;DigitalOutputDevice --> <!-- LED&#45;&gt;DigitalOutputDevice -->
<g id="edge4" class="edge"><title>LED&#45;&gt;DigitalOutputDevice</title> <g id="edge4" class="edge"><title>LED&#45;&gt;DigitalOutputDevice</title>
<path fill="none" stroke="black" d="M38.3708,-36.3034C43.7185,-44.4411 50.2043,-54.311 56.1106,-63.2987"/> <path fill="none" stroke="black" d="M465.885,-141.149C453.08,-135.339 437.226,-128.144 422.262,-121.354"/>
<polygon fill="black" stroke="black" points="53.3432,-65.4607 61.76,-71.8957 59.1932,-61.6165 53.3432,-65.4607"/> <polygon fill="black" stroke="black" points="423.647,-118.139 413.095,-117.194 420.755,-124.514 423.647,-118.139"/>
</g> </g>
<!-- Buzzer --> <!-- Buzzer -->
<g id="node6" class="node"><title>Buzzer</title> <g id="node6" class="node"><title>Buzzer</title>
<polygon fill="#2980b9" stroke="#2980b9" points="126,-36 72,-36 72,-0 126,-0 126,-36"/> <polygon fill="#2980b9" stroke="#2980b9" points="520,-117 466,-117 466,-81 520,-81 520,-117"/>
<text text-anchor="middle" x="99" y="-15.5" font-family="Sans" font-size="10.00" fill="#ffffff">Buzzer</text> <text text-anchor="middle" x="493" y="-96.5" font-family="Sans" font-size="10.00" fill="#ffffff">Buzzer</text>
</g> </g>
<!-- Buzzer&#45;&gt;DigitalOutputDevice --> <!-- Buzzer&#45;&gt;DigitalOutputDevice -->
<g id="edge5" class="edge"><title>Buzzer&#45;&gt;DigitalOutputDevice</title> <g id="edge5" class="edge"><title>Buzzer&#45;&gt;DigitalOutputDevice</title>
<path fill="none" stroke="black" d="M92.573,-36.3034C89.6449,-44.1868 86.113,-53.6958 82.8601,-62.4536"/> <path fill="none" stroke="black" d="M465.885,-99C457.659,-99 448.174,-99 438.475,-99"/>
<polygon fill="black" stroke="black" points="79.554,-61.3027 79.353,-71.8957 86.116,-63.7401 79.554,-61.3027"/> <polygon fill="black" stroke="black" points="438.334,-95.5001 428.334,-99 438.334,-102.5 438.334,-95.5001"/>
</g> </g>
<!-- PWMOutputDevice --> <!-- PWMOutputDevice -->
<g id="node7" class="node"><title>PWMOutputDevice</title> <g id="node7" class="node"><title>PWMOutputDevice</title>
<polygon fill="#2980b9" stroke="#2980b9" points="251,-108 147,-108 147,-72 251,-72 251,-108"/> <polygon fill="#2980b9" stroke="#2980b9" points="424,-63 320,-63 320,-27 424,-27 424,-63"/>
<text text-anchor="middle" x="199" y="-87.5" font-family="Sans" font-size="10.00" fill="#ffffff">PWMOutputDevice</text> <text text-anchor="middle" x="372" y="-42.5" font-family="Sans" font-size="10.00" fill="#ffffff">PWMOutputDevice</text>
</g> </g>
<!-- PWMOutputDevice&#45;&gt;OutputDevice --> <!-- PWMOutputDevice&#45;&gt;OutputDevice -->
<g id="edge6" class="edge"><title>PWMOutputDevice&#45;&gt;OutputDevice</title> <g id="edge6" class="edge"><title>PWMOutputDevice&#45;&gt;OutputDevice</title>
<path fill="none" stroke="black" d="M183.427,-108.303C175.798,-116.78 166.477,-127.136 158.124,-136.417"/> <path fill="none" stroke="black" d="M319.977,-55.5162C310.166,-57.5383 299.899,-59.6544 290.117,-61.6705"/>
<polygon fill="black" stroke="black" points="155.482,-134.121 151.394,-143.896 160.685,-138.804 155.482,-134.121"/> <polygon fill="black" stroke="black" points="289.226,-58.2805 280.139,-63.7271 290.639,-65.1363 289.226,-58.2805"/>
</g> </g>
<!-- PWMLED --> <!-- PWMLED -->
<g id="node8" class="node"><title>PWMLED</title> <g id="node8" class="node"><title>PWMLED</title>
<polygon fill="#2980b9" stroke="#2980b9" points="228,-36 170,-36 170,-0 228,-0 228,-36"/> <polygon fill="#2980b9" stroke="#2980b9" points="522,-63 464,-63 464,-27 522,-27 522,-63"/>
<text text-anchor="middle" x="199" y="-15.5" font-family="Sans" font-size="10.00" fill="#ffffff">PWMLED</text> <text text-anchor="middle" x="493" y="-42.5" font-family="Sans" font-size="10.00" fill="#ffffff">PWMLED</text>
</g> </g>
<!-- PWMLED&#45;&gt;PWMOutputDevice --> <!-- PWMLED&#45;&gt;PWMOutputDevice -->
<g id="edge7" class="edge"><title>PWMLED&#45;&gt;PWMOutputDevice</title> <g id="edge7" class="edge"><title>PWMLED&#45;&gt;PWMOutputDevice</title>
<path fill="none" stroke="black" d="M199,-36.3034C199,-44.0173 199,-53.2875 199,-61.8876"/> <path fill="none" stroke="black" d="M463.799,-45C454.932,-45 444.77,-45 434.527,-45"/>
<polygon fill="black" stroke="black" points="195.5,-61.8956 199,-71.8957 202.5,-61.8957 195.5,-61.8956"/> <polygon fill="black" stroke="black" points="434.303,-41.5001 424.303,-45 434.303,-48.5001 434.303,-41.5001"/>
</g> </g>
<!-- RGBLED --> <!-- RGBLED -->
<g id="node9" class="node"><title>RGBLED</title> <g id="node9" class="node"><title>RGBLED</title>
<polygon fill="#2980b9" stroke="#2980b9" points="249,-252 193,-252 193,-216 249,-216 249,-252"/> <polygon fill="#2980b9" stroke="#2980b9" points="154,-36 98,-36 98,-0 154,-0 154,-36"/>
<text text-anchor="middle" x="221" y="-231.5" font-family="Sans" font-size="10.00" fill="#ffffff">RGBLED</text> <text text-anchor="middle" x="126" y="-15.5" font-family="Sans" font-size="10.00" fill="#ffffff">RGBLED</text>
</g> </g>
<!-- RGBLED&#45;&gt;Device --> <!-- RGBLED&#45;&gt;Device -->
<g id="edge8" class="edge"><title>RGBLED&#45;&gt;Device</title> <g id="edge8" class="edge"><title>RGBLED&#45;&gt;Device</title>
<path fill="none" stroke="black" d="M210.618,-252.303C205.735,-260.441 199.813,-270.311 194.421,-279.299"/> <path fill="none" stroke="black" d="M97.9801,-25.521C87.5078,-28.436 75.3612,-31.817 64.1562,-34.9359"/>
<polygon fill="black" stroke="black" points="191.406,-277.52 189.263,-287.896 197.409,-281.121 191.406,-277.52"/> <polygon fill="black" stroke="black" points="62.9008,-31.6522 54.2057,-37.7056 64.778,-38.3958 62.9008,-31.6522"/>
</g> </g>
<!-- LedBorg --> <!-- LedBorg -->
<g id="node10" class="node"><title>LedBorg</title> <g id="node10" class="node"><title>LedBorg</title>
<polygon fill="#2980b9" stroke="#2980b9" points="251,-180 195,-180 195,-144 251,-144 251,-180"/> <polygon fill="#2980b9" stroke="#2980b9" points="267,-36 211,-36 211,-0 267,-0 267,-36"/>
<text text-anchor="middle" x="223" y="-159.5" font-family="Sans" font-size="10.00" fill="#ffffff">LedBorg</text> <text text-anchor="middle" x="239" y="-15.5" font-family="Sans" font-size="10.00" fill="#ffffff">LedBorg</text>
</g> </g>
<!-- LedBorg&#45;&gt;RGBLED --> <!-- LedBorg&#45;&gt;RGBLED -->
<g id="edge9" class="edge"><title>LedBorg&#45;&gt;RGBLED</title> <g id="edge9" class="edge"><title>LedBorg&#45;&gt;RGBLED</title>
<path fill="none" stroke="black" d="M222.506,-180.303C222.285,-188.017 222.02,-197.288 221.775,-205.888"/> <path fill="none" stroke="black" d="M210.846,-18C196.871,-18 179.617,-18 164.401,-18"/>
<polygon fill="black" stroke="black" points="218.276,-205.8 221.489,-215.896 225.273,-206 218.276,-205.8"/> <polygon fill="black" stroke="black" points="164.258,-14.5001 154.258,-18 164.258,-21.5001 164.258,-14.5001"/>
</g> </g>
</g> </g>
</svg> </svg>

Before

Width:  |  Height:  |  Size: 6.3 KiB

After

Width:  |  Height:  |  Size: 6.2 KiB

View File

@@ -1,5 +1,5 @@
digraph classes { digraph classes {
graph [rankdir=BT]; graph [rankdir=RL];
node [shape=rect, style=filled, fontname=Sans, fontsize=10]; node [shape=rect, style=filled, fontname=Sans, fontsize=10];
edge []; edge [];

Binary file not shown.

Binary file not shown.

Before

Width:  |  Height:  |  Size: 46 KiB

After

Width:  |  Height:  |  Size: 53 KiB

View File

@@ -4,205 +4,205 @@
<!-- Generated by graphviz version 2.38.0 (20140413.2041) <!-- Generated by graphviz version 2.38.0 (20140413.2041)
--> -->
<!-- Title: classes Pages: 1 --> <!-- Title: classes Pages: 1 -->
<svg width="870pt" height="404pt" <svg width="593pt" height="584pt"
viewBox="0.00 0.00 870.00 404.00" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"> viewBox="0.00 0.00 593.00 584.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 400)"> <g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 580)">
<title>classes</title> <title>classes</title>
<polygon fill="white" stroke="none" points="-4,4 -4,-400 866,-400 866,4 -4,4"/> <polygon fill="white" stroke="none" points="-4,4 -4,-580 589,-580 589,4 -4,4"/>
<!-- Device --> <!-- Device -->
<g id="node1" class="node"><title>Device</title> <g id="node1" class="node"><title>Device</title>
<polygon fill="#9ec6e0" stroke="#9ec6e0" points="418,-396 364,-396 364,-360 418,-360 418,-396"/> <polygon fill="#9ec6e0" stroke="#9ec6e0" points="54,-333 0,-333 0,-297 54,-297 54,-333"/>
<text text-anchor="middle" x="391" y="-375.5" font-family="Sans" font-size="10.00" fill="#000000">Device</text> <text text-anchor="middle" x="27" y="-312.5" font-family="Sans" font-size="10.00" fill="#000000">Device</text>
</g> </g>
<!-- SPIDevice --> <!-- SPIDevice -->
<g id="node2" class="node"><title>SPIDevice</title> <g id="node2" class="node"><title>SPIDevice</title>
<polygon fill="#9ec6e0" stroke="#9ec6e0" points="423,-324 359,-324 359,-288 423,-288 423,-324"/> <polygon fill="#9ec6e0" stroke="#9ec6e0" points="154,-333 90,-333 90,-297 154,-297 154,-333"/>
<text text-anchor="middle" x="391" y="-303.5" font-family="Sans" font-size="10.00" fill="#000000">SPIDevice</text> <text text-anchor="middle" x="122" y="-312.5" font-family="Sans" font-size="10.00" fill="#000000">SPIDevice</text>
</g> </g>
<!-- SPIDevice&#45;&gt;Device --> <!-- SPIDevice&#45;&gt;Device -->
<g id="edge1" class="edge"><title>SPIDevice&#45;&gt;Device</title> <g id="edge1" class="edge"><title>SPIDevice&#45;&gt;Device</title>
<path fill="none" stroke="black" d="M391,-324.303C391,-332.017 391,-341.288 391,-349.888"/> <path fill="none" stroke="black" d="M89.7736,-315C81.5203,-315 72.5448,-315 64.0586,-315"/>
<polygon fill="black" stroke="black" points="387.5,-349.896 391,-359.896 394.5,-349.896 387.5,-349.896"/> <polygon fill="black" stroke="black" points="64.0313,-311.5 54.0313,-315 64.0312,-318.5 64.0313,-311.5"/>
</g> </g>
<!-- AnalogInputDevice --> <!-- AnalogInputDevice -->
<g id="node3" class="node"><title>AnalogInputDevice</title> <g id="node3" class="node"><title>AnalogInputDevice</title>
<polygon fill="#9ec6e0" stroke="#9ec6e0" points="444,-252 338,-252 338,-216 444,-216 444,-252"/> <polygon fill="#9ec6e0" stroke="#9ec6e0" points="296,-333 190,-333 190,-297 296,-297 296,-333"/>
<text text-anchor="middle" x="391" y="-231.5" font-family="Sans" font-size="10.00" fill="#000000">AnalogInputDevice</text> <text text-anchor="middle" x="243" y="-312.5" font-family="Sans" font-size="10.00" fill="#000000">AnalogInputDevice</text>
</g> </g>
<!-- AnalogInputDevice&#45;&gt;SPIDevice --> <!-- AnalogInputDevice&#45;&gt;SPIDevice -->
<g id="edge2" class="edge"><title>AnalogInputDevice&#45;&gt;SPIDevice</title> <g id="edge2" class="edge"><title>AnalogInputDevice&#45;&gt;SPIDevice</title>
<path fill="none" stroke="black" d="M391,-252.303C391,-260.017 391,-269.288 391,-277.888"/> <path fill="none" stroke="black" d="M189.805,-315C181.286,-315 172.565,-315 164.354,-315"/>
<polygon fill="black" stroke="black" points="387.5,-277.896 391,-287.896 394.5,-277.896 387.5,-277.896"/> <polygon fill="black" stroke="black" points="164.279,-311.5 154.279,-315 164.279,-318.5 164.279,-311.5"/>
</g> </g>
<!-- MCP3xxx --> <!-- MCP3xxx -->
<g id="node4" class="node"><title>MCP3xxx</title> <g id="node4" class="node"><title>MCP3xxx</title>
<polygon fill="#9ec6e0" stroke="#9ec6e0" points="420.5,-180 361.5,-180 361.5,-144 420.5,-144 420.5,-180"/> <polygon fill="#9ec6e0" stroke="#9ec6e0" points="391,-333 332,-333 332,-297 391,-297 391,-333"/>
<text text-anchor="middle" x="391" y="-159.5" font-family="Sans" font-size="10.00" fill="#000000">MCP3xxx</text> <text text-anchor="middle" x="361.5" y="-312.5" font-family="Sans" font-size="10.00" fill="#000000">MCP3xxx</text>
</g> </g>
<!-- MCP3xxx&#45;&gt;AnalogInputDevice --> <!-- MCP3xxx&#45;&gt;AnalogInputDevice -->
<g id="edge3" class="edge"><title>MCP3xxx&#45;&gt;AnalogInputDevice</title> <g id="edge3" class="edge"><title>MCP3xxx&#45;&gt;AnalogInputDevice</title>
<path fill="none" stroke="black" d="M391,-180.303C391,-188.017 391,-197.288 391,-205.888"/> <path fill="none" stroke="black" d="M331.702,-315C323.869,-315 315.072,-315 306.152,-315"/>
<polygon fill="black" stroke="black" points="387.5,-205.896 391,-215.896 394.5,-205.896 387.5,-205.896"/> <polygon fill="black" stroke="black" points="306.074,-311.5 296.074,-315 306.074,-318.5 306.074,-311.5"/>
</g> </g>
<!-- MCP30xx --> <!-- MCP30xx -->
<g id="node5" class="node"><title>MCP30xx</title> <g id="node5" class="node"><title>MCP30xx</title>
<polygon fill="#9ec6e0" stroke="#9ec6e0" points="221,-108 161,-108 161,-72 221,-72 221,-108"/> <polygon fill="#9ec6e0" stroke="#9ec6e0" points="487,-468 427,-468 427,-432 487,-432 487,-468"/>
<text text-anchor="middle" x="191" y="-87.5" font-family="Sans" font-size="10.00" fill="#000000">MCP30xx</text> <text text-anchor="middle" x="457" y="-447.5" font-family="Sans" font-size="10.00" fill="#000000">MCP30xx</text>
</g> </g>
<!-- MCP30xx&#45;&gt;MCP3xxx --> <!-- MCP30xx&#45;&gt;MCP3xxx -->
<g id="edge4" class="edge"><title>MCP30xx&#45;&gt;MCP3xxx</title> <g id="edge4" class="edge"><title>MCP30xx&#45;&gt;MCP3xxx</title>
<path fill="none" stroke="black" d="M221.376,-101.631C256.184,-113.814 313.335,-133.817 351.556,-147.195"/> <path fill="none" stroke="black" d="M443.39,-431.793C427.357,-408.644 399.546,-368.489 381.082,-341.829"/>
<polygon fill="black" stroke="black" points="350.725,-150.612 361.319,-150.612 353.037,-144.005 350.725,-150.612"/> <polygon fill="black" stroke="black" points="383.78,-339.577 375.209,-333.349 378.025,-343.563 383.78,-339.577"/>
</g> </g>
<!-- MCP32xx --> <!-- MCP32xx -->
<g id="node6" class="node"><title>MCP32xx</title> <g id="node6" class="node"><title>MCP32xx</title>
<polygon fill="#9ec6e0" stroke="#9ec6e0" points="461,-108 401,-108 401,-72 461,-72 461,-108"/> <polygon fill="#9ec6e0" stroke="#9ec6e0" points="487,-306 427,-306 427,-270 487,-270 487,-306"/>
<text text-anchor="middle" x="431" y="-87.5" font-family="Sans" font-size="10.00" fill="#000000">MCP32xx</text> <text text-anchor="middle" x="457" y="-285.5" font-family="Sans" font-size="10.00" fill="#000000">MCP32xx</text>
</g> </g>
<!-- MCP32xx&#45;&gt;MCP3xxx --> <!-- MCP32xx&#45;&gt;MCP3xxx -->
<g id="edge5" class="edge"><title>MCP32xx&#45;&gt;MCP3xxx</title> <g id="edge5" class="edge"><title>MCP32xx&#45;&gt;MCP3xxx</title>
<path fill="none" stroke="black" d="M421.112,-108.303C416.511,-116.356 410.94,-126.106 405.847,-135.018"/> <path fill="none" stroke="black" d="M426.929,-296.395C418.76,-298.754 409.747,-301.356 401.116,-303.849"/>
<polygon fill="black" stroke="black" points="402.696,-133.477 400.774,-143.896 408.774,-136.95 402.696,-133.477"/> <polygon fill="black" stroke="black" points="399.869,-300.566 391.232,-306.703 401.811,-307.291 399.869,-300.566"/>
</g> </g>
<!-- MCP3xx2 --> <!-- MCP3xx2 -->
<g id="node7" class="node"><title>MCP3xx2</title> <g id="node7" class="node"><title>MCP3xx2</title>
<polygon fill="#9ec6e0" stroke="#9ec6e0" points="381,-108 321,-108 321,-72 381,-72 381,-108"/> <polygon fill="#9ec6e0" stroke="#9ec6e0" points="487,-360 427,-360 427,-324 487,-324 487,-360"/>
<text text-anchor="middle" x="351" y="-87.5" font-family="Sans" font-size="10.00" fill="#000000">MCP3xx2</text> <text text-anchor="middle" x="457" y="-339.5" font-family="Sans" font-size="10.00" fill="#000000">MCP3xx2</text>
</g> </g>
<!-- MCP3xx2&#45;&gt;MCP3xxx --> <!-- MCP3xx2&#45;&gt;MCP3xxx -->
<g id="edge7" class="edge"><title>MCP3xx2&#45;&gt;MCP3xxx</title> <g id="edge7" class="edge"><title>MCP3xx2&#45;&gt;MCP3xxx</title>
<path fill="none" stroke="black" d="M360.888,-108.303C365.489,-116.356 371.06,-126.106 376.153,-135.018"/> <path fill="none" stroke="black" d="M426.929,-333.605C418.76,-331.246 409.747,-328.644 401.116,-326.151"/>
<polygon fill="black" stroke="black" points="373.226,-136.95 381.226,-143.896 379.304,-133.477 373.226,-136.95"/> <polygon fill="black" stroke="black" points="401.811,-322.709 391.232,-323.297 399.869,-329.434 401.811,-322.709"/>
</g> </g>
<!-- MCP33xx --> <!-- MCP33xx -->
<g id="node8" class="node"><title>MCP33xx</title> <g id="node8" class="node"><title>MCP33xx</title>
<polygon fill="#9ec6e0" stroke="#9ec6e0" points="741,-108 681,-108 681,-72 741,-72 741,-108"/> <polygon fill="#9ec6e0" stroke="#9ec6e0" points="487,-117 427,-117 427,-81 487,-81 487,-117"/>
<text text-anchor="middle" x="711" y="-87.5" font-family="Sans" font-size="10.00" fill="#000000">MCP33xx</text> <text text-anchor="middle" x="457" y="-96.5" font-family="Sans" font-size="10.00" fill="#000000">MCP33xx</text>
</g> </g>
<!-- MCP33xx&#45;&gt;MCP3xxx --> <!-- MCP33xx&#45;&gt;MCP3xxx -->
<g id="edge6" class="edge"><title>MCP33xx&#45;&gt;MCP3xxx</title> <g id="edge6" class="edge"><title>MCP33xx&#45;&gt;MCP3xxx</title>
<path fill="none" stroke="black" d="M680.895,-97.5854C622.855,-110.282 495.498,-138.141 430.644,-152.328"/> <path fill="none" stroke="black" d="M448.189,-117.045C431.827,-154.844 393.862,-242.549 374.428,-287.444"/>
<polygon fill="black" stroke="black" points="429.813,-148.927 420.792,-154.483 431.309,-155.765 429.813,-148.927"/> <polygon fill="black" stroke="black" points="371.115,-286.287 370.354,-296.855 377.539,-289.068 371.115,-286.287"/>
</g> </g>
<!-- MCP3001 --> <!-- MCP3001 -->
<g id="node9" class="node"><title>MCP3001</title> <g id="node9" class="node"><title>MCP3001</title>
<polygon fill="#2980b9" stroke="#2980b9" points="142,-36 80,-36 80,-0 142,-0 142,-36"/> <polygon fill="#2980b9" stroke="#2980b9" points="585,-576 523,-576 523,-540 585,-540 585,-576"/>
<text text-anchor="middle" x="111" y="-15.5" font-family="Sans" font-size="10.00" fill="#ffffff">MCP3001</text> <text text-anchor="middle" x="554" y="-555.5" font-family="Sans" font-size="10.00" fill="#ffffff">MCP3001</text>
</g> </g>
<!-- MCP3001&#45;&gt;MCP30xx --> <!-- MCP3001&#45;&gt;MCP30xx -->
<g id="edge8" class="edge"><title>MCP3001&#45;&gt;MCP30xx</title> <g id="edge8" class="edge"><title>MCP3001&#45;&gt;MCP30xx</title>
<path fill="none" stroke="black" d="M130.775,-36.3034C140.754,-45.0345 153.011,-55.7595 163.857,-65.2497"/> <path fill="none" stroke="black" d="M531.931,-539.831C528.858,-536.955 525.791,-533.954 523,-531 506.549,-513.591 489.668,-492.438 477.234,-476.115"/>
<polygon fill="black" stroke="black" points="161.622,-67.9446 171.452,-71.8957 166.231,-62.6766 161.622,-67.9446"/> <polygon fill="black" stroke="black" points="479.978,-473.941 471.163,-468.065 474.389,-478.156 479.978,-473.941"/>
</g> </g>
<!-- MCP3002 --> <!-- MCP3002 -->
<g id="node10" class="node"><title>MCP3002</title> <g id="node10" class="node"><title>MCP3002</title>
<polygon fill="#2980b9" stroke="#2980b9" points="302,-36 240,-36 240,-0 302,-0 302,-36"/> <polygon fill="#2980b9" stroke="#2980b9" points="585,-414 523,-414 523,-378 585,-378 585,-414"/>
<text text-anchor="middle" x="271" y="-15.5" font-family="Sans" font-size="10.00" fill="#ffffff">MCP3002</text> <text text-anchor="middle" x="554" y="-393.5" font-family="Sans" font-size="10.00" fill="#ffffff">MCP3002</text>
</g> </g>
<!-- MCP3002&#45;&gt;MCP30xx --> <!-- MCP3002&#45;&gt;MCP30xx -->
<g id="edge9" class="edge"><title>MCP3002&#45;&gt;MCP30xx</title> <g id="edge9" class="edge"><title>MCP3002&#45;&gt;MCP30xx</title>
<path fill="none" stroke="black" d="M251.225,-36.3034C241.246,-45.0345 228.989,-55.7595 218.143,-65.2497"/> <path fill="none" stroke="black" d="M522.941,-413.086C514.38,-417.953 504.94,-423.318 495.973,-428.415"/>
<polygon fill="black" stroke="black" points="215.769,-62.6766 210.548,-71.8957 220.378,-67.9446 215.769,-62.6766"/> <polygon fill="black" stroke="black" points="494.178,-425.41 487.214,-433.394 497.637,-431.496 494.178,-425.41"/>
</g> </g>
<!-- MCP3002&#45;&gt;MCP3xx2 --> <!-- MCP3002&#45;&gt;MCP3xx2 -->
<g id="edge16" class="edge"><title>MCP3002&#45;&gt;MCP3xx2</title> <g id="edge16" class="edge"><title>MCP3002&#45;&gt;MCP3xx2</title>
<path fill="none" stroke="black" d="M290.775,-36.3034C300.754,-45.0345 313.011,-55.7595 323.857,-65.2497"/> <path fill="none" stroke="black" d="M522.941,-378.914C514.38,-374.047 504.94,-368.682 495.973,-363.585"/>
<polygon fill="black" stroke="black" points="321.622,-67.9446 331.452,-71.8957 326.231,-62.6766 321.622,-67.9446"/> <polygon fill="black" stroke="black" points="497.637,-360.504 487.214,-358.606 494.178,-366.59 497.637,-360.504"/>
</g> </g>
<!-- MCP3004 --> <!-- MCP3004 -->
<g id="node11" class="node"><title>MCP3004</title> <g id="node11" class="node"><title>MCP3004</title>
<polygon fill="#2980b9" stroke="#2980b9" points="222,-36 160,-36 160,-0 222,-0 222,-36"/> <polygon fill="#2980b9" stroke="#2980b9" points="585,-522 523,-522 523,-486 585,-486 585,-522"/>
<text text-anchor="middle" x="191" y="-15.5" font-family="Sans" font-size="10.00" fill="#ffffff">MCP3004</text> <text text-anchor="middle" x="554" y="-501.5" font-family="Sans" font-size="10.00" fill="#ffffff">MCP3004</text>
</g> </g>
<!-- MCP3004&#45;&gt;MCP30xx --> <!-- MCP3004&#45;&gt;MCP30xx -->
<g id="edge10" class="edge"><title>MCP3004&#45;&gt;MCP30xx</title> <g id="edge10" class="edge"><title>MCP3004&#45;&gt;MCP30xx</title>
<path fill="none" stroke="black" d="M191,-36.3034C191,-44.0173 191,-53.2875 191,-61.8876"/> <path fill="none" stroke="black" d="M522.941,-486.914C514.38,-482.047 504.94,-476.682 495.973,-471.585"/>
<polygon fill="black" stroke="black" points="187.5,-61.8956 191,-71.8957 194.5,-61.8957 187.5,-61.8956"/> <polygon fill="black" stroke="black" points="497.637,-468.504 487.214,-466.606 494.178,-474.59 497.637,-468.504"/>
</g> </g>
<!-- MCP3008 --> <!-- MCP3008 -->
<g id="node12" class="node"><title>MCP3008</title> <g id="node12" class="node"><title>MCP3008</title>
<polygon fill="#2980b9" stroke="#2980b9" points="62,-36 3.55271e-15,-36 3.55271e-15,-0 62,-0 62,-36"/> <polygon fill="#2980b9" stroke="#2980b9" points="585,-468 523,-468 523,-432 585,-432 585,-468"/>
<text text-anchor="middle" x="31" y="-15.5" font-family="Sans" font-size="10.00" fill="#ffffff">MCP3008</text> <text text-anchor="middle" x="554" y="-447.5" font-family="Sans" font-size="10.00" fill="#ffffff">MCP3008</text>
</g> </g>
<!-- MCP3008&#45;&gt;MCP30xx --> <!-- MCP3008&#45;&gt;MCP30xx -->
<g id="edge11" class="edge"><title>MCP3008&#45;&gt;MCP30xx</title> <g id="edge11" class="edge"><title>MCP3008&#45;&gt;MCP30xx</title>
<path fill="none" stroke="black" d="M62.2294,-32.6629C87.7738,-43.8385 124.046,-59.7076 151.587,-71.757"/> <path fill="none" stroke="black" d="M522.941,-450C514.826,-450 505.921,-450 497.378,-450"/>
<polygon fill="black" stroke="black" points="150.369,-75.044 160.933,-75.8457 153.174,-68.6309 150.369,-75.044"/> <polygon fill="black" stroke="black" points="497.214,-446.5 487.214,-450 497.213,-453.5 497.214,-446.5"/>
</g> </g>
<!-- MCP3201 --> <!-- MCP3201 -->
<g id="node13" class="node"><title>MCP3201</title> <g id="node13" class="node"><title>MCP3201</title>
<polygon fill="#2980b9" stroke="#2980b9" points="542,-36 480,-36 480,-0 542,-0 542,-36"/> <polygon fill="#2980b9" stroke="#2980b9" points="585,-306 523,-306 523,-270 585,-270 585,-306"/>
<text text-anchor="middle" x="511" y="-15.5" font-family="Sans" font-size="10.00" fill="#ffffff">MCP3201</text> <text text-anchor="middle" x="554" y="-285.5" font-family="Sans" font-size="10.00" fill="#ffffff">MCP3201</text>
</g> </g>
<!-- MCP3201&#45;&gt;MCP32xx --> <!-- MCP3201&#45;&gt;MCP32xx -->
<g id="edge12" class="edge"><title>MCP3201&#45;&gt;MCP32xx</title> <g id="edge12" class="edge"><title>MCP3201&#45;&gt;MCP32xx</title>
<path fill="none" stroke="black" d="M491.225,-36.3034C481.246,-45.0345 468.989,-55.7595 458.143,-65.2497"/> <path fill="none" stroke="black" d="M522.941,-288C514.826,-288 505.921,-288 497.378,-288"/>
<polygon fill="black" stroke="black" points="455.769,-62.6766 450.548,-71.8957 460.378,-67.9446 455.769,-62.6766"/> <polygon fill="black" stroke="black" points="497.214,-284.5 487.214,-288 497.213,-291.5 497.214,-284.5"/>
</g> </g>
<!-- MCP3202 --> <!-- MCP3202 -->
<g id="node14" class="node"><title>MCP3202</title> <g id="node14" class="node"><title>MCP3202</title>
<polygon fill="#2980b9" stroke="#2980b9" points="382,-36 320,-36 320,-0 382,-0 382,-36"/> <polygon fill="#2980b9" stroke="#2980b9" points="585,-360 523,-360 523,-324 585,-324 585,-360"/>
<text text-anchor="middle" x="351" y="-15.5" font-family="Sans" font-size="10.00" fill="#ffffff">MCP3202</text> <text text-anchor="middle" x="554" y="-339.5" font-family="Sans" font-size="10.00" fill="#ffffff">MCP3202</text>
</g> </g>
<!-- MCP3202&#45;&gt;MCP32xx --> <!-- MCP3202&#45;&gt;MCP32xx -->
<g id="edge13" class="edge"><title>MCP3202&#45;&gt;MCP32xx</title> <g id="edge13" class="edge"><title>MCP3202&#45;&gt;MCP32xx</title>
<path fill="none" stroke="black" d="M370.775,-36.3034C380.754,-45.0345 393.011,-55.7595 403.857,-65.2497"/> <path fill="none" stroke="black" d="M522.941,-324.914C514.38,-320.047 504.94,-314.682 495.973,-309.585"/>
<polygon fill="black" stroke="black" points="401.622,-67.9446 411.452,-71.8957 406.231,-62.6766 401.622,-67.9446"/> <polygon fill="black" stroke="black" points="497.637,-306.504 487.214,-304.606 494.178,-312.59 497.637,-306.504"/>
</g> </g>
<!-- MCP3202&#45;&gt;MCP3xx2 --> <!-- MCP3202&#45;&gt;MCP3xx2 -->
<g id="edge17" class="edge"><title>MCP3202&#45;&gt;MCP3xx2</title> <g id="edge17" class="edge"><title>MCP3202&#45;&gt;MCP3xx2</title>
<path fill="none" stroke="black" d="M351,-36.3034C351,-44.0173 351,-53.2875 351,-61.8876"/> <path fill="none" stroke="black" d="M522.941,-342C514.826,-342 505.921,-342 497.378,-342"/>
<polygon fill="black" stroke="black" points="347.5,-61.8956 351,-71.8957 354.5,-61.8957 347.5,-61.8956"/> <polygon fill="black" stroke="black" points="497.214,-338.5 487.214,-342 497.213,-345.5 497.214,-338.5"/>
</g> </g>
<!-- MCP3204 --> <!-- MCP3204 -->
<g id="node15" class="node"><title>MCP3204</title> <g id="node15" class="node"><title>MCP3204</title>
<polygon fill="#2980b9" stroke="#2980b9" points="622,-36 560,-36 560,-0 622,-0 622,-36"/> <polygon fill="#2980b9" stroke="#2980b9" points="585,-252 523,-252 523,-216 585,-216 585,-252"/>
<text text-anchor="middle" x="591" y="-15.5" font-family="Sans" font-size="10.00" fill="#ffffff">MCP3204</text> <text text-anchor="middle" x="554" y="-231.5" font-family="Sans" font-size="10.00" fill="#ffffff">MCP3204</text>
</g> </g>
<!-- MCP3204&#45;&gt;MCP32xx --> <!-- MCP3204&#45;&gt;MCP32xx -->
<g id="edge14" class="edge"><title>MCP3204&#45;&gt;MCP32xx</title> <g id="edge14" class="edge"><title>MCP3204&#45;&gt;MCP32xx</title>
<path fill="none" stroke="black" d="M559.771,-32.6629C534.226,-43.8385 497.954,-59.7076 470.413,-71.757"/> <path fill="none" stroke="black" d="M522.941,-251.086C514.38,-255.953 504.94,-261.318 495.973,-266.415"/>
<polygon fill="black" stroke="black" points="468.826,-68.6309 461.067,-75.8457 471.631,-75.044 468.826,-68.6309"/> <polygon fill="black" stroke="black" points="494.178,-263.41 487.214,-271.394 497.637,-269.496 494.178,-263.41"/>
</g> </g>
<!-- MCP3208 --> <!-- MCP3208 -->
<g id="node16" class="node"><title>MCP3208</title> <g id="node16" class="node"><title>MCP3208</title>
<polygon fill="#2980b9" stroke="#2980b9" points="462,-36 400,-36 400,-0 462,-0 462,-36"/> <polygon fill="#2980b9" stroke="#2980b9" points="585,-198 523,-198 523,-162 585,-162 585,-198"/>
<text text-anchor="middle" x="431" y="-15.5" font-family="Sans" font-size="10.00" fill="#ffffff">MCP3208</text> <text text-anchor="middle" x="554" y="-177.5" font-family="Sans" font-size="10.00" fill="#ffffff">MCP3208</text>
</g> </g>
<!-- MCP3208&#45;&gt;MCP32xx --> <!-- MCP3208&#45;&gt;MCP32xx -->
<g id="edge15" class="edge"><title>MCP3208&#45;&gt;MCP32xx</title> <g id="edge15" class="edge"><title>MCP3208&#45;&gt;MCP32xx</title>
<path fill="none" stroke="black" d="M431,-36.3034C431,-44.0173 431,-53.2875 431,-61.8876"/> <path fill="none" stroke="black" d="M531.931,-198.169C528.858,-201.045 525.791,-204.046 523,-207 506.549,-224.409 489.668,-245.562 477.234,-261.885"/>
<polygon fill="black" stroke="black" points="427.5,-61.8956 431,-71.8957 434.5,-61.8957 427.5,-61.8956"/> <polygon fill="black" stroke="black" points="474.389,-259.844 471.163,-269.935 479.978,-264.059 474.389,-259.844"/>
</g> </g>
<!-- MCP3301 --> <!-- MCP3301 -->
<g id="node17" class="node"><title>MCP3301</title> <g id="node17" class="node"><title>MCP3301</title>
<polygon fill="#2980b9" stroke="#2980b9" points="782,-36 720,-36 720,-0 782,-0 782,-36"/> <polygon fill="#2980b9" stroke="#2980b9" points="585,-144 523,-144 523,-108 585,-108 585,-144"/>
<text text-anchor="middle" x="751" y="-15.5" font-family="Sans" font-size="10.00" fill="#ffffff">MCP3301</text> <text text-anchor="middle" x="554" y="-123.5" font-family="Sans" font-size="10.00" fill="#ffffff">MCP3301</text>
</g> </g>
<!-- MCP3301&#45;&gt;MCP33xx --> <!-- MCP3301&#45;&gt;MCP33xx -->
<g id="edge18" class="edge"><title>MCP3301&#45;&gt;MCP33xx</title> <g id="edge18" class="edge"><title>MCP3301&#45;&gt;MCP33xx</title>
<path fill="none" stroke="black" d="M741.112,-36.3034C736.511,-44.3564 730.94,-54.1055 725.847,-63.0176"/> <path fill="none" stroke="black" d="M522.941,-117.457C514.737,-115.125 505.725,-112.564 497.096,-110.112"/>
<polygon fill="black" stroke="black" points="722.696,-61.4767 720.774,-71.8957 728.774,-64.9497 722.696,-61.4767"/> <polygon fill="black" stroke="black" points="497.789,-106.67 487.214,-107.303 495.876,-113.403 497.789,-106.67"/>
</g> </g>
<!-- MCP3302 --> <!-- MCP3302 -->
<g id="node18" class="node"><title>MCP3302</title> <g id="node18" class="node"><title>MCP3302</title>
<polygon fill="#2980b9" stroke="#2980b9" points="862,-36 800,-36 800,-0 862,-0 862,-36"/> <polygon fill="#2980b9" stroke="#2980b9" points="585,-90 523,-90 523,-54 585,-54 585,-90"/>
<text text-anchor="middle" x="831" y="-15.5" font-family="Sans" font-size="10.00" fill="#ffffff">MCP3302</text> <text text-anchor="middle" x="554" y="-69.5" font-family="Sans" font-size="10.00" fill="#ffffff">MCP3302</text>
</g> </g>
<!-- MCP3302&#45;&gt;MCP33xx --> <!-- MCP3302&#45;&gt;MCP33xx -->
<g id="edge19" class="edge"><title>MCP3302&#45;&gt;MCP33xx</title> <g id="edge19" class="edge"><title>MCP3302&#45;&gt;MCP33xx</title>
<path fill="none" stroke="black" d="M801.645,-36.1239C785.955,-45.2764 766.443,-56.6583 749.546,-66.515"/> <path fill="none" stroke="black" d="M522.941,-80.543C514.737,-82.8749 505.725,-85.4359 497.096,-87.8884"/>
<polygon fill="black" stroke="black" points="747.342,-63.7483 740.468,-71.8102 750.87,-69.7947 747.342,-63.7483"/> <polygon fill="black" stroke="black" points="495.876,-84.5966 487.214,-90.6972 497.789,-91.33 495.876,-84.5966"/>
</g> </g>
<!-- MCP3304 --> <!-- MCP3304 -->
<g id="node19" class="node"><title>MCP3304</title> <g id="node19" class="node"><title>MCP3304</title>
<polygon fill="#2980b9" stroke="#2980b9" points="702,-36 640,-36 640,-0 702,-0 702,-36"/> <polygon fill="#2980b9" stroke="#2980b9" points="585,-36 523,-36 523,-0 585,-0 585,-36"/>
<text text-anchor="middle" x="671" y="-15.5" font-family="Sans" font-size="10.00" fill="#ffffff">MCP3304</text> <text text-anchor="middle" x="554" y="-15.5" font-family="Sans" font-size="10.00" fill="#ffffff">MCP3304</text>
</g> </g>
<!-- MCP3304&#45;&gt;MCP33xx --> <!-- MCP3304&#45;&gt;MCP33xx -->
<g id="edge20" class="edge"><title>MCP3304&#45;&gt;MCP33xx</title> <g id="edge20" class="edge"><title>MCP3304&#45;&gt;MCP33xx</title>
<path fill="none" stroke="black" d="M680.888,-36.3034C685.489,-44.3564 691.06,-54.1055 696.153,-63.0176"/> <path fill="none" stroke="black" d="M531.443,-36.3802C518.233,-47.6438 501.16,-62.2002 486.801,-74.4434"/>
<polygon fill="black" stroke="black" points="693.226,-64.9497 701.226,-71.8957 699.304,-61.4767 693.226,-64.9497"/> <polygon fill="black" stroke="black" points="484.483,-71.8201 479.144,-80.9716 489.025,-77.1468 484.483,-71.8201"/>
</g> </g>
</g> </g>
</svg> </svg>

Before

Width:  |  Height:  |  Size: 12 KiB

After

Width:  |  Height:  |  Size: 12 KiB