<?xml version='1.0' encoding='UTF-8' standalone='yes' ?>
<tagfile>
  <compound kind="file">
    <name>doc.dox</name>
    <path>/tmp/ws/src/realtime_tools/</path>
    <filename>doc_8dox</filename>
  </compound>
  <compound kind="file">
    <name>realtime_box.h</name>
    <path>/tmp/ws/src/realtime_tools/include/realtime_tools/</path>
    <filename>realtime__box_8h</filename>
    <class kind="class">realtime_tools::RealtimeBox</class>
    <namespace>realtime_tools</namespace>
  </compound>
  <compound kind="file">
    <name>realtime_box_tests.cpp</name>
    <path>/tmp/ws/src/realtime_tools/test/</path>
    <filename>realtime__box__tests_8cpp</filename>
    <includes id="realtime__box_8h" name="realtime_box.h" local="no" imported="no">realtime_tools/realtime_box.h</includes>
    <class kind="class">DefaultConstructable</class>
    <member kind="function">
      <type></type>
      <name>TEST</name>
      <anchorfile>realtime__box__tests_8cpp.html</anchorfile>
      <anchor>af25b21418b8aed0b8dae44ce5db8db29</anchor>
      <arglist>(RealtimeBox, default_construct)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>TEST</name>
      <anchorfile>realtime__box__tests_8cpp.html</anchorfile>
      <anchor>a54dff15ebe12c4a79adc9e55ec2c033f</anchor>
      <arglist>(RealtimeBox, initial_value)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>TEST</name>
      <anchorfile>realtime__box__tests_8cpp.html</anchorfile>
      <anchor>a16da781345fa3f4d0703e27aac0db0a8</anchor>
      <arglist>(RealtimeBox, set_and_get)</arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>realtime_buffer.h</name>
    <path>/tmp/ws/src/realtime_tools/include/realtime_tools/</path>
    <filename>realtime__buffer_8h</filename>
    <class kind="class">realtime_tools::RealtimeBuffer</class>
    <namespace>realtime_tools</namespace>
  </compound>
  <compound kind="file">
    <name>realtime_buffer_tests.cpp</name>
    <path>/tmp/ws/src/realtime_tools/test/</path>
    <filename>realtime__buffer__tests_8cpp</filename>
    <includes id="realtime__buffer_8h" name="realtime_buffer.h" local="no" imported="no">realtime_tools/realtime_buffer.h</includes>
    <class kind="class">DefaultConstructable</class>
    <member kind="function">
      <type></type>
      <name>TEST</name>
      <anchorfile>realtime__buffer__tests_8cpp.html</anchorfile>
      <anchor>a92575d76615a1550e37df12c1b33f325</anchor>
      <arglist>(RealtimeBuffer, default_construct)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>TEST</name>
      <anchorfile>realtime__buffer__tests_8cpp.html</anchorfile>
      <anchor>af900f08d58f533a3cbd3bee5b4ad5289</anchor>
      <arglist>(RealtimeBuffer, initial_value)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>TEST</name>
      <anchorfile>realtime__buffer__tests_8cpp.html</anchorfile>
      <anchor>aadc9598a799283e64d23293f4ecaef24</anchor>
      <arglist>(RealtimeBuffer, copy_construct)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>TEST</name>
      <anchorfile>realtime__buffer__tests_8cpp.html</anchorfile>
      <anchor>abf68a9411458a0baca08ed4cbb84c915</anchor>
      <arglist>(RealtimeBuffer, assignment_operator)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>TEST</name>
      <anchorfile>realtime__buffer__tests_8cpp.html</anchorfile>
      <anchor>a32ca4f6488b16672622dd5f5466731b8</anchor>
      <arglist>(RealtimeBuffer, write_read_non_rt)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>TEST</name>
      <anchorfile>realtime__buffer__tests_8cpp.html</anchorfile>
      <anchor>aa8d4e165abfff08e145becce3918b11f</anchor>
      <arglist>(RealtimeBuffer, initRT)</arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>realtime_clock.cpp</name>
    <path>/tmp/ws/src/realtime_tools/src/</path>
    <filename>realtime__clock_8cpp</filename>
    <includes id="realtime__clock_8h" name="realtime_clock.h" local="no" imported="no">realtime_tools/realtime_clock.h</includes>
    <namespace>realtime_tools</namespace>
  </compound>
  <compound kind="file">
    <name>realtime_clock.h</name>
    <path>/tmp/ws/src/realtime_tools/include/realtime_tools/</path>
    <filename>realtime__clock_8h</filename>
    <class kind="class">realtime_tools::RealtimeClock</class>
    <namespace>realtime_tools</namespace>
  </compound>
  <compound kind="file">
    <name>realtime_clock_tests.cpp</name>
    <path>/tmp/ws/src/realtime_tools/test/</path>
    <filename>realtime__clock__tests_8cpp</filename>
    <includes id="realtime__clock_8h" name="realtime_clock.h" local="no" imported="no">realtime_tools/realtime_clock.h</includes>
    <member kind="function">
      <type>int</type>
      <name>main</name>
      <anchorfile>realtime__clock__tests_8cpp.html</anchorfile>
      <anchor>a3c04138a5bfe5d72780bb7e82a18e627</anchor>
      <arglist>(int argc, char **argv)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>TEST</name>
      <anchorfile>realtime__clock__tests_8cpp.html</anchorfile>
      <anchor>af6114a0ed12999ab837289302569e1a4</anchor>
      <arglist>(RealtimeClock, get_system_time)</arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>realtime_publisher.h</name>
    <path>/tmp/ws/src/realtime_tools/include/realtime_tools/</path>
    <filename>realtime__publisher_8h</filename>
    <class kind="class">realtime_tools::RealtimePublisher</class>
    <namespace>realtime_tools</namespace>
    <member kind="typedef">
      <type>std::shared_ptr&lt; RealtimePublisher&lt; Msg &gt; &gt;</type>
      <name>RealtimePublisherSharedPtr</name>
      <anchorfile>namespacerealtime__tools.html</anchorfile>
      <anchor>a2c6e3aeb6d651c4b42b32e9ee6765350</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>realtime_publisher_tests.cpp</name>
    <path>/tmp/ws/src/realtime_tools/test/</path>
    <filename>realtime__publisher__tests_8cpp</filename>
    <includes id="realtime__publisher_8h" name="realtime_publisher.h" local="no" imported="no">realtime_tools/realtime_publisher.h</includes>
    <class kind="struct">StringCallback</class>
    <member kind="function">
      <type>int</type>
      <name>main</name>
      <anchorfile>realtime__publisher__tests_8cpp.html</anchorfile>
      <anchor>a3c04138a5bfe5d72780bb7e82a18e627</anchor>
      <arglist>(int argc, char **argv)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>TEST</name>
      <anchorfile>realtime__publisher__tests_8cpp.html</anchorfile>
      <anchor>a1a3171e7e4c822d66ee78e3fd16fbf9b</anchor>
      <arglist>(RealtimePublisher, construct_destruct)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>TEST</name>
      <anchorfile>realtime__publisher__tests_8cpp.html</anchorfile>
      <anchor>a00a6645b8932277f4c51756a5db2624c</anchor>
      <arglist>(RealtimePublisher, construct_init_destruct)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>TEST</name>
      <anchorfile>realtime__publisher__tests_8cpp.html</anchorfile>
      <anchor>a563291a6b469b7652479f9fb02f0bc44</anchor>
      <arglist>(RealtimePublisher, rt_publish)</arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>realtime_server_goal_handle.h</name>
    <path>/tmp/ws/src/realtime_tools/include/realtime_tools/</path>
    <filename>realtime__server__goal__handle_8h</filename>
    <class kind="class">realtime_tools::RealtimeServerGoalHandle</class>
    <namespace>realtime_tools</namespace>
  </compound>
  <compound kind="file">
    <name>realtime_server_goal_handle_tests.cpp</name>
    <path>/tmp/ws/src/realtime_tools/test/</path>
    <filename>realtime__server__goal__handle__tests_8cpp</filename>
    <includes id="realtime__server__goal__handle_8h" name="realtime_server_goal_handle.h" local="no" imported="no">realtime_tools/realtime_server_goal_handle.h</includes>
    <class kind="struct">ActionCallback</class>
    <class kind="struct">FeedbackCallback</class>
    <member kind="typedef">
      <type>actionlib::SimpleActionClient&lt; actionlib::TwoIntsAction &gt;</type>
      <name>TwoIntsActionClient</name>
      <anchorfile>realtime__server__goal__handle__tests_8cpp.html</anchorfile>
      <anchor>a2afd2a4eb2c5406157e92a31fdecbd94</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef">
      <type>actionlib::ActionServer&lt; actionlib::TwoIntsAction &gt;</type>
      <name>TwoIntsActionServer</name>
      <anchorfile>realtime__server__goal__handle__tests_8cpp.html</anchorfile>
      <anchor>a03256d769c400bde1628c9f912facac6</anchor>
      <arglist></arglist>
    </member>
    <member kind="function">
      <type>const std::chrono::milliseconds</type>
      <name>DELAY</name>
      <anchorfile>realtime__server__goal__handle__tests_8cpp.html</anchorfile>
      <anchor>a80caca8d2e330617277e03c8a1ef69fc</anchor>
      <arglist>(250)</arglist>
    </member>
    <member kind="function">
      <type>int</type>
      <name>main</name>
      <anchorfile>realtime__server__goal__handle__tests_8cpp.html</anchorfile>
      <anchor>a3c04138a5bfe5d72780bb7e82a18e627</anchor>
      <arglist>(int argc, char **argv)</arglist>
    </member>
    <member kind="function">
      <type>std::shared_ptr&lt; TwoIntsActionServer &gt;</type>
      <name>make_server</name>
      <anchorfile>realtime__server__goal__handle__tests_8cpp.html</anchorfile>
      <anchor>a9e80dffdabcbd19bba7fc78d6ef4e26b</anchor>
      <arglist>(const std::string &amp;server_name, ActionCallback &amp;callbacks)</arglist>
    </member>
    <member kind="function">
      <type>std::shared_ptr&lt; TwoIntsActionClient &gt;</type>
      <name>send_goal</name>
      <anchorfile>realtime__server__goal__handle__tests_8cpp.html</anchorfile>
      <anchor>a351ed7ca27aaa4a11e2ca8c7424cd8a5</anchor>
      <arglist>(const std::string &amp;server_name, FeedbackCallback *cb=nullptr)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>TEST</name>
      <anchorfile>realtime__server__goal__handle__tests_8cpp.html</anchorfile>
      <anchor>a0f6c17e6f753da34b3ea9a2d48438c52</anchor>
      <arglist>(RealtimeServerGoalHandle, set_aborted)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>TEST</name>
      <anchorfile>realtime__server__goal__handle__tests_8cpp.html</anchorfile>
      <anchor>a91b7bf50288b04f3edcce191ae2bd44b</anchor>
      <arglist>(RealtimeServerGoalHandle, set_canceled)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>TEST</name>
      <anchorfile>realtime__server__goal__handle__tests_8cpp.html</anchorfile>
      <anchor>a7017d9e71a618e5ffe05db91c171070d</anchor>
      <arglist>(RealtimeServerGoalHandle, set_succeeded)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>TEST</name>
      <anchorfile>realtime__server__goal__handle__tests_8cpp.html</anchorfile>
      <anchor>adb4c59ac3e5f254d10edddee25f1a1ae</anchor>
      <arglist>(RealtimeServerGoalHandle, send_feedback)</arglist>
    </member>
    <member kind="function">
      <type>bool</type>
      <name>wait_for_result</name>
      <anchorfile>realtime__server__goal__handle__tests_8cpp.html</anchorfile>
      <anchor>af6a012da0a870406464904d61699d490</anchor>
      <arglist>(std::shared_ptr&lt; TwoIntsActionClient &gt; ac)</arglist>
    </member>
    <member kind="variable">
      <type>const size_t</type>
      <name>ATTEMPTS</name>
      <anchorfile>realtime__server__goal__handle__tests_8cpp.html</anchorfile>
      <anchor>a71412c66aa0fe3446361fa5c53a62ee5</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>ActionCallback</name>
    <filename>structActionCallback.html</filename>
    <member kind="typedef">
      <type>TwoIntsActionServer::GoalHandle</type>
      <name>GoalHandle</name>
      <anchorfile>structActionCallback.html</anchorfile>
      <anchor>ada1151791d4862a36a9d2d80a0acf4d9</anchor>
      <arglist></arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>cancel_callback</name>
      <anchorfile>structActionCallback.html</anchorfile>
      <anchor>aff2e5b82bb49de348a093b8ee766623d</anchor>
      <arglist>(GoalHandle handle)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>goal_callback</name>
      <anchorfile>structActionCallback.html</anchorfile>
      <anchor>a1bf88d1997bd35924ddcf12324b40f08</anchor>
      <arglist>(GoalHandle handle)</arglist>
    </member>
    <member kind="function">
      <type>bool</type>
      <name>wait_for_handle</name>
      <anchorfile>structActionCallback.html</anchorfile>
      <anchor>ad2459fe41eeb90f4f7d6714a641c51d9</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="variable">
      <type>GoalHandle</type>
      <name>handle_</name>
      <anchorfile>structActionCallback.html</anchorfile>
      <anchor>a8186a015cbab6c746756e9a15dd0a5a0</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>bool</type>
      <name>have_handle_</name>
      <anchorfile>structActionCallback.html</anchorfile>
      <anchor>a75b5b6e0efabf6dac4f0f7b66f28a35a</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>std::mutex</type>
      <name>mtx_</name>
      <anchorfile>structActionCallback.html</anchorfile>
      <anchor>ae7878363ef39be15b870849c51049b4b</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>DefaultConstructable</name>
    <filename>classDefaultConstructable.html</filename>
    <member kind="function">
      <type></type>
      <name>DefaultConstructable</name>
      <anchorfile>classDefaultConstructable.html</anchorfile>
      <anchor>a3d9955b5a49fd8b16de4784d933f5616</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>DefaultConstructable</name>
      <anchorfile>classDefaultConstructable.html</anchorfile>
      <anchor>a3d9955b5a49fd8b16de4784d933f5616</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>~DefaultConstructable</name>
      <anchorfile>classDefaultConstructable.html</anchorfile>
      <anchor>a74baa5f39ed0e0b4b689ebdfc3bacf62</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>~DefaultConstructable</name>
      <anchorfile>classDefaultConstructable.html</anchorfile>
      <anchor>a74baa5f39ed0e0b4b689ebdfc3bacf62</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="variable">
      <type>int</type>
      <name>number_</name>
      <anchorfile>classDefaultConstructable.html</anchorfile>
      <anchor>a7da576f8d0e9a1b50d7f251ae084c353</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>FeedbackCallback</name>
    <filename>structFeedbackCallback.html</filename>
    <member kind="typedef">
      <type>TwoIntsActionServer::FeedbackConstPtr</type>
      <name>FeedbackConstPtr</name>
      <anchorfile>structFeedbackCallback.html</anchorfile>
      <anchor>a8640691bdcdfe470e94c35c5c51eaec5</anchor>
      <arglist></arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>feedback_callback</name>
      <anchorfile>structFeedbackCallback.html</anchorfile>
      <anchor>a1ce5a3cfe5c62ab8550dd601d1f2e01f</anchor>
      <arglist>(const FeedbackConstPtr &amp;)</arglist>
    </member>
    <member kind="function">
      <type>bool</type>
      <name>wait_for_feedback</name>
      <anchorfile>structFeedbackCallback.html</anchorfile>
      <anchor>afde6b2c0ba24f054ea8e9c56813bdb66</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="variable">
      <type>bool</type>
      <name>have_feedback_</name>
      <anchorfile>structFeedbackCallback.html</anchorfile>
      <anchor>a5cd6e6296221c8d0e56e4c95334fd854</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>std::mutex</type>
      <name>mtx_</name>
      <anchorfile>structFeedbackCallback.html</anchorfile>
      <anchor>a7021ef0d26c4c66fd35be21e3fad29b3</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>realtime_tools::RealtimeBox</name>
    <filename>classrealtime__tools_1_1RealtimeBox.html</filename>
    <templarg>T</templarg>
    <member kind="function">
      <type>void</type>
      <name>get</name>
      <anchorfile>classrealtime__tools_1_1RealtimeBox.html</anchorfile>
      <anchor>a028cec2f78bf14ce487cf812369ee8c8</anchor>
      <arglist>(T &amp;ref)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>RealtimeBox</name>
      <anchorfile>classrealtime__tools_1_1RealtimeBox.html</anchorfile>
      <anchor>a6c686eb423c30824d4388c27e2f47b07</anchor>
      <arglist>(const T &amp;initial=T())</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>set</name>
      <anchorfile>classrealtime__tools_1_1RealtimeBox.html</anchorfile>
      <anchor>a7972369ab585244bef5f1788d626987d</anchor>
      <arglist>(const T &amp;value)</arglist>
    </member>
    <member kind="variable" protection="private">
      <type>T</type>
      <name>thing_</name>
      <anchorfile>classrealtime__tools_1_1RealtimeBox.html</anchorfile>
      <anchor>a0e6304d8658f01dc8acbcb5a54c60df8</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::mutex</type>
      <name>thing_lock_RT_</name>
      <anchorfile>classrealtime__tools_1_1RealtimeBox.html</anchorfile>
      <anchor>a6b024dcafb8bb1b63aa4a1fa35934c71</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>realtime_tools::RealtimeBuffer</name>
    <filename>classrealtime__tools_1_1RealtimeBuffer.html</filename>
    <templarg>T</templarg>
    <member kind="function">
      <type>void</type>
      <name>initRT</name>
      <anchorfile>classrealtime__tools_1_1RealtimeBuffer.html</anchorfile>
      <anchor>a03631ee7a24513ae20ae57f8bc768910</anchor>
      <arglist>(const T &amp;data)</arglist>
    </member>
    <member kind="function">
      <type>RealtimeBuffer &amp;</type>
      <name>operator=</name>
      <anchorfile>classrealtime__tools_1_1RealtimeBuffer.html</anchorfile>
      <anchor>ae22fe42ee2c675a1658689775ea8bc98</anchor>
      <arglist>(const RealtimeBuffer &amp;source)</arglist>
    </member>
    <member kind="function">
      <type>T *</type>
      <name>readFromNonRT</name>
      <anchorfile>classrealtime__tools_1_1RealtimeBuffer.html</anchorfile>
      <anchor>ac62c7801dfb37ceceee300a8c7ddd0fc</anchor>
      <arglist>() const</arglist>
    </member>
    <member kind="function">
      <type>T *</type>
      <name>readFromRT</name>
      <anchorfile>classrealtime__tools_1_1RealtimeBuffer.html</anchorfile>
      <anchor>a6f8b7499cb06c1a31f663d134d67602c</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>RealtimeBuffer</name>
      <anchorfile>classrealtime__tools_1_1RealtimeBuffer.html</anchorfile>
      <anchor>aa625d5d6419031c6637c67796926e00c</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>RealtimeBuffer</name>
      <anchorfile>classrealtime__tools_1_1RealtimeBuffer.html</anchorfile>
      <anchor>afac90c833c2a24d17720abc42200bf55</anchor>
      <arglist>(const T &amp;data)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>RealtimeBuffer</name>
      <anchorfile>classrealtime__tools_1_1RealtimeBuffer.html</anchorfile>
      <anchor>ac40277758aecddd868f1f9244995a8f7</anchor>
      <arglist>(const RealtimeBuffer &amp;source)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>writeFromNonRT</name>
      <anchorfile>classrealtime__tools_1_1RealtimeBuffer.html</anchorfile>
      <anchor>a281d039f969248d6d29a872d0ea1f9e6</anchor>
      <arglist>(const T &amp;data)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>~RealtimeBuffer</name>
      <anchorfile>classrealtime__tools_1_1RealtimeBuffer.html</anchorfile>
      <anchor>a684971e46e9b2471bede59746ce7d540</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::mutex</type>
      <name>mutex_</name>
      <anchorfile>classrealtime__tools_1_1RealtimeBuffer.html</anchorfile>
      <anchor>ae57e7e1a0b99c7d50b56b976c958fdae</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>bool</type>
      <name>new_data_available_</name>
      <anchorfile>classrealtime__tools_1_1RealtimeBuffer.html</anchorfile>
      <anchor>af081fad6078544d84ab401ae25f19176</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>T *</type>
      <name>non_realtime_data_</name>
      <anchorfile>classrealtime__tools_1_1RealtimeBuffer.html</anchorfile>
      <anchor>abb7581463be675a8e6200b69b5066c9d</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>T *</type>
      <name>realtime_data_</name>
      <anchorfile>classrealtime__tools_1_1RealtimeBuffer.html</anchorfile>
      <anchor>a44a4369442ff6b4422f0ee68fd82f43d</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>realtime_tools::RealtimeClock</name>
    <filename>classrealtime__tools_1_1RealtimeClock.html</filename>
    <member kind="function">
      <type>ros::Time</type>
      <name>getSystemTime</name>
      <anchorfile>classrealtime__tools_1_1RealtimeClock.html</anchorfile>
      <anchor>abd5a40b13b2ed69218eeae90a0ce26da</anchor>
      <arglist>(const ros::Time &amp;realtime_time)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>loop</name>
      <anchorfile>classrealtime__tools_1_1RealtimeClock.html</anchorfile>
      <anchor>a972d7d71091e17227db2a5125b2f8f56</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>RealtimeClock</name>
      <anchorfile>classrealtime__tools_1_1RealtimeClock.html</anchorfile>
      <anchor>a0531b46989e6df7bb14b1a0f6ae5a691</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>~RealtimeClock</name>
      <anchorfile>classrealtime__tools_1_1RealtimeClock.html</anchorfile>
      <anchor>a23f2016e299a32077dff3f3c4e6c37cb</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="variable" protection="private">
      <type>ros::Duration</type>
      <name>clock_offset_</name>
      <anchorfile>classrealtime__tools_1_1RealtimeClock.html</anchorfile>
      <anchor>a0da624a2765ce0d0445f168c198b3541</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>bool</type>
      <name>initialized_</name>
      <anchorfile>classrealtime__tools_1_1RealtimeClock.html</anchorfile>
      <anchor>a8057f95c3320e6ede5f5975bcfa62e3c</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>ros::Time</type>
      <name>last_realtime_time_</name>
      <anchorfile>classrealtime__tools_1_1RealtimeClock.html</anchorfile>
      <anchor>a4a8fe56a70d4073305fc2751e4a0da5a</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>unsigned int</type>
      <name>lock_misses_</name>
      <anchorfile>classrealtime__tools_1_1RealtimeClock.html</anchorfile>
      <anchor>afff3a165cfbb2e736e3463b7328ebfe6</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::mutex</type>
      <name>mutex_</name>
      <anchorfile>classrealtime__tools_1_1RealtimeClock.html</anchorfile>
      <anchor>ab6788da5dc68b150b26b2ba98b439376</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>bool</type>
      <name>running_</name>
      <anchorfile>classrealtime__tools_1_1RealtimeClock.html</anchorfile>
      <anchor>a020809661a242732b018d42fc4c7ec76</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>ros::Time</type>
      <name>system_time_</name>
      <anchorfile>classrealtime__tools_1_1RealtimeClock.html</anchorfile>
      <anchor>a41a3305d5d583503cdcbade5d36f2e39</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::thread</type>
      <name>thread_</name>
      <anchorfile>classrealtime__tools_1_1RealtimeClock.html</anchorfile>
      <anchor>a2c03619b162d09964aaddf9bfcd37d0f</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>realtime_tools::RealtimePublisher</name>
    <filename>classrealtime__tools_1_1RealtimePublisher.html</filename>
    <templarg>Msg</templarg>
    <member kind="function">
      <type>void</type>
      <name>init</name>
      <anchorfile>classrealtime__tools_1_1RealtimePublisher.html</anchorfile>
      <anchor>addd12313d80e1aaf20af953f9953e092</anchor>
      <arglist>(const ros::NodeHandle &amp;node, const std::string &amp;topic, int queue_size, bool latched=false)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>lock</name>
      <anchorfile>classrealtime__tools_1_1RealtimePublisher.html</anchorfile>
      <anchor>ac9a8f5aa2cc9a0b9bded10f71ec55cfd</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>RealtimePublisher</name>
      <anchorfile>classrealtime__tools_1_1RealtimePublisher.html</anchorfile>
      <anchor>acf9da72ca4f9c195e8995a8d45d6afbd</anchor>
      <arglist>(const ros::NodeHandle &amp;node, const std::string &amp;topic, int queue_size, bool latched=false)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>RealtimePublisher</name>
      <anchorfile>classrealtime__tools_1_1RealtimePublisher.html</anchorfile>
      <anchor>a2d169cc30be6914f50415b195c12476c</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>stop</name>
      <anchorfile>classrealtime__tools_1_1RealtimePublisher.html</anchorfile>
      <anchor>a0d71149876a2a3eacba6a8c0c090d1a9</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>bool</type>
      <name>trylock</name>
      <anchorfile>classrealtime__tools_1_1RealtimePublisher.html</anchorfile>
      <anchor>a1211bef072b160c7f6b19696b2abdd0e</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>unlock</name>
      <anchorfile>classrealtime__tools_1_1RealtimePublisher.html</anchorfile>
      <anchor>abf51539ed8f76b1e41f681e31b319dc0</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>unlockAndPublish</name>
      <anchorfile>classrealtime__tools_1_1RealtimePublisher.html</anchorfile>
      <anchor>a9838f4e516fd523fed63bf92e8e0cdbf</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>~RealtimePublisher</name>
      <anchorfile>classrealtime__tools_1_1RealtimePublisher.html</anchorfile>
      <anchor>a9f231254c6a62b63de82391ccb464298</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="variable">
      <type>Msg</type>
      <name>msg_</name>
      <anchorfile>classrealtime__tools_1_1RealtimePublisher.html</anchorfile>
      <anchor>a4428e3e402088a76d3e18b7854ae473a</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue" protection="private">
      <name>REALTIME</name>
      <anchorfile>classrealtime__tools_1_1RealtimePublisher.html</anchorfile>
      <anchor>a7a2887b3b3e6769bd9c27812d944b17faf141a3c0d056f1565ff996d01340d6a0</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue" protection="private">
      <name>NON_REALTIME</name>
      <anchorfile>classrealtime__tools_1_1RealtimePublisher.html</anchorfile>
      <anchor>a7a2887b3b3e6769bd9c27812d944b17fa5235b0611858ea34e1475420706aa630</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue" protection="private">
      <name>LOOP_NOT_STARTED</name>
      <anchorfile>classrealtime__tools_1_1RealtimePublisher.html</anchorfile>
      <anchor>a7a2887b3b3e6769bd9c27812d944b17fa1f7f9a66a42f89656c8119dea6830db6</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue" protection="private">
      <name>LOOP_NOT_STARTED</name>
      <anchorfile>classrealtime__tools_1_1RealtimePublisher.html</anchorfile>
      <anchor>a7a2887b3b3e6769bd9c27812d944b17fa1f7f9a66a42f89656c8119dea6830db6</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue" protection="private">
      <name>NON_REALTIME</name>
      <anchorfile>classrealtime__tools_1_1RealtimePublisher.html</anchorfile>
      <anchor>a7a2887b3b3e6769bd9c27812d944b17fa5235b0611858ea34e1475420706aa630</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue" protection="private">
      <name>REALTIME</name>
      <anchorfile>classrealtime__tools_1_1RealtimePublisher.html</anchorfile>
      <anchor>a7a2887b3b3e6769bd9c27812d944b17faf141a3c0d056f1565ff996d01340d6a0</anchor>
      <arglist></arglist>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>construct</name>
      <anchorfile>classrealtime__tools_1_1RealtimePublisher.html</anchorfile>
      <anchor>ae98b76a5faad60946e94b92838eb82da</anchor>
      <arglist>(int queue_size, bool latched=false)</arglist>
    </member>
    <member kind="function" protection="private">
      <type>bool</type>
      <name>is_running</name>
      <anchorfile>classrealtime__tools_1_1RealtimePublisher.html</anchorfile>
      <anchor>aca9239b5617ec0a5171d70f9b33dd43d</anchor>
      <arglist>() const</arglist>
    </member>
    <member kind="function" protection="private">
      <type>RealtimePublisher &amp;</type>
      <name>operator=</name>
      <anchorfile>classrealtime__tools_1_1RealtimePublisher.html</anchorfile>
      <anchor>a375b8aa4b403f043bb1da23d02da544d</anchor>
      <arglist>(const RealtimePublisher &amp;)=delete</arglist>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>publishingLoop</name>
      <anchorfile>classrealtime__tools_1_1RealtimePublisher.html</anchorfile>
      <anchor>a999aa45fdf138e582c589ba3394f1ecb</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" protection="private">
      <type></type>
      <name>RealtimePublisher</name>
      <anchorfile>classrealtime__tools_1_1RealtimePublisher.html</anchorfile>
      <anchor>a98e95bbc7036df41028a9e575cd96db9</anchor>
      <arglist>(const RealtimePublisher &amp;)=delete</arglist>
    </member>
    <member kind="variable" protection="private">
      <type>volatile bool</type>
      <name>is_running_</name>
      <anchorfile>classrealtime__tools_1_1RealtimePublisher.html</anchorfile>
      <anchor>ab5e6d3500810ec2ee483c16eaa563f1f</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>volatile bool</type>
      <name>keep_running_</name>
      <anchorfile>classrealtime__tools_1_1RealtimePublisher.html</anchorfile>
      <anchor>a5caa6c28fd969fd00d032d117eb4e636</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::mutex</type>
      <name>msg_mutex_</name>
      <anchorfile>classrealtime__tools_1_1RealtimePublisher.html</anchorfile>
      <anchor>a1443542b4cff449ffdf4c49ef74d22f2</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>ros::NodeHandle</type>
      <name>node_</name>
      <anchorfile>classrealtime__tools_1_1RealtimePublisher.html</anchorfile>
      <anchor>a28440bfef9919ff3bd9be21f46d725b8</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>ros::Publisher</type>
      <name>publisher_</name>
      <anchorfile>classrealtime__tools_1_1RealtimePublisher.html</anchorfile>
      <anchor>adae2016b2a41ed1159cd5ff82819f4d5</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::thread</type>
      <name>thread_</name>
      <anchorfile>classrealtime__tools_1_1RealtimePublisher.html</anchorfile>
      <anchor>ad54ecdb6c94f83953ea0c75c759a7c62</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::string</type>
      <name>topic_</name>
      <anchorfile>classrealtime__tools_1_1RealtimePublisher.html</anchorfile>
      <anchor>a668d01dae37d759edf6c50c4382191be</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>int</type>
      <name>turn_</name>
      <anchorfile>classrealtime__tools_1_1RealtimePublisher.html</anchorfile>
      <anchor>ab3585b65bb576feda3a21ee588cf9bc5</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>realtime_tools::RealtimeServerGoalHandle</name>
    <filename>classrealtime__tools_1_1RealtimeServerGoalHandle.html</filename>
    <templarg></templarg>
    <member kind="function">
      <type></type>
      <name>RealtimeServerGoalHandle</name>
      <anchorfile>classrealtime__tools_1_1RealtimeServerGoalHandle.html</anchorfile>
      <anchor>a77bcebdaa7ec480dc207dcda7428b1cc</anchor>
      <arglist>(GoalHandle &amp;gh, const ResultPtr &amp;preallocated_result=ResultPtr((Result *) NULL), const FeedbackPtr &amp;preallocated_feedback=FeedbackPtr((Feedback *) NULL))</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>runNonRealtime</name>
      <anchorfile>classrealtime__tools_1_1RealtimeServerGoalHandle.html</anchorfile>
      <anchor>a1441462ba8278c357fa8fac81219ea49</anchor>
      <arglist>(const ros::TimerEvent &amp;te)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>setAborted</name>
      <anchorfile>classrealtime__tools_1_1RealtimeServerGoalHandle.html</anchorfile>
      <anchor>a0d24ad3ce102616b4e1e2f0f3fe6e949</anchor>
      <arglist>(ResultConstPtr result=ResultConstPtr((Result *) NULL))</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>setCanceled</name>
      <anchorfile>classrealtime__tools_1_1RealtimeServerGoalHandle.html</anchorfile>
      <anchor>abd6c41d41acb47ffc2e3b9ce2a76fd96</anchor>
      <arglist>(ResultConstPtr result=ResultConstPtr((Result *) NULL))</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>setFeedback</name>
      <anchorfile>classrealtime__tools_1_1RealtimeServerGoalHandle.html</anchorfile>
      <anchor>af764426e39b1edc2afff7480be7fae70</anchor>
      <arglist>(FeedbackConstPtr feedback=FeedbackConstPtr((Feedback *) NULL))</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>setSucceeded</name>
      <anchorfile>classrealtime__tools_1_1RealtimeServerGoalHandle.html</anchorfile>
      <anchor>a336a818dac108c85d4488d0675496175</anchor>
      <arglist>(ResultConstPtr result=ResultConstPtr((Result *) NULL))</arglist>
    </member>
    <member kind="function">
      <type>bool</type>
      <name>valid</name>
      <anchorfile>classrealtime__tools_1_1RealtimeServerGoalHandle.html</anchorfile>
      <anchor>ae4037e6fdb8dfb04cea34a5ea4f34be0</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="variable">
      <type>GoalHandle</type>
      <name>gh_</name>
      <anchorfile>classrealtime__tools_1_1RealtimeServerGoalHandle.html</anchorfile>
      <anchor>a0281331ed989ba8093f2c58dfca49a35</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>FeedbackPtr</type>
      <name>preallocated_feedback_</name>
      <anchorfile>classrealtime__tools_1_1RealtimeServerGoalHandle.html</anchorfile>
      <anchor>ae28fa7261aae8c53eee2941ae4f0f9c3</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>ResultPtr</type>
      <name>preallocated_result_</name>
      <anchorfile>classrealtime__tools_1_1RealtimeServerGoalHandle.html</anchorfile>
      <anchor>a1b589d698c200095498e72ad98fdff3b</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef" protection="private">
      <type>actionlib::ServerGoalHandle&lt; Action &gt;</type>
      <name>GoalHandle</name>
      <anchorfile>classrealtime__tools_1_1RealtimeServerGoalHandle.html</anchorfile>
      <anchor>a2df19c6346fb7535a82e8e3b7953f9a5</anchor>
      <arglist></arglist>
    </member>
    <member kind="function" protection="private">
      <type></type>
      <name>ACTION_DEFINITION</name>
      <anchorfile>classrealtime__tools_1_1RealtimeServerGoalHandle.html</anchorfile>
      <anchor>aacdd0af4010d7efcb5f1fc585ffb5c93</anchor>
      <arglist>(Action)</arglist>
    </member>
    <member kind="variable" protection="private">
      <type>bool</type>
      <name>req_abort_</name>
      <anchorfile>classrealtime__tools_1_1RealtimeServerGoalHandle.html</anchorfile>
      <anchor>a7e5efa9a72540a90dabba234c93dcf79</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>bool</type>
      <name>req_cancel_</name>
      <anchorfile>classrealtime__tools_1_1RealtimeServerGoalHandle.html</anchorfile>
      <anchor>a94b9b365e5773041cdb2f2cc99a1b88f</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>FeedbackConstPtr</type>
      <name>req_feedback_</name>
      <anchorfile>classrealtime__tools_1_1RealtimeServerGoalHandle.html</anchorfile>
      <anchor>a3474a4d7d91046343abfdb32eb9bd678</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>ResultConstPtr</type>
      <name>req_result_</name>
      <anchorfile>classrealtime__tools_1_1RealtimeServerGoalHandle.html</anchorfile>
      <anchor>a459dca35345a6e629cef5a3e4ec70a92</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>bool</type>
      <name>req_succeed_</name>
      <anchorfile>classrealtime__tools_1_1RealtimeServerGoalHandle.html</anchorfile>
      <anchor>a4bd2b4646683b120a0a2e4926dfa8aa4</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>uint8_t</type>
      <name>state_</name>
      <anchorfile>classrealtime__tools_1_1RealtimeServerGoalHandle.html</anchorfile>
      <anchor>aaa097198ac92f36c530646b0aa830b96</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>StringCallback</name>
    <filename>structStringCallback.html</filename>
    <member kind="function">
      <type>void</type>
      <name>callback</name>
      <anchorfile>structStringCallback.html</anchorfile>
      <anchor>a70104992516e610ea4ccd1f1df9b4676</anchor>
      <arglist>(const std_msgs::String &amp;msg)</arglist>
    </member>
    <member kind="variable">
      <type>std_msgs::String</type>
      <name>msg_</name>
      <anchorfile>structStringCallback.html</anchorfile>
      <anchor>ab2868f7260f9d0e54a0e5a9be5ae6729</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>std::mutex</type>
      <name>mtx_</name>
      <anchorfile>structStringCallback.html</anchorfile>
      <anchor>a751a9d06549f35610f0ea5ccf21d825a</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="namespace">
    <name>realtime_tools</name>
    <filename>namespacerealtime__tools.html</filename>
    <class kind="class">realtime_tools::RealtimeBox</class>
    <class kind="class">realtime_tools::RealtimeBuffer</class>
    <class kind="class">realtime_tools::RealtimeClock</class>
    <class kind="class">realtime_tools::RealtimePublisher</class>
    <class kind="class">realtime_tools::RealtimeServerGoalHandle</class>
    <member kind="typedef">
      <type>std::shared_ptr&lt; RealtimePublisher&lt; Msg &gt; &gt;</type>
      <name>RealtimePublisherSharedPtr</name>
      <anchorfile>namespacerealtime__tools.html</anchorfile>
      <anchor>a2c6e3aeb6d651c4b42b32e9ee6765350</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="page">
    <name>index</name>
    <title></title>
    <filename>index</filename>
    <docanchor file="index" title="The C++ API">cpp</docanchor>
  </compound>
</tagfile>
