Merge pull request #250 from waveform80/add-distance-sensor-diagram

Add DistanceSensor to the hierarchy diagram
This commit is contained in:
Ben Nuttall
2016-04-04 14:50:43 +01:00
5 changed files with 82 additions and 73 deletions

View File

@@ -73,8 +73,6 @@ Errors
.. autoexception:: PinError
.. autoexception:: PinFixedFunction
.. autoexception:: PinInvalidFunction
.. autoexception:: PinInvalidState

View File

@@ -24,6 +24,7 @@ digraph classes {
MotionSensor->SmoothedInputDevice;
LightSensor->SmoothedInputDevice;
LineSensor->SmoothedInputDevice;
DistanceSensor->SmoothedInputDevice;
OutputDevice->GPIODevice;
DigitalOutputDevice->OutputDevice;

Binary file not shown.

Before

Width:  |  Height:  |  Size: 43 KiB

After

Width:  |  Height:  |  Size: 47 KiB

View File

@@ -4,75 +4,75 @@
<!-- Generated by graphviz version 2.36.0 (20140111.2315)
-->
<!-- Title: classes Pages: 1 -->
<svg width="611pt" height="404pt"
viewBox="0.00 0.00 611.00 404.00" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<svg width="701pt" height="404pt"
viewBox="0.00 0.00 701.00 404.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)">
<title>classes</title>
<polygon fill="white" stroke="none" points="-4,4 -4,-400 607,-400 607,4 -4,4"/>
<polygon fill="white" stroke="none" points="-4,4 -4,-400 697,-400 697,4 -4,4"/>
<!-- Device -->
<g id="node1" class="node"><title>Device</title>
<polygon fill="#9ec6e0" stroke="#9ec6e0" points="395,-396 341,-396 341,-360 395,-360 395,-396"/>
<text text-anchor="middle" x="368" y="-375.5" font-family="Sans" font-size="10.00" fill="#000000">Device</text>
<polygon fill="#9ec6e0" stroke="#9ec6e0" points="485,-396 431,-396 431,-360 485,-360 485,-396"/>
<text text-anchor="middle" x="458" y="-375.5" font-family="Sans" font-size="10.00" fill="#000000">Device</text>
</g>
<!-- GPIODevice -->
<g id="node2" class="node"><title>GPIODevice</title>
<polygon fill="#9ec6e0" stroke="#9ec6e0" points="404,-324 332,-324 332,-288 404,-288 404,-324"/>
<text text-anchor="middle" x="368" y="-303.5" font-family="Sans" font-size="10.00" fill="#000000">GPIODevice</text>
<polygon fill="#9ec6e0" stroke="#9ec6e0" points="494,-324 422,-324 422,-288 494,-288 494,-324"/>
<text text-anchor="middle" x="458" y="-303.5" font-family="Sans" font-size="10.00" fill="#000000">GPIODevice</text>
</g>
<!-- GPIODevice&#45;&gt;Device -->
<g id="edge1" class="edge"><title>GPIODevice&#45;&gt;Device</title>
<path fill="none" stroke="black" d="M368,-324.303C368,-332.017 368,-341.288 368,-349.888"/>
<polygon fill="black" stroke="black" points="364.5,-349.896 368,-359.896 371.5,-349.896 364.5,-349.896"/>
<path fill="none" stroke="black" d="M458,-324.303C458,-332.017 458,-341.288 458,-349.888"/>
<polygon fill="black" stroke="black" points="454.5,-349.896 458,-359.896 461.5,-349.896 454.5,-349.896"/>
</g>
<!-- WaitableInputDevice -->
<g id="node3" class="node"><title>WaitableInputDevice</title>
<polygon fill="#9ec6e0" stroke="#9ec6e0" points="350.5,-180 237.5,-180 237.5,-144 350.5,-144 350.5,-180"/>
<text text-anchor="middle" x="294" y="-159.5" font-family="Sans" font-size="10.00" fill="#000000">WaitableInputDevice</text>
<polygon fill="#9ec6e0" stroke="#9ec6e0" points="440.5,-180 327.5,-180 327.5,-144 440.5,-144 440.5,-180"/>
<text text-anchor="middle" x="384" y="-159.5" font-family="Sans" font-size="10.00" fill="#000000">WaitableInputDevice</text>
</g>
<!-- InputDevice -->
<g id="node5" class="node"><title>InputDevice</title>
<polygon fill="#2980b9" stroke="#2980b9" points="348.5,-252 275.5,-252 275.5,-216 348.5,-216 348.5,-252"/>
<text text-anchor="middle" x="312" y="-231.5" font-family="Sans" font-size="10.00" fill="#ffffff">InputDevice</text>
<polygon fill="#2980b9" stroke="#2980b9" points="438.5,-252 365.5,-252 365.5,-216 438.5,-216 438.5,-252"/>
<text text-anchor="middle" x="402" y="-231.5" font-family="Sans" font-size="10.00" fill="#ffffff">InputDevice</text>
</g>
<!-- WaitableInputDevice&#45;&gt;InputDevice -->
<g id="edge3" class="edge"><title>WaitableInputDevice&#45;&gt;InputDevice</title>
<path fill="none" stroke="black" d="M298.449,-180.303C300.455,-188.102 302.869,-197.491 305.101,-206.171"/>
<polygon fill="black" stroke="black" points="301.722,-207.082 307.602,-215.896 308.501,-205.339 301.722,-207.082"/>
<path fill="none" stroke="black" d="M388.449,-180.303C390.455,-188.102 392.869,-197.491 395.101,-206.171"/>
<polygon fill="black" stroke="black" points="391.722,-207.082 397.602,-215.896 398.501,-205.339 391.722,-207.082"/>
</g>
<!-- SmoothedInputDevice -->
<g id="node4" class="node"><title>SmoothedInputDevice</title>
<polygon fill="#9ec6e0" stroke="#9ec6e0" points="209.5,-108 86.5,-108 86.5,-72 209.5,-72 209.5,-108"/>
<text text-anchor="middle" x="148" y="-87.5" font-family="Sans" font-size="10.00" fill="#000000">SmoothedInputDevice</text>
<polygon fill="#9ec6e0" stroke="#9ec6e0" points="289.5,-108 166.5,-108 166.5,-72 289.5,-72 289.5,-108"/>
<text text-anchor="middle" x="228" y="-87.5" font-family="Sans" font-size="10.00" fill="#000000">SmoothedInputDevice</text>
</g>
<!-- SmoothedInputDevice&#45;&gt;WaitableInputDevice -->
<g id="edge5" class="edge"><title>SmoothedInputDevice&#45;&gt;WaitableInputDevice</title>
<path fill="none" stroke="black" d="M183.716,-108.124C203.497,-117.608 228.272,-129.487 249.326,-139.581"/>
<polygon fill="black" stroke="black" points="247.87,-142.764 258.4,-143.932 250.896,-136.452 247.87,-142.764"/>
<path fill="none" stroke="black" d="M266.162,-108.124C287.393,-117.651 314.008,-129.593 336.569,-139.717"/>
<polygon fill="black" stroke="black" points="335.406,-143.031 345.962,-143.932 338.271,-136.644 335.406,-143.031"/>
</g>
<!-- InputDevice&#45;&gt;GPIODevice -->
<g id="edge2" class="edge"><title>InputDevice&#45;&gt;GPIODevice</title>
<path fill="none" stroke="black" d="M325.843,-252.303C332.489,-260.611 340.578,-270.723 347.887,-279.859"/>
<polygon fill="black" stroke="black" points="345.336,-282.273 354.317,-287.896 350.803,-277.901 345.336,-282.273"/>
<path fill="none" stroke="black" d="M415.843,-252.303C422.489,-260.611 430.578,-270.723 437.887,-279.859"/>
<polygon fill="black" stroke="black" points="435.336,-282.273 444.317,-287.896 440.803,-277.901 435.336,-282.273"/>
</g>
<!-- DigitalInputDevice -->
<g id="node6" class="node"><title>DigitalInputDevice</title>
<polygon fill="#2980b9" stroke="#2980b9" points="349.5,-108 246.5,-108 246.5,-72 349.5,-72 349.5,-108"/>
<text text-anchor="middle" x="298" y="-87.5" font-family="Sans" font-size="10.00" fill="#ffffff">DigitalInputDevice</text>
<polygon fill="#2980b9" stroke="#2980b9" points="439.5,-108 336.5,-108 336.5,-72 439.5,-72 439.5,-108"/>
<text text-anchor="middle" x="388" y="-87.5" font-family="Sans" font-size="10.00" fill="#ffffff">DigitalInputDevice</text>
</g>
<!-- DigitalInputDevice&#45;&gt;WaitableInputDevice -->
<g id="edge4" class="edge"><title>DigitalInputDevice&#45;&gt;WaitableInputDevice</title>
<path fill="none" stroke="black" d="M297.011,-108.303C296.57,-116.017 296.041,-125.288 295.549,-133.888"/>
<polygon fill="black" stroke="black" points="292.054,-133.712 294.977,-143.896 299.042,-134.112 292.054,-133.712"/>
<path fill="none" stroke="black" d="M387.011,-108.303C386.57,-116.017 386.041,-125.288 385.549,-133.888"/>
<polygon fill="black" stroke="black" points="382.054,-133.712 384.977,-143.896 389.042,-134.112 382.054,-133.712"/>
</g>
<!-- Button -->
<g id="node7" class="node"><title>Button</title>
<polygon fill="#2980b9" stroke="#2980b9" points="335,-36 281,-36 281,-0 335,-0 335,-36"/>
<text text-anchor="middle" x="308" y="-15.5" font-family="Sans" font-size="10.00" fill="#ffffff">Button</text>
<polygon fill="#2980b9" stroke="#2980b9" points="445,-36 391,-36 391,-0 445,-0 445,-36"/>
<text text-anchor="middle" x="418" y="-15.5" font-family="Sans" font-size="10.00" fill="#ffffff">Button</text>
</g>
<!-- Button&#45;&gt;DigitalInputDevice -->
<g id="edge6" class="edge"><title>Button&#45;&gt;DigitalInputDevice</title>
<path fill="none" stroke="black" d="M305.528,-36.3034C304.426,-44.0173 303.102,-53.2875 301.873,-61.8876"/>
<polygon fill="black" stroke="black" points="298.393,-61.5012 300.443,-71.8957 305.323,-62.4912 298.393,-61.5012"/>
<path fill="none" stroke="black" d="M410.584,-36.3034C407.206,-44.1868 403.13,-53.6958 399.377,-62.4536"/>
<polygon fill="black" stroke="black" points="396.053,-61.3255 395.33,-71.8957 402.487,-64.0829 396.053,-61.3255"/>
</g>
<!-- MotionSensor -->
<g id="node8" class="node"><title>MotionSensor</title>
@@ -81,8 +81,8 @@
</g>
<!-- MotionSensor&#45;&gt;SmoothedInputDevice -->
<g id="edge7" class="edge"><title>MotionSensor&#45;&gt;SmoothedInputDevice</title>
<path fill="none" stroke="black" d="M67.1751,-36.1239C81.0359,-45.1917 98.2414,-56.4477 113.211,-66.2408"/>
<polygon fill="black" stroke="black" points="111.44,-69.2645 121.724,-71.8102 115.272,-63.4067 111.44,-69.2645"/>
<path fill="none" stroke="black" d="M82.5014,-34.5353C109.086,-44.4869 143.895,-57.5168 172.8,-68.3368"/>
<polygon fill="black" stroke="black" points="171.763,-71.6859 182.356,-71.9139 174.217,-65.1302 171.763,-71.6859"/>
</g>
<!-- LightSensor -->
<g id="node9" class="node"><title>LightSensor</title>
@@ -91,8 +91,8 @@
</g>
<!-- LightSensor&#45;&gt;SmoothedInputDevice -->
<g id="edge8" class="edge"><title>LightSensor&#45;&gt;SmoothedInputDevice</title>
<path fill="none" stroke="black" d="M140.472,-36.3034C141.574,-44.0173 142.898,-53.2875 144.127,-61.8876"/>
<polygon fill="black" stroke="black" points="140.677,-62.4912 145.557,-71.8957 147.607,-61.5012 140.677,-62.4912"/>
<path fill="none" stroke="black" d="M160.247,-36.3034C171.582,-45.1193 185.53,-55.9679 197.819,-65.5258"/>
<polygon fill="black" stroke="black" points="195.966,-68.519 206.009,-71.8957 200.264,-62.9935 195.966,-68.519"/>
</g>
<!-- LineSensor -->
<g id="node10" class="node"><title>LineSensor</title>
@@ -101,68 +101,78 @@
</g>
<!-- LineSensor&#45;&gt;SmoothedInputDevice -->
<g id="edge9" class="edge"><title>LineSensor&#45;&gt;SmoothedInputDevice</title>
<path fill="none" stroke="black" d="M208.225,-36.3034C198.246,-45.0345 185.989,-55.7595 175.143,-65.2497"/>
<polygon fill="black" stroke="black" points="172.769,-62.6766 167.548,-71.8957 177.378,-67.9446 172.769,-62.6766"/>
<path fill="none" stroke="black" d="M228,-36.3034C228,-44.0173 228,-53.2875 228,-61.8876"/>
<polygon fill="black" stroke="black" points="224.5,-61.8956 228,-71.8957 231.5,-61.8957 224.5,-61.8956"/>
</g>
<!-- DistanceSensor -->
<g id="node11" class="node"><title>DistanceSensor</title>
<polygon fill="#2980b9" stroke="#2980b9" points="373,-36 281,-36 281,-0 373,-0 373,-36"/>
<text text-anchor="middle" x="327" y="-15.5" font-family="Sans" font-size="10.00" fill="#ffffff">DistanceSensor</text>
</g>
<!-- DistanceSensor&#45;&gt;SmoothedInputDevice -->
<g id="edge10" 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"/>
<polygon fill="black" stroke="black" points="258.456,-63.1791 252.311,-71.8102 262.497,-68.8947 258.456,-63.1791"/>
</g>
<!-- OutputDevice -->
<g id="node11" class="node"><title>OutputDevice</title>
<polygon fill="#2980b9" stroke="#2980b9" points="466,-252 384,-252 384,-216 466,-216 466,-252"/>
<text text-anchor="middle" x="425" y="-231.5" font-family="Sans" font-size="10.00" fill="#ffffff">OutputDevice</text>
<g id="node12" class="node"><title>OutputDevice</title>
<polygon fill="#2980b9" stroke="#2980b9" points="556,-252 474,-252 474,-216 556,-216 556,-252"/>
<text text-anchor="middle" x="515" y="-231.5" font-family="Sans" font-size="10.00" fill="#ffffff">OutputDevice</text>
</g>
<!-- OutputDevice&#45;&gt;GPIODevice -->
<g id="edge10" class="edge"><title>OutputDevice&#45;&gt;GPIODevice</title>
<path fill="none" stroke="black" d="M410.91,-252.303C404.077,-260.695 395.743,-270.93 388.244,-280.139"/>
<polygon fill="black" stroke="black" points="385.528,-277.931 381.928,-287.896 390.956,-282.351 385.528,-277.931"/>
<g id="edge11" class="edge"><title>OutputDevice&#45;&gt;GPIODevice</title>
<path fill="none" stroke="black" d="M500.91,-252.303C494.077,-260.695 485.743,-270.93 478.244,-280.139"/>
<polygon fill="black" stroke="black" points="475.528,-277.931 471.928,-287.896 480.956,-282.351 475.528,-277.931"/>
</g>
<!-- DigitalOutputDevice -->
<g id="node12" class="node"><title>DigitalOutputDevice</title>
<polygon fill="#2980b9" stroke="#2980b9" points="481,-180 369,-180 369,-144 481,-144 481,-180"/>
<text text-anchor="middle" x="425" y="-159.5" font-family="Sans" font-size="10.00" fill="#ffffff">DigitalOutputDevice</text>
<g id="node13" class="node"><title>DigitalOutputDevice</title>
<polygon fill="#2980b9" stroke="#2980b9" points="571,-180 459,-180 459,-144 571,-144 571,-180"/>
<text text-anchor="middle" x="515" y="-159.5" font-family="Sans" font-size="10.00" fill="#ffffff">DigitalOutputDevice</text>
</g>
<!-- DigitalOutputDevice&#45;&gt;OutputDevice -->
<g id="edge11" class="edge"><title>DigitalOutputDevice&#45;&gt;OutputDevice</title>
<path fill="none" stroke="black" d="M425,-180.303C425,-188.017 425,-197.288 425,-205.888"/>
<polygon fill="black" stroke="black" points="421.5,-205.896 425,-215.896 428.5,-205.896 421.5,-205.896"/>
<g id="edge12" class="edge"><title>DigitalOutputDevice&#45;&gt;OutputDevice</title>
<path fill="none" stroke="black" d="M515,-180.303C515,-188.017 515,-197.288 515,-205.888"/>
<polygon fill="black" stroke="black" points="511.5,-205.896 515,-215.896 518.5,-205.896 511.5,-205.896"/>
</g>
<!-- LED -->
<g id="node13" class="node"><title>LED</title>
<polygon fill="#2980b9" stroke="#2980b9" points="429,-108 375,-108 375,-72 429,-72 429,-108"/>
<text text-anchor="middle" x="402" y="-87.5" font-family="Sans" font-size="10.00" fill="#ffffff">LED</text>
<g id="node14" class="node"><title>LED</title>
<polygon fill="#2980b9" stroke="#2980b9" points="519,-108 465,-108 465,-72 519,-72 519,-108"/>
<text text-anchor="middle" x="492" y="-87.5" font-family="Sans" font-size="10.00" fill="#ffffff">LED</text>
</g>
<!-- LED&#45;&gt;DigitalOutputDevice -->
<g id="edge12" class="edge"><title>LED&#45;&gt;DigitalOutputDevice</title>
<path fill="none" stroke="black" d="M407.685,-108.303C410.248,-116.102 413.333,-125.491 416.185,-134.171"/>
<polygon fill="black" stroke="black" points="412.933,-135.488 419.38,-143.896 419.584,-133.303 412.933,-135.488"/>
<g id="edge13" class="edge"><title>LED&#45;&gt;DigitalOutputDevice</title>
<path fill="none" stroke="black" d="M497.685,-108.303C500.248,-116.102 503.333,-125.491 506.185,-134.171"/>
<polygon fill="black" stroke="black" points="502.933,-135.488 509.38,-143.896 509.584,-133.303 502.933,-135.488"/>
</g>
<!-- Buzzer -->
<g id="node14" class="node"><title>Buzzer</title>
<polygon fill="#2980b9" stroke="#2980b9" points="501,-108 447,-108 447,-72 501,-72 501,-108"/>
<text text-anchor="middle" x="474" y="-87.5" font-family="Sans" font-size="10.00" fill="#ffffff">Buzzer</text>
<g id="node15" class="node"><title>Buzzer</title>
<polygon fill="#2980b9" stroke="#2980b9" points="591,-108 537,-108 537,-72 591,-72 591,-108"/>
<text text-anchor="middle" x="564" y="-87.5" font-family="Sans" font-size="10.00" fill="#ffffff">Buzzer</text>
</g>
<!-- Buzzer&#45;&gt;DigitalOutputDevice -->
<g id="edge13" class="edge"><title>Buzzer&#45;&gt;DigitalOutputDevice</title>
<path fill="none" stroke="black" d="M461.888,-108.303C456.132,-116.526 449.138,-126.517 442.794,-135.579"/>
<polygon fill="black" stroke="black" points="439.84,-133.696 436.973,-143.896 445.575,-137.71 439.84,-133.696"/>
<g id="edge14" class="edge"><title>Buzzer&#45;&gt;DigitalOutputDevice</title>
<path fill="none" stroke="black" d="M551.888,-108.303C546.132,-116.526 539.138,-126.517 532.794,-135.579"/>
<polygon fill="black" stroke="black" points="529.84,-133.696 526.973,-143.896 535.575,-137.71 529.84,-133.696"/>
</g>
<!-- PWMOutputDevice -->
<g id="node15" class="node"><title>PWMOutputDevice</title>
<polygon fill="#2980b9" stroke="#2980b9" points="603,-180 499,-180 499,-144 603,-144 603,-180"/>
<text text-anchor="middle" x="551" y="-159.5" font-family="Sans" font-size="10.00" fill="#ffffff">PWMOutputDevice</text>
<g id="node16" class="node"><title>PWMOutputDevice</title>
<polygon fill="#2980b9" stroke="#2980b9" points="693,-180 589,-180 589,-144 693,-144 693,-180"/>
<text text-anchor="middle" x="641" y="-159.5" font-family="Sans" font-size="10.00" fill="#ffffff">PWMOutputDevice</text>
</g>
<!-- PWMOutputDevice&#45;&gt;OutputDevice -->
<g id="edge14" class="edge"><title>PWMOutputDevice&#45;&gt;OutputDevice</title>
<path fill="none" stroke="black" d="M520.177,-180.124C503.55,-189.361 482.835,-200.869 464.981,-210.788"/>
<polygon fill="black" stroke="black" points="462.983,-207.894 455.942,-215.81 466.383,-214.013 462.983,-207.894"/>
<g id="edge15" class="edge"><title>PWMOutputDevice&#45;&gt;OutputDevice</title>
<path fill="none" stroke="black" d="M610.177,-180.124C593.55,-189.361 572.835,-200.869 554.981,-210.788"/>
<polygon fill="black" stroke="black" points="552.983,-207.894 545.942,-215.81 556.383,-214.013 552.983,-207.894"/>
</g>
<!-- PWMLED -->
<g id="node16" class="node"><title>PWMLED</title>
<polygon fill="#2980b9" stroke="#2980b9" points="580,-108 522,-108 522,-72 580,-72 580,-108"/>
<text text-anchor="middle" x="551" y="-87.5" font-family="Sans" font-size="10.00" fill="#ffffff">PWMLED</text>
<g id="node17" class="node"><title>PWMLED</title>
<polygon fill="#2980b9" stroke="#2980b9" points="670,-108 612,-108 612,-72 670,-72 670,-108"/>
<text text-anchor="middle" x="641" y="-87.5" font-family="Sans" font-size="10.00" fill="#ffffff">PWMLED</text>
</g>
<!-- PWMLED&#45;&gt;PWMOutputDevice -->
<g id="edge15" class="edge"><title>PWMLED&#45;&gt;PWMOutputDevice</title>
<path fill="none" stroke="black" d="M551,-108.303C551,-116.017 551,-125.288 551,-133.888"/>
<polygon fill="black" stroke="black" points="547.5,-133.896 551,-143.896 554.5,-133.896 547.5,-133.896"/>
<g id="edge16" class="edge"><title>PWMLED&#45;&gt;PWMOutputDevice</title>
<path fill="none" stroke="black" d="M641,-108.303C641,-116.017 641,-125.288 641,-133.888"/>
<polygon fill="black" stroke="black" points="637.5,-133.896 641,-143.896 644.5,-133.896 637.5,-133.896"/>
</g>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 10 KiB

After

Width:  |  Height:  |  Size: 11 KiB