/* vim: set et sw=4 sts=4: */ digraph classes { graph [rankdir=RL]; node [shape=rect, style=filled, fontname=Sans, fontsize=10]; edge []; /* Mixin classes */ node [color="#c69ee0", fontcolor="#000000"] ValuesMixin; SourceMixin; SharedMixin; EventsMixin; HoldMixin; /* Abstract classes */ node [color="#9ec6e0", fontcolor="#000000"] Device; GPIODevice; SmoothedInputDevice; AnalogInputDevice; MCP3xxx; MCP33xx; CompositeDevice; CompositeOutputDevice; LEDCollection; InternalDevice; GPIODevice->Device; Device->ValuesMixin; /* Concrete classes */ node [color="#2980b9", fontcolor="#ffffff"]; InputDevice->GPIODevice; DigitalInputDevice->InputDevice; DigitalInputDevice->EventsMixin; SmoothedInputDevice->InputDevice; SmoothedInputDevice->EventsMixin; Button->DigitalInputDevice; Button->HoldMixin; MotionSensor->SmoothedInputDevice; LightSensor->SmoothedInputDevice; LineSensor->SmoothedInputDevice; DistanceSensor->SmoothedInputDevice; OutputDevice->GPIODevice; OutputDevice->SourceMixin; DigitalOutputDevice->OutputDevice; LED->DigitalOutputDevice; Buzzer->DigitalOutputDevice; PWMOutputDevice->OutputDevice; PWMLED->PWMOutputDevice; RGBLED->Device; RGBLED->SourceMixin; SPIDevice->Device; AnalogInputDevice->SPIDevice; MCP3xxx->AnalogInputDevice; MCP30xx->MCP3xxx; MCP32xx->MCP3xxx; MCP33xx->MCP3xxx; MCP3xx2->MCP3xxx; MCP3001->MCP30xx; MCP3002->MCP30xx; MCP3004->MCP30xx; MCP3008->MCP30xx; MCP3201->MCP32xx; MCP3202->MCP32xx; MCP3204->MCP32xx; MCP3208->MCP32xx; MCP3002->MCP3xx2; MCP3202->MCP3xx2; MCP3301->MCP33xx; MCP3302->MCP33xx; MCP3304->MCP33xx; CompositeDevice->Device; CompositeOutputDevice->CompositeDevice; CompositeOutputDevice->SourceMixin; LEDCollection->CompositeOutputDevice; LEDBoard->LEDCollection; LEDBarGraph->LEDCollection; LedBorg->RGBLED; ButtonBoard->CompositeDevice; ButtonBoard->HoldMixin; PiLiter->LEDBoard; PiLiterBarGraph->LEDBarGraph; StatusZero->LEDBoard; TrafficLights->LEDBoard; SnowPi->LEDBoard; PiTraffic->TrafficLights; PiStop->TrafficLights; TrafficLightsBuzzer->CompositeOutputDevice; StatusBoard->CompositeOutputDevice; FishDish->TrafficLightsBuzzer; TrafficHat->TrafficLightsBuzzer; Robot->CompositeDevice; Robot->SourceMixin; Energenie->Device; Energenie->SourceMixin; RyanteckRobot->Robot; CamJamKitRobot->Robot; Motor->CompositeDevice; Motor->SourceMixin; Servo->CompositeDevice; Servo->SourceMixin; AngularServo->Servo; InternalDevice->Device; InternalDevice->EventsMixin; TimeOfDay->InternalDevice; PingServer->InternalDevice; CPUTemperature->InternalDevice; }