Files
python-gpiozero/docs/images/composite_device_hierarchy.svg
Dave Jones 576fced6c4 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.
2017-06-21 17:01:13 +01:00

239 lines
15 KiB
XML

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 2.38.0 (20140413.2041)
-->
<!-- Title: classes Pages: 1 -->
<svg width="845pt" height="462pt"
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 458)">
<title>classes</title>
<polygon fill="white" stroke="none" points="-4,4 -4,-458 841,-458 841,4 -4,4"/>
<!-- Device -->
<g id="node1" class="node"><title>Device</title>
<polygon fill="#9ec6e0" stroke="#9ec6e0" points="54,-117 0,-117 0,-81 54,-81 54,-117"/>
<text text-anchor="middle" x="27" y="-96.5" font-family="Sans" font-size="10.00" fill="#000000">Device</text>
</g>
<!-- CompositeDevice -->
<g id="node2" class="node"><title>CompositeDevice</title>
<polygon fill="#9ec6e0" stroke="#9ec6e0" points="191,-144 90,-144 90,-108 191,-108 191,-144"/>
<text text-anchor="middle" x="140.5" y="-123.5" font-family="Sans" font-size="10.00" fill="#000000">CompositeDevice</text>
</g>
<!-- CompositeDevice&#45;&gt;Device -->
<g id="edge1" class="edge"><title>CompositeDevice&#45;&gt;Device</title>
<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="64.7221,-104.291 54.1792,-105.339 63.0746,-111.095 64.7221,-104.291"/>
</g>
<!-- CompositeOutputDevice -->
<g id="node3" class="node"><title>CompositeOutputDevice</title>
<polygon fill="#9ec6e0" stroke="#9ec6e0" points="361,-252 227,-252 227,-216 361,-216 361,-252"/>
<text text-anchor="middle" x="294" y="-231.5" font-family="Sans" font-size="10.00" fill="#000000">CompositeOutputDevice</text>
</g>
<!-- CompositeOutputDevice&#45;&gt;CompositeDevice -->
<g id="edge2" class="edge"><title>CompositeOutputDevice&#45;&gt;CompositeDevice</title>
<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="166.284,-149.169 156.958,-144.142 161.114,-153.888 166.284,-149.169"/>
</g>
<!-- LEDCollection -->
<g id="node4" class="node"><title>LEDCollection</title>
<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="449.5" y="-285.5" font-family="Sans" font-size="10.00" fill="#000000">LEDCollection</text>
</g>
<!-- LEDCollection&#45;&gt;CompositeOutputDevice -->
<g id="edge3" class="edge"><title>LEDCollection&#45;&gt;CompositeOutputDevice</title>
<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="356.945,-252.081 346.35,-252.065 354.622,-258.685 356.945,-252.081"/>
</g>
<!-- LEDBoard -->
<g id="node5" class="node"><title>LEDBoard</title>
<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="578.5" y="-366.5" font-family="Sans" font-size="10.00" fill="#ffffff">LEDBoard</text>
</g>
<!-- LEDBoard&#45;&gt;LEDCollection -->
<g id="edge4" class="edge"><title>LEDBoard&#45;&gt;LEDCollection</title>
<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="489.219,-308.544 478.906,-306.117 485.455,-314.446 489.219,-308.544"/>
</g>
<!-- LEDBarGraph -->
<g id="node6" class="node"><title>LEDBarGraph</title>
<polygon fill="#2980b9" stroke="#2980b9" points="619,-306 538,-306 538,-270 619,-270 619,-306"/>
<text text-anchor="middle" x="578.5" y="-285.5" font-family="Sans" font-size="10.00" fill="#ffffff">LEDBarGraph</text>
</g>
<!-- LEDBarGraph&#45;&gt;LEDCollection -->
<g id="edge5" class="edge"><title>LEDBarGraph&#45;&gt;LEDCollection</title>
<path fill="none" stroke="black" d="M537.665,-288C525.958,-288 512.998,-288 500.73,-288"/>
<polygon fill="black" stroke="black" points="500.63,-284.5 490.63,-288 500.63,-291.5 500.63,-284.5"/>
</g>
<!-- PiLiter -->
<g id="node7" class="node"><title>PiLiter</title>
<polygon fill="#2980b9" stroke="#2980b9" points="728,-454 674,-454 674,-418 728,-418 728,-454"/>
<text text-anchor="middle" x="701" y="-433.5" font-family="Sans" font-size="10.00" fill="#ffffff">PiLiter</text>
</g>
<!-- PiLiter&#45;&gt;LEDBoard -->
<g id="edge6" class="edge"><title>PiLiter&#45;&gt;LEDBoard</title>
<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="621.163,-388.161 610.723,-386.36 617.762,-394.279 621.163,-388.161"/>
</g>
<!-- PiLiterBarGraph -->
<g id="node8" class="node"><title>PiLiterBarGraph</title>
<polygon fill="#2980b9" stroke="#2980b9" points="747,-292 655,-292 655,-256 747,-256 747,-292"/>
<text text-anchor="middle" x="701" y="-271.5" font-family="Sans" font-size="10.00" fill="#ffffff">PiLiterBarGraph</text>
</g>
<!-- PiLiterBarGraph&#45;&gt;LEDBarGraph -->
<g id="edge7" class="edge"><title>PiLiterBarGraph&#45;&gt;LEDBarGraph</title>
<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="628.558,-278.777 619.029,-283.407 629.366,-285.73 628.558,-278.777"/>
</g>
<!-- TrafficLights -->
<g id="node9" class="node"><title>TrafficLights</title>
<polygon fill="#2980b9" stroke="#2980b9" points="737,-400 665,-400 665,-364 737,-364 737,-400"/>
<text text-anchor="middle" x="701" y="-379.5" font-family="Sans" font-size="10.00" fill="#ffffff">TrafficLights</text>
</g>
<!-- TrafficLights&#45;&gt;LEDBoard -->
<g id="edge8" class="edge"><title>TrafficLights&#45;&gt;LEDBoard</title>
<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="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>
<!-- PiTraffic -->
<g id="node11" class="node"><title>PiTraffic</title>
<polygon fill="#2980b9" stroke="#2980b9" points="837,-427 783,-427 783,-391 837,-391 837,-427"/>
<text text-anchor="middle" x="810" y="-406.5" font-family="Sans" font-size="10.00" fill="#ffffff">PiTraffic</text>
</g>
<!-- PiTraffic&#45;&gt;TrafficLights -->
<g id="edge10" class="edge"><title>PiTraffic&#45;&gt;TrafficLights</title>
<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="747.749,-389.935 737.197,-390.881 746.036,-396.722 747.749,-389.935"/>
</g>
<!-- PiStop -->
<g id="node12" class="node"><title>PiStop</title>
<polygon fill="#2980b9" stroke="#2980b9" points="837,-373 783,-373 783,-337 837,-337 837,-373"/>
<text text-anchor="middle" x="810" y="-352.5" font-family="Sans" font-size="10.00" fill="#ffffff">PiStop</text>
</g>
<!-- PiStop&#45;&gt;TrafficLights -->
<g id="edge11" class="edge"><title>PiStop&#45;&gt;TrafficLights</title>
<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="746.036,-367.278 737.197,-373.119 747.749,-374.065 746.036,-367.278"/>
</g>
<!-- TrafficLightsBuzzer -->
<g id="node13" class="node"><title>TrafficLightsBuzzer</title>
<polygon fill="#2980b9" stroke="#2980b9" points="502,-252 397,-252 397,-216 502,-216 502,-252"/>
<text text-anchor="middle" x="449.5" y="-231.5" font-family="Sans" font-size="10.00" fill="#ffffff">TrafficLightsBuzzer</text>
</g>
<!-- TrafficLightsBuzzer&#45;&gt;CompositeOutputDevice -->
<g id="edge12" class="edge"><title>TrafficLightsBuzzer&#45;&gt;CompositeOutputDevice</title>
<path fill="none" stroke="black" d="M396.96,-234C388.696,-234 379.995,-234 371.3,-234"/>
<polygon fill="black" stroke="black" points="371.125,-230.5 361.124,-234 371.124,-237.5 371.125,-230.5"/>
</g>
<!-- FishDish -->
<g id="node14" class="node"><title>FishDish</title>
<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="578.5" y="-231.5" font-family="Sans" font-size="10.00" fill="#ffffff">FishDish</text>
</g>
<!-- FishDish&#45;&gt;TrafficLightsBuzzer -->
<g id="edge13" class="edge"><title>FishDish&#45;&gt;TrafficLightsBuzzer</title>
<path fill="none" stroke="black" d="M550.255,-234C539.046,-234 525.57,-234 512.2,-234"/>
<polygon fill="black" stroke="black" points="512.036,-230.5 502.036,-234 512.036,-237.5 512.036,-230.5"/>
</g>
<!-- TrafficHat -->
<g id="node15" class="node"><title>TrafficHat</title>
<polygon fill="#2980b9" stroke="#2980b9" points="609,-198 548,-198 548,-162 609,-162 609,-198"/>
<text text-anchor="middle" x="578.5" y="-177.5" font-family="Sans" font-size="10.00" fill="#ffffff">TrafficHat</text>
</g>
<!-- TrafficHat&#45;&gt;TrafficLightsBuzzer -->
<g id="edge14" class="edge"><title>TrafficHat&#45;&gt;TrafficLightsBuzzer</title>
<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="500.908,-208.763 493.075,-215.897 503.647,-215.205 500.908,-208.763"/>
</g>
<!-- Robot -->
<g id="node16" class="node"><title>Robot</title>
<polygon fill="#2980b9" stroke="#2980b9" points="321,-198 267,-198 267,-162 321,-162 321,-198"/>
<text text-anchor="middle" x="294" y="-177.5" font-family="Sans" font-size="10.00" fill="#ffffff">Robot</text>
</g>
<!-- Robot&#45;&gt;CompositeDevice -->
<g id="edge15" class="edge"><title>Robot&#45;&gt;CompositeDevice</title>
<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="201.644,-143.722 191.049,-143.661 199.294,-150.316 201.644,-143.722"/>
</g>
<!-- RyanteckRobot -->
<g id="node17" class="node"><title>RyanteckRobot</title>
<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="449.5" y="-177.5" font-family="Sans" font-size="10.00" fill="#ffffff">RyanteckRobot</text>
</g>
<!-- RyanteckRobot&#45;&gt;Robot -->
<g id="edge16" class="edge"><title>RyanteckRobot&#45;&gt;Robot</title>
<path fill="none" stroke="black" d="M406.149,-180C382.707,-180 353.867,-180 331.439,-180"/>
<polygon fill="black" stroke="black" points="331.313,-176.5 321.313,-180 331.313,-183.5 331.313,-176.5"/>
</g>
<!-- CamJamKitRobot -->
<g id="node18" class="node"><title>CamJamKitRobot</title>
<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="449.5" y="-123.5" font-family="Sans" font-size="10.00" fill="#ffffff">CamJamKitRobot</text>
</g>
<!-- CamJamKitRobot&#45;&gt;Robot -->
<g id="edge17" class="edge"><title>CamJamKitRobot&#45;&gt;Robot</title>
<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="329.661,-164.096 321.389,-170.717 331.984,-170.7 329.661,-164.096"/>
</g>
<!-- Motor -->
<g id="node19" class="node"><title>Motor</title>
<polygon fill="#2980b9" stroke="#2980b9" points="321,-144 267,-144 267,-108 321,-108 321,-144"/>
<text text-anchor="middle" x="294" y="-123.5" font-family="Sans" font-size="10.00" fill="#ffffff">Motor</text>
</g>
<!-- Motor&#45;&gt;CompositeDevice -->
<g id="edge18" class="edge"><title>Motor&#45;&gt;CompositeDevice</title>
<path fill="none" stroke="black" d="M266.956,-126C248.908,-126 224.12,-126 201.342,-126"/>
<polygon fill="black" stroke="black" points="201.049,-122.5 191.049,-126 201.049,-129.5 201.049,-122.5"/>
</g>
<!-- Servo -->
<g id="node20" class="node"><title>Servo</title>
<polygon fill="#2980b9" stroke="#2980b9" points="321,-90 267,-90 267,-54 321,-54 321,-90"/>
<text text-anchor="middle" x="294" y="-69.5" font-family="Sans" font-size="10.00" fill="#ffffff">Servo</text>
</g>
<!-- Servo&#45;&gt;CompositeDevice -->
<g id="edge19" class="edge"><title>Servo&#45;&gt;CompositeDevice</title>
<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="199.294,-101.684 191.049,-108.339 201.644,-108.278 199.294,-101.684"/>
</g>
<!-- AngularServo -->
<g id="node21" class="node"><title>AngularServo</title>
<polygon fill="#2980b9" stroke="#2980b9" points="490,-90 409,-90 409,-54 490,-54 490,-90"/>
<text text-anchor="middle" x="449.5" y="-69.5" font-family="Sans" font-size="10.00" fill="#ffffff">AngularServo</text>
</g>
<!-- AngularServo&#45;&gt;Servo -->
<g id="edge20" class="edge"><title>AngularServo&#45;&gt;Servo</title>
<path fill="none" stroke="black" d="M408.97,-72C385.09,-72 354.867,-72 331.545,-72"/>
<polygon fill="black" stroke="black" points="331.363,-68.5001 321.363,-72 331.363,-75.5001 331.363,-68.5001"/>
</g>
<!-- Energenie -->
<g id="node22" class="node"><title>Energenie</title>
<polygon fill="#2980b9" stroke="#2980b9" points="173,-90 108,-90 108,-54 173,-54 173,-90"/>
<text text-anchor="middle" x="140.5" y="-69.5" font-family="Sans" font-size="10.00" fill="#ffffff">Energenie</text>
</g>
<!-- Energenie&#45;&gt;Device -->
<g id="edge21" class="edge"><title>Energenie&#45;&gt;Device</title>
<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="62.9844,-86.9272 54.089,-92.6825 64.6319,-93.7306 62.9844,-86.9272"/>
</g>
<!-- ButtonBoard -->
<g id="node23" class="node"><title>ButtonBoard</title>
<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="294" y="-15.5" font-family="Sans" font-size="10.00" fill="#ffffff">ButtonBoard</text>
</g>
<!-- ButtonBoard&#45;&gt;CompositeDevice -->
<g id="edge22" class="edge"><title>ButtonBoard&#45;&gt;CompositeDevice</title>
<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="185.354,-99.2363 179.313,-107.94 189.463,-104.903 185.354,-99.2363"/>
</g>
</g>
</svg>