<?xml version='1.0' encoding='ISO-8859-1' standalone='yes' ?>
<tagfile>
  <compound kind="file">
    <name>__init__.py</name>
    <path>/home/rosbuild/hudson/workspace/doc-fuerte-shadow_robot_ethercat/doc_stacks/2014-01-02_11-57-46.798058/shadow_robot_ethercat/sr_robot_lib/python_lib/</path>
    <filename>____init_____8py</filename>
    <namespace>python_lib</namespace>
  </compound>
  <compound kind="file">
    <name>biotac.cpp</name>
    <path>/home/rosbuild/hudson/workspace/doc-fuerte-shadow_robot_ethercat/doc_stacks/2014-01-02_11-57-46.798058/shadow_robot_ethercat/sr_robot_lib/src/</path>
    <filename>biotac_8cpp</filename>
    <includes id="biotac_8hpp" name="biotac.hpp" local="yes" imported="no">sr_robot_lib/biotac.hpp</includes>
  </compound>
  <compound kind="file">
    <name>biotac.hpp</name>
    <path>/home/rosbuild/hudson/workspace/doc-fuerte-shadow_robot_ethercat/doc_stacks/2014-01-02_11-57-46.798058/shadow_robot_ethercat/sr_robot_lib/include/sr_robot_lib/</path>
    <filename>biotac_8hpp</filename>
    <includes id="generic__tactiles_8hpp" name="generic_tactiles.hpp" local="yes" imported="no">sr_robot_lib/generic_tactiles.hpp</includes>
    <includes id="generic__updater_8hpp" name="generic_updater.hpp" local="yes" imported="no">sr_robot_lib/generic_updater.hpp</includes>
    <class kind="class">tactiles::Biotac</class>
  </compound>
  <compound kind="file">
    <name>compute_joint_0_target.py</name>
    <path>/home/rosbuild/hudson/workspace/doc-fuerte-shadow_robot_ethercat/doc_stacks/2014-01-02_11-57-46.798058/shadow_robot_ethercat/sr_robot_lib/examples/</path>
    <filename>compute__joint__0__target_8py</filename>
    <class kind="class">compute_joint_0_target::Merger</class>
    <namespace>compute_joint_0_target</namespace>
    <member kind="variable">
      <type>tuple</type>
      <name>merger</name>
      <anchorfile>namespacecompute__joint__0__target.html</anchorfile>
      <anchor>adc51f5e0cee2fe59e863a8481b790a9e</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>etherCAT_hand_lib.py</name>
    <path>/home/rosbuild/hudson/workspace/doc-fuerte-shadow_robot_ethercat/doc_stacks/2014-01-02_11-57-46.798058/shadow_robot_ethercat/sr_robot_lib/python_lib/</path>
    <filename>etherCAT__hand__lib_8py</filename>
    <class kind="class">python_lib::etherCAT_hand_lib::EtherCAT_Hand_Lib</class>
    <namespace>python_lib::etherCAT_hand_lib</namespace>
  </compound>
  <compound kind="file">
    <name>generic_tactiles.cpp</name>
    <path>/home/rosbuild/hudson/workspace/doc-fuerte-shadow_robot_ethercat/doc_stacks/2014-01-02_11-57-46.798058/shadow_robot_ethercat/sr_robot_lib/src/</path>
    <filename>generic__tactiles_8cpp</filename>
    <includes id="generic__tactiles_8hpp" name="generic_tactiles.hpp" local="yes" imported="no">sr_robot_lib/generic_tactiles.hpp</includes>
  </compound>
  <compound kind="file">
    <name>generic_tactiles.hpp</name>
    <path>/home/rosbuild/hudson/workspace/doc-fuerte-shadow_robot_ethercat/doc_stacks/2014-01-02_11-57-46.798058/shadow_robot_ethercat/sr_robot_lib/include/sr_robot_lib/</path>
    <filename>generic__tactiles_8hpp</filename>
    <includes id="generic__updater_8hpp" name="generic_updater.hpp" local="yes" imported="no">sr_robot_lib/generic_updater.hpp</includes>
    <includes id="sensor__updater_8hpp" name="sensor_updater.hpp" local="yes" imported="no">sr_robot_lib/sensor_updater.hpp</includes>
    <class kind="class">tactiles::GenericTactiles</class>
  </compound>
  <compound kind="file">
    <name>generic_updater.cpp</name>
    <path>/home/rosbuild/hudson/workspace/doc-fuerte-shadow_robot_ethercat/doc_stacks/2014-01-02_11-57-46.798058/shadow_robot_ethercat/sr_robot_lib/src/</path>
    <filename>generic__updater_8cpp</filename>
    <includes id="generic__updater_8hpp" name="generic_updater.hpp" local="yes" imported="no">sr_robot_lib/generic_updater.hpp</includes>
    <namespace>generic_updater</namespace>
  </compound>
  <compound kind="file">
    <name>generic_updater.hpp</name>
    <path>/home/rosbuild/hudson/workspace/doc-fuerte-shadow_robot_ethercat/doc_stacks/2014-01-02_11-57-46.798058/shadow_robot_ethercat/sr_robot_lib/include/sr_robot_lib/</path>
    <filename>generic__updater_8hpp</filename>
    <class kind="class">generic_updater::GenericUpdater</class>
    <class kind="struct">generic_updater::UpdateConfig</class>
    <namespace>generic_updater</namespace>
    <namespace>operation_mode</namespace>
    <namespace>operation_mode::device_update_state</namespace>
    <member kind="enumeration">
      <name>DeviceUpdateState</name>
      <anchorfile>namespaceoperation__mode_1_1device__update__state.html</anchorfile>
      <anchor>aba8015b3424a7b4a1450643cc0807a53</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>INITIALIZATION</name>
      <anchorfile>namespaceoperation__mode_1_1device__update__state.html</anchorfile>
      <anchor>aba8015b3424a7b4a1450643cc0807a53a8d01f932abb0893d366f11d7b549410f</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>OPERATION</name>
      <anchorfile>namespaceoperation__mode_1_1device__update__state.html</anchorfile>
      <anchor>aba8015b3424a7b4a1450643cc0807a53a73fcb6d2534877e981b54876ab21c8ba</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>mainpage.dox</name>
    <path>/home/rosbuild/hudson/workspace/doc-fuerte-shadow_robot_ethercat/doc_stacks/2014-01-02_11-57-46.798058/shadow_robot_ethercat/sr_robot_lib/</path>
    <filename>mainpage_8dox</filename>
  </compound>
  <compound kind="file">
    <name>motor_data_checker.cpp</name>
    <path>/home/rosbuild/hudson/workspace/doc-fuerte-shadow_robot_ethercat/doc_stacks/2014-01-02_11-57-46.798058/shadow_robot_ethercat/sr_robot_lib/src/</path>
    <filename>motor__data__checker_8cpp</filename>
    <includes id="motor__data__checker_8hpp" name="motor_data_checker.hpp" local="yes" imported="no">sr_robot_lib/motor_data_checker.hpp</includes>
    <namespace>generic_updater</namespace>
  </compound>
  <compound kind="file">
    <name>motor_data_checker.hpp</name>
    <path>/home/rosbuild/hudson/workspace/doc-fuerte-shadow_robot_ethercat/doc_stacks/2014-01-02_11-57-46.798058/shadow_robot_ethercat/sr_robot_lib/include/sr_robot_lib/</path>
    <filename>motor__data__checker_8hpp</filename>
    <includes id="sr__joint__motor_8hpp" name="sr_joint_motor.hpp" local="yes" imported="no">sr_robot_lib/sr_joint_motor.hpp</includes>
    <includes id="generic__updater_8hpp" name="generic_updater.hpp" local="yes" imported="no">sr_robot_lib/generic_updater.hpp</includes>
    <class kind="class">generic_updater::MessageChecker</class>
    <class kind="class">generic_updater::MessageFromMotorChecker</class>
    <class kind="class">generic_updater::MotorDataChecker</class>
    <class kind="class">generic_updater::SlowMessageFromMotorChecker</class>
    <namespace>generic_updater</namespace>
  </compound>
  <compound kind="file">
    <name>motor_updater.cpp</name>
    <path>/home/rosbuild/hudson/workspace/doc-fuerte-shadow_robot_ethercat/doc_stacks/2014-01-02_11-57-46.798058/shadow_robot_ethercat/sr_robot_lib/src/</path>
    <filename>motor__updater_8cpp</filename>
    <includes id="motor__updater_8hpp" name="motor_updater.hpp" local="yes" imported="no">sr_robot_lib/motor_updater.hpp</includes>
    <namespace>generic_updater</namespace>
  </compound>
  <compound kind="file">
    <name>motor_updater.hpp</name>
    <path>/home/rosbuild/hudson/workspace/doc-fuerte-shadow_robot_ethercat/doc_stacks/2014-01-02_11-57-46.798058/shadow_robot_ethercat/sr_robot_lib/include/sr_robot_lib/</path>
    <filename>motor__updater_8hpp</filename>
    <includes id="generic__updater_8hpp" name="generic_updater.hpp" local="yes" imported="no">sr_robot_lib/generic_updater.hpp</includes>
    <class kind="class">generic_updater::MotorUpdater</class>
    <namespace>generic_updater</namespace>
  </compound>
  <compound kind="file">
    <name>motor_updater_test.cpp</name>
    <path>/home/rosbuild/hudson/workspace/doc-fuerte-shadow_robot_ethercat/doc_stacks/2014-01-02_11-57-46.798058/shadow_robot_ethercat/sr_robot_lib/test/</path>
    <filename>motor__updater__test_8cpp</filename>
    <includes id="motor__updater_8hpp" name="motor_updater.hpp" local="yes" imported="no">sr_robot_lib/motor_updater.hpp</includes>
    <class kind="class">MotorUpdaterTest</class>
    <class kind="struct">UpdaterResult</class>
    <member kind="function">
      <type>int</type>
      <name>main</name>
      <anchorfile>motor__updater__test_8cpp.html</anchorfile>
      <anchor>a3c04138a5bfe5d72780bb7e82a18e627</anchor>
      <arglist>(int argc, char **argv)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>TEST</name>
      <anchorfile>motor__updater__test_8cpp.html</anchorfile>
      <anchor>a77ccf2a65a39d0a7919aba00e47385de</anchor>
      <arglist>(Utils, motor_updater_freq_low_tolerancy)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>TEST</name>
      <anchorfile>motor__updater__test_8cpp.html</anchorfile>
      <anchor>a643bc3aa6c522d5fa340a97374f9ef3d</anchor>
      <arglist>(Utils, motor_updater_freq_medium_tolerancy)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>TEST</name>
      <anchorfile>motor__updater__test_8cpp.html</anchorfile>
      <anchor>a50c410a83278153ed02bd2c6977c4818</anchor>
      <arglist>(Utils, motor_updater_freq_high_tolerancy)</arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>sensor_updater.cpp</name>
    <path>/home/rosbuild/hudson/workspace/doc-fuerte-shadow_robot_ethercat/doc_stacks/2014-01-02_11-57-46.798058/shadow_robot_ethercat/sr_robot_lib/src/</path>
    <filename>sensor__updater_8cpp</filename>
    <includes id="sensor__updater_8hpp" name="sensor_updater.hpp" local="yes" imported="no">sr_robot_lib/sensor_updater.hpp</includes>
    <namespace>generic_updater</namespace>
  </compound>
  <compound kind="file">
    <name>sensor_updater.hpp</name>
    <path>/home/rosbuild/hudson/workspace/doc-fuerte-shadow_robot_ethercat/doc_stacks/2014-01-02_11-57-46.798058/shadow_robot_ethercat/sr_robot_lib/include/sr_robot_lib/</path>
    <filename>sensor__updater_8hpp</filename>
    <includes id="generic__updater_8hpp" name="generic_updater.hpp" local="yes" imported="no">sr_robot_lib/generic_updater.hpp</includes>
    <class kind="class">generic_updater::SensorUpdater</class>
    <namespace>generic_updater</namespace>
  </compound>
  <compound kind="file">
    <name>shadow_PSTs.cpp</name>
    <path>/home/rosbuild/hudson/workspace/doc-fuerte-shadow_robot_ethercat/doc_stacks/2014-01-02_11-57-46.798058/shadow_robot_ethercat/sr_robot_lib/src/</path>
    <filename>shadow__PSTs_8cpp</filename>
    <includes id="shadow__PSTs_8hpp" name="shadow_PSTs.hpp" local="yes" imported="no">sr_robot_lib/shadow_PSTs.hpp</includes>
  </compound>
  <compound kind="file">
    <name>shadow_PSTs.hpp</name>
    <path>/home/rosbuild/hudson/workspace/doc-fuerte-shadow_robot_ethercat/doc_stacks/2014-01-02_11-57-46.798058/shadow_robot_ethercat/sr_robot_lib/include/sr_robot_lib/</path>
    <filename>shadow__PSTs_8hpp</filename>
    <includes id="generic__tactiles_8hpp" name="generic_tactiles.hpp" local="yes" imported="no">sr_robot_lib/generic_tactiles.hpp</includes>
    <includes id="generic__updater_8hpp" name="generic_updater.hpp" local="yes" imported="no">sr_robot_lib/generic_updater.hpp</includes>
    <class kind="class">tactiles::ShadowPSTs</class>
  </compound>
  <compound kind="file">
    <name>sr_hand_lib.cpp</name>
    <path>/home/rosbuild/hudson/workspace/doc-fuerte-shadow_robot_ethercat/doc_stacks/2014-01-02_11-57-46.798058/shadow_robot_ethercat/sr_robot_lib/src/</path>
    <filename>sr__hand__lib_8cpp</filename>
    <includes id="sr__hand__lib_8hpp" name="sr_hand_lib.hpp" local="yes" imported="no">sr_robot_lib/sr_hand_lib.hpp</includes>
    <includes id="shadow__PSTs_8hpp" name="shadow_PSTs.hpp" local="yes" imported="no">sr_robot_lib/shadow_PSTs.hpp</includes>
  </compound>
  <compound kind="file">
    <name>sr_hand_lib.hpp</name>
    <path>/home/rosbuild/hudson/workspace/doc-fuerte-shadow_robot_ethercat/doc_stacks/2014-01-02_11-57-46.798058/shadow_robot_ethercat/sr_robot_lib/include/sr_robot_lib/</path>
    <filename>sr__hand__lib_8hpp</filename>
    <includes id="sr__robot__lib_8hpp" name="sr_robot_lib.hpp" local="yes" imported="no">sr_robot_lib/sr_robot_lib.hpp</includes>
    <class kind="class">shadow_robot::SrHandLib</class>
  </compound>
  <compound kind="file">
    <name>sr_joint_motor.hpp</name>
    <path>/home/rosbuild/hudson/workspace/doc-fuerte-shadow_robot_ethercat/doc_stacks/2014-01-02_11-57-46.798058/shadow_robot_ethercat/sr_robot_lib/include/sr_robot_lib/</path>
    <filename>sr__joint__motor_8hpp</filename>
    <class kind="struct">shadow_joints::Joint</class>
    <class kind="struct">shadow_joints::JointToSensor</class>
    <class kind="class">shadow_joints::Motor</class>
    <class kind="struct">shadow_joints::PartialJointToSensor</class>
    <namespace>shadow_joints</namespace>
    <member kind="typedef">
      <type>threadsafe::Map&lt; boost::shared_ptr&lt; shadow_robot::JointCalibration &gt; &gt;</type>
      <name>CalibrationMap</name>
      <anchorfile>namespaceshadow__joints.html</anchorfile>
      <anchor>a635ffd5f65102142a81950f86837be14</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>sr_robot_lib.cpp</name>
    <path>/home/rosbuild/hudson/workspace/doc-fuerte-shadow_robot_ethercat/doc_stacks/2014-01-02_11-57-46.798058/shadow_robot_ethercat/sr_robot_lib/src/</path>
    <filename>sr__robot__lib_8cpp</filename>
    <includes id="sr__hand__lib_8hpp" name="sr_hand_lib.hpp" local="yes" imported="no">sr_robot_lib/sr_hand_lib.hpp</includes>
    <includes id="shadow__PSTs_8hpp" name="shadow_PSTs.hpp" local="yes" imported="no">sr_robot_lib/shadow_PSTs.hpp</includes>
    <includes id="biotac_8hpp" name="biotac.hpp" local="yes" imported="no">sr_robot_lib/biotac.hpp</includes>
  </compound>
  <compound kind="file">
    <name>sr_robot_lib.hpp</name>
    <path>/home/rosbuild/hudson/workspace/doc-fuerte-shadow_robot_ethercat/doc_stacks/2014-01-02_11-57-46.798058/shadow_robot_ethercat/sr_robot_lib/include/sr_robot_lib/</path>
    <filename>sr__robot__lib_8hpp</filename>
    <includes id="sr__joint__motor_8hpp" name="sr_joint_motor.hpp" local="yes" imported="no">sr_robot_lib/sr_joint_motor.hpp</includes>
    <includes id="motor__updater_8hpp" name="motor_updater.hpp" local="yes" imported="no">sr_robot_lib/motor_updater.hpp</includes>
    <includes id="generic__tactiles_8hpp" name="generic_tactiles.hpp" local="yes" imported="no">sr_robot_lib/generic_tactiles.hpp</includes>
    <includes id="motor__data__checker_8hpp" name="motor_data_checker.hpp" local="yes" imported="no">sr_robot_lib/motor_data_checker.hpp</includes>
    <class kind="class">shadow_robot::SrRobotLib</class>
    <class kind="union">crc_unions::union16</class>
    <namespace>crc_unions</namespace>
    <namespace>operation_mode</namespace>
    <namespace>operation_mode::robot_state</namespace>
    <member kind="enumeration">
      <name>RobotState</name>
      <anchorfile>namespaceoperation__mode_1_1robot__state.html</anchorfile>
      <anchor>a04aea0c02d96c835847f6e9770106651</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>INITIALIZATION</name>
      <anchorfile>namespaceoperation__mode_1_1robot__state.html</anchorfile>
      <anchor>a04aea0c02d96c835847f6e9770106651ae79c3a714b478b24200b15b56397e3ff</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>OPERATION</name>
      <anchorfile>namespaceoperation__mode_1_1robot__state.html</anchorfile>
      <anchor>a04aea0c02d96c835847f6e9770106651acd55ec55c22bcafb303449be732b5aef</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>SHUTDOWN</name>
      <anchorfile>namespaceoperation__mode_1_1robot__state.html</anchorfile>
      <anchor>a04aea0c02d96c835847f6e9770106651a81a061b1c31ecf239ca03ba42963c764</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>test_robot_lib.cpp</name>
    <path>/home/rosbuild/hudson/workspace/doc-fuerte-shadow_robot_ethercat/doc_stacks/2014-01-02_11-57-46.798058/shadow_robot_ethercat/sr_robot_lib/test/</path>
    <filename>test__robot__lib_8cpp</filename>
    <includes id="sr__hand__lib_8hpp" name="sr_hand_lib.hpp" local="yes" imported="no">sr_robot_lib/sr_hand_lib.hpp</includes>
    <class kind="class">HandLibTest</class>
    <class kind="class">HandLibTestProtected</class>
    <class kind="class">TestHandLib</class>
    <member kind="function">
      <type>int</type>
      <name>main</name>
      <anchorfile>test__robot__lib_8cpp.html</anchorfile>
      <anchor>a3c04138a5bfe5d72780bb7e82a18e627</anchor>
      <arglist>(int argc, char **argv)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>TEST</name>
      <anchorfile>test__robot__lib_8cpp.html</anchorfile>
      <anchor>a223b73d56106d1e3aa6ff53a034cc390</anchor>
      <arglist>(SrRobotLib, Initialization)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>TEST</name>
      <anchorfile>test__robot__lib_8cpp.html</anchorfile>
      <anchor>aba920b89d109fbbf4f2eac858b66221a</anchor>
      <arglist>(SrRobotLib, UpdateMotor)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>TEST</name>
      <anchorfile>test__robot__lib_8cpp.html</anchorfile>
      <anchor>a1365453ffd73a340edb60ecd3d871598</anchor>
      <arglist>(SrRobotLib, UpdateActuators)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>TEST</name>
      <anchorfile>test__robot__lib_8cpp.html</anchorfile>
      <anchor>a06a6ee146c7f4d2886f993d297b27cb1</anchor>
      <arglist>(SrRobotLib, HumanizeFlags)</arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>HandLibTest</name>
    <filename>classHandLibTest.html</filename>
    <member kind="function">
      <type>void</type>
      <name>check_hw_actuator</name>
      <anchorfile>classHandLibTest.html</anchorfile>
      <anchor>a90683bae2ed3d5a15e7d96ca65e24784</anchor>
      <arglist>(std::string name, int motor_id, int id_in_enum, double expected_pos)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>HandLibTest</name>
      <anchorfile>classHandLibTest.html</anchorfile>
      <anchor>a6e03fd15bab63cf81e75f9e3a2ddf3dd</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>~HandLibTest</name>
      <anchorfile>classHandLibTest.html</anchorfile>
      <anchor>a6c6a52e355cd710acd9ea6be626f8d9c</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="variable">
      <type>sr_actuator::SrActuator *</type>
      <name>actuator</name>
      <anchorfile>classHandLibTest.html</anchorfile>
      <anchor>a6659ebcdb6536c422c531c798210bec2</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>pr2_hardware_interface::HardwareInterface *</type>
      <name>hw</name>
      <anchorfile>classHandLibTest.html</anchorfile>
      <anchor>a3f423a188f125d1b1158dca8a879dbac</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>boost::shared_ptr&lt; HandLibTestProtected &gt;</type>
      <name>sr_hand_lib</name>
      <anchorfile>classHandLibTest.html</anchorfile>
      <anchor>a9f73fca31c5b952cfad99883a2716f46</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>HandLibTestProtected</name>
    <filename>classHandLibTestProtected.html</filename>
    <base>shadow_robot::SrHandLib</base>
    <member kind="function">
      <type></type>
      <name>HandLibTestProtected</name>
      <anchorfile>classHandLibTestProtected.html</anchorfile>
      <anchor>ae7493966a95b6a67fbf3eb5fe8937ef7</anchor>
      <arglist>(pr2_hardware_interface::HardwareInterface *hw)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>~HandLibTestProtected</name>
      <anchorfile>classHandLibTestProtected.html</anchorfile>
      <anchor>a920ba6c7fe411bd72794f58cff405e5c</anchor>
      <arglist>()</arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>MotorUpdaterTest</name>
    <filename>classMotorUpdaterTest.html</filename>
    <member kind="function">
      <type>UpdaterResult</type>
      <name>check_updates</name>
      <anchorfile>classMotorUpdaterTest.html</anchorfile>
      <anchor>a95d8aae9b2ca4d3640e7c08ea1f22b61</anchor>
      <arglist>(double tolerancy)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>MotorUpdaterTest</name>
      <anchorfile>classMotorUpdaterTest.html</anchorfile>
      <anchor>aaebcd9348998f34abd7f47c7f4ed35f9</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>~MotorUpdaterTest</name>
      <anchorfile>classMotorUpdaterTest.html</anchorfile>
      <anchor>aa4a30ef2aedf5d07b6bb68525d3f3685</anchor>
      <arglist>()</arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>TestHandLib</name>
    <filename>classTestHandLib.html</filename>
    <base>HandLibTestProtected</base>
    <member kind="function">
      <type></type>
      <name>TestHandLib</name>
      <anchorfile>classTestHandLib.html</anchorfile>
      <anchor>a073d221c327bfa5c69a14b3d4f88f810</anchor>
      <arglist>(pr2_hardware_interface::HardwareInterface *hw)</arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>UpdaterResult</name>
    <filename>structUpdaterResult.html</filename>
    <member kind="variable">
      <type>int</type>
      <name>can_num_transmitted_counter</name>
      <anchorfile>structUpdaterResult.html</anchorfile>
      <anchor>a99e29221dfc4d28588087912a618b50f</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>bool</type>
      <name>svn_transmitted</name>
      <anchorfile>structUpdaterResult.html</anchorfile>
      <anchor>a39c20f6879a22e5583463a893022480d</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>bool</type>
      <name>svn_transmitted_once</name>
      <anchorfile>structUpdaterResult.html</anchorfile>
      <anchor>ab27e8a9f3aa40302d23d6c57e6c3ea8f</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="namespace">
    <name>compute_joint_0_target</name>
    <filename>namespacecompute__joint__0__target.html</filename>
    <class kind="class">compute_joint_0_target::Merger</class>
    <member kind="variable">
      <type>tuple</type>
      <name>merger</name>
      <anchorfile>namespacecompute__joint__0__target.html</anchorfile>
      <anchor>adc51f5e0cee2fe59e863a8481b790a9e</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>compute_joint_0_target::Merger</name>
    <filename>classcompute__joint__0__target_1_1Merger.html</filename>
    <member kind="function">
      <type>def</type>
      <name>__init__</name>
      <anchorfile>classcompute__joint__0__target_1_1Merger.html</anchorfile>
      <anchor>a365a87be4ccbe64dc9e1edd1763907a9</anchor>
      <arglist></arglist>
    </member>
    <member kind="function">
      <type>def</type>
      <name>callback</name>
      <anchorfile>classcompute__joint__0__target_1_1Merger.html</anchorfile>
      <anchor>adb7745ee517c86ab0621ef1fda0b313c</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type></type>
      <name>publisher</name>
      <anchorfile>classcompute__joint__0__target_1_1Merger.html</anchorfile>
      <anchor>aa74539f78771a652921cc0e6092b8598</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type></type>
      <name>subscriber</name>
      <anchorfile>classcompute__joint__0__target_1_1Merger.html</anchorfile>
      <anchor>a010707e4a989241e6e5d2b0bd66176d3</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="namespace">
    <name>crc_unions</name>
    <filename>namespacecrc__unions.html</filename>
    <class kind="union">crc_unions::union16</class>
  </compound>
  <compound kind="union">
    <name>crc_unions::union16</name>
    <filename>unioncrc__unions_1_1union16.html</filename>
    <member kind="variable">
      <type>int8u</type>
      <name>byte</name>
      <anchorfile>unioncrc__unions_1_1union16.html</anchorfile>
      <anchor>aeb7926de58ad5bf5151087b94dc2b45e</anchor>
      <arglist>[2]</arglist>
    </member>
    <member kind="variable">
      <type>int16u</type>
      <name>word</name>
      <anchorfile>unioncrc__unions_1_1union16.html</anchorfile>
      <anchor>a28405b25f9205f69b9ae317e939335f7</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="namespace">
    <name>generic_updater</name>
    <filename>namespacegeneric__updater.html</filename>
    <class kind="class">generic_updater::GenericUpdater</class>
    <class kind="class">generic_updater::MessageChecker</class>
    <class kind="class">generic_updater::MessageFromMotorChecker</class>
    <class kind="class">generic_updater::MotorDataChecker</class>
    <class kind="class">generic_updater::MotorUpdater</class>
    <class kind="class">generic_updater::SensorUpdater</class>
    <class kind="class">generic_updater::SlowMessageFromMotorChecker</class>
    <class kind="struct">generic_updater::UpdateConfig</class>
  </compound>
  <compound kind="class">
    <name>generic_updater::GenericUpdater</name>
    <filename>classgeneric__updater_1_1GenericUpdater.html</filename>
    <member kind="function" virtualness="pure">
      <type>virtual operation_mode::device_update_state::DeviceUpdateState</type>
      <name>build_command</name>
      <anchorfile>classgeneric__updater_1_1GenericUpdater.html</anchorfile>
      <anchor>aba2c76111e04a068e963025f18fb991e</anchor>
      <arglist>(ETHERCAT_DATA_STRUCTURE_0200_PALM_EDC_COMMAND *command)=0</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>GenericUpdater</name>
      <anchorfile>classgeneric__updater_1_1GenericUpdater.html</anchorfile>
      <anchor>a9cb60ca3a33dd22cc9c04abba3387bb6</anchor>
      <arglist>(std::vector&lt; UpdateConfig &gt; update_configs_vector, operation_mode::device_update_state::DeviceUpdateState update_state)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>timer_callback</name>
      <anchorfile>classgeneric__updater_1_1GenericUpdater.html</anchorfile>
      <anchor>a855ef4b38c699ca5361a9ebd87765279</anchor>
      <arglist>(const ros::TimerEvent &amp;event, FROM_MOTOR_DATA_TYPE data_type)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>~GenericUpdater</name>
      <anchorfile>classgeneric__updater_1_1GenericUpdater.html</anchorfile>
      <anchor>af2f5aa59cda37764adee6711c3e5881a</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="variable">
      <type>std::vector&lt; UpdateConfig &gt;</type>
      <name>initialization_configs_vector</name>
      <anchorfile>classgeneric__updater_1_1GenericUpdater.html</anchorfile>
      <anchor>a14f5f6f18f6a7719889d6a3fd4b430f3</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>operation_mode::device_update_state::DeviceUpdateState</type>
      <name>update_state</name>
      <anchorfile>classgeneric__updater_1_1GenericUpdater.html</anchorfile>
      <anchor>aa3773f5bcb7ea6d0f1742ba0111bd082</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>std::vector&lt; UpdateConfig &gt;</type>
      <name>important_update_configs_vector</name>
      <anchorfile>classgeneric__updater_1_1GenericUpdater.html</anchorfile>
      <anchor>a09fedc5bf19e64534dc1751310d594ce</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>boost::shared_ptr&lt; boost::mutex &gt;</type>
      <name>mutex</name>
      <anchorfile>classgeneric__updater_1_1GenericUpdater.html</anchorfile>
      <anchor>a0245a904a8d76050032135ea2e1b1e4f</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>ros::NodeHandle</type>
      <name>nh_tilde</name>
      <anchorfile>classgeneric__updater_1_1GenericUpdater.html</anchorfile>
      <anchor>a2d0350ba85ad003549b339d6dc967590</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>std::vector&lt; ros::Timer &gt;</type>
      <name>timers</name>
      <anchorfile>classgeneric__updater_1_1GenericUpdater.html</anchorfile>
      <anchor>a17a7d93c2cfbb26222992c2f3cac2bf3</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>std::queue&lt; int32u, std::list&lt; int32u &gt; &gt;</type>
      <name>unimportant_data_queue</name>
      <anchorfile>classgeneric__updater_1_1GenericUpdater.html</anchorfile>
      <anchor>a146037e60ce7c524af22d0bfc8635f9d</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>std::vector&lt; UpdateConfig &gt;</type>
      <name>update_configs_vector</name>
      <anchorfile>classgeneric__updater_1_1GenericUpdater.html</anchorfile>
      <anchor>ac00ac98a80cae9deeb7f0c1c2e6f221b</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>int</type>
      <name>which_data_to_request</name>
      <anchorfile>classgeneric__updater_1_1GenericUpdater.html</anchorfile>
      <anchor>ac625ab195a046721d30493a7fcfd00df</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>generic_updater::MessageChecker</name>
    <filename>classgeneric__updater_1_1MessageChecker.html</filename>
    <member kind="function">
      <type>int</type>
      <name>find</name>
      <anchorfile>classgeneric__updater_1_1MessageChecker.html</anchorfile>
      <anchor>ac8ef8b47daab481212f73ddec57bfd62</anchor>
      <arglist>(int motor_id)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>MessageChecker</name>
      <anchorfile>classgeneric__updater_1_1MessageChecker.html</anchorfile>
      <anchor>a1801262aacbcac0ebcb1078c14822919</anchor>
      <arglist>(FROM_MOTOR_DATA_TYPE msg_type)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>~MessageChecker</name>
      <anchorfile>classgeneric__updater_1_1MessageChecker.html</anchorfile>
      <anchor>a4adc71e8d6cd57e102212d3b49ac69be</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="variable">
      <type>std::vector&lt; MessageFromMotorChecker * &gt;</type>
      <name>msg_from_motor_checkers</name>
      <anchorfile>classgeneric__updater_1_1MessageChecker.html</anchorfile>
      <anchor>a549659bee625626cc6f1556ecea83780</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>FROM_MOTOR_DATA_TYPE</type>
      <name>msg_type</name>
      <anchorfile>classgeneric__updater_1_1MessageChecker.html</anchorfile>
      <anchor>ae7844034a1f40fb2e21a2c8e03df77bc</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>generic_updater::MessageFromMotorChecker</name>
    <filename>classgeneric__updater_1_1MessageFromMotorChecker.html</filename>
    <member kind="function">
      <type>bool</type>
      <name>get_received</name>
      <anchorfile>classgeneric__updater_1_1MessageFromMotorChecker.html</anchorfile>
      <anchor>ac95e6d56e53faad1510c5fd1ab077772</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>MessageFromMotorChecker</name>
      <anchorfile>classgeneric__updater_1_1MessageFromMotorChecker.html</anchorfile>
      <anchor>a5ef18f76d4703b5f878e166dc20fab09</anchor>
      <arglist>(int id)</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual void</type>
      <name>set_received</name>
      <anchorfile>classgeneric__updater_1_1MessageFromMotorChecker.html</anchorfile>
      <anchor>a1128ff822c13395a640276f6d3b59c20</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>~MessageFromMotorChecker</name>
      <anchorfile>classgeneric__updater_1_1MessageFromMotorChecker.html</anchorfile>
      <anchor>a748158c42f943db4b6f220c21b6e4c6b</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="variable">
      <type>int</type>
      <name>motor_id_</name>
      <anchorfile>classgeneric__updater_1_1MessageFromMotorChecker.html</anchorfile>
      <anchor>aa10d18e53b014b033584714dcd9c1a62</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>bool</type>
      <name>received_</name>
      <anchorfile>classgeneric__updater_1_1MessageFromMotorChecker.html</anchorfile>
      <anchor>afb86f8473b7f3363b3cb24841308a66a</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>generic_updater::MotorDataChecker</name>
    <filename>classgeneric__updater_1_1MotorDataChecker.html</filename>
    <member kind="function">
      <type>bool</type>
      <name>check_message</name>
      <anchorfile>classgeneric__updater_1_1MotorDataChecker.html</anchorfile>
      <anchor>ab49761abfbf1efe117e763d7127003e5</anchor>
      <arglist>(boost::ptr_vector&lt; shadow_joints::Joint &gt;::iterator joint_tmp, FROM_MOTOR_DATA_TYPE motor_data_type, int16u motor_slow_data_type)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>init</name>
      <anchorfile>classgeneric__updater_1_1MotorDataChecker.html</anchorfile>
      <anchor>aff16d52e22deecfef08c25e5ed20c7a1</anchor>
      <arglist>(boost::ptr_vector&lt; shadow_joints::Joint &gt; joints_vector, std::vector&lt; UpdateConfig &gt; initialization_configs_vector)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>MotorDataChecker</name>
      <anchorfile>classgeneric__updater_1_1MotorDataChecker.html</anchorfile>
      <anchor>ad07599bd3a224a495246eced591158b5</anchor>
      <arglist>(boost::ptr_vector&lt; shadow_joints::Joint &gt; joints_vector, std::vector&lt; UpdateConfig &gt; initialization_configs_vector)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>~MotorDataChecker</name>
      <anchorfile>classgeneric__updater_1_1MotorDataChecker.html</anchorfile>
      <anchor>a7c3ddbf5455f674da26bc89a13aa095b</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" protection="protected">
      <type>int</type>
      <name>find</name>
      <anchorfile>classgeneric__updater_1_1MotorDataChecker.html</anchorfile>
      <anchor>a5972f6885a93b0c1ea0f8e4140ace68e</anchor>
      <arglist>(FROM_MOTOR_DATA_TYPE motor_data_type)</arglist>
    </member>
    <member kind="function" protection="protected">
      <type>bool</type>
      <name>is_everything_checked</name>
      <anchorfile>classgeneric__updater_1_1MotorDataChecker.html</anchorfile>
      <anchor>a02372a6ceaee2a4784fea1159ddbed1c</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" protection="protected">
      <type>void</type>
      <name>timer_callback</name>
      <anchorfile>classgeneric__updater_1_1MotorDataChecker.html</anchorfile>
      <anchor>af5368b6b0a2ac6b4bbdad49b197cb99f</anchor>
      <arglist>(const ros::TimerEvent &amp;event)</arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>ros::Timer</type>
      <name>check_timeout_timer</name>
      <anchorfile>classgeneric__updater_1_1MotorDataChecker.html</anchorfile>
      <anchor>a6a66e39447fef285c5551d8fea1906d1</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>ros::Duration</type>
      <name>init_max_duration</name>
      <anchorfile>classgeneric__updater_1_1MotorDataChecker.html</anchorfile>
      <anchor>ac0ede364a8d9eab602bbc4235f7c5288</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>std::vector&lt; MessageChecker &gt;</type>
      <name>msg_checkers_</name>
      <anchorfile>classgeneric__updater_1_1MotorDataChecker.html</anchorfile>
      <anchor>ac69fa91df755636833dbdde62e58a67c</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>ros::NodeHandle</type>
      <name>nh_tilde</name>
      <anchorfile>classgeneric__updater_1_1MotorDataChecker.html</anchorfile>
      <anchor>ab005649d863539063c17ea423270a8b7</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>operation_mode::device_update_state::DeviceUpdateState</type>
      <name>update_state</name>
      <anchorfile>classgeneric__updater_1_1MotorDataChecker.html</anchorfile>
      <anchor>a2c7d7c25063457a829809ee673d4fcb6</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected" static="yes">
      <type>static const double</type>
      <name>timeout</name>
      <anchorfile>classgeneric__updater_1_1MotorDataChecker.html</anchorfile>
      <anchor>a2f0698c9c3d6bae74d5e80b309a91412</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>generic_updater::MotorUpdater</name>
    <filename>classgeneric__updater_1_1MotorUpdater.html</filename>
    <base>generic_updater::GenericUpdater</base>
    <member kind="function">
      <type>operation_mode::device_update_state::DeviceUpdateState</type>
      <name>build_command</name>
      <anchorfile>classgeneric__updater_1_1MotorUpdater.html</anchorfile>
      <anchor>ae0d1f19aeec5442fd2d087080274ccee</anchor>
      <arglist>(ETHERCAT_DATA_STRUCTURE_0200_PALM_EDC_COMMAND *command)</arglist>
    </member>
    <member kind="function">
      <type>operation_mode::device_update_state::DeviceUpdateState</type>
      <name>build_init_command</name>
      <anchorfile>classgeneric__updater_1_1MotorUpdater.html</anchorfile>
      <anchor>a1cca7b33a4506ba19f364f7e65362b7a</anchor>
      <arglist>(ETHERCAT_DATA_STRUCTURE_0200_PALM_EDC_COMMAND *command)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>MotorUpdater</name>
      <anchorfile>classgeneric__updater_1_1MotorUpdater.html</anchorfile>
      <anchor>af36c5fc0f396419a590d7483b91c9ef6</anchor>
      <arglist>(std::vector&lt; UpdateConfig &gt; update_configs_vector, operation_mode::device_update_state::DeviceUpdateState update_state)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>timer_callback</name>
      <anchorfile>classgeneric__updater_1_1MotorUpdater.html</anchorfile>
      <anchor>a60aa692b72c2911fa6b8db23e4574286</anchor>
      <arglist>(const ros::TimerEvent &amp;event, FROM_MOTOR_DATA_TYPE data_type)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>~MotorUpdater</name>
      <anchorfile>classgeneric__updater_1_1MotorUpdater.html</anchorfile>
      <anchor>a855321bcb597f61e557f858163580d67</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="variable" protection="private">
      <type>int</type>
      <name>even_motors</name>
      <anchorfile>classgeneric__updater_1_1MotorUpdater.html</anchorfile>
      <anchor>a81589e2562a881e70bb0cd5d1bda8191</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>generic_updater::SensorUpdater</name>
    <filename>classgeneric__updater_1_1SensorUpdater.html</filename>
    <base>generic_updater::GenericUpdater</base>
    <member kind="function">
      <type>operation_mode::device_update_state::DeviceUpdateState</type>
      <name>build_command</name>
      <anchorfile>classgeneric__updater_1_1SensorUpdater.html</anchorfile>
      <anchor>a36dd2078baf191a81f618c9be93cb013</anchor>
      <arglist>(ETHERCAT_DATA_STRUCTURE_0200_PALM_EDC_COMMAND *command)</arglist>
    </member>
    <member kind="function">
      <type>operation_mode::device_update_state::DeviceUpdateState</type>
      <name>build_init_command</name>
      <anchorfile>classgeneric__updater_1_1SensorUpdater.html</anchorfile>
      <anchor>a8901676286200cb27c55c1db904db342</anchor>
      <arglist>(ETHERCAT_DATA_STRUCTURE_0200_PALM_EDC_COMMAND *command)</arglist>
    </member>
    <member kind="function">
      <type>bool</type>
      <name>reset</name>
      <anchorfile>classgeneric__updater_1_1SensorUpdater.html</anchorfile>
      <anchor>af9f5b432b5fc6894590da6c61c7b0357</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>SensorUpdater</name>
      <anchorfile>classgeneric__updater_1_1SensorUpdater.html</anchorfile>
      <anchor>a401c3be846484fc0655226b7bbfe6abe</anchor>
      <arglist>(std::vector&lt; UpdateConfig &gt; update_configs_vector, operation_mode::device_update_state::DeviceUpdateState update_state)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>timer_callback</name>
      <anchorfile>classgeneric__updater_1_1SensorUpdater.html</anchorfile>
      <anchor>ae7bbbf5a77da530f8b3ea0ab8db22228</anchor>
      <arglist>(const ros::TimerEvent &amp;event, FROM_MOTOR_DATA_TYPE data_type)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>~SensorUpdater</name>
      <anchorfile>classgeneric__updater_1_1SensorUpdater.html</anchorfile>
      <anchor>afef17cfc04a43ae5bc3df1b17a942fd2</anchor>
      <arglist>()</arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>generic_updater::SlowMessageFromMotorChecker</name>
    <filename>classgeneric__updater_1_1SlowMessageFromMotorChecker.html</filename>
    <base>generic_updater::MessageFromMotorChecker</base>
    <member kind="function" virtualness="virtual">
      <type>virtual void</type>
      <name>set_received</name>
      <anchorfile>classgeneric__updater_1_1SlowMessageFromMotorChecker.html</anchorfile>
      <anchor>a7d015080fef6a9e7965117379065d2d2</anchor>
      <arglist>(FROM_MOTOR_SLOW_DATA_TYPE slow_data_type)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>SlowMessageFromMotorChecker</name>
      <anchorfile>classgeneric__updater_1_1SlowMessageFromMotorChecker.html</anchorfile>
      <anchor>a3923494278c18813f9b685396af5f8b8</anchor>
      <arglist>(int id)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>~SlowMessageFromMotorChecker</name>
      <anchorfile>classgeneric__updater_1_1SlowMessageFromMotorChecker.html</anchorfile>
      <anchor>a7e726fb1bd6b5f088603b5f588224deb</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="variable">
      <type>boost::array&lt; bool, MOTOR_SLOW_DATA_LAST+1 &gt;</type>
      <name>slow_data_received</name>
      <anchorfile>classgeneric__updater_1_1SlowMessageFromMotorChecker.html</anchorfile>
      <anchor>a653e6e9211dd719d27624cd4f31703ba</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>generic_updater::UpdateConfig</name>
    <filename>structgeneric__updater_1_1UpdateConfig.html</filename>
    <member kind="variable">
      <type>int32u</type>
      <name>what_to_update</name>
      <anchorfile>structgeneric__updater_1_1UpdateConfig.html</anchorfile>
      <anchor>a451299f179d27c8a2b64e796c0876e51</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>double</type>
      <name>when_to_update</name>
      <anchorfile>structgeneric__updater_1_1UpdateConfig.html</anchorfile>
      <anchor>a5baaeee93dd1d30c15a667d759138747</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="namespace">
    <name>operation_mode</name>
    <filename>namespaceoperation__mode.html</filename>
    <namespace>operation_mode::device_update_state</namespace>
    <namespace>operation_mode::robot_state</namespace>
  </compound>
  <compound kind="namespace">
    <name>operation_mode::device_update_state</name>
    <filename>namespaceoperation__mode_1_1device__update__state.html</filename>
    <member kind="enumeration">
      <name>DeviceUpdateState</name>
      <anchorfile>namespaceoperation__mode_1_1device__update__state.html</anchorfile>
      <anchor>aba8015b3424a7b4a1450643cc0807a53</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>INITIALIZATION</name>
      <anchorfile>namespaceoperation__mode_1_1device__update__state.html</anchorfile>
      <anchor>aba8015b3424a7b4a1450643cc0807a53a8d01f932abb0893d366f11d7b549410f</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>OPERATION</name>
      <anchorfile>namespaceoperation__mode_1_1device__update__state.html</anchorfile>
      <anchor>aba8015b3424a7b4a1450643cc0807a53a73fcb6d2534877e981b54876ab21c8ba</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="namespace">
    <name>operation_mode::robot_state</name>
    <filename>namespaceoperation__mode_1_1robot__state.html</filename>
    <member kind="enumeration">
      <name>RobotState</name>
      <anchorfile>namespaceoperation__mode_1_1robot__state.html</anchorfile>
      <anchor>a04aea0c02d96c835847f6e9770106651</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>INITIALIZATION</name>
      <anchorfile>namespaceoperation__mode_1_1robot__state.html</anchorfile>
      <anchor>a04aea0c02d96c835847f6e9770106651ae79c3a714b478b24200b15b56397e3ff</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>OPERATION</name>
      <anchorfile>namespaceoperation__mode_1_1robot__state.html</anchorfile>
      <anchor>a04aea0c02d96c835847f6e9770106651acd55ec55c22bcafb303449be732b5aef</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>SHUTDOWN</name>
      <anchorfile>namespaceoperation__mode_1_1robot__state.html</anchorfile>
      <anchor>a04aea0c02d96c835847f6e9770106651a81a061b1c31ecf239ca03ba42963c764</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="namespace">
    <name>python_lib</name>
    <filename>namespacepython__lib.html</filename>
    <namespace>python_lib::etherCAT_hand_lib</namespace>
  </compound>
  <compound kind="namespace">
    <name>python_lib::etherCAT_hand_lib</name>
    <filename>namespacepython__lib_1_1etherCAT__hand__lib.html</filename>
    <class kind="class">python_lib::etherCAT_hand_lib::EtherCAT_Hand_Lib</class>
  </compound>
  <compound kind="class">
    <name>python_lib::etherCAT_hand_lib::EtherCAT_Hand_Lib</name>
    <filename>classpython__lib_1_1etherCAT__hand__lib_1_1EtherCAT__Hand__Lib.html</filename>
    <member kind="function">
      <type>def</type>
      <name>__init__</name>
      <anchorfile>classpython__lib_1_1etherCAT__hand__lib_1_1EtherCAT__Hand__Lib.html</anchorfile>
      <anchor>ae26f8137f2bb074a9522a70e21663438</anchor>
      <arglist></arglist>
    </member>
    <member kind="function">
      <type>def</type>
      <name>activate</name>
      <anchorfile>classpython__lib_1_1etherCAT__hand__lib_1_1EtherCAT__Hand__Lib.html</anchorfile>
      <anchor>a314f4588abd5b6e33cc60523dcff98b2</anchor>
      <arglist></arglist>
    </member>
    <member kind="function">
      <type>def</type>
      <name>activate_joint_states</name>
      <anchorfile>classpython__lib_1_1etherCAT__hand__lib_1_1EtherCAT__Hand__Lib.html</anchorfile>
      <anchor>a389166ac06c374ededa8c5a5fd28b86b</anchor>
      <arglist></arglist>
    </member>
    <member kind="function">
      <type>def</type>
      <name>debug_callback</name>
      <anchorfile>classpython__lib_1_1etherCAT__hand__lib_1_1EtherCAT__Hand__Lib.html</anchorfile>
      <anchor>a200c3bb0cbd9aa95d9006faa424dbcec</anchor>
      <arglist></arglist>
    </member>
    <member kind="function">
      <type>def</type>
      <name>get_average_raw_value</name>
      <anchorfile>classpython__lib_1_1etherCAT__hand__lib_1_1EtherCAT__Hand__Lib.html</anchorfile>
      <anchor>a825e085f73983b40f62ffdfa964994ee</anchor>
      <arglist></arglist>
    </member>
    <member kind="function">
      <type>def</type>
      <name>get_effort</name>
      <anchorfile>classpython__lib_1_1etherCAT__hand__lib_1_1EtherCAT__Hand__Lib.html</anchorfile>
      <anchor>a006d2dd0ea8194ed9bbab61de5c4f9e0</anchor>
      <arglist></arglist>
    </member>
    <member kind="function">
      <type>def</type>
      <name>get_position</name>
      <anchorfile>classpython__lib_1_1etherCAT__hand__lib_1_1EtherCAT__Hand__Lib.html</anchorfile>
      <anchor>ab1b72191abf346c2b2c08679bd1c2377</anchor>
      <arglist></arglist>
    </member>
    <member kind="function">
      <type>def</type>
      <name>get_raw_value</name>
      <anchorfile>classpython__lib_1_1etherCAT__hand__lib_1_1EtherCAT__Hand__Lib.html</anchorfile>
      <anchor>a5c3b64d98733a3d8b2ffc02745199efd</anchor>
      <arglist></arglist>
    </member>
    <member kind="function">
      <type>def</type>
      <name>get_velocity</name>
      <anchorfile>classpython__lib_1_1etherCAT__hand__lib_1_1EtherCAT__Hand__Lib.html</anchorfile>
      <anchor>a50c2466af1440e5c743af3ea70792b79</anchor>
      <arglist></arglist>
    </member>
    <member kind="function">
      <type>def</type>
      <name>joint_state_callback</name>
      <anchorfile>classpython__lib_1_1etherCAT__hand__lib_1_1EtherCAT__Hand__Lib.html</anchorfile>
      <anchor>acf559be85c7a249f9f054fc4ed741bbc</anchor>
      <arglist></arglist>
    </member>
    <member kind="function">
      <type>def</type>
      <name>on_close</name>
      <anchorfile>classpython__lib_1_1etherCAT__hand__lib_1_1EtherCAT__Hand__Lib.html</anchorfile>
      <anchor>a639e41c13f2870f91eb05191783ab95d</anchor>
      <arglist></arglist>
    </member>
    <member kind="function">
      <type>def</type>
      <name>sendupdate</name>
      <anchorfile>classpython__lib_1_1etherCAT__hand__lib_1_1EtherCAT__Hand__Lib.html</anchorfile>
      <anchor>a7cc126a759adfcb5c981c22711b1fb99</anchor>
      <arglist></arglist>
    </member>
    <member kind="function">
      <type>def</type>
      <name>set_pid</name>
      <anchorfile>classpython__lib_1_1etherCAT__hand__lib_1_1EtherCAT__Hand__Lib.html</anchorfile>
      <anchor>a94906206065759d3b6bf661c823f5105</anchor>
      <arglist></arglist>
    </member>
    <member kind="function">
      <type>def</type>
      <name>start_record</name>
      <anchorfile>classpython__lib_1_1etherCAT__hand__lib_1_1EtherCAT__Hand__Lib.html</anchorfile>
      <anchor>a8d801730c84892993385df6fe629f2aa</anchor>
      <arglist></arglist>
    </member>
    <member kind="function">
      <type>def</type>
      <name>stop_record</name>
      <anchorfile>classpython__lib_1_1etherCAT__hand__lib_1_1EtherCAT__Hand__Lib.html</anchorfile>
      <anchor>adb77905842baba2fb9ec25df600187b7</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type></type>
      <name>callback</name>
      <anchorfile>classpython__lib_1_1etherCAT__hand__lib_1_1EtherCAT__Hand__Lib.html</anchorfile>
      <anchor>a5f0c24dc9425c2b19d3a1fec86ef01ee</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type></type>
      <name>compounds</name>
      <anchorfile>classpython__lib_1_1etherCAT__hand__lib_1_1EtherCAT__Hand__Lib.html</anchorfile>
      <anchor>a3d0023ead708bd1c8a1dd4cec633ba29</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type></type>
      <name>debug_subscriber</name>
      <anchorfile>classpython__lib_1_1etherCAT__hand__lib_1_1EtherCAT__Hand__Lib.html</anchorfile>
      <anchor>aac04808223a5dc8bfe180a348cc7c0df</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type></type>
      <name>efforts</name>
      <anchorfile>classpython__lib_1_1etherCAT__hand__lib_1_1EtherCAT__Hand__Lib.html</anchorfile>
      <anchor>ac28c57de37fd2164ab4a177ec99a7ec4</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type></type>
      <name>joint_state_subscriber</name>
      <anchorfile>classpython__lib_1_1etherCAT__hand__lib_1_1EtherCAT__Hand__Lib.html</anchorfile>
      <anchor>a4359ac292f09747c83d4e6782e1d490e</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type></type>
      <name>msg_to_send</name>
      <anchorfile>classpython__lib_1_1etherCAT__hand__lib_1_1EtherCAT__Hand__Lib.html</anchorfile>
      <anchor>ad12a7215b01426f0ae0c62a74d04ba97</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type></type>
      <name>pid_services</name>
      <anchorfile>classpython__lib_1_1etherCAT__hand__lib_1_1EtherCAT__Hand__Lib.html</anchorfile>
      <anchor>a2ff7857adfcffda871ffa5cada8a5868</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type></type>
      <name>positions</name>
      <anchorfile>classpython__lib_1_1etherCAT__hand__lib_1_1EtherCAT__Hand__Lib.html</anchorfile>
      <anchor>a66f31630e8dcb5032b63e5e26417345d</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type></type>
      <name>publishers</name>
      <anchorfile>classpython__lib_1_1etherCAT__hand__lib_1_1EtherCAT__Hand__Lib.html</anchorfile>
      <anchor>aa6826da868772521da7077a208b0331a</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type></type>
      <name>raw_values</name>
      <anchorfile>classpython__lib_1_1etherCAT__hand__lib_1_1EtherCAT__Hand__Lib.html</anchorfile>
      <anchor>abea1ade55acb5c21b583887a9630a97f</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type></type>
      <name>record_js_callback</name>
      <anchorfile>classpython__lib_1_1etherCAT__hand__lib_1_1EtherCAT__Hand__Lib.html</anchorfile>
      <anchor>ada6b9553811388199335cc6bd404bff9</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type></type>
      <name>velocities</name>
      <anchorfile>classpython__lib_1_1etherCAT__hand__lib_1_1EtherCAT__Hand__Lib.html</anchorfile>
      <anchor>a0b8e50be8b30a48af7134e4d252bb715</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" static="yes">
      <type>list</type>
      <name>sensors</name>
      <anchorfile>classpython__lib_1_1etherCAT__hand__lib_1_1EtherCAT__Hand__Lib.html</anchorfile>
      <anchor>a0b095984bd51ecbca75c9455f0a2979b</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="namespace">
    <name>shadow_joints</name>
    <filename>namespaceshadow__joints.html</filename>
    <class kind="struct">shadow_joints::Joint</class>
    <class kind="struct">shadow_joints::JointToSensor</class>
    <class kind="class">shadow_joints::Motor</class>
    <class kind="struct">shadow_joints::PartialJointToSensor</class>
    <member kind="typedef">
      <type>threadsafe::Map&lt; boost::shared_ptr&lt; shadow_robot::JointCalibration &gt; &gt;</type>
      <name>CalibrationMap</name>
      <anchorfile>namespaceshadow__joints.html</anchorfile>
      <anchor>a635ffd5f65102142a81950f86837be14</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>shadow_joints::Joint</name>
    <filename>structshadow__joints_1_1Joint.html</filename>
    <member kind="variable">
      <type>sr_math_utils::filters::LowPassFilter</type>
      <name>effort_filter</name>
      <anchorfile>structshadow__joints_1_1Joint.html</anchorfile>
      <anchor>a172a6791591b9d32011e38ca723559fc</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>bool</type>
      <name>has_motor</name>
      <anchorfile>structshadow__joints_1_1Joint.html</anchorfile>
      <anchor>a055296f5204a5eb9eb7d609be7a6e513</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>std::string</type>
      <name>joint_name</name>
      <anchorfile>structshadow__joints_1_1Joint.html</anchorfile>
      <anchor>aaf5633159e343ff79d5142cc6c8093cf</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>JointToSensor</type>
      <name>joint_to_sensor</name>
      <anchorfile>structshadow__joints_1_1Joint.html</anchorfile>
      <anchor>ac792a142a5fa304ad6f4289cd8484eba</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>boost::shared_ptr&lt; Motor &gt;</type>
      <name>motor</name>
      <anchorfile>structshadow__joints_1_1Joint.html</anchorfile>
      <anchor>ac781277751924f09fb354ab369b615c4</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>sr_math_utils::filters::LowPassFilter</type>
      <name>pos_filter</name>
      <anchorfile>structshadow__joints_1_1Joint.html</anchorfile>
      <anchor>ae573fb0eedd0996ef1720de5f59a3ab6</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>shadow_joints::JointToSensor</name>
    <filename>structshadow__joints_1_1JointToSensor.html</filename>
    <member kind="variable">
      <type>bool</type>
      <name>calibrate_after_combining_sensors</name>
      <anchorfile>structshadow__joints_1_1JointToSensor.html</anchorfile>
      <anchor>acf913cd846149c30c94964c9e99ef183</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>std::vector&lt; PartialJointToSensor &gt;</type>
      <name>joint_to_sensor_vector</name>
      <anchorfile>structshadow__joints_1_1JointToSensor.html</anchorfile>
      <anchor>af3940d9134ed8c30fd487d1d7de8e1e8</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>std::vector&lt; std::string &gt;</type>
      <name>sensor_names</name>
      <anchorfile>structshadow__joints_1_1JointToSensor.html</anchorfile>
      <anchor>acbc40982f7c731e5bfd920c796589d69</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>shadow_joints::Motor</name>
    <filename>classshadow__joints_1_1Motor.html</filename>
    <member kind="function">
      <type></type>
      <name>Motor</name>
      <anchorfile>classshadow__joints_1_1Motor.html</anchorfile>
      <anchor>a1c5a8b9ea4ac99790196213b326c04e7</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>~Motor</name>
      <anchorfile>classshadow__joints_1_1Motor.html</anchorfile>
      <anchor>a7a415359698521ded199e6d54e8ffbff</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="variable">
      <type>sr_actuator::SrActuator *</type>
      <name>actuator</name>
      <anchorfile>classshadow__joints_1_1Motor.html</anchorfile>
      <anchor>ad86f37fd408d2fd52e59371693d57255</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>bool</type>
      <name>bad_data</name>
      <anchorfile>classshadow__joints_1_1Motor.html</anchorfile>
      <anchor>acc38ac3112aa07fd026badc06a020231</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>ros::ServiceServer</type>
      <name>force_pid_service</name>
      <anchorfile>classshadow__joints_1_1Motor.html</anchorfile>
      <anchor>a5cf750851033f2219b7b70d3eda1b5a6</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>int</type>
      <name>motor_id</name>
      <anchorfile>classshadow__joints_1_1Motor.html</anchorfile>
      <anchor>adeaa806ce13501d864af2728a5911131</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>bool</type>
      <name>motor_ok</name>
      <anchorfile>classshadow__joints_1_1Motor.html</anchorfile>
      <anchor>a29becd04ad0f85dae7eaa053909940ea</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>int</type>
      <name>msg_motor_id</name>
      <anchorfile>classshadow__joints_1_1Motor.html</anchorfile>
      <anchor>af2e4b11727328e9252e9d110388b88f7</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>ros::ServiceServer</type>
      <name>reset_motor_service</name>
      <anchorfile>classshadow__joints_1_1Motor.html</anchorfile>
      <anchor>a78d41529df1bed943cd8a6c1dfae5b41</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>shadow_joints::PartialJointToSensor</name>
    <filename>structshadow__joints_1_1PartialJointToSensor.html</filename>
    <member kind="variable">
      <type>double</type>
      <name>coeff</name>
      <anchorfile>structshadow__joints_1_1PartialJointToSensor.html</anchorfile>
      <anchor>af36158ace1e0d34e97b03d015e410fb5</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>int</type>
      <name>sensor_id</name>
      <anchorfile>structshadow__joints_1_1PartialJointToSensor.html</anchorfile>
      <anchor>a2180abca8761196e85b9eebd58334ae8</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>shadow_robot::SrHandLib</name>
    <filename>classshadow__robot_1_1SrHandLib.html</filename>
    <base>shadow_robot::SrRobotLib</base>
    <member kind="function">
      <type>bool</type>
      <name>force_pid_callback</name>
      <anchorfile>classshadow__robot_1_1SrHandLib.html</anchorfile>
      <anchor>aae0010ade6ebc1b8cc7760ac517dac6f</anchor>
      <arglist>(sr_robot_msgs::ForceController::Request &amp;request, sr_robot_msgs::ForceController::Response &amp;response, int motor_index)</arglist>
    </member>
    <member kind="function">
      <type>bool</type>
      <name>reset_motor_callback</name>
      <anchorfile>classshadow__robot_1_1SrHandLib.html</anchorfile>
      <anchor>ade4f8c347849ffbb8cfa8309251115c5</anchor>
      <arglist>(std_srvs::Empty::Request &amp;request, std_srvs::Empty::Response &amp;response, std::pair&lt; int, std::string &gt; joint)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>SrHandLib</name>
      <anchorfile>classshadow__robot_1_1SrHandLib.html</anchorfile>
      <anchor>a406bfa4df4f4df328cf989869994f935</anchor>
      <arglist>(pr2_hardware_interface::HardwareInterface *hw)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>~SrHandLib</name>
      <anchorfile>classshadow__robot_1_1SrHandLib.html</anchorfile>
      <anchor>a4e58ee62fdf8d763e3f3c3c09ddbfe8e</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" protection="protected">
      <type>std::string</type>
      <name>find_joint_name</name>
      <anchorfile>classshadow__robot_1_1SrHandLib.html</anchorfile>
      <anchor>a9bc6f1663f73e24b332819c42b52fd1b</anchor>
      <arglist>(int motor_index)</arglist>
    </member>
    <member kind="function" protection="protected" virtualness="virtual">
      <type>virtual void</type>
      <name>initialize</name>
      <anchorfile>classshadow__robot_1_1SrHandLib.html</anchorfile>
      <anchor>a7b4017ab39b2a2959c389c7b5d0aae32</anchor>
      <arglist>(std::vector&lt; std::string &gt; joint_names, std::vector&lt; int &gt; motor_ids, std::vector&lt; shadow_joints::JointToSensor &gt; joint_to_sensors, std::vector&lt; sr_actuator::SrActuator * &gt; actuators)</arglist>
    </member>
    <member kind="function" protection="protected">
      <type>void</type>
      <name>update_force_control_in_param_server</name>
      <anchorfile>classshadow__robot_1_1SrHandLib.html</anchorfile>
      <anchor>a678595d6cd81e0d676eab01fa91daef8</anchor>
      <arglist>(std::string joint_name, int max_pwm, int sg_left, int sg_right, int f, int p, int i, int d, int imax, int deadband, int sign)</arglist>
    </member>
    <member kind="function" protection="private">
      <type>shadow_joints::CalibrationMap</type>
      <name>read_joint_calibration</name>
      <anchorfile>classshadow__robot_1_1SrHandLib.html</anchorfile>
      <anchor>afe92b44fc543c058ed0d97959f500421</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" protection="private">
      <type>std::vector&lt; int &gt;</type>
      <name>read_joint_to_motor_mapping</name>
      <anchorfile>classshadow__robot_1_1SrHandLib.html</anchorfile>
      <anchor>abf41b10e5da642d0948b3f95eab5b26b</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" protection="private">
      <type>std::vector&lt; shadow_joints::JointToSensor &gt;</type>
      <name>read_joint_to_sensor_mapping</name>
      <anchorfile>classshadow__robot_1_1SrHandLib.html</anchorfile>
      <anchor>a1042d16c7e13a10dd26f8fb5cce88ac6</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" protection="private">
      <type>std::vector&lt; generic_updater::UpdateConfig &gt;</type>
      <name>read_update_rate_configs</name>
      <anchorfile>classshadow__robot_1_1SrHandLib.html</anchorfile>
      <anchor>af200b6701dc1ffc21a7e8024e53cb3d3</anchor>
      <arglist>(std::string base_param, int nb_data_defined, const char *human_readable_data_types[], const int32u data_types[])</arglist>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>resend_pids</name>
      <anchorfile>classshadow__robot_1_1SrHandLib.html</anchorfile>
      <anchor>ac28eb102c416e9751168d501e7ecfbe7</anchor>
      <arglist>(std::string joint_name, int motor_index)</arglist>
    </member>
    <member kind="variable" protection="private">
      <type>ros::ServiceServer</type>
      <name>debug_service</name>
      <anchorfile>classshadow__robot_1_1SrHandLib.html</anchorfile>
      <anchor>a0eb9eaa2c752c659c238630a38e0edaf</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>ros::NodeHandle</type>
      <name>nodehandle_</name>
      <anchorfile>classshadow__robot_1_1SrHandLib.html</anchorfile>
      <anchor>a6c7417729bbd1dee5825e16ef32531a1</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::map&lt; std::string, ros::Timer &gt;</type>
      <name>pid_timers</name>
      <anchorfile>classshadow__robot_1_1SrHandLib.html</anchorfile>
      <anchor>a8e49482f0b5fde98f3b50894ace08797</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private" static="yes">
      <type>static const char *</type>
      <name>human_readable_motor_data_types</name>
      <anchorfile>classshadow__robot_1_1SrHandLib.html</anchorfile>
      <anchor>ac43450da06f0f81196601b759be5e4b3</anchor>
      <arglist>[]</arglist>
    </member>
    <member kind="variable" protection="private" static="yes">
      <type>static const char *</type>
      <name>human_readable_sensor_data_types</name>
      <anchorfile>classshadow__robot_1_1SrHandLib.html</anchorfile>
      <anchor>a691a6892796c8097e39fa885c059aa7a</anchor>
      <arglist>[]</arglist>
    </member>
    <member kind="variable" protection="private" static="yes">
      <type>static const int32u</type>
      <name>motor_data_types</name>
      <anchorfile>classshadow__robot_1_1SrHandLib.html</anchorfile>
      <anchor>a8dffbfe1e3ea5bc60923aabf9cd95dfa</anchor>
      <arglist>[]</arglist>
    </member>
    <member kind="variable" protection="private" static="yes">
      <type>static const int</type>
      <name>nb_motor_data</name>
      <anchorfile>classshadow__robot_1_1SrHandLib.html</anchorfile>
      <anchor>acd33e77be92c2bc9efc881cdf69c50e0</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private" static="yes">
      <type>static const int</type>
      <name>nb_sensor_data</name>
      <anchorfile>classshadow__robot_1_1SrHandLib.html</anchorfile>
      <anchor>a3ae7c21af738fd3b2bb6b512441a1313</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private" static="yes">
      <type>static const int32u</type>
      <name>sensor_data_types</name>
      <anchorfile>classshadow__robot_1_1SrHandLib.html</anchorfile>
      <anchor>ab11f24f7442bc302c89ab3fea0f2ec7f</anchor>
      <arglist>[]</arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>shadow_robot::SrRobotLib</name>
    <filename>classshadow__robot_1_1SrRobotLib.html</filename>
    <member kind="function">
      <type>void</type>
      <name>add_diagnostics</name>
      <anchorfile>classshadow__robot_1_1SrRobotLib.html</anchorfile>
      <anchor>a344881b186da77ce5106b462e9665a05</anchor>
      <arglist>(std::vector&lt; diagnostic_msgs::DiagnosticStatus &gt; &amp;vec, diagnostic_updater::DiagnosticStatusWrapper &amp;d)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>build_motor_command</name>
      <anchorfile>classshadow__robot_1_1SrRobotLib.html</anchorfile>
      <anchor>aff5706510357bc7d100b3b6600dbc7a4</anchor>
      <arglist>(ETHERCAT_DATA_STRUCTURE_0200_PALM_EDC_COMMAND *command)</arglist>
    </member>
    <member kind="function">
      <type>bool</type>
      <name>nullify_demand_callback</name>
      <anchorfile>classshadow__robot_1_1SrRobotLib.html</anchorfile>
      <anchor>a6376d6cd871ed3d48bd252c674f77e07</anchor>
      <arglist>(sr_robot_msgs::NullifyDemand::Request &amp;request, sr_robot_msgs::NullifyDemand::Response &amp;response)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>reinitialize_motors</name>
      <anchorfile>classshadow__robot_1_1SrRobotLib.html</anchorfile>
      <anchor>af1fdc6187a9e43f295895e47b8c7fb08</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>reinitialize_sensors</name>
      <anchorfile>classshadow__robot_1_1SrRobotLib.html</anchorfile>
      <anchor>ad1e58b494193efc0d03f5f19c2b4c257</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>SrRobotLib</name>
      <anchorfile>classshadow__robot_1_1SrRobotLib.html</anchorfile>
      <anchor>a257d308faf166f2b33184e2f6a5b7c8c</anchor>
      <arglist>(pr2_hardware_interface::HardwareInterface *hw)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>update</name>
      <anchorfile>classshadow__robot_1_1SrRobotLib.html</anchorfile>
      <anchor>a1400555196190ebcb02263ea84d309f9</anchor>
      <arglist>(ETHERCAT_DATA_STRUCTURE_0200_PALM_EDC_STATUS *status_data)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>~SrRobotLib</name>
      <anchorfile>classshadow__robot_1_1SrRobotLib.html</anchorfile>
      <anchor>a63e279fdc47615132e0ddc30d251d5ab</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="variable">
      <type>shadow_joints::CalibrationMap</type>
      <name>calibration_map</name>
      <anchorfile>classshadow__robot_1_1SrRobotLib.html</anchorfile>
      <anchor>a6712f41799e9b695a5f269b6a0790d92</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>int</type>
      <name>main_pic_idle_time</name>
      <anchorfile>classshadow__robot_1_1SrRobotLib.html</anchorfile>
      <anchor>a6df56a9133d351739d6805e414caf454</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>int</type>
      <name>main_pic_idle_time_min</name>
      <anchorfile>classshadow__robot_1_1SrRobotLib.html</anchorfile>
      <anchor>a45e5e769861af782da0d666851c49d63</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>operation_mode::device_update_state::DeviceUpdateState</type>
      <name>motor_current_state</name>
      <anchorfile>classshadow__robot_1_1SrRobotLib.html</anchorfile>
      <anchor>a36bbe841222a2c76c0b7c1c2903928ba</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>operation_mode::device_update_state::DeviceUpdateState</type>
      <name>tactile_current_state</name>
      <anchorfile>classshadow__robot_1_1SrRobotLib.html</anchorfile>
      <anchor>a54c78d72cde9870a62151681ed1feb41</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>boost::shared_ptr&lt; tactiles::GenericTactiles &gt;</type>
      <name>tactiles</name>
      <anchorfile>classshadow__robot_1_1SrRobotLib.html</anchorfile>
      <anchor>ac253849b9f0435d528cbae3156e19466</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>boost::shared_ptr&lt; tactiles::GenericTactiles &gt;</type>
      <name>tactiles_init</name>
      <anchorfile>classshadow__robot_1_1SrRobotLib.html</anchorfile>
      <anchor>a9a726d18b178560feeb8bf42ad9939b8</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef" protection="protected">
      <type>std::pair&lt; int, std::vector&lt; crc_unions::union16 &gt; &gt;</type>
      <name>ForceConfig</name>
      <anchorfile>classshadow__robot_1_1SrRobotLib.html</anchorfile>
      <anchor>afe1bf4be134fbc6f72c4dba4497d3ccf</anchor>
      <arglist></arglist>
    </member>
    <member kind="function" protection="protected">
      <type>void</type>
      <name>calibrate_joint</name>
      <anchorfile>classshadow__robot_1_1SrRobotLib.html</anchorfile>
      <anchor>a936c63ff75ceab3ae97a269b342de961</anchor>
      <arglist>(boost::ptr_vector&lt; shadow_joints::Joint &gt;::iterator joint_tmp)</arglist>
    </member>
    <member kind="function" protection="protected">
      <type>bool</type>
      <name>change_control_parameters</name>
      <anchorfile>classshadow__robot_1_1SrRobotLib.html</anchorfile>
      <anchor>a3cabb9ecf251e4553790acaf58423e41</anchor>
      <arglist>(int16_t control_type)</arglist>
    </member>
    <member kind="function" protection="protected">
      <type>bool</type>
      <name>change_control_type_callback_</name>
      <anchorfile>classshadow__robot_1_1SrRobotLib.html</anchorfile>
      <anchor>a9a9a3a4cac04cda05b8bbab65bf0be92</anchor>
      <arglist>(sr_robot_msgs::ChangeControlType::Request &amp;request, sr_robot_msgs::ChangeControlType::Response &amp;response)</arglist>
    </member>
    <member kind="function" protection="protected">
      <type>void</type>
      <name>generate_force_control_config</name>
      <anchorfile>classshadow__robot_1_1SrRobotLib.html</anchorfile>
      <anchor>a74a6a646018465735c4b72d576f15815</anchor>
      <arglist>(int motor_index, int max_pwm, int sg_left, int sg_right, int f, int p, int i, int d, int imax, int deadband, int sign)</arglist>
    </member>
    <member kind="function" protection="protected">
      <type>std::vector&lt; std::pair&lt; std::string, bool &gt; &gt;</type>
      <name>humanize_flags</name>
      <anchorfile>classshadow__robot_1_1SrRobotLib.html</anchorfile>
      <anchor>a961428ebd2a9e8ddd7a29bbab6ca7b92</anchor>
      <arglist>(int flag)</arglist>
    </member>
    <member kind="function" protection="protected" virtualness="pure">
      <type>virtual void</type>
      <name>initialize</name>
      <anchorfile>classshadow__robot_1_1SrRobotLib.html</anchorfile>
      <anchor>a7bda58c5be4f6507cad05fb935fea28b</anchor>
      <arglist>(std::vector&lt; std::string &gt; joint_names, std::vector&lt; int &gt; motor_ids, std::vector&lt; shadow_joints::JointToSensor &gt; joint_to_sensors, std::vector&lt; sr_actuator::SrActuator * &gt; actuators)=0</arglist>
    </member>
    <member kind="function" protection="protected">
      <type>bool</type>
      <name>motor_system_controls_callback_</name>
      <anchorfile>classshadow__robot_1_1SrRobotLib.html</anchorfile>
      <anchor>a2b5f6b36ec1093fef1090800a5908fe8</anchor>
      <arglist>(sr_robot_msgs::ChangeMotorSystemControls::Request &amp;request, sr_robot_msgs::ChangeMotorSystemControls::Response &amp;response)</arglist>
    </member>
    <member kind="function" protection="protected">
      <type>void</type>
      <name>read_additional_data</name>
      <anchorfile>classshadow__robot_1_1SrRobotLib.html</anchorfile>
      <anchor>a1b10a5bfa615b42be20136bbaac8b34d</anchor>
      <arglist>(boost::ptr_vector&lt; shadow_joints::Joint &gt;::iterator joint_tmp)</arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>sr_actuator::SrActuator *</type>
      <name>actuator</name>
      <anchorfile>classshadow__robot_1_1SrRobotLib.html</anchorfile>
      <anchor>a0342d81a46d5cb01043e677f3d6191b8</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>std::vector&lt; generic_updater::UpdateConfig &gt;</type>
      <name>biotac_sensor_update_rate_configs_vector</name>
      <anchorfile>classshadow__robot_1_1SrRobotLib.html</anchorfile>
      <anchor>acb02cc7867f623a2018dd449f413a5f6</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>boost::shared_ptr&lt; shadow_robot::JointCalibration &gt;</type>
      <name>calibration_tmp</name>
      <anchorfile>classshadow__robot_1_1SrRobotLib.html</anchorfile>
      <anchor>a09ae6a00c6c7bf5d57dccb5b89d65b7b</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>ros::ServiceServer</type>
      <name>change_control_type_</name>
      <anchorfile>classshadow__robot_1_1SrRobotLib.html</anchorfile>
      <anchor>ade241f0e43e023f17347298dad8f1409</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>int</type>
      <name>config_index</name>
      <anchorfile>classshadow__robot_1_1SrRobotLib.html</anchorfile>
      <anchor>a3452883901986b47520c8d7ae9a937c0</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>sr_robot_msgs::ControlType</type>
      <name>control_type_</name>
      <anchorfile>classshadow__robot_1_1SrRobotLib.html</anchorfile>
      <anchor>a6d8dfcb5dd8570eeb94f23ac82b1eca4</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>bool</type>
      <name>control_type_changed_flag_</name>
      <anchorfile>classshadow__robot_1_1SrRobotLib.html</anchorfile>
      <anchor>a876986b363154b41afd9f7edd0b281cf</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>int8u</type>
      <name>crc_byte</name>
      <anchorfile>classshadow__robot_1_1SrRobotLib.html</anchorfile>
      <anchor>a0c8602c1e1e9722fce97fd02be7b0779</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>int8u</type>
      <name>crc_i</name>
      <anchorfile>classshadow__robot_1_1SrRobotLib.html</anchorfile>
      <anchor>a5e2719617671de91d83771a41dfe32ca</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>int16u</type>
      <name>crc_result</name>
      <anchorfile>classshadow__robot_1_1SrRobotLib.html</anchorfile>
      <anchor>ac5ba8c60eedeb2d639d57cd51e5097f3</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>std::vector&lt; generic_updater::UpdateConfig &gt;</type>
      <name>generic_sensor_update_rate_configs_vector</name>
      <anchorfile>classshadow__robot_1_1SrRobotLib.html</anchorfile>
      <anchor>a1fa7e3dea75e69492e705d5b532f0c34</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>int</type>
      <name>index_motor_in_msg</name>
      <anchorfile>classshadow__robot_1_1SrRobotLib.html</anchorfile>
      <anchor>ae3fd1591bd749c6150787582a46caf26</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>boost::ptr_vector&lt; shadow_joints::Joint &gt;</type>
      <name>joints_vector</name>
      <anchorfile>classshadow__robot_1_1SrRobotLib.html</anchorfile>
      <anchor>a7dbad7d030ac53401d6f234490c10c6c</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>boost::shared_ptr&lt; boost::mutex &gt;</type>
      <name>lock_command_sending_</name>
      <anchorfile>classshadow__robot_1_1SrRobotLib.html</anchorfile>
      <anchor>a1bb0144744e22cde28708e21b05e7036</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>boost::shared_ptr&lt; generic_updater::MotorDataChecker &gt;</type>
      <name>motor_data_checker</name>
      <anchorfile>classshadow__robot_1_1SrRobotLib.html</anchorfile>
      <anchor>ac93b3e7b601106faf9d05811d5c26e56</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>int</type>
      <name>motor_index_full</name>
      <anchorfile>classshadow__robot_1_1SrRobotLib.html</anchorfile>
      <anchor>a1c7a3191bb510970addaf8a931a6421a</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>std::queue&lt; std::vector&lt; sr_robot_msgs::MotorSystemControls &gt;, std::list&lt; std::vector&lt; sr_robot_msgs::MotorSystemControls &gt; &gt; &gt;</type>
      <name>motor_system_control_flags_</name>
      <anchorfile>classshadow__robot_1_1SrRobotLib.html</anchorfile>
      <anchor>aff17a7699af55cabcf75d29eff9ccbcd</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>ros::ServiceServer</type>
      <name>motor_system_control_server_</name>
      <anchorfile>classshadow__robot_1_1SrRobotLib.html</anchorfile>
      <anchor>a6e6ca06bfb811c1fb0cff1cc762d8076</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>std::vector&lt; generic_updater::UpdateConfig &gt;</type>
      <name>motor_update_rate_configs_vector</name>
      <anchorfile>classshadow__robot_1_1SrRobotLib.html</anchorfile>
      <anchor>ade6fc50e07d6f5c2117114b5393f46eb</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>boost::shared_ptr&lt; generic_updater::MotorUpdater &gt;</type>
      <name>motor_updater_</name>
      <anchorfile>classshadow__robot_1_1SrRobotLib.html</anchorfile>
      <anchor>a7d6cb6c4fd1085a09146e751b9d486de</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>ros::NodeHandle</type>
      <name>nh_tilde</name>
      <anchorfile>classshadow__robot_1_1SrRobotLib.html</anchorfile>
      <anchor>a65a540bf1cbdf1756994b163bf20d78f</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>bool</type>
      <name>nullify_demand_</name>
      <anchorfile>classshadow__robot_1_1SrRobotLib.html</anchorfile>
      <anchor>ab99b858438265a30b59f67e8458c9652</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>ros::ServiceServer</type>
      <name>nullify_demand_server_</name>
      <anchorfile>classshadow__robot_1_1SrRobotLib.html</anchorfile>
      <anchor>a41dcf641334ecc6495005c5ed76b67c3</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>std::vector&lt; generic_updater::UpdateConfig &gt;</type>
      <name>pst3_sensor_update_rate_configs_vector</name>
      <anchorfile>classshadow__robot_1_1SrRobotLib.html</anchorfile>
      <anchor>a991171307038a1e098341efc2935db46</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>std::queue&lt; ForceConfig, std::list&lt; ForceConfig &gt; &gt;</type>
      <name>reconfig_queue</name>
      <anchorfile>classshadow__robot_1_1SrRobotLib.html</anchorfile>
      <anchor>a8b4589599741cc56eb08443834f5b369</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>std::queue&lt; short, std::list&lt; short &gt; &gt;</type>
      <name>reset_motors_queue</name>
      <anchorfile>classshadow__robot_1_1SrRobotLib.html</anchorfile>
      <anchor>ab86bc526a62214773aa9f2bcc4fcf1fa</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>ETHERCAT_DATA_STRUCTURE_0200_PALM_EDC_STATUS *</type>
      <name>status_data</name>
      <anchorfile>classshadow__robot_1_1SrRobotLib.html</anchorfile>
      <anchor>a070135fe9c6437fee0545ab7981be661</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>tactiles::Biotac</name>
    <filename>classtactiles_1_1Biotac.html</filename>
    <base>tactiles::GenericTactiles</base>
    <member kind="function" virtualness="virtual">
      <type>virtual void</type>
      <name>add_diagnostics</name>
      <anchorfile>classtactiles_1_1Biotac.html</anchorfile>
      <anchor>a04f45e14cb7db86bffb182732dd1e015</anchor>
      <arglist>(std::vector&lt; diagnostic_msgs::DiagnosticStatus &gt; &amp;vec, diagnostic_updater::DiagnosticStatusWrapper &amp;d)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>Biotac</name>
      <anchorfile>classtactiles_1_1Biotac.html</anchorfile>
      <anchor>af8440895e85dbd020ecc3d2da4bd2697</anchor>
      <arglist>(std::vector&lt; generic_updater::UpdateConfig &gt; update_configs_vector, operation_mode::device_update_state::DeviceUpdateState update_state)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>Biotac</name>
      <anchorfile>classtactiles_1_1Biotac.html</anchorfile>
      <anchor>af2b91ddae05d99c4810db938f549f007</anchor>
      <arglist>(std::vector&lt; generic_updater::UpdateConfig &gt; update_configs_vector, operation_mode::device_update_state::DeviceUpdateState update_state, boost::shared_ptr&lt; std::vector&lt; GenericTactileData &gt; &gt; init_tactiles_vector)</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual std::vector&lt; AllTactileData &gt; *</type>
      <name>get_tactile_data</name>
      <anchorfile>classtactiles_1_1Biotac.html</anchorfile>
      <anchor>a8ffedb8b65435402327d4c358209284c</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>init</name>
      <anchorfile>classtactiles_1_1Biotac.html</anchorfile>
      <anchor>ad88d1739f26f1f6fbc8af9f9afe59a68</anchor>
      <arglist>(std::vector&lt; generic_updater::UpdateConfig &gt; update_configs_vector, operation_mode::device_update_state::DeviceUpdateState update_state)</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual void</type>
      <name>publish</name>
      <anchorfile>classtactiles_1_1Biotac.html</anchorfile>
      <anchor>a3cab9163e4d6d6cbe35071404109d594</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual void</type>
      <name>update</name>
      <anchorfile>classtactiles_1_1Biotac.html</anchorfile>
      <anchor>aeb11ee5c21a86d1578587a73bf9dd427</anchor>
      <arglist>(ETHERCAT_DATA_STRUCTURE_0200_PALM_EDC_STATUS *status_data)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>~Biotac</name>
      <anchorfile>classtactiles_1_1Biotac.html</anchorfile>
      <anchor>a388a8971b4c362aaf83edc31a22c5747</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>boost::shared_ptr&lt; realtime_tools::RealtimePublisher&lt; sr_robot_msgs::BiotacAll &gt; &gt;</type>
      <name>tactile_publisher</name>
      <anchorfile>classtactiles_1_1Biotac.html</anchorfile>
      <anchor>ad4a3fc71cea2abde0075d8d499d83765</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>boost::shared_ptr&lt; std::vector&lt; BiotacData &gt; &gt;</type>
      <name>tactiles_vector</name>
      <anchorfile>classtactiles_1_1Biotac.html</anchorfile>
      <anchor>a6cfd35fd02b50d3c5a27359f74e734d1</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>tactiles::GenericTactiles</name>
    <filename>classtactiles_1_1GenericTactiles.html</filename>
    <member kind="function" virtualness="virtual">
      <type>virtual void</type>
      <name>add_diagnostics</name>
      <anchorfile>classtactiles_1_1GenericTactiles.html</anchorfile>
      <anchor>aa7c2c53eb0fbe6f7c1b5783d4135b961</anchor>
      <arglist>(std::vector&lt; diagnostic_msgs::DiagnosticStatus &gt; &amp;vec, diagnostic_updater::DiagnosticStatusWrapper &amp;d)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>GenericTactiles</name>
      <anchorfile>classtactiles_1_1GenericTactiles.html</anchorfile>
      <anchor>a6030bfab0b84901fdc0d54227fef455d</anchor>
      <arglist>(std::vector&lt; generic_updater::UpdateConfig &gt; update_configs_vector, operation_mode::device_update_state::DeviceUpdateState update_state)</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual std::vector&lt; AllTactileData &gt; *</type>
      <name>get_tactile_data</name>
      <anchorfile>classtactiles_1_1GenericTactiles.html</anchorfile>
      <anchor>a574fac6828471cb7f151cfde7d1a288f</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual void</type>
      <name>publish</name>
      <anchorfile>classtactiles_1_1GenericTactiles.html</anchorfile>
      <anchor>a40649152a98a5a6037d57cf9215cbd65</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>bool</type>
      <name>reset</name>
      <anchorfile>classtactiles_1_1GenericTactiles.html</anchorfile>
      <anchor>abcc141b22244906f2b48403a8ec3272b</anchor>
      <arglist>(std_srvs::Empty::Request &amp;request, std_srvs::Empty::Response &amp;response)</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual void</type>
      <name>update</name>
      <anchorfile>classtactiles_1_1GenericTactiles.html</anchorfile>
      <anchor>a1530f4d87cd4440349a6381d2468f326</anchor>
      <arglist>(ETHERCAT_DATA_STRUCTURE_0200_PALM_EDC_STATUS *status_data)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>~GenericTactiles</name>
      <anchorfile>classtactiles_1_1GenericTactiles.html</anchorfile>
      <anchor>aab1f0e91dc1e6ad9f2aa3d4d5dc6a49c</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="variable">
      <type>boost::shared_ptr&lt; generic_updater::SensorUpdater &gt;</type>
      <name>sensor_updater</name>
      <anchorfile>classtactiles_1_1GenericTactiles.html</anchorfile>
      <anchor>a75f921653b4f65ce1303316fa1a49095</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>boost::shared_ptr&lt; std::vector&lt; GenericTactileData &gt; &gt;</type>
      <name>tactiles_vector</name>
      <anchorfile>classtactiles_1_1GenericTactiles.html</anchorfile>
      <anchor>a9466c273c558011470177770a8cc1ffd</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" static="yes">
      <type>static const unsigned int</type>
      <name>nb_tactiles</name>
      <anchorfile>classtactiles_1_1GenericTactiles.html</anchorfile>
      <anchor>a93f5e3dadcb5f0a908db468d32bda5e2</anchor>
      <arglist></arglist>
    </member>
    <member kind="function" protection="protected">
      <type>void</type>
      <name>process_received_data_type</name>
      <anchorfile>classtactiles_1_1GenericTactiles.html</anchorfile>
      <anchor>a690198a7b04c240c51f2845535793c84</anchor>
      <arglist>(int32u data)</arglist>
    </member>
    <member kind="function" protection="protected">
      <type>std::string</type>
      <name>sanitise_string</name>
      <anchorfile>classtactiles_1_1GenericTactiles.html</anchorfile>
      <anchor>a03242dfb8f3d062a1fcd8131f3ae95ac</anchor>
      <arglist>(const char *raw_string, const unsigned int str_size)</arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>boost::shared_ptr&lt; std::vector&lt; AllTactileData &gt; &gt;</type>
      <name>all_tactile_data</name>
      <anchorfile>classtactiles_1_1GenericTactiles.html</anchorfile>
      <anchor>a5b3a0b8b36d1b9c7f718bc5f8a16df05</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>std::vector&lt; int32u &gt;</type>
      <name>initialization_received_data_vector</name>
      <anchorfile>classtactiles_1_1GenericTactiles.html</anchorfile>
      <anchor>ac1c9b9db4a7bb8b7d234c9d9388458e3</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>ros::NodeHandle</type>
      <name>nodehandle_</name>
      <anchorfile>classtactiles_1_1GenericTactiles.html</anchorfile>
      <anchor>a2a9a07c96877d620941af7c1d3d90ea8</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>ros::ServiceServer</type>
      <name>reset_service_client_</name>
      <anchorfile>classtactiles_1_1GenericTactiles.html</anchorfile>
      <anchor>acf76c40185a7eb90bc8e84f91e2f56a8</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>tactiles::ShadowPSTs</name>
    <filename>classtactiles_1_1ShadowPSTs.html</filename>
    <base>tactiles::GenericTactiles</base>
    <member kind="function" virtualness="virtual">
      <type>virtual void</type>
      <name>add_diagnostics</name>
      <anchorfile>classtactiles_1_1ShadowPSTs.html</anchorfile>
      <anchor>a2d5ee41bd89d1b9ee25d043ecd646887</anchor>
      <arglist>(std::vector&lt; diagnostic_msgs::DiagnosticStatus &gt; &amp;vec, diagnostic_updater::DiagnosticStatusWrapper &amp;d)</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual std::vector&lt; AllTactileData &gt; *</type>
      <name>get_tactile_data</name>
      <anchorfile>classtactiles_1_1ShadowPSTs.html</anchorfile>
      <anchor>a8dcaecc3c57bafe2d7709580c7fe289a</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>init</name>
      <anchorfile>classtactiles_1_1ShadowPSTs.html</anchorfile>
      <anchor>a3a96d8906fda574a48d91eae6902279f</anchor>
      <arglist>(std::vector&lt; generic_updater::UpdateConfig &gt; update_configs_vector, operation_mode::device_update_state::DeviceUpdateState update_state)</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual void</type>
      <name>publish</name>
      <anchorfile>classtactiles_1_1ShadowPSTs.html</anchorfile>
      <anchor>ad2b0b704bcb8b4cdc93e0d8a3dd58c3b</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>ShadowPSTs</name>
      <anchorfile>classtactiles_1_1ShadowPSTs.html</anchorfile>
      <anchor>a89f2c17329d4585fd67aef273577f5bf</anchor>
      <arglist>(std::vector&lt; generic_updater::UpdateConfig &gt; update_configs_vector, operation_mode::device_update_state::DeviceUpdateState update_state)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>ShadowPSTs</name>
      <anchorfile>classtactiles_1_1ShadowPSTs.html</anchorfile>
      <anchor>a1723cca637ffc4174734599d2163f3d1</anchor>
      <arglist>(std::vector&lt; generic_updater::UpdateConfig &gt; update_configs_vector, operation_mode::device_update_state::DeviceUpdateState update_state, boost::shared_ptr&lt; std::vector&lt; GenericTactileData &gt; &gt; init_tactiles_vector)</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual void</type>
      <name>update</name>
      <anchorfile>classtactiles_1_1ShadowPSTs.html</anchorfile>
      <anchor>a6f0831a060b947e85db4c89dcd70b32c</anchor>
      <arglist>(ETHERCAT_DATA_STRUCTURE_0200_PALM_EDC_STATUS *status_data)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>~ShadowPSTs</name>
      <anchorfile>classtactiles_1_1ShadowPSTs.html</anchorfile>
      <anchor>ac74408b842e2645fde81683bcd93e030</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="variable">
      <type>boost::shared_ptr&lt; std::vector&lt; PST3Data &gt; &gt;</type>
      <name>tactiles_vector</name>
      <anchorfile>classtactiles_1_1ShadowPSTs.html</anchorfile>
      <anchor>a46f7fa18f468fc64ae376a7b13ca61e1</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>boost::shared_ptr&lt; realtime_tools::RealtimePublisher&lt; sr_robot_msgs::ShadowPST &gt; &gt;</type>
      <name>tactile_publisher</name>
      <anchorfile>classtactiles_1_1ShadowPSTs.html</anchorfile>
      <anchor>a8938ac26647db44377a15a7ff392f8ea</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="page">
    <name>index</name>
    <title></title>
    <filename>index</filename>
    <docanchor file="index">codeapi</docanchor>
  </compound>
</tagfile>
