mirror of
				https://github.com/KevinMidboe/python-gpiozero.git
				synced 2025-10-29 17:50:37 +00:00 
			
		
		
		
	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.
		
			
				
	
	
		
			729 lines
		
	
	
		
			46 KiB
		
	
	
	
		
			XML
		
	
	
	
	
	
			
		
		
	
	
			729 lines
		
	
	
		
			46 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="1009pt" height="1395pt"
 | |
|  viewBox="0.00 0.00 1009.00 1395.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 1391)">
 | |
| <title>classes</title>
 | |
| <polygon fill="white" stroke="none" points="-4,4 -4,-1391 1005,-1391 1005,4 -4,4"/>
 | |
| <!-- ValuesMixin -->
 | |
| <g id="node1" class="node"><title>ValuesMixin</title>
 | |
| <polygon fill="#c69ee0" stroke="#c69ee0" points="72,-392 0,-392 0,-356 72,-356 72,-392"/>
 | |
| <text text-anchor="middle" x="36" y="-371.5" font-family="Sans" font-size="10.00" fill="#000000">ValuesMixin</text>
 | |
| </g>
 | |
| <!-- SourceMixin -->
 | |
| <g id="node2" class="node"><title>SourceMixin</title>
 | |
| <polygon fill="#c69ee0" stroke="#c69ee0" points="285.5,-225 211.5,-225 211.5,-189 285.5,-189 285.5,-225"/>
 | |
| <text text-anchor="middle" x="248.5" y="-204.5" font-family="Sans" font-size="10.00" fill="#000000">SourceMixin</text>
 | |
| </g>
 | |
| <!-- SharedMixin -->
 | |
| <g id="node3" class="node"><title>SharedMixin</title>
 | |
| <polygon fill="#c69ee0" stroke="#c69ee0" points="1001,-171 926,-171 926,-135 1001,-135 1001,-171"/>
 | |
| <text text-anchor="middle" x="963.5" y="-150.5" font-family="Sans" font-size="10.00" fill="#000000">SharedMixin</text>
 | |
| </g>
 | |
| <!-- EventsMixin -->
 | |
| <g id="node4" class="node"><title>EventsMixin</title>
 | |
| <polygon fill="#c69ee0" stroke="#c69ee0" points="438.5,-662 365.5,-662 365.5,-626 438.5,-626 438.5,-662"/>
 | |
| <text text-anchor="middle" x="402" y="-641.5" font-family="Sans" font-size="10.00" fill="#000000">EventsMixin</text>
 | |
| </g>
 | |
| <!-- HoldMixin -->
 | |
| <g id="node5" class="node"><title>HoldMixin</title>
 | |
| <polygon fill="#c69ee0" stroke="#c69ee0" points="597.5,-533 535.5,-533 535.5,-497 597.5,-497 597.5,-533"/>
 | |
| <text text-anchor="middle" x="566.5" y="-512.5" font-family="Sans" font-size="10.00" fill="#000000">HoldMixin</text>
 | |
| </g>
 | |
| <!-- Device -->
 | |
| <g id="node6" class="node"><title>Device</title>
 | |
| <polygon fill="#9ec6e0" stroke="#9ec6e0" points="162,-392 108,-392 108,-356 162,-356 162,-392"/>
 | |
| <text text-anchor="middle" x="135" y="-371.5" font-family="Sans" font-size="10.00" fill="#000000">Device</text>
 | |
| </g>
 | |
| <!-- Device->ValuesMixin -->
 | |
| <g id="edge2" class="edge"><title>Device->ValuesMixin</title>
 | |
| <path fill="none" stroke="black" d="M107.75,-374C99.8463,-374 90.9355,-374 82.1705,-374"/>
 | |
| <polygon fill="black" stroke="black" points="82.0171,-370.5 72.0171,-374 82.017,-377.5 82.0171,-370.5"/>
 | |
| </g>
 | |
| <!-- GPIODevice -->
 | |
| <g id="node7" class="node"><title>GPIODevice</title>
 | |
| <polygon fill="#9ec6e0" stroke="#9ec6e0" points="284.5,-479 212.5,-479 212.5,-443 284.5,-443 284.5,-479"/>
 | |
| <text text-anchor="middle" x="248.5" y="-458.5" font-family="Sans" font-size="10.00" fill="#000000">GPIODevice</text>
 | |
| </g>
 | |
| <!-- GPIODevice->Device -->
 | |
| <g id="edge1" class="edge"><title>GPIODevice->Device</title>
 | |
| <path fill="none" stroke="black" d="M224.397,-442.974C207.802,-430.025 185.249,-412.428 167.077,-398.249"/>
 | |
| <polygon fill="black" stroke="black" points="169.11,-395.396 159.073,-392.003 164.804,-400.914 169.11,-395.396"/>
 | |
| </g>
 | |
| <!-- SmoothedInputDevice -->
 | |
| <g id="node8" class="node"><title>SmoothedInputDevice</title>
 | |
| <polygon fill="#9ec6e0" stroke="#9ec6e0" points="628,-780 505,-780 505,-744 628,-744 628,-780"/>
 | |
| <text text-anchor="middle" x="566.5" y="-759.5" font-family="Sans" font-size="10.00" fill="#000000">SmoothedInputDevice</text>
 | |
| </g>
 | |
| <!-- SmoothedInputDevice->EventsMixin -->
 | |
| <g id="edge7" class="edge"><title>SmoothedInputDevice->EventsMixin</title>
 | |
| <path fill="none" stroke="black" d="M540.465,-743.821C512.472,-723.493 467.015,-690.485 436.103,-668.038"/>
 | |
| <polygon fill="black" stroke="black" points="437.945,-665.05 427.796,-662.006 433.831,-670.714 437.945,-665.05"/>
 | |
| </g>
 | |
| <!-- InputDevice -->
 | |
| <g id="node16" class="node"><title>InputDevice</title>
 | |
| <polygon fill="#2980b9" stroke="#2980b9" points="438.5,-570 365.5,-570 365.5,-534 438.5,-534 438.5,-570"/>
 | |
| <text text-anchor="middle" x="402" y="-549.5" font-family="Sans" font-size="10.00" fill="#ffffff">InputDevice</text>
 | |
| </g>
 | |
| <!-- SmoothedInputDevice->InputDevice -->
 | |
| <g id="edge6" class="edge"><title>SmoothedInputDevice->InputDevice</title>
 | |
| <path fill="none" stroke="black" d="M555.029,-743.763C538.403,-715.433 504.229,-659.674 469,-617 457.384,-602.929 443.101,-588.564 430.797,-576.929"/>
 | |
| <polygon fill="black" stroke="black" points="433.134,-574.322 423.433,-570.064 428.361,-579.443 433.134,-574.322"/>
 | |
| </g>
 | |
| <!-- AnalogInputDevice -->
 | |
| <g id="node9" class="node"><title>AnalogInputDevice</title>
 | |
| <polygon fill="#9ec6e0" stroke="#9ec6e0" points="455,-891 349,-891 349,-855 455,-855 455,-891"/>
 | |
| <text text-anchor="middle" x="402" y="-870.5" font-family="Sans" font-size="10.00" fill="#000000">AnalogInputDevice</text>
 | |
| </g>
 | |
| <!-- SPIDevice -->
 | |
| <g id="node30" class="node"><title>SPIDevice</title>
 | |
| <polygon fill="#2980b9" stroke="#2980b9" points="280.5,-776 216.5,-776 216.5,-740 280.5,-740 280.5,-776"/>
 | |
| <text text-anchor="middle" x="248.5" y="-755.5" font-family="Sans" font-size="10.00" fill="#ffffff">SPIDevice</text>
 | |
| </g>
 | |
| <!-- AnalogInputDevice->SPIDevice -->
 | |
| <g id="edge24" class="edge"><title>AnalogInputDevice->SPIDevice</title>
 | |
| <path fill="none" stroke="black" d="M376.994,-854.778C351.175,-835.179 309.992,-803.918 281.45,-782.252"/>
 | |
| <polygon fill="black" stroke="black" points="283.475,-779.395 273.393,-776.137 279.242,-784.971 283.475,-779.395"/>
 | |
| </g>
 | |
| <!-- MCP3xxx -->
 | |
| <g id="node10" class="node"><title>MCP3xxx</title>
 | |
| <polygon fill="#9ec6e0" stroke="#9ec6e0" points="596,-1050 537,-1050 537,-1014 596,-1014 596,-1050"/>
 | |
| <text text-anchor="middle" x="566.5" y="-1029.5" font-family="Sans" font-size="10.00" fill="#000000">MCP3xxx</text>
 | |
| </g>
 | |
| <!-- MCP3xxx->AnalogInputDevice -->
 | |
| <g id="edge25" class="edge"><title>MCP3xxx->AnalogInputDevice</title>
 | |
| <path fill="none" stroke="black" d="M546.859,-1013.76C517.84,-985.366 461.784,-930.518 428.868,-898.311"/>
 | |
| <polygon fill="black" stroke="black" points="431.019,-895.519 421.423,-891.027 426.123,-900.522 431.019,-895.519"/>
 | |
| </g>
 | |
| <!-- MCP33xx -->
 | |
| <g id="node11" class="node"><title>MCP33xx</title>
 | |
| <polygon fill="#9ec6e0" stroke="#9ec6e0" points="743,-1306 683,-1306 683,-1270 743,-1270 743,-1306"/>
 | |
| <text text-anchor="middle" x="713" y="-1285.5" font-family="Sans" font-size="10.00" fill="#000000">MCP33xx</text>
 | |
| </g>
 | |
| <!-- MCP33xx->MCP3xxx -->
 | |
| <g id="edge28" class="edge"><title>MCP33xx->MCP3xxx</title>
 | |
| <path fill="none" stroke="black" d="M701.839,-1270C676.871,-1225.76 612.397,-1111.54 582.784,-1059.08"/>
 | |
| <polygon fill="black" stroke="black" points="585.807,-1057.31 577.843,-1050.32 579.711,-1060.75 585.807,-1057.31"/>
 | |
| </g>
 | |
| <!-- CompositeDevice -->
 | |
| <g id="node12" class="node"><title>CompositeDevice</title>
 | |
| <polygon fill="#9ec6e0" stroke="#9ec6e0" points="299,-306 198,-306 198,-270 299,-270 299,-306"/>
 | |
| <text text-anchor="middle" x="248.5" y="-285.5" font-family="Sans" font-size="10.00" fill="#000000">CompositeDevice</text>
 | |
| </g>
 | |
| <!-- CompositeDevice->Device -->
 | |
| <g id="edge43" class="edge"><title>CompositeDevice->Device</title>
 | |
| <path fill="none" stroke="black" d="M224.126,-306.028C207.624,-318.757 185.329,-335.952 167.294,-349.863"/>
 | |
| <polygon fill="black" stroke="black" points="165.124,-347.116 159.343,-355.995 169.399,-352.659 165.124,-347.116"/>
 | |
| </g>
 | |
| <!-- CompositeOutputDevice -->
 | |
| <g id="node13" class="node"><title>CompositeOutputDevice</title>
 | |
| <polygon fill="#9ec6e0" stroke="#9ec6e0" points="469,-171 335,-171 335,-135 469,-135 469,-171"/>
 | |
| <text text-anchor="middle" x="402" y="-150.5" font-family="Sans" font-size="10.00" fill="#000000">CompositeOutputDevice</text>
 | |
| </g>
 | |
| <!-- CompositeOutputDevice->SourceMixin -->
 | |
| <g id="edge45" class="edge"><title>CompositeOutputDevice->SourceMixin</title>
 | |
| <path fill="none" stroke="black" d="M350.131,-171.131C332.454,-177.432 312.743,-184.458 295.484,-190.61"/>
 | |
| <polygon fill="black" stroke="black" points="293.884,-187.464 285.639,-194.119 296.234,-194.058 293.884,-187.464"/>
 | |
| </g>
 | |
| <!-- CompositeOutputDevice->CompositeDevice -->
 | |
| <g id="edge44" class="edge"><title>CompositeOutputDevice->CompositeDevice</title>
 | |
| <path fill="none" stroke="black" d="M348.184,-171.157C343.506,-173.77 339.025,-176.708 335,-180 312.672,-198.262 316.798,-211.301 299,-234 291.474,-243.598 282.639,-253.584 274.533,-262.319"/>
 | |
| <polygon fill="black" stroke="black" points="271.954,-259.953 267.648,-269.633 277.051,-264.751 271.954,-259.953"/>
 | |
| </g>
 | |
| <!-- LEDCollection -->
 | |
| <g id="node14" class="node"><title>LEDCollection</title>
 | |
| <polygon fill="#9ec6e0" stroke="#9ec6e0" points="607.5,-117 525.5,-117 525.5,-81 607.5,-81 607.5,-117"/>
 | |
| <text text-anchor="middle" x="566.5" y="-96.5" font-family="Sans" font-size="10.00" fill="#000000">LEDCollection</text>
 | |
| </g>
 | |
| <!-- LEDCollection->CompositeOutputDevice -->
 | |
| <g id="edge46" class="edge"><title>LEDCollection->CompositeOutputDevice</title>
 | |
| <path fill="none" stroke="black" d="M525.331,-112.348C507.724,-118.199 486.623,-125.211 466.943,-131.751"/>
 | |
| <polygon fill="black" stroke="black" points="465.803,-128.442 457.417,-134.917 468.011,-135.085 465.803,-128.442"/>
 | |
| </g>
 | |
| <!-- InternalDevice -->
 | |
| <g id="node15" class="node"><title>InternalDevice</title>
 | |
| <polygon fill="#9ec6e0" stroke="#9ec6e0" points="609,-645 524,-645 524,-609 609,-609 609,-645"/>
 | |
| <text text-anchor="middle" x="566.5" y="-624.5" font-family="Sans" font-size="10.00" fill="#000000">InternalDevice</text>
 | |
| </g>
 | |
| <!-- InternalDevice->EventsMixin -->
 | |
| <g id="edge73" class="edge"><title>InternalDevice->EventsMixin</title>
 | |
| <path fill="none" stroke="black" d="M523.652,-631.378C500.716,-633.777 472.252,-636.755 448.732,-639.216"/>
 | |
| <polygon fill="black" stroke="black" points="448.23,-635.749 438.649,-640.271 448.959,-642.711 448.23,-635.749"/>
 | |
| </g>
 | |
| <!-- InternalDevice->Device -->
 | |
| <g id="edge72" class="edge"><title>InternalDevice->Device</title>
 | |
| <path fill="none" stroke="black" d="M523.706,-623.123C476.412,-617.652 397.796,-605.24 335,-579 267.554,-550.817 247.359,-541.916 198,-488 174.601,-462.441 156.939,-426.443 146.566,-401.776"/>
 | |
| <polygon fill="black" stroke="black" points="149.712,-400.222 142.697,-392.282 143.23,-402.864 149.712,-400.222"/>
 | |
| </g>
 | |
| <!-- InputDevice->GPIODevice -->
 | |
| <g id="edge3" class="edge"><title>InputDevice->GPIODevice</title>
 | |
| <path fill="none" stroke="black" d="M370.706,-533.804C346.992,-519.56 313.847,-499.651 288.21,-484.252"/>
 | |
| <polygon fill="black" stroke="black" points="289.858,-481.158 279.483,-479.01 286.253,-487.159 289.858,-481.158"/>
 | |
| </g>
 | |
| <!-- DigitalInputDevice -->
 | |
| <g id="node17" class="node"><title>DigitalInputDevice</title>
 | |
| <polygon fill="#2980b9" stroke="#2980b9" points="618,-587 515,-587 515,-551 618,-551 618,-587"/>
 | |
| <text text-anchor="middle" x="566.5" y="-566.5" font-family="Sans" font-size="10.00" fill="#ffffff">DigitalInputDevice</text>
 | |
| </g>
 | |
| <!-- DigitalInputDevice->EventsMixin -->
 | |
| <g id="edge5" class="edge"><title>DigitalInputDevice->EventsMixin</title>
 | |
| <path fill="none" stroke="black" d="M526.163,-587.155C502.509,-598.073 472.328,-612.002 447.763,-623.34"/>
 | |
| <polygon fill="black" stroke="black" points="446.262,-620.178 438.649,-627.547 449.195,-626.534 446.262,-620.178"/>
 | |
| </g>
 | |
| <!-- DigitalInputDevice->InputDevice -->
 | |
| <g id="edge4" class="edge"><title>DigitalInputDevice->InputDevice</title>
 | |
| <path fill="none" stroke="black" d="M514.975,-563.714C493.774,-561.496 469.3,-558.936 448.65,-556.776"/>
 | |
| <polygon fill="black" stroke="black" points="448.855,-553.278 438.545,-555.719 448.127,-560.24 448.855,-553.278"/>
 | |
| </g>
 | |
| <!-- Button -->
 | |
| <g id="node18" class="node"><title>Button</title>
 | |
| <polygon fill="#2980b9" stroke="#2980b9" points="740,-537 686,-537 686,-501 740,-501 740,-537"/>
 | |
| <text text-anchor="middle" x="713" y="-516.5" font-family="Sans" font-size="10.00" fill="#ffffff">Button</text>
 | |
| </g>
 | |
| <!-- Button->HoldMixin -->
 | |
| <g id="edge9" class="edge"><title>Button->HoldMixin</title>
 | |
| <path fill="none" stroke="black" d="M685.832,-518.276C664.127,-517.675 632.899,-516.81 607.973,-516.12"/>
 | |
| <polygon fill="black" stroke="black" points="607.816,-512.615 597.722,-515.837 607.622,-519.612 607.816,-512.615"/>
 | |
| </g>
 | |
| <!-- Button->DigitalInputDevice -->
 | |
| <g id="edge8" class="edge"><title>Button->DigitalInputDevice</title>
 | |
| <path fill="none" stroke="black" d="M685.832,-528.055C669.543,-533.691 647.891,-541.183 627.564,-548.217"/>
 | |
| <polygon fill="black" stroke="black" points="626.338,-544.937 618.033,-551.515 628.628,-551.552 626.338,-544.937"/>
 | |
| </g>
 | |
| <!-- MotionSensor -->
 | |
| <g id="node19" class="node"><title>MotionSensor</title>
 | |
| <polygon fill="#2980b9" stroke="#2980b9" points="754.5,-915 671.5,-915 671.5,-879 754.5,-879 754.5,-915"/>
 | |
| <text text-anchor="middle" x="713" y="-894.5" font-family="Sans" font-size="10.00" fill="#ffffff">MotionSensor</text>
 | |
| </g>
 | |
| <!-- MotionSensor->SmoothedInputDevice -->
 | |
| <g id="edge10" class="edge"><title>MotionSensor->SmoothedInputDevice</title>
 | |
| <path fill="none" stroke="black" d="M676.771,-878.981C672.322,-876.192 667.95,-873.174 664,-870 633.802,-845.73 604.998,-811.552 586.849,-788.185"/>
 | |
| <polygon fill="black" stroke="black" points="589.519,-785.916 580.661,-780.103 583.961,-790.171 589.519,-785.916"/>
 | |
| </g>
 | |
| <!-- LightSensor -->
 | |
| <g id="node20" class="node"><title>LightSensor</title>
 | |
| <polygon fill="#2980b9" stroke="#2980b9" points="750,-861 676,-861 676,-825 750,-825 750,-861"/>
 | |
| <text text-anchor="middle" x="713" y="-840.5" font-family="Sans" font-size="10.00" fill="#ffffff">LightSensor</text>
 | |
| </g>
 | |
| <!-- LightSensor->SmoothedInputDevice -->
 | |
| <g id="edge11" class="edge"><title>LightSensor->SmoothedInputDevice</title>
 | |
| <path fill="none" stroke="black" d="M679.571,-824.822C658.655,-813.097 631.264,-797.743 608.797,-785.149"/>
 | |
| <polygon fill="black" stroke="black" points="610.255,-781.954 599.82,-780.117 606.832,-788.06 610.255,-781.954"/>
 | |
| </g>
 | |
| <!-- LineSensor -->
 | |
| <g id="node21" class="node"><title>LineSensor</title>
 | |
| <polygon fill="#2980b9" stroke="#2980b9" points="748,-807 678,-807 678,-771 748,-771 748,-807"/>
 | |
| <text text-anchor="middle" x="713" y="-786.5" font-family="Sans" font-size="10.00" fill="#ffffff">LineSensor</text>
 | |
| </g>
 | |
| <!-- LineSensor->SmoothedInputDevice -->
 | |
| <g id="edge12" class="edge"><title>LineSensor->SmoothedInputDevice</title>
 | |
| <path fill="none" stroke="black" d="M677.756,-782.601C665.801,-780.368 651.907,-777.772 638.093,-775.19"/>
 | |
| <polygon fill="black" stroke="black" points="638.551,-771.715 628.078,-773.319 637.265,-778.596 638.551,-771.715"/>
 | |
| </g>
 | |
| <!-- DistanceSensor -->
 | |
| <g id="node22" class="node"><title>DistanceSensor</title>
 | |
| <polygon fill="#2980b9" stroke="#2980b9" points="759,-753 667,-753 667,-717 759,-717 759,-753"/>
 | |
| <text text-anchor="middle" x="713" y="-732.5" font-family="Sans" font-size="10.00" fill="#ffffff">DistanceSensor</text>
 | |
| </g>
 | |
| <!-- DistanceSensor->SmoothedInputDevice -->
 | |
| <g id="edge13" class="edge"><title>DistanceSensor->SmoothedInputDevice</title>
 | |
| <path fill="none" stroke="black" d="M666.676,-743.469C657.584,-745.168 647.829,-746.99 638.113,-748.806"/>
 | |
| <polygon fill="black" stroke="black" points="637.219,-745.412 628.032,-750.69 638.505,-752.293 637.219,-745.412"/>
 | |
| </g>
 | |
| <!-- OutputDevice -->
 | |
| <g id="node23" class="node"><title>OutputDevice</title>
 | |
| <polygon fill="#2980b9" stroke="#2980b9" points="443,-479 361,-479 361,-443 443,-443 443,-479"/>
 | |
| <text text-anchor="middle" x="402" y="-458.5" font-family="Sans" font-size="10.00" fill="#ffffff">OutputDevice</text>
 | |
| </g>
 | |
| <!-- OutputDevice->SourceMixin -->
 | |
| <g id="edge15" class="edge"><title>OutputDevice->SourceMixin</title>
 | |
| <path fill="none" stroke="black" d="M390.199,-442.718C376.687,-419.585 353.123,-378.369 335,-342 317.429,-306.74 320.592,-293.951 299,-261 292.489,-251.064 284.139,-241.19 276.16,-232.655"/>
 | |
| <polygon fill="black" stroke="black" points="278.46,-229.998 268.999,-225.23 273.422,-234.858 278.46,-229.998"/>
 | |
| </g>
 | |
| <!-- OutputDevice->GPIODevice -->
 | |
| <g id="edge14" class="edge"><title>OutputDevice->GPIODevice</title>
 | |
| <path fill="none" stroke="black" d="M360.799,-461C340.551,-461 315.921,-461 294.983,-461"/>
 | |
| <polygon fill="black" stroke="black" points="294.726,-457.5 284.726,-461 294.726,-464.5 294.726,-457.5"/>
 | |
| </g>
 | |
| <!-- DigitalOutputDevice -->
 | |
| <g id="node24" class="node"><title>DigitalOutputDevice</title>
 | |
| <polygon fill="#2980b9" stroke="#2980b9" points="622.5,-387 510.5,-387 510.5,-351 622.5,-351 622.5,-387"/>
 | |
| <text text-anchor="middle" x="566.5" y="-366.5" font-family="Sans" font-size="10.00" fill="#ffffff">DigitalOutputDevice</text>
 | |
| </g>
 | |
| <!-- DigitalOutputDevice->OutputDevice -->
 | |
| <g id="edge16" class="edge"><title>DigitalOutputDevice->OutputDevice</title>
 | |
| <path fill="none" stroke="black" d="M533.395,-387.176C507.8,-401.667 471.783,-422.058 444.085,-437.74"/>
 | |
| <polygon fill="black" stroke="black" points="442.016,-434.889 435.038,-442.862 445.465,-440.98 442.016,-434.889"/>
 | |
| </g>
 | |
| <!-- LED -->
 | |
| <g id="node25" class="node"><title>LED</title>
 | |
| <polygon fill="#2980b9" stroke="#2980b9" points="740,-321 686,-321 686,-285 740,-285 740,-321"/>
 | |
| <text text-anchor="middle" x="713" y="-300.5" font-family="Sans" font-size="10.00" fill="#ffffff">LED</text>
 | |
| </g>
 | |
| <!-- LED->DigitalOutputDevice -->
 | |
| <g id="edge17" class="edge"><title>LED->DigitalOutputDevice</title>
 | |
| <path fill="none" stroke="black" d="M685.938,-315.222C669.375,-322.959 647.462,-333.14 628,-342 624.608,-343.544 621.105,-345.13 617.573,-346.723"/>
 | |
| <polygon fill="black" stroke="black" points="615.903,-343.636 608.217,-350.929 618.773,-350.021 615.903,-343.636"/>
 | |
| </g>
 | |
| <!-- Buzzer -->
 | |
| <g id="node26" class="node"><title>Buzzer</title>
 | |
| <polygon fill="#2980b9" stroke="#2980b9" points="740,-375 686,-375 686,-339 740,-339 740,-375"/>
 | |
| <text text-anchor="middle" x="713" y="-354.5" font-family="Sans" font-size="10.00" fill="#ffffff">Buzzer</text>
 | |
| </g>
 | |
| <!-- Buzzer->DigitalOutputDevice -->
 | |
| <g id="edge18" class="edge"><title>Buzzer->DigitalOutputDevice</title>
 | |
| <path fill="none" stroke="black" d="M685.832,-359.173C670.872,-360.415 651.388,-362.033 632.562,-363.597"/>
 | |
| <polygon fill="black" stroke="black" points="632.181,-360.116 622.505,-364.432 632.761,-367.092 632.181,-360.116"/>
 | |
| </g>
 | |
| <!-- PWMOutputDevice -->
 | |
| <g id="node27" class="node"><title>PWMOutputDevice</title>
 | |
| <polygon fill="#2980b9" stroke="#2980b9" points="618.5,-479 514.5,-479 514.5,-443 618.5,-443 618.5,-479"/>
 | |
| <text text-anchor="middle" x="566.5" y="-458.5" font-family="Sans" font-size="10.00" fill="#ffffff">PWMOutputDevice</text>
 | |
| </g>
 | |
| <!-- PWMOutputDevice->OutputDevice -->
 | |
| <g id="edge19" class="edge"><title>PWMOutputDevice->OutputDevice</title>
 | |
| <path fill="none" stroke="black" d="M514.084,-461C494.616,-461 472.494,-461 453.145,-461"/>
 | |
| <polygon fill="black" stroke="black" points="453.012,-457.5 443.012,-461 453.012,-464.5 453.012,-457.5"/>
 | |
| </g>
 | |
| <!-- PWMLED -->
 | |
| <g id="node28" class="node"><title>PWMLED</title>
 | |
| <polygon fill="#2980b9" stroke="#2980b9" points="742,-483 684,-483 684,-447 742,-447 742,-483"/>
 | |
| <text text-anchor="middle" x="713" y="-462.5" font-family="Sans" font-size="10.00" fill="#ffffff">PWMLED</text>
 | |
| </g>
 | |
| <!-- PWMLED->PWMOutputDevice -->
 | |
| <g id="edge20" class="edge"><title>PWMLED->PWMOutputDevice</title>
 | |
| <path fill="none" stroke="black" d="M683.796,-464.219C668.131,-463.786 648,-463.228 628.903,-462.7"/>
 | |
| <polygon fill="black" stroke="black" points="628.832,-459.197 618.738,-462.418 628.638,-466.194 628.832,-459.197"/>
 | |
| </g>
 | |
| <!-- RGBLED -->
 | |
| <g id="node29" class="node"><title>RGBLED</title>
 | |
| <polygon fill="#2980b9" stroke="#2980b9" points="430,-63 374,-63 374,-27 430,-27 430,-63"/>
 | |
| <text text-anchor="middle" x="402" y="-42.5" font-family="Sans" font-size="10.00" fill="#ffffff">RGBLED</text>
 | |
| </g>
 | |
| <!-- RGBLED->SourceMixin -->
 | |
| <g id="edge22" class="edge"><title>RGBLED->SourceMixin</title>
 | |
| <path fill="none" stroke="black" d="M373.903,-51.9012C361.096,-56.1501 346.199,-62.6195 335,-72 299.842,-101.449 274.438,-149.159 260.851,-179.266"/>
 | |
| <polygon fill="black" stroke="black" points="257.503,-178.185 256.699,-188.749 263.916,-180.992 257.503,-178.185"/>
 | |
| </g>
 | |
| <!-- RGBLED->Device -->
 | |
| <g id="edge21" class="edge"><title>RGBLED->Device</title>
 | |
| <path fill="none" stroke="black" d="M373.857,-46.6486C330.16,-50.8112 244.431,-65.4649 198,-117 167.56,-150.787 147.095,-286.263 139.402,-345.75"/>
 | |
| <polygon fill="black" stroke="black" points="135.897,-345.572 138.115,-355.932 142.842,-346.45 135.897,-345.572"/>
 | |
| </g>
 | |
| <!-- SPIDevice->Device -->
 | |
| <g id="edge23" class="edge"><title>SPIDevice->Device</title>
 | |
| <path fill="none" stroke="black" d="M240.821,-739.699C230.885,-712.177 211.892,-658.409 198,-612 175.441,-536.64 153.242,-446.487 142.567,-401.86"/>
 | |
| <polygon fill="black" stroke="black" points="145.95,-400.954 140.228,-392.036 139.14,-402.575 145.95,-400.954"/>
 | |
| </g>
 | |
| <!-- MCP30xx -->
 | |
| <g id="node31" class="node"><title>MCP30xx</title>
 | |
| <polygon fill="#2980b9" stroke="#2980b9" points="743,-1117 683,-1117 683,-1081 743,-1081 743,-1117"/>
 | |
| <text text-anchor="middle" x="713" y="-1096.5" font-family="Sans" font-size="10.00" fill="#ffffff">MCP30xx</text>
 | |
| </g>
 | |
| <!-- MCP30xx->MCP3xxx -->
 | |
| <g id="edge26" class="edge"><title>MCP30xx->MCP3xxx</title>
 | |
| <path fill="none" stroke="black" d="M682.758,-1085.44C660.48,-1075.11 629.625,-1060.81 605.446,-1049.59"/>
 | |
| <polygon fill="black" stroke="black" points="606.75,-1046.34 596.205,-1045.31 603.805,-1052.69 606.75,-1046.34"/>
 | |
| </g>
 | |
| <!-- MCP32xx -->
 | |
| <g id="node32" class="node"><title>MCP32xx</title>
 | |
| <polygon fill="#2980b9" stroke="#2980b9" points="743,-969 683,-969 683,-933 743,-933 743,-969"/>
 | |
| <text text-anchor="middle" x="713" y="-948.5" font-family="Sans" font-size="10.00" fill="#ffffff">MCP32xx</text>
 | |
| </g>
 | |
| <!-- MCP32xx->MCP3xxx -->
 | |
| <g id="edge27" class="edge"><title>MCP32xx->MCP3xxx</title>
 | |
| <path fill="none" stroke="black" d="M682.758,-967.392C660.382,-979.935 629.352,-997.329 605.125,-1010.91"/>
 | |
| <polygon fill="black" stroke="black" points="603.217,-1007.97 596.205,-1015.91 606.64,-1014.07 603.217,-1007.97"/>
 | |
| </g>
 | |
| <!-- MCP3xx2 -->
 | |
| <g id="node33" class="node"><title>MCP3xx2</title>
 | |
| <polygon fill="#2980b9" stroke="#2980b9" points="743,-1050 683,-1050 683,-1014 743,-1014 743,-1050"/>
 | |
| <text text-anchor="middle" x="713" y="-1029.5" font-family="Sans" font-size="10.00" fill="#ffffff">MCP3xx2</text>
 | |
| </g>
 | |
| <!-- MCP3xx2->MCP3xxx -->
 | |
| <g id="edge29" class="edge"><title>MCP3xx2->MCP3xxx</title>
 | |
| <path fill="none" stroke="black" d="M682.758,-1032C660.776,-1032 630.443,-1032 606.412,-1032"/>
 | |
| <polygon fill="black" stroke="black" points="606.205,-1028.5 596.205,-1032 606.205,-1035.5 606.205,-1028.5"/>
 | |
| </g>
 | |
| <!-- MCP3001 -->
 | |
| <g id="node34" class="node"><title>MCP3001</title>
 | |
| <polygon fill="#2980b9" stroke="#2980b9" points="875,-1225 813,-1225 813,-1189 875,-1189 875,-1225"/>
 | |
| <text text-anchor="middle" x="844" y="-1204.5" font-family="Sans" font-size="10.00" fill="#ffffff">MCP3001</text>
 | |
| </g>
 | |
| <!-- MCP3001->MCP30xx -->
 | |
| <g id="edge30" class="edge"><title>MCP3001->MCP30xx</title>
 | |
| <path fill="none" stroke="black" d="M812.842,-1190.2C807.755,-1187.01 802.628,-1183.55 798,-1180 776.106,-1163.22 753.741,-1141.38 737.599,-1124.61"/>
 | |
| <polygon fill="black" stroke="black" points="740.071,-1122.13 730.644,-1117.29 734.998,-1126.95 740.071,-1122.13"/>
 | |
| </g>
 | |
| <!-- MCP3002 -->
 | |
| <g id="node35" class="node"><title>MCP3002</title>
 | |
| <polygon fill="#2980b9" stroke="#2980b9" points="875,-1063 813,-1063 813,-1027 875,-1027 875,-1063"/>
 | |
| <text text-anchor="middle" x="844" y="-1042.5" font-family="Sans" font-size="10.00" fill="#ffffff">MCP3002</text>
 | |
| </g>
 | |
| <!-- MCP3002->MCP30xx -->
 | |
| <g id="edge31" class="edge"><title>MCP3002->MCP30xx</title>
 | |
| <path fill="none" stroke="black" d="M812.755,-1057.66C794.79,-1065.18 771.83,-1074.79 752.57,-1082.85"/>
 | |
| <polygon fill="black" stroke="black" points="751.04,-1079.7 743.168,-1086.79 753.744,-1086.16 751.04,-1079.7"/>
 | |
| </g>
 | |
| <!-- MCP3002->MCP3xx2 -->
 | |
| <g id="edge38" class="edge"><title>MCP3002->MCP3xx2</title>
 | |
| <path fill="none" stroke="black" d="M812.755,-1041.95C795.036,-1040.17 772.458,-1037.89 753.364,-1035.97"/>
 | |
| <polygon fill="black" stroke="black" points="753.468,-1032.46 743.168,-1034.94 752.766,-1039.42 753.468,-1032.46"/>
 | |
| </g>
 | |
| <!-- MCP3004 -->
 | |
| <g id="node36" class="node"><title>MCP3004</title>
 | |
| <polygon fill="#2980b9" stroke="#2980b9" points="875,-1171 813,-1171 813,-1135 875,-1135 875,-1171"/>
 | |
| <text text-anchor="middle" x="844" y="-1150.5" font-family="Sans" font-size="10.00" fill="#ffffff">MCP3004</text>
 | |
| </g>
 | |
| <!-- MCP3004->MCP30xx -->
 | |
| <g id="edge32" class="edge"><title>MCP3004->MCP30xx</title>
 | |
| <path fill="none" stroke="black" d="M812.755,-1140.34C794.79,-1132.82 771.83,-1123.21 752.57,-1115.15"/>
 | |
| <polygon fill="black" stroke="black" points="753.744,-1111.84 743.168,-1111.21 751.04,-1118.3 753.744,-1111.84"/>
 | |
| </g>
 | |
| <!-- MCP3008 -->
 | |
| <g id="node37" class="node"><title>MCP3008</title>
 | |
| <polygon fill="#2980b9" stroke="#2980b9" points="875,-1117 813,-1117 813,-1081 875,-1081 875,-1117"/>
 | |
| <text text-anchor="middle" x="844" y="-1096.5" font-family="Sans" font-size="10.00" fill="#ffffff">MCP3008</text>
 | |
| </g>
 | |
| <!-- MCP3008->MCP30xx -->
 | |
| <g id="edge33" class="edge"><title>MCP3008->MCP30xx</title>
 | |
| <path fill="none" stroke="black" d="M812.755,-1099C795.036,-1099 772.458,-1099 753.364,-1099"/>
 | |
| <polygon fill="black" stroke="black" points="753.168,-1095.5 743.168,-1099 753.168,-1102.5 753.168,-1095.5"/>
 | |
| </g>
 | |
| <!-- MCP3201 -->
 | |
| <g id="node38" class="node"><title>MCP3201</title>
 | |
| <polygon fill="#2980b9" stroke="#2980b9" points="875,-955 813,-955 813,-919 875,-919 875,-955"/>
 | |
| <text text-anchor="middle" x="844" y="-934.5" font-family="Sans" font-size="10.00" fill="#ffffff">MCP3201</text>
 | |
| </g>
 | |
| <!-- MCP3201->MCP32xx -->
 | |
| <g id="edge34" class="edge"><title>MCP3201->MCP32xx</title>
 | |
| <path fill="none" stroke="black" d="M812.755,-940.282C795.036,-942.205 772.458,-944.656 753.364,-946.728"/>
 | |
| <polygon fill="black" stroke="black" points="752.732,-943.276 743.168,-947.835 753.487,-950.235 752.732,-943.276"/>
 | |
| </g>
 | |
| <!-- MCP3202 -->
 | |
| <g id="node39" class="node"><title>MCP3202</title>
 | |
| <polygon fill="#2980b9" stroke="#2980b9" points="875,-1009 813,-1009 813,-973 875,-973 875,-1009"/>
 | |
| <text text-anchor="middle" x="844" y="-988.5" font-family="Sans" font-size="10.00" fill="#ffffff">MCP3202</text>
 | |
| </g>
 | |
| <!-- MCP3202->MCP32xx -->
 | |
| <g id="edge35" class="edge"><title>MCP3202->MCP32xx</title>
 | |
| <path fill="none" stroke="black" d="M812.755,-981.622C794.872,-976.077 772.04,-968.997 752.835,-963.042"/>
 | |
| <polygon fill="black" stroke="black" points="753.756,-959.663 743.168,-960.044 751.682,-966.349 753.756,-959.663"/>
 | |
| </g>
 | |
| <!-- MCP3202->MCP3xx2 -->
 | |
| <g id="edge39" class="edge"><title>MCP3202->MCP3xx2</title>
 | |
| <path fill="none" stroke="black" d="M812.755,-1000.61C794.872,-1006.3 772.04,-1013.55 752.835,-1019.66"/>
 | |
| <polygon fill="black" stroke="black" points="751.638,-1016.37 743.168,-1022.73 753.758,-1023.04 751.638,-1016.37"/>
 | |
| </g>
 | |
| <!-- MCP3204 -->
 | |
| <g id="node40" class="node"><title>MCP3204</title>
 | |
| <polygon fill="#2980b9" stroke="#2980b9" points="875,-901 813,-901 813,-865 875,-865 875,-901"/>
 | |
| <text text-anchor="middle" x="844" y="-880.5" font-family="Sans" font-size="10.00" fill="#ffffff">MCP3204</text>
 | |
| </g>
 | |
| <!-- MCP3204->MCP32xx -->
 | |
| <g id="edge36" class="edge"><title>MCP3204->MCP32xx</title>
 | |
| <path fill="none" stroke="black" d="M812.755,-898.943C794.626,-908.5 771.41,-920.737 752.044,-930.946"/>
 | |
| <polygon fill="black" stroke="black" points="750.382,-927.865 743.168,-935.625 753.646,-934.058 750.382,-927.865"/>
 | |
| </g>
 | |
| <!-- MCP3208 -->
 | |
| <g id="node41" class="node"><title>MCP3208</title>
 | |
| <polygon fill="#2980b9" stroke="#2980b9" points="875,-847 813,-847 813,-811 875,-811 875,-847"/>
 | |
| <text text-anchor="middle" x="844" y="-826.5" font-family="Sans" font-size="10.00" fill="#ffffff">MCP3208</text>
 | |
| </g>
 | |
| <!-- MCP3208->MCP32xx -->
 | |
| <g id="edge37" class="edge"><title>MCP3208->MCP32xx</title>
 | |
| <path fill="none" stroke="black" d="M812.734,-844.022C807.435,-847.491 802.262,-851.504 798,-856 774.475,-880.819 785.87,-899.513 762,-924 758.875,-927.206 755.287,-930.143 751.51,-932.801"/>
 | |
| <polygon fill="black" stroke="black" points="749.613,-929.859 743.046,-938.173 753.365,-935.769 749.613,-929.859"/>
 | |
| </g>
 | |
| <!-- MCP3301 -->
 | |
| <g id="node42" class="node"><title>MCP3301</title>
 | |
| <polygon fill="#2980b9" stroke="#2980b9" points="875,-1387 813,-1387 813,-1351 875,-1351 875,-1387"/>
 | |
| <text text-anchor="middle" x="844" y="-1366.5" font-family="Sans" font-size="10.00" fill="#ffffff">MCP3301</text>
 | |
| </g>
 | |
| <!-- MCP3301->MCP33xx -->
 | |
| <g id="edge40" class="edge"><title>MCP3301->MCP33xx</title>
 | |
| <path fill="none" stroke="black" d="M812.907,-1351.12C807.912,-1348.1 802.798,-1344.98 798,-1342 782.39,-1332.3 765.305,-1321.38 750.644,-1311.9"/>
 | |
| <polygon fill="black" stroke="black" points="752.159,-1308.72 741.863,-1306.22 748.353,-1314.59 752.159,-1308.72"/>
 | |
| </g>
 | |
| <!-- MCP3302 -->
 | |
| <g id="node43" class="node"><title>MCP3302</title>
 | |
| <polygon fill="#2980b9" stroke="#2980b9" points="875,-1333 813,-1333 813,-1297 875,-1297 875,-1333"/>
 | |
| <text text-anchor="middle" x="844" y="-1312.5" font-family="Sans" font-size="10.00" fill="#ffffff">MCP3302</text>
 | |
| </g>
 | |
| <!-- MCP3302->MCP33xx -->
 | |
| <g id="edge41" class="edge"><title>MCP3302->MCP33xx</title>
 | |
| <path fill="none" stroke="black" d="M812.755,-1308.67C794.954,-1304.94 772.249,-1300.19 753.099,-1296.18"/>
 | |
| <polygon fill="black" stroke="black" points="753.673,-1292.73 743.168,-1294.1 752.238,-1299.58 753.673,-1292.73"/>
 | |
| </g>
 | |
| <!-- MCP3304 -->
 | |
| <g id="node44" class="node"><title>MCP3304</title>
 | |
| <polygon fill="#2980b9" stroke="#2980b9" points="875,-1279 813,-1279 813,-1243 875,-1243 875,-1279"/>
 | |
| <text text-anchor="middle" x="844" y="-1258.5" font-family="Sans" font-size="10.00" fill="#ffffff">MCP3304</text>
 | |
| </g>
 | |
| <!-- MCP3304->MCP33xx -->
 | |
| <g id="edge42" class="edge"><title>MCP3304->MCP33xx</title>
 | |
| <path fill="none" stroke="black" d="M812.755,-1267.33C794.954,-1271.06 772.249,-1275.81 753.099,-1279.82"/>
 | |
| <polygon fill="black" stroke="black" points="752.238,-1276.42 743.168,-1281.9 753.673,-1283.27 752.238,-1276.42"/>
 | |
| </g>
 | |
| <!-- LEDBoard -->
 | |
| <g id="node45" class="node"><title>LEDBoard</title>
 | |
| <polygon fill="#2980b9" stroke="#2980b9" points="745,-117 681,-117 681,-81 745,-81 745,-117"/>
 | |
| <text text-anchor="middle" x="713" y="-96.5" font-family="Sans" font-size="10.00" fill="#ffffff">LEDBoard</text>
 | |
| </g>
 | |
| <!-- LEDBoard->LEDCollection -->
 | |
| <g id="edge47" class="edge"><title>LEDBoard->LEDCollection</title>
 | |
| <path fill="none" stroke="black" d="M680.646,-99C662.242,-99 638.559,-99 617.621,-99"/>
 | |
| <polygon fill="black" stroke="black" points="617.598,-95.5001 607.598,-99 617.598,-102.5 617.598,-95.5001"/>
 | |
| </g>
 | |
| <!-- LEDBarGraph -->
 | |
| <g id="node46" class="node"><title>LEDBarGraph</title>
 | |
| <polygon fill="#2980b9" stroke="#2980b9" points="753.5,-63 672.5,-63 672.5,-27 753.5,-27 753.5,-63"/>
 | |
| <text text-anchor="middle" x="713" y="-42.5" font-family="Sans" font-size="10.00" fill="#ffffff">LEDBarGraph</text>
 | |
| </g>
 | |
| <!-- LEDBarGraph->LEDCollection -->
 | |
| <g id="edge48" class="edge"><title>LEDBarGraph->LEDCollection</title>
 | |
| <path fill="none" stroke="black" d="M672.132,-59.8987C655.216,-66.2204 635.313,-73.658 617.433,-80.3399"/>
 | |
| <polygon fill="black" stroke="black" points="615.881,-77.1833 607.739,-83.9625 618.332,-83.7404 615.881,-77.1833"/>
 | |
| </g>
 | |
| <!-- LedBorg -->
 | |
| <g id="node47" class="node"><title>LedBorg</title>
 | |
| <polygon fill="#2980b9" stroke="#2980b9" points="594.5,-63 538.5,-63 538.5,-27 594.5,-27 594.5,-63"/>
 | |
| <text text-anchor="middle" x="566.5" y="-42.5" font-family="Sans" font-size="10.00" fill="#ffffff">LedBorg</text>
 | |
| </g>
 | |
| <!-- LedBorg->RGBLED -->
 | |
| <g id="edge49" class="edge"><title>LedBorg->RGBLED</title>
 | |
| <path fill="none" stroke="black" d="M538.301,-45C511.387,-45 469.993,-45 440.077,-45"/>
 | |
| <polygon fill="black" stroke="black" points="440.017,-41.5001 430.017,-45 440.017,-48.5001 440.017,-41.5001"/>
 | |
| </g>
 | |
| <!-- ButtonBoard -->
 | |
| <g id="node48" class="node"><title>ButtonBoard</title>
 | |
| <polygon fill="#2980b9" stroke="#2980b9" points="751.5,-429 674.5,-429 674.5,-393 751.5,-393 751.5,-429"/>
 | |
| <text text-anchor="middle" x="713" y="-408.5" font-family="Sans" font-size="10.00" fill="#ffffff">ButtonBoard</text>
 | |
| </g>
 | |
| <!-- ButtonBoard->HoldMixin -->
 | |
| <g id="edge51" class="edge"><title>ButtonBoard->HoldMixin</title>
 | |
| <path fill="none" stroke="black" d="M675.701,-429.122C671.566,-431.842 667.564,-434.813 664,-438 643.587,-456.252 649.236,-470.712 628,-488 621.728,-493.106 614.338,-497.444 606.916,-501.05"/>
 | |
| <polygon fill="black" stroke="black" points="605.277,-497.949 597.58,-505.23 608.138,-504.338 605.277,-497.949"/>
 | |
| </g>
 | |
| <!-- ButtonBoard->CompositeDevice -->
 | |
| <g id="edge50" class="edge"><title>ButtonBoard->CompositeDevice</title>
 | |
| <path fill="none" stroke="black" d="M674.259,-410.917C632.499,-410.212 563.383,-407.225 505,-396 427.15,-381.032 406.878,-375.439 335,-342 317.036,-333.643 298.295,-322.16 282.953,-311.931"/>
 | |
| <polygon fill="black" stroke="black" points="284.584,-308.808 274.344,-306.087 280.652,-314.6 284.584,-308.808"/>
 | |
| </g>
 | |
| <!-- PiLiter -->
 | |
| <g id="node49" class="node"><title>PiLiter</title>
 | |
| <polygon fill="#2980b9" stroke="#2980b9" points="871,-144 817,-144 817,-108 871,-108 871,-144"/>
 | |
| <text text-anchor="middle" x="844" y="-123.5" font-family="Sans" font-size="10.00" fill="#ffffff">PiLiter</text>
 | |
| </g>
 | |
| <!-- PiLiter->LEDBoard -->
 | |
| <g id="edge52" class="edge"><title>PiLiter->LEDBoard</title>
 | |
| <path fill="none" stroke="black" d="M816.895,-120.536C799.134,-116.819 775.267,-111.823 754.991,-107.579"/>
 | |
| <polygon fill="black" stroke="black" points="755.573,-104.126 745.068,-105.503 754.139,-110.977 755.573,-104.126"/>
 | |
| </g>
 | |
| <!-- PiLiterBarGraph -->
 | |
| <g id="node50" class="node"><title>PiLiterBarGraph</title>
 | |
| <polygon fill="#2980b9" stroke="#2980b9" points="890,-36 798,-36 798,-0 890,-0 890,-36"/>
 | |
| <text text-anchor="middle" x="844" y="-15.5" font-family="Sans" font-size="10.00" fill="#ffffff">PiLiterBarGraph</text>
 | |
| </g>
 | |
| <!-- PiLiterBarGraph->LEDBarGraph -->
 | |
| <g id="edge53" class="edge"><title>PiLiterBarGraph->LEDBarGraph</title>
 | |
| <path fill="none" stroke="black" d="M797.882,-27.4433C786.868,-29.7486 775.022,-32.2279 763.803,-34.576"/>
 | |
| <polygon fill="black" stroke="black" points="762.789,-31.2124 753.718,-36.6869 764.223,-38.0639 762.789,-31.2124"/>
 | |
| </g>
 | |
| <!-- TrafficLights -->
 | |
| <g id="node51" class="node"><title>TrafficLights</title>
 | |
| <polygon fill="#2980b9" stroke="#2980b9" points="880,-90 808,-90 808,-54 880,-54 880,-90"/>
 | |
| <text text-anchor="middle" x="844" y="-69.5" font-family="Sans" font-size="10.00" fill="#ffffff">TrafficLights</text>
 | |
| </g>
 | |
| <!-- TrafficLights->LEDBoard -->
 | |
| <g id="edge54" class="edge"><title>TrafficLights->LEDBoard</title>
 | |
| <path fill="none" stroke="black" d="M807.75,-79.3779C791.565,-82.7655 772.261,-86.8058 755.389,-90.3371"/>
 | |
| <polygon fill="black" stroke="black" points="754.319,-86.9853 745.248,-92.4597 755.753,-93.8368 754.319,-86.9853"/>
 | |
| </g>
 | |
| <!-- SnowPi -->
 | |
| <g id="node52" class="node"><title>SnowPi</title>
 | |
| <polygon fill="#2980b9" stroke="#2980b9" points="871,-198 817,-198 817,-162 871,-162 871,-198"/>
 | |
| <text text-anchor="middle" x="844" y="-177.5" font-family="Sans" font-size="10.00" fill="#ffffff">SnowPi</text>
 | |
| </g>
 | |
| <!-- SnowPi->LEDBoard -->
 | |
| <g id="edge55" class="edge"><title>SnowPi->LEDBoard</title>
 | |
| <path fill="none" stroke="black" d="M816.54,-164.743C810.378,-161.021 803.897,-156.965 798,-153 781.403,-141.84 778.752,-136.926 762,-126 759.401,-124.305 756.69,-122.606 753.936,-120.931"/>
 | |
| <polygon fill="black" stroke="black" points="755.473,-117.773 745.084,-115.697 751.911,-123.799 755.473,-117.773"/>
 | |
| </g>
 | |
| <!-- PiTraffic -->
 | |
| <g id="node53" class="node"><title>PiTraffic</title>
 | |
| <polygon fill="#2980b9" stroke="#2980b9" points="990.5,-117 936.5,-117 936.5,-81 990.5,-81 990.5,-117"/>
 | |
| <text text-anchor="middle" x="963.5" y="-96.5" font-family="Sans" font-size="10.00" fill="#ffffff">PiTraffic</text>
 | |
| </g>
 | |
| <!-- PiTraffic->TrafficLights -->
 | |
| <g id="edge56" class="edge"><title>PiTraffic->TrafficLights</title>
 | |
| <path fill="none" stroke="black" d="M936.423,-93.0078C922.89,-89.8982 905.966,-86.0093 890.371,-82.4257"/>
 | |
| <polygon fill="black" stroke="black" points="890.893,-78.9545 880.363,-80.1261 889.326,-85.7767 890.893,-78.9545"/>
 | |
| </g>
 | |
| <!-- PiStop -->
 | |
| <g id="node54" class="node"><title>PiStop</title>
 | |
| <polygon fill="#2980b9" stroke="#2980b9" points="990.5,-63 936.5,-63 936.5,-27 990.5,-27 990.5,-63"/>
 | |
| <text text-anchor="middle" x="963.5" y="-42.5" font-family="Sans" font-size="10.00" fill="#ffffff">PiStop</text>
 | |
| </g>
 | |
| <!-- PiStop->TrafficLights -->
 | |
| <g id="edge57" class="edge"><title>PiStop->TrafficLights</title>
 | |
| <path fill="none" stroke="black" d="M936.423,-50.9922C922.89,-54.1018 905.966,-57.9907 890.371,-61.5743"/>
 | |
| <polygon fill="black" stroke="black" points="889.326,-58.2233 880.363,-63.8739 890.893,-65.0455 889.326,-58.2233"/>
 | |
| </g>
 | |
| <!-- TrafficLightsBuzzer -->
 | |
| <g id="node55" class="node"><title>TrafficLightsBuzzer</title>
 | |
| <polygon fill="#2980b9" stroke="#2980b9" points="619,-171 514,-171 514,-135 619,-135 619,-171"/>
 | |
| <text text-anchor="middle" x="566.5" y="-150.5" font-family="Sans" font-size="10.00" fill="#ffffff">TrafficLightsBuzzer</text>
 | |
| </g>
 | |
| <!-- TrafficLightsBuzzer->CompositeOutputDevice -->
 | |
| <g id="edge58" class="edge"><title>TrafficLightsBuzzer->CompositeOutputDevice</title>
 | |
| <path fill="none" stroke="black" d="M513.637,-153C502.717,-153 490.979,-153 479.374,-153"/>
 | |
| <polygon fill="black" stroke="black" points="479.234,-149.5 469.234,-153 479.234,-156.5 479.234,-149.5"/>
 | |
| </g>
 | |
| <!-- FishDish -->
 | |
| <g id="node56" class="node"><title>FishDish</title>
 | |
| <polygon fill="#2980b9" stroke="#2980b9" points="741,-225 685,-225 685,-189 741,-189 741,-225"/>
 | |
| <text text-anchor="middle" x="713" y="-204.5" font-family="Sans" font-size="10.00" fill="#ffffff">FishDish</text>
 | |
| </g>
 | |
| <!-- FishDish->TrafficLightsBuzzer -->
 | |
| <g id="edge59" class="edge"><title>FishDish->TrafficLightsBuzzer</title>
 | |
| <path fill="none" stroke="black" d="M684.821,-196.843C668.094,-190.592 646.001,-182.336 625.502,-174.675"/>
 | |
| <polygon fill="black" stroke="black" points="626.502,-171.313 615.91,-171.091 624.052,-177.87 626.502,-171.313"/>
 | |
| </g>
 | |
| <!-- TrafficHat -->
 | |
| <g id="node57" class="node"><title>TrafficHat</title>
 | |
| <polygon fill="#2980b9" stroke="#2980b9" points="743.5,-171 682.5,-171 682.5,-135 743.5,-135 743.5,-171"/>
 | |
| <text text-anchor="middle" x="713" y="-150.5" font-family="Sans" font-size="10.00" fill="#ffffff">TrafficHat</text>
 | |
| </g>
 | |
| <!-- TrafficHat->TrafficLightsBuzzer -->
 | |
| <g id="edge60" class="edge"><title>TrafficHat->TrafficLightsBuzzer</title>
 | |
| <path fill="none" stroke="black" d="M682.41,-153C667.083,-153 647.765,-153 629.366,-153"/>
 | |
| <polygon fill="black" stroke="black" points="629.269,-149.5 619.269,-153 629.269,-156.5 629.269,-149.5"/>
 | |
| </g>
 | |
| <!-- Robot -->
 | |
| <g id="node58" class="node"><title>Robot</title>
 | |
| <polygon fill="#2980b9" stroke="#2980b9" points="429,-333 375,-333 375,-297 429,-297 429,-333"/>
 | |
| <text text-anchor="middle" x="402" y="-312.5" font-family="Sans" font-size="10.00" fill="#ffffff">Robot</text>
 | |
| </g>
 | |
| <!-- Robot->SourceMixin -->
 | |
| <g id="edge62" class="edge"><title>Robot->SourceMixin</title>
 | |
| <path fill="none" stroke="black" d="M374.839,-306.829C362.254,-302.28 347.272,-295.924 335,-288 311.166,-272.61 288.052,-250.109 271.878,-232.725"/>
 | |
| <polygon fill="black" stroke="black" points="274.284,-230.169 264.958,-225.142 269.114,-234.888 274.284,-230.169"/>
 | |
| </g>
 | |
| <!-- Robot->CompositeDevice -->
 | |
| <g id="edge61" class="edge"><title>Robot->CompositeDevice</title>
 | |
| <path fill="none" stroke="black" d="M374.956,-310.359C356.827,-307.128 331.897,-302.685 309.035,-298.61"/>
 | |
| <polygon fill="black" stroke="black" points="309.508,-295.139 299.049,-296.831 308.28,-302.031 309.508,-295.139"/>
 | |
| </g>
 | |
| <!-- Energenie -->
 | |
| <g id="node59" class="node"><title>Energenie</title>
 | |
| <polygon fill="#2980b9" stroke="#2980b9" points="434.5,-117 369.5,-117 369.5,-81 434.5,-81 434.5,-117"/>
 | |
| <text text-anchor="middle" x="402" y="-96.5" font-family="Sans" font-size="10.00" fill="#ffffff">Energenie</text>
 | |
| </g>
 | |
| <!-- Energenie->SourceMixin -->
 | |
| <g id="edge64" class="edge"><title>Energenie->SourceMixin</title>
 | |
| <path fill="none" stroke="black" d="M369.266,-109.249C357.993,-113.584 345.504,-119.217 335,-126 321.996,-134.397 294.467,-161.194 274.143,-181.69"/>
 | |
| <polygon fill="black" stroke="black" points="271.551,-179.333 267.021,-188.91 276.535,-184.248 271.551,-179.333"/>
 | |
| </g>
 | |
| <!-- Energenie->Device -->
 | |
| <g id="edge63" class="edge"><title>Energenie->Device</title>
 | |
| <path fill="none" stroke="black" d="M369.148,-103.153C324.655,-110.62 244.18,-130.452 198,-180 154.403,-226.776 141.462,-304.274 137.621,-345.748"/>
 | |
| <polygon fill="black" stroke="black" points="134.113,-345.706 136.794,-355.956 141.09,-346.271 134.113,-345.706"/>
 | |
| </g>
 | |
| <!-- RyanteckRobot -->
 | |
| <g id="node60" class="node"><title>RyanteckRobot</title>
 | |
| <polygon fill="#2980b9" stroke="#2980b9" points="609.5,-279 523.5,-279 523.5,-243 609.5,-243 609.5,-279"/>
 | |
| <text text-anchor="middle" x="566.5" y="-258.5" font-family="Sans" font-size="10.00" fill="#ffffff">RyanteckRobot</text>
 | |
| </g>
 | |
| <!-- RyanteckRobot->Robot -->
 | |
| <g id="edge65" class="edge"><title>RyanteckRobot->Robot</title>
 | |
| <path fill="none" stroke="black" d="M523.229,-275.047C497.111,-283.726 463.951,-294.745 439.074,-303.012"/>
 | |
| <polygon fill="black" stroke="black" points="437.689,-299.784 429.303,-306.259 439.897,-306.427 437.689,-299.784"/>
 | |
| </g>
 | |
| <!-- CamJamKitRobot -->
 | |
| <g id="node61" class="node"><title>CamJamKitRobot</title>
 | |
| <polygon fill="#2980b9" stroke="#2980b9" points="614.5,-333 518.5,-333 518.5,-297 614.5,-297 614.5,-333"/>
 | |
| <text text-anchor="middle" x="566.5" y="-312.5" font-family="Sans" font-size="10.00" fill="#ffffff">CamJamKitRobot</text>
 | |
| </g>
 | |
| <!-- CamJamKitRobot->Robot -->
 | |
| <g id="edge66" class="edge"><title>CamJamKitRobot->Robot</title>
 | |
| <path fill="none" stroke="black" d="M518.498,-315C493.3,-315 462.721,-315 439.36,-315"/>
 | |
| <polygon fill="black" stroke="black" points="439.179,-311.5 429.179,-315 439.179,-318.5 439.179,-311.5"/>
 | |
| </g>
 | |
| <!-- Motor -->
 | |
| <g id="node62" class="node"><title>Motor</title>
 | |
| <polygon fill="#2980b9" stroke="#2980b9" points="429,-279 375,-279 375,-243 429,-243 429,-279"/>
 | |
| <text text-anchor="middle" x="402" y="-258.5" font-family="Sans" font-size="10.00" fill="#ffffff">Motor</text>
 | |
| </g>
 | |
| <!-- Motor->SourceMixin -->
 | |
| <g id="edge68" class="edge"><title>Motor->SourceMixin</title>
 | |
| <path fill="none" stroke="black" d="M374.956,-251.717C353.126,-243.936 321.435,-232.64 295.367,-223.349"/>
 | |
| <polygon fill="black" stroke="black" points="296.278,-219.958 285.683,-219.897 293.928,-226.551 296.278,-219.958"/>
 | |
| </g>
 | |
| <!-- Motor->CompositeDevice -->
 | |
| <g id="edge67" class="edge"><title>Motor->CompositeDevice</title>
 | |
| <path fill="none" stroke="black" d="M374.956,-265.641C356.827,-268.872 331.897,-273.315 309.035,-277.39"/>
 | |
| <polygon fill="black" stroke="black" points="308.28,-273.969 299.049,-279.169 309.508,-280.861 308.28,-273.969"/>
 | |
| </g>
 | |
| <!-- Servo -->
 | |
| <g id="node63" class="node"><title>Servo</title>
 | |
| <polygon fill="#2980b9" stroke="#2980b9" points="429,-225 375,-225 375,-189 429,-189 429,-225"/>
 | |
| <text text-anchor="middle" x="402" y="-204.5" font-family="Sans" font-size="10.00" fill="#ffffff">Servo</text>
 | |
| </g>
 | |
| <!-- Servo->SourceMixin -->
 | |
| <g id="edge70" class="edge"><title>Servo->SourceMixin</title>
 | |
| <path fill="none" stroke="black" d="M374.956,-207C353.222,-207 321.714,-207 295.712,-207"/>
 | |
| <polygon fill="black" stroke="black" points="295.684,-203.5 285.683,-207 295.683,-210.5 295.684,-203.5"/>
 | |
| </g>
 | |
| <!-- Servo->CompositeDevice -->
 | |
| <g id="edge69" class="edge"><title>Servo->CompositeDevice</title>
 | |
| <path fill="none" stroke="black" d="M374.827,-216.491C362.514,-221.261 347.766,-227.422 335,-234 317.649,-242.941 299.243,-254.301 283.97,-264.293"/>
 | |
| <polygon fill="black" stroke="black" points="281.775,-261.548 275.372,-269.989 285.641,-267.384 281.775,-261.548"/>
 | |
| </g>
 | |
| <!-- AngularServo -->
 | |
| <g id="node64" class="node"><title>AngularServo</title>
 | |
| <polygon fill="#2980b9" stroke="#2980b9" points="607,-225 526,-225 526,-189 607,-189 607,-225"/>
 | |
| <text text-anchor="middle" x="566.5" y="-204.5" font-family="Sans" font-size="10.00" fill="#ffffff">AngularServo</text>
 | |
| </g>
 | |
| <!-- AngularServo->Servo -->
 | |
| <g id="edge71" class="edge"><title>AngularServo->Servo</title>
 | |
| <path fill="none" stroke="black" d="M525.748,-207C499.322,-207 464.889,-207 439.22,-207"/>
 | |
| <polygon fill="black" stroke="black" points="439.154,-203.5 429.154,-207 439.154,-210.5 439.154,-203.5"/>
 | |
| </g>
 | |
| <!-- TimeOfDay -->
 | |
| <g id="node65" class="node"><title>TimeOfDay</title>
 | |
| <polygon fill="#2980b9" stroke="#2980b9" points="747.5,-645 678.5,-645 678.5,-609 747.5,-609 747.5,-645"/>
 | |
| <text text-anchor="middle" x="713" y="-624.5" font-family="Sans" font-size="10.00" fill="#ffffff">TimeOfDay</text>
 | |
| </g>
 | |
| <!-- TimeOfDay->InternalDevice -->
 | |
| <g id="edge74" class="edge"><title>TimeOfDay->InternalDevice</title>
 | |
| <path fill="none" stroke="black" d="M678.486,-627C660.878,-627 638.914,-627 619.182,-627"/>
 | |
| <polygon fill="black" stroke="black" points="619.102,-623.5 609.102,-627 619.101,-630.5 619.102,-623.5"/>
 | |
| </g>
 | |
| <!-- PingServer -->
 | |
| <g id="node66" class="node"><title>PingServer</title>
 | |
| <polygon fill="#2980b9" stroke="#2980b9" points="747,-591 679,-591 679,-555 747,-555 747,-591"/>
 | |
| <text text-anchor="middle" x="713" y="-570.5" font-family="Sans" font-size="10.00" fill="#ffffff">PingServer</text>
 | |
| </g>
 | |
| <!-- PingServer->InternalDevice -->
 | |
| <g id="edge75" class="edge"><title>PingServer->InternalDevice</title>
 | |
| <path fill="none" stroke="black" d="M678.849,-585.389C661.019,-592.052 638.643,-600.414 618.636,-607.891"/>
 | |
| <polygon fill="black" stroke="black" points="617.176,-604.699 609.034,-611.479 619.627,-611.256 617.176,-604.699"/>
 | |
| </g>
 | |
| <!-- CPUTemperature -->
 | |
| <g id="node67" class="node"><title>CPUTemperature</title>
 | |
| <polygon fill="#2980b9" stroke="#2980b9" points="762,-699 664,-699 664,-663 762,-663 762,-699"/>
 | |
| <text text-anchor="middle" x="713" y="-678.5" font-family="Sans" font-size="10.00" fill="#ffffff">CPUTemperature</text>
 | |
| </g>
 | |
| <!-- CPUTemperature->InternalDevice -->
 | |
| <g id="edge76" class="edge"><title>CPUTemperature->InternalDevice</title>
 | |
| <path fill="none" stroke="black" d="M663.884,-663.019C649.337,-657.583 633.315,-651.595 618.581,-646.089"/>
 | |
| <polygon fill="black" stroke="black" points="619.706,-642.773 609.114,-642.551 617.256,-649.33 619.706,-642.773"/>
 | |
| </g>
 | |
| </g>
 | |
| </svg>
 |