<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<DRIVER HEADER="Turtle.h">
   <REQUIRE HEADER="Servo.h"/>
   
   <!-- DC Motor enumeration -->
   <ENUMERATION NAME="DIRECTION">
      <CONSTANT NAME="FORWARDS" VALUE="1" />
      <CONSTANT NAME="BACKWARDS" VALUE="0" />
   </ENUMERATION>
   <ENUMERATION NAME="WHEEL">
      <CONSTANT NAME="LEFT" VALUE="1" />
      <CONSTANT NAME="RIGHT" VALUE="2" />
      <CONSTANT NAME="BOTH" VALUE="3" />
   </ENUMERATION>
      
   <!-- DC Motor methods -->
   <FUNCTION DESC="TRUE if motor is running"> 
  	   <RETURN TYPE="BOOLEAN"/>
   </FUNCTION>     
   
   <METHOD NAME="drive"  DESC="Drive the motor forwards or backwards.">
      <PARAMETER NAME="wheel" TYPE="WHEEL" DEFAULT="BOTH" DESC="Wheel to drive"/>
      <PARAMETER NAME="dir" TYPE="DIRECTION" DEFAULT="FORWARDS" DESC="Direction to spin"/>
      <PARAMETER NAME="speed" TYPE="INTEGER" DEFAULT="255" DESC="Speed value (0..255)"/>
   </METHOD>
   <METHOD NAME="forwards" DESC="Drive the turtle forwards">
      <PARAMETER NAME="speed" TYPE="INTEGER" DEFAULT="255" DESC="Speed value (0..255)"/>
   </METHOD>
   <METHOD NAME="backwards" DESC="Drive the turtle backwards">
      <PARAMETER NAME="speed" TYPE="INTEGER" DEFAULT="255" DESC="Speed value (0..255)"/>
   </METHOD>
   <METHOD NAME="turn" DESC="Rotates the turtle. (+ve speed is CW, -ve CCW)">
      <PARAMETER NAME="speed" TYPE="INTEGER" DEFAULT="255" DESC="Speed value (-255..255)"/>
   </METHOD>
   <METHOD NAME="stop" DESC="Stops the turtle. )"/>

</DRIVER>
