<?xml version='1.0' encoding='ISO-8859-1' standalone='yes' ?>
<tagfile>
  <compound kind="file">
    <name>cartesian_pose.cpp</name>
    <path>/tmp/ws/src/robot_controllers/robot_controllers/src/</path>
    <filename>cartesian__pose_8cpp</filename>
    <includes id="cartesian__pose_8h" name="cartesian_pose.h" local="no" imported="no">robot_controllers/cartesian_pose.h</includes>
  </compound>
  <compound kind="file">
    <name>cartesian_pose.h</name>
    <path>/tmp/ws/src/robot_controllers/robot_controllers/include/robot_controllers/</path>
    <filename>cartesian__pose_8h</filename>
    <includes id="pid_8h" name="pid.h" local="no" imported="no">robot_controllers/pid.h</includes>
    <class kind="class">robot_controllers::CartesianPoseController</class>
  </compound>
  <compound kind="file">
    <name>cartesian_twist.cpp</name>
    <path>/tmp/ws/src/robot_controllers/robot_controllers/src/</path>
    <filename>cartesian__twist_8cpp</filename>
    <includes id="cartesian__twist_8h" name="cartesian_twist.h" local="no" imported="no">robot_controllers/cartesian_twist.h</includes>
  </compound>
  <compound kind="file">
    <name>cartesian_twist.h</name>
    <path>/tmp/ws/src/robot_controllers/robot_controllers/include/robot_controllers/</path>
    <filename>cartesian__twist_8h</filename>
    <includes id="trajectory__spline__sampler_8h" name="trajectory_spline_sampler.h" local="no" imported="no">robot_controllers/trajectory_spline_sampler.h</includes>
    <class kind="class">robot_controllers::CartesianTwistController</class>
  </compound>
  <compound kind="file">
    <name>cartesian_wrench.cpp</name>
    <path>/tmp/ws/src/robot_controllers/robot_controllers/src/</path>
    <filename>cartesian__wrench_8cpp</filename>
    <includes id="cartesian__wrench_8h" name="cartesian_wrench.h" local="no" imported="no">robot_controllers/cartesian_wrench.h</includes>
  </compound>
  <compound kind="file">
    <name>cartesian_wrench.h</name>
    <path>/tmp/ws/src/robot_controllers/robot_controllers/include/robot_controllers/</path>
    <filename>cartesian__wrench_8h</filename>
    <class kind="class">robot_controllers::CartesianWrenchController</class>
  </compound>
  <compound kind="file">
    <name>diff_drive_base.cpp</name>
    <path>/tmp/ws/src/robot_controllers/robot_controllers/src/</path>
    <filename>diff__drive__base_8cpp</filename>
    <includes id="diff__drive__base_8h" name="diff_drive_base.h" local="no" imported="no">robot_controllers/diff_drive_base.h</includes>
  </compound>
  <compound kind="file">
    <name>diff_drive_base.h</name>
    <path>/tmp/ws/src/robot_controllers/robot_controllers/include/robot_controllers/</path>
    <filename>diff__drive__base_8h</filename>
    <class kind="class">robot_controllers::DiffDriveBaseController</class>
    <member kind="typedef">
      <type>boost::shared_ptr&lt; DiffDriveBaseController &gt;</type>
      <name>DiffDriveBaseControllerPtr</name>
      <anchorfile>namespacerobot__controllers.html</anchorfile>
      <anchor>aaf3d3d7f5f055050329406e57e35c299</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>follow_joint_trajectory.cpp</name>
    <path>/tmp/ws/src/robot_controllers/robot_controllers/src/</path>
    <filename>follow__joint__trajectory_8cpp</filename>
    <includes id="follow__joint__trajectory_8h" name="follow_joint_trajectory.h" local="no" imported="no">robot_controllers/follow_joint_trajectory.h</includes>
  </compound>
  <compound kind="file">
    <name>follow_joint_trajectory.h</name>
    <path>/tmp/ws/src/robot_controllers/robot_controllers/include/robot_controllers/</path>
    <filename>follow__joint__trajectory_8h</filename>
    <includes id="trajectory_8h" name="trajectory.h" local="no" imported="no">robot_controllers/trajectory.h</includes>
    <includes id="trajectory__spline__sampler_8h" name="trajectory_spline_sampler.h" local="no" imported="no">robot_controllers/trajectory_spline_sampler.h</includes>
    <class kind="class">robot_controllers::FollowJointTrajectoryController</class>
  </compound>
  <compound kind="file">
    <name>gravity_compensation.cpp</name>
    <path>/tmp/ws/src/robot_controllers/robot_controllers/src/</path>
    <filename>gravity__compensation_8cpp</filename>
    <includes id="gravity__compensation_8h" name="gravity_compensation.h" local="no" imported="no">robot_controllers/gravity_compensation.h</includes>
  </compound>
  <compound kind="file">
    <name>gravity_compensation.h</name>
    <path>/tmp/ws/src/robot_controllers/robot_controllers/include/robot_controllers/</path>
    <filename>gravity__compensation_8h</filename>
    <class kind="class">robot_controllers::GravityCompensation</class>
  </compound>
  <compound kind="file">
    <name>init.py</name>
    <path>/tmp/ws/src/robot_controllers/robot_controllers/src/robot_controllers/</path>
    <filename>init_8py</filename>
    <namespace>init</namespace>
  </compound>
  <compound kind="file">
    <name>parallel_gripper.cpp</name>
    <path>/tmp/ws/src/robot_controllers/robot_controllers/src/</path>
    <filename>parallel__gripper_8cpp</filename>
    <includes id="parallel__gripper_8h" name="parallel_gripper.h" local="no" imported="no">robot_controllers/parallel_gripper.h</includes>
  </compound>
  <compound kind="file">
    <name>parallel_gripper.h</name>
    <path>/tmp/ws/src/robot_controllers/robot_controllers/include/robot_controllers/</path>
    <filename>parallel__gripper_8h</filename>
    <includes id="pid_8h" name="pid.h" local="no" imported="no">robot_controllers/pid.h</includes>
    <class kind="class">robot_controllers::ParallelGripperController</class>
  </compound>
  <compound kind="file">
    <name>pid.cpp</name>
    <path>/tmp/ws/src/robot_controllers/robot_controllers/src/</path>
    <filename>pid_8cpp</filename>
    <includes id="pid_8h" name="pid.h" local="no" imported="no">robot_controllers/pid.h</includes>
  </compound>
  <compound kind="file">
    <name>pid.h</name>
    <path>/tmp/ws/src/robot_controllers/robot_controllers/include/robot_controllers/</path>
    <filename>pid_8h</filename>
    <class kind="class">robot_controllers::PID</class>
  </compound>
  <compound kind="file">
    <name>point_head.cpp</name>
    <path>/tmp/ws/src/robot_controllers/robot_controllers/src/</path>
    <filename>point__head_8cpp</filename>
    <includes id="point__head_8h" name="point_head.h" local="no" imported="no">robot_controllers/point_head.h</includes>
  </compound>
  <compound kind="file">
    <name>point_head.h</name>
    <path>/tmp/ws/src/robot_controllers/robot_controllers/include/robot_controllers/</path>
    <filename>point__head_8h</filename>
    <includes id="trajectory_8h" name="trajectory.h" local="no" imported="no">robot_controllers/trajectory.h</includes>
    <includes id="trajectory__spline__sampler_8h" name="trajectory_spline_sampler.h" local="no" imported="no">robot_controllers/trajectory_spline_sampler.h</includes>
    <class kind="class">robot_controllers::PointHeadController</class>
  </compound>
  <compound kind="file">
    <name>robot_controllers_python.cpp</name>
    <path>/tmp/ws/src/robot_controllers/robot_controllers/src/</path>
    <filename>robot__controllers__python_8cpp</filename>
    <class kind="class">pyDiffDriveLimiter</class>
    <member kind="function">
      <type></type>
      <name>BOOST_PYTHON_MODULE</name>
      <anchorfile>robot__controllers__python_8cpp.html</anchorfile>
      <anchor>aa78121d09db486218e890ba512fb11d4</anchor>
      <arglist>(robot_controllers_python)</arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>scaled_mimic.cpp</name>
    <path>/tmp/ws/src/robot_controllers/robot_controllers/src/</path>
    <filename>scaled__mimic_8cpp</filename>
    <includes id="scaled__mimic_8h" name="scaled_mimic.h" local="no" imported="no">robot_controllers/scaled_mimic.h</includes>
  </compound>
  <compound kind="file">
    <name>scaled_mimic.h</name>
    <path>/tmp/ws/src/robot_controllers/robot_controllers/include/robot_controllers/</path>
    <filename>scaled__mimic_8h</filename>
    <class kind="class">robot_controllers::ScaledMimicController</class>
  </compound>
  <compound kind="file">
    <name>trajectory.h</name>
    <path>/tmp/ws/src/robot_controllers/robot_controllers/include/robot_controllers/</path>
    <filename>trajectory_8h</filename>
    <class kind="struct">robot_controllers::Trajectory</class>
    <class kind="struct">robot_controllers::TrajectoryPoint</class>
    <class kind="class">robot_controllers::TrajectorySampler</class>
    <member kind="function">
      <type>void</type>
      <name>rosPrintTrajectory</name>
      <anchorfile>namespacerobot__controllers.html</anchorfile>
      <anchor>abec497ad1019fea1ca5f46d7dafde6db</anchor>
      <arglist>(Trajectory &amp;t)</arglist>
    </member>
    <member kind="function">
      <type>bool</type>
      <name>spliceTrajectories</name>
      <anchorfile>namespacerobot__controllers.html</anchorfile>
      <anchor>a228ffe003a8499f637051d407aaaf351</anchor>
      <arglist>(const Trajectory &amp;t1, const Trajectory &amp;t2, const double time, Trajectory *t)</arglist>
    </member>
    <member kind="function">
      <type>bool</type>
      <name>trajectoryFromMsg</name>
      <anchorfile>namespacerobot__controllers.html</anchorfile>
      <anchor>a8215470f02696cad051c9de8f32f1093</anchor>
      <arglist>(const trajectory_msgs::JointTrajectory &amp;message, const std::vector&lt; std::string &gt; joints, Trajectory *trajectory)</arglist>
    </member>
    <member kind="function">
      <type>bool</type>
      <name>unwindTrajectoryPoint</name>
      <anchorfile>namespacerobot__controllers.html</anchorfile>
      <anchor>ac1a37a4d579dd3f1ea35c9babf598c5d</anchor>
      <arglist>(std::vector&lt; bool &gt; continuous, TrajectoryPoint &amp;p)</arglist>
    </member>
    <member kind="function">
      <type>bool</type>
      <name>windupTrajectory</name>
      <anchorfile>namespacerobot__controllers.html</anchorfile>
      <anchor>ab4ed5e5990bf69181d259b8a96d72d52</anchor>
      <arglist>(std::vector&lt; bool &gt; continuous, Trajectory &amp;trajectory)</arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>trajectory_spline_sampler.h</name>
    <path>/tmp/ws/src/robot_controllers/robot_controllers/include/robot_controllers/</path>
    <filename>trajectory__spline__sampler_8h</filename>
    <includes id="trajectory_8h" name="trajectory.h" local="no" imported="no">robot_controllers/trajectory.h</includes>
    <class kind="struct">robot_controllers::SplineTrajectorySampler::Segment</class>
    <class kind="struct">robot_controllers::Spline</class>
    <class kind="class">robot_controllers::SplineTrajectorySampler</class>
    <member kind="enumvalue">
      <name>QUINTIC</name>
      <anchorfile>namespacerobot__controllers.html</anchorfile>
      <anchor>ada861a9d7e097a1ced5368b922b9582cade9d1a8e62e834b3d4fcf3a8d82e5f15</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>CUBIC</name>
      <anchorfile>namespacerobot__controllers.html</anchorfile>
      <anchor>ada861a9d7e097a1ced5368b922b9582ca43fa2f15f53faf0c179cc4e8cfd86bd9</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>LINEAR</name>
      <anchorfile>namespacerobot__controllers.html</anchorfile>
      <anchor>ada861a9d7e097a1ced5368b922b9582ca7afefee645e1224f7a47c25f36564724</anchor>
      <arglist></arglist>
    </member>
    <member kind="function" static="yes">
      <type>static void</type>
      <name>CubicSpline</name>
      <anchorfile>namespacerobot__controllers.html</anchorfile>
      <anchor>aa35202fa0074534fb38761102dfa3608</anchor>
      <arglist>(double p0, double v0, double p1, double v1, double t, Spline &amp;s)</arglist>
    </member>
    <member kind="function" static="yes">
      <type>static void</type>
      <name>generatePowers</name>
      <anchorfile>namespacerobot__controllers.html</anchorfile>
      <anchor>ab439cdf1173c188053ffe5e38f60938a</anchor>
      <arglist>(int n, double x, double *powers)</arglist>
    </member>
    <member kind="function" static="yes">
      <type>static void</type>
      <name>LinearSpline</name>
      <anchorfile>namespacerobot__controllers.html</anchorfile>
      <anchor>ad316811f37959adca695bc0c94ea6cd6</anchor>
      <arglist>(double p0, double p1, double t, Spline &amp;s)</arglist>
    </member>
    <member kind="function" static="yes">
      <type>static void</type>
      <name>QuinticSpline</name>
      <anchorfile>namespacerobot__controllers.html</anchorfile>
      <anchor>a504e7d72c45b5cb79ff93b548e5f2715</anchor>
      <arglist>(double p0, double v0, double a0, double p1, double v1, double a1, double t, Spline &amp;s)</arglist>
    </member>
    <member kind="function" static="yes">
      <type>static void</type>
      <name>sampleCubicSpline</name>
      <anchorfile>namespacerobot__controllers.html</anchorfile>
      <anchor>a528084f11e47d15b558fa2af8160699f</anchor>
      <arglist>(Spline s, double t, double &amp;position, double &amp;velocity)</arglist>
    </member>
    <member kind="function" static="yes">
      <type>static void</type>
      <name>sampleLinearSpline</name>
      <anchorfile>namespacerobot__controllers.html</anchorfile>
      <anchor>ac7f84b18ed9c7b768ee1802789c973d4</anchor>
      <arglist>(Spline &amp;s, double t, double &amp;position)</arglist>
    </member>
    <member kind="function" static="yes">
      <type>static void</type>
      <name>sampleQuinticSpline</name>
      <anchorfile>namespacerobot__controllers.html</anchorfile>
      <anchor>ac9ce89d29b5f7c8d4dff4cbdfed84497</anchor>
      <arglist>(Spline &amp;s, double t, double &amp;position, double &amp;velocity, double &amp;acceleration)</arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>trajectory_tests.cpp</name>
    <path>/tmp/ws/src/robot_controllers/robot_controllers/test/</path>
    <filename>trajectory__tests_8cpp</filename>
    <includes id="trajectory_8h" name="trajectory.h" local="no" imported="no">robot_controllers/trajectory.h</includes>
    <member kind="function">
      <type>int</type>
      <name>main</name>
      <anchorfile>trajectory__tests_8cpp.html</anchorfile>
      <anchor>a3c04138a5bfe5d72780bb7e82a18e627</anchor>
      <arglist>(int argc, char **argv)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>TEST</name>
      <anchorfile>trajectory__tests_8cpp.html</anchorfile>
      <anchor>a5161724fefe626d7a19d087792e666e8</anchor>
      <arglist>(TrajectoryTests, test_unwind)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>TEST</name>
      <anchorfile>trajectory__tests_8cpp.html</anchorfile>
      <anchor>ac057d64531d7504486822d696e84ab40</anchor>
      <arglist>(TrajectoryTests, test_multiple_unwinds)</arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>pyDiffDriveLimiter</name>
    <filename>classpyDiffDriveLimiter.html</filename>
    <member kind="function">
      <type>bp::tuple</type>
      <name>calcWheelVelocities</name>
      <anchorfile>classpyDiffDriveLimiter.html</anchorfile>
      <anchor>a50846c80840b887f8b0ab5be85176576</anchor>
      <arglist>(double linear_velocity, double angular_velocity)</arglist>
    </member>
    <member kind="function">
      <type>bp::tuple</type>
      <name>limit</name>
      <anchorfile>classpyDiffDriveLimiter.html</anchorfile>
      <anchor>a5308342cd63fd225b03f3a5982b2425f</anchor>
      <arglist>(double desired_linear_velocity, double desired_angular_velocity, double last_linear_velocity, double last_angular_velocity, double safety_scaling, double dt)</arglist>
    </member>
  </compound>
  <compound kind="namespace">
    <name>init</name>
    <filename>namespaceinit.html</filename>
  </compound>
  <compound kind="class">
    <name>robot_controllers::CartesianPoseController</name>
    <filename>classrobot__controllers_1_1CartesianPoseController.html</filename>
    <base>robot_controllers::Controller</base>
    <member kind="function">
      <type></type>
      <name>CartesianPoseController</name>
      <anchorfile>classrobot__controllers_1_1CartesianPoseController.html</anchorfile>
      <anchor>ac0037a5c212698118f80f2ee30853fc0</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>command</name>
      <anchorfile>classrobot__controllers_1_1CartesianPoseController.html</anchorfile>
      <anchor>a9dd4edd94880b75a49dae96f7a027afd</anchor>
      <arglist>(const geometry_msgs::PoseStamped::ConstPtr &amp;goal)</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual std::vector&lt; std::string &gt;</type>
      <name>getClaimedNames</name>
      <anchorfile>classrobot__controllers_1_1CartesianPoseController.html</anchorfile>
      <anchor>af2aca93a774e8f77f18b92efb89525aa</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual std::vector&lt; std::string &gt;</type>
      <name>getCommandedNames</name>
      <anchorfile>classrobot__controllers_1_1CartesianPoseController.html</anchorfile>
      <anchor>a6693a72ab9fccccdaa06f7855cf53eb9</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual std::string</type>
      <name>getType</name>
      <anchorfile>classrobot__controllers_1_1CartesianPoseController.html</anchorfile>
      <anchor>a728a799fe0148778972870378088e49a</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual int</type>
      <name>init</name>
      <anchorfile>classrobot__controllers_1_1CartesianPoseController.html</anchorfile>
      <anchor>ab0eb6b856efc9a1daec7561493d1b00a</anchor>
      <arglist>(ros::NodeHandle &amp;nh, ControllerManager *manager)</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual bool</type>
      <name>reset</name>
      <anchorfile>classrobot__controllers_1_1CartesianPoseController.html</anchorfile>
      <anchor>abc3cc7cf3ed0a11c090c4356ab24adf5</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual bool</type>
      <name>start</name>
      <anchorfile>classrobot__controllers_1_1CartesianPoseController.html</anchorfile>
      <anchor>a620cc466fb2926eec0f545ab07ab57d4</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual bool</type>
      <name>stop</name>
      <anchorfile>classrobot__controllers_1_1CartesianPoseController.html</anchorfile>
      <anchor>ae0a61f11e0e0d2e9cb96ea91002782f2</anchor>
      <arglist>(bool force)</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual void</type>
      <name>update</name>
      <anchorfile>classrobot__controllers_1_1CartesianPoseController.html</anchorfile>
      <anchor>a119084dd1d7e52d456519627a5f52b34</anchor>
      <arglist>(const ros::Time &amp;now, const ros::Duration &amp;dt)</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual</type>
      <name>~CartesianPoseController</name>
      <anchorfile>classrobot__controllers_1_1CartesianPoseController.html</anchorfile>
      <anchor>ad4ffd8becbeb44de795df83bad9fd308</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" protection="private">
      <type>KDL::Frame</type>
      <name>getPose</name>
      <anchorfile>classrobot__controllers_1_1CartesianPoseController.html</anchorfile>
      <anchor>a71707de7ba9d29ddb4177a081916337e</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="variable" protection="private">
      <type>KDL::Frame</type>
      <name>actual_pose_</name>
      <anchorfile>classrobot__controllers_1_1CartesianPoseController.html</anchorfile>
      <anchor>afea8d8e02e8768daafe2df7051e52c4d</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>ros::Subscriber</type>
      <name>command_sub_</name>
      <anchorfile>classrobot__controllers_1_1CartesianPoseController.html</anchorfile>
      <anchor>aafc337fa48e60de2ebb45fcf08d6b60e</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>KDL::Frame</type>
      <name>desired_pose_</name>
      <anchorfile>classrobot__controllers_1_1CartesianPoseController.html</anchorfile>
      <anchor>a0ece7c7a9190468768b3f918eb4006bb</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>bool</type>
      <name>enabled_</name>
      <anchorfile>classrobot__controllers_1_1CartesianPoseController.html</anchorfile>
      <anchor>af9907803ef4b9eb65cc18c8e9930cbf6</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>ros::Publisher</type>
      <name>feedback_pub_</name>
      <anchorfile>classrobot__controllers_1_1CartesianPoseController.html</anchorfile>
      <anchor>aec3f13a98a54aa78461b49da0ff3b762</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>bool</type>
      <name>initialized_</name>
      <anchorfile>classrobot__controllers_1_1CartesianPoseController.html</anchorfile>
      <anchor>a8051bed1930d8b193f9c93ca3d87f9e1</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>boost::shared_ptr&lt; KDL::ChainJntToJacSolver &gt;</type>
      <name>jac_solver_</name>
      <anchorfile>classrobot__controllers_1_1CartesianPoseController.html</anchorfile>
      <anchor>acc5df26d3582c138293067b2ea242de3</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>KDL::Jacobian</type>
      <name>jacobian_</name>
      <anchorfile>classrobot__controllers_1_1CartesianPoseController.html</anchorfile>
      <anchor>a3fdbfd7ea172ad06d8c0cac93d522fea</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>KDL::JntArray</type>
      <name>jnt_delta_</name>
      <anchorfile>classrobot__controllers_1_1CartesianPoseController.html</anchorfile>
      <anchor>ac4fb54c5ffc4e8698fbb4323a4307848</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>KDL::JntArray</type>
      <name>jnt_pos_</name>
      <anchorfile>classrobot__controllers_1_1CartesianPoseController.html</anchorfile>
      <anchor>aad2179a6d63532e7a172e59038657c0e</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>boost::shared_ptr&lt; KDL::ChainFkSolverPos &gt;</type>
      <name>jnt_to_pose_solver_</name>
      <anchorfile>classrobot__controllers_1_1CartesianPoseController.html</anchorfile>
      <anchor>a42a61261ad2a6e029a70c9d975e216a6</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::vector&lt; JointHandlePtr &gt;</type>
      <name>joints_</name>
      <anchorfile>classrobot__controllers_1_1CartesianPoseController.html</anchorfile>
      <anchor>a4cf8f012323e6554a00b65b4b3892bc3</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>KDL::Chain</type>
      <name>kdl_chain_</name>
      <anchorfile>classrobot__controllers_1_1CartesianPoseController.html</anchorfile>
      <anchor>a76d7cc14273264bcfe3eb0d1697e27c5</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>ros::Time</type>
      <name>last_command_</name>
      <anchorfile>classrobot__controllers_1_1CartesianPoseController.html</anchorfile>
      <anchor>ad5311b685d47e28add0b18c9c48b72f8</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>ControllerManager *</type>
      <name>manager_</name>
      <anchorfile>classrobot__controllers_1_1CartesianPoseController.html</anchorfile>
      <anchor>aff07674827225142a53d869c36b99acc</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::vector&lt; robot_controllers::PID &gt;</type>
      <name>pid_</name>
      <anchorfile>classrobot__controllers_1_1CartesianPoseController.html</anchorfile>
      <anchor>a7466c4e169053dff069b3a9f39f3847a</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::string</type>
      <name>root_link_</name>
      <anchorfile>classrobot__controllers_1_1CartesianPoseController.html</anchorfile>
      <anchor>af2b5fddb5e3ee8f8b5a67d0711235367</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>tf::TransformListener</type>
      <name>tf_</name>
      <anchorfile>classrobot__controllers_1_1CartesianPoseController.html</anchorfile>
      <anchor>ad5930610bf8116d8a20d068e45dc2972</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>KDL::Twist</type>
      <name>twist_error_</name>
      <anchorfile>classrobot__controllers_1_1CartesianPoseController.html</anchorfile>
      <anchor>a597cff6644818292d91851e51934a2cd</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>robot_controllers::CartesianTwistController</name>
    <filename>classrobot__controllers_1_1CartesianTwistController.html</filename>
    <base>robot_controllers::Controller</base>
    <member kind="function">
      <type></type>
      <name>CartesianTwistController</name>
      <anchorfile>classrobot__controllers_1_1CartesianTwistController.html</anchorfile>
      <anchor>a4441182c6bc97208a1a8b5e84310280f</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>command</name>
      <anchorfile>classrobot__controllers_1_1CartesianTwistController.html</anchorfile>
      <anchor>a8d9810e450cb415ddab879607d06b84a</anchor>
      <arglist>(const geometry_msgs::TwistStamped::ConstPtr &amp;goal)</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual std::vector&lt; std::string &gt;</type>
      <name>getClaimedNames</name>
      <anchorfile>classrobot__controllers_1_1CartesianTwistController.html</anchorfile>
      <anchor>a3cf57cdd84fada86308fd0715fbd8820</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual std::vector&lt; std::string &gt;</type>
      <name>getCommandedNames</name>
      <anchorfile>classrobot__controllers_1_1CartesianTwistController.html</anchorfile>
      <anchor>a6ff6554e52c251c1a0c682e31c387a17</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual std::string</type>
      <name>getType</name>
      <anchorfile>classrobot__controllers_1_1CartesianTwistController.html</anchorfile>
      <anchor>a508ef3995116021f24d24964cd7787a5</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual int</type>
      <name>init</name>
      <anchorfile>classrobot__controllers_1_1CartesianTwistController.html</anchorfile>
      <anchor>a91f88e338d0c49f6f6023e6246680778</anchor>
      <arglist>(ros::NodeHandle &amp;nh, ControllerManager *manager)</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual bool</type>
      <name>reset</name>
      <anchorfile>classrobot__controllers_1_1CartesianTwistController.html</anchorfile>
      <anchor>a22156cb9c9f873073cb90a39bc7f1dae</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual bool</type>
      <name>start</name>
      <anchorfile>classrobot__controllers_1_1CartesianTwistController.html</anchorfile>
      <anchor>a486f731e7030142ff7e978fc5d4074c4</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual bool</type>
      <name>stop</name>
      <anchorfile>classrobot__controllers_1_1CartesianTwistController.html</anchorfile>
      <anchor>ac46d83696091b627e7c8cdaec52d7caa</anchor>
      <arglist>(bool force)</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual void</type>
      <name>update</name>
      <anchorfile>classrobot__controllers_1_1CartesianTwistController.html</anchorfile>
      <anchor>acdbfef5b74e90d1c4d375897a4d1cac9</anchor>
      <arglist>(const ros::Time &amp;now, const ros::Duration &amp;dt)</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual</type>
      <name>~CartesianTwistController</name>
      <anchorfile>classrobot__controllers_1_1CartesianTwistController.html</anchorfile>
      <anchor>a44b3533b16a5788a30f272ba2aae9ae0</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" protection="private">
      <type>KDL::Frame</type>
      <name>getPose</name>
      <anchorfile>classrobot__controllers_1_1CartesianTwistController.html</anchorfile>
      <anchor>a124f144d24a2069e63d5400f12a3a695</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="variable" protection="private">
      <type>ros::Subscriber</type>
      <name>command_sub_</name>
      <anchorfile>classrobot__controllers_1_1CartesianTwistController.html</anchorfile>
      <anchor>a7bfad22dda337520a9341d97a51cbd86</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>bool</type>
      <name>enabled_</name>
      <anchorfile>classrobot__controllers_1_1CartesianTwistController.html</anchorfile>
      <anchor>a6e2ee7f23d9195d436bb3b9ef4458ea2</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>ros::Publisher</type>
      <name>feedback_pub_</name>
      <anchorfile>classrobot__controllers_1_1CartesianTwistController.html</anchorfile>
      <anchor>a0dadba26f84a5ba3f2ed0cb556a496e5</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>boost::shared_ptr&lt; KDL::ChainFkSolverPos_recursive &gt;</type>
      <name>fksolver_</name>
      <anchorfile>classrobot__controllers_1_1CartesianTwistController.html</anchorfile>
      <anchor>a08102451861b080130b4ef5b13fea58b</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>bool</type>
      <name>initialized_</name>
      <anchorfile>classrobot__controllers_1_1CartesianTwistController.html</anchorfile>
      <anchor>a1144a4aa8155ba2c82637605cfed60ea</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>bool</type>
      <name>is_active_</name>
      <anchorfile>classrobot__controllers_1_1CartesianTwistController.html</anchorfile>
      <anchor>ab461aa2536fd63798c97516c32354aea</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::vector&lt; JointHandlePtr &gt;</type>
      <name>joints_</name>
      <anchorfile>classrobot__controllers_1_1CartesianTwistController.html</anchorfile>
      <anchor>a7dc38747225021a8e325fd4a83435c60</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>KDL::Chain</type>
      <name>kdl_chain_</name>
      <anchorfile>classrobot__controllers_1_1CartesianTwistController.html</anchorfile>
      <anchor>a4154eaf6fa71e5473bce8f7e3e598cfb</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>ros::Time</type>
      <name>last_command_time_</name>
      <anchorfile>classrobot__controllers_1_1CartesianTwistController.html</anchorfile>
      <anchor>a88b5c9eacad68035b9e381bb4dec8c60</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>KDL::JntArray</type>
      <name>last_tgt_jnt_vel_</name>
      <anchorfile>classrobot__controllers_1_1CartesianTwistController.html</anchorfile>
      <anchor>a21117c9f6d91f2fcc88998a92ab1d2e3</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>ControllerManager *</type>
      <name>manager_</name>
      <anchorfile>classrobot__controllers_1_1CartesianTwistController.html</anchorfile>
      <anchor>aad4b6c41f589ad07cdf3ea6ede16ad05</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>boost::mutex</type>
      <name>mutex_</name>
      <anchorfile>classrobot__controllers_1_1CartesianTwistController.html</anchorfile>
      <anchor>ad0e01656ebeb37ea6d34e79237b84a3d</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>boost::shared_ptr&lt; KDL::ChainIkSolverVel_wdls &gt;</type>
      <name>solver_</name>
      <anchorfile>classrobot__controllers_1_1CartesianTwistController.html</anchorfile>
      <anchor>a148225d44d12f04518fd192d908aace5</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>KDL::JntArray</type>
      <name>tgt_jnt_pos_</name>
      <anchorfile>classrobot__controllers_1_1CartesianTwistController.html</anchorfile>
      <anchor>ad4bfaa5485de5431d233298f6170aa1d</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>KDL::JntArray</type>
      <name>tgt_jnt_vel_</name>
      <anchorfile>classrobot__controllers_1_1CartesianTwistController.html</anchorfile>
      <anchor>ad0d34d5eb5eaa6be0ea10fc9c4f75e5b</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>KDL::Twist</type>
      <name>twist_command_</name>
      <anchorfile>classrobot__controllers_1_1CartesianTwistController.html</anchorfile>
      <anchor>a44ffeb9fa359b9e359ae7e0397c42ea1</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::string</type>
      <name>twist_command_frame_</name>
      <anchorfile>classrobot__controllers_1_1CartesianTwistController.html</anchorfile>
      <anchor>a3208b420ed17acd0ebe5cbf01a398c21</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>robot_controllers::CartesianWrenchController</name>
    <filename>classrobot__controllers_1_1CartesianWrenchController.html</filename>
    <base>robot_controllers::Controller</base>
    <member kind="function">
      <type></type>
      <name>CartesianWrenchController</name>
      <anchorfile>classrobot__controllers_1_1CartesianWrenchController.html</anchorfile>
      <anchor>aa1e5223928fdda7087a1f43b062a676b</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>command</name>
      <anchorfile>classrobot__controllers_1_1CartesianWrenchController.html</anchorfile>
      <anchor>a5b537ab5140fd30e453ff40bc73edb15</anchor>
      <arglist>(const geometry_msgs::Wrench::ConstPtr &amp;goal)</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual std::vector&lt; std::string &gt;</type>
      <name>getClaimedNames</name>
      <anchorfile>classrobot__controllers_1_1CartesianWrenchController.html</anchorfile>
      <anchor>adc253d8ff854dae755a18fdacbaef36b</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual std::vector&lt; std::string &gt;</type>
      <name>getCommandedNames</name>
      <anchorfile>classrobot__controllers_1_1CartesianWrenchController.html</anchorfile>
      <anchor>a5d90a1edbc650074bdbaaf420af30314</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual std::string</type>
      <name>getType</name>
      <anchorfile>classrobot__controllers_1_1CartesianWrenchController.html</anchorfile>
      <anchor>abb41b351419a44d0649539353c3f644d</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual int</type>
      <name>init</name>
      <anchorfile>classrobot__controllers_1_1CartesianWrenchController.html</anchorfile>
      <anchor>ab4ed45e06174ffb1f39d1a8278fc9a90</anchor>
      <arglist>(ros::NodeHandle &amp;nh, ControllerManager *manager)</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual bool</type>
      <name>reset</name>
      <anchorfile>classrobot__controllers_1_1CartesianWrenchController.html</anchorfile>
      <anchor>aab62d1cc6ec953ebe6d5e479051a6380</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual bool</type>
      <name>start</name>
      <anchorfile>classrobot__controllers_1_1CartesianWrenchController.html</anchorfile>
      <anchor>a1980462c6aa6417fa341b3bb63854545</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual bool</type>
      <name>stop</name>
      <anchorfile>classrobot__controllers_1_1CartesianWrenchController.html</anchorfile>
      <anchor>a9e6e83b2cdf5106e585ba8e6fa1e5f6f</anchor>
      <arglist>(bool force)</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual void</type>
      <name>update</name>
      <anchorfile>classrobot__controllers_1_1CartesianWrenchController.html</anchorfile>
      <anchor>a12c433287f8433a7f8b62b6c02285118</anchor>
      <arglist>(const ros::Time &amp;now, const ros::Duration &amp;dt)</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual</type>
      <name>~CartesianWrenchController</name>
      <anchorfile>classrobot__controllers_1_1CartesianWrenchController.html</anchorfile>
      <anchor>a15100cd1fd0788ab5e8687de36b8b580</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>updateJoints</name>
      <anchorfile>classrobot__controllers_1_1CartesianWrenchController.html</anchorfile>
      <anchor>a4b918eda1c4ec05e8da0c16ae9830cd5</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="variable" protection="private">
      <type>ros::Subscriber</type>
      <name>command_sub_</name>
      <anchorfile>classrobot__controllers_1_1CartesianWrenchController.html</anchorfile>
      <anchor>a343dc3ce7d379a13cfd9444f4ff9ea3e</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>KDL::Wrench</type>
      <name>desired_wrench_</name>
      <anchorfile>classrobot__controllers_1_1CartesianWrenchController.html</anchorfile>
      <anchor>aeb43c768ee496dbf9ea4c0213717d48b</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>bool</type>
      <name>enabled_</name>
      <anchorfile>classrobot__controllers_1_1CartesianWrenchController.html</anchorfile>
      <anchor>acf7ecbbfc9cf341cb882b9698fbc54c9</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>ros::Publisher</type>
      <name>feedback_pub_</name>
      <anchorfile>classrobot__controllers_1_1CartesianWrenchController.html</anchorfile>
      <anchor>ad13f823d36f90af63bcbba9e2ce33f71</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>bool</type>
      <name>initialized_</name>
      <anchorfile>classrobot__controllers_1_1CartesianWrenchController.html</anchorfile>
      <anchor>ab36843770a7c7b0a5bba004a069f8b4f</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>boost::shared_ptr&lt; KDL::ChainJntToJacSolver &gt;</type>
      <name>jac_solver_</name>
      <anchorfile>classrobot__controllers_1_1CartesianWrenchController.html</anchorfile>
      <anchor>a4006593a4b750d088264f487fd5e71db</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>KDL::Jacobian</type>
      <name>jacobian_</name>
      <anchorfile>classrobot__controllers_1_1CartesianWrenchController.html</anchorfile>
      <anchor>ad1cbe0a8d75dd5074e4832ccf5b51850</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>KDL::JntArray</type>
      <name>jnt_eff_</name>
      <anchorfile>classrobot__controllers_1_1CartesianWrenchController.html</anchorfile>
      <anchor>a4c025ab71d5e98988dfbe45f4983e8ba</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>KDL::JntArray</type>
      <name>jnt_pos_</name>
      <anchorfile>classrobot__controllers_1_1CartesianWrenchController.html</anchorfile>
      <anchor>a409149558af397c2bf1334d6b837d8a4</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::vector&lt; JointHandlePtr &gt;</type>
      <name>joints_</name>
      <anchorfile>classrobot__controllers_1_1CartesianWrenchController.html</anchorfile>
      <anchor>a7dfe90d664b6f2edb4fdca6c9bca192f</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>KDL::Chain</type>
      <name>kdl_chain_</name>
      <anchorfile>classrobot__controllers_1_1CartesianWrenchController.html</anchorfile>
      <anchor>a2b263d0cd08359f7adceca04fb663161</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>ros::Time</type>
      <name>last_command_</name>
      <anchorfile>classrobot__controllers_1_1CartesianWrenchController.html</anchorfile>
      <anchor>ac9385a24713b52cb0c6e5e50e181aa48</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>ControllerManager *</type>
      <name>manager_</name>
      <anchorfile>classrobot__controllers_1_1CartesianWrenchController.html</anchorfile>
      <anchor>a02886927c6743ca7b3d1f2366db9edf3</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::string</type>
      <name>root_link_</name>
      <anchorfile>classrobot__controllers_1_1CartesianWrenchController.html</anchorfile>
      <anchor>a6dcae2410f7a0211436a926ddffbc878</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>tf::TransformListener</type>
      <name>tf_</name>
      <anchorfile>classrobot__controllers_1_1CartesianWrenchController.html</anchorfile>
      <anchor>a8b07465512d27aaed57cc5df1ab007b0</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>robot_controllers::DiffDriveBaseController</name>
    <filename>classrobot__controllers_1_1DiffDriveBaseController.html</filename>
    <base>robot_controllers::Controller</base>
    <member kind="function">
      <type>void</type>
      <name>command</name>
      <anchorfile>classrobot__controllers_1_1DiffDriveBaseController.html</anchorfile>
      <anchor>a32fbd52e3000c4e9a53dfe91c48640ac</anchor>
      <arglist>(const geometry_msgs::TwistConstPtr &amp;msg)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>DiffDriveBaseController</name>
      <anchorfile>classrobot__controllers_1_1DiffDriveBaseController.html</anchorfile>
      <anchor>acd18beb7dcd4f6c4d68e3dd00956e82e</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual std::vector&lt; std::string &gt;</type>
      <name>getClaimedNames</name>
      <anchorfile>classrobot__controllers_1_1DiffDriveBaseController.html</anchorfile>
      <anchor>af68ca6b3e4cc9a961f6e8b7ded33d4bf</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual std::vector&lt; std::string &gt;</type>
      <name>getCommandedNames</name>
      <anchorfile>classrobot__controllers_1_1DiffDriveBaseController.html</anchorfile>
      <anchor>a2bbe39e9d1742d0bc4f6e1cd1535f5fc</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual std::string</type>
      <name>getType</name>
      <anchorfile>classrobot__controllers_1_1DiffDriveBaseController.html</anchorfile>
      <anchor>a7a61ba77ae6b377bef6b8b2cf722ccef</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual int</type>
      <name>init</name>
      <anchorfile>classrobot__controllers_1_1DiffDriveBaseController.html</anchorfile>
      <anchor>ac82933539b7ec62f030ce51df0a3fa2a</anchor>
      <arglist>(ros::NodeHandle &amp;nh, ControllerManager *manager)</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual bool</type>
      <name>reset</name>
      <anchorfile>classrobot__controllers_1_1DiffDriveBaseController.html</anchorfile>
      <anchor>a84a70fe9f485591ef9815c10b0df098c</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual bool</type>
      <name>start</name>
      <anchorfile>classrobot__controllers_1_1DiffDriveBaseController.html</anchorfile>
      <anchor>a6ded85e20b87068103ea99189259c384</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual bool</type>
      <name>stop</name>
      <anchorfile>classrobot__controllers_1_1DiffDriveBaseController.html</anchorfile>
      <anchor>a3ad0b9414582b668bd4650741ee3d2d8</anchor>
      <arglist>(bool force)</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual void</type>
      <name>update</name>
      <anchorfile>classrobot__controllers_1_1DiffDriveBaseController.html</anchorfile>
      <anchor>abb4ba1b08e6d76edd3a7f98500f23c2b</anchor>
      <arglist>(const ros::Time &amp;now, const ros::Duration &amp;dt)</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual</type>
      <name>~DiffDriveBaseController</name>
      <anchorfile>classrobot__controllers_1_1DiffDriveBaseController.html</anchorfile>
      <anchor>a3f3672e595493938ffd80882d1c47b04</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>publishCallback</name>
      <anchorfile>classrobot__controllers_1_1DiffDriveBaseController.html</anchorfile>
      <anchor>adb95320ee2225aab1eabc1de2efc4b23</anchor>
      <arglist>(const ros::TimerEvent &amp;event)</arglist>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>scanCallback</name>
      <anchorfile>classrobot__controllers_1_1DiffDriveBaseController.html</anchorfile>
      <anchor>a4123b6b9521ec3686ff83d58b61fbed7</anchor>
      <arglist>(const sensor_msgs::LaserScanConstPtr &amp;scan)</arglist>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>setCommand</name>
      <anchorfile>classrobot__controllers_1_1DiffDriveBaseController.html</anchorfile>
      <anchor>a8374161311f3d1923551283477786b01</anchor>
      <arglist>(float left, float right)</arglist>
    </member>
    <member kind="variable" protection="private">
      <type>boost::shared_ptr&lt; tf::TransformBroadcaster &gt;</type>
      <name>broadcaster_</name>
      <anchorfile>classrobot__controllers_1_1DiffDriveBaseController.html</anchorfile>
      <anchor>a92f47032df33ba7f1fe2f5ecabca64cd</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>ros::Subscriber</type>
      <name>cmd_sub_</name>
      <anchorfile>classrobot__controllers_1_1DiffDriveBaseController.html</anchorfile>
      <anchor>ac8e3cc8a31e0f3c3938c46784b1152c5</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>boost::mutex</type>
      <name>command_mutex_</name>
      <anchorfile>classrobot__controllers_1_1DiffDriveBaseController.html</anchorfile>
      <anchor>aa89304289daebf64c084b92674cfa4b8</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>double</type>
      <name>desired_r_</name>
      <anchorfile>classrobot__controllers_1_1DiffDriveBaseController.html</anchorfile>
      <anchor>aea7aa70eb5d0148961c750e0bc9ac326</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>double</type>
      <name>desired_x_</name>
      <anchorfile>classrobot__controllers_1_1DiffDriveBaseController.html</anchorfile>
      <anchor>ab849b2b1f9258045abb5402c8e6f34ce</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>bool</type>
      <name>enabled_</name>
      <anchorfile>classrobot__controllers_1_1DiffDriveBaseController.html</anchorfile>
      <anchor>a9b301eeabd8e3752bec04825b35a13fc</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>bool</type>
      <name>initialized_</name>
      <anchorfile>classrobot__controllers_1_1DiffDriveBaseController.html</anchorfile>
      <anchor>a88ec83d49bba5c59b72da2d59c83e50d</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>ros::Time</type>
      <name>last_command_</name>
      <anchorfile>classrobot__controllers_1_1DiffDriveBaseController.html</anchorfile>
      <anchor>a043d40f4b823d4bfeaf81bc7d478565d</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>ros::Time</type>
      <name>last_laser_scan_</name>
      <anchorfile>classrobot__controllers_1_1DiffDriveBaseController.html</anchorfile>
      <anchor>a3e7567893e8fafe71075a1d57594d628</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>float</type>
      <name>last_sent_r_</name>
      <anchorfile>classrobot__controllers_1_1DiffDriveBaseController.html</anchorfile>
      <anchor>a887af06ba36ff76eaa2b7f4ce9a5796b</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>float</type>
      <name>last_sent_x_</name>
      <anchorfile>classrobot__controllers_1_1DiffDriveBaseController.html</anchorfile>
      <anchor>ad517763ba11fb940bb2130b353ba51d6</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>ros::Time</type>
      <name>last_update_</name>
      <anchorfile>classrobot__controllers_1_1DiffDriveBaseController.html</anchorfile>
      <anchor>a845d0031814cd40b5b5641cf2731ba30</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>JointHandlePtr</type>
      <name>left_</name>
      <anchorfile>classrobot__controllers_1_1DiffDriveBaseController.html</anchorfile>
      <anchor>a08b89a8763a8e8cffc06674f414399a3</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>float</type>
      <name>left_last_position_</name>
      <anchorfile>classrobot__controllers_1_1DiffDriveBaseController.html</anchorfile>
      <anchor>a6fa19ec2459197687a6129b0ff3366c7</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>double</type>
      <name>left_last_timestamp_</name>
      <anchorfile>classrobot__controllers_1_1DiffDriveBaseController.html</anchorfile>
      <anchor>a068c909e84c346458ada01b726f69681</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>ControllerManager *</type>
      <name>manager_</name>
      <anchorfile>classrobot__controllers_1_1DiffDriveBaseController.html</anchorfile>
      <anchor>a019ca80f4acbf55129dce175b1aad37c</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>double</type>
      <name>max_acceleration_r_</name>
      <anchorfile>classrobot__controllers_1_1DiffDriveBaseController.html</anchorfile>
      <anchor>a7d67ae536c1b740ea8e7ec503b4f7aa7</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>double</type>
      <name>max_acceleration_x_</name>
      <anchorfile>classrobot__controllers_1_1DiffDriveBaseController.html</anchorfile>
      <anchor>a21f94c7c799b67432fb7da9c8b728726</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>double</type>
      <name>max_velocity_r_</name>
      <anchorfile>classrobot__controllers_1_1DiffDriveBaseController.html</anchorfile>
      <anchor>aabb066cc698772eb8a894c194aa2c277</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>double</type>
      <name>max_velocity_x_</name>
      <anchorfile>classrobot__controllers_1_1DiffDriveBaseController.html</anchorfile>
      <anchor>ad78974b9dfbdb31cbfea1bfd0e6e4bad</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>double</type>
      <name>moving_threshold_</name>
      <anchorfile>classrobot__controllers_1_1DiffDriveBaseController.html</anchorfile>
      <anchor>a56b2c2f578ccdff917e7bb98c63b0ea9</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>nav_msgs::Odometry</type>
      <name>odom_</name>
      <anchorfile>classrobot__controllers_1_1DiffDriveBaseController.html</anchorfile>
      <anchor>a5b1ecf131b796efd42436b67cc4c33e1</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>boost::mutex</type>
      <name>odom_mutex_</name>
      <anchorfile>classrobot__controllers_1_1DiffDriveBaseController.html</anchorfile>
      <anchor>ac15e4c5e11ac1d4675212cbe3ded8aef</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>ros::Publisher</type>
      <name>odom_pub_</name>
      <anchorfile>classrobot__controllers_1_1DiffDriveBaseController.html</anchorfile>
      <anchor>ad43a38b36cefa2f6f34a3621719454c0</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>ros::Timer</type>
      <name>odom_timer_</name>
      <anchorfile>classrobot__controllers_1_1DiffDriveBaseController.html</anchorfile>
      <anchor>a794967c71e175f0cca4018f7eabd730b</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>bool</type>
      <name>publish_tf_</name>
      <anchorfile>classrobot__controllers_1_1DiffDriveBaseController.html</anchorfile>
      <anchor>ae006fe3c38902945ab1cdefd6451f0a5</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>double</type>
      <name>radians_per_meter_</name>
      <anchorfile>classrobot__controllers_1_1DiffDriveBaseController.html</anchorfile>
      <anchor>afd7fd130c341ae259e066752223b7174</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>bool</type>
      <name>ready_</name>
      <anchorfile>classrobot__controllers_1_1DiffDriveBaseController.html</anchorfile>
      <anchor>aad87422517e11600ff4e4c4a7b8918ed</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>JointHandlePtr</type>
      <name>right_</name>
      <anchorfile>classrobot__controllers_1_1DiffDriveBaseController.html</anchorfile>
      <anchor>a618f060392848c6344bbc4cca1df7e50</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>float</type>
      <name>right_last_position_</name>
      <anchorfile>classrobot__controllers_1_1DiffDriveBaseController.html</anchorfile>
      <anchor>ad564d1ef0512eca5fd70edf7396bd3e9</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>double</type>
      <name>right_last_timestamp_</name>
      <anchorfile>classrobot__controllers_1_1DiffDriveBaseController.html</anchorfile>
      <anchor>ac38d0b713341e75535881eb36b12d6cf</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>double</type>
      <name>robot_width_</name>
      <anchorfile>classrobot__controllers_1_1DiffDriveBaseController.html</anchorfile>
      <anchor>a28dfce9cdc38e9ba9662cc1a27d753f7</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>double</type>
      <name>rotating_threshold_</name>
      <anchorfile>classrobot__controllers_1_1DiffDriveBaseController.html</anchorfile>
      <anchor>a9fcfeaaff61a194881e79587534fd980</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>double</type>
      <name>safety_scaling_</name>
      <anchorfile>classrobot__controllers_1_1DiffDriveBaseController.html</anchorfile>
      <anchor>a026e3f466dc47a505e26fd472059e609</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>double</type>
      <name>safety_scaling_distance_</name>
      <anchorfile>classrobot__controllers_1_1DiffDriveBaseController.html</anchorfile>
      <anchor>a96246ea500e707b89805a0b806fd9a63</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>ros::Subscriber</type>
      <name>scan_sub_</name>
      <anchorfile>classrobot__controllers_1_1DiffDriveBaseController.html</anchorfile>
      <anchor>a2d59f8d98de6ed272f3713cd67a75912</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>double</type>
      <name>theta_</name>
      <anchorfile>classrobot__controllers_1_1DiffDriveBaseController.html</anchorfile>
      <anchor>a39208421d1337e5762b6a12c96c6517a</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>ros::Duration</type>
      <name>timeout_</name>
      <anchorfile>classrobot__controllers_1_1DiffDriveBaseController.html</anchorfile>
      <anchor>aa74a8e810f4922802472f9d17db74bc5</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>double</type>
      <name>track_width_</name>
      <anchorfile>classrobot__controllers_1_1DiffDriveBaseController.html</anchorfile>
      <anchor>a8425de186f2ff6e29c19a31fde388dd0</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>double</type>
      <name>wheel_rotating_threshold_</name>
      <anchorfile>classrobot__controllers_1_1DiffDriveBaseController.html</anchorfile>
      <anchor>a6880a0d680dd9d1bf3a42a23064641c9</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>robot_controllers::FollowJointTrajectoryController</name>
    <filename>classrobot__controllers_1_1FollowJointTrajectoryController.html</filename>
    <base>robot_controllers::Controller</base>
    <member kind="function">
      <type></type>
      <name>FollowJointTrajectoryController</name>
      <anchorfile>classrobot__controllers_1_1FollowJointTrajectoryController.html</anchorfile>
      <anchor>aa4adff1b4fb7a19aadf98e1f8bc95eba</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual std::vector&lt; std::string &gt;</type>
      <name>getClaimedNames</name>
      <anchorfile>classrobot__controllers_1_1FollowJointTrajectoryController.html</anchorfile>
      <anchor>a57876c932ba03d8b6e8e42bf7560124a</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual std::vector&lt; std::string &gt;</type>
      <name>getCommandedNames</name>
      <anchorfile>classrobot__controllers_1_1FollowJointTrajectoryController.html</anchorfile>
      <anchor>ace7193138d924c565b4aac42a3b0f40e</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual std::string</type>
      <name>getType</name>
      <anchorfile>classrobot__controllers_1_1FollowJointTrajectoryController.html</anchorfile>
      <anchor>a5da0fca950cfedfd5c5f24eb64a1e006</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual int</type>
      <name>init</name>
      <anchorfile>classrobot__controllers_1_1FollowJointTrajectoryController.html</anchorfile>
      <anchor>a22075b75a8c9994333c9ed9108818e7b</anchor>
      <arglist>(ros::NodeHandle &amp;nh, ControllerManager *manager)</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual bool</type>
      <name>reset</name>
      <anchorfile>classrobot__controllers_1_1FollowJointTrajectoryController.html</anchorfile>
      <anchor>af5840ca1c92381be32cadca2764c7769</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual bool</type>
      <name>start</name>
      <anchorfile>classrobot__controllers_1_1FollowJointTrajectoryController.html</anchorfile>
      <anchor>ac6bf93a3a4c56fe2deba84e909e34466</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual bool</type>
      <name>stop</name>
      <anchorfile>classrobot__controllers_1_1FollowJointTrajectoryController.html</anchorfile>
      <anchor>a6f9fcc135a1e4513ffd4c5419869ad5f</anchor>
      <arglist>(bool force)</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual void</type>
      <name>update</name>
      <anchorfile>classrobot__controllers_1_1FollowJointTrajectoryController.html</anchorfile>
      <anchor>acd845a6ace37822ce84c979c74c51403</anchor>
      <arglist>(const ros::Time &amp;now, const ros::Duration &amp;dt)</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual</type>
      <name>~FollowJointTrajectoryController</name>
      <anchorfile>classrobot__controllers_1_1FollowJointTrajectoryController.html</anchorfile>
      <anchor>a223e8ac466b99e2e253e873f9842cf08</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="typedef" protection="private">
      <type>actionlib::SimpleActionServer&lt; control_msgs::FollowJointTrajectoryAction &gt;</type>
      <name>server_t</name>
      <anchorfile>classrobot__controllers_1_1FollowJointTrajectoryController.html</anchorfile>
      <anchor>a6c33b2ed3f28d7a48eeedd0f15451883</anchor>
      <arglist></arglist>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>executeCb</name>
      <anchorfile>classrobot__controllers_1_1FollowJointTrajectoryController.html</anchorfile>
      <anchor>ae22514964d54e9392cb6160a68589b57</anchor>
      <arglist>(const control_msgs::FollowJointTrajectoryGoalConstPtr &amp;goal)</arglist>
    </member>
    <member kind="function" protection="private">
      <type>TrajectoryPoint</type>
      <name>getPointFromCurrent</name>
      <anchorfile>classrobot__controllers_1_1FollowJointTrajectoryController.html</anchorfile>
      <anchor>add7d1a58d09d0e9de1ce7e65caff2c3d</anchor>
      <arglist>(bool incl_vel, bool incl_acc, bool zero_vel)</arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::vector&lt; bool &gt;</type>
      <name>continuous_</name>
      <anchorfile>classrobot__controllers_1_1FollowJointTrajectoryController.html</anchorfile>
      <anchor>aadba351ef2cb4ea10de39dc756a82060</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>control_msgs::FollowJointTrajectoryFeedback</type>
      <name>feedback_</name>
      <anchorfile>classrobot__controllers_1_1FollowJointTrajectoryController.html</anchorfile>
      <anchor>a3659907758576ebc8257e21789f4cdae</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>ros::Time</type>
      <name>goal_time</name>
      <anchorfile>classrobot__controllers_1_1FollowJointTrajectoryController.html</anchorfile>
      <anchor>a5a7c2185bfcc9f50737e1a25f1de6db8</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>double</type>
      <name>goal_time_tolerance_</name>
      <anchorfile>classrobot__controllers_1_1FollowJointTrajectoryController.html</anchorfile>
      <anchor>a625c0202ee4e5db3ee045aff9d67cd77</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>TrajectoryPoint</type>
      <name>goal_tolerance_</name>
      <anchorfile>classrobot__controllers_1_1FollowJointTrajectoryController.html</anchorfile>
      <anchor>a4c6c31562fd4e9893958c0938082cd66</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>bool</type>
      <name>has_goal_tolerance_</name>
      <anchorfile>classrobot__controllers_1_1FollowJointTrajectoryController.html</anchorfile>
      <anchor>a820b65a94d28d1b49f7e912daad2c9af</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>bool</type>
      <name>has_path_tolerance_</name>
      <anchorfile>classrobot__controllers_1_1FollowJointTrajectoryController.html</anchorfile>
      <anchor>ae60bd78568416e3b03e4b8a28f742167</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>bool</type>
      <name>initialized_</name>
      <anchorfile>classrobot__controllers_1_1FollowJointTrajectoryController.html</anchorfile>
      <anchor>a5bd6e5733dc845d69fd6671378fa7d8f</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::vector&lt; std::string &gt;</type>
      <name>joint_names_</name>
      <anchorfile>classrobot__controllers_1_1FollowJointTrajectoryController.html</anchorfile>
      <anchor>ae9a86d9ed87c4f61a6fb29c8040a54fb</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::vector&lt; JointHandlePtr &gt;</type>
      <name>joints_</name>
      <anchorfile>classrobot__controllers_1_1FollowJointTrajectoryController.html</anchorfile>
      <anchor>a0905ac07b14076b2adf1a9c2972549a5</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>TrajectoryPoint</type>
      <name>last_sample_</name>
      <anchorfile>classrobot__controllers_1_1FollowJointTrajectoryController.html</anchorfile>
      <anchor>ac7949dd64878b63195d71831369e66b0</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>ControllerManager *</type>
      <name>manager_</name>
      <anchorfile>classrobot__controllers_1_1FollowJointTrajectoryController.html</anchorfile>
      <anchor>a03f7689faf46c259faed922fc038c4ac</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>TrajectoryPoint</type>
      <name>path_tolerance_</name>
      <anchorfile>classrobot__controllers_1_1FollowJointTrajectoryController.html</anchorfile>
      <anchor>a46ddaa84d6ff074b79072fb0bd4ab646</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>bool</type>
      <name>preempted_</name>
      <anchorfile>classrobot__controllers_1_1FollowJointTrajectoryController.html</anchorfile>
      <anchor>ab589fa8064daa6cae9fd7d5918860d5b</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>boost::shared_ptr&lt; TrajectorySampler &gt;</type>
      <name>sampler_</name>
      <anchorfile>classrobot__controllers_1_1FollowJointTrajectoryController.html</anchorfile>
      <anchor>aac01070ae4c4f9cbe484712a5fa0947c</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>boost::mutex</type>
      <name>sampler_mutex_</name>
      <anchorfile>classrobot__controllers_1_1FollowJointTrajectoryController.html</anchorfile>
      <anchor>aed66999a621086d0b97e9c01bd764ec1</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>boost::shared_ptr&lt; server_t &gt;</type>
      <name>server_</name>
      <anchorfile>classrobot__controllers_1_1FollowJointTrajectoryController.html</anchorfile>
      <anchor>a64cebac21216fe0d03ff76afa03a69c8</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>bool</type>
      <name>stop_on_path_violation_</name>
      <anchorfile>classrobot__controllers_1_1FollowJointTrajectoryController.html</anchorfile>
      <anchor>a31a675e3bd98ecc7583ed37f538aba0a</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>bool</type>
      <name>stop_with_action_</name>
      <anchorfile>classrobot__controllers_1_1FollowJointTrajectoryController.html</anchorfile>
      <anchor>a014f02099977e6c724ab06a9de249af0</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>robot_controllers::GravityCompensation</name>
    <filename>classrobot__controllers_1_1GravityCompensation.html</filename>
    <base>robot_controllers::Controller</base>
    <member kind="function" virtualness="virtual">
      <type>virtual std::vector&lt; std::string &gt;</type>
      <name>getClaimedNames</name>
      <anchorfile>classrobot__controllers_1_1GravityCompensation.html</anchorfile>
      <anchor>a92937b8422b1ae49c5b6bf79b089ca4b</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual std::vector&lt; std::string &gt;</type>
      <name>getCommandedNames</name>
      <anchorfile>classrobot__controllers_1_1GravityCompensation.html</anchorfile>
      <anchor>a9dc0ceafb24aea28a3721639ec0081dc</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual std::string</type>
      <name>getType</name>
      <anchorfile>classrobot__controllers_1_1GravityCompensation.html</anchorfile>
      <anchor>a9d6e5cb129a4edf247c6b10de3855244</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>GravityCompensation</name>
      <anchorfile>classrobot__controllers_1_1GravityCompensation.html</anchorfile>
      <anchor>a1599817d9deed40386f06887bb0b3783</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual int</type>
      <name>init</name>
      <anchorfile>classrobot__controllers_1_1GravityCompensation.html</anchorfile>
      <anchor>a4ed283a6d94d4a68dd3e845871303bdd</anchor>
      <arglist>(ros::NodeHandle &amp;nh, ControllerManager *manager)</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual bool</type>
      <name>reset</name>
      <anchorfile>classrobot__controllers_1_1GravityCompensation.html</anchorfile>
      <anchor>af71261e6935f41a78e3c1884cb5c8bcc</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual bool</type>
      <name>start</name>
      <anchorfile>classrobot__controllers_1_1GravityCompensation.html</anchorfile>
      <anchor>ac514f0f8402a6450a3d50d0fddf4fb3b</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual bool</type>
      <name>stop</name>
      <anchorfile>classrobot__controllers_1_1GravityCompensation.html</anchorfile>
      <anchor>a1b72065ae2540303f0af8a98541d41f9</anchor>
      <arglist>(bool force)</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual void</type>
      <name>update</name>
      <anchorfile>classrobot__controllers_1_1GravityCompensation.html</anchorfile>
      <anchor>afeb1a4a9f065022e38c08f5080843244</anchor>
      <arglist>(const ros::Time &amp;time, const ros::Duration &amp;dt)</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual</type>
      <name>~GravityCompensation</name>
      <anchorfile>classrobot__controllers_1_1GravityCompensation.html</anchorfile>
      <anchor>a788da2b427782adf66f34fa795f3f524</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="variable" protection="private">
      <type>bool</type>
      <name>initialized_</name>
      <anchorfile>classrobot__controllers_1_1GravityCompensation.html</anchorfile>
      <anchor>ae588f5a5e8f051297364fbc3783d63b6</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::vector&lt; JointHandlePtr &gt;</type>
      <name>joints_</name>
      <anchorfile>classrobot__controllers_1_1GravityCompensation.html</anchorfile>
      <anchor>a47e16a6f18596a78e95416bf8e4f8bbf</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>KDL::Chain</type>
      <name>kdl_chain_</name>
      <anchorfile>classrobot__controllers_1_1GravityCompensation.html</anchorfile>
      <anchor>affa422691adeb0503fa54ac6e6ebc84c</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>boost::shared_ptr&lt; KDL::ChainDynParam &gt;</type>
      <name>kdl_chain_dynamics_</name>
      <anchorfile>classrobot__controllers_1_1GravityCompensation.html</anchorfile>
      <anchor>a0b665ad46298f265af19f35c23f888d0</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>ControllerManager *</type>
      <name>manager_</name>
      <anchorfile>classrobot__controllers_1_1GravityCompensation.html</anchorfile>
      <anchor>aace9091e130dcefe34e72d4bdbd6a3aa</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>KDL::JntArrayVel</type>
      <name>positions_</name>
      <anchorfile>classrobot__controllers_1_1GravityCompensation.html</anchorfile>
      <anchor>aa427e1c2c0bde39ab3023bbec98b7c4f</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>robot_controllers::ParallelGripperController</name>
    <filename>classrobot__controllers_1_1ParallelGripperController.html</filename>
    <base>robot_controllers::Controller</base>
    <member kind="function" virtualness="virtual">
      <type>virtual std::vector&lt; std::string &gt;</type>
      <name>getClaimedNames</name>
      <anchorfile>classrobot__controllers_1_1ParallelGripperController.html</anchorfile>
      <anchor>abb759a9658422520ad5c1f0dbb041474</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual std::vector&lt; std::string &gt;</type>
      <name>getCommandedNames</name>
      <anchorfile>classrobot__controllers_1_1ParallelGripperController.html</anchorfile>
      <anchor>abca8259d584e0004c694950fa48ab209</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual std::string</type>
      <name>getType</name>
      <anchorfile>classrobot__controllers_1_1ParallelGripperController.html</anchorfile>
      <anchor>a2cad06684aa4fdc7aa1bed7180a5866c</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual int</type>
      <name>init</name>
      <anchorfile>classrobot__controllers_1_1ParallelGripperController.html</anchorfile>
      <anchor>ace8af6a7707db63197e5cff874af3f2e</anchor>
      <arglist>(ros::NodeHandle &amp;nh, ControllerManager *manager)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>ParallelGripperController</name>
      <anchorfile>classrobot__controllers_1_1ParallelGripperController.html</anchorfile>
      <anchor>a219b51098433e73ef8fb5ec4f8154639</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual bool</type>
      <name>reset</name>
      <anchorfile>classrobot__controllers_1_1ParallelGripperController.html</anchorfile>
      <anchor>a1d8fbee531ce77a677658c2799a3a440</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual bool</type>
      <name>start</name>
      <anchorfile>classrobot__controllers_1_1ParallelGripperController.html</anchorfile>
      <anchor>a1c3c8719f2ea822156f89cac8b84c68b</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual bool</type>
      <name>stop</name>
      <anchorfile>classrobot__controllers_1_1ParallelGripperController.html</anchorfile>
      <anchor>a29eb0eb738d74478fca0de6a74493ad7</anchor>
      <arglist>(bool force)</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual void</type>
      <name>update</name>
      <anchorfile>classrobot__controllers_1_1ParallelGripperController.html</anchorfile>
      <anchor>a95a664fb1ccb0e99225ad40e9cd8c8da</anchor>
      <arglist>(const ros::Time &amp;now, const ros::Duration &amp;dt)</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual</type>
      <name>~ParallelGripperController</name>
      <anchorfile>classrobot__controllers_1_1ParallelGripperController.html</anchorfile>
      <anchor>adebd45d913595fa094c4106057d0dcac</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="typedef" protection="private">
      <type>actionlib::SimpleActionServer&lt; control_msgs::GripperCommandAction &gt;</type>
      <name>server_t</name>
      <anchorfile>classrobot__controllers_1_1ParallelGripperController.html</anchorfile>
      <anchor>abd197dfadc95a31fc320c24b339c3c6e</anchor>
      <arglist></arglist>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>executeCb</name>
      <anchorfile>classrobot__controllers_1_1ParallelGripperController.html</anchorfile>
      <anchor>aa6bf52340693c422c19869082161fd1b</anchor>
      <arglist>(const control_msgs::GripperCommandGoalConstPtr &amp;goal)</arglist>
    </member>
    <member kind="variable" protection="private">
      <type>robot_controllers::PID</type>
      <name>centering_pid_</name>
      <anchorfile>classrobot__controllers_1_1ParallelGripperController.html</anchorfile>
      <anchor>a54a4a982baa5299fc0f690ef40457ac9</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>double</type>
      <name>effort_</name>
      <anchorfile>classrobot__controllers_1_1ParallelGripperController.html</anchorfile>
      <anchor>ab4ba74f3934b36ca4516262dad6ddc73</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>double</type>
      <name>goal_</name>
      <anchorfile>classrobot__controllers_1_1ParallelGripperController.html</anchorfile>
      <anchor>adcc6a9f2f96cd259ce7e4dd1cb57bf9f</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>bool</type>
      <name>initialized_</name>
      <anchorfile>classrobot__controllers_1_1ParallelGripperController.html</anchorfile>
      <anchor>a33b5b09ee151d35e0df5f3f25ea4fa0b</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>JointHandlePtr</type>
      <name>left_</name>
      <anchorfile>classrobot__controllers_1_1ParallelGripperController.html</anchorfile>
      <anchor>a6989403fd77df091e21a15d7088da632</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>ControllerManager *</type>
      <name>manager_</name>
      <anchorfile>classrobot__controllers_1_1ParallelGripperController.html</anchorfile>
      <anchor>a2a96aa659b4f555cd2fca7a0fc8fc50b</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>double</type>
      <name>max_effort_</name>
      <anchorfile>classrobot__controllers_1_1ParallelGripperController.html</anchorfile>
      <anchor>a7c2669530d02b3f34a7f66c7f670b62f</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>double</type>
      <name>max_position_</name>
      <anchorfile>classrobot__controllers_1_1ParallelGripperController.html</anchorfile>
      <anchor>aafa011fe9a618627ad01887b06aee6a3</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>JointHandlePtr</type>
      <name>right_</name>
      <anchorfile>classrobot__controllers_1_1ParallelGripperController.html</anchorfile>
      <anchor>aa42c5438d87872641f48d3585f4ba29f</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>boost::shared_ptr&lt; server_t &gt;</type>
      <name>server_</name>
      <anchorfile>classrobot__controllers_1_1ParallelGripperController.html</anchorfile>
      <anchor>a22d7ec3af3a6cc5930dca0bc5e9e452c</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>bool</type>
      <name>use_centering_controller_</name>
      <anchorfile>classrobot__controllers_1_1ParallelGripperController.html</anchorfile>
      <anchor>a12ed9662168909e3878d8aa525a83722</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>robot_controllers::PID</name>
    <filename>classrobot__controllers_1_1PID.html</filename>
    <member kind="function">
      <type>bool</type>
      <name>init</name>
      <anchorfile>classrobot__controllers_1_1PID.html</anchorfile>
      <anchor>a60d0e0b7098380cdf2afada4469c7fd9</anchor>
      <arglist>(const ros::NodeHandle &amp;nh)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>PID</name>
      <anchorfile>classrobot__controllers_1_1PID.html</anchorfile>
      <anchor>ad8ac674e4932af855ffd1362b590b42a</anchor>
      <arglist>(double p, double i, double d, double i_max, double i_min)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>PID</name>
      <anchorfile>classrobot__controllers_1_1PID.html</anchorfile>
      <anchor>a505f68c15483ca1e743b2d063f26f29e</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>reset</name>
      <anchorfile>classrobot__controllers_1_1PID.html</anchorfile>
      <anchor>a90f414fe43e365298bba9d9bf7082f19</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>double</type>
      <name>update</name>
      <anchorfile>classrobot__controllers_1_1PID.html</anchorfile>
      <anchor>aca64881e3233015f2c988934cafd3252</anchor>
      <arglist>(double error, double dt)</arglist>
    </member>
    <member kind="function">
      <type>double</type>
      <name>update</name>
      <anchorfile>classrobot__controllers_1_1PID.html</anchorfile>
      <anchor>ad664ab0321aaeba4c11192964f1386e9</anchor>
      <arglist>(double error, double error_dot, double dt)</arglist>
    </member>
    <member kind="function" protection="protected">
      <type>bool</type>
      <name>checkGains</name>
      <anchorfile>classrobot__controllers_1_1PID.html</anchorfile>
      <anchor>a0579db0e852f0654cc298e1b5dd26bc2</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>double</type>
      <name>d_gain_</name>
      <anchorfile>classrobot__controllers_1_1PID.html</anchorfile>
      <anchor>a9bccbe393f2c5093be695c05b638294a</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>double</type>
      <name>error_last_</name>
      <anchorfile>classrobot__controllers_1_1PID.html</anchorfile>
      <anchor>a3802227c5e9f2a16c2d21cd7f139e542</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>double</type>
      <name>i_gain_</name>
      <anchorfile>classrobot__controllers_1_1PID.html</anchorfile>
      <anchor>ae6acef73c2b554f21688f2e14b0ca9f0</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>double</type>
      <name>i_max_</name>
      <anchorfile>classrobot__controllers_1_1PID.html</anchorfile>
      <anchor>af8347bc85a68a5b7c6c38645a1b78665</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>double</type>
      <name>i_min_</name>
      <anchorfile>classrobot__controllers_1_1PID.html</anchorfile>
      <anchor>a157d26b92f6af1c93855795152f6f01d</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>double</type>
      <name>i_term_</name>
      <anchorfile>classrobot__controllers_1_1PID.html</anchorfile>
      <anchor>aec9a571303e0eacef0e9246b0d16102e</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>double</type>
      <name>p_gain_</name>
      <anchorfile>classrobot__controllers_1_1PID.html</anchorfile>
      <anchor>a2499b7666348c03b873ecbb439d1e07b</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>robot_controllers::PointHeadController</name>
    <filename>classrobot__controllers_1_1PointHeadController.html</filename>
    <base>robot_controllers::Controller</base>
    <member kind="function" virtualness="virtual">
      <type>virtual std::vector&lt; std::string &gt;</type>
      <name>getClaimedNames</name>
      <anchorfile>classrobot__controllers_1_1PointHeadController.html</anchorfile>
      <anchor>a32612e8dac88534a68254cc14f54f0e5</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual std::vector&lt; std::string &gt;</type>
      <name>getCommandedNames</name>
      <anchorfile>classrobot__controllers_1_1PointHeadController.html</anchorfile>
      <anchor>a78d8a3c2ce35115e6e259bb35ddaea22</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual std::string</type>
      <name>getType</name>
      <anchorfile>classrobot__controllers_1_1PointHeadController.html</anchorfile>
      <anchor>aa8486e1a5439471068bcb76ce23390ff</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual int</type>
      <name>init</name>
      <anchorfile>classrobot__controllers_1_1PointHeadController.html</anchorfile>
      <anchor>acd378486a05ac394cdc8991851f60719</anchor>
      <arglist>(ros::NodeHandle &amp;nh, ControllerManager *manager)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>PointHeadController</name>
      <anchorfile>classrobot__controllers_1_1PointHeadController.html</anchorfile>
      <anchor>ae8f8c850c0c701522c7c6d33b8105ab6</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual bool</type>
      <name>reset</name>
      <anchorfile>classrobot__controllers_1_1PointHeadController.html</anchorfile>
      <anchor>a44b4b8d9807c73c42aec798d20878d2d</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual bool</type>
      <name>start</name>
      <anchorfile>classrobot__controllers_1_1PointHeadController.html</anchorfile>
      <anchor>a1067c29d13d431c980f3d2bd7c327005</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual bool</type>
      <name>stop</name>
      <anchorfile>classrobot__controllers_1_1PointHeadController.html</anchorfile>
      <anchor>a7bf48208e3295227e67272fad2fb22ac</anchor>
      <arglist>(bool force)</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual void</type>
      <name>update</name>
      <anchorfile>classrobot__controllers_1_1PointHeadController.html</anchorfile>
      <anchor>a6877c5cfaa6c2fe0de94a2f3452b8274</anchor>
      <arglist>(const ros::Time &amp;now, const ros::Duration &amp;dt)</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual</type>
      <name>~PointHeadController</name>
      <anchorfile>classrobot__controllers_1_1PointHeadController.html</anchorfile>
      <anchor>a8e5c02b73262dbda4dddcd1e90f9e260</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="typedef" protection="private">
      <type>actionlib::SimpleActionServer&lt; control_msgs::PointHeadAction &gt;</type>
      <name>head_server_t</name>
      <anchorfile>classrobot__controllers_1_1PointHeadController.html</anchorfile>
      <anchor>af50fd17677c46715345486dd123fd606</anchor>
      <arglist></arglist>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>executeCb</name>
      <anchorfile>classrobot__controllers_1_1PointHeadController.html</anchorfile>
      <anchor>a1896576394554766391cbe75446209b5</anchor>
      <arglist>(const control_msgs::PointHeadGoalConstPtr &amp;goal)</arglist>
    </member>
    <member kind="variable" protection="private">
      <type>JointHandlePtr</type>
      <name>head_pan_</name>
      <anchorfile>classrobot__controllers_1_1PointHeadController.html</anchorfile>
      <anchor>a089d29c9ee91d94312e57be3524c571e</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>JointHandlePtr</type>
      <name>head_tilt_</name>
      <anchorfile>classrobot__controllers_1_1PointHeadController.html</anchorfile>
      <anchor>a8383b4844b8b6cbbe8088be0b8683b70</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>bool</type>
      <name>initialized_</name>
      <anchorfile>classrobot__controllers_1_1PointHeadController.html</anchorfile>
      <anchor>af63567afd084b55f1dc7d193451308f0</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>KDL::Tree</type>
      <name>kdl_tree_</name>
      <anchorfile>classrobot__controllers_1_1PointHeadController.html</anchorfile>
      <anchor>a75ec44f0176b59bd62737e70be7dab19</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>TrajectoryPoint</type>
      <name>last_sample_</name>
      <anchorfile>classrobot__controllers_1_1PointHeadController.html</anchorfile>
      <anchor>a07c899d0f1d341ec99e9d894b8b9a067</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>tf::TransformListener</type>
      <name>listener_</name>
      <anchorfile>classrobot__controllers_1_1PointHeadController.html</anchorfile>
      <anchor>a6076272da0482a95c2f909e037d7a67b</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>ControllerManager *</type>
      <name>manager_</name>
      <anchorfile>classrobot__controllers_1_1PointHeadController.html</anchorfile>
      <anchor>a28f2894024523897546a403b77f36dee</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>bool</type>
      <name>preempted_</name>
      <anchorfile>classrobot__controllers_1_1PointHeadController.html</anchorfile>
      <anchor>a3a4f782803e261e301d93af0420607fa</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>control_msgs::PointHeadResult</type>
      <name>result_</name>
      <anchorfile>classrobot__controllers_1_1PointHeadController.html</anchorfile>
      <anchor>a6d923ab77d2f0de00abf8a50d27908d5</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::string</type>
      <name>root_link_</name>
      <anchorfile>classrobot__controllers_1_1PointHeadController.html</anchorfile>
      <anchor>afc3ae8e946ac0966da81f2ed714642c2</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>boost::shared_ptr&lt; TrajectorySampler &gt;</type>
      <name>sampler_</name>
      <anchorfile>classrobot__controllers_1_1PointHeadController.html</anchorfile>
      <anchor>aa39cd476d484935149eb571b489e9168</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>boost::mutex</type>
      <name>sampler_mutex_</name>
      <anchorfile>classrobot__controllers_1_1PointHeadController.html</anchorfile>
      <anchor>ac1e1b53de60a4eb395cd4daf9f362889</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>boost::shared_ptr&lt; head_server_t &gt;</type>
      <name>server_</name>
      <anchorfile>classrobot__controllers_1_1PointHeadController.html</anchorfile>
      <anchor>a4ebe2fbdbb6669def202fb0d775fb847</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>bool</type>
      <name>stop_with_action_</name>
      <anchorfile>classrobot__controllers_1_1PointHeadController.html</anchorfile>
      <anchor>af19a1dece31096793cbb4176a07e626f</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>robot_controllers::ScaledMimicController</name>
    <filename>classrobot__controllers_1_1ScaledMimicController.html</filename>
    <base>robot_controllers::Controller</base>
    <member kind="function" virtualness="virtual">
      <type>virtual std::vector&lt; std::string &gt;</type>
      <name>getClaimedNames</name>
      <anchorfile>classrobot__controllers_1_1ScaledMimicController.html</anchorfile>
      <anchor>a31f18a9d4f72d4ad784b5ec089fc36bf</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual std::vector&lt; std::string &gt;</type>
      <name>getCommandedNames</name>
      <anchorfile>classrobot__controllers_1_1ScaledMimicController.html</anchorfile>
      <anchor>aaea7d12b4f4b11d9fd48124f5583e751</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual std::string</type>
      <name>getType</name>
      <anchorfile>classrobot__controllers_1_1ScaledMimicController.html</anchorfile>
      <anchor>a342acc3fe7e62323a08ceef60603c113</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual int</type>
      <name>init</name>
      <anchorfile>classrobot__controllers_1_1ScaledMimicController.html</anchorfile>
      <anchor>a204e7317e7893d4d756c3e0dd718fdde</anchor>
      <arglist>(ros::NodeHandle &amp;nh, ControllerManager *manager)</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual bool</type>
      <name>reset</name>
      <anchorfile>classrobot__controllers_1_1ScaledMimicController.html</anchorfile>
      <anchor>a18e950eaa3daca9b9a9ef0ed72796115</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>ScaledMimicController</name>
      <anchorfile>classrobot__controllers_1_1ScaledMimicController.html</anchorfile>
      <anchor>ab8ca760ef2f238370a0cba2d47f68feb</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual bool</type>
      <name>start</name>
      <anchorfile>classrobot__controllers_1_1ScaledMimicController.html</anchorfile>
      <anchor>a9f1a2afd6a93edcc3de74b1355a1345a</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual bool</type>
      <name>stop</name>
      <anchorfile>classrobot__controllers_1_1ScaledMimicController.html</anchorfile>
      <anchor>a6b8a6415dd7c2557db9953717d0702ff</anchor>
      <arglist>(bool force)</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual void</type>
      <name>update</name>
      <anchorfile>classrobot__controllers_1_1ScaledMimicController.html</anchorfile>
      <anchor>a3dcf429802fc1aa7a2ae1ae493ceadf1</anchor>
      <arglist>(const ros::Time &amp;now, const ros::Duration &amp;dt)</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual</type>
      <name>~ScaledMimicController</name>
      <anchorfile>classrobot__controllers_1_1ScaledMimicController.html</anchorfile>
      <anchor>a81fb3e3c6147d39596116fcc7e150fde</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="typedef" protection="private">
      <type>actionlib::SimpleActionServer&lt; control_msgs::GripperCommandAction &gt;</type>
      <name>server_t</name>
      <anchorfile>classrobot__controllers_1_1ScaledMimicController.html</anchorfile>
      <anchor>a0a3b6dc57e6858e2f94980c37e825ce3</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>bool</type>
      <name>initialized_</name>
      <anchorfile>classrobot__controllers_1_1ScaledMimicController.html</anchorfile>
      <anchor>a0cf982a1d98641f3715dcf5bfc669788</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>JointHandlePtr</type>
      <name>joint_to_control_</name>
      <anchorfile>classrobot__controllers_1_1ScaledMimicController.html</anchorfile>
      <anchor>a36d8f49ca484f4b25deadc8858ab98ce</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>JointHandlePtr</type>
      <name>joint_to_mimic_</name>
      <anchorfile>classrobot__controllers_1_1ScaledMimicController.html</anchorfile>
      <anchor>a629741a90a07e9640c0b05149e244b17</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>double</type>
      <name>scale_</name>
      <anchorfile>classrobot__controllers_1_1ScaledMimicController.html</anchorfile>
      <anchor>a0a592952b0a9288021b46a6e49537570</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>robot_controllers::Spline</name>
    <filename>structrobot__controllers_1_1Spline.html</filename>
    <member kind="variable">
      <type>double</type>
      <name>coef</name>
      <anchorfile>structrobot__controllers_1_1Spline.html</anchorfile>
      <anchor>acf8938d493c6bf2db2413c31ff92e78a</anchor>
      <arglist>[6]</arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>robot_controllers::SplineTrajectorySampler</name>
    <filename>classrobot__controllers_1_1SplineTrajectorySampler.html</filename>
    <base>robot_controllers::TrajectorySampler</base>
    <class kind="struct">robot_controllers::SplineTrajectorySampler::Segment</class>
    <member kind="function" virtualness="virtual">
      <type>virtual double</type>
      <name>end_time</name>
      <anchorfile>classrobot__controllers_1_1SplineTrajectorySampler.html</anchorfile>
      <anchor>a1f8b5e2e7d1080224b28e4c880d0e561</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual Trajectory</type>
      <name>getTrajectory</name>
      <anchorfile>classrobot__controllers_1_1SplineTrajectorySampler.html</anchorfile>
      <anchor>acdcb112b5707ff688229946291e42e4d</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual TrajectoryPoint</type>
      <name>sample</name>
      <anchorfile>classrobot__controllers_1_1SplineTrajectorySampler.html</anchorfile>
      <anchor>a5d54d9dffe4ec9facada1837f5e3b0a4</anchor>
      <arglist>(double time)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>SplineTrajectorySampler</name>
      <anchorfile>classrobot__controllers_1_1SplineTrajectorySampler.html</anchorfile>
      <anchor>a392bf1dfb18a150acc242044dee1350c</anchor>
      <arglist>(const Trajectory &amp;trajectory)</arglist>
    </member>
    <member kind="variable" protection="private">
      <type>TrajectoryPoint</type>
      <name>result</name>
      <anchorfile>classrobot__controllers_1_1SplineTrajectorySampler.html</anchorfile>
      <anchor>aeae14ff64069098b5f31436bb22e9828</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>int</type>
      <name>seg_</name>
      <anchorfile>classrobot__controllers_1_1SplineTrajectorySampler.html</anchorfile>
      <anchor>ac843729432fa8d06ad0b0b373345bb6d</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::vector&lt; Segment &gt;</type>
      <name>segments_</name>
      <anchorfile>classrobot__controllers_1_1SplineTrajectorySampler.html</anchorfile>
      <anchor>ab2c6b62105e56d07003d3429f61f7fc9</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>Trajectory</type>
      <name>trajectory_</name>
      <anchorfile>classrobot__controllers_1_1SplineTrajectorySampler.html</anchorfile>
      <anchor>a9cb44a9d1996e3e8522c9ddc16e8e67c</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>robot_controllers::SplineTrajectorySampler::Segment</name>
    <filename>structrobot__controllers_1_1SplineTrajectorySampler_1_1Segment.html</filename>
    <member kind="variable">
      <type>double</type>
      <name>end_time</name>
      <anchorfile>structrobot__controllers_1_1SplineTrajectorySampler_1_1Segment.html</anchorfile>
      <anchor>a9c286d3ffe8e636deca104904a082b75</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>std::vector&lt; Spline &gt;</type>
      <name>splines</name>
      <anchorfile>structrobot__controllers_1_1SplineTrajectorySampler_1_1Segment.html</anchorfile>
      <anchor>a1fcdedd802336a68556ce844405cc31d</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>double</type>
      <name>start_time</name>
      <anchorfile>structrobot__controllers_1_1SplineTrajectorySampler_1_1Segment.html</anchorfile>
      <anchor>a05e220cd98263b7abaec9f98fb112024</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>int</type>
      <name>type</name>
      <anchorfile>structrobot__controllers_1_1SplineTrajectorySampler_1_1Segment.html</anchorfile>
      <anchor>a9e4479a06ac526d79fcb8188f3d59ee1</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>robot_controllers::Trajectory</name>
    <filename>structrobot__controllers_1_1Trajectory.html</filename>
    <member kind="function">
      <type>size_t</type>
      <name>size</name>
      <anchorfile>structrobot__controllers_1_1Trajectory.html</anchorfile>
      <anchor>abc47a1ca50f545853dc55f217903ebaa</anchor>
      <arglist>() const </arglist>
    </member>
    <member kind="variable">
      <type>std::vector&lt; TrajectoryPoint &gt;</type>
      <name>points</name>
      <anchorfile>structrobot__controllers_1_1Trajectory.html</anchorfile>
      <anchor>a32adb7cd18673bd196c5da4832e23648</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>robot_controllers::TrajectoryPoint</name>
    <filename>structrobot__controllers_1_1TrajectoryPoint.html</filename>
    <member kind="variable">
      <type>std::vector&lt; double &gt;</type>
      <name>q</name>
      <anchorfile>structrobot__controllers_1_1TrajectoryPoint.html</anchorfile>
      <anchor>a7e8b273f85bd89e40b1195811c52d5d6</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>std::vector&lt; double &gt;</type>
      <name>qd</name>
      <anchorfile>structrobot__controllers_1_1TrajectoryPoint.html</anchorfile>
      <anchor>ae6471ff5bcaad7c3c8b116b4af12e0a0</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>std::vector&lt; double &gt;</type>
      <name>qdd</name>
      <anchorfile>structrobot__controllers_1_1TrajectoryPoint.html</anchorfile>
      <anchor>a4867a1ab07c8f575ce9cb5c42eb680c2</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>double</type>
      <name>time</name>
      <anchorfile>structrobot__controllers_1_1TrajectoryPoint.html</anchorfile>
      <anchor>ac49c31618cc7e5aa1184fe0cada2d9ec</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>robot_controllers::TrajectorySampler</name>
    <filename>classrobot__controllers_1_1TrajectorySampler.html</filename>
    <member kind="function" virtualness="pure">
      <type>virtual double</type>
      <name>end_time</name>
      <anchorfile>classrobot__controllers_1_1TrajectorySampler.html</anchorfile>
      <anchor>a9c515bab56dcaea5dec65d8fb9b2be06</anchor>
      <arglist>()=0</arglist>
    </member>
    <member kind="function" virtualness="pure">
      <type>virtual Trajectory</type>
      <name>getTrajectory</name>
      <anchorfile>classrobot__controllers_1_1TrajectorySampler.html</anchorfile>
      <anchor>a0396d9c88485a04a8f5e6dea824b1d13</anchor>
      <arglist>()=0</arglist>
    </member>
    <member kind="function" virtualness="pure">
      <type>virtual TrajectoryPoint</type>
      <name>sample</name>
      <anchorfile>classrobot__controllers_1_1TrajectorySampler.html</anchorfile>
      <anchor>a136ee85f644d0841512897ed2ede42a2</anchor>
      <arglist>(double time)=0</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>TrajectorySampler</name>
      <anchorfile>classrobot__controllers_1_1TrajectorySampler.html</anchorfile>
      <anchor>aae64afa96429e234beab054e15fb6737</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual</type>
      <name>~TrajectorySampler</name>
      <anchorfile>classrobot__controllers_1_1TrajectorySampler.html</anchorfile>
      <anchor>a2c04e6cb7c73954984a889ac9f583226</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" protection="private">
      <type>TrajectorySampler &amp;</type>
      <name>operator=</name>
      <anchorfile>classrobot__controllers_1_1TrajectorySampler.html</anchorfile>
      <anchor>ae8e582b51f982c5caba4c0f08ca35eed</anchor>
      <arglist>(const TrajectorySampler &amp;)</arglist>
    </member>
    <member kind="function" protection="private">
      <type></type>
      <name>TrajectorySampler</name>
      <anchorfile>classrobot__controllers_1_1TrajectorySampler.html</anchorfile>
      <anchor>aaa0d004c069063ff219465dceb8b0c79</anchor>
      <arglist>(const TrajectorySampler &amp;)</arglist>
    </member>
  </compound>
</tagfile>
