<?xml version='1.0' encoding='ISO-8859-1' standalone='yes' ?>
<tagfile>
  <compound kind="file">
    <name>__init__.py</name>
    <path>/home/rosbuild/hudson/workspace/doc-fuerte-starmac-ros-pkg/doc_stacks/2014-01-05_11-35-11.500740/starmac-ros-pkg/starmac_flyer/flyer_controller/src/flyer_controller/</path>
    <filename>____init_____8py</filename>
    <namespace>flyer_controller</namespace>
  </compound>
  <compound kind="file">
    <name>attitude_controller.cpp</name>
    <path>/home/rosbuild/hudson/workspace/doc-fuerte-starmac-ros-pkg/doc_stacks/2014-01-05_11-35-11.500740/starmac-ros-pkg/starmac_flyer/flyer_controller/src/</path>
    <filename>attitude__controller_8cpp</filename>
    <includes id="attitude__controller_8h" name="attitude_controller.h" local="yes" imported="no">flyer_controller/attitude_controller.h</includes>
    <namespace>flyer_controller</namespace>
  </compound>
  <compound kind="file">
    <name>attitude_controller.h</name>
    <path>/home/rosbuild/hudson/workspace/doc-fuerte-starmac-ros-pkg/doc_stacks/2014-01-05_11-35-11.500740/starmac-ros-pkg/starmac_flyer/flyer_controller/include/flyer_controller/</path>
    <filename>attitude__controller_8h</filename>
    <includes id="control__mode_8h" name="control_mode.h" local="yes" imported="no">flyer_controller/control_mode.h</includes>
    <includes id="joystick__modes_8h" name="joystick_modes.h" local="yes" imported="no">flyer_controller/joystick_modes.h</includes>
    <includes id="control__utils_8h" name="control_utils.h" local="yes" imported="no">flyer_controller/control_utils.h</includes>
    <class kind="class">flyer_controller::AttitudeController</class>
    <namespace>flyer_controller</namespace>
  </compound>
  <compound kind="file">
    <name>control_mode.cpp</name>
    <path>/home/rosbuild/hudson/workspace/doc-fuerte-starmac-ros-pkg/doc_stacks/2014-01-05_11-35-11.500740/starmac-ros-pkg/starmac_flyer/flyer_controller/src/</path>
    <filename>control__mode_8cpp</filename>
    <includes id="control__mode_8h" name="control_mode.h" local="yes" imported="no">flyer_controller/control_mode.h</includes>
    <namespace>flyer_controller</namespace>
  </compound>
  <compound kind="file">
    <name>control_mode.h</name>
    <path>/home/rosbuild/hudson/workspace/doc-fuerte-starmac-ros-pkg/doc_stacks/2014-01-05_11-35-11.500740/starmac-ros-pkg/starmac_flyer/flyer_controller/include/flyer_controller/</path>
    <filename>control__mode_8h</filename>
    <includes id="control__utils_8h" name="control_utils.h" local="yes" imported="no">flyer_controller/control_utils.h</includes>
    <class kind="class">flyer_controller::ControlMode</class>
    <namespace>flyer_controller</namespace>
    <namespace>flyer_controller::ControlModeTypes</namespace>
    <member kind="define">
      <type>#define</type>
      <name>CHECK_PARAMETER</name>
      <anchorfile>control__mode_8h.html</anchorfile>
      <anchor>aa8d02d2a1d523734da32534610733844</anchor>
      <arglist>(x, msg)</arglist>
    </member>
    <member kind="typedef">
      <type>ControlModeStates</type>
      <name>ControlModeState</name>
      <anchorfile>namespaceflyer__controller_1_1ControlModeTypes.html</anchorfile>
      <anchor>a0e032d8c0def984e8b728cd84efc6e52</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumeration">
      <name>ControlModeStates</name>
      <anchorfile>namespaceflyer__controller_1_1ControlModeTypes.html</anchorfile>
      <anchor>a02692c332f8270d2d74d130db4da5273</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>ERROR</name>
      <anchorfile>namespaceflyer__controller_1_1ControlModeTypes.html</anchorfile>
      <anchor>a02692c332f8270d2d74d130db4da5273a39d77d6075ea38e517de7409ce5e3ca1</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>OFF</name>
      <anchorfile>namespaceflyer__controller_1_1ControlModeTypes.html</anchorfile>
      <anchor>a02692c332f8270d2d74d130db4da5273ae331e423b0f80dbd1dc130d428dcb65b</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>IDLE</name>
      <anchorfile>namespaceflyer__controller_1_1ControlModeTypes.html</anchorfile>
      <anchor>a02692c332f8270d2d74d130db4da5273a6757f82e013c2668c4afce404d74515b</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>STANDBY</name>
      <anchorfile>namespaceflyer__controller_1_1ControlModeTypes.html</anchorfile>
      <anchor>a02692c332f8270d2d74d130db4da5273a25f701509339cbb7047201e0e5e985ae</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>ACTIVE</name>
      <anchorfile>namespaceflyer__controller_1_1ControlModeTypes.html</anchorfile>
      <anchor>a02692c332f8270d2d74d130db4da5273a1f40dd5bbb83408e6940e62eb0f72ed6</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>control_mode_attitude.cpp</name>
    <path>/home/rosbuild/hudson/workspace/doc-fuerte-starmac-ros-pkg/doc_stacks/2014-01-05_11-35-11.500740/starmac-ros-pkg/starmac_flyer/flyer_controller/nodes/</path>
    <filename>control__mode__attitude_8cpp</filename>
    <includes id="control__mode__attitude_8h" name="control_mode_attitude.h" local="yes" imported="no">flyer_controller/control_mode_attitude.h</includes>
    <namespace>flyer_controller</namespace>
  </compound>
  <compound kind="file">
    <name>control_mode_attitude.h</name>
    <path>/home/rosbuild/hudson/workspace/doc-fuerte-starmac-ros-pkg/doc_stacks/2014-01-05_11-35-11.500740/starmac-ros-pkg/starmac_flyer/flyer_controller/include/flyer_controller/</path>
    <filename>control__mode__attitude_8h</filename>
    <includes id="joystick__modes_8h" name="joystick_modes.h" local="yes" imported="no">flyer_controller/joystick_modes.h</includes>
    <includes id="attitude__controller_8h" name="attitude_controller.h" local="yes" imported="no">flyer_controller/attitude_controller.h</includes>
    <class kind="class">flyer_controller::ControlModeAttitude</class>
    <namespace>flyer_controller</namespace>
    <member kind="define">
      <type>#define</type>
      <name>DEG2RAD</name>
      <anchorfile>control__mode__attitude_8h.html</anchorfile>
      <anchor>af7e8592d0a634bd3642e9fd508ea8022</anchor>
      <arglist></arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>RAD2DEG</name>
      <anchorfile>control__mode__attitude_8h.html</anchorfile>
      <anchor>ac5a945020d3528355cda82d383676736</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>control_mode_attitude_stare.cpp</name>
    <path>/home/rosbuild/hudson/workspace/doc-fuerte-starmac-ros-pkg/doc_stacks/2014-01-05_11-35-11.500740/starmac-ros-pkg/starmac_flyer/flyer_controller/nodes/</path>
    <filename>control__mode__attitude__stare_8cpp</filename>
    <includes id="control__mode__attitude__stare_8h" name="control_mode_attitude_stare.h" local="yes" imported="no">flyer_controller/control_mode_attitude_stare.h</includes>
    <namespace>flyer_controller</namespace>
  </compound>
  <compound kind="file">
    <name>control_mode_attitude_stare.h</name>
    <path>/home/rosbuild/hudson/workspace/doc-fuerte-starmac-ros-pkg/doc_stacks/2014-01-05_11-35-11.500740/starmac-ros-pkg/starmac_flyer/flyer_controller/include/flyer_controller/</path>
    <filename>control__mode__attitude__stare_8h</filename>
    <includes id="control__mode__attitude_8h" name="control_mode_attitude.h" local="yes" imported="no">flyer_controller/control_mode_attitude.h</includes>
    <class kind="class">flyer_controller::ControlModeAttitudeStare</class>
    <namespace>flyer_controller</namespace>
  </compound>
  <compound kind="file">
    <name>control_mode_autosequence.cpp</name>
    <path>/home/rosbuild/hudson/workspace/doc-fuerte-starmac-ros-pkg/doc_stacks/2014-01-05_11-35-11.500740/starmac-ros-pkg/starmac_flyer/flyer_controller/nodes/</path>
    <filename>control__mode__autosequence_8cpp</filename>
    <includes id="control__mode_8h" name="control_mode.h" local="yes" imported="no">flyer_controller/control_mode.h</includes>
    <includes id="hover__modes_8h" name="hover_modes.h" local="yes" imported="no">flyer_controller/hover_modes.h</includes>
    <class kind="struct">flyer_controller::autosequence_point</class>
    <class kind="class">flyer_controller::ControlModeAutosequence</class>
    <namespace>flyer_controller</namespace>
    <namespace>flyer_controller::AutosequenceTypes</namespace>
    <member kind="typedef">
      <type>vector&lt; autosequence_point &gt;</type>
      <name>autosequence</name>
      <anchorfile>namespaceflyer__controller.html</anchorfile>
      <anchor>a3fc65057a12c9ddbfc233efafb6f5749</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef">
      <type>WaypointUpdateStates</type>
      <name>WaypointUpdateState</name>
      <anchorfile>namespaceflyer__controller_1_1AutosequenceTypes.html</anchorfile>
      <anchor>ac72d6e30929faad2f69bf3d70a0a38a3</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumeration">
      <name>WaypointUpdateStates</name>
      <anchorfile>namespaceflyer__controller_1_1AutosequenceTypes.html</anchorfile>
      <anchor>a015522635d0e2aeb9a1067bd207a95b3</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>WAITING_PROCEED</name>
      <anchorfile>namespaceflyer__controller_1_1AutosequenceTypes.html</anchorfile>
      <anchor>a015522635d0e2aeb9a1067bd207a95b3aaea373b52d83dae191d643e141373ab6</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>MOVING</name>
      <anchorfile>namespaceflyer__controller_1_1AutosequenceTypes.html</anchorfile>
      <anchor>a015522635d0e2aeb9a1067bd207a95b3a348b4bf34557c0b08ec6b59c435a57cf</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>PAUSED</name>
      <anchorfile>namespaceflyer__controller_1_1AutosequenceTypes.html</anchorfile>
      <anchor>a015522635d0e2aeb9a1067bd207a95b3a4cb80a1437eb53f5470cc11833d4afbc</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>IDLE</name>
      <anchorfile>namespaceflyer__controller_1_1AutosequenceTypes.html</anchorfile>
      <anchor>a015522635d0e2aeb9a1067bd207a95b3a520f57932b6248b247fb0aaedebd4033</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>const int</type>
      <name>BTN_PAUSE</name>
      <anchorfile>namespaceflyer__controller.html</anchorfile>
      <anchor>a7559401582a7a1cad7191775bf281218</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>const int</type>
      <name>BTN_PROCEED</name>
      <anchorfile>namespaceflyer__controller.html</anchorfile>
      <anchor>aa00029bb1aed25170179445a4cf44627</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>control_mode_hover.cpp</name>
    <path>/home/rosbuild/hudson/workspace/doc-fuerte-starmac-ros-pkg/doc_stacks/2014-01-05_11-35-11.500740/starmac-ros-pkg/starmac_flyer/flyer_controller/nodes/</path>
    <filename>control__mode__hover_8cpp</filename>
    <includes id="control__mode_8h" name="control_mode.h" local="yes" imported="no">flyer_controller/control_mode.h</includes>
    <includes id="hover__modes_8h" name="hover_modes.h" local="yes" imported="no">flyer_controller/hover_modes.h</includes>
    <class kind="class">flyer_controller::ControlModeHover</class>
    <namespace>flyer_controller</namespace>
  </compound>
  <compound kind="file">
    <name>control_mode_idle.cpp</name>
    <path>/home/rosbuild/hudson/workspace/doc-fuerte-starmac-ros-pkg/doc_stacks/2014-01-05_11-35-11.500740/starmac-ros-pkg/starmac_flyer/flyer_controller/nodes/</path>
    <filename>control__mode__idle_8cpp</filename>
    <includes id="control__mode_8h" name="control_mode.h" local="yes" imported="no">flyer_controller/control_mode.h</includes>
    <class kind="class">flyer_controller::ControlModeIdle</class>
    <namespace>flyer_controller</namespace>
  </compound>
  <compound kind="file">
    <name>control_utils.h</name>
    <path>/home/rosbuild/hudson/workspace/doc-fuerte-starmac-ros-pkg/doc_stacks/2014-01-05_11-35-11.500740/starmac-ros-pkg/starmac_flyer/flyer_controller/include/flyer_controller/</path>
    <filename>control__utils_8h</filename>
    <member kind="function">
      <type>void</type>
      <name>odom_msg_to_lin_vel</name>
      <anchorfile>control__utils_8h.html</anchorfile>
      <anchor>a2fbe89143a32d73c127e741d875d720b</anchor>
      <arglist>(const nav_msgs::OdometryConstPtr &amp;odom_msg, double &amp;vx, double &amp;vy, double &amp;vz)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>odom_msg_to_rotation_matrix</name>
      <anchorfile>control__utils_8h.html</anchorfile>
      <anchor>aa6acff8b2529ecd8ebd1bf320603d8e3</anchor>
      <arglist>(const nav_msgs::OdometryConstPtr &amp;odom_msg, tf::Matrix3x3 &amp;R_I_B)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>odom_msg_to_xyz</name>
      <anchorfile>control__utils_8h.html</anchorfile>
      <anchor>acab15c673e88b45a80bbe7a2578fa215</anchor>
      <arglist>(const nav_msgs::OdometryConstPtr &amp;odom_msg, double &amp;x, double &amp;y, double &amp;z)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>odom_msg_to_ypr</name>
      <anchorfile>control__utils_8h.html</anchorfile>
      <anchor>a5ed1790e2d088773bcf3eae0502bb6f8</anchor>
      <arglist>(const nav_msgs::OdometryConstPtr &amp;odom_msg, double &amp;yaw, double &amp;pitch, double &amp;roll)</arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>controller.cpp</name>
    <path>/home/rosbuild/hudson/workspace/doc-fuerte-starmac-ros-pkg/doc_stacks/2014-01-05_11-35-11.500740/starmac-ros-pkg/starmac_flyer/flyer_controller/nodes/</path>
    <filename>controller_8cpp</filename>
    <class kind="class">flyer_controller::Controller</class>
    <namespace>flyer_controller</namespace>
    <namespace>flyer_controller::ControllerTypes</namespace>
    <member kind="typedef">
      <type>ControllerStates</type>
      <name>ControllerState</name>
      <anchorfile>namespaceflyer__controller_1_1ControllerTypes.html</anchorfile>
      <anchor>a854b5498c8b7d225c8002222328bd0a2</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumeration">
      <name>ControllerStates</name>
      <anchorfile>namespaceflyer__controller_1_1ControllerTypes.html</anchorfile>
      <anchor>a5e484d45133ccc8ffaa791f2062d33e6</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>ERROR</name>
      <anchorfile>namespaceflyer__controller_1_1ControllerTypes.html</anchorfile>
      <anchor>a5e484d45133ccc8ffaa791f2062d33e6a73b9f0740301d334026c140ed0e9a51e</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>OFF</name>
      <anchorfile>namespaceflyer__controller_1_1ControllerTypes.html</anchorfile>
      <anchor>a5e484d45133ccc8ffaa791f2062d33e6af379499c04aa3387fbc60d6af280b57a</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>INITIALIZE</name>
      <anchorfile>namespaceflyer__controller_1_1ControllerTypes.html</anchorfile>
      <anchor>a5e484d45133ccc8ffaa791f2062d33e6af3ee9e4b594a87a4be1e5eae10694782</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>STANDBY</name>
      <anchorfile>namespaceflyer__controller_1_1ControllerTypes.html</anchorfile>
      <anchor>a5e484d45133ccc8ffaa791f2062d33e6a214a449000a125f20763e2ca7d42e4ee</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>OPERATIONAL</name>
      <anchorfile>namespaceflyer__controller_1_1ControllerTypes.html</anchorfile>
      <anchor>a5e484d45133ccc8ffaa791f2062d33e6a803ae9e5df3ad1fb1d5f034a69fab2e1</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>hover_modes.h</name>
    <path>/home/rosbuild/hudson/workspace/doc-fuerte-starmac-ros-pkg/doc_stacks/2014-01-05_11-35-11.500740/starmac-ros-pkg/starmac_flyer/flyer_controller/include/flyer_controller/</path>
    <filename>hover__modes_8h</filename>
    <includes id="control__mode_8h" name="control_mode.h" local="yes" imported="no">flyer_controller/control_mode.h</includes>
    <includes id="control__utils_8h" name="control_utils.h" local="yes" imported="no">flyer_controller/control_utils.h</includes>
    <includes id="pid_8h" name="pid.h" local="yes" imported="no">flyer_controller/pid.h</includes>
    <class kind="struct">flyer_controller::hover_point</class>
    <class kind="class">flyer_controller::HoverMode</class>
    <namespace>flyer_controller</namespace>
    <member kind="variable">
      <type>const double</type>
      <name>GRAVITY</name>
      <anchorfile>hover__modes_8h.html</anchorfile>
      <anchor>accc5c757a00e63ac092c7d2bd82c69e3</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>joy_dummy.cpp</name>
    <path>/home/rosbuild/hudson/workspace/doc-fuerte-starmac-ros-pkg/doc_stacks/2014-01-05_11-35-11.500740/starmac-ros-pkg/starmac_flyer/flyer_controller/nodes/</path>
    <filename>joy__dummy_8cpp</filename>
    <class kind="class">JoyDummy</class>
    <member kind="function">
      <type>int</type>
      <name>main</name>
      <anchorfile>joy__dummy_8cpp.html</anchorfile>
      <anchor>a3c04138a5bfe5d72780bb7e82a18e627</anchor>
      <arglist>(int argc, char **argv)</arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>joystick_modes.h</name>
    <path>/home/rosbuild/hudson/workspace/doc-fuerte-starmac-ros-pkg/doc_stacks/2014-01-05_11-35-11.500740/starmac-ros-pkg/starmac_flyer/flyer_controller/include/flyer_controller/</path>
    <filename>joystick__modes_8h</filename>
    <includes id="control__mode_8h" name="control_mode.h" local="yes" imported="no">flyer_controller/control_mode.h</includes>
    <class kind="struct">flyer_controller::joystick_command</class>
    <class kind="class">flyer_controller::JoystickMode</class>
    <namespace>flyer_controller</namespace>
    <member kind="define">
      <type>#define</type>
      <name>DEG2RAD</name>
      <anchorfile>joystick__modes_8h.html</anchorfile>
      <anchor>af7e8592d0a634bd3642e9fd508ea8022</anchor>
      <arglist></arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>RAD2DEG</name>
      <anchorfile>joystick__modes_8h.html</anchorfile>
      <anchor>ac5a945020d3528355cda82d383676736</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>mainpage.dox</name>
    <path>/home/rosbuild/hudson/workspace/doc-fuerte-starmac-ros-pkg/doc_stacks/2014-01-05_11-35-11.500740/starmac-ros-pkg/starmac_flyer/flyer_controller/</path>
    <filename>mainpage_8dox</filename>
  </compound>
  <compound kind="file">
    <name>pid.cpp</name>
    <path>/home/rosbuild/hudson/workspace/doc-fuerte-starmac-ros-pkg/doc_stacks/2014-01-05_11-35-11.500740/starmac-ros-pkg/starmac_flyer/flyer_controller/src/</path>
    <filename>pid_8cpp</filename>
    <includes id="pid_8h" name="pid.h" local="yes" imported="no">flyer_controller/pid.h</includes>
    <namespace>flyer_controller</namespace>
  </compound>
  <compound kind="file">
    <name>pid.h</name>
    <path>/home/rosbuild/hudson/workspace/doc-fuerte-starmac-ros-pkg/doc_stacks/2014-01-05_11-35-11.500740/starmac-ros-pkg/starmac_flyer/flyer_controller/include/flyer_controller/</path>
    <filename>pid_8h</filename>
    <class kind="class">flyer_controller::Pid</class>
    <namespace>flyer_controller</namespace>
  </compound>
  <compound kind="file">
    <name>teleop_flyer.cpp</name>
    <path>/home/rosbuild/hudson/workspace/doc-fuerte-starmac-ros-pkg/doc_stacks/2014-01-05_11-35-11.500740/starmac-ros-pkg/starmac_flyer/flyer_controller/nodes/</path>
    <filename>teleop__flyer_8cpp</filename>
    <class kind="class">flyer_controller::TeleopFlyer</class>
    <namespace>flyer_controller</namespace>
    <namespace>flyer_controller::TeleopTypes</namespace>
    <member kind="typedef">
      <type>TeleopStates</type>
      <name>TeleopState</name>
      <anchorfile>namespaceflyer__controller_1_1TeleopTypes.html</anchorfile>
      <anchor>a151c6f448c58af2c02454d1898cf4477</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumeration">
      <name>TeleopStates</name>
      <anchorfile>namespaceflyer__controller_1_1TeleopTypes.html</anchorfile>
      <anchor>a8efa3ee7b09b32e50b2c8c140fe58b40</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>ERROR</name>
      <anchorfile>namespaceflyer__controller_1_1TeleopTypes.html</anchorfile>
      <anchor>a8efa3ee7b09b32e50b2c8c140fe58b40ab6350ae12bcf63f95001874749715594</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>OFF</name>
      <anchorfile>namespaceflyer__controller_1_1TeleopTypes.html</anchorfile>
      <anchor>a8efa3ee7b09b32e50b2c8c140fe58b40a3ee5715092ce540880652cc2059f9080</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>INITIALIZE</name>
      <anchorfile>namespaceflyer__controller_1_1TeleopTypes.html</anchorfile>
      <anchor>a8efa3ee7b09b32e50b2c8c140fe58b40add8100afe1ba44093a57476e706e4b12</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>STANDBY</name>
      <anchorfile>namespaceflyer__controller_1_1TeleopTypes.html</anchorfile>
      <anchor>a8efa3ee7b09b32e50b2c8c140fe58b40a7a23dc21bb375e03925ab4a61812da44</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>OPERATIONAL</name>
      <anchorfile>namespaceflyer__controller_1_1TeleopTypes.html</anchorfile>
      <anchor>a8efa3ee7b09b32e50b2c8c140fe58b40a55c14fd7f16cd8baf1f117c5e40c7ab0</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>const int</type>
      <name>BTN_CANCEL</name>
      <anchorfile>namespaceflyer__controller.html</anchorfile>
      <anchor>a0cd1f38099474d95a9ff8c2425ea78d7</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>const int</type>
      <name>BTN_ESTOP</name>
      <anchorfile>namespaceflyer__controller.html</anchorfile>
      <anchor>a6a5db4c4731a2476c3d27977cdd8a7f9</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>const int</type>
      <name>BTN_OPERATIONAL_MODE_ATTITUDE</name>
      <anchorfile>namespaceflyer__controller.html</anchorfile>
      <anchor>aaa8eb00245ceb3873be5298d6c3efb6a</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>const int</type>
      <name>BTN_OPERATIONAL_MODE_HOVER</name>
      <anchorfile>namespaceflyer__controller.html</anchorfile>
      <anchor>ac00b12c4ea7ec67a10bdb46778b270b7</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>const int</type>
      <name>BTN_STANDBY_GO_OPERATIONAL</name>
      <anchorfile>namespaceflyer__controller.html</anchorfile>
      <anchor>a3e397188d2636f522e522efada88e553</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>const int</type>
      <name>BTN_TRIGGER</name>
      <anchorfile>namespaceflyer__controller.html</anchorfile>
      <anchor>af8a2a08aa96ad52b9d3ca57c610d0b25</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>JoyDummy</name>
    <filename>classJoyDummy.html</filename>
    <member kind="function">
      <type></type>
      <name>JoyDummy</name>
      <anchorfile>classJoyDummy.html</anchorfile>
      <anchor>ad97ec78e05e4b61eb083f0b668ea54cf</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>~JoyDummy</name>
      <anchorfile>classJoyDummy.html</anchorfile>
      <anchor>a89b00a23d5477fab622b8e46d633998b</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" protection="private">
      <type>int</type>
      <name>getch</name>
      <anchorfile>classJoyDummy.html</anchorfile>
      <anchor>a4055a363436b8168a673a40b05ce6a9c</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" protection="private">
      <type>int</type>
      <name>kbhit</name>
      <anchorfile>classJoyDummy.html</anchorfile>
      <anchor>a4a21a38718f5a3977ce2e5a81d0e82a5</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>publishJoyCallback</name>
      <anchorfile>classJoyDummy.html</anchorfile>
      <anchor>aefb9d71675d028940f958ff2ef424ad7</anchor>
      <arglist>(const ros::TimerEvent &amp;e)</arglist>
    </member>
    <member kind="variable" protection="private">
      <type>bool</type>
      <name>go_operational</name>
      <anchorfile>classJoyDummy.html</anchorfile>
      <anchor>adb7d9d88ec8304182457e10fd4ca9a98</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>sensor_msgs::Joy</type>
      <name>joy_msg</name>
      <anchorfile>classJoyDummy.html</anchorfile>
      <anchor>a045d25d8d9f3f0394a1fed4800ea1364</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>ros::Publisher</type>
      <name>joy_pub</name>
      <anchorfile>classJoyDummy.html</anchorfile>
      <anchor>ab35247a7da54fcbc8a0c5345c736e703</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>int</type>
      <name>kfd</name>
      <anchorfile>classJoyDummy.html</anchorfile>
      <anchor>a20ffc94445cc5bc22e67f111865af5e0</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::string</type>
      <name>mode</name>
      <anchorfile>classJoyDummy.html</anchorfile>
      <anchor>aa49bc909ce768c56c81b335292831e16</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>ros::NodeHandle</type>
      <name>nh</name>
      <anchorfile>classJoyDummy.html</anchorfile>
      <anchor>a6887312dfc8f7423f6cfbecc85fdc835</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>ros::NodeHandle</type>
      <name>nh_priv</name>
      <anchorfile>classJoyDummy.html</anchorfile>
      <anchor>a6b3cb8c694d5185c655071ab0f41810a</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>double</type>
      <name>publish_rate</name>
      <anchorfile>classJoyDummy.html</anchorfile>
      <anchor>a82b7677b56c7e0949060082120ffba97</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>ros::Timer</type>
      <name>publish_timer</name>
      <anchorfile>classJoyDummy.html</anchorfile>
      <anchor>a7b219b4b1972f46bee3a15b09465a023</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>struct termios cooked</type>
      <name>raw</name>
      <anchorfile>classJoyDummy.html</anchorfile>
      <anchor>af879ce53871cae41fff49ee10e3098a8</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>ros::Time</type>
      <name>start_time</name>
      <anchorfile>classJoyDummy.html</anchorfile>
      <anchor>ac2f1ff857b901b88e5144bd702dfd422</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>double</type>
      <name>twiddle_period</name>
      <anchorfile>classJoyDummy.html</anchorfile>
      <anchor>ab18ef124eaecfa336de325a81bf6ba7f</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="namespace">
    <name>flyer_controller</name>
    <filename>namespaceflyer__controller.html</filename>
    <namespace>flyer_controller::AutosequenceTypes</namespace>
    <namespace>flyer_controller::ControllerTypes</namespace>
    <namespace>flyer_controller::ControlModeTypes</namespace>
    <namespace>flyer_controller::TeleopTypes</namespace>
    <class kind="class">flyer_controller::AttitudeController</class>
    <class kind="struct">flyer_controller::autosequence_point</class>
    <class kind="class">flyer_controller::Controller</class>
    <class kind="class">flyer_controller::ControlMode</class>
    <class kind="class">flyer_controller::ControlModeAttitude</class>
    <class kind="class">flyer_controller::ControlModeAttitudeStare</class>
    <class kind="class">flyer_controller::ControlModeAutosequence</class>
    <class kind="class">flyer_controller::ControlModeHover</class>
    <class kind="class">flyer_controller::ControlModeIdle</class>
    <class kind="struct">flyer_controller::hover_point</class>
    <class kind="class">flyer_controller::HoverMode</class>
    <class kind="struct">flyer_controller::joystick_command</class>
    <class kind="class">flyer_controller::JoystickMode</class>
    <class kind="class">flyer_controller::Pid</class>
    <class kind="class">flyer_controller::TeleopFlyer</class>
    <member kind="typedef">
      <type>vector&lt; autosequence_point &gt;</type>
      <name>autosequence</name>
      <anchorfile>namespaceflyer__controller.html</anchorfile>
      <anchor>a3fc65057a12c9ddbfc233efafb6f5749</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>const int</type>
      <name>BTN_CANCEL</name>
      <anchorfile>namespaceflyer__controller.html</anchorfile>
      <anchor>a0cd1f38099474d95a9ff8c2425ea78d7</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>const int</type>
      <name>BTN_ESTOP</name>
      <anchorfile>namespaceflyer__controller.html</anchorfile>
      <anchor>a6a5db4c4731a2476c3d27977cdd8a7f9</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>const int</type>
      <name>BTN_OPERATIONAL_MODE_ATTITUDE</name>
      <anchorfile>namespaceflyer__controller.html</anchorfile>
      <anchor>aaa8eb00245ceb3873be5298d6c3efb6a</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>const int</type>
      <name>BTN_OPERATIONAL_MODE_HOVER</name>
      <anchorfile>namespaceflyer__controller.html</anchorfile>
      <anchor>ac00b12c4ea7ec67a10bdb46778b270b7</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>const int</type>
      <name>BTN_PAUSE</name>
      <anchorfile>namespaceflyer__controller.html</anchorfile>
      <anchor>a7559401582a7a1cad7191775bf281218</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>const int</type>
      <name>BTN_PROCEED</name>
      <anchorfile>namespaceflyer__controller.html</anchorfile>
      <anchor>aa00029bb1aed25170179445a4cf44627</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>const int</type>
      <name>BTN_STANDBY_GO_OPERATIONAL</name>
      <anchorfile>namespaceflyer__controller.html</anchorfile>
      <anchor>a3e397188d2636f522e522efada88e553</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>const int</type>
      <name>BTN_TRIGGER</name>
      <anchorfile>namespaceflyer__controller.html</anchorfile>
      <anchor>af8a2a08aa96ad52b9d3ca57c610d0b25</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>flyer_controller::AttitudeController</name>
    <filename>classflyer__controller_1_1AttitudeController.html</filename>
    <member kind="function">
      <type></type>
      <name>AttitudeController</name>
      <anchorfile>classflyer__controller_1_1AttitudeController.html</anchorfile>
      <anchor>a1a656eac868e60e9389bd9d5cdacf2d8</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>configure</name>
      <anchorfile>classflyer__controller_1_1AttitudeController.html</anchorfile>
      <anchor>abcaf0ce5296e137cb00e964e03ee80e7</anchor>
      <arglist>(bool external_frame, double external_heading, bool use_direct_yaw_rate_control, double max_pitch_cmd_set, double max_roll_cmd_set, double max_yaw_rate_cmd_set, double min_alt_cmd_set, double max_alt_cmd_set)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>outputControl</name>
      <anchorfile>classflyer__controller_1_1AttitudeController.html</anchorfile>
      <anchor>a5980accec095d4c2283b2466ea44c908</anchor>
      <arglist>(const nav_msgs::OdometryConstPtr &amp;latest_state, const starmac_msgs::OperatorCommandsConstPtr &amp;latest_opercmd, control_mode_outputPtr &amp;control_out)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>setYawCmd</name>
      <anchorfile>classflyer__controller_1_1AttitudeController.html</anchorfile>
      <anchor>ad7f0b17bf26998b7df2be8ab8215af43</anchor>
      <arglist>(double new_yaw_cmd)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>useCurrentYaw</name>
      <anchorfile>classflyer__controller_1_1AttitudeController.html</anchorfile>
      <anchor>a44eca65fccff768e560feed4344f60b5</anchor>
      <arglist>(const nav_msgs::OdometryConstPtr &amp;latest_state)</arglist>
    </member>
    <member kind="variable" protection="private">
      <type>bool</type>
      <name>direct_yaw_rate_control</name>
      <anchorfile>classflyer__controller_1_1AttitudeController.html</anchorfile>
      <anchor>ae58ef0e1df9bed95f373de3f1276c2ff</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>bool</type>
      <name>external_command_frame</name>
      <anchorfile>classflyer__controller_1_1AttitudeController.html</anchorfile>
      <anchor>af9fa7148a00b49701cee2e642faa6f27</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>double</type>
      <name>external_frame_heading</name>
      <anchorfile>classflyer__controller_1_1AttitudeController.html</anchorfile>
      <anchor>a96674415cd06d947fd8956187f04bf52</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>ros::Time</type>
      <name>last_time</name>
      <anchorfile>classflyer__controller_1_1AttitudeController.html</anchorfile>
      <anchor>a7abb6e1f8df911b952a550418a63a0f2</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>double</type>
      <name>max_alt_cmd</name>
      <anchorfile>classflyer__controller_1_1AttitudeController.html</anchorfile>
      <anchor>a92f64645a53503fcf9d12d2f2672878f</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>double</type>
      <name>max_pitch_cmd</name>
      <anchorfile>classflyer__controller_1_1AttitudeController.html</anchorfile>
      <anchor>a8a762da8971eb4a02bbf93162766d202</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>double</type>
      <name>max_roll_cmd</name>
      <anchorfile>classflyer__controller_1_1AttitudeController.html</anchorfile>
      <anchor>a7d53f0f080e9af61dc2c4a2f8b36aaf2</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>double</type>
      <name>max_yaw_rate_cmd</name>
      <anchorfile>classflyer__controller_1_1AttitudeController.html</anchorfile>
      <anchor>aa2254d06afc6cf01c9a1472eb54f43aa</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>double</type>
      <name>min_alt_cmd</name>
      <anchorfile>classflyer__controller_1_1AttitudeController.html</anchorfile>
      <anchor>ab81a7752c3d6e9aaf13fbaa29c1ed9bd</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>double</type>
      <name>yaw_cmd</name>
      <anchorfile>classflyer__controller_1_1AttitudeController.html</anchorfile>
      <anchor>a8d1012238ea0a704536941f5a8bd1313</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>flyer_controller::autosequence_point</name>
    <filename>structflyer__controller_1_1autosequence__point.html</filename>
    <member kind="variable">
      <type>bool</type>
      <name>pause</name>
      <anchorfile>structflyer__controller_1_1autosequence__point.html</anchorfile>
      <anchor>a1b725ac543cb942fda65f7df310c53d1</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>hover_point</type>
      <name>point</name>
      <anchorfile>structflyer__controller_1_1autosequence__point.html</anchorfile>
      <anchor>abd7a54b9b7ecb23ee6a94bd4be6ed7d3</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>flyer_controller::Controller</name>
    <filename>classflyer__controller_1_1Controller.html</filename>
    <base>nodelet::Nodelet</base>
    <member kind="function">
      <type></type>
      <name>Controller</name>
      <anchorfile>classflyer__controller_1_1Controller.html</anchorfile>
      <anchor>a10b3205d3762746bdf013e6bff240249</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>onInit</name>
      <anchorfile>classflyer__controller_1_1Controller.html</anchorfile>
      <anchor>a769f7b0452943dcb20e2db14c18a0a40</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>std::string</type>
      <name>stateToString</name>
      <anchorfile>classflyer__controller_1_1Controller.html</anchorfile>
      <anchor>ab841d2c04e8d9f3ef00ae77d83a9449e</anchor>
      <arglist>(ControllerTypes::ControllerState t)</arglist>
    </member>
    <member kind="enumeration">
      <name>OPERATIONAL_Substate</name>
      <anchorfile>classflyer__controller_1_1Controller.html</anchorfile>
      <anchor>a5e73e96f69e0d15c9ca800f51af5aa3c</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>OP_READY</name>
      <anchorfile>classflyer__controller_1_1Controller.html</anchorfile>
      <anchor>a5e73e96f69e0d15c9ca800f51af5aa3ca5d55a4a8d8931400811fbbbfca85d707</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>OP_ACTIVATING_MODE</name>
      <anchorfile>classflyer__controller_1_1Controller.html</anchorfile>
      <anchor>a5e73e96f69e0d15c9ca800f51af5aa3ca41e7cdc24dd1546b21b77dc0849f277d</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>OP_STANDBYING_MODE</name>
      <anchorfile>classflyer__controller_1_1Controller.html</anchorfile>
      <anchor>a5e73e96f69e0d15c9ca800f51af5aa3ca26c3ffbe587584e38c4e0ecd4ce45292</anchor>
      <arglist></arglist>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>commandCallback</name>
      <anchorfile>classflyer__controller_1_1Controller.html</anchorfile>
      <anchor>ae2d48396310df2456534eba2b21fb427</anchor>
      <arglist>(const controller_cmdConstPtr &amp;msg)</arglist>
    </member>
    <member kind="function" protection="private">
      <type>bool</type>
      <name>controlModesServiceCallback</name>
      <anchorfile>classflyer__controller_1_1Controller.html</anchorfile>
      <anchor>a7d3166f0d32993bbf37b039747e4e50a</anchor>
      <arglist>(control_modes::Request &amp;request, control_modes::Response &amp;response)</arglist>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>controlModesStatusCallback</name>
      <anchorfile>classflyer__controller_1_1Controller.html</anchorfile>
      <anchor>a0ad1186c666c8942e58d1de59472e912</anchor>
      <arglist>(const flyer_controller::control_mode_statusConstPtr &amp;msg, string source)</arglist>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>diagnostics</name>
      <anchorfile>classflyer__controller_1_1Controller.html</anchorfile>
      <anchor>a6d1cdeb6e19a8fae796a38182badcfcd</anchor>
      <arglist>(diagnostic_updater::DiagnosticStatusWrapper &amp;stat)</arglist>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>execute_INITIALIZE</name>
      <anchorfile>classflyer__controller_1_1Controller.html</anchorfile>
      <anchor>a90f3624bb725237b4175f23110ef08c0</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>execute_OPERATIONAL</name>
      <anchorfile>classflyer__controller_1_1Controller.html</anchorfile>
      <anchor>a7093a0801cc73d93c810d90fbe9cdccf</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" protection="private">
      <type>bool</type>
      <name>execute_OPERATIONAL_ACTIVATING_MODE</name>
      <anchorfile>classflyer__controller_1_1Controller.html</anchorfile>
      <anchor>a7d425c7c9df4054af1f1cfb04318c963</anchor>
      <arglist>(bool reset, const string mode_to_activate)</arglist>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>execute_OPERATIONAL_READY</name>
      <anchorfile>classflyer__controller_1_1Controller.html</anchorfile>
      <anchor>a9b5fb0d3607cf9e962222bb9c0c3946f</anchor>
      <arglist>(OPERATIONAL_Substate &amp;substate, string &amp;new_mode)</arglist>
    </member>
    <member kind="function" protection="private">
      <type>bool</type>
      <name>execute_OPERATIONAL_STANDBYING_MODE</name>
      <anchorfile>classflyer__controller_1_1Controller.html</anchorfile>
      <anchor>a4b4827f13ab8eddde3904e88ddf45ae5</anchor>
      <arglist>(bool reset, const string mode_to_standby)</arglist>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>execute_STANDBY</name>
      <anchorfile>classflyer__controller_1_1Controller.html</anchorfile>
      <anchor>ac77296972307ff94536f528eb6f5ae28</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>getStandbyModes</name>
      <anchorfile>classflyer__controller_1_1Controller.html</anchorfile>
      <anchor>ada95fe855f421e6ea857906842e6d5d6</anchor>
      <arglist>(vector&lt; string &gt; &amp;modes)</arglist>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>mainLoopCallback</name>
      <anchorfile>classflyer__controller_1_1Controller.html</anchorfile>
      <anchor>a908fe861bb4fa67b9510adba7280307f</anchor>
      <arglist>(const ros::TimerEvent &amp;e)</arglist>
    </member>
    <member kind="variable" protection="private">
      <type>ros::Subscriber</type>
      <name>cmd_sub</name>
      <anchorfile>classflyer__controller_1_1Controller.html</anchorfile>
      <anchor>acb44aafec0ff67ffc8a66f7df9f257c0</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>bool</type>
      <name>command_pending</name>
      <anchorfile>classflyer__controller_1_1Controller.html</anchorfile>
      <anchor>a54bb407eb1e6e4bede2379b8c60ae196</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>ros::ServiceServer</type>
      <name>control_modes_service</name>
      <anchorfile>classflyer__controller_1_1Controller.html</anchorfile>
      <anchor>abeaeaba834b5e69faca3708650cb4483</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>string</type>
      <name>current_mode</name>
      <anchorfile>classflyer__controller_1_1Controller.html</anchorfile>
      <anchor>a97bc6a30b4f7359121500994b529d45e</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>diagnostic_updater::Updater</type>
      <name>diag_updater</name>
      <anchorfile>classflyer__controller_1_1Controller.html</anchorfile>
      <anchor>aedcf803f9d21af4e95d099119fc5029b</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>string</type>
      <name>info</name>
      <anchorfile>classflyer__controller_1_1Controller.html</anchorfile>
      <anchor>a8f940b37f39f35baf993a580b019bfba</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>string</type>
      <name>initial_active_mode</name>
      <anchorfile>classflyer__controller_1_1Controller.html</anchorfile>
      <anchor>a9f9ff0dc8a9f79691fbfa8f2d9d9c413</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>string</type>
      <name>initial_standby_mode</name>
      <anchorfile>classflyer__controller_1_1Controller.html</anchorfile>
      <anchor>a9c6f51dba372c2a0f603df24ab4e6c37</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>map&lt; string, control_mode_status &gt;</type>
      <name>latest_mode_status</name>
      <anchorfile>classflyer__controller_1_1Controller.html</anchorfile>
      <anchor>a51b1b9d07783bfa4551f566285b6093d</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>boost::mutex</type>
      <name>mainloop_mutex</name>
      <anchorfile>classflyer__controller_1_1Controller.html</anchorfile>
      <anchor>aafcf3e1b05d99e2b30ea3d58e518328c</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>double</type>
      <name>mainloop_rate</name>
      <anchorfile>classflyer__controller_1_1Controller.html</anchorfile>
      <anchor>aca1f91135300262b61d2cff1d34a097f</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>ros::Timer</type>
      <name>mainloop_timer</name>
      <anchorfile>classflyer__controller_1_1Controller.html</anchorfile>
      <anchor>a8a4968715b5e864ca94fa0e19a77bfb1</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>map&lt; string, ros::Publisher &gt;</type>
      <name>mode_cmd_pubs</name>
      <anchorfile>classflyer__controller_1_1Controller.html</anchorfile>
      <anchor>a74037a0d17f1a2696089d958397e5242</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>map&lt; string, string &gt;</type>
      <name>mode_node_map</name>
      <anchorfile>classflyer__controller_1_1Controller.html</anchorfile>
      <anchor>aae0ff30832e5bb45b48e808ffb124757</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>map&lt; string, ros::Subscriber &gt;</type>
      <name>mode_status_subs</name>
      <anchorfile>classflyer__controller_1_1Controller.html</anchorfile>
      <anchor>aaa6d0f3ba3d6f4f5f400fe56ab42519d</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>ros::NodeHandle</type>
      <name>nh</name>
      <anchorfile>classflyer__controller_1_1Controller.html</anchorfile>
      <anchor>a1df8a701a124136bf11b8caab7c044c6</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>ros::NodeHandle</type>
      <name>nh_priv</name>
      <anchorfile>classflyer__controller_1_1Controller.html</anchorfile>
      <anchor>aabc2a96c01227e453449ca71cb4f24da</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>map&lt; string, string &gt;</type>
      <name>node_mode_map</name>
      <anchorfile>classflyer__controller_1_1Controller.html</anchorfile>
      <anchor>a4875f4d911e2985b0bb49d6bc66430ae</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>string</type>
      <name>pending_command</name>
      <anchorfile>classflyer__controller_1_1Controller.html</anchorfile>
      <anchor>af96d1640764ed6869ace7a093bc94dd3</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>boost::mutex</type>
      <name>register_mutex</name>
      <anchorfile>classflyer__controller_1_1Controller.html</anchorfile>
      <anchor>a74e7483b7232eabb9cf411115676560b</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>set&lt; string &gt;</type>
      <name>registered_modes</name>
      <anchorfile>classflyer__controller_1_1Controller.html</anchorfile>
      <anchor>a4777d1ff2ff6e9e6bc1f3687b71458ad</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>string</type>
      <name>standby_mode</name>
      <anchorfile>classflyer__controller_1_1Controller.html</anchorfile>
      <anchor>a976b74e37706e1e52583af35d295a26e</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>ControllerState</type>
      <name>state</name>
      <anchorfile>classflyer__controller_1_1Controller.html</anchorfile>
      <anchor>a980ece8c03ebfe635d3dd2e6020ba8f0</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>ros::Publisher</type>
      <name>status_pub</name>
      <anchorfile>classflyer__controller_1_1Controller.html</anchorfile>
      <anchor>a4536c676d3b02535f664a3493b7213fd</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>flyer_controller::ControlMode</name>
    <filename>classflyer__controller_1_1ControlMode.html</filename>
    <base>nodelet::Nodelet</base>
    <member kind="function">
      <type></type>
      <name>ControlMode</name>
      <anchorfile>classflyer__controller_1_1ControlMode.html</anchorfile>
      <anchor>ac06e128a56bf8416978a2871fcd60b54</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>std::string</type>
      <name>stateToString</name>
      <anchorfile>classflyer__controller_1_1ControlMode.html</anchorfile>
      <anchor>ac5177e67afb771a3ba4b26b279c2de80</anchor>
      <arglist>(ControlModeTypes::ControlModeState t)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>~ControlMode</name>
      <anchorfile>classflyer__controller_1_1ControlMode.html</anchorfile>
      <anchor>a1b74d7fd45afcf82ebb6686d027a478e</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" protection="protected" virtualness="virtual">
      <type>virtual void</type>
      <name>controlModeCmdCallback</name>
      <anchorfile>classflyer__controller_1_1ControlMode.html</anchorfile>
      <anchor>a45e3d8f0c7b96264d2f6dc53e76b87b4</anchor>
      <arglist>(const control_mode_cmdConstPtr &amp;msg)</arglist>
    </member>
    <member kind="function" protection="protected">
      <type>void</type>
      <name>diagnostics</name>
      <anchorfile>classflyer__controller_1_1ControlMode.html</anchorfile>
      <anchor>aa7c9a4cb0f33fc3ca8d4fe8b068d2040</anchor>
      <arglist>(diagnostic_updater::DiagnosticStatusWrapper &amp;stat)</arglist>
    </member>
    <member kind="function" protection="protected" virtualness="virtual">
      <type>virtual void</type>
      <name>onInit</name>
      <anchorfile>classflyer__controller_1_1ControlMode.html</anchorfile>
      <anchor>ad4876ce1ea0ef413fb73855c31a5327d</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" protection="protected">
      <type>void</type>
      <name>operCmdCallback</name>
      <anchorfile>classflyer__controller_1_1ControlMode.html</anchorfile>
      <anchor>a6c146b8f144826ee6e90828525c7e706</anchor>
      <arglist>(const starmac_msgs::OperatorCommandsConstPtr &amp;msg)</arglist>
    </member>
    <member kind="function" protection="protected" virtualness="virtual">
      <type>virtual void</type>
      <name>outputControl</name>
      <anchorfile>classflyer__controller_1_1ControlMode.html</anchorfile>
      <anchor>aac324abd0711ae23c06c07f5e7bb2e6a</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" protection="protected">
      <type>void</type>
      <name>outputControlTimerCallback</name>
      <anchorfile>classflyer__controller_1_1ControlMode.html</anchorfile>
      <anchor>ab1cd491dc4e0a1bfe143886e49bdd1ea</anchor>
      <arglist>(const ros::TimerEvent &amp;e)</arglist>
    </member>
    <member kind="function" protection="protected" virtualness="virtual">
      <type>virtual void</type>
      <name>reportStatusTimerCallback</name>
      <anchorfile>classflyer__controller_1_1ControlMode.html</anchorfile>
      <anchor>a7f8c8174f2b22be0947f6ba6a89f5743</anchor>
      <arglist>(const ros::TimerEvent &amp;e)</arglist>
    </member>
    <member kind="function" protection="protected">
      <type>void</type>
      <name>requestRegistration</name>
      <anchorfile>classflyer__controller_1_1ControlMode.html</anchorfile>
      <anchor>a77067f9b8c4a0b2b20c190079fc8e4a8</anchor>
      <arglist>(const std::string &amp;mode_name, double wait_time=0)</arglist>
    </member>
    <member kind="function" protection="protected">
      <type>void</type>
      <name>requestRegistration2</name>
      <anchorfile>classflyer__controller_1_1ControlMode.html</anchorfile>
      <anchor>a5324ab6fd81c0104ad37945bf69ac48c</anchor>
      <arglist>(const ros::TimerEvent &amp;event, const std::string &amp;mode_name, double wait_time=0)</arglist>
    </member>
    <member kind="function" protection="protected">
      <type>void</type>
      <name>startDataFlow</name>
      <anchorfile>classflyer__controller_1_1ControlMode.html</anchorfile>
      <anchor>ad8718c55f20d30581af81e5f0fae1a4f</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" protection="protected" virtualness="virtual">
      <type>virtual void</type>
      <name>stateCallback</name>
      <anchorfile>classflyer__controller_1_1ControlMode.html</anchorfile>
      <anchor>aadbc6687ceaf69a5233b60c6a54a7d02</anchor>
      <arglist>(const nav_msgs::OdometryConstPtr &amp;msg)</arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>long int</type>
      <name>control_count</name>
      <anchorfile>classflyer__controller_1_1ControlMode.html</anchorfile>
      <anchor>ad57d9b7143dcd258eb50d65ee9683165</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>ros::Subscriber</type>
      <name>control_mode_cmd_sub</name>
      <anchorfile>classflyer__controller_1_1ControlMode.html</anchorfile>
      <anchor>aab55a0a33bdb6745e4428dcf330722d1</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>ros::Publisher</type>
      <name>control_mode_status_pub</name>
      <anchorfile>classflyer__controller_1_1ControlMode.html</anchorfile>
      <anchor>ab03a6fa3f573558228ce8411073415c6</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>double</type>
      <name>control_output_rate</name>
      <anchorfile>classflyer__controller_1_1ControlMode.html</anchorfile>
      <anchor>a241fc391cea4ec856a8919c4b3c29915</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>diagnostic_updater::Updater</type>
      <name>diag_updater</name>
      <anchorfile>classflyer__controller_1_1ControlMode.html</anchorfile>
      <anchor>adb3aec628b8552039d512f1846c2a792</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>bool</type>
      <name>event_driven</name>
      <anchorfile>classflyer__controller_1_1ControlMode.html</anchorfile>
      <anchor>ae8f9846205730a28e0ca739221498671</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>bool</type>
      <name>got_first_joy</name>
      <anchorfile>classflyer__controller_1_1ControlMode.html</anchorfile>
      <anchor>af8901629a9b6885dcf3ee15ea559bbb1</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>bool</type>
      <name>got_first_state</name>
      <anchorfile>classflyer__controller_1_1ControlMode.html</anchorfile>
      <anchor>af19e139895747232cd07af6e7f551b42</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>std::string</type>
      <name>info</name>
      <anchorfile>classflyer__controller_1_1ControlMode.html</anchorfile>
      <anchor>a4e663fc64495b9a9a03bc1eab74d62b1</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>double</type>
      <name>latest_alt_cmd</name>
      <anchorfile>classflyer__controller_1_1ControlMode.html</anchorfile>
      <anchor>adb8d4eac6e0d2e5a88109607368332bf</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>starmac_msgs::OperatorCommands</type>
      <name>latest_opercmd</name>
      <anchorfile>classflyer__controller_1_1ControlMode.html</anchorfile>
      <anchor>a22802d2ec58270ce52f708d3e0c3f9d0</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>nav_msgs::Odometry</type>
      <name>latest_state</name>
      <anchorfile>classflyer__controller_1_1ControlMode.html</anchorfile>
      <anchor>a138d1c5327afa494bd8430e358ac76a0</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>ros::NodeHandle</type>
      <name>nh</name>
      <anchorfile>classflyer__controller_1_1ControlMode.html</anchorfile>
      <anchor>a27d2526d53e776cc5a9b3400973e523a</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>ros::NodeHandle</type>
      <name>nh_priv</name>
      <anchorfile>classflyer__controller_1_1ControlMode.html</anchorfile>
      <anchor>a4ca0453a0771e53a68854f475436759e</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>ros::Subscriber</type>
      <name>opercmd_sub</name>
      <anchorfile>classflyer__controller_1_1ControlMode.html</anchorfile>
      <anchor>a616365430114a5411afb1057248437f9</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>ros::Timer</type>
      <name>output_controls_timer</name>
      <anchorfile>classflyer__controller_1_1ControlMode.html</anchorfile>
      <anchor>a221c050ea81e02d1e85f9dbc975b91b2</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>ros::Publisher</type>
      <name>output_pub</name>
      <anchorfile>classflyer__controller_1_1ControlMode.html</anchorfile>
      <anchor>a52b2ff174c5abe0401dbedc067e24022</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>bool</type>
      <name>ready</name>
      <anchorfile>classflyer__controller_1_1ControlMode.html</anchorfile>
      <anchor>ab4ac89f8b297517edc030b452f6384b4</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>ros::Timer</type>
      <name>reg_timer</name>
      <anchorfile>classflyer__controller_1_1ControlMode.html</anchorfile>
      <anchor>af311dd5ddc4035b85d9334adbca59352</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>ros::Timer</type>
      <name>report_status_timer</name>
      <anchorfile>classflyer__controller_1_1ControlMode.html</anchorfile>
      <anchor>a6db1368715f9d96e9b7c49ad25fa762f</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>bool</type>
      <name>seen_max_alt</name>
      <anchorfile>classflyer__controller_1_1ControlMode.html</anchorfile>
      <anchor>aff752907fcb90cea07f3aa64cf0752f3</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>bool</type>
      <name>seen_min_alt</name>
      <anchorfile>classflyer__controller_1_1ControlMode.html</anchorfile>
      <anchor>afaa091e0cce5e405408d65ce16a9dc71</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>ControlModeTypes::ControlModeState</type>
      <name>state</name>
      <anchorfile>classflyer__controller_1_1ControlMode.html</anchorfile>
      <anchor>a0b4b3a3008ea07d25d0d1a8dfa586a28</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>long int</type>
      <name>state_count</name>
      <anchorfile>classflyer__controller_1_1ControlMode.html</anchorfile>
      <anchor>a023eb0dd8cbf2931d7778c430164537f</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>ros::Subscriber</type>
      <name>state_sub</name>
      <anchorfile>classflyer__controller_1_1ControlMode.html</anchorfile>
      <anchor>aa65ef076940082223d6208c4876b528a</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>bool</type>
      <name>state_updated</name>
      <anchorfile>classflyer__controller_1_1ControlMode.html</anchorfile>
      <anchor>a2895fadad5f225acf553ec8279da73a3</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>double</type>
      <name>status_report_rate</name>
      <anchorfile>classflyer__controller_1_1ControlMode.html</anchorfile>
      <anchor>a7c1df36cbf9ad2c062d31f88de6d8baa</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>flyer_controller::ControlModeAttitude</name>
    <filename>classflyer__controller_1_1ControlModeAttitude.html</filename>
    <base>flyer_controller::JoystickMode</base>
    <member kind="function">
      <type></type>
      <name>ControlModeAttitude</name>
      <anchorfile>classflyer__controller_1_1ControlModeAttitude.html</anchorfile>
      <anchor>ad3340216895b297ada0457c546a55a21</anchor>
      <arglist>(string mode_name=&quot;attitude&quot;)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>onInit</name>
      <anchorfile>classflyer__controller_1_1ControlModeAttitude.html</anchorfile>
      <anchor>a48fa7584c0da0f48dcf4d5bce2b8513e</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>applyStepInputs</name>
      <anchorfile>classflyer__controller_1_1ControlModeAttitude.html</anchorfile>
      <anchor>a6aedb6fe63f538143509bcb86fd2f755</anchor>
      <arglist>(control_mode_outputPtr &amp;control_out)</arglist>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>controlModeCmdCallback</name>
      <anchorfile>classflyer__controller_1_1ControlModeAttitude.html</anchorfile>
      <anchor>ad6cf8d51d5363397b61d912bda696323</anchor>
      <arglist>(const control_mode_cmdConstPtr &amp;msg)</arglist>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>outputControl</name>
      <anchorfile>classflyer__controller_1_1ControlModeAttitude.html</anchorfile>
      <anchor>ad7a228670d9f8942a082d013265566aa</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>reportStatusTimerCallback</name>
      <anchorfile>classflyer__controller_1_1ControlModeAttitude.html</anchorfile>
      <anchor>a8124c41ca727e8d8de9efa7d3337ccef</anchor>
      <arglist>(const ros::TimerEvent &amp;e)</arglist>
    </member>
    <member kind="variable" protection="private">
      <type>AttitudeController</type>
      <name>att_control</name>
      <anchorfile>classflyer__controller_1_1ControlModeAttitude.html</anchorfile>
      <anchor>a3f705778de1151eacfe0f3c40748e438</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>int</type>
      <name>step_input_joystick_pitch_axis</name>
      <anchorfile>classflyer__controller_1_1ControlModeAttitude.html</anchorfile>
      <anchor>a0bd77137f1f7a5e6af7583c0e72338d4</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>int</type>
      <name>step_input_joystick_roll_axis</name>
      <anchorfile>classflyer__controller_1_1ControlModeAttitude.html</anchorfile>
      <anchor>accac3d259517919a21c65a7e9f5f1721</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>double</type>
      <name>step_input_magnitude</name>
      <anchorfile>classflyer__controller_1_1ControlModeAttitude.html</anchorfile>
      <anchor>ac45a50a6c245a53f36ddb788aa433339</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>bool</type>
      <name>step_input_mode_enabled</name>
      <anchorfile>classflyer__controller_1_1ControlModeAttitude.html</anchorfile>
      <anchor>a6f7f1cafccc6aebae5b7f985609ae7d8</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>flyer_controller::ControlModeAttitudeStare</name>
    <filename>classflyer__controller_1_1ControlModeAttitudeStare.html</filename>
    <base>flyer_controller::ControlModeAttitude</base>
    <member kind="function">
      <type></type>
      <name>ControlModeAttitudeStare</name>
      <anchorfile>classflyer__controller_1_1ControlModeAttitudeStare.html</anchorfile>
      <anchor>a777f60473955e33b00fcd5df56ee0858</anchor>
      <arglist>()</arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>flyer_controller::ControlModeAutosequence</name>
    <filename>classflyer__controller_1_1ControlModeAutosequence.html</filename>
    <base>flyer_controller::HoverMode</base>
    <member kind="function">
      <type></type>
      <name>ControlModeAutosequence</name>
      <anchorfile>classflyer__controller_1_1ControlModeAutosequence.html</anchorfile>
      <anchor>a70d375fef27402f2eb98a56d4a3b249a</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>onInit</name>
      <anchorfile>classflyer__controller_1_1ControlModeAutosequence.html</anchorfile>
      <anchor>ab04501a2477ff4260b0995d39f76b3ad</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" protection="private">
      <type>bool</type>
      <name>autosequence_exists</name>
      <anchorfile>classflyer__controller_1_1ControlModeAutosequence.html</anchorfile>
      <anchor>a5759f6d9d65e8c287b16046918271ff2</anchor>
      <arglist>(const string autosequence_name)</arglist>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>calc_waypoint_location</name>
      <anchorfile>classflyer__controller_1_1ControlModeAutosequence.html</anchorfile>
      <anchor>a0535006a5501e502e9f2248d4c050b36</anchor>
      <arglist>(hover_point &amp;new_point, const double dt)</arglist>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>cancel_autosequence</name>
      <anchorfile>classflyer__controller_1_1ControlModeAutosequence.html</anchorfile>
      <anchor>a837d2eb9e2a483eeaf5c955278b80530</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>complete_autosequence</name>
      <anchorfile>classflyer__controller_1_1ControlModeAutosequence.html</anchorfile>
      <anchor>a4f3474efbc715ec62a7a3d55c3342324</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>do_reached_point</name>
      <anchorfile>classflyer__controller_1_1ControlModeAutosequence.html</anchorfile>
      <anchor>ab5555027fc160defb96de1cc48935e9f</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" protection="private">
      <type>bool</type>
      <name>get_autosequence_callback</name>
      <anchorfile>classflyer__controller_1_1ControlModeAutosequence.html</anchorfile>
      <anchor>a6e45f100c0b8facb40c2bd8f28a1afab</anchor>
      <arglist>(flyer_controller::GetAutosequence::Request &amp;req, flyer_controller::GetAutosequence::Response &amp;resp)</arglist>
    </member>
    <member kind="function" protection="private">
      <type>double</type>
      <name>norm2</name>
      <anchorfile>classflyer__controller_1_1ControlModeAutosequence.html</anchorfile>
      <anchor>ac130367dba5182d9795ef55445d5d0f3</anchor>
      <arglist>(double x1, double x2)</arglist>
    </member>
    <member kind="function" protection="private">
      <type>bool</type>
      <name>parseControlModeCmdDerived</name>
      <anchorfile>classflyer__controller_1_1ControlModeAutosequence.html</anchorfile>
      <anchor>a7a47023c227588c6ee4234da40155304</anchor>
      <arglist>(const string cmd)</arglist>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>pause_autosequence</name>
      <anchorfile>classflyer__controller_1_1ControlModeAutosequence.html</anchorfile>
      <anchor>aefd0153eb51718406d7bc0467128ffbf</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>proceed_autosequence</name>
      <anchorfile>classflyer__controller_1_1ControlModeAutosequence.html</anchorfile>
      <anchor>a0ab2dde320170e7817eec6b6aeebadac</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" protection="private">
      <type>bool</type>
      <name>reached_point</name>
      <anchorfile>classflyer__controller_1_1ControlModeAutosequence.html</anchorfile>
      <anchor>ac6bf720df38baf790a358ca05decf242</anchor>
      <arglist>(const hover_point &amp;point)</arglist>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>reportStatusTimerCallback</name>
      <anchorfile>classflyer__controller_1_1ControlModeAutosequence.html</anchorfile>
      <anchor>a8223f4cc8b9983c5a99e4d49ab690574</anchor>
      <arglist>(const ros::TimerEvent &amp;e)</arglist>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>start_autosequence</name>
      <anchorfile>classflyer__controller_1_1ControlModeAutosequence.html</anchorfile>
      <anchor>ad2a7c6a04a8520ec81751ee3f476490a</anchor>
      <arglist>(const string &amp;autosequence_name)</arglist>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>updateWaypointCallback</name>
      <anchorfile>classflyer__controller_1_1ControlModeAutosequence.html</anchorfile>
      <anchor>a08828dcf9cf07c28e3bcebff1f75befd</anchor>
      <arglist>(const ros::TimerEvent &amp;event)</arglist>
    </member>
    <member kind="variable" protection="private">
      <type>control_mode_autosequence_info</type>
      <name>autosequence_info_msg</name>
      <anchorfile>classflyer__controller_1_1ControlModeAutosequence.html</anchorfile>
      <anchor>a26e4a7fe61aba551b76d154469bb9d37</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>ros::Publisher</type>
      <name>autosequence_info_pub</name>
      <anchorfile>classflyer__controller_1_1ControlModeAutosequence.html</anchorfile>
      <anchor>a2ac15930f72f4a49202e3196119faa58</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>map&lt; string, autosequence &gt;</type>
      <name>autosequences</name>
      <anchorfile>classflyer__controller_1_1ControlModeAutosequence.html</anchorfile>
      <anchor>a3b625e11a6566826c0e941becbbf5ac3</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>bool</type>
      <name>cancel_commanded</name>
      <anchorfile>classflyer__controller_1_1ControlModeAutosequence.html</anchorfile>
      <anchor>aa36250462ca855782872580d75f06bf5</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>string</type>
      <name>current_autosequence</name>
      <anchorfile>classflyer__controller_1_1ControlModeAutosequence.html</anchorfile>
      <anchor>a8a7a1e5e77ff6c6c87ea52536ca534f9</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>unsigned int</type>
      <name>current_point</name>
      <anchorfile>classflyer__controller_1_1ControlModeAutosequence.html</anchorfile>
      <anchor>ad07e95457524a87d0c7fc4a18dbc55c9</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>bool</type>
      <name>executing</name>
      <anchorfile>classflyer__controller_1_1ControlModeAutosequence.html</anchorfile>
      <anchor>a6d3ea990206e62c605e69d210ab7f033</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>ros::ServiceServer</type>
      <name>get_autosequence_srv</name>
      <anchorfile>classflyer__controller_1_1ControlModeAutosequence.html</anchorfile>
      <anchor>ab334b275ee370efd0bad119e22342321</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>double</type>
      <name>max_waypoint_lead</name>
      <anchorfile>classflyer__controller_1_1ControlModeAutosequence.html</anchorfile>
      <anchor>a1f2ce9305c65bb13439c41902d4a2587</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>bool</type>
      <name>pause_commanded</name>
      <anchorfile>classflyer__controller_1_1ControlModeAutosequence.html</anchorfile>
      <anchor>a1573444409cbaf8fc59d91b7e8a19eb7</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>bool</type>
      <name>proceed_commanded</name>
      <anchorfile>classflyer__controller_1_1ControlModeAutosequence.html</anchorfile>
      <anchor>a9b62bb43c2697b698113fda7449c0f92</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>double</type>
      <name>reached_tolerance</name>
      <anchorfile>classflyer__controller_1_1ControlModeAutosequence.html</anchorfile>
      <anchor>ade1c4206f14b8adb3b0c94eb84f8389b</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>double</type>
      <name>reached_tolerance_yaw</name>
      <anchorfile>classflyer__controller_1_1ControlModeAutosequence.html</anchorfile>
      <anchor>ad59e1600e634c236faf0f1f67e6c759c</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>hover_point</type>
      <name>segment_end</name>
      <anchorfile>classflyer__controller_1_1ControlModeAutosequence.html</anchorfile>
      <anchor>aec05223ef169fb061b682b1017b4790c</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>hover_point</type>
      <name>segment_start</name>
      <anchorfile>classflyer__controller_1_1ControlModeAutosequence.html</anchorfile>
      <anchor>a927494abe553944c311993d89983d887</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>double</type>
      <name>waypoint_speed</name>
      <anchorfile>classflyer__controller_1_1ControlModeAutosequence.html</anchorfile>
      <anchor>ac158adc1dd1f78d1bf800f598e882752</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>double</type>
      <name>waypoint_update_rate</name>
      <anchorfile>classflyer__controller_1_1ControlModeAutosequence.html</anchorfile>
      <anchor>ad2f959ab833ce48de3e87350ec9b558d</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>ros::Timer</type>
      <name>waypoint_update_timer</name>
      <anchorfile>classflyer__controller_1_1ControlModeAutosequence.html</anchorfile>
      <anchor>af858a6553fe59de3e30e766ca1e48f0e</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>AutosequenceTypes::WaypointUpdateState</type>
      <name>wp_update_state</name>
      <anchorfile>classflyer__controller_1_1ControlModeAutosequence.html</anchorfile>
      <anchor>a2efa2e70fb74f728437a0f3e0d74893c</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>flyer_controller::ControlModeHover</name>
    <filename>classflyer__controller_1_1ControlModeHover.html</filename>
    <base>flyer_controller::HoverMode</base>
    <member kind="function">
      <type></type>
      <name>ControlModeHover</name>
      <anchorfile>classflyer__controller_1_1ControlModeHover.html</anchorfile>
      <anchor>a3b1285f4c943c61c267a4325abe48b7c</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>onInit</name>
      <anchorfile>classflyer__controller_1_1ControlModeHover.html</anchorfile>
      <anchor>a4edadc612120aa008347b81df4c5b254</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>outputControl</name>
      <anchorfile>classflyer__controller_1_1ControlModeHover.html</anchorfile>
      <anchor>aedee606325ec4fa1b5510d71ab040478</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>bool</type>
      <name>parseControlModeCmdDerived</name>
      <anchorfile>classflyer__controller_1_1ControlModeHover.html</anchorfile>
      <anchor>a6a4a9199a6bff33dde55e006ecce0c4d</anchor>
      <arglist>(const string cmd)</arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>bool</type>
      <name>adjusting_yaw</name>
      <anchorfile>classflyer__controller_1_1ControlModeHover.html</anchorfile>
      <anchor>ae91a82ed1f6919d2f2f2bdc69a493a10</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>bool</type>
      <name>external_command_frame</name>
      <anchorfile>classflyer__controller_1_1ControlModeHover.html</anchorfile>
      <anchor>abb8b4c3bf209df53f1baff30773c3a1f</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>double</type>
      <name>external_frame_heading</name>
      <anchorfile>classflyer__controller_1_1ControlModeHover.html</anchorfile>
      <anchor>a1dc7f738b0e97122c83ce053278a0b0f</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>bool</type>
      <name>first_joystick</name>
      <anchorfile>classflyer__controller_1_1ControlModeHover.html</anchorfile>
      <anchor>af7107f8176a2486655f701487870900e</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>ros::Time</type>
      <name>last_control_output_time</name>
      <anchorfile>classflyer__controller_1_1ControlModeHover.html</anchorfile>
      <anchor>a8788ed2fca1feda0bd77a103779d3997</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>double</type>
      <name>max_yaw_rate_cmd</name>
      <anchorfile>classflyer__controller_1_1ControlModeHover.html</anchorfile>
      <anchor>aa4142afc26fd1974900a50b1c7ff9e83</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>bool</type>
      <name>moving_hover_point</name>
      <anchorfile>classflyer__controller_1_1ControlModeHover.html</anchorfile>
      <anchor>a77f97ad05956c5d3e14050f976ee6d57</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>double</type>
      <name>pitch_deadband</name>
      <anchorfile>classflyer__controller_1_1ControlModeHover.html</anchorfile>
      <anchor>a8dba98b183a207250ec83636ea7caa20</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>double</type>
      <name>roll_deadband</name>
      <anchorfile>classflyer__controller_1_1ControlModeHover.html</anchorfile>
      <anchor>a42597425715b67bb4b414b897958b1cb</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>double</type>
      <name>waypoint_speed</name>
      <anchorfile>classflyer__controller_1_1ControlModeHover.html</anchorfile>
      <anchor>a83c1f1787d47ed4ffd83762803c4697c</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>double</type>
      <name>yaw_deadband</name>
      <anchorfile>classflyer__controller_1_1ControlModeHover.html</anchorfile>
      <anchor>addf9975f5c8fc8e66d1e70b92827730b</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>flyer_controller::ControlModeIdle</name>
    <filename>classflyer__controller_1_1ControlModeIdle.html</filename>
    <base>flyer_controller::ControlMode</base>
    <member kind="function">
      <type></type>
      <name>ControlModeIdle</name>
      <anchorfile>classflyer__controller_1_1ControlModeIdle.html</anchorfile>
      <anchor>af32bf8b0c12ddc08a5625b525b5f2c2b</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>onInit</name>
      <anchorfile>classflyer__controller_1_1ControlModeIdle.html</anchorfile>
      <anchor>a5c16ca72a5de312120935773a7a747ae</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>controlModeCmdCallback</name>
      <anchorfile>classflyer__controller_1_1ControlModeIdle.html</anchorfile>
      <anchor>a41b1df150653a02c39c10c5faf730c54</anchor>
      <arglist>(const control_mode_cmdConstPtr &amp;msg)</arglist>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>outputControl</name>
      <anchorfile>classflyer__controller_1_1ControlModeIdle.html</anchorfile>
      <anchor>a0fd0fb23c79dea79ad54c6e7db279d72</anchor>
      <arglist>()</arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>flyer_controller::hover_point</name>
    <filename>structflyer__controller_1_1hover__point.html</filename>
    <member kind="variable">
      <type>double</type>
      <name>east</name>
      <anchorfile>structflyer__controller_1_1hover__point.html</anchorfile>
      <anchor>a143d6d4beeae962739a123414085f750</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>double</type>
      <name>east_vel</name>
      <anchorfile>structflyer__controller_1_1hover__point.html</anchorfile>
      <anchor>ac13b9ee28a1b82b88f0aac62749d9cf8</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>string</type>
      <name>name</name>
      <anchorfile>structflyer__controller_1_1hover__point.html</anchorfile>
      <anchor>ad8b400a9df8d86f0a276f77ae6c8af44</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>double</type>
      <name>north</name>
      <anchorfile>structflyer__controller_1_1hover__point.html</anchorfile>
      <anchor>ac7cd4d4b1e0e9de1bfcc11b61246df9e</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>double</type>
      <name>north_vel</name>
      <anchorfile>structflyer__controller_1_1hover__point.html</anchorfile>
      <anchor>ad1ecdcdca5b65447d2679fb4cf08a990</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>double</type>
      <name>yaw</name>
      <anchorfile>structflyer__controller_1_1hover__point.html</anchorfile>
      <anchor>a5432a39d634e2995ca5a1decffa091a3</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>flyer_controller::HoverMode</name>
    <filename>classflyer__controller_1_1HoverMode.html</filename>
    <base>flyer_controller::ControlMode</base>
    <member kind="function">
      <type></type>
      <name>HoverMode</name>
      <anchorfile>classflyer__controller_1_1HoverMode.html</anchorfile>
      <anchor>aeafc6824edbd8f113f8e9261dc9812be</anchor>
      <arglist>(string mode_name)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>onInit</name>
      <anchorfile>classflyer__controller_1_1HoverMode.html</anchorfile>
      <anchor>a9f9aef92faf9961aa9db4b8f62ccb5c5</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" protection="protected">
      <type>void</type>
      <name>get_current_error_to_point</name>
      <anchorfile>classflyer__controller_1_1HoverMode.html</anchorfile>
      <anchor>a841cb9509d8d17210288c5cfcfb24bc4</anchor>
      <arglist>(const hover_point &amp;point, double &amp;north_err, double &amp;east_err, double &amp;yaw_err)</arglist>
    </member>
    <member kind="function" protection="protected">
      <type>void</type>
      <name>get_current_lateral_position</name>
      <anchorfile>classflyer__controller_1_1HoverMode.html</anchorfile>
      <anchor>a0f6434172021775defabb4b625f0f80d</anchor>
      <arglist>(double &amp;current_x, double &amp;current_y)</arglist>
    </member>
    <member kind="function" protection="protected">
      <type>void</type>
      <name>get_current_lateral_position_errors</name>
      <anchorfile>classflyer__controller_1_1HoverMode.html</anchorfile>
      <anchor>aaa23f2890039fdbdec2e43282228648c</anchor>
      <arglist>(double &amp;north_err, double &amp;east_err, double &amp;alt_err)</arglist>
    </member>
    <member kind="function" protection="protected">
      <type>void</type>
      <name>get_current_yaw_error</name>
      <anchorfile>classflyer__controller_1_1HoverMode.html</anchorfile>
      <anchor>ae759523e838cce923d9e2d39ba4a48c7</anchor>
      <arglist>(const double yaw_cmd, double &amp;yaw_err)</arglist>
    </member>
    <member kind="function" protection="protected">
      <type>bool</type>
      <name>hover_point_exists</name>
      <anchorfile>classflyer__controller_1_1HoverMode.html</anchorfile>
      <anchor>abdd6d44b343504d587aa626595287b07</anchor>
      <arglist>(const string point_name)</arglist>
    </member>
    <member kind="function" protection="protected">
      <type>bool</type>
      <name>hover_point_within_bounds</name>
      <anchorfile>classflyer__controller_1_1HoverMode.html</anchorfile>
      <anchor>a9e8f6007e5a4a4f66760b8ff24231561</anchor>
      <arglist>(const double north, const double east)</arglist>
    </member>
    <member kind="function" protection="protected">
      <type>void</type>
      <name>outputControl</name>
      <anchorfile>classflyer__controller_1_1HoverMode.html</anchorfile>
      <anchor>a8ab4c83ba2563c7d804b49c72e6089a5</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" protection="protected">
      <type>void</type>
      <name>parse_set_gains</name>
      <anchorfile>classflyer__controller_1_1HoverMode.html</anchorfile>
      <anchor>a36e82df6f31a58f3f670b4e33390d426</anchor>
      <arglist>(const vector&lt; string &gt; &amp;words)</arglist>
    </member>
    <member kind="function" protection="protected">
      <type>void</type>
      <name>parse_set_hover_point</name>
      <anchorfile>classflyer__controller_1_1HoverMode.html</anchorfile>
      <anchor>a7c279a39a0862ac95c6f6045bea9f3e0</anchor>
      <arglist>(const vector&lt; string &gt; &amp;words)</arglist>
    </member>
    <member kind="function" protection="protected" virtualness="virtual">
      <type>virtual bool</type>
      <name>parseControlModeCmdDerived</name>
      <anchorfile>classflyer__controller_1_1HoverMode.html</anchorfile>
      <anchor>aa93c8951b919e449472b3b87e3d2b1a9</anchor>
      <arglist>(const string cmd)</arglist>
    </member>
    <member kind="function" protection="protected">
      <type>void</type>
      <name>reportStatusTimerCallback</name>
      <anchorfile>classflyer__controller_1_1HoverMode.html</anchorfile>
      <anchor>adb88d3a24e8f9fcac46e785aa9c61fa1</anchor>
      <arglist>(const ros::TimerEvent &amp;e)</arglist>
    </member>
    <member kind="function" protection="protected">
      <type>void</type>
      <name>set_gains</name>
      <anchorfile>classflyer__controller_1_1HoverMode.html</anchorfile>
      <anchor>ab7fe25dd30e33c0e7eddebbb79de99ef</anchor>
      <arglist>(double KP, double KI, double KD, double Ilimit)</arglist>
    </member>
    <member kind="function" protection="protected">
      <type>void</type>
      <name>set_hover_point</name>
      <anchorfile>classflyer__controller_1_1HoverMode.html</anchorfile>
      <anchor>a6cda791a27822b05a3f21c009f2b0e45</anchor>
      <arglist>(const hover_point &amp;point, bool reset=false)</arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>double</type>
      <name>alt_cmd</name>
      <anchorfile>classflyer__controller_1_1HoverMode.html</anchorfile>
      <anchor>a7e1c43021715ea9027a6f09dbf6e5a9f</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>double</type>
      <name>alt_err</name>
      <anchorfile>classflyer__controller_1_1HoverMode.html</anchorfile>
      <anchor>a46168187a2028b35cc56aa5630bd02cd</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>double</type>
      <name>alt_Ilimit</name>
      <anchorfile>classflyer__controller_1_1HoverMode.html</anchorfile>
      <anchor>a1e30c1470d796740671f0b856932e6d6</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>double</type>
      <name>alt_KD</name>
      <anchorfile>classflyer__controller_1_1HoverMode.html</anchorfile>
      <anchor>a7cfb20364d01448bdc5f6bca188019fd</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>double</type>
      <name>alt_KI</name>
      <anchorfile>classflyer__controller_1_1HoverMode.html</anchorfile>
      <anchor>ae22f2787904a7ce574d895a4474e903b</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>double</type>
      <name>alt_KP</name>
      <anchorfile>classflyer__controller_1_1HoverMode.html</anchorfile>
      <anchor>a874e158655a841a78555ecb2b3352529</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>double</type>
      <name>alt_override</name>
      <anchorfile>classflyer__controller_1_1HoverMode.html</anchorfile>
      <anchor>a6d32bd646ec6a83b0c4dc27a3607662c</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>flyer_controller::Pid</type>
      <name>alt_pid</name>
      <anchorfile>classflyer__controller_1_1HoverMode.html</anchorfile>
      <anchor>a53c3dc316c43484edfc6faaee7c58673</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>control_mode_output</type>
      <name>control_out</name>
      <anchorfile>classflyer__controller_1_1HoverMode.html</anchorfile>
      <anchor>ae00f54a4e4f1ce9dc026d990a973400b</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>hover_point</type>
      <name>current_hover_point</name>
      <anchorfile>classflyer__controller_1_1HoverMode.html</anchorfile>
      <anchor>a59b3ede9e2dcd39906507019f716acf4</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>bool</type>
      <name>direct_thrust_control</name>
      <anchorfile>classflyer__controller_1_1HoverMode.html</anchorfile>
      <anchor>a5d92c3af25e21c516428859fd79c1bd5</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>double</type>
      <name>east_cmd</name>
      <anchorfile>classflyer__controller_1_1HoverMode.html</anchorfile>
      <anchor>a8ca6d2cac7ef55eca352eebb264f9f41</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>double</type>
      <name>east_cmd_max</name>
      <anchorfile>classflyer__controller_1_1HoverMode.html</anchorfile>
      <anchor>a6990baa539eb2a950c4deb465c3ebdc9</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>double</type>
      <name>east_cmd_min</name>
      <anchorfile>classflyer__controller_1_1HoverMode.html</anchorfile>
      <anchor>adb707a590afb1c680aa77a84db237268</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>double</type>
      <name>east_err</name>
      <anchorfile>classflyer__controller_1_1HoverMode.html</anchorfile>
      <anchor>a06a3434898f6dfc62e6d3cf7fc8151ec</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>flyer_controller::Pid</type>
      <name>east_pid</name>
      <anchorfile>classflyer__controller_1_1HoverMode.html</anchorfile>
      <anchor>a0b5b8ac7ef2163112b91a6af7b3109d0</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>double</type>
      <name>east_vel_cmd</name>
      <anchorfile>classflyer__controller_1_1HoverMode.html</anchorfile>
      <anchor>aee5bb892bd8ff2dcb403dc05f19ca2b4</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>double</type>
      <name>east_vel_err</name>
      <anchorfile>classflyer__controller_1_1HoverMode.html</anchorfile>
      <anchor>a41e1bf2f95868a0942f10bf89a68fd0a</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>bool</type>
      <name>first</name>
      <anchorfile>classflyer__controller_1_1HoverMode.html</anchorfile>
      <anchor>aa112d7e4c94717775a5f7e0fb8f3ac44</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>map&lt; string, hover_point &gt;</type>
      <name>hover_points</name>
      <anchorfile>classflyer__controller_1_1HoverMode.html</anchorfile>
      <anchor>a1410887e332d97a00fb047251dcaa1a1</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>double</type>
      <name>Ilimit</name>
      <anchorfile>classflyer__controller_1_1HoverMode.html</anchorfile>
      <anchor>a9b05c7f05b8b64c405b0446957a8fe6e</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>ros::Publisher</type>
      <name>info_pub</name>
      <anchorfile>classflyer__controller_1_1HoverMode.html</anchorfile>
      <anchor>a5f5d8a16996f062bd58840b57f2a9170</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>double</type>
      <name>KD</name>
      <anchorfile>classflyer__controller_1_1HoverMode.html</anchorfile>
      <anchor>af3c2bce195f7b522820e0e7d2d51fa7a</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>double</type>
      <name>KI</name>
      <anchorfile>classflyer__controller_1_1HoverMode.html</anchorfile>
      <anchor>ab94e5938f223f7ef5448e71a7ca1979c</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>double</type>
      <name>KP</name>
      <anchorfile>classflyer__controller_1_1HoverMode.html</anchorfile>
      <anchor>a6361de38d2e0db2c549925fe78b4c88a</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>ros::Time</type>
      <name>last_time</name>
      <anchorfile>classflyer__controller_1_1HoverMode.html</anchorfile>
      <anchor>a7cb0e26863144808a48d779b8545003b</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>double</type>
      <name>mass</name>
      <anchorfile>classflyer__controller_1_1HoverMode.html</anchorfile>
      <anchor>a1dbe24703679a29ace5cd3ee1a350f34</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>double</type>
      <name>max_alt_cmd</name>
      <anchorfile>classflyer__controller_1_1HoverMode.html</anchorfile>
      <anchor>a7f40e912b79c666a91361f9aaaba86a5</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>double</type>
      <name>min_alt_cmd</name>
      <anchorfile>classflyer__controller_1_1HoverMode.html</anchorfile>
      <anchor>a7d5cffae7f55ba3bb2bed1b015f66d47</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>string</type>
      <name>mode_name_</name>
      <anchorfile>classflyer__controller_1_1HoverMode.html</anchorfile>
      <anchor>a15a445dc1221780cc004fbad353349fe</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>double</type>
      <name>north_cmd</name>
      <anchorfile>classflyer__controller_1_1HoverMode.html</anchorfile>
      <anchor>a4935edbf95dce8e37a19af04d19ea5fa</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>double</type>
      <name>north_cmd_max</name>
      <anchorfile>classflyer__controller_1_1HoverMode.html</anchorfile>
      <anchor>afc8b76d0d7836084e57538b192212ce3</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>double</type>
      <name>north_cmd_min</name>
      <anchorfile>classflyer__controller_1_1HoverMode.html</anchorfile>
      <anchor>a4e67514e16eceb90000e7861ac0320ff</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>double</type>
      <name>north_err</name>
      <anchorfile>classflyer__controller_1_1HoverMode.html</anchorfile>
      <anchor>a3a52017d26f4b04e19d9dbfbcb7a03e1</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>flyer_controller::Pid</type>
      <name>north_pid</name>
      <anchorfile>classflyer__controller_1_1HoverMode.html</anchorfile>
      <anchor>ae86a414b0545a1f758c469650fcaa5a1</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>double</type>
      <name>north_vel_cmd</name>
      <anchorfile>classflyer__controller_1_1HoverMode.html</anchorfile>
      <anchor>ac921a04dee953bf9e6b70f363aee34d5</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>double</type>
      <name>north_vel_err</name>
      <anchorfile>classflyer__controller_1_1HoverMode.html</anchorfile>
      <anchor>a87d0a0b23b39c79cb830997aa3b480f5</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>double</type>
      <name>yaw_cmd</name>
      <anchorfile>classflyer__controller_1_1HoverMode.html</anchorfile>
      <anchor>a6ddcc3998cc212a0d6a9eef32ea1ecde</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>double</type>
      <name>yaw_override</name>
      <anchorfile>classflyer__controller_1_1HoverMode.html</anchorfile>
      <anchor>a91e4289ef0f132ebfecf807f9518e37d</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>bool</type>
      <name>yaw_override_active</name>
      <anchorfile>classflyer__controller_1_1HoverMode.html</anchorfile>
      <anchor>a8ab52e522792e90a367aa4de8873b353</anchor>
      <arglist></arglist>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>controlModeCmdCallback</name>
      <anchorfile>classflyer__controller_1_1HoverMode.html</anchorfile>
      <anchor>a4b38de8cd8b50151bb2b36d05b8b87e7</anchor>
      <arglist>(const control_mode_cmdConstPtr &amp;msg)</arglist>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>parse_define_hover_point</name>
      <anchorfile>classflyer__controller_1_1HoverMode.html</anchorfile>
      <anchor>a4897c4856a250c44dcf239326c268b54</anchor>
      <arglist>(const vector&lt; string &gt; &amp;words)</arglist>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>parse_mode</name>
      <anchorfile>classflyer__controller_1_1HoverMode.html</anchorfile>
      <anchor>a53bcbf176746a135bf0b56ef62617442</anchor>
      <arglist>(const vector&lt; string &gt; &amp;words)</arglist>
    </member>
    <member kind="function" protection="private">
      <type>bool</type>
      <name>parseControlModeCmd</name>
      <anchorfile>classflyer__controller_1_1HoverMode.html</anchorfile>
      <anchor>aacd03929873da478af70b62dd65333da</anchor>
      <arglist>(const string cmd)</arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>flyer_controller::joystick_command</name>
    <filename>structflyer__controller_1_1joystick__command.html</filename>
    <member kind="variable">
      <type>double</type>
      <name>alt</name>
      <anchorfile>structflyer__controller_1_1joystick__command.html</anchorfile>
      <anchor>a026eb2723103bb7c45fabbe1ecf148f4</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>double</type>
      <name>pitch</name>
      <anchorfile>structflyer__controller_1_1joystick__command.html</anchorfile>
      <anchor>aca3e6c9f9c7d01ea2c094994a2afa7b2</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>double</type>
      <name>roll</name>
      <anchorfile>structflyer__controller_1_1joystick__command.html</anchorfile>
      <anchor>a98953eb568fca1b659fde8a78ea93e65</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>double</type>
      <name>yaw</name>
      <anchorfile>structflyer__controller_1_1joystick__command.html</anchorfile>
      <anchor>a5031b8fd057a83626f8540e5fe7ca83f</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>flyer_controller::JoystickMode</name>
    <filename>classflyer__controller_1_1JoystickMode.html</filename>
    <base>flyer_controller::ControlMode</base>
    <member kind="function">
      <type></type>
      <name>JoystickMode</name>
      <anchorfile>classflyer__controller_1_1JoystickMode.html</anchorfile>
      <anchor>a973820a4d11e7e9f9826f49935c36946</anchor>
      <arglist>(string mode_name)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>onInit</name>
      <anchorfile>classflyer__controller_1_1JoystickMode.html</anchorfile>
      <anchor>a5d37ecd8f6edb25bb361312d2d1a1d5a</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>double</type>
      <name>max_alt_cmd</name>
      <anchorfile>classflyer__controller_1_1JoystickMode.html</anchorfile>
      <anchor>a243eb92a23ddd2665ef92e2e29b53969</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>double</type>
      <name>max_yaw_rate_cmd</name>
      <anchorfile>classflyer__controller_1_1JoystickMode.html</anchorfile>
      <anchor>a6d21c47357b8c4139bf46adbd8a463d7</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>double</type>
      <name>min_alt_cmd</name>
      <anchorfile>classflyer__controller_1_1JoystickMode.html</anchorfile>
      <anchor>a9b82756db170c72717cd4de0ae144eeb</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>string</type>
      <name>mode_name_</name>
      <anchorfile>classflyer__controller_1_1JoystickMode.html</anchorfile>
      <anchor>ae7500720b175068a2ed648cb983be7de</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>double</type>
      <name>yaw_cmd</name>
      <anchorfile>classflyer__controller_1_1JoystickMode.html</anchorfile>
      <anchor>abd926a0dce762d0eca20f8403bce3bf6</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>flyer_controller::Pid</name>
    <filename>classflyer__controller_1_1Pid.html</filename>
    <member kind="function">
      <type>double</type>
      <name>getCurrentCmd</name>
      <anchorfile>classflyer__controller_1_1Pid.html</anchorfile>
      <anchor>a46344faf33cba8f3ea548a8b0d2977e6</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>getCurrentPIDErrors</name>
      <anchorfile>classflyer__controller_1_1Pid.html</anchorfile>
      <anchor>ac082e71906e0f9844f6c1b6cf4e8f052</anchor>
      <arglist>(double *pe, double *ie, double *de)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>getGains</name>
      <anchorfile>classflyer__controller_1_1Pid.html</anchorfile>
      <anchor>a5779f82351daa785072f2e6ea0476f11</anchor>
      <arglist>(double &amp;p, double &amp;i, double &amp;d, double &amp;i_max, double &amp;i_min)</arglist>
    </member>
    <member kind="function">
      <type>bool</type>
      <name>initParam</name>
      <anchorfile>classflyer__controller_1_1Pid.html</anchorfile>
      <anchor>a9124920b793cc97e71c731d9163ff174</anchor>
      <arglist>(const std::string &amp;prefix)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>initPid</name>
      <anchorfile>classflyer__controller_1_1Pid.html</anchorfile>
      <anchor>af7418fc7e3725f5e3949d1b87c325d05</anchor>
      <arglist>(double P, double I, double D, double I1, double I2)</arglist>
    </member>
    <member kind="function">
      <type>Pid &amp;</type>
      <name>operator=</name>
      <anchorfile>classflyer__controller_1_1Pid.html</anchorfile>
      <anchor>a3ee6e5406b569542a741c807380a15d1</anchor>
      <arglist>(const Pid &amp;p)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>Pid</name>
      <anchorfile>classflyer__controller_1_1Pid.html</anchorfile>
      <anchor>a110d195590289c65f719f31a9d2be59b</anchor>
      <arglist>(double P=0.0, double I=0.0, double D=0.0, double I1=0.0, double I2=-0.0)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>reset</name>
      <anchorfile>classflyer__controller_1_1Pid.html</anchorfile>
      <anchor>a1c793ac37f2fcd248e2f9cd30d416494</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>setCurrentCmd</name>
      <anchorfile>classflyer__controller_1_1Pid.html</anchorfile>
      <anchor>a10a3e820d04b63b772ec61eedc528801</anchor>
      <arglist>(double cmd)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>setGains</name>
      <anchorfile>classflyer__controller_1_1Pid.html</anchorfile>
      <anchor>a560a244344ec42f4a083b4f07fc66725</anchor>
      <arglist>(double P, double I, double D, double i_max, double i_min)</arglist>
    </member>
    <member kind="function">
      <type>double</type>
      <name>updatePid</name>
      <anchorfile>classflyer__controller_1_1Pid.html</anchorfile>
      <anchor>a83415fe64ffecc9e0a2632e3af8449c8</anchor>
      <arglist>(double p_error, ros::Duration dt)</arglist>
    </member>
    <member kind="function">
      <type>double</type>
      <name>updatePid</name>
      <anchorfile>classflyer__controller_1_1Pid.html</anchorfile>
      <anchor>a7fae1c5d011a60971a2513f3fd059fb6</anchor>
      <arglist>(double error, double error_dot, ros::Duration dt)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>~Pid</name>
      <anchorfile>classflyer__controller_1_1Pid.html</anchorfile>
      <anchor>adda6ccef1b9c12f25c995a5828adc870</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="variable" protection="private">
      <type>double</type>
      <name>cmd_</name>
      <anchorfile>classflyer__controller_1_1Pid.html</anchorfile>
      <anchor>a33d04b79701fc813607076e6530e5d71</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>double</type>
      <name>d_error_</name>
      <anchorfile>classflyer__controller_1_1Pid.html</anchorfile>
      <anchor>a3b039b6da4beb9b356afeee2b19ba8d4</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>double</type>
      <name>d_gain_</name>
      <anchorfile>classflyer__controller_1_1Pid.html</anchorfile>
      <anchor>aeac5504c8e8278919ff382f35cfc3def</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>double</type>
      <name>i_error_</name>
      <anchorfile>classflyer__controller_1_1Pid.html</anchorfile>
      <anchor>a9389a17da53f0119bdc7480839afd0e4</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>double</type>
      <name>i_gain_</name>
      <anchorfile>classflyer__controller_1_1Pid.html</anchorfile>
      <anchor>a8c6ca2b842680b9fd387007bae4d64c8</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>double</type>
      <name>i_max_</name>
      <anchorfile>classflyer__controller_1_1Pid.html</anchorfile>
      <anchor>ace1c4c7712aa083e5371c2f5d41bd8f2</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>double</type>
      <name>i_min_</name>
      <anchorfile>classflyer__controller_1_1Pid.html</anchorfile>
      <anchor>a01e8933414a55b411cc02bfe8a960d85</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>double</type>
      <name>p_error_</name>
      <anchorfile>classflyer__controller_1_1Pid.html</anchorfile>
      <anchor>a5d91c875063a5ddba2a3a8b690910a83</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>double</type>
      <name>p_error_last_</name>
      <anchorfile>classflyer__controller_1_1Pid.html</anchorfile>
      <anchor>aac98d896aa8fad431217f9298590c9e4</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>double</type>
      <name>p_gain_</name>
      <anchorfile>classflyer__controller_1_1Pid.html</anchorfile>
      <anchor>ad29a18b0cd5ba4cf98baf6bf8a6b06f0</anchor>
      <arglist></arglist>
    </member>
    <docanchor file="classflyer__controller_1_1Pid">ROS</docanchor>
    <docanchor file="classflyer__controller_1_1Pid">Usage</docanchor>
  </compound>
  <compound kind="class">
    <name>flyer_controller::TeleopFlyer</name>
    <filename>classflyer__controller_1_1TeleopFlyer.html</filename>
    <base>nodelet::Nodelet</base>
    <member kind="function">
      <type>void</type>
      <name>onInit</name>
      <anchorfile>classflyer__controller_1_1TeleopFlyer.html</anchorfile>
      <anchor>a118e4f5e6e806c8fa636e5b6161952e2</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>std::string</type>
      <name>stateToString</name>
      <anchorfile>classflyer__controller_1_1TeleopFlyer.html</anchorfile>
      <anchor>ad463cee87753944397259403a606f169</anchor>
      <arglist>(TeleopState t)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>TeleopFlyer</name>
      <anchorfile>classflyer__controller_1_1TeleopFlyer.html</anchorfile>
      <anchor>afca35ebf8b6b9c814c27734ccfc9749e</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>controllerStatusCallback</name>
      <anchorfile>classflyer__controller_1_1TeleopFlyer.html</anchorfile>
      <anchor>a72b89fa8f6aa0af386e48de7e4abc051</anchor>
      <arglist>(const controller_statusConstPtr &amp;msg)</arglist>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>diagnostics</name>
      <anchorfile>classflyer__controller_1_1TeleopFlyer.html</anchorfile>
      <anchor>a93d258b4de3088e66d4a91200dd86af4</anchor>
      <arglist>(diagnostic_updater::DiagnosticStatusWrapper &amp;stat)</arglist>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>estop</name>
      <anchorfile>classflyer__controller_1_1TeleopFlyer.html</anchorfile>
      <anchor>ad67a0e03c1b05a97977f67f863138f82</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>joyCallback</name>
      <anchorfile>classflyer__controller_1_1TeleopFlyer.html</anchorfile>
      <anchor>ad67c8ff2cd01cc4e200f4ed9642a5071</anchor>
      <arglist>(const sensor_msgs::JoyConstPtr msg)</arglist>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>republishCallback</name>
      <anchorfile>classflyer__controller_1_1TeleopFlyer.html</anchorfile>
      <anchor>aea8f5c228740d9157f686e10f24ce953</anchor>
      <arglist>(const ros::TimerEvent &amp;e)</arglist>
    </member>
    <member kind="variable" protection="private">
      <type>bool</type>
      <name>command_pending</name>
      <anchorfile>classflyer__controller_1_1TeleopFlyer.html</anchorfile>
      <anchor>a219c5651928f96e9051500d1a62ff24a</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>ros::Publisher</type>
      <name>controller_cmd_pub</name>
      <anchorfile>classflyer__controller_1_1TeleopFlyer.html</anchorfile>
      <anchor>a581282d61a635dc83e18ce0204cddebc</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>ros::Subscriber</type>
      <name>controller_status_sub</name>
      <anchorfile>classflyer__controller_1_1TeleopFlyer.html</anchorfile>
      <anchor>af70d90b5634b1b89dc4ebdedf0aef8cc</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>diagnostic_updater::Updater</type>
      <name>diag_updater</name>
      <anchorfile>classflyer__controller_1_1TeleopFlyer.html</anchorfile>
      <anchor>abc0d8669a724e948f94f048e86ed4bb5</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>ros::Publisher</type>
      <name>estop_pub</name>
      <anchorfile>classflyer__controller_1_1TeleopFlyer.html</anchorfile>
      <anchor>a3bb69282da0d5c826621c6bfa359087e</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>bool</type>
      <name>got_first_joy</name>
      <anchorfile>classflyer__controller_1_1TeleopFlyer.html</anchorfile>
      <anchor>a8e3da7eb290a45339acd737dceb50e08</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>double</type>
      <name>joy_republish_rate</name>
      <anchorfile>classflyer__controller_1_1TeleopFlyer.html</anchorfile>
      <anchor>a2388d57d0a4395aa0121cf3f9d882b9f</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>ros::Subscriber</type>
      <name>joy_sub</name>
      <anchorfile>classflyer__controller_1_1TeleopFlyer.html</anchorfile>
      <anchor>a9c1dbf08ab168a796e72c511429b6d3d</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>double</type>
      <name>last_trigger_duration</name>
      <anchorfile>classflyer__controller_1_1TeleopFlyer.html</anchorfile>
      <anchor>ab22331d5f31c14c37e3611a3b0fcef6c</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>controller_status</type>
      <name>latest_controller_status</name>
      <anchorfile>classflyer__controller_1_1TeleopFlyer.html</anchorfile>
      <anchor>a2abcc2258bfe382cedc4db38c4482a60</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>sensor_msgs::Joy</type>
      <name>latest_joy</name>
      <anchorfile>classflyer__controller_1_1TeleopFlyer.html</anchorfile>
      <anchor>a2ba02d8bf5c1a55e4873e35ac84c4d60</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>ros::Time</type>
      <name>latest_joy_time</name>
      <anchorfile>classflyer__controller_1_1TeleopFlyer.html</anchorfile>
      <anchor>a2031a3d3a08ca6f8d448cd6bc04b779d</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>bool</type>
      <name>lost_joystick</name>
      <anchorfile>classflyer__controller_1_1TeleopFlyer.html</anchorfile>
      <anchor>a86bd15492330634f00a44150b5879cb2</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>double</type>
      <name>max_interval</name>
      <anchorfile>classflyer__controller_1_1TeleopFlyer.html</anchorfile>
      <anchor>a2af63d21c88cc97de60fde1072c2e3ba</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>double</type>
      <name>max_joystick_dt</name>
      <anchorfile>classflyer__controller_1_1TeleopFlyer.html</anchorfile>
      <anchor>a159a7df2ab14cce3c40f95a73f27b811</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>ros::Publisher</type>
      <name>motor_enable_pub</name>
      <anchorfile>classflyer__controller_1_1TeleopFlyer.html</anchorfile>
      <anchor>aefbc53ca70e1223f0af1dc1fd88ad174</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>bool</type>
      <name>motors_on</name>
      <anchorfile>classflyer__controller_1_1TeleopFlyer.html</anchorfile>
      <anchor>a37995a277166a4e7576321d7eb31c941</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>ros::NodeHandle</type>
      <name>nh</name>
      <anchorfile>classflyer__controller_1_1TeleopFlyer.html</anchorfile>
      <anchor>a0893e9f68c37e38e3d2945036c23d595</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>ros::NodeHandle</type>
      <name>nh_priv</name>
      <anchorfile>classflyer__controller_1_1TeleopFlyer.html</anchorfile>
      <anchor>a98abd056bf20a48035a1cd62fee00f9e</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>ros::Publisher</type>
      <name>oper_cmd_pub</name>
      <anchorfile>classflyer__controller_1_1TeleopFlyer.html</anchorfile>
      <anchor>abab00a0bf6e01735f4c048efc3b1713c</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>string</type>
      <name>pending_command</name>
      <anchorfile>classflyer__controller_1_1TeleopFlyer.html</anchorfile>
      <anchor>a9038114d40e55ef3b33b047bc9cee697</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>double</type>
      <name>pitch_deadband</name>
      <anchorfile>classflyer__controller_1_1TeleopFlyer.html</anchorfile>
      <anchor>afa485659dda87e79739ddac9cc5edc63</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>sensor_msgs::Joy</type>
      <name>prev_joy</name>
      <anchorfile>classflyer__controller_1_1TeleopFlyer.html</anchorfile>
      <anchor>a63b863353eb849fca19473fb7f0a5e6f</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>ros::Timer</type>
      <name>republish_timer</name>
      <anchorfile>classflyer__controller_1_1TeleopFlyer.html</anchorfile>
      <anchor>aed03fe08031522c71ef933219b9bfcfd</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>double</type>
      <name>roll_deadband</name>
      <anchorfile>classflyer__controller_1_1TeleopFlyer.html</anchorfile>
      <anchor>a4f559cdf63d2281555e9b7b8e0f857a6</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>TeleopState</type>
      <name>state</name>
      <anchorfile>classflyer__controller_1_1TeleopFlyer.html</anchorfile>
      <anchor>a881e8baf5359bdf0eed20652cd11bfbf</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>bool</type>
      <name>use_udp</name>
      <anchorfile>classflyer__controller_1_1TeleopFlyer.html</anchorfile>
      <anchor>ae18acd13fa4a1b158f9d13ef92a83e75</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>double</type>
      <name>yaw_deadband</name>
      <anchorfile>classflyer__controller_1_1TeleopFlyer.html</anchorfile>
      <anchor>a236cc8491ddf8c885435ff2f9c42c3c4</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="namespace">
    <name>flyer_controller::AutosequenceTypes</name>
    <filename>namespaceflyer__controller_1_1AutosequenceTypes.html</filename>
    <member kind="typedef">
      <type>WaypointUpdateStates</type>
      <name>WaypointUpdateState</name>
      <anchorfile>namespaceflyer__controller_1_1AutosequenceTypes.html</anchorfile>
      <anchor>ac72d6e30929faad2f69bf3d70a0a38a3</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumeration">
      <name>WaypointUpdateStates</name>
      <anchorfile>namespaceflyer__controller_1_1AutosequenceTypes.html</anchorfile>
      <anchor>a015522635d0e2aeb9a1067bd207a95b3</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>WAITING_PROCEED</name>
      <anchorfile>namespaceflyer__controller_1_1AutosequenceTypes.html</anchorfile>
      <anchor>a015522635d0e2aeb9a1067bd207a95b3aaea373b52d83dae191d643e141373ab6</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>MOVING</name>
      <anchorfile>namespaceflyer__controller_1_1AutosequenceTypes.html</anchorfile>
      <anchor>a015522635d0e2aeb9a1067bd207a95b3a348b4bf34557c0b08ec6b59c435a57cf</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>PAUSED</name>
      <anchorfile>namespaceflyer__controller_1_1AutosequenceTypes.html</anchorfile>
      <anchor>a015522635d0e2aeb9a1067bd207a95b3a4cb80a1437eb53f5470cc11833d4afbc</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>IDLE</name>
      <anchorfile>namespaceflyer__controller_1_1AutosequenceTypes.html</anchorfile>
      <anchor>a015522635d0e2aeb9a1067bd207a95b3a520f57932b6248b247fb0aaedebd4033</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="namespace">
    <name>flyer_controller::ControllerTypes</name>
    <filename>namespaceflyer__controller_1_1ControllerTypes.html</filename>
    <member kind="typedef">
      <type>ControllerStates</type>
      <name>ControllerState</name>
      <anchorfile>namespaceflyer__controller_1_1ControllerTypes.html</anchorfile>
      <anchor>a854b5498c8b7d225c8002222328bd0a2</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumeration">
      <name>ControllerStates</name>
      <anchorfile>namespaceflyer__controller_1_1ControllerTypes.html</anchorfile>
      <anchor>a5e484d45133ccc8ffaa791f2062d33e6</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>ERROR</name>
      <anchorfile>namespaceflyer__controller_1_1ControllerTypes.html</anchorfile>
      <anchor>a5e484d45133ccc8ffaa791f2062d33e6a73b9f0740301d334026c140ed0e9a51e</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>OFF</name>
      <anchorfile>namespaceflyer__controller_1_1ControllerTypes.html</anchorfile>
      <anchor>a5e484d45133ccc8ffaa791f2062d33e6af379499c04aa3387fbc60d6af280b57a</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>INITIALIZE</name>
      <anchorfile>namespaceflyer__controller_1_1ControllerTypes.html</anchorfile>
      <anchor>a5e484d45133ccc8ffaa791f2062d33e6af3ee9e4b594a87a4be1e5eae10694782</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>STANDBY</name>
      <anchorfile>namespaceflyer__controller_1_1ControllerTypes.html</anchorfile>
      <anchor>a5e484d45133ccc8ffaa791f2062d33e6a214a449000a125f20763e2ca7d42e4ee</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>OPERATIONAL</name>
      <anchorfile>namespaceflyer__controller_1_1ControllerTypes.html</anchorfile>
      <anchor>a5e484d45133ccc8ffaa791f2062d33e6a803ae9e5df3ad1fb1d5f034a69fab2e1</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="namespace">
    <name>flyer_controller::ControlModeTypes</name>
    <filename>namespaceflyer__controller_1_1ControlModeTypes.html</filename>
    <member kind="typedef">
      <type>ControlModeStates</type>
      <name>ControlModeState</name>
      <anchorfile>namespaceflyer__controller_1_1ControlModeTypes.html</anchorfile>
      <anchor>a0e032d8c0def984e8b728cd84efc6e52</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumeration">
      <name>ControlModeStates</name>
      <anchorfile>namespaceflyer__controller_1_1ControlModeTypes.html</anchorfile>
      <anchor>a02692c332f8270d2d74d130db4da5273</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>ERROR</name>
      <anchorfile>namespaceflyer__controller_1_1ControlModeTypes.html</anchorfile>
      <anchor>a02692c332f8270d2d74d130db4da5273a39d77d6075ea38e517de7409ce5e3ca1</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>OFF</name>
      <anchorfile>namespaceflyer__controller_1_1ControlModeTypes.html</anchorfile>
      <anchor>a02692c332f8270d2d74d130db4da5273ae331e423b0f80dbd1dc130d428dcb65b</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>IDLE</name>
      <anchorfile>namespaceflyer__controller_1_1ControlModeTypes.html</anchorfile>
      <anchor>a02692c332f8270d2d74d130db4da5273a6757f82e013c2668c4afce404d74515b</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>STANDBY</name>
      <anchorfile>namespaceflyer__controller_1_1ControlModeTypes.html</anchorfile>
      <anchor>a02692c332f8270d2d74d130db4da5273a25f701509339cbb7047201e0e5e985ae</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>ACTIVE</name>
      <anchorfile>namespaceflyer__controller_1_1ControlModeTypes.html</anchorfile>
      <anchor>a02692c332f8270d2d74d130db4da5273a1f40dd5bbb83408e6940e62eb0f72ed6</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="namespace">
    <name>flyer_controller::TeleopTypes</name>
    <filename>namespaceflyer__controller_1_1TeleopTypes.html</filename>
    <member kind="typedef">
      <type>TeleopStates</type>
      <name>TeleopState</name>
      <anchorfile>namespaceflyer__controller_1_1TeleopTypes.html</anchorfile>
      <anchor>a151c6f448c58af2c02454d1898cf4477</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumeration">
      <name>TeleopStates</name>
      <anchorfile>namespaceflyer__controller_1_1TeleopTypes.html</anchorfile>
      <anchor>a8efa3ee7b09b32e50b2c8c140fe58b40</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>ERROR</name>
      <anchorfile>namespaceflyer__controller_1_1TeleopTypes.html</anchorfile>
      <anchor>a8efa3ee7b09b32e50b2c8c140fe58b40ab6350ae12bcf63f95001874749715594</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>OFF</name>
      <anchorfile>namespaceflyer__controller_1_1TeleopTypes.html</anchorfile>
      <anchor>a8efa3ee7b09b32e50b2c8c140fe58b40a3ee5715092ce540880652cc2059f9080</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>INITIALIZE</name>
      <anchorfile>namespaceflyer__controller_1_1TeleopTypes.html</anchorfile>
      <anchor>a8efa3ee7b09b32e50b2c8c140fe58b40add8100afe1ba44093a57476e706e4b12</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>STANDBY</name>
      <anchorfile>namespaceflyer__controller_1_1TeleopTypes.html</anchorfile>
      <anchor>a8efa3ee7b09b32e50b2c8c140fe58b40a7a23dc21bb375e03925ab4a61812da44</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>OPERATIONAL</name>
      <anchorfile>namespaceflyer__controller_1_1TeleopTypes.html</anchorfile>
      <anchor>a8efa3ee7b09b32e50b2c8c140fe58b40a55c14fd7f16cd8baf1f117c5e40c7ab0</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="page">
    <name>index</name>
    <title></title>
    <filename>index</filename>
    <docanchor file="index">codeapi</docanchor>
  </compound>
</tagfile>
