<?xml version="1.0" encoding="UTF-8"?>
<root BTCPP_format="4">
  <BehaviorTree ID="wheel_ratio_calibration">
    <Sequence>
      <Delay delay_msec="5000">
        <RotateSimple angle="0"
                      max_speed="0.000000"
                      min_angle="270"
                      action_name=""/>
      </Delay>
      <Sequence>
        <MovePointSimple x="1.0"
                         y="0"
                         theta="0"
                         max_speed="0.10000"
                         action_name=""/>
        <RotateSimple angle="180"
                      max_speed="0.500000"
                      min_angle="10"
                      action_name=""/>
        <MovePointSimple x="0.4"
                         y="0"
                         theta="180"
                         max_speed="0.100000"
                         action_name=""/>
        <RotateSimple angle="0"
                      max_speed="0.500000"
                      min_angle="-10"
                      action_name=""/>
      </Sequence>
      <TranslateX x="-0.5"
                  max_speed="0.050000"
                  action_name=""/>
      <RotateSimple angle="0"
                    max_speed="0.000000"
                    min_angle="-270"
                    action_name=""/>
    </Sequence>
  </BehaviorTree>

  <!-- Description of Node Models (used by Groot) -->
  <TreeNodesModel>
    <Action ID="MovePointSimple">
      <input_port name="x"
                  type="double"/>
      <input_port name="y"
                  type="double"/>
      <input_port name="theta"
                  type="double"/>
      <input_port name="max_speed"
                  default="0.000000"
                  type="double"/>
      <input_port name="action_name"
                  type="std::string">Action server name</input_port>
    </Action>
    <Action ID="RotateSimple">
      <input_port name="angle"
                  type="double"/>
      <input_port name="max_speed"
                  default="0.000000"
                  type="double"/>
      <input_port name="min_angle"
                  default="0.000000"
                  type="double"/>
      <input_port name="action_name"
                  type="std::string">Action server name</input_port>
    </Action>
    <Action ID="TranslateX">
      <input_port name="x"
                  type="double"/>
      <input_port name="max_speed"
                  default="0.000000"
                  type="double"/>
      <input_port name="action_name"
                  type="std::string">Action server name</input_port>
    </Action>
  </TreeNodesModel>

</root>
