<?xml version='1.0' encoding='ISO-8859-1' standalone='yes' ?>
<tagfile>
  <compound kind="file">
    <name>joint_spline_trajectory_action_controller.cpp</name>
    <path>/home/rosbuild/hudson/workspace/doc-groovy-shadow_robot/doc_stacks/2014-10-06_07-33-10.674696/shadow_robot/sr_mechanism_controllers/src/</path>
    <filename>joint__spline__trajectory__action__controller_8cpp</filename>
    <includes id="joint__spline__trajectory__action__controller_8hpp" name="joint_spline_trajectory_action_controller.hpp" local="yes" imported="no">sr_mechanism_controllers/joint_spline_trajectory_action_controller.hpp</includes>
    <member kind="function" static="yes">
      <type>static void</type>
      <name>generatePowers</name>
      <anchorfile>namespaceshadowrobot.html</anchorfile>
      <anchor>a8860d4721e993ce9db455ffac99a23ed</anchor>
      <arglist>(int n, double x, double *powers)</arglist>
    </member>
    <member kind="function" static="yes">
      <type>static void</type>
      <name>getCubicSplineCoefficients</name>
      <anchorfile>namespaceshadowrobot.html</anchorfile>
      <anchor>a3f921a02f92dd34e0475218e53d56ac6</anchor>
      <arglist>(double start_pos, double start_vel, double end_pos, double end_vel, double time, std::vector&lt; double &gt; &amp;coefficients)</arglist>
    </member>
    <member kind="function" static="yes">
      <type>static void</type>
      <name>getQuinticSplineCoefficients</name>
      <anchorfile>namespaceshadowrobot.html</anchorfile>
      <anchor>a0a09e17d554e694f84501f55109d4449</anchor>
      <arglist>(double start_pos, double start_vel, double start_acc, double end_pos, double end_vel, double end_acc, double time, std::vector&lt; double &gt; &amp;coefficients)</arglist>
    </member>
    <member kind="function">
      <type>int</type>
      <name>main</name>
      <anchorfile>joint__spline__trajectory__action__controller_8cpp.html</anchorfile>
      <anchor>a3c04138a5bfe5d72780bb7e82a18e627</anchor>
      <arglist>(int argc, char **argv)</arglist>
    </member>
    <member kind="function" static="yes">
      <type>static void</type>
      <name>sampleQuinticSpline</name>
      <anchorfile>namespaceshadowrobot.html</anchorfile>
      <anchor>ad59d64e55a1fe1d4d8d50359b1980586</anchor>
      <arglist>(const std::vector&lt; double &gt; &amp;coefficients, double time, double &amp;position, double &amp;velocity, double &amp;acceleration)</arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>joint_spline_trajectory_action_controller.hpp</name>
    <path>/home/rosbuild/hudson/workspace/doc-groovy-shadow_robot/doc_stacks/2014-10-06_07-33-10.674696/shadow_robot/sr_mechanism_controllers/include/sr_mechanism_controllers/</path>
    <filename>joint__spline__trajectory__action__controller_8hpp</filename>
    <class kind="class">shadowrobot::JointTrajectoryActionController</class>
    <class kind="struct">shadowrobot::JointTrajectoryActionController::Segment</class>
    <class kind="struct">shadowrobot::JointTrajectoryActionController::Spline</class>
  </compound>
  <compound kind="file">
    <name>joint_trajectory_action_controller.cpp</name>
    <path>/home/rosbuild/hudson/workspace/doc-groovy-shadow_robot/doc_stacks/2014-10-06_07-33-10.674696/shadow_robot/sr_mechanism_controllers/src/</path>
    <filename>joint__trajectory__action__controller_8cpp</filename>
    <includes id="joint__trajectory__action__controller_8hpp" name="joint_trajectory_action_controller.hpp" local="yes" imported="no">sr_mechanism_controllers/joint_trajectory_action_controller.hpp</includes>
    <member kind="function">
      <type>int</type>
      <name>main</name>
      <anchorfile>joint__trajectory__action__controller_8cpp.html</anchorfile>
      <anchor>a3c04138a5bfe5d72780bb7e82a18e627</anchor>
      <arglist>(int argc, char **argv)</arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>joint_trajectory_action_controller.hpp</name>
    <path>/home/rosbuild/hudson/workspace/doc-groovy-shadow_robot/doc_stacks/2014-10-06_07-33-10.674696/shadow_robot/sr_mechanism_controllers/include/sr_mechanism_controllers/</path>
    <filename>joint__trajectory__action__controller_8hpp</filename>
    <class kind="class">shadowrobot::JointTrajectoryActionController</class>
  </compound>
  <compound kind="file">
    <name>simple_spline_trajectory.cpp</name>
    <path>/home/rosbuild/hudson/workspace/doc-groovy-shadow_robot/doc_stacks/2014-10-06_07-33-10.674696/shadow_robot/sr_mechanism_controllers/example/</path>
    <filename>simple__spline__trajectory_8cpp</filename>
    <class kind="class">ShadowTrajectory</class>
    <member kind="typedef">
      <type>actionlib::SimpleActionClient&lt; control_msgs::FollowJointTrajectoryAction &gt;</type>
      <name>TrajClient</name>
      <anchorfile>simple__spline__trajectory_8cpp.html</anchorfile>
      <anchor>a5f5159de96893b45e6230a752e6713a9</anchor>
      <arglist></arglist>
    </member>
    <member kind="function">
      <type>int</type>
      <name>main</name>
      <anchorfile>simple__spline__trajectory_8cpp.html</anchorfile>
      <anchor>a3c04138a5bfe5d72780bb7e82a18e627</anchor>
      <arglist>(int argc, char **argv)</arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>simple_trajectory.cpp</name>
    <path>/home/rosbuild/hudson/workspace/doc-groovy-shadow_robot/doc_stacks/2014-10-06_07-33-10.674696/shadow_robot/sr_mechanism_controllers/example/</path>
    <filename>simple__trajectory_8cpp</filename>
    <class kind="class">ShadowTrajectory</class>
    <member kind="typedef">
      <type>actionlib::SimpleActionClient&lt; control_msgs::FollowJointTrajectoryAction &gt;</type>
      <name>TrajClient</name>
      <anchorfile>simple__trajectory_8cpp.html</anchorfile>
      <anchor>a5f5159de96893b45e6230a752e6713a9</anchor>
      <arglist></arglist>
    </member>
    <member kind="function">
      <type>int</type>
      <name>main</name>
      <anchorfile>simple__trajectory_8cpp.html</anchorfile>
      <anchor>a3c04138a5bfe5d72780bb7e82a18e627</anchor>
      <arglist>(int argc, char **argv)</arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>simple_trajectory_compare.cpp</name>
    <path>/home/rosbuild/hudson/workspace/doc-groovy-shadow_robot/doc_stacks/2014-10-06_07-33-10.674696/shadow_robot/sr_mechanism_controllers/example/</path>
    <filename>simple__trajectory__compare_8cpp</filename>
    <class kind="class">ShadowTrajectory</class>
    <member kind="typedef">
      <type>actionlib::SimpleActionClient&lt; control_msgs::FollowJointTrajectoryAction &gt;</type>
      <name>TrajClient</name>
      <anchorfile>simple__trajectory__compare_8cpp.html</anchorfile>
      <anchor>a5f5159de96893b45e6230a752e6713a9</anchor>
      <arglist></arglist>
    </member>
    <member kind="function">
      <type>int</type>
      <name>main</name>
      <anchorfile>simple__trajectory__compare_8cpp.html</anchorfile>
      <anchor>a3c04138a5bfe5d72780bb7e82a18e627</anchor>
      <arglist>(int argc, char **argv)</arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>sr_controller.cpp</name>
    <path>/home/rosbuild/hudson/workspace/doc-groovy-shadow_robot/doc_stacks/2014-10-06_07-33-10.674696/shadow_robot/sr_mechanism_controllers/src/</path>
    <filename>sr__controller_8cpp</filename>
    <includes id="sr__controller_8hpp" name="sr_controller.hpp" local="yes" imported="no">sr_mechanism_controllers/sr_controller.hpp</includes>
  </compound>
  <compound kind="file">
    <name>sr_controller.hpp</name>
    <path>/home/rosbuild/hudson/workspace/doc-groovy-shadow_robot/doc_stacks/2014-10-06_07-33-10.674696/shadow_robot/sr_mechanism_controllers/include/sr_mechanism_controllers/</path>
    <filename>sr__controller_8hpp</filename>
    <includes id="sr__friction__compensation_8hpp" name="sr_friction_compensation.hpp" local="no" imported="no">sr_mechanism_controllers/sr_friction_compensation.hpp</includes>
    <class kind="class">controller::SrController</class>
  </compound>
  <compound kind="file">
    <name>sr_friction_compensation.cpp</name>
    <path>/home/rosbuild/hudson/workspace/doc-groovy-shadow_robot/doc_stacks/2014-10-06_07-33-10.674696/shadow_robot/sr_mechanism_controllers/src/</path>
    <filename>sr__friction__compensation_8cpp</filename>
    <includes id="sr__friction__compensation_8hpp" name="sr_friction_compensation.hpp" local="yes" imported="no">sr_mechanism_controllers/sr_friction_compensation.hpp</includes>
    <namespace>sr_friction_compensation</namespace>
  </compound>
  <compound kind="file">
    <name>sr_friction_compensation.hpp</name>
    <path>/home/rosbuild/hudson/workspace/doc-groovy-shadow_robot/doc_stacks/2014-10-06_07-33-10.674696/shadow_robot/sr_mechanism_controllers/include/sr_mechanism_controllers/</path>
    <filename>sr__friction__compensation_8hpp</filename>
    <class kind="class">sr_friction_compensation::SrFrictionCompensator</class>
    <namespace>sr_friction_compensation</namespace>
  </compound>
  <compound kind="file">
    <name>srh_example_controller.cpp</name>
    <path>/home/rosbuild/hudson/workspace/doc-groovy-shadow_robot/doc_stacks/2014-10-06_07-33-10.674696/shadow_robot/sr_mechanism_controllers/example/</path>
    <filename>srh__example__controller_8cpp</filename>
    <includes id="srh__example__controller_8hpp" name="srh_example_controller.hpp" local="yes" imported="no">../example/srh_example_controller.hpp</includes>
  </compound>
  <compound kind="file">
    <name>srh_example_controller.hpp</name>
    <path>/home/rosbuild/hudson/workspace/doc-groovy-shadow_robot/doc_stacks/2014-10-06_07-33-10.674696/shadow_robot/sr_mechanism_controllers/example/</path>
    <filename>srh__example__controller_8hpp</filename>
    <includes id="sr__controller_8hpp" name="sr_controller.hpp" local="no" imported="no">sr_mechanism_controllers/sr_controller.hpp</includes>
    <class kind="class">controller::SrhExampleController</class>
  </compound>
  <compound kind="file">
    <name>srh_fake_joint_calibration_controller.cpp</name>
    <path>/home/rosbuild/hudson/workspace/doc-groovy-shadow_robot/doc_stacks/2014-10-06_07-33-10.674696/shadow_robot/sr_mechanism_controllers/src/</path>
    <filename>srh__fake__joint__calibration__controller_8cpp</filename>
    <includes id="srh__fake__joint__calibration__controller_8h" name="srh_fake_joint_calibration_controller.h" local="yes" imported="no">sr_mechanism_controllers/srh_fake_joint_calibration_controller.h</includes>
  </compound>
  <compound kind="file">
    <name>srh_fake_joint_calibration_controller.h</name>
    <path>/home/rosbuild/hudson/workspace/doc-groovy-shadow_robot/doc_stacks/2014-10-06_07-33-10.674696/shadow_robot/sr_mechanism_controllers/include/sr_mechanism_controllers/</path>
    <filename>srh__fake__joint__calibration__controller_8h</filename>
    <class kind="class">controller::SrhFakeJointCalibrationController</class>
  </compound>
  <compound kind="file">
    <name>srh_joint_effort_controller.cpp</name>
    <path>/home/rosbuild/hudson/workspace/doc-groovy-shadow_robot/doc_stacks/2014-10-06_07-33-10.674696/shadow_robot/sr_mechanism_controllers/src/</path>
    <filename>srh__joint__effort__controller_8cpp</filename>
    <includes id="srh__joint__effort__controller_8hpp" name="srh_joint_effort_controller.hpp" local="yes" imported="no">sr_mechanism_controllers/srh_joint_effort_controller.hpp</includes>
  </compound>
  <compound kind="file">
    <name>srh_joint_effort_controller.hpp</name>
    <path>/home/rosbuild/hudson/workspace/doc-groovy-shadow_robot/doc_stacks/2014-10-06_07-33-10.674696/shadow_robot/sr_mechanism_controllers/include/sr_mechanism_controllers/</path>
    <filename>srh__joint__effort__controller_8hpp</filename>
    <includes id="sr__controller_8hpp" name="sr_controller.hpp" local="no" imported="no">sr_mechanism_controllers/sr_controller.hpp</includes>
    <class kind="class">controller::SrhEffortJointController</class>
  </compound>
  <compound kind="file">
    <name>srh_joint_muscle_valve_controller.cpp</name>
    <path>/home/rosbuild/hudson/workspace/doc-groovy-shadow_robot/doc_stacks/2014-10-06_07-33-10.674696/shadow_robot/sr_mechanism_controllers/src/</path>
    <filename>srh__joint__muscle__valve__controller_8cpp</filename>
    <includes id="srh__joint__muscle__valve__controller_8hpp" name="srh_joint_muscle_valve_controller.hpp" local="yes" imported="no">sr_mechanism_controllers/srh_joint_muscle_valve_controller.hpp</includes>
  </compound>
  <compound kind="file">
    <name>srh_joint_muscle_valve_controller.hpp</name>
    <path>/home/rosbuild/hudson/workspace/doc-groovy-shadow_robot/doc_stacks/2014-10-06_07-33-10.674696/shadow_robot/sr_mechanism_controllers/include/sr_mechanism_controllers/</path>
    <filename>srh__joint__muscle__valve__controller_8hpp</filename>
    <includes id="sr__controller_8hpp" name="sr_controller.hpp" local="no" imported="no">sr_mechanism_controllers/sr_controller.hpp</includes>
    <class kind="class">controller::SrhJointMuscleValveController</class>
  </compound>
  <compound kind="file">
    <name>srh_joint_position_controller.cpp</name>
    <path>/home/rosbuild/hudson/workspace/doc-groovy-shadow_robot/doc_stacks/2014-10-06_07-33-10.674696/shadow_robot/sr_mechanism_controllers/src/</path>
    <filename>srh__joint__position__controller_8cpp</filename>
    <includes id="srh__joint__position__controller_8hpp" name="srh_joint_position_controller.hpp" local="yes" imported="no">sr_mechanism_controllers/srh_joint_position_controller.hpp</includes>
  </compound>
  <compound kind="file">
    <name>srh_joint_position_controller.hpp</name>
    <path>/home/rosbuild/hudson/workspace/doc-groovy-shadow_robot/doc_stacks/2014-10-06_07-33-10.674696/shadow_robot/sr_mechanism_controllers/include/sr_mechanism_controllers/</path>
    <filename>srh__joint__position__controller_8hpp</filename>
    <includes id="sr__controller_8hpp" name="sr_controller.hpp" local="no" imported="no">sr_mechanism_controllers/sr_controller.hpp</includes>
    <class kind="class">controller::SrhJointPositionController</class>
  </compound>
  <compound kind="file">
    <name>srh_joint_velocity_controller.cpp</name>
    <path>/home/rosbuild/hudson/workspace/doc-groovy-shadow_robot/doc_stacks/2014-10-06_07-33-10.674696/shadow_robot/sr_mechanism_controllers/src/</path>
    <filename>srh__joint__velocity__controller_8cpp</filename>
    <includes id="srh__joint__velocity__controller_8hpp" name="srh_joint_velocity_controller.hpp" local="yes" imported="no">sr_mechanism_controllers/srh_joint_velocity_controller.hpp</includes>
  </compound>
  <compound kind="file">
    <name>srh_joint_velocity_controller.hpp</name>
    <path>/home/rosbuild/hudson/workspace/doc-groovy-shadow_robot/doc_stacks/2014-10-06_07-33-10.674696/shadow_robot/sr_mechanism_controllers/include/sr_mechanism_controllers/</path>
    <filename>srh__joint__velocity__controller_8hpp</filename>
    <includes id="sr__controller_8hpp" name="sr_controller.hpp" local="no" imported="no">sr_mechanism_controllers/sr_controller.hpp</includes>
    <includes id="sr__friction__compensation_8hpp" name="sr_friction_compensation.hpp" local="no" imported="no">sr_mechanism_controllers/sr_friction_compensation.hpp</includes>
    <class kind="class">controller::SrhJointVelocityController</class>
  </compound>
  <compound kind="file">
    <name>srh_mixed_position_velocity_controller.cpp</name>
    <path>/home/rosbuild/hudson/workspace/doc-groovy-shadow_robot/doc_stacks/2014-10-06_07-33-10.674696/shadow_robot/sr_mechanism_controllers/src/</path>
    <filename>srh__mixed__position__velocity__controller_8cpp</filename>
    <includes id="srh__mixed__position__velocity__controller_8hpp" name="srh_mixed_position_velocity_controller.hpp" local="yes" imported="no">sr_mechanism_controllers/srh_mixed_position_velocity_controller.hpp</includes>
  </compound>
  <compound kind="file">
    <name>srh_mixed_position_velocity_controller.hpp</name>
    <path>/home/rosbuild/hudson/workspace/doc-groovy-shadow_robot/doc_stacks/2014-10-06_07-33-10.674696/shadow_robot/sr_mechanism_controllers/include/sr_mechanism_controllers/</path>
    <filename>srh__mixed__position__velocity__controller_8hpp</filename>
    <includes id="sr__controller_8hpp" name="sr_controller.hpp" local="no" imported="no">sr_mechanism_controllers/sr_controller.hpp</includes>
    <class kind="class">controller::SrhMixedPositionVelocityJointController</class>
  </compound>
  <compound kind="file">
    <name>srh_muscle_joint_position_controller.cpp</name>
    <path>/home/rosbuild/hudson/workspace/doc-groovy-shadow_robot/doc_stacks/2014-10-06_07-33-10.674696/shadow_robot/sr_mechanism_controllers/src/</path>
    <filename>srh__muscle__joint__position__controller_8cpp</filename>
    <includes id="srh__muscle__joint__position__controller_8hpp" name="srh_muscle_joint_position_controller.hpp" local="yes" imported="no">sr_mechanism_controllers/srh_muscle_joint_position_controller.hpp</includes>
  </compound>
  <compound kind="file">
    <name>srh_muscle_joint_position_controller.hpp</name>
    <path>/home/rosbuild/hudson/workspace/doc-groovy-shadow_robot/doc_stacks/2014-10-06_07-33-10.674696/shadow_robot/sr_mechanism_controllers/include/sr_mechanism_controllers/</path>
    <filename>srh__muscle__joint__position__controller_8hpp</filename>
    <includes id="sr__controller_8hpp" name="sr_controller.hpp" local="no" imported="no">sr_mechanism_controllers/sr_controller.hpp</includes>
    <class kind="class">controller::SrhMuscleJointPositionController</class>
  </compound>
  <compound kind="file">
    <name>srh_syntouch_controllers.cpp</name>
    <path>/home/rosbuild/hudson/workspace/doc-groovy-shadow_robot/doc_stacks/2014-10-06_07-33-10.674696/shadow_robot/sr_mechanism_controllers/example/</path>
    <filename>srh__syntouch__controllers_8cpp</filename>
    <includes id="srh__syntouch__controllers_8hpp" name="srh_syntouch_controllers.hpp" local="yes" imported="no">../example/srh_syntouch_controllers.hpp</includes>
  </compound>
  <compound kind="file">
    <name>srh_syntouch_controllers.hpp</name>
    <path>/home/rosbuild/hudson/workspace/doc-groovy-shadow_robot/doc_stacks/2014-10-06_07-33-10.674696/shadow_robot/sr_mechanism_controllers/example/</path>
    <filename>srh__syntouch__controllers_8hpp</filename>
    <includes id="sr__controller_8hpp" name="sr_controller.hpp" local="no" imported="no">sr_mechanism_controllers/sr_controller.hpp</includes>
    <class kind="class">controller::SrhSyntouchController</class>
  </compound>
  <compound kind="file">
    <name>test_controllers.cpp</name>
    <path>/home/rosbuild/hudson/workspace/doc-groovy-shadow_robot/doc_stacks/2014-10-06_07-33-10.674696/shadow_robot/sr_mechanism_controllers/test/</path>
    <filename>test__controllers_8cpp</filename>
    <includes id="test__controllers_8hpp" name="test_controllers.hpp" local="yes" imported="no">sr_mechanism_controllers/test/test_controllers.hpp</includes>
  </compound>
  <compound kind="file">
    <name>test_controllers.hpp</name>
    <path>/home/rosbuild/hudson/workspace/doc-groovy-shadow_robot/doc_stacks/2014-10-06_07-33-10.674696/shadow_robot/sr_mechanism_controllers/include/sr_mechanism_controllers/test/</path>
    <filename>test__controllers_8hpp</filename>
    <includes id="sr__controller_8hpp" name="sr_controller.hpp" local="yes" imported="no">sr_mechanism_controllers/sr_controller.hpp</includes>
    <class kind="class">TestControllers</class>
  </compound>
  <compound kind="file">
    <name>test_joint_position_controller.cpp</name>
    <path>/home/rosbuild/hudson/workspace/doc-groovy-shadow_robot/doc_stacks/2014-10-06_07-33-10.674696/shadow_robot/sr_mechanism_controllers/test/</path>
    <filename>test__joint__position__controller_8cpp</filename>
    <includes id="test__controllers_8hpp" name="test_controllers.hpp" local="yes" imported="no">sr_mechanism_controllers/test/test_controllers.hpp</includes>
    <includes id="srh__joint__position__controller_8hpp" name="srh_joint_position_controller.hpp" local="yes" imported="no">sr_mechanism_controllers/srh_joint_position_controller.hpp</includes>
    <class kind="class">TestJointPositionController</class>
    <member kind="function">
      <type>int</type>
      <name>main</name>
      <anchorfile>test__joint__position__controller_8cpp.html</anchorfile>
      <anchor>a3c04138a5bfe5d72780bb7e82a18e627</anchor>
      <arglist>(int argc, char **argv)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>TEST</name>
      <anchorfile>test__joint__position__controller_8cpp.html</anchorfile>
      <anchor>afae1a499ee57bf408950fb15de76aaba</anchor>
      <arglist>(SrhJointPositionController, TestPID)</arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>ShadowTrajectory</name>
    <filename>classShadowTrajectory.html</filename>
    <member kind="function">
      <type>control_msgs::FollowJointTrajectoryGoal</type>
      <name>arm_movement</name>
      <anchorfile>classShadowTrajectory.html</anchorfile>
      <anchor>a5dc589cdc1c4ed3087b63d4c1751d435</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>control_msgs::FollowJointTrajectoryGoal</type>
      <name>arm_movement</name>
      <anchorfile>classShadowTrajectory.html</anchorfile>
      <anchor>a5dc589cdc1c4ed3087b63d4c1751d435</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>control_msgs::FollowJointTrajectoryGoal</type>
      <name>armWaveTrajectory</name>
      <anchorfile>classShadowTrajectory.html</anchorfile>
      <anchor>a473fb64e466db9ce27e1cba480fe8dc6</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>control_msgs::FollowJointTrajectoryGoal</type>
      <name>fingerWiggleTrajectory</name>
      <anchorfile>classShadowTrajectory.html</anchorfile>
      <anchor>a28a8571b3dcb8e8e5dc5142830e94678</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>actionlib::SimpleClientGoalState</type>
      <name>getState</name>
      <anchorfile>classShadowTrajectory.html</anchorfile>
      <anchor>a0073d18b621ebe2652a5627e8372cdfc</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>actionlib::SimpleClientGoalState</type>
      <name>getState</name>
      <anchorfile>classShadowTrajectory.html</anchorfile>
      <anchor>a0073d18b621ebe2652a5627e8372cdfc</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>actionlib::SimpleClientGoalState</type>
      <name>getState</name>
      <anchorfile>classShadowTrajectory.html</anchorfile>
      <anchor>a0073d18b621ebe2652a5627e8372cdfc</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>ShadowTrajectory</name>
      <anchorfile>classShadowTrajectory.html</anchorfile>
      <anchor>ae4228b757a8d0cdd0ed6ccc779ecbd0e</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>ShadowTrajectory</name>
      <anchorfile>classShadowTrajectory.html</anchorfile>
      <anchor>ae4228b757a8d0cdd0ed6ccc779ecbd0e</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>ShadowTrajectory</name>
      <anchorfile>classShadowTrajectory.html</anchorfile>
      <anchor>ae4228b757a8d0cdd0ed6ccc779ecbd0e</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>startTrajectory</name>
      <anchorfile>classShadowTrajectory.html</anchorfile>
      <anchor>ae70945d46587604a979caa45e8ac5d1f</anchor>
      <arglist>(control_msgs::FollowJointTrajectoryGoal goal)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>startTrajectory</name>
      <anchorfile>classShadowTrajectory.html</anchorfile>
      <anchor>ae70945d46587604a979caa45e8ac5d1f</anchor>
      <arglist>(control_msgs::FollowJointTrajectoryGoal goal)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>startTrajectory</name>
      <anchorfile>classShadowTrajectory.html</anchorfile>
      <anchor>ae70945d46587604a979caa45e8ac5d1f</anchor>
      <arglist>(control_msgs::FollowJointTrajectoryGoal goal)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>waitTrajectory</name>
      <anchorfile>classShadowTrajectory.html</anchorfile>
      <anchor>a02faf10bb59457fd3689864da325cf44</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>waitTrajectory</name>
      <anchorfile>classShadowTrajectory.html</anchorfile>
      <anchor>a02faf10bb59457fd3689864da325cf44</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>waitTrajectory</name>
      <anchorfile>classShadowTrajectory.html</anchorfile>
      <anchor>a02faf10bb59457fd3689864da325cf44</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>~ShadowTrajectory</name>
      <anchorfile>classShadowTrajectory.html</anchorfile>
      <anchor>a34a42a176d5614ee4053220f3a69d214</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>~ShadowTrajectory</name>
      <anchorfile>classShadowTrajectory.html</anchorfile>
      <anchor>a34a42a176d5614ee4053220f3a69d214</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>~ShadowTrajectory</name>
      <anchorfile>classShadowTrajectory.html</anchorfile>
      <anchor>a34a42a176d5614ee4053220f3a69d214</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="variable" protection="private">
      <type>TrajClient *</type>
      <name>traj_client_</name>
      <anchorfile>classShadowTrajectory.html</anchorfile>
      <anchor>abaee3cda522c799326a851e3ab1cb010</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>TestControllers</name>
    <filename>classTestControllers.html</filename>
    <member kind="function" virtualness="pure">
      <type>virtual double</type>
      <name>compute_output</name>
      <anchorfile>classTestControllers.html</anchorfile>
      <anchor>a6654d096ab5cfeb912d3b5ab3e1c919e</anchor>
      <arglist>(double input, double current_position)=0</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>init</name>
      <anchorfile>classTestControllers.html</anchorfile>
      <anchor>af7b21c5d1d6c762a01204a2a67a0af76</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" virtualness="pure">
      <type>virtual void</type>
      <name>init_controller</name>
      <anchorfile>classTestControllers.html</anchorfile>
      <anchor>a0cac117fe822c5121472cd77cef5b8bc</anchor>
      <arglist>()=0</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>TestControllers</name>
      <anchorfile>classTestControllers.html</anchorfile>
      <anchor>afe2fb2405b8b92e6d103ba1a2307a12a</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>~TestControllers</name>
      <anchorfile>classTestControllers.html</anchorfile>
      <anchor>a3e623fdca242db6b14c535ea4364063c</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="variable">
      <type>boost::shared_ptr&lt; sr_actuator::SrActuator &gt;</type>
      <name>actuator</name>
      <anchorfile>classTestControllers.html</anchorfile>
      <anchor>acefc780311d8b1644c4ad40d054cf51d</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>boost::shared_ptr&lt; controller::SrController &gt;</type>
      <name>controller</name>
      <anchorfile>classTestControllers.html</anchorfile>
      <anchor>a0a06550ae62f420c8b8474b9daf13735</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>boost::shared_ptr&lt; pr2_hardware_interface::HardwareInterface &gt;</type>
      <name>hw</name>
      <anchorfile>classTestControllers.html</anchorfile>
      <anchor>ad093129581c8ed86a237d50439782484</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>pr2_mechanism_model::JointState *</type>
      <name>joint_state</name>
      <anchorfile>classTestControllers.html</anchorfile>
      <anchor>a1dff2a007c2e98efb80c434528d551b3</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>boost::shared_ptr&lt; TiXmlDocument &gt;</type>
      <name>model</name>
      <anchorfile>classTestControllers.html</anchorfile>
      <anchor>a3d4e7df4f81b0f7e8e73f16db9ba25df</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>boost::shared_ptr&lt; pr2_mechanism_model::Robot &gt;</type>
      <name>robot</name>
      <anchorfile>classTestControllers.html</anchorfile>
      <anchor>a8fd4ac5ef21e06540104378b2f28c514</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>boost::shared_ptr&lt; pr2_mechanism_model::RobotState &gt;</type>
      <name>robot_state</name>
      <anchorfile>classTestControllers.html</anchorfile>
      <anchor>a1ae22e9d5b33f973f1301ff7b1f08b9f</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>TestJointPositionController</name>
    <filename>classTestJointPositionController.html</filename>
    <base>TestControllers</base>
    <member kind="function">
      <type>double</type>
      <name>compute_output</name>
      <anchorfile>classTestJointPositionController.html</anchorfile>
      <anchor>aba943b6be63894e15e200ad6dc9b78da</anchor>
      <arglist>(double input, double current_position)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>init_controller</name>
      <anchorfile>classTestJointPositionController.html</anchorfile>
      <anchor>a16258e4d25dcc4feb7b05fe5d9046fde</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>TestJointPositionController</name>
      <anchorfile>classTestJointPositionController.html</anchorfile>
      <anchor>a941fcbcb33c9b15f3a0b771ab3bc507e</anchor>
      <arglist>(boost::shared_ptr&lt; control_toolbox::Pid &gt; pid)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>~TestJointPositionController</name>
      <anchorfile>classTestJointPositionController.html</anchorfile>
      <anchor>a357a89af54e38e90952fd3e927cf3674</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="variable">
      <type>boost::shared_ptr&lt; control_toolbox::Pid &gt;</type>
      <name>pid</name>
      <anchorfile>classTestJointPositionController.html</anchorfile>
      <anchor>aaa487e44d4bd239a4b54e6006abc7780</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>controller::SrController</name>
    <filename>classcontroller_1_1SrController.html</filename>
    <base>pr2_controller_interface::Controller</base>
    <member kind="function">
      <type>void</type>
      <name>getCommand</name>
      <anchorfile>classcontroller_1_1SrController.html</anchorfile>
      <anchor>af8125e50b05ac2d77af046c66ce64c4f</anchor>
      <arglist>(double &amp;cmd)</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual void</type>
      <name>getGains</name>
      <anchorfile>classcontroller_1_1SrController.html</anchorfile>
      <anchor>a9e88cf35bd2f428c396806a8762337c0</anchor>
      <arglist>(double &amp;p, double &amp;i, double &amp;d, double &amp;i_max, double &amp;i_min)</arglist>
    </member>
    <member kind="function">
      <type>std::string</type>
      <name>getJointName</name>
      <anchorfile>classcontroller_1_1SrController.html</anchorfile>
      <anchor>a249f589d30c7c8e3ed6dad9aa7ae7738</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual bool</type>
      <name>init</name>
      <anchorfile>classcontroller_1_1SrController.html</anchorfile>
      <anchor>a40ab1884b5d528c07396c46cae8394e0</anchor>
      <arglist>(pr2_mechanism_model::RobotState *robot, ros::NodeHandle &amp;n)</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual bool</type>
      <name>resetGains</name>
      <anchorfile>classcontroller_1_1SrController.html</anchorfile>
      <anchor>a3dac752ea00a3c17b468acc89b53cb09</anchor>
      <arglist>(std_srvs::Empty::Request &amp;req, std_srvs::Empty::Response &amp;resp)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>setCommand</name>
      <anchorfile>classcontroller_1_1SrController.html</anchorfile>
      <anchor>aa7595a958545def11faa84dc4aaf091a</anchor>
      <arglist>(double cmd)</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual void</type>
      <name>setCommandCB</name>
      <anchorfile>classcontroller_1_1SrController.html</anchorfile>
      <anchor>a3555b447185179a48d08d18a27510638</anchor>
      <arglist>(const std_msgs::Float64ConstPtr &amp;msg)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>SrController</name>
      <anchorfile>classcontroller_1_1SrController.html</anchorfile>
      <anchor>a90938f4c037b2d39b775c39388d17de2</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual void</type>
      <name>starting</name>
      <anchorfile>classcontroller_1_1SrController.html</anchorfile>
      <anchor>ab086eca5df84b313583c1c64df9e24ae</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual void</type>
      <name>update</name>
      <anchorfile>classcontroller_1_1SrController.html</anchorfile>
      <anchor>aa0f2d79e9d26d552fa976260917c7ab2</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual</type>
      <name>~SrController</name>
      <anchorfile>classcontroller_1_1SrController.html</anchorfile>
      <anchor>a479b7df83d1334eefae74441a722ce94</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="variable">
      <type>double</type>
      <name>command_</name>
      <anchorfile>classcontroller_1_1SrController.html</anchorfile>
      <anchor>af4ae4f916140f7794eb6b4ab8523403c</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>ros::Duration</type>
      <name>dt_</name>
      <anchorfile>classcontroller_1_1SrController.html</anchorfile>
      <anchor>a8aae8eeb7f679eeb6e5717c3434717a4</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>bool</type>
      <name>has_j2</name>
      <anchorfile>classcontroller_1_1SrController.html</anchorfile>
      <anchor>a930d2aecfca97630c5b39abb05f082f2</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>pr2_mechanism_model::JointState *</type>
      <name>joint_state_</name>
      <anchorfile>classcontroller_1_1SrController.html</anchorfile>
      <anchor>a64c10bbfa5d90bb7c0461bb994641039</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>pr2_mechanism_model::JointState *</type>
      <name>joint_state_2</name>
      <anchorfile>classcontroller_1_1SrController.html</anchorfile>
      <anchor>afa98c1eb1a30a35308fc3a000ea669ce</anchor>
      <arglist></arglist>
    </member>
    <member kind="function" protection="protected">
      <type>void</type>
      <name>after_init</name>
      <anchorfile>classcontroller_1_1SrController.html</anchorfile>
      <anchor>a3710285dceceb5b904ec65e3eb94c80d</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" protection="protected">
      <type>double</type>
      <name>clamp_command</name>
      <anchorfile>classcontroller_1_1SrController.html</anchorfile>
      <anchor>a0e187fbc99346fbe5741181a89f61e36</anchor>
      <arglist>(double cmd)</arglist>
    </member>
    <member kind="function" protection="protected">
      <type>void</type>
      <name>get_min_max</name>
      <anchorfile>classcontroller_1_1SrController.html</anchorfile>
      <anchor>a73d422dcdbf493987fcc29e8a2f2b869</anchor>
      <arglist>(urdf::Model model, std::string joint_name)</arglist>
    </member>
    <member kind="function" protection="protected">
      <type>void</type>
      <name>maxForceFactorCB</name>
      <anchorfile>classcontroller_1_1SrController.html</anchorfile>
      <anchor>a0b3d7defa9811f13b0214fb0382bac62</anchor>
      <arglist>(const std_msgs::Float64ConstPtr &amp;msg)</arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>boost::scoped_ptr&lt; realtime_tools::RealtimePublisher&lt; pr2_controllers_msgs::JointControllerState &gt; &gt;</type>
      <name>controller_state_publisher_</name>
      <anchorfile>classcontroller_1_1SrController.html</anchorfile>
      <anchor>a3196ff85b480de4c987ba750b4d91a9f</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>boost::shared_ptr&lt; sr_friction_compensation::SrFrictionCompensator &gt;</type>
      <name>friction_compensator</name>
      <anchorfile>classcontroller_1_1SrController.html</anchorfile>
      <anchor>a20ef246273fc6ae9d255ef75ccca2fcb</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>int</type>
      <name>friction_deadband</name>
      <anchorfile>classcontroller_1_1SrController.html</anchorfile>
      <anchor>ae102155063f1cf262ad6b9ee7152c0d6</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>sr_deadband::HysteresisDeadband&lt; double &gt;</type>
      <name>hysteresis_deadband</name>
      <anchorfile>classcontroller_1_1SrController.html</anchorfile>
      <anchor>a4969f21bb4a89104bf8d68e3eb81ff3e</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>bool</type>
      <name>initialized_</name>
      <anchorfile>classcontroller_1_1SrController.html</anchorfile>
      <anchor>a6101758fd5b339bab4783d2bbb06903e</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>ros::Time</type>
      <name>last_time_</name>
      <anchorfile>classcontroller_1_1SrController.html</anchorfile>
      <anchor>a370632c90732e1032a37a4c5bd693a51</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>int</type>
      <name>loop_count_</name>
      <anchorfile>classcontroller_1_1SrController.html</anchorfile>
      <anchor>a3fd11fa88c2c23830d3e835c0ea45277</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>double</type>
      <name>max_</name>
      <anchorfile>classcontroller_1_1SrController.html</anchorfile>
      <anchor>a82e680802529e485bb1ac3961234aacd</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>double</type>
      <name>max_force_demand</name>
      <anchorfile>classcontroller_1_1SrController.html</anchorfile>
      <anchor>a370372b4464528c72bfa1bb928cf388a</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>double</type>
      <name>max_force_factor_</name>
      <anchorfile>classcontroller_1_1SrController.html</anchorfile>
      <anchor>aecdd75eda1503727f7e693c31c9f5be8</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>double</type>
      <name>min_</name>
      <anchorfile>classcontroller_1_1SrController.html</anchorfile>
      <anchor>ac8c446903cfaf2fdcdf3b9c3e53eeb64</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>ros::NodeHandle</type>
      <name>n_tilde_</name>
      <anchorfile>classcontroller_1_1SrController.html</anchorfile>
      <anchor>a3424c1603a94de2912e4cb32c2646fab</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>ros::NodeHandle</type>
      <name>node_</name>
      <anchorfile>classcontroller_1_1SrController.html</anchorfile>
      <anchor>a6df308e3693915083fc35d50b0b8d6c2</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>pr2_mechanism_model::RobotState *</type>
      <name>robot_</name>
      <anchorfile>classcontroller_1_1SrController.html</anchorfile>
      <anchor>ad1143a7b7515eb76d8bd7d6c61c84e54</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>ros::ServiceServer</type>
      <name>serve_reset_gains_</name>
      <anchorfile>classcontroller_1_1SrController.html</anchorfile>
      <anchor>abc16b1d608b32fd6dd3004261977b65f</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>ros::ServiceServer</type>
      <name>serve_set_gains_</name>
      <anchorfile>classcontroller_1_1SrController.html</anchorfile>
      <anchor>a825b9774a826b0592e490963825d0024</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>ros::Subscriber</type>
      <name>sub_command_</name>
      <anchorfile>classcontroller_1_1SrController.html</anchorfile>
      <anchor>a0d01ddbf6408c9f73e2c1bee41f38bb7</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>ros::Subscriber</type>
      <name>sub_max_force_factor_</name>
      <anchorfile>classcontroller_1_1SrController.html</anchorfile>
      <anchor>a07658da4d86b88873466a606180d1502</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>controller::SrhEffortJointController</name>
    <filename>classcontroller_1_1SrhEffortJointController.html</filename>
    <base>controller::SrController</base>
    <member kind="function" virtualness="virtual">
      <type>virtual void</type>
      <name>getGains</name>
      <anchorfile>classcontroller_1_1SrhEffortJointController.html</anchorfile>
      <anchor>a249e6d5dbeaf486ea3c8b5047d4c92dc</anchor>
      <arglist>(double &amp;p, double &amp;i, double &amp;d, double &amp;i_max, double &amp;i_min)</arglist>
    </member>
    <member kind="function">
      <type>bool</type>
      <name>init</name>
      <anchorfile>classcontroller_1_1SrhEffortJointController.html</anchorfile>
      <anchor>a7c00b3174a3a2f7958b42982afa8a82b</anchor>
      <arglist>(pr2_mechanism_model::RobotState *robot, const std::string &amp;joint_name)</arglist>
    </member>
    <member kind="function">
      <type>bool</type>
      <name>init</name>
      <anchorfile>classcontroller_1_1SrhEffortJointController.html</anchorfile>
      <anchor>a123af3cbfc04e4b77feaffb479ade5b7</anchor>
      <arglist>(pr2_mechanism_model::RobotState *robot, ros::NodeHandle &amp;n)</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual bool</type>
      <name>resetGains</name>
      <anchorfile>classcontroller_1_1SrhEffortJointController.html</anchorfile>
      <anchor>a2e7253b8e9a7b03d70ec00a540518df6</anchor>
      <arglist>(std_srvs::Empty::Request &amp;req, std_srvs::Empty::Response &amp;resp)</arglist>
    </member>
    <member kind="function">
      <type>bool</type>
      <name>setGains</name>
      <anchorfile>classcontroller_1_1SrhEffortJointController.html</anchorfile>
      <anchor>adfb79d4f45e5254451c8fc9517aa05df</anchor>
      <arglist>(sr_robot_msgs::SetEffortControllerGains::Request &amp;req, sr_robot_msgs::SetEffortControllerGains::Response &amp;resp)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>SrhEffortJointController</name>
      <anchorfile>classcontroller_1_1SrhEffortJointController.html</anchorfile>
      <anchor>ae72a9ab404a9e7ff241aa7212ddcfc49</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual void</type>
      <name>starting</name>
      <anchorfile>classcontroller_1_1SrhEffortJointController.html</anchorfile>
      <anchor>ad5292c51e9ebf8aeaa1a205c493e62fa</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual void</type>
      <name>update</name>
      <anchorfile>classcontroller_1_1SrhEffortJointController.html</anchorfile>
      <anchor>a402ed50c9dd843c53ad7e7b88427df33</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>~SrhEffortJointController</name>
      <anchorfile>classcontroller_1_1SrhEffortJointController.html</anchorfile>
      <anchor>a84ac7abe6931773e1e17d3efc4a47a00</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>read_parameters</name>
      <anchorfile>classcontroller_1_1SrhEffortJointController.html</anchorfile>
      <anchor>a36a919a69d48d04092116eee868ac433</anchor>
      <arglist>()</arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>controller::SrhExampleController</name>
    <filename>classcontroller_1_1SrhExampleController.html</filename>
    <base>controller::SrController</base>
    <member kind="function">
      <type>bool</type>
      <name>init</name>
      <anchorfile>classcontroller_1_1SrhExampleController.html</anchorfile>
      <anchor>a61d1b0ac19306477537306bc614c164b</anchor>
      <arglist>(pr2_mechanism_model::RobotState *robot, ros::NodeHandle &amp;n)</arglist>
    </member>
    <member kind="function">
      <type>bool</type>
      <name>init</name>
      <anchorfile>classcontroller_1_1SrhExampleController.html</anchorfile>
      <anchor>a43f8b7d5fee8416faae3c42890f90e12</anchor>
      <arglist>(pr2_mechanism_model::RobotState *robot, const std::string &amp;joint_name)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>SrhExampleController</name>
      <anchorfile>classcontroller_1_1SrhExampleController.html</anchorfile>
      <anchor>a190620cb65d490d05c23d673f685586a</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual void</type>
      <name>starting</name>
      <anchorfile>classcontroller_1_1SrhExampleController.html</anchorfile>
      <anchor>a0f00b17c1efa23f8e3740751456b5f6e</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual void</type>
      <name>update</name>
      <anchorfile>classcontroller_1_1SrhExampleController.html</anchorfile>
      <anchor>a55237534a27eab6bc6b04afe01bc8a79</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>~SrhExampleController</name>
      <anchorfile>classcontroller_1_1SrhExampleController.html</anchorfile>
      <anchor>a4af75a80b3d336ebf304cd36b02aca04</anchor>
      <arglist>()</arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>controller::SrhFakeJointCalibrationController</name>
    <filename>classcontroller_1_1SrhFakeJointCalibrationController.html</filename>
    <base>pr2_controller_interface::Controller</base>
    <member kind="function">
      <type>void</type>
      <name>beginCalibration</name>
      <anchorfile>classcontroller_1_1SrhFakeJointCalibrationController.html</anchorfile>
      <anchor>a2bbc5cecb58f5181eb24508d6d8b1425</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>bool</type>
      <name>calibrated</name>
      <anchorfile>classcontroller_1_1SrhFakeJointCalibrationController.html</anchorfile>
      <anchor>aa5493abf0f4103ac591baac22a772eac</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual bool</type>
      <name>init</name>
      <anchorfile>classcontroller_1_1SrhFakeJointCalibrationController.html</anchorfile>
      <anchor>a23f85156e84b8b17b87259d06e2e9080</anchor>
      <arglist>(pr2_mechanism_model::RobotState *robot, ros::NodeHandle &amp;n)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>SrhFakeJointCalibrationController</name>
      <anchorfile>classcontroller_1_1SrhFakeJointCalibrationController.html</anchorfile>
      <anchor>a8f03f39d3862e3ef50b177fb8e852d92</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual void</type>
      <name>update</name>
      <anchorfile>classcontroller_1_1SrhFakeJointCalibrationController.html</anchorfile>
      <anchor>a55f994ca4f4be504241be4e45063b567</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual</type>
      <name>~SrhFakeJointCalibrationController</name>
      <anchorfile>classcontroller_1_1SrhFakeJointCalibrationController.html</anchorfile>
      <anchor>a03a56f5ffe415c375f94d6bc79e3d7de</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="enumvalue">
      <name>INITIALIZED</name>
      <anchorfile>classcontroller_1_1SrhFakeJointCalibrationController.html</anchorfile>
      <anchor>aea71c366192232f13178c9c3a55cfa31a7bbe6a259feaa3a96781317fabbacffe</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>BEGINNING</name>
      <anchorfile>classcontroller_1_1SrhFakeJointCalibrationController.html</anchorfile>
      <anchor>aea71c366192232f13178c9c3a55cfa31ae7b6a4d9061962a953407211b450c482</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>MOVING_TO_LOW</name>
      <anchorfile>classcontroller_1_1SrhFakeJointCalibrationController.html</anchorfile>
      <anchor>aea71c366192232f13178c9c3a55cfa31af41a18d8da6d31e9efe463ed0ccb530e</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>MOVING_TO_HIGH</name>
      <anchorfile>classcontroller_1_1SrhFakeJointCalibrationController.html</anchorfile>
      <anchor>aea71c366192232f13178c9c3a55cfa31a3bf0bc09da26e5504f56838c9e830c94</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>CALIBRATED</name>
      <anchorfile>classcontroller_1_1SrhFakeJointCalibrationController.html</anchorfile>
      <anchor>aea71c366192232f13178c9c3a55cfa31a395d2b73913b85a850ece44f9237e2d1</anchor>
      <arglist></arglist>
    </member>
    <member kind="function" protection="protected">
      <type>void</type>
      <name>initialize_pids</name>
      <anchorfile>classcontroller_1_1SrhFakeJointCalibrationController.html</anchorfile>
      <anchor>ae913b5ee9a193a044a17cdd044c1aa5b</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>pr2_hardware_interface::Actuator *</type>
      <name>actuator_</name>
      <anchorfile>classcontroller_1_1SrhFakeJointCalibrationController.html</anchorfile>
      <anchor>aa659e521b349493872b313b7a782b73b</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>std::string</type>
      <name>actuator_name_</name>
      <anchorfile>classcontroller_1_1SrhFakeJointCalibrationController.html</anchorfile>
      <anchor>a111cb054b67239a2a08437422954b872</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>int</type>
      <name>countdown_</name>
      <anchorfile>classcontroller_1_1SrhFakeJointCalibrationController.html</anchorfile>
      <anchor>a09e5cd28b1eaebc3ece28604ec3dcae1</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>pr2_mechanism_model::JointState *</type>
      <name>joint_</name>
      <anchorfile>classcontroller_1_1SrhFakeJointCalibrationController.html</anchorfile>
      <anchor>a2fc12f92218e6a3b0c087532bcf8e80d</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>std::string</type>
      <name>joint_name_</name>
      <anchorfile>classcontroller_1_1SrhFakeJointCalibrationController.html</anchorfile>
      <anchor>acf85293450468c0341819a31aa26a683</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>ros::Time</type>
      <name>last_publish_time_</name>
      <anchorfile>classcontroller_1_1SrhFakeJointCalibrationController.html</anchorfile>
      <anchor>a02fbc1fe35b1223802ffdff175c32166</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>ros::NodeHandle</type>
      <name>node_</name>
      <anchorfile>classcontroller_1_1SrhFakeJointCalibrationController.html</anchorfile>
      <anchor>a4ae623ca08f0fa18b51e8ab8ae411c2c</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>bool</type>
      <name>original_switch_state_</name>
      <anchorfile>classcontroller_1_1SrhFakeJointCalibrationController.html</anchorfile>
      <anchor>a7980aea99675bebe99ea254057de673e</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>boost::scoped_ptr&lt; realtime_tools::RealtimePublisher&lt; std_msgs::Empty &gt; &gt;</type>
      <name>pub_calibrated_</name>
      <anchorfile>classcontroller_1_1SrhFakeJointCalibrationController.html</anchorfile>
      <anchor>ab757967c7781a94c505371691b3b59ef</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>double</type>
      <name>reference_position_</name>
      <anchorfile>classcontroller_1_1SrhFakeJointCalibrationController.html</anchorfile>
      <anchor>adce950fab711d04287acd9bc12916136</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>pr2_mechanism_model::RobotState *</type>
      <name>robot_</name>
      <anchorfile>classcontroller_1_1SrhFakeJointCalibrationController.html</anchorfile>
      <anchor>a554859c09246e7af25e2a36d02604061</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>double</type>
      <name>search_velocity_</name>
      <anchorfile>classcontroller_1_1SrhFakeJointCalibrationController.html</anchorfile>
      <anchor>a494808be03784bc0750ca2064978d179</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>int</type>
      <name>state_</name>
      <anchorfile>classcontroller_1_1SrhFakeJointCalibrationController.html</anchorfile>
      <anchor>a84b5dd03aeab81e0b2398a5837bab26c</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>pr2_mechanism_model::Transmission *</type>
      <name>transmission_</name>
      <anchorfile>classcontroller_1_1SrhFakeJointCalibrationController.html</anchorfile>
      <anchor>acca626f561d3d648e424cfb0802fb0e0</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>controller::SrhJointMuscleValveController</name>
    <filename>classcontroller_1_1SrhJointMuscleValveController.html</filename>
    <base>controller::SrController</base>
    <member kind="function" virtualness="virtual">
      <type>virtual void</type>
      <name>getGains</name>
      <anchorfile>classcontroller_1_1SrhJointMuscleValveController.html</anchorfile>
      <anchor>ac1f20e4f3955983a1dc030518eb9fb11</anchor>
      <arglist>(double &amp;p, double &amp;i, double &amp;d, double &amp;i_max, double &amp;i_min)</arglist>
    </member>
    <member kind="function">
      <type>bool</type>
      <name>init</name>
      <anchorfile>classcontroller_1_1SrhJointMuscleValveController.html</anchorfile>
      <anchor>a7f50cfecbcdb605fe86d6ff41cab091f</anchor>
      <arglist>(pr2_mechanism_model::RobotState *robot, const std::string &amp;joint_name)</arglist>
    </member>
    <member kind="function">
      <type>bool</type>
      <name>init</name>
      <anchorfile>classcontroller_1_1SrhJointMuscleValveController.html</anchorfile>
      <anchor>adddc9e9ebaf49092f08be1b0f168d1b9</anchor>
      <arglist>(pr2_mechanism_model::RobotState *robot, ros::NodeHandle &amp;n)</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual bool</type>
      <name>resetGains</name>
      <anchorfile>classcontroller_1_1SrhJointMuscleValveController.html</anchorfile>
      <anchor>a305366cd7d2103e661bd4cd0947dfbe0</anchor>
      <arglist>(std_srvs::Empty::Request &amp;req, std_srvs::Empty::Response &amp;resp)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>SrhJointMuscleValveController</name>
      <anchorfile>classcontroller_1_1SrhJointMuscleValveController.html</anchorfile>
      <anchor>a83273bda30d44f42cffdb05a61efec80</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual void</type>
      <name>starting</name>
      <anchorfile>classcontroller_1_1SrhJointMuscleValveController.html</anchorfile>
      <anchor>ae559ee0d5de014a59df27df0a123c53f</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual void</type>
      <name>update</name>
      <anchorfile>classcontroller_1_1SrhJointMuscleValveController.html</anchorfile>
      <anchor>a395e30db008a1082005b8d6c35bf2932</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>~SrhJointMuscleValveController</name>
      <anchorfile>classcontroller_1_1SrhJointMuscleValveController.html</anchorfile>
      <anchor>a0bf1c68b4d885ff574d60cb072e39dd1</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="variable">
      <type>unsigned int</type>
      <name>cmd_duration_ms_</name>
      <anchorfile>classcontroller_1_1SrhJointMuscleValveController.html</anchorfile>
      <anchor>a4217353c69f33708dfd0411992e65db2</anchor>
      <arglist>[2]</arglist>
    </member>
    <member kind="variable">
      <type>int8_t</type>
      <name>cmd_valve_muscle_</name>
      <anchorfile>classcontroller_1_1SrhJointMuscleValveController.html</anchorfile>
      <anchor>add976607294fe94530629db4cecfb955</anchor>
      <arglist>[2]</arglist>
    </member>
    <member kind="variable">
      <type>int8_t</type>
      <name>cmd_valve_muscle_max_</name>
      <anchorfile>classcontroller_1_1SrhJointMuscleValveController.html</anchorfile>
      <anchor>a736811b1d72ba7ddebf046d8decf8c53</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>int8_t</type>
      <name>cmd_valve_muscle_min_</name>
      <anchorfile>classcontroller_1_1SrhJointMuscleValveController.html</anchorfile>
      <anchor>ab6668e81539ca4fbf0d6e212f4ab7136</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>unsigned int</type>
      <name>current_duration_ms_</name>
      <anchorfile>classcontroller_1_1SrhJointMuscleValveController.html</anchorfile>
      <anchor>ab344b358a04d1d551f1ef20b940ace04</anchor>
      <arglist>[2]</arglist>
    </member>
    <member kind="function" protection="private">
      <type>int8_t</type>
      <name>clamp_command</name>
      <anchorfile>classcontroller_1_1SrhJointMuscleValveController.html</anchorfile>
      <anchor>a9cbea3ab2cd0bb8addf53dde63d6eab9</anchor>
      <arglist>(int8_t cmd)</arglist>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>read_parameters</name>
      <anchorfile>classcontroller_1_1SrhJointMuscleValveController.html</anchorfile>
      <anchor>a50fbe52defd4174f873744cebab47195</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>setCommandCB</name>
      <anchorfile>classcontroller_1_1SrhJointMuscleValveController.html</anchorfile>
      <anchor>a4983d6c921487b4cb695de61e8e55ac6</anchor>
      <arglist>(const sr_robot_msgs::JointMuscleValveControllerCommandConstPtr &amp;msg)</arglist>
    </member>
    <member kind="variable" protection="private">
      <type>boost::shared_ptr&lt; realtime_tools::RealtimePublisher&lt; sr_robot_msgs::JointMuscleValveControllerState &gt; &gt;</type>
      <name>controller_state_publisher_</name>
      <anchorfile>classcontroller_1_1SrhJointMuscleValveController.html</anchorfile>
      <anchor>a7554394b48a4271a42cd110d23c6a20c</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>ros::Subscriber</type>
      <name>sub_command_</name>
      <anchorfile>classcontroller_1_1SrhJointMuscleValveController.html</anchorfile>
      <anchor>af23ac01c72222320925be69e060904bc</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>controller::SrhJointPositionController</name>
    <filename>classcontroller_1_1SrhJointPositionController.html</filename>
    <base>controller::SrController</base>
    <member kind="function" virtualness="virtual">
      <type>virtual void</type>
      <name>getGains</name>
      <anchorfile>classcontroller_1_1SrhJointPositionController.html</anchorfile>
      <anchor>a817f230d248e311c9883fb5fcde24b70</anchor>
      <arglist>(double &amp;p, double &amp;i, double &amp;d, double &amp;i_max, double &amp;i_min)</arglist>
    </member>
    <member kind="function">
      <type>bool</type>
      <name>init</name>
      <anchorfile>classcontroller_1_1SrhJointPositionController.html</anchorfile>
      <anchor>a41cccbc3103ce12ebe59932e31604112</anchor>
      <arglist>(pr2_mechanism_model::RobotState *robot, const std::string &amp;joint_name, boost::shared_ptr&lt; control_toolbox::Pid &gt; pid_position)</arglist>
    </member>
    <member kind="function">
      <type>bool</type>
      <name>init</name>
      <anchorfile>classcontroller_1_1SrhJointPositionController.html</anchorfile>
      <anchor>a2f5c05c131ad0e0a41ceb271738b5b70</anchor>
      <arglist>(pr2_mechanism_model::RobotState *robot, ros::NodeHandle &amp;n)</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual bool</type>
      <name>resetGains</name>
      <anchorfile>classcontroller_1_1SrhJointPositionController.html</anchorfile>
      <anchor>aa979238aa0990035c57725cabb4353d2</anchor>
      <arglist>(std_srvs::Empty::Request &amp;req, std_srvs::Empty::Response &amp;resp)</arglist>
    </member>
    <member kind="function">
      <type>bool</type>
      <name>setGains</name>
      <anchorfile>classcontroller_1_1SrhJointPositionController.html</anchorfile>
      <anchor>a1894bc18fd36a3a01b4b148b81dc4a71</anchor>
      <arglist>(sr_robot_msgs::SetPidGains::Request &amp;req, sr_robot_msgs::SetPidGains::Response &amp;resp)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>SrhJointPositionController</name>
      <anchorfile>classcontroller_1_1SrhJointPositionController.html</anchorfile>
      <anchor>a0f72d24979d2627ac548817cad5a98aa</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual void</type>
      <name>starting</name>
      <anchorfile>classcontroller_1_1SrhJointPositionController.html</anchorfile>
      <anchor>a22497e80be9fa0a41c91ce30ee1d3325</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual void</type>
      <name>update</name>
      <anchorfile>classcontroller_1_1SrhJointPositionController.html</anchorfile>
      <anchor>a90ae120158d7b53abaab62ef1ddd1047</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>~SrhJointPositionController</name>
      <anchorfile>classcontroller_1_1SrhJointPositionController.html</anchorfile>
      <anchor>af5e7422f0beac025f4e51a3a0b05b1ef</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>read_parameters</name>
      <anchorfile>classcontroller_1_1SrhJointPositionController.html</anchorfile>
      <anchor>a308b09778688f739f113cc85984b9f0d</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="variable" protection="private">
      <type>sr_deadband::HysteresisDeadband&lt; double &gt;</type>
      <name>hysteresis_deadband</name>
      <anchorfile>classcontroller_1_1SrhJointPositionController.html</anchorfile>
      <anchor>a7c2c0c624935d060a9618388ad2814be</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::string</type>
      <name>joint_name_</name>
      <anchorfile>classcontroller_1_1SrhJointPositionController.html</anchorfile>
      <anchor>a2b6268f4c5e5f673b498c01ba95b9294</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>double</type>
      <name>max_force_demand</name>
      <anchorfile>classcontroller_1_1SrhJointPositionController.html</anchorfile>
      <anchor>a435b24c567c8eed64b5e3756dbd6dc61</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>boost::shared_ptr&lt; control_toolbox::Pid &gt;</type>
      <name>pid_controller_position_</name>
      <anchorfile>classcontroller_1_1SrhJointPositionController.html</anchorfile>
      <anchor>a87924b0985567f029c07990cda4be14e</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>double</type>
      <name>position_deadband</name>
      <anchorfile>classcontroller_1_1SrhJointPositionController.html</anchorfile>
      <anchor>a40ac533726a1352cd372ca3dba707694</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>controller::SrhJointVelocityController</name>
    <filename>classcontroller_1_1SrhJointVelocityController.html</filename>
    <base>controller::SrController</base>
    <member kind="function" virtualness="virtual">
      <type>virtual void</type>
      <name>getGains</name>
      <anchorfile>classcontroller_1_1SrhJointVelocityController.html</anchorfile>
      <anchor>a2ce9848ef2efb896185fa4c9a437c958</anchor>
      <arglist>(double &amp;p, double &amp;i, double &amp;d, double &amp;i_max, double &amp;i_min)</arglist>
    </member>
    <member kind="function">
      <type>bool</type>
      <name>init</name>
      <anchorfile>classcontroller_1_1SrhJointVelocityController.html</anchorfile>
      <anchor>afce4f0d70d724f6d717ffd0c59095ccb</anchor>
      <arglist>(pr2_mechanism_model::RobotState *robot, const std::string &amp;joint_name, boost::shared_ptr&lt; control_toolbox::Pid &gt; pid_velocity)</arglist>
    </member>
    <member kind="function">
      <type>bool</type>
      <name>init</name>
      <anchorfile>classcontroller_1_1SrhJointVelocityController.html</anchorfile>
      <anchor>a860f8ca89f6ea1b42929858fe56734ea</anchor>
      <arglist>(pr2_mechanism_model::RobotState *robot, ros::NodeHandle &amp;n)</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual bool</type>
      <name>resetGains</name>
      <anchorfile>classcontroller_1_1SrhJointVelocityController.html</anchorfile>
      <anchor>a36c428bd4a61ce55d976250e27716158</anchor>
      <arglist>(std_srvs::Empty::Request &amp;req, std_srvs::Empty::Response &amp;resp)</arglist>
    </member>
    <member kind="function">
      <type>bool</type>
      <name>setGains</name>
      <anchorfile>classcontroller_1_1SrhJointVelocityController.html</anchorfile>
      <anchor>a007734d48fb5e4e693bd913a28315551</anchor>
      <arglist>(sr_robot_msgs::SetPidGains::Request &amp;req, sr_robot_msgs::SetPidGains::Response &amp;resp)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>SrhJointVelocityController</name>
      <anchorfile>classcontroller_1_1SrhJointVelocityController.html</anchorfile>
      <anchor>a91fb055a0d4178a0e6b9567b96e78c98</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual void</type>
      <name>starting</name>
      <anchorfile>classcontroller_1_1SrhJointVelocityController.html</anchorfile>
      <anchor>a58ec56cc858fab3f5f366522aa54aba1</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual void</type>
      <name>update</name>
      <anchorfile>classcontroller_1_1SrhJointVelocityController.html</anchorfile>
      <anchor>a710a6d328d06f0138b5ca13c61cafa38</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>~SrhJointVelocityController</name>
      <anchorfile>classcontroller_1_1SrhJointVelocityController.html</anchorfile>
      <anchor>ac036bd42196dadb9c490d78f88596c5e</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>read_parameters</name>
      <anchorfile>classcontroller_1_1SrhJointVelocityController.html</anchorfile>
      <anchor>a374323fe386562c6adf2ed348a9b11f6</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="variable" protection="private">
      <type>sr_deadband::HysteresisDeadband&lt; double &gt;</type>
      <name>hysteresis_deadband</name>
      <anchorfile>classcontroller_1_1SrhJointVelocityController.html</anchorfile>
      <anchor>a8b9c0993795c5bf7ddda44e88f4b4d5c</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>boost::shared_ptr&lt; control_toolbox::Pid &gt;</type>
      <name>pid_controller_velocity_</name>
      <anchorfile>classcontroller_1_1SrhJointVelocityController.html</anchorfile>
      <anchor>af4a38d5e94a0cf953d3e03db46fb13a2</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>double</type>
      <name>velocity_deadband</name>
      <anchorfile>classcontroller_1_1SrhJointVelocityController.html</anchorfile>
      <anchor>adb4a3e6f5c95f2d9ddd73e327ec802fe</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>controller::SrhMixedPositionVelocityJointController</name>
    <filename>classcontroller_1_1SrhMixedPositionVelocityJointController.html</filename>
    <base>controller::SrController</base>
    <member kind="function" virtualness="virtual">
      <type>virtual void</type>
      <name>getGains</name>
      <anchorfile>classcontroller_1_1SrhMixedPositionVelocityJointController.html</anchorfile>
      <anchor>ad77b2b7ff8e145d710dcc6025f46b3ec</anchor>
      <arglist>(double &amp;p, double &amp;i, double &amp;d, double &amp;i_max, double &amp;i_min)</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual void</type>
      <name>getGains_velocity</name>
      <anchorfile>classcontroller_1_1SrhMixedPositionVelocityJointController.html</anchorfile>
      <anchor>aa0aa80bf43849db6a1b642cc7650de53</anchor>
      <arglist>(double &amp;p, double &amp;i, double &amp;d, double &amp;i_max, double &amp;i_min)</arglist>
    </member>
    <member kind="function">
      <type>bool</type>
      <name>init</name>
      <anchorfile>classcontroller_1_1SrhMixedPositionVelocityJointController.html</anchorfile>
      <anchor>a2689f6146b8d74215d82e41616f94dd8</anchor>
      <arglist>(pr2_mechanism_model::RobotState *robot, const std::string &amp;joint_name, boost::shared_ptr&lt; control_toolbox::Pid &gt; pid_position, boost::shared_ptr&lt; control_toolbox::Pid &gt; pid_velocity)</arglist>
    </member>
    <member kind="function">
      <type>bool</type>
      <name>init</name>
      <anchorfile>classcontroller_1_1SrhMixedPositionVelocityJointController.html</anchorfile>
      <anchor>a613a4df5f5063f1c24a87e1a5a52bd66</anchor>
      <arglist>(pr2_mechanism_model::RobotState *robot, ros::NodeHandle &amp;n)</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual bool</type>
      <name>resetGains</name>
      <anchorfile>classcontroller_1_1SrhMixedPositionVelocityJointController.html</anchorfile>
      <anchor>a936c39010bf5fbd89b2df17609139056</anchor>
      <arglist>(std_srvs::Empty::Request &amp;req, std_srvs::Empty::Response &amp;resp)</arglist>
    </member>
    <member kind="function">
      <type>bool</type>
      <name>setGains</name>
      <anchorfile>classcontroller_1_1SrhMixedPositionVelocityJointController.html</anchorfile>
      <anchor>ab0420e56f1185edefd50d08eec8ac025</anchor>
      <arglist>(sr_robot_msgs::SetMixedPositionVelocityPidGains::Request &amp;req, sr_robot_msgs::SetMixedPositionVelocityPidGains::Response &amp;resp)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>SrhMixedPositionVelocityJointController</name>
      <anchorfile>classcontroller_1_1SrhMixedPositionVelocityJointController.html</anchorfile>
      <anchor>af13559300ad2c6b2f350793c9307bfcb</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual void</type>
      <name>starting</name>
      <anchorfile>classcontroller_1_1SrhMixedPositionVelocityJointController.html</anchorfile>
      <anchor>ad1504d88b880639e3d124259dbaf606b</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual void</type>
      <name>update</name>
      <anchorfile>classcontroller_1_1SrhMixedPositionVelocityJointController.html</anchorfile>
      <anchor>a11f9249410282391fbc728a33a6fbf95</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>~SrhMixedPositionVelocityJointController</name>
      <anchorfile>classcontroller_1_1SrhMixedPositionVelocityJointController.html</anchorfile>
      <anchor>ad656284d22d70560e167581b4d593103</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>read_parameters</name>
      <anchorfile>classcontroller_1_1SrhMixedPositionVelocityJointController.html</anchorfile>
      <anchor>a11f6282a66f5384f45d410902b7d428f</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="variable" protection="private">
      <type>boost::shared_ptr&lt; realtime_tools::RealtimePublisher&lt; sr_robot_msgs::JointControllerState &gt; &gt;</type>
      <name>controller_state_publisher_</name>
      <anchorfile>classcontroller_1_1SrhMixedPositionVelocityJointController.html</anchorfile>
      <anchor>ad82bc597a39e82e2fb7eb19bbaa6232f</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>sr_deadband::HysteresisDeadband&lt; double &gt;</type>
      <name>hysteresis_deadband</name>
      <anchorfile>classcontroller_1_1SrhMixedPositionVelocityJointController.html</anchorfile>
      <anchor>aaf0fdf3ac88dc40f007866afaebf553c</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>double</type>
      <name>max_velocity_</name>
      <anchorfile>classcontroller_1_1SrhMixedPositionVelocityJointController.html</anchorfile>
      <anchor>a3f63fd34bf65bffe84a06a4a8531a3cb</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>double</type>
      <name>min_velocity_</name>
      <anchorfile>classcontroller_1_1SrhMixedPositionVelocityJointController.html</anchorfile>
      <anchor>a31d8501901118aec9d8efd0f497a13c6</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>int</type>
      <name>motor_min_force_threshold</name>
      <anchorfile>classcontroller_1_1SrhMixedPositionVelocityJointController.html</anchorfile>
      <anchor>ac6bf674fba529698b3fa931195ea0341</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>boost::shared_ptr&lt; control_toolbox::Pid &gt;</type>
      <name>pid_controller_position_</name>
      <anchorfile>classcontroller_1_1SrhMixedPositionVelocityJointController.html</anchorfile>
      <anchor>ad0a7235f3e14470102c09b97791cab5d</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>boost::shared_ptr&lt; control_toolbox::Pid &gt;</type>
      <name>pid_controller_velocity_</name>
      <anchorfile>classcontroller_1_1SrhMixedPositionVelocityJointController.html</anchorfile>
      <anchor>a188b02e00bf2d4caa60fdc79d0971fdb</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>double</type>
      <name>position_deadband</name>
      <anchorfile>classcontroller_1_1SrhMixedPositionVelocityJointController.html</anchorfile>
      <anchor>a9bd32213ac590ea6e3d0e78d1c0739eb</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>ros::ServiceServer</type>
      <name>serve_set_gains_</name>
      <anchorfile>classcontroller_1_1SrhMixedPositionVelocityJointController.html</anchorfile>
      <anchor>a62bf1bc005067371d2a341797fb4e5a8</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>controller::SrhMuscleJointPositionController</name>
    <filename>classcontroller_1_1SrhMuscleJointPositionController.html</filename>
    <base>controller::SrController</base>
    <member kind="function" virtualness="virtual">
      <type>virtual void</type>
      <name>getGains</name>
      <anchorfile>classcontroller_1_1SrhMuscleJointPositionController.html</anchorfile>
      <anchor>a897c2b50b3b432659dbc36f2b9386182</anchor>
      <arglist>(double &amp;p, double &amp;i, double &amp;d, double &amp;i_max, double &amp;i_min)</arglist>
    </member>
    <member kind="function">
      <type>bool</type>
      <name>init</name>
      <anchorfile>classcontroller_1_1SrhMuscleJointPositionController.html</anchorfile>
      <anchor>a06d14ecaaa1191bb6b7fb15840004701</anchor>
      <arglist>(pr2_mechanism_model::RobotState *robot, const std::string &amp;joint_name, boost::shared_ptr&lt; control_toolbox::Pid &gt; pid_position)</arglist>
    </member>
    <member kind="function">
      <type>bool</type>
      <name>init</name>
      <anchorfile>classcontroller_1_1SrhMuscleJointPositionController.html</anchorfile>
      <anchor>adca318b457a40e61e53a11da51f00e96</anchor>
      <arglist>(pr2_mechanism_model::RobotState *robot, ros::NodeHandle &amp;n)</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual bool</type>
      <name>resetGains</name>
      <anchorfile>classcontroller_1_1SrhMuscleJointPositionController.html</anchorfile>
      <anchor>a1d306c3554c647a7b47ed26663b60ebf</anchor>
      <arglist>(std_srvs::Empty::Request &amp;req, std_srvs::Empty::Response &amp;resp)</arglist>
    </member>
    <member kind="function">
      <type>bool</type>
      <name>setGains</name>
      <anchorfile>classcontroller_1_1SrhMuscleJointPositionController.html</anchorfile>
      <anchor>a6e9827745a308b6947698ebc383377e0</anchor>
      <arglist>(sr_robot_msgs::SetPidGains::Request &amp;req, sr_robot_msgs::SetPidGains::Response &amp;resp)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>SrhMuscleJointPositionController</name>
      <anchorfile>classcontroller_1_1SrhMuscleJointPositionController.html</anchorfile>
      <anchor>ae981c95aae13bcbe4dc5433e344544e5</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual void</type>
      <name>starting</name>
      <anchorfile>classcontroller_1_1SrhMuscleJointPositionController.html</anchorfile>
      <anchor>a2ea177f3cf1d5e1c77351608c3ea6587</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual void</type>
      <name>update</name>
      <anchorfile>classcontroller_1_1SrhMuscleJointPositionController.html</anchorfile>
      <anchor>a82e2c6d1aa9807143848a3f47d3df0eb</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>~SrhMuscleJointPositionController</name>
      <anchorfile>classcontroller_1_1SrhMuscleJointPositionController.html</anchorfile>
      <anchor>ad274eb5765ff53be252da35c98b1be69</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>read_parameters</name>
      <anchorfile>classcontroller_1_1SrhMuscleJointPositionController.html</anchorfile>
      <anchor>a5d080e45dcb6a4d38d8c3a34e6b50366</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="variable" protection="private">
      <type>int</type>
      <name>command_acc_</name>
      <anchorfile>classcontroller_1_1SrhMuscleJointPositionController.html</anchorfile>
      <anchor>ab1dfbd3626447c9c1b8f4470b7b169b9</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>boost::shared_ptr&lt; realtime_tools::RealtimePublisher&lt; sr_robot_msgs::JointMusclePositionControllerState &gt; &gt;</type>
      <name>controller_state_publisher_</name>
      <anchorfile>classcontroller_1_1SrhMuscleJointPositionController.html</anchorfile>
      <anchor>a05caf3c5db898ffca78ae1b63c844f45</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>sr_deadband::HysteresisDeadband&lt; double &gt;</type>
      <name>hysteresis_deadband</name>
      <anchorfile>classcontroller_1_1SrhMuscleJointPositionController.html</anchorfile>
      <anchor>a091bb0187dc067366610742fdc55efb2</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::string</type>
      <name>joint_name_</name>
      <anchorfile>classcontroller_1_1SrhMuscleJointPositionController.html</anchorfile>
      <anchor>aae41da92181d3b78de1949e4a0151f2f</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>double</type>
      <name>max_force_demand</name>
      <anchorfile>classcontroller_1_1SrhMuscleJointPositionController.html</anchorfile>
      <anchor>a9911c398bb9755eb7b8d1a396bbdd663</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>boost::shared_ptr&lt; control_toolbox::Pid &gt;</type>
      <name>pid_controller_position_</name>
      <anchorfile>classcontroller_1_1SrhMuscleJointPositionController.html</anchorfile>
      <anchor>aea2f5ae88c87a8da682ce7bb8965abf9</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>double</type>
      <name>position_deadband</name>
      <anchorfile>classcontroller_1_1SrhMuscleJointPositionController.html</anchorfile>
      <anchor>af41e9da4b34e2bdd03a9cbd8e33e09f9</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>controller::SrhSyntouchController</name>
    <filename>classcontroller_1_1SrhSyntouchController.html</filename>
    <base>controller::SrController</base>
    <member kind="function">
      <type>bool</type>
      <name>init</name>
      <anchorfile>classcontroller_1_1SrhSyntouchController.html</anchorfile>
      <anchor>a91452406869c30130a8238e81d7127e9</anchor>
      <arglist>(pr2_mechanism_model::RobotState *robot, const std::string &amp;joint_name)</arglist>
    </member>
    <member kind="function">
      <type>bool</type>
      <name>init</name>
      <anchorfile>classcontroller_1_1SrhSyntouchController.html</anchorfile>
      <anchor>a82872b55064d0447d9d74e6842a8cc16</anchor>
      <arglist>(pr2_mechanism_model::RobotState *robot, ros::NodeHandle &amp;n)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>SrhSyntouchController</name>
      <anchorfile>classcontroller_1_1SrhSyntouchController.html</anchorfile>
      <anchor>a717792077ffaaf34c126fccb2af7849f</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual void</type>
      <name>starting</name>
      <anchorfile>classcontroller_1_1SrhSyntouchController.html</anchorfile>
      <anchor>a916b3f3002503172c1c79f89d8626811</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual void</type>
      <name>update</name>
      <anchorfile>classcontroller_1_1SrhSyntouchController.html</anchorfile>
      <anchor>a937c0ee0e18bc551fa9db8d026fdb3f3</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>~SrhSyntouchController</name>
      <anchorfile>classcontroller_1_1SrhSyntouchController.html</anchorfile>
      <anchor>a51d9b9a35d9c516e272fb96fc7c60fe0</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="variable" protection="private">
      <type>sr_actuator::SrActuator *</type>
      <name>actuator_</name>
      <anchorfile>classcontroller_1_1SrhSyntouchController.html</anchorfile>
      <anchor>a103bc0350fc267bc2842162eb51b8199</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>boost::shared_ptr&lt; realtime_tools::RealtimePublisher&lt; sr_robot_msgs::JointControllerState &gt; &gt;</type>
      <name>controller_state_publisher_</name>
      <anchorfile>classcontroller_1_1SrhSyntouchController.html</anchorfile>
      <anchor>a7561b16210817fb089209bf3112a1f5d</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>shadowrobot::JointTrajectoryActionController</name>
    <filename>classshadowrobot_1_1JointTrajectoryActionController.html</filename>
    <class kind="struct">shadowrobot::JointTrajectoryActionController::Segment</class>
    <class kind="struct">shadowrobot::JointTrajectoryActionController::Spline</class>
    <member kind="function">
      <type></type>
      <name>JointTrajectoryActionController</name>
      <anchorfile>classshadowrobot_1_1JointTrajectoryActionController.html</anchorfile>
      <anchor>a59d7d08e2f520e04c9f8988c6d2c1d08</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>JointTrajectoryActionController</name>
      <anchorfile>classshadowrobot_1_1JointTrajectoryActionController.html</anchorfile>
      <anchor>a59d7d08e2f520e04c9f8988c6d2c1d08</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>~JointTrajectoryActionController</name>
      <anchorfile>classshadowrobot_1_1JointTrajectoryActionController.html</anchorfile>
      <anchor>a99a112ff92c99211326b14530d723db0</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>~JointTrajectoryActionController</name>
      <anchorfile>classshadowrobot_1_1JointTrajectoryActionController.html</anchorfile>
      <anchor>a99a112ff92c99211326b14530d723db0</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="typedef" protection="private">
      <type>std::map&lt; std::string, ros::Publisher &gt;</type>
      <name>JointPubMap</name>
      <anchorfile>classshadowrobot_1_1JointTrajectoryActionController.html</anchorfile>
      <anchor>a51541533680fa2d69f2b209cc10e0215</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef" protection="private">
      <type>std::vector&lt; trajectory_msgs::JointTrajectoryPoint &gt;</type>
      <name>JointTrajectoryPointVec</name>
      <anchorfile>classshadowrobot_1_1JointTrajectoryActionController.html</anchorfile>
      <anchor>ae31e0c62075b4dbfeeff61da4725d7e1</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef" protection="private">
      <type>actionlib::SimpleActionServer&lt; control_msgs::FollowJointTrajectoryAction &gt;</type>
      <name>JTAS</name>
      <anchorfile>classshadowrobot_1_1JointTrajectoryActionController.html</anchorfile>
      <anchor>a087b7fd9af278683314aa4e47acd1ede</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef" protection="private">
      <type>actionlib::SimpleActionServer&lt; control_msgs::FollowJointTrajectoryAction &gt;</type>
      <name>JTAS</name>
      <anchorfile>classshadowrobot_1_1JointTrajectoryActionController.html</anchorfile>
      <anchor>a087b7fd9af278683314aa4e47acd1ede</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef" protection="private">
      <type>std::vector&lt; Segment &gt;</type>
      <name>SpecifiedTrajectory</name>
      <anchorfile>classshadowrobot_1_1JointTrajectoryActionController.html</anchorfile>
      <anchor>ab70d0114e029827854d76689c92c14e6</anchor>
      <arglist></arglist>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>commandCB</name>
      <anchorfile>classshadowrobot_1_1JointTrajectoryActionController.html</anchorfile>
      <anchor>a311ec2bba70f93d9edb4887b235f7c95</anchor>
      <arglist>(const trajectory_msgs::JointTrajectoryConstPtr &amp;msg)</arglist>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>execute_trajectory</name>
      <anchorfile>classshadowrobot_1_1JointTrajectoryActionController.html</anchorfile>
      <anchor>a6716a18b9de34c02a6d424e9a6b79d4c</anchor>
      <arglist>(const control_msgs::FollowJointTrajectoryGoalConstPtr &amp;goal)</arglist>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>execute_trajectory</name>
      <anchorfile>classshadowrobot_1_1JointTrajectoryActionController.html</anchorfile>
      <anchor>a6716a18b9de34c02a6d424e9a6b79d4c</anchor>
      <arglist>(const control_msgs::FollowJointTrajectoryGoalConstPtr &amp;goal)</arglist>
    </member>
    <member kind="function" protection="private">
      <type>bool</type>
      <name>getPosition</name>
      <anchorfile>classshadowrobot_1_1JointTrajectoryActionController.html</anchorfile>
      <anchor>a785e2289872acbbe05a5ded05eed7255</anchor>
      <arglist>(std::string joint_name, double &amp;position)</arglist>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>updateJointState</name>
      <anchorfile>classshadowrobot_1_1JointTrajectoryActionController.html</anchorfile>
      <anchor>a54c5e50b6e5ab01eee8c63d034d0b830</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" protection="private" static="yes">
      <type>static void</type>
      <name>sampleSplineWithTimeBounds</name>
      <anchorfile>classshadowrobot_1_1JointTrajectoryActionController.html</anchorfile>
      <anchor>abe884d1c828d866a49abb495ac061f24</anchor>
      <arglist>(const std::vector&lt; double &gt; &amp;coefficients, double duration, double time, double &amp;position, double &amp;velocity, double &amp;acceleration)</arglist>
    </member>
    <member kind="variable" protection="private">
      <type>boost::shared_ptr&lt; JTAS &gt;</type>
      <name>action_server</name>
      <anchorfile>classshadowrobot_1_1JointTrajectoryActionController.html</anchorfile>
      <anchor>a382abdf208a3b8f99f497f6da169a966</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>ros::Subscriber</type>
      <name>command_sub</name>
      <anchorfile>classshadowrobot_1_1JointTrajectoryActionController.html</anchorfile>
      <anchor>a643fe9aff628ad45d45c7cfd43353042</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::vector&lt; ros::Publisher &gt;</type>
      <name>controller_publishers</name>
      <anchorfile>classshadowrobot_1_1JointTrajectoryActionController.html</anchorfile>
      <anchor>a2cc3505e65dafa597fc96726dc3854e3</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>ros::Publisher</type>
      <name>desired_joint_state_pusblisher</name>
      <anchorfile>classshadowrobot_1_1JointTrajectoryActionController.html</anchorfile>
      <anchor>a5c18c3c9a662a00c9412f2cc457f65ab</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::vector&lt; std::string &gt;</type>
      <name>joint_names_</name>
      <anchorfile>classshadowrobot_1_1JointTrajectoryActionController.html</anchorfile>
      <anchor>a4a5ad1bf43965009c1f1b3e20cfefc10</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>JointPubMap</type>
      <name>joint_pub</name>
      <anchorfile>classshadowrobot_1_1JointTrajectoryActionController.html</anchorfile>
      <anchor>a9efd06df96702b8a44710f8c7f6d565e</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>ros::ServiceClient</type>
      <name>joint_state_client</name>
      <anchorfile>classshadowrobot_1_1JointTrajectoryActionController.html</anchorfile>
      <anchor>af80740354ba497196d52898a5f24de72</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::map&lt; std::string, unsigned int &gt;</type>
      <name>joint_state_idx_map</name>
      <anchorfile>classshadowrobot_1_1JointTrajectoryActionController.html</anchorfile>
      <anchor>ab3c06dc50e43bd3b4f448c271418d8dd</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::map&lt; std::string, double &gt;</type>
      <name>joint_state_map</name>
      <anchorfile>classshadowrobot_1_1JointTrajectoryActionController.html</anchorfile>
      <anchor>ad4d9a98c1e2961fd932728dfa5aaaae7</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::map&lt; std::string, std::string &gt;</type>
      <name>jointControllerMap</name>
      <anchorfile>classshadowrobot_1_1JointTrajectoryActionController.html</anchorfile>
      <anchor>af66a16ad9eabaa56a9dc9f73553b6c1b</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::map&lt; std::string, unsigned int &gt;</type>
      <name>jointPubIdxMap</name>
      <anchorfile>classshadowrobot_1_1JointTrajectoryActionController.html</anchorfile>
      <anchor>a94d998c745ad38bc2912cdf0f26d9d43</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>ros::Time</type>
      <name>last_time_</name>
      <anchorfile>classshadowrobot_1_1JointTrajectoryActionController.html</anchorfile>
      <anchor>a97aa867477f32c5431a4d6ac330f42c4</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>ros::NodeHandle</type>
      <name>nh</name>
      <anchorfile>classshadowrobot_1_1JointTrajectoryActionController.html</anchorfile>
      <anchor>a20964ad27371ab32c44b3ee5f30b95c3</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>ros::NodeHandle</type>
      <name>nh_tilde</name>
      <anchorfile>classshadowrobot_1_1JointTrajectoryActionController.html</anchorfile>
      <anchor>a5275652c2f6a11c312f89e3e63aa0358</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::vector&lt; double &gt;</type>
      <name>q</name>
      <anchorfile>classshadowrobot_1_1JointTrajectoryActionController.html</anchorfile>
      <anchor>a0bf037a970500a8001ff297beefbde82</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::vector&lt; double &gt;</type>
      <name>qd</name>
      <anchorfile>classshadowrobot_1_1JointTrajectoryActionController.html</anchorfile>
      <anchor>a838989dac5996bce5460639a59a64049</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::vector&lt; double &gt;</type>
      <name>qdd</name>
      <anchorfile>classshadowrobot_1_1JointTrajectoryActionController.html</anchorfile>
      <anchor>a6098812294433d573b574101a129c268</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>ros::Publisher</type>
      <name>sr_arm_target_pub</name>
      <anchorfile>classshadowrobot_1_1JointTrajectoryActionController.html</anchorfile>
      <anchor>a6b15427f72dbfdc66aa0dda77f5db23e</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>ros::Publisher</type>
      <name>sr_hand_target_pub</name>
      <anchorfile>classshadowrobot_1_1JointTrajectoryActionController.html</anchorfile>
      <anchor>a70fe127ca874a81358d1709b840a801e</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>bool</type>
      <name>use_sendupdate</name>
      <anchorfile>classshadowrobot_1_1JointTrajectoryActionController.html</anchorfile>
      <anchor>a25f3a976446600cbea83df1cf00236f4</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>shadowrobot::JointTrajectoryActionController::Segment</name>
    <filename>structshadowrobot_1_1JointTrajectoryActionController_1_1Segment.html</filename>
    <member kind="variable">
      <type>double</type>
      <name>duration</name>
      <anchorfile>structshadowrobot_1_1JointTrajectoryActionController_1_1Segment.html</anchorfile>
      <anchor>a3969786ab395399bc0587b49cd709c3a</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>std::vector&lt; Spline &gt;</type>
      <name>splines</name>
      <anchorfile>structshadowrobot_1_1JointTrajectoryActionController_1_1Segment.html</anchorfile>
      <anchor>a7c71ed0fff76c26d11cfcc8f08af2fdf</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>double</type>
      <name>start_time</name>
      <anchorfile>structshadowrobot_1_1JointTrajectoryActionController_1_1Segment.html</anchorfile>
      <anchor>af13d9a81fb3daebe8772d2e2847e96f8</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>shadowrobot::JointTrajectoryActionController::Spline</name>
    <filename>structshadowrobot_1_1JointTrajectoryActionController_1_1Spline.html</filename>
    <member kind="function">
      <type></type>
      <name>Spline</name>
      <anchorfile>structshadowrobot_1_1JointTrajectoryActionController_1_1Spline.html</anchorfile>
      <anchor>a2b4646a829ac11837b0010b480e5bd39</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="variable">
      <type>std::vector&lt; double &gt;</type>
      <name>coef</name>
      <anchorfile>structshadowrobot_1_1JointTrajectoryActionController_1_1Spline.html</anchorfile>
      <anchor>ab88938841c5ceebd87d30a20237efc2f</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="namespace">
    <name>sr_friction_compensation</name>
    <filename>namespacesr__friction__compensation.html</filename>
    <class kind="class">sr_friction_compensation::SrFrictionCompensator</class>
  </compound>
  <compound kind="class">
    <name>sr_friction_compensation::SrFrictionCompensator</name>
    <filename>classsr__friction__compensation_1_1SrFrictionCompensator.html</filename>
    <member kind="function">
      <type>double</type>
      <name>friction_compensation</name>
      <anchorfile>classsr__friction__compensation_1_1SrFrictionCompensator.html</anchorfile>
      <anchor>a161fba16b05a7b3f11fa60542a2aa6f7</anchor>
      <arglist>(double position, double velocity, int force_demand, int deadband)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>SrFrictionCompensator</name>
      <anchorfile>classsr__friction__compensation_1_1SrFrictionCompensator.html</anchorfile>
      <anchor>a68ae4638fb5338ab0ce3e9f10841a1e8</anchor>
      <arglist>(std::string joint_name)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>~SrFrictionCompensator</name>
      <anchorfile>classsr__friction__compensation_1_1SrFrictionCompensator.html</anchorfile>
      <anchor>a06c75cdc02c65434d3499af435172183</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" protection="private">
      <type>std::vector&lt; joint_calibration::Point &gt;</type>
      <name>generate_flat_map</name>
      <anchorfile>classsr__friction__compensation_1_1SrFrictionCompensator.html</anchorfile>
      <anchor>aa6bcd99e1c8956da962ed55bc1596f26</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" protection="private">
      <type>std::pair&lt; std::vector&lt; joint_calibration::Point &gt;, std::vector&lt; joint_calibration::Point &gt; &gt;</type>
      <name>read_friction_map</name>
      <anchorfile>classsr__friction__compensation_1_1SrFrictionCompensator.html</anchorfile>
      <anchor>aa601667efb7b32d484b0d28787c66f82</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" protection="private">
      <type>std::vector&lt; joint_calibration::Point &gt;</type>
      <name>read_one_way_map</name>
      <anchorfile>classsr__friction__compensation_1_1SrFrictionCompensator.html</anchorfile>
      <anchor>adcd8002d2a4ae1ec37d25057ba6c989f</anchor>
      <arglist>(XmlRpc::XmlRpcValue raw_map)</arglist>
    </member>
    <member kind="variable" protection="private">
      <type>boost::shared_ptr&lt; shadow_robot::JointCalibration &gt;</type>
      <name>friction_interpoler_backward</name>
      <anchorfile>classsr__friction__compensation_1_1SrFrictionCompensator.html</anchorfile>
      <anchor>a223d4087fe97178f42cb088f362af913</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>boost::shared_ptr&lt; shadow_robot::JointCalibration &gt;</type>
      <name>friction_interpoler_forward</name>
      <anchorfile>classsr__friction__compensation_1_1SrFrictionCompensator.html</anchorfile>
      <anchor>aed6d8bfe6d81096bf62e1a6877f3efb6</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::string</type>
      <name>joint_name_</name>
      <anchorfile>classsr__friction__compensation_1_1SrFrictionCompensator.html</anchorfile>
      <anchor>a195c2b2c4bd261b2d3be3c2f15be5d1c</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>ros::NodeHandle</type>
      <name>node_</name>
      <anchorfile>classsr__friction__compensation_1_1SrFrictionCompensator.html</anchorfile>
      <anchor>a27ed3c7afe089d277faa9e0aab5f3b67</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private" static="yes">
      <type>static const double</type>
      <name>velocity_for_static_friction</name>
      <anchorfile>classsr__friction__compensation_1_1SrFrictionCompensator.html</anchorfile>
      <anchor>a637a3eb31d78b8b2d2c3922c5d939189</anchor>
      <arglist></arglist>
    </member>
  </compound>
</tagfile>
