<?xml version='1.0' encoding='ISO-8859-1' standalone='yes' ?>
<tagfile>
  <compound kind="file">
    <name>bcm_sync.cpp</name>
    <path>/tmp/catkin_workspace/src/ros_canopen/canopen_master/src/</path>
    <filename>bcm__sync_8cpp</filename>
    <includes id="bcm__sync_8h" name="bcm_sync.h" local="no" imported="no">canopen_master/bcm_sync.h</includes>
    <member kind="function">
      <type>int</type>
      <name>main</name>
      <anchorfile>bcm__sync_8cpp.html</anchorfile>
      <anchor>a3c04138a5bfe5d72780bb7e82a18e627</anchor>
      <arglist>(int argc, char **argv)</arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>bcm_sync.h</name>
    <path>/tmp/catkin_workspace/src/ros_canopen/canopen_master/include/canopen_master/</path>
    <filename>bcm__sync_8h</filename>
    <includes id="canopen_8h" name="canopen.h" local="no" imported="no">canopen_master/canopen.h</includes>
    <class kind="class">canopen::BCMsync</class>
    <namespace>canopen</namespace>
    <member kind="function">
      <type>std::string</type>
      <name>join</name>
      <anchorfile>namespacecanopen.html</anchorfile>
      <anchor>abb5414c13fde3e81d51f3d2cd51e9df6</anchor>
      <arglist>(const T &amp;container, const std::string &amp;delim)</arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>can_layer.h</name>
    <path>/tmp/catkin_workspace/src/ros_canopen/canopen_master/include/canopen_master/</path>
    <filename>can__layer_8h</filename>
    <includes id="layer_8h" name="layer.h" local="yes" imported="no">layer.h</includes>
    <class kind="class">canopen::CANLayer</class>
    <namespace>canopen</namespace>
  </compound>
  <compound kind="file">
    <name>canopen.h</name>
    <path>/tmp/catkin_workspace/src/ros_canopen/canopen_master/include/canopen_master/</path>
    <filename>canopen_8h</filename>
    <includes id="exceptions_8h" name="exceptions.h" local="yes" imported="no">exceptions.h</includes>
    <includes id="layer_8h" name="layer.h" local="yes" imported="no">layer.h</includes>
    <includes id="objdict_8h" name="objdict.h" local="yes" imported="no">objdict.h</includes>
    <includes id="timer_8h" name="timer.h" local="yes" imported="no">timer.h</includes>
    <class kind="class">canopen::Master::Allocator</class>
    <class kind="class">canopen::PDOMapper::Buffer</class>
    <class kind="class">canopen::Chain</class>
    <class kind="class">canopen::EMCYHandler</class>
    <class kind="struct">canopen::FrameOverlay</class>
    <class kind="class">canopen::Master</class>
    <class kind="class">canopen::Node</class>
    <class kind="class">canopen::NodeChain</class>
    <class kind="class">canopen::PDOMapper::PDO</class>
    <class kind="class">canopen::PDOMapper</class>
    <class kind="struct">canopen::PDOMapper::RPDO</class>
    <class kind="class">canopen::SDOClient</class>
    <class kind="class">canopen::Settings</class>
    <class kind="class">canopen::SyncCounter</class>
    <class kind="class">canopen::SyncLayer</class>
    <class kind="struct">canopen::SyncProperties</class>
    <class kind="struct">canopen::PDOMapper::TPDO</class>
    <namespace>canopen</namespace>
    <member kind="typedef">
      <type>boost::chrono::high_resolution_clock::duration</type>
      <name>time_duration</name>
      <anchorfile>namespacecanopen.html</anchorfile>
      <anchor>a6ba2d15f009c4011a408a39663ea5264</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef">
      <type>boost::chrono::high_resolution_clock::time_point</type>
      <name>time_point</name>
      <anchorfile>namespacecanopen.html</anchorfile>
      <anchor>a871e89c0295e2ee21285ce7d2839a960</anchor>
      <arglist></arglist>
    </member>
    <member kind="function">
      <type>time_point</type>
      <name>get_abs_time</name>
      <anchorfile>namespacecanopen.html</anchorfile>
      <anchor>ab84c59bc8a7f0ecb24c96b6d085fff98</anchor>
      <arglist>(const time_duration &amp;timeout)</arglist>
    </member>
    <member kind="function">
      <type>time_point</type>
      <name>get_abs_time</name>
      <anchorfile>namespacecanopen.html</anchorfile>
      <anchor>a3e92c863290655b130984e6d9c780049</anchor>
      <arglist>()</arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>emcy.cpp</name>
    <path>/tmp/catkin_workspace/src/ros_canopen/canopen_master/src/</path>
    <filename>emcy_8cpp</filename>
    <includes id="canopen_8h" name="canopen.h" local="no" imported="no">canopen_master/canopen.h</includes>
    <class kind="struct">EMCYfield</class>
    <class kind="struct">EMCYid</class>
    <class kind="struct">EMCYmsg</class>
    <class kind="struct">EMCYmsg::Frame</class>
  </compound>
  <compound kind="file">
    <name>exceptions.h</name>
    <path>/tmp/catkin_workspace/src/ros_canopen/canopen_master/include/canopen_master/</path>
    <filename>exceptions_8h</filename>
    <class kind="class">canopen::Exception</class>
    <class kind="class">canopen::ParseException</class>
    <class kind="class">canopen::PointerInvalid</class>
    <class kind="class">canopen::TimeoutException</class>
    <namespace>canopen</namespace>
  </compound>
  <compound kind="file">
    <name>layer.h</name>
    <path>/tmp/catkin_workspace/src/ros_canopen/canopen_master/include/canopen_master/</path>
    <filename>layer_8h</filename>
    <class kind="class">canopen::DiagGroup</class>
    <class kind="struct">canopen::LayerStatus::Error</class>
    <class kind="class">canopen::Layer</class>
    <class kind="class">canopen::LayerGroup</class>
    <class kind="class">canopen::LayerGroupNoDiag</class>
    <class kind="class">canopen::LayerReport</class>
    <class kind="class">canopen::LayerStack</class>
    <class kind="class">canopen::LayerStatus</class>
    <class kind="struct">canopen::LayerStatus::Ok</class>
    <class kind="struct">canopen::LayerStatus::Stale</class>
    <class kind="struct">canopen::LayerStatus::Unbounded</class>
    <class kind="class">canopen::VectorHelper</class>
    <class kind="struct">canopen::LayerStatus::Warn</class>
    <namespace>canopen</namespace>
    <member kind="define">
      <type>#define</type>
      <name>CATCH_LAYER_HANDLER_EXCEPTIONS</name>
      <anchorfile>layer_8h.html</anchorfile>
      <anchor>afaf9c4c2fc456aab84a1eb4f22491fb8</anchor>
      <arglist>(command, status)</arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>master.cpp</name>
    <path>/tmp/catkin_workspace/src/ros_canopen/canopen_master/src/</path>
    <filename>master_8cpp</filename>
    <includes id="master_8h" name="master.h" local="no" imported="no">canopen_master/master.h</includes>
    <member kind="function">
      <type>std::size_t</type>
      <name>hash_value</name>
      <anchorfile>namespacecan.html</anchorfile>
      <anchor>a6823447f4e1b2152335b8a98747cb39e</anchor>
      <arglist>(can::Header const &amp;h)</arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>master.h</name>
    <path>/tmp/catkin_workspace/src/ros_canopen/canopen_master/include/canopen_master/</path>
    <filename>master_8h</filename>
    <includes id="canopen_8h" name="canopen.h" local="no" imported="no">canopen_master/canopen.h</includes>
    <class kind="class">canopen::UnrestrictedMaster::Allocator</class>
    <class kind="class">canopen::SharedMaster::Allocator</class>
    <class kind="class">canopen::LocalMaster::Allocator</class>
    <class kind="class">canopen::IPCSyncLayer</class>
    <class kind="class">canopen::IPCSyncMaster</class>
    <class kind="class">canopen::IPCSyncWaiter</class>
    <class kind="class">canopen::LocalIPCSyncMaster</class>
    <class kind="class">canopen::LocalMaster</class>
    <class kind="class">canopen::SharedIPCSyncMaster</class>
    <class kind="class">canopen::SharedMaster</class>
    <class kind="class">canopen::IPCSyncMaster::SyncObject</class>
    <class kind="class">canopen::UnrestrictedMaster::unrestricted</class>
    <class kind="class">canopen::UnrestrictedMaster</class>
    <namespace>canopen</namespace>
  </compound>
  <compound kind="file">
    <name>master_plugin.cpp</name>
    <path>/tmp/catkin_workspace/src/ros_canopen/canopen_master/src/</path>
    <filename>master__plugin_8cpp</filename>
    <includes id="master_8h" name="master.h" local="no" imported="no">canopen_master/master.h</includes>
    <class kind="class">canopen::WrapMaster::Allocator</class>
    <class kind="class">canopen::ExternalSyncLayer</class>
    <class kind="class">canopen::ManagingSyncLayer</class>
    <class kind="class">canopen::SimpleSyncLayer</class>
    <class kind="class">canopen::WrapMaster</class>
    <namespace>canopen</namespace>
    <member kind="typedef">
      <type>WrapMaster&lt; ExternalSyncLayer &gt;</type>
      <name>ExternalMaster</name>
      <anchorfile>namespacecanopen.html</anchorfile>
      <anchor>ae8f9463ad90ca7618a8d706721976e08</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef">
      <type>WrapMaster&lt; SimpleSyncLayer &gt;</type>
      <name>SimpleMaster</name>
      <anchorfile>namespacecanopen.html</anchorfile>
      <anchor>af33bf2cf8a7f83b53716d76568385425</anchor>
      <arglist></arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>CLASS_LOADER_REGISTER_CLASS</name>
      <anchorfile>master__plugin_8cpp.html</anchorfile>
      <anchor>a26ade43fbc4e46aa7daafb565d50b03b</anchor>
      <arglist>(canopen::LocalMaster::Allocator, canopen::Master::Allocator)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>CLASS_LOADER_REGISTER_CLASS</name>
      <anchorfile>master__plugin_8cpp.html</anchorfile>
      <anchor>a639b46111fe21cc62d0d9b6de8c602c0</anchor>
      <arglist>(canopen::SharedMaster::Allocator, canopen::Master::Allocator)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>CLASS_LOADER_REGISTER_CLASS</name>
      <anchorfile>master__plugin_8cpp.html</anchorfile>
      <anchor>ac25d581f032d0a7ad0451992872a5f5c</anchor>
      <arglist>(canopen::UnrestrictedMaster::Allocator, canopen::Master::Allocator)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>CLASS_LOADER_REGISTER_CLASS</name>
      <anchorfile>master__plugin_8cpp.html</anchorfile>
      <anchor>aaa99bf3d6c5a52cf23d7f3ec67154cf2</anchor>
      <arglist>(canopen::SimpleMaster::Allocator, canopen::Master::Allocator)</arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>node.cpp</name>
    <path>/tmp/catkin_workspace/src/ros_canopen/canopen_master/src/</path>
    <filename>node_8cpp</filename>
    <includes id="canopen_8h" name="canopen.h" local="no" imported="no">canopen_master/canopen.h</includes>
    <class kind="struct">NMTcommand::Frame</class>
    <class kind="struct">NMTcommand</class>
  </compound>
  <compound kind="file">
    <name>objdict.cpp</name>
    <path>/tmp/catkin_workspace/src/ros_canopen/canopen_master/src/</path>
    <filename>objdict_8cpp</filename>
    <includes id="objdict_8h" name="objdict.h" local="no" imported="no">canopen_master/objdict.h</includes>
    <class kind="struct">PrintValue</class>
    <class kind="struct">ReadAnyValue</class>
    <class kind="struct">WriteStringValue</class>
    <namespace>canopen</namespace>
    <member kind="function">
      <type>std::string</type>
      <name>formatValue</name>
      <anchorfile>objdict_8cpp.html</anchorfile>
      <anchor>a238258499767c6ffeb5c923110216db9</anchor>
      <arglist>(const T &amp;value)</arglist>
    </member>
    <member kind="function">
      <type>std::string</type>
      <name>formatValue&lt; ObjectDict::DEFTYPE_DOMAIN &gt;</name>
      <anchorfile>objdict_8cpp.html</anchorfile>
      <anchor>a348fcc572514d1156c9c2ec2fad8779a</anchor>
      <arglist>(const std::string &amp;value)</arglist>
    </member>
    <member kind="function">
      <type>std::string</type>
      <name>formatValue&lt; ObjectDict::DEFTYPE_OCTET_STRING &gt;</name>
      <anchorfile>objdict_8cpp.html</anchorfile>
      <anchor>afe08bf72e703963217ae30641beaf1a5</anchor>
      <arglist>(const std::string &amp;value)</arglist>
    </member>
    <member kind="function">
      <type>std::size_t</type>
      <name>hash_value</name>
      <anchorfile>namespacecanopen.html</anchorfile>
      <anchor>ae4fee86136588479cccba0e1f0cb0aee</anchor>
      <arglist>(ObjectDict::Key const &amp;k)</arglist>
    </member>
    <member kind="function">
      <type>T</type>
      <name>int_from_string</name>
      <anchorfile>objdict_8cpp.html</anchorfile>
      <anchor>a0585664b68d9f99c3ac312596dff8826</anchor>
      <arglist>(const std::string &amp;s)</arglist>
    </member>
    <member kind="function">
      <type>int8_t</type>
      <name>int_from_string</name>
      <anchorfile>objdict_8cpp.html</anchorfile>
      <anchor>af48dcf9d06e0ebd35fbfac4ec0efabb3</anchor>
      <arglist>(const std::string &amp;s)</arglist>
    </member>
    <member kind="function">
      <type>std::ostream &amp;</type>
      <name>operator&lt;&lt;</name>
      <anchorfile>namespacecanopen.html</anchorfile>
      <anchor>a538b00f30d530ac25ad0fa8ca6bfe772</anchor>
      <arglist>(std::ostream &amp;stream, const ObjectDict::Key &amp;k)</arglist>
    </member>
    <member kind="function">
      <type>HoldAny</type>
      <name>parse_int</name>
      <anchorfile>objdict_8cpp.html</anchorfile>
      <anchor>ac4ddd6980628ab1cc84d1ec4d0970f50</anchor>
      <arglist>(boost::property_tree::iptree &amp;pt, const std::string &amp;key)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>parse_object</name>
      <anchorfile>objdict_8cpp.html</anchorfile>
      <anchor>a9e870e8997629e3a44c14f5ddb14fec9</anchor>
      <arglist>(boost::shared_ptr&lt; ObjectDict &gt; dict, boost::property_tree::iptree &amp;pt, const std::string &amp;name, const uint8_t *sub_index=0)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>parse_objects</name>
      <anchorfile>objdict_8cpp.html</anchorfile>
      <anchor>a88af143db5052ce36faf789d10bd8585</anchor>
      <arglist>(boost::shared_ptr&lt; ObjectDict &gt; dict, boost::property_tree::iptree &amp;pt, const std::string &amp;key)</arglist>
    </member>
    <member kind="function">
      <type>HoldAny</type>
      <name>parse_octets</name>
      <anchorfile>objdict_8cpp.html</anchorfile>
      <anchor>a6e1acce2ef72cb33374bf9f7a915365a</anchor>
      <arglist>(boost::property_tree::iptree &amp;pt, const std::string &amp;key)</arglist>
    </member>
    <member kind="function">
      <type>HoldAny</type>
      <name>parse_typed_value</name>
      <anchorfile>objdict_8cpp.html</anchorfile>
      <anchor>ad7fa968de26959c8d3c077b00a14acb7</anchor>
      <arglist>(boost::property_tree::iptree &amp;pt, const std::string &amp;key)</arglist>
    </member>
    <member kind="function">
      <type>HoldAny</type>
      <name>parse_typed_value&lt; String &gt;</name>
      <anchorfile>objdict_8cpp.html</anchorfile>
      <anchor>a706e5db1216559edc1a5eee01ef2ec60</anchor>
      <arglist>(boost::property_tree::iptree &amp;pt, const std::string &amp;key)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>read_integer</name>
      <anchorfile>objdict_8cpp.html</anchorfile>
      <anchor>a9a5f147021b5028395363c28ea6d06c4</anchor>
      <arglist>(T &amp;var, boost::property_tree::iptree &amp;pt, const std::string &amp;key)</arglist>
    </member>
    <member kind="function">
      <type>T</type>
      <name>read_integer</name>
      <anchorfile>objdict_8cpp.html</anchorfile>
      <anchor>a165c6d26f26426338ed577b376b95f14</anchor>
      <arglist>(boost::property_tree::iptree &amp;pt, const std::string &amp;key)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>read_optional</name>
      <anchorfile>objdict_8cpp.html</anchorfile>
      <anchor>a2ab274ece88457fa2a1665778fb1bb62</anchor>
      <arglist>(T &amp;var, boost::property_tree::iptree &amp;pt, const std::string &amp;key)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>read_var</name>
      <anchorfile>objdict_8cpp.html</anchorfile>
      <anchor>a7c5eaa75af4cf1ac6d81e0689da3685d</anchor>
      <arglist>(ObjectDict::Entry &amp;entry, boost::property_tree::iptree &amp;object)</arglist>
    </member>
    <member kind="function">
      <type>HoldAny</type>
      <name>ReadAnyValue::func&lt; ObjectDict::DEFTYPE_DOMAIN &gt;</name>
      <anchorfile>objdict_8cpp.html</anchorfile>
      <anchor>ae7dd6dc1250a529101544d7580c0439d</anchor>
      <arglist>(boost::property_tree::iptree &amp;pt, const std::string &amp;key)</arglist>
    </member>
    <member kind="function">
      <type>HoldAny</type>
      <name>ReadAnyValue::func&lt; ObjectDict::DEFTYPE_INTEGER16 &gt;</name>
      <anchorfile>objdict_8cpp.html</anchorfile>
      <anchor>a4b9a059e9f067beeaeec65091ce57006</anchor>
      <arglist>(boost::property_tree::iptree &amp;pt, const std::string &amp;key)</arglist>
    </member>
    <member kind="function">
      <type>HoldAny</type>
      <name>ReadAnyValue::func&lt; ObjectDict::DEFTYPE_INTEGER32 &gt;</name>
      <anchorfile>objdict_8cpp.html</anchorfile>
      <anchor>a49b5fa755d0cef9053721b93a9fa9f85</anchor>
      <arglist>(boost::property_tree::iptree &amp;pt, const std::string &amp;key)</arglist>
    </member>
    <member kind="function">
      <type>HoldAny</type>
      <name>ReadAnyValue::func&lt; ObjectDict::DEFTYPE_INTEGER64 &gt;</name>
      <anchorfile>objdict_8cpp.html</anchorfile>
      <anchor>a203f7edbe343f0b2d5618f4a3dc678ba</anchor>
      <arglist>(boost::property_tree::iptree &amp;pt, const std::string &amp;key)</arglist>
    </member>
    <member kind="function">
      <type>HoldAny</type>
      <name>ReadAnyValue::func&lt; ObjectDict::DEFTYPE_INTEGER8 &gt;</name>
      <anchorfile>objdict_8cpp.html</anchorfile>
      <anchor>aa8e30662e624453fb0bd59ce10d8e1b6</anchor>
      <arglist>(boost::property_tree::iptree &amp;pt, const std::string &amp;key)</arglist>
    </member>
    <member kind="function">
      <type>HoldAny</type>
      <name>ReadAnyValue::func&lt; ObjectDict::DEFTYPE_OCTET_STRING &gt;</name>
      <anchorfile>objdict_8cpp.html</anchorfile>
      <anchor>a038b1f368f5c095f766ee6a05388250d</anchor>
      <arglist>(boost::property_tree::iptree &amp;pt, const std::string &amp;key)</arglist>
    </member>
    <member kind="function">
      <type>HoldAny</type>
      <name>ReadAnyValue::func&lt; ObjectDict::DEFTYPE_UNSIGNED16 &gt;</name>
      <anchorfile>objdict_8cpp.html</anchorfile>
      <anchor>adf749b201024ceda1227837abdac3ce0</anchor>
      <arglist>(boost::property_tree::iptree &amp;pt, const std::string &amp;key)</arglist>
    </member>
    <member kind="function">
      <type>HoldAny</type>
      <name>ReadAnyValue::func&lt; ObjectDict::DEFTYPE_UNSIGNED32 &gt;</name>
      <anchorfile>objdict_8cpp.html</anchorfile>
      <anchor>a606670d7a47d6b99c51714679c5ef463</anchor>
      <arglist>(boost::property_tree::iptree &amp;pt, const std::string &amp;key)</arglist>
    </member>
    <member kind="function">
      <type>HoldAny</type>
      <name>ReadAnyValue::func&lt; ObjectDict::DEFTYPE_UNSIGNED64 &gt;</name>
      <anchorfile>objdict_8cpp.html</anchorfile>
      <anchor>a40685f9c78cd4dd8865f4f237dfce7e7</anchor>
      <arglist>(boost::property_tree::iptree &amp;pt, const std::string &amp;key)</arglist>
    </member>
    <member kind="function">
      <type>HoldAny</type>
      <name>ReadAnyValue::func&lt; ObjectDict::DEFTYPE_UNSIGNED8 &gt;</name>
      <anchorfile>objdict_8cpp.html</anchorfile>
      <anchor>a5cf8a7e640497317c9ee7e2ded4018ea</anchor>
      <arglist>(boost::property_tree::iptree &amp;pt, const std::string &amp;key)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>set_access</name>
      <anchorfile>objdict_8cpp.html</anchorfile>
      <anchor>adb944415eb1061502fbfff717ad70f35</anchor>
      <arglist>(ObjectDict::Entry &amp;entry, std::string access)</arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>objdict.h</name>
    <path>/tmp/catkin_workspace/src/ros_canopen/canopen_master/include/canopen_master/</path>
    <filename>objdict_8h</filename>
    <includes id="exceptions_8h" name="exceptions.h" local="yes" imported="no">exceptions.h</includes>
    <class kind="class">canopen::AccessException</class>
    <class kind="class">canopen::ObjectStorage::Data</class>
    <class kind="struct">canopen::ObjectStorage::DataType</class>
    <class kind="struct">canopen::ObjectStorage::DataType&lt; ObjectDict::DEFTYPE_DOMAIN &gt;</class>
    <class kind="struct">canopen::ObjectStorage::DataType&lt; ObjectDict::DEFTYPE_INTEGER16 &gt;</class>
    <class kind="struct">canopen::ObjectStorage::DataType&lt; ObjectDict::DEFTYPE_INTEGER32 &gt;</class>
    <class kind="struct">canopen::ObjectStorage::DataType&lt; ObjectDict::DEFTYPE_INTEGER64 &gt;</class>
    <class kind="struct">canopen::ObjectStorage::DataType&lt; ObjectDict::DEFTYPE_INTEGER8 &gt;</class>
    <class kind="struct">canopen::ObjectStorage::DataType&lt; ObjectDict::DEFTYPE_OCTET_STRING &gt;</class>
    <class kind="struct">canopen::ObjectStorage::DataType&lt; ObjectDict::DEFTYPE_REAL32 &gt;</class>
    <class kind="struct">canopen::ObjectStorage::DataType&lt; ObjectDict::DEFTYPE_REAL64 &gt;</class>
    <class kind="struct">canopen::ObjectStorage::DataType&lt; ObjectDict::DEFTYPE_UNICODE_STRING &gt;</class>
    <class kind="struct">canopen::ObjectStorage::DataType&lt; ObjectDict::DEFTYPE_UNSIGNED16 &gt;</class>
    <class kind="struct">canopen::ObjectStorage::DataType&lt; ObjectDict::DEFTYPE_UNSIGNED32 &gt;</class>
    <class kind="struct">canopen::ObjectStorage::DataType&lt; ObjectDict::DEFTYPE_UNSIGNED64 &gt;</class>
    <class kind="struct">canopen::ObjectStorage::DataType&lt; ObjectDict::DEFTYPE_UNSIGNED8 &gt;</class>
    <class kind="struct">canopen::ObjectStorage::DataType&lt; ObjectDict::DEFTYPE_VISIBLE_STRING &gt;</class>
    <class kind="struct">canopen::DeviceInfo</class>
    <class kind="class">canopen::ObjectStorage::Entry</class>
    <class kind="struct">canopen::ObjectDict::Entry</class>
    <class kind="class">canopen::HoldAny</class>
    <class kind="class">canopen::ObjectDict::Key</class>
    <class kind="class">canopen::NodeIdOffset</class>
    <class kind="class">canopen::ObjectDict</class>
    <class kind="class">canopen::ObjectStorage</class>
    <class kind="class">canopen::String</class>
    <class kind="class">canopen::TypeGuard</class>
    <class kind="class">canopen::TypeGuard::TypeInfo</class>
    <namespace>canopen</namespace>
    <member kind="define">
      <type>#define</type>
      <name>THROW_WITH_KEY</name>
      <anchorfile>objdict_8h.html</anchorfile>
      <anchor>af1f48e8b3128505ac1e3697d0397fe67</anchor>
      <arglist>(e, k)</arglist>
    </member>
    <member kind="function" static="yes">
      <type>static R *</type>
      <name>branch_type</name>
      <anchorfile>namespacecanopen.html</anchorfile>
      <anchor>a473bf28a8bbea2fadf5e3fa0d626c735</anchor>
      <arglist>(const uint16_t data_type)</arglist>
    </member>
    <member kind="function">
      <type>std::size_t</type>
      <name>hash_value</name>
      <anchorfile>namespacecanopen.html</anchorfile>
      <anchor>ae4fee86136588479cccba0e1f0cb0aee</anchor>
      <arglist>(ObjectDict::Key const &amp;k)</arglist>
    </member>
    <member kind="function">
      <type>std::ostream &amp;</type>
      <name>operator&lt;&lt;</name>
      <anchorfile>namespacecanopen.html</anchorfile>
      <anchor>a44ff1a4629298158ca8df4e6e516981b</anchor>
      <arglist>(std::ostream &amp;stream, const NodeIdOffset&lt; T &gt; &amp;n)</arglist>
    </member>
    <member kind="function">
      <type>std::ostream &amp;</type>
      <name>operator&lt;&lt;</name>
      <anchorfile>namespacecanopen.html</anchorfile>
      <anchor>a538b00f30d530ac25ad0fa8ca6bfe772</anchor>
      <arglist>(std::ostream &amp;stream, const ObjectDict::Key &amp;k)</arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>pdo.cpp</name>
    <path>/tmp/catkin_workspace/src/ros_canopen/canopen_master/src/</path>
    <filename>pdo_8cpp</filename>
    <includes id="canopen_8h" name="canopen.h" local="no" imported="no">canopen_master/canopen.h</includes>
    <class kind="class">PDOid</class>
    <class kind="struct">PDOmap</class>
    <member kind="function">
      <type>bool</type>
      <name>check_com_changed</name>
      <anchorfile>pdo_8cpp.html</anchorfile>
      <anchor>a371740cef1c2f39feef6a78a4d526992</anchor>
      <arglist>(const ObjectDict &amp;dict, const uint16_t com_id)</arglist>
    </member>
    <member kind="function">
      <type>bool</type>
      <name>check_map_changed</name>
      <anchorfile>pdo_8cpp.html</anchorfile>
      <anchor>a0ba166c308c2a76b0dee8c7f6490f453</anchor>
      <arglist>(const uint8_t &amp;num, const ObjectDict &amp;dict, const uint16_t &amp;map_index)</arglist>
    </member>
    <member kind="variable">
      <type>const uint16_t</type>
      <name>RPDO_COM_BASE</name>
      <anchorfile>pdo_8cpp.html</anchorfile>
      <anchor>a95af47d269c45fd20bf234ba94cadf79</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>const uint16_t</type>
      <name>RPDO_MAP_BASE</name>
      <anchorfile>pdo_8cpp.html</anchorfile>
      <anchor>a156dfef8c21d318d79ea5ab14dd3fe34</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>const uint8_t</type>
      <name>SUB_COM_COB_ID</name>
      <anchorfile>pdo_8cpp.html</anchorfile>
      <anchor>ae31a54fdc86d3b5eadf3d3b8762dc6b9</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>const uint8_t</type>
      <name>SUB_COM_NUM</name>
      <anchorfile>pdo_8cpp.html</anchorfile>
      <anchor>a8fe6d2920b2d59ce20a7e68b9437251a</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>const uint8_t</type>
      <name>SUB_COM_RESERVED</name>
      <anchorfile>pdo_8cpp.html</anchorfile>
      <anchor>a8a4d263a2719b7eaaeef1f05972c8f71</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>const uint8_t</type>
      <name>SUB_COM_TRANSMISSION_TYPE</name>
      <anchorfile>pdo_8cpp.html</anchorfile>
      <anchor>a6f568f5808ba575e9f280ad6d961ce38</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>const uint8_t</type>
      <name>SUB_MAP_NUM</name>
      <anchorfile>pdo_8cpp.html</anchorfile>
      <anchor>aa5b408d9efb018ad3579a9a20af47568</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>const uint16_t</type>
      <name>TPDO_COM_BASE</name>
      <anchorfile>pdo_8cpp.html</anchorfile>
      <anchor>ac5360bb98b7c3f288fec69cbb7d70984</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>const uint16_t</type>
      <name>TPDO_MAP_BASE</name>
      <anchorfile>pdo_8cpp.html</anchorfile>
      <anchor>a049a8be40e261443437bfbaf2fb0919d</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>sdo.cpp</name>
    <path>/tmp/catkin_workspace/src/ros_canopen/canopen_master/src/</path>
    <filename>sdo_8cpp</filename>
    <includes id="canopen_8h" name="canopen.h" local="no" imported="no">canopen_master/canopen.h</includes>
    <class kind="struct">AbortData</class>
    <class kind="struct">AbortTranserRequest</class>
    <class kind="struct">DownloadInitiateRequest</class>
    <class kind="struct">DownloadInitiateResponse</class>
    <class kind="struct">DownloadSegmentRequest</class>
    <class kind="struct">DownloadSegmentResponse</class>
    <class kind="struct">InitiateLong</class>
    <class kind="struct">InitiateShort</class>
    <class kind="struct">SDOid</class>
    <class kind="struct">SegmentLong</class>
    <class kind="struct">SegmentShort</class>
    <class kind="struct">UploadInitiateRequest</class>
    <class kind="struct">UploadInitiateResponse</class>
    <class kind="struct">UploadSegmentRequest</class>
    <class kind="struct">UploadSegmentResponse</class>
    <member kind="variable">
      <type>const uint8_t</type>
      <name>ABORT_TRANSFER_REQUEST</name>
      <anchorfile>sdo_8cpp.html</anchorfile>
      <anchor>a623b4807216e9fe8983930481f71529d</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>const uint8_t</type>
      <name>COMMAND_MASK</name>
      <anchorfile>sdo_8cpp.html</anchorfile>
      <anchor>a175ccc0bade382be62a2c1ee67e2693d</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>const uint8_t</type>
      <name>DOWNLOAD_SEGMENT_REQUEST</name>
      <anchorfile>sdo_8cpp.html</anchorfile>
      <anchor>a2d4afe43884a5d058fef4b841f606cba</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>const uint8_t</type>
      <name>DOWNLOAD_SEGMENT_RESPONSE</name>
      <anchorfile>sdo_8cpp.html</anchorfile>
      <anchor>a71690abdf0b36b9f76a8791864618f78</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>const uint8_t</type>
      <name>INITIATE_DOWNLOAD_REQUEST</name>
      <anchorfile>sdo_8cpp.html</anchorfile>
      <anchor>a908a3694add42cbab21f1f5f89130574</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>const uint8_t</type>
      <name>INITIATE_DOWNLOAD_RESPONSE</name>
      <anchorfile>sdo_8cpp.html</anchorfile>
      <anchor>a856e61fca5738cf8f3d72d0255ed0156</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>const uint8_t</type>
      <name>INITIATE_UPLOAD_REQUEST</name>
      <anchorfile>sdo_8cpp.html</anchorfile>
      <anchor>a4c44445a7a3f8b102d85d2ca19a81496</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>const uint8_t</type>
      <name>INITIATE_UPLOAD_RESPONSE</name>
      <anchorfile>sdo_8cpp.html</anchorfile>
      <anchor>a1ba9dc360f0005d7571353f2d580a4ca</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>const uint8_t</type>
      <name>UPLOAD_SEGMENT_REQUEST</name>
      <anchorfile>sdo_8cpp.html</anchorfile>
      <anchor>a8eaacbe590a4445ec8813645617d0279</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>const uint8_t</type>
      <name>UPLOAD_SEGMENT_RESPONSE</name>
      <anchorfile>sdo_8cpp.html</anchorfile>
      <anchor>af86533599a9eefaa6aadfacb842b77af</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>test_parser.cpp</name>
    <path>/tmp/catkin_workspace/src/ros_canopen/canopen_master/test/</path>
    <filename>test__parser_8cpp</filename>
    <includes id="objdict_8h" name="objdict.h" local="no" imported="no">canopen_master/objdict.h</includes>
    <class kind="class">TestHexTypes</class>
    <member kind="typedef">
      <type>::testing::Types&lt; uint8_t, uint16_t, uint32_t, uint64_t &gt;</type>
      <name>PosTypes</name>
      <anchorfile>test__parser_8cpp.html</anchorfile>
      <anchor>a5e79e4ba5fc9aa48a1e7d327d764e910</anchor>
      <arglist></arglist>
    </member>
    <member kind="function">
      <type>int</type>
      <name>main</name>
      <anchorfile>test__parser_8cpp.html</anchorfile>
      <anchor>a3c04138a5bfe5d72780bb7e82a18e627</anchor>
      <arglist>(int argc, char **argv)</arglist>
    </member>
    <member kind="function">
      <type>canopen::HoldAny</type>
      <name>parse_int</name>
      <anchorfile>test__parser_8cpp.html</anchorfile>
      <anchor>a0ffbb80c7f8bee4e04581c75fa078baa</anchor>
      <arglist>(boost::property_tree::iptree &amp;pt, const std::string &amp;key)</arglist>
    </member>
    <member kind="function">
      <type>canopen::HoldAny</type>
      <name>prepare_test</name>
      <anchorfile>test__parser_8cpp.html</anchorfile>
      <anchor>aa753c5c3b2ffdc71da5151c6decc8cd0</anchor>
      <arglist>(const std::string &amp;str)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>set_access</name>
      <anchorfile>test__parser_8cpp.html</anchorfile>
      <anchor>aaccc9c5ee8fa42d5d0147adbafe2c918</anchor>
      <arglist>(canopen::ObjectDict::Entry &amp;entry, std::string access)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>TEST</name>
      <anchorfile>test__parser_8cpp.html</anchorfile>
      <anchor>af7b58b402e6f1ee10bbf18f51b6a6761</anchor>
      <arglist>(TestHex, checkCamelCase)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>TEST</name>
      <anchorfile>test__parser_8cpp.html</anchorfile>
      <anchor>a4db22e2f531e27d7261be628a44f6294</anchor>
      <arglist>(TestHex, checkNodeCamelCase)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>TEST</name>
      <anchorfile>test__parser_8cpp.html</anchorfile>
      <anchor>aa02ca15eee6b239e4f767cfbd9dd92c1</anchor>
      <arglist>(TestHex, checkSpaces)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>TEST</name>
      <anchorfile>test__parser_8cpp.html</anchorfile>
      <anchor>ac47ef39003c4b06808deea4035f4f766</anchor>
      <arglist>(TestHex, checkNodeSpaces)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>TEST</name>
      <anchorfile>test__parser_8cpp.html</anchorfile>
      <anchor>a3455682a3b17e26ef7f628e850f7bf5a</anchor>
      <arglist>(TestHex, checkCommonObjects)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>TEST</name>
      <anchorfile>test__parser_8cpp.html</anchorfile>
      <anchor>a4486a94d60c20d925cf17cfeb4f2d11b</anchor>
      <arglist>(TestAccessString, TestRO)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>TEST</name>
      <anchorfile>test__parser_8cpp.html</anchorfile>
      <anchor>ae69a240cece72386503cdfea75daf47a</anchor>
      <arglist>(TestAccessString, TestWO)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>TEST</name>
      <anchorfile>test__parser_8cpp.html</anchorfile>
      <anchor>ae11527203efec2b722b9461d23670b7e</anchor>
      <arglist>(TestAccessString, TestRW)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>TEST</name>
      <anchorfile>test__parser_8cpp.html</anchorfile>
      <anchor>ab9ddd51c87567496bcfc07256b50490b</anchor>
      <arglist>(TestAccessString, TestConst)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>testAccess</name>
      <anchorfile>test__parser_8cpp.html</anchorfile>
      <anchor>a439bf6bc85f48812680f98ce382ecfd7</anchor>
      <arglist>(bool c, bool r, bool w, const char *variants[])</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>TYPED_TEST</name>
      <anchorfile>test__parser_8cpp.html</anchorfile>
      <anchor>a720fc1751e8a26fdca9f96a51746797e</anchor>
      <arglist>(TestHexTypes, checkZero)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>TYPED_TEST_CASE</name>
      <anchorfile>test__parser_8cpp.html</anchorfile>
      <anchor>a134d126dde6caea78affef6df2ad0d4a</anchor>
      <arglist>(TestHexTypes, PosTypes)</arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>timer.h</name>
    <path>/tmp/catkin_workspace/src/ros_canopen/canopen_master/include/canopen_master/</path>
    <filename>timer_8h</filename>
    <class kind="class">canopen::Timer</class>
    <namespace>canopen</namespace>
  </compound>
  <compound kind="struct">
    <name>AbortData</name>
    <filename>structAbortData.html</filename>
    <member kind="function">
      <type>const char *</type>
      <name>text</name>
      <anchorfile>structAbortData.html</anchorfile>
      <anchor>adb602beb7d158f792ce2e90a2f0dbb59</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="variable">
      <type>uint8_t</type>
      <name>__pad0__</name>
      <anchorfile>structAbortData.html</anchorfile>
      <anchor>abe92492925f6648692bc33c9a6209d6f</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>uint8_t</type>
      <name>command</name>
      <anchorfile>structAbortData.html</anchorfile>
      <anchor>ad248598a3d38044acd31dc6eb2d3fa3f</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>uint16_t</type>
      <name>index</name>
      <anchorfile>structAbortData.html</anchorfile>
      <anchor>af5679bdadf56d6e3ef9f06abb21a83b0</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>uint32_t</type>
      <name>reason</name>
      <anchorfile>structAbortData.html</anchorfile>
      <anchor>a1cc16ad934f2a872d84451937a5e7312</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>uint8_t</type>
      <name>sub_index</name>
      <anchorfile>structAbortData.html</anchorfile>
      <anchor>ab66f11475ee4c21c11746b2bf6e7aa70</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>AbortTranserRequest</name>
    <filename>structAbortTranserRequest.html</filename>
    <base>FrameOverlay&lt; AbortData &gt;</base>
    <member kind="function">
      <type></type>
      <name>AbortTranserRequest</name>
      <anchorfile>structAbortTranserRequest.html</anchorfile>
      <anchor>a47298348c8d4becbeea75250147a60c5</anchor>
      <arglist>(const can::Frame &amp;f)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>AbortTranserRequest</name>
      <anchorfile>structAbortTranserRequest.html</anchorfile>
      <anchor>ad21d79dc7f1d32a1cd2315613619f75a</anchor>
      <arglist>(const Header &amp;h, uint16_t index, uint8_t sub_index, uint32_t reason)</arglist>
    </member>
    <member kind="variable" static="yes">
      <type>static const uint8_t</type>
      <name>command</name>
      <anchorfile>structAbortTranserRequest.html</anchorfile>
      <anchor>aad2b78c757043827dff5581d8c657783</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>DownloadInitiateRequest</name>
    <filename>structDownloadInitiateRequest.html</filename>
    <base>FrameOverlay&lt; InitiateLong &gt;</base>
    <member kind="function">
      <type></type>
      <name>DownloadInitiateRequest</name>
      <anchorfile>structDownloadInitiateRequest.html</anchorfile>
      <anchor>a0a35ff18fdb9591c805ba2a9cf2a02d5</anchor>
      <arglist>(const Header &amp;h, const canopen::ObjectDict::Entry &amp;entry, const String &amp;buffer, size_t &amp;offset)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>DownloadInitiateRequest</name>
      <anchorfile>structDownloadInitiateRequest.html</anchorfile>
      <anchor>a1a3fb8ffbf482d4d6da4cc612ef0398a</anchor>
      <arglist>(const can::Frame &amp;f)</arglist>
    </member>
    <member kind="variable" static="yes">
      <type>static const uint8_t</type>
      <name>command</name>
      <anchorfile>structDownloadInitiateRequest.html</anchorfile>
      <anchor>a55a71be68ddd174e238087d96fd1c7b7</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>DownloadInitiateResponse</name>
    <filename>structDownloadInitiateResponse.html</filename>
    <base>FrameOverlay&lt; InitiateShort &gt;</base>
    <member kind="function">
      <type></type>
      <name>DownloadInitiateResponse</name>
      <anchorfile>structDownloadInitiateResponse.html</anchorfile>
      <anchor>a70f185554a1c96b9cce919a79e0a75b0</anchor>
      <arglist>(const can::Frame &amp;f)</arglist>
    </member>
    <member kind="function">
      <type>bool</type>
      <name>test</name>
      <anchorfile>structDownloadInitiateResponse.html</anchorfile>
      <anchor>a28fc5d3ad915617cd8205af381f228cd</anchor>
      <arglist>(const can::Frame &amp;msg, uint32_t &amp;reason)</arglist>
    </member>
    <member kind="variable" static="yes">
      <type>static const uint8_t</type>
      <name>command</name>
      <anchorfile>structDownloadInitiateResponse.html</anchorfile>
      <anchor>a01ea5f5fea7819b8b341ee032d671e64</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>DownloadSegmentRequest</name>
    <filename>structDownloadSegmentRequest.html</filename>
    <base>FrameOverlay&lt; SegmentLong &gt;</base>
    <member kind="function">
      <type></type>
      <name>DownloadSegmentRequest</name>
      <anchorfile>structDownloadSegmentRequest.html</anchorfile>
      <anchor>a94ee8507f06cc3d06016a8d4884e314d</anchor>
      <arglist>(const can::Frame &amp;f)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>DownloadSegmentRequest</name>
      <anchorfile>structDownloadSegmentRequest.html</anchorfile>
      <anchor>a6ca275e0cd4dccf70e48cf115050dec2</anchor>
      <arglist>(const Header &amp;h, bool toggle, const String &amp;buffer, size_t &amp;offset)</arglist>
    </member>
    <member kind="variable" static="yes">
      <type>static const uint8_t</type>
      <name>command</name>
      <anchorfile>structDownloadSegmentRequest.html</anchorfile>
      <anchor>a3e3411d1ec4f236da70cbdbf5e149141</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>DownloadSegmentResponse</name>
    <filename>structDownloadSegmentResponse.html</filename>
    <base>FrameOverlay&lt; SegmentShort &gt;</base>
    <member kind="function">
      <type></type>
      <name>DownloadSegmentResponse</name>
      <anchorfile>structDownloadSegmentResponse.html</anchorfile>
      <anchor>a3d3e66f068a686d67d49f66aa532694d</anchor>
      <arglist>(const can::Frame &amp;f)</arglist>
    </member>
    <member kind="function">
      <type>bool</type>
      <name>test</name>
      <anchorfile>structDownloadSegmentResponse.html</anchorfile>
      <anchor>ad73976f098cd0d31c4f522d9a43cd2af</anchor>
      <arglist>(const can::Frame &amp;msg, uint32_t &amp;reason)</arglist>
    </member>
    <member kind="variable" static="yes">
      <type>static const uint8_t</type>
      <name>command</name>
      <anchorfile>structDownloadSegmentResponse.html</anchorfile>
      <anchor>a2abaf957d2b352f6da67f313d00dc6d9</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>EMCYfield</name>
    <filename>structEMCYfield.html</filename>
    <member kind="function">
      <type></type>
      <name>EMCYfield</name>
      <anchorfile>structEMCYfield.html</anchorfile>
      <anchor>a0f8ddc64c6cd37d4f9f3366508354779</anchor>
      <arglist>(uint32_t val)</arglist>
    </member>
    <member kind="variable">
      <type>uint32_t</type>
      <name>addition_info</name>
      <anchorfile>structEMCYfield.html</anchorfile>
      <anchor>a9e1af1ab4c60845d51a4da37e331af5e</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>uint32_t</type>
      <name>error_code</name>
      <anchorfile>structEMCYfield.html</anchorfile>
      <anchor>a52dd8e30a216919dcddb8466da7f3544</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>EMCYid</name>
    <filename>structEMCYid.html</filename>
    <member kind="function">
      <type></type>
      <name>EMCYid</name>
      <anchorfile>structEMCYid.html</anchorfile>
      <anchor>a855d52351e7ca8f3948d54a031d3995e</anchor>
      <arglist>(uint32_t val)</arglist>
    </member>
    <member kind="function">
      <type>const uint32_t</type>
      <name>get</name>
      <anchorfile>structEMCYid.html</anchorfile>
      <anchor>aa9a0312ec22b0ae818e7fb29e7f9a4ea</anchor>
      <arglist>() const </arglist>
    </member>
    <member kind="function">
      <type>can::Header</type>
      <name>header</name>
      <anchorfile>structEMCYid.html</anchorfile>
      <anchor>a069cd56ffff04d786e10c51e449e6110</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="variable">
      <type>uint32_t</type>
      <name>__pad0__</name>
      <anchorfile>structEMCYid.html</anchorfile>
      <anchor>a319c069763f93a20a7498e4c8264148d</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>uint32_t</type>
      <name>extended</name>
      <anchorfile>structEMCYid.html</anchorfile>
      <anchor>a348b94a1e4231332b569f9cb99b9ddff</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>uint32_t</type>
      <name>id</name>
      <anchorfile>structEMCYid.html</anchorfile>
      <anchor>a5fa9a1d09c8430f66f4742a37482e70a</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>uint32_t</type>
      <name>invalid</name>
      <anchorfile>structEMCYid.html</anchorfile>
      <anchor>a81686a9c49bb0904be7e90af828ca402</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>EMCYmsg</name>
    <filename>structEMCYmsg.html</filename>
    <class kind="struct">EMCYmsg::Frame</class>
    <member kind="variable">
      <type>uint16_t</type>
      <name>error_code</name>
      <anchorfile>structEMCYmsg.html</anchorfile>
      <anchor>ac16025e0a0fc1dcf7c42c0147991f418</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>uint8_t</type>
      <name>error_register</name>
      <anchorfile>structEMCYmsg.html</anchorfile>
      <anchor>af845007dfe85242324f65696bf1bb161</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>uint8_t</type>
      <name>manufacturer_specific_error_field</name>
      <anchorfile>structEMCYmsg.html</anchorfile>
      <anchor>a8965ee4c9c5d0fb958d36a91c490277e</anchor>
      <arglist>[5]</arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>EMCYmsg::Frame</name>
    <filename>structEMCYmsg_1_1Frame.html</filename>
    <base>FrameOverlay&lt; EMCYmsg &gt;</base>
    <member kind="function">
      <type></type>
      <name>Frame</name>
      <anchorfile>structEMCYmsg_1_1Frame.html</anchorfile>
      <anchor>a4dc2df20cf958963726a8807e7bba1c3</anchor>
      <arglist>(const can::Frame &amp;f)</arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>InitiateLong</name>
    <filename>structInitiateLong.html</filename>
    <member kind="function">
      <type>size_t</type>
      <name>apply_buffer</name>
      <anchorfile>structInitiateLong.html</anchorfile>
      <anchor>a1484c171cfffab1aedc782e0d981a0c7</anchor>
      <arglist>(const String &amp;buffer)</arglist>
    </member>
    <member kind="function">
      <type>size_t</type>
      <name>data_size</name>
      <anchorfile>structInitiateLong.html</anchorfile>
      <anchor>a001c1052d34640bcad144c84edb2b44e</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="variable">
      <type>uint8_t</type>
      <name>__pad0__</name>
      <anchorfile>structInitiateLong.html</anchorfile>
      <anchor>a36e383d3e96d072b8f8a5591cf6b3282</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>uint8_t</type>
      <name>command</name>
      <anchorfile>structInitiateLong.html</anchorfile>
      <anchor>ad770294b9e53f0486773a70a7fdaea9f</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>uint8_t</type>
      <name>expedited</name>
      <anchorfile>structInitiateLong.html</anchorfile>
      <anchor>a88d9979f707f4adcd02050821e365604</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>uint16_t</type>
      <name>index</name>
      <anchorfile>structInitiateLong.html</anchorfile>
      <anchor>acbc8d4c39ac0639dc66095ca6b00da08</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>uint8_t</type>
      <name>num</name>
      <anchorfile>structInitiateLong.html</anchorfile>
      <anchor>a3cbcb62c87dc671ba5a61aac26277816</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>uint8_t</type>
      <name>payload</name>
      <anchorfile>structInitiateLong.html</anchorfile>
      <anchor>afbc6d9e622e014de5690f75f5663469f</anchor>
      <arglist>[4]</arglist>
    </member>
    <member kind="variable">
      <type>uint8_t</type>
      <name>size_indicated</name>
      <anchorfile>structInitiateLong.html</anchorfile>
      <anchor>a03445211586bac68b943b842e39c5853</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>uint8_t</type>
      <name>sub_index</name>
      <anchorfile>structInitiateLong.html</anchorfile>
      <anchor>a649bfb8644b7c4ab96741f1f037fcda8</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>InitiateShort</name>
    <filename>structInitiateShort.html</filename>
    <member kind="variable">
      <type>uint8_t</type>
      <name>__pad0__</name>
      <anchorfile>structInitiateShort.html</anchorfile>
      <anchor>acc8baf07a388d8feeace02355394a867</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>uint8_t</type>
      <name>command</name>
      <anchorfile>structInitiateShort.html</anchorfile>
      <anchor>aef8872a4fc9a04587a53eae1efd691c7</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>uint16_t</type>
      <name>index</name>
      <anchorfile>structInitiateShort.html</anchorfile>
      <anchor>ab94c00a25f52feaf93e4fbe6841e9c58</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>uint8_t</type>
      <name>reserved</name>
      <anchorfile>structInitiateShort.html</anchorfile>
      <anchor>a451d1351b164b78eed8e4db9d29bd91e</anchor>
      <arglist>[4]</arglist>
    </member>
    <member kind="variable">
      <type>uint8_t</type>
      <name>sub_index</name>
      <anchorfile>structInitiateShort.html</anchorfile>
      <anchor>aab1198b53bbfeb658a93d3c38b132fd5</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>NMTcommand</name>
    <filename>structNMTcommand.html</filename>
    <class kind="struct">NMTcommand::Frame</class>
    <member kind="enumeration">
      <name>Command</name>
      <anchorfile>structNMTcommand.html</anchorfile>
      <anchor>a55b6b6c019c816f5b22b6b0869afb978</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>Start</name>
      <anchorfile>structNMTcommand.html</anchorfile>
      <anchor>a55b6b6c019c816f5b22b6b0869afb978a7543496e0750da5c6c1c50c467d181fb</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>Stop</name>
      <anchorfile>structNMTcommand.html</anchorfile>
      <anchor>a55b6b6c019c816f5b22b6b0869afb978a997c08b40b0c6821eb1e9b7b112d1bea</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>Prepare</name>
      <anchorfile>structNMTcommand.html</anchorfile>
      <anchor>a55b6b6c019c816f5b22b6b0869afb978a2c9eabe0df35ebc9c7a246c21f95a10a</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>Reset</name>
      <anchorfile>structNMTcommand.html</anchorfile>
      <anchor>a55b6b6c019c816f5b22b6b0869afb978a7ee8d878ce3161f049418dbea3d70529</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>Reset_Com</name>
      <anchorfile>structNMTcommand.html</anchorfile>
      <anchor>a55b6b6c019c816f5b22b6b0869afb978a3e48eb54d6c1730a193b218119e79f01</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>uint8_t</type>
      <name>command</name>
      <anchorfile>structNMTcommand.html</anchorfile>
      <anchor>aea33bab6040344bd3a83c56dcf1b9375</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>uint8_t</type>
      <name>node_id</name>
      <anchorfile>structNMTcommand.html</anchorfile>
      <anchor>a570010dba13e74fa6a1c0e32140ffc98</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>NMTcommand::Frame</name>
    <filename>structNMTcommand_1_1Frame.html</filename>
    <base>FrameOverlay&lt; NMTcommand &gt;</base>
    <member kind="function">
      <type></type>
      <name>Frame</name>
      <anchorfile>structNMTcommand_1_1Frame.html</anchorfile>
      <anchor>a2716289a9ec7da84d7c4ed1cb27fa8bf</anchor>
      <arglist>(uint8_t node_id, const Command &amp;c)</arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>PDOid</name>
    <filename>classPDOid.html</filename>
    <member kind="function">
      <type>can::Header</type>
      <name>header</name>
      <anchorfile>classPDOid.html</anchorfile>
      <anchor>a278a8fbf8513163408e89d922554e593</anchor>
      <arglist>(bool fill_rtr=false) const </arglist>
    </member>
    <member kind="function">
      <type>bool</type>
      <name>isInvalid</name>
      <anchorfile>classPDOid.html</anchorfile>
      <anchor>a07deca0faefce07c875497380eda652c</anchor>
      <arglist>() const </arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>PDOid</name>
      <anchorfile>classPDOid.html</anchorfile>
      <anchor>a807c8ae881259d88b85aa23f673e23c2</anchor>
      <arglist>(const uint32_t &amp;val)</arglist>
    </member>
    <member kind="variable" static="yes">
      <type>static const unsigned int</type>
      <name>EXTENDED_MASK</name>
      <anchorfile>classPDOid.html</anchorfile>
      <anchor>a0910cfd5d511e8fbc2106e6f65a66b91</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" static="yes">
      <type>static const unsigned int</type>
      <name>ID_MASK</name>
      <anchorfile>classPDOid.html</anchorfile>
      <anchor>abde5642696b4ee2635e87f9e5ee5071b</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" static="yes">
      <type>static const unsigned int</type>
      <name>INVALID_MASK</name>
      <anchorfile>classPDOid.html</anchorfile>
      <anchor>a24005dde046103ce637941a4e966a0b9</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" static="yes">
      <type>static const unsigned int</type>
      <name>NO_RTR_MASK</name>
      <anchorfile>classPDOid.html</anchorfile>
      <anchor>a0a644e29baab4c046925d559436a18c7</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>const uint32_t</type>
      <name>value_</name>
      <anchorfile>classPDOid.html</anchorfile>
      <anchor>a0b4072b69f5a66b3e41ccdef9312f353</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>PDOmap</name>
    <filename>structPDOmap.html</filename>
    <member kind="function">
      <type></type>
      <name>PDOmap</name>
      <anchorfile>structPDOmap.html</anchorfile>
      <anchor>a932943612c79339fa565e155d65c1de4</anchor>
      <arglist>(uint32_t val)</arglist>
    </member>
    <member kind="variable">
      <type>uint16_t</type>
      <name>index</name>
      <anchorfile>structPDOmap.html</anchorfile>
      <anchor>a6220bc309f421608e739ef87af13719b</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>uint8_t</type>
      <name>length</name>
      <anchorfile>structPDOmap.html</anchorfile>
      <anchor>a970a1d82a688481ae9e62cbdaf46809e</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>uint8_t</type>
      <name>sub_index</name>
      <anchorfile>structPDOmap.html</anchorfile>
      <anchor>ae62c4423f0c7371fecf15d72d3c4870d</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>PrintValue</name>
    <filename>structPrintValue.html</filename>
    <member kind="function" static="yes">
      <type>static std::string</type>
      <name>func</name>
      <anchorfile>structPrintValue.html</anchorfile>
      <anchor>aa707327c8be68ff4104f88111d3f89bc</anchor>
      <arglist>(ObjectStorage &amp;storage, const ObjectDict::Key &amp;key, bool cached)</arglist>
    </member>
    <member kind="function" static="yes">
      <type>static boost::function&lt; std::string()&gt;</type>
      <name>getReader</name>
      <anchorfile>structPrintValue.html</anchorfile>
      <anchor>a1e2be2ce3f423384e220fc9a138fd41a</anchor>
      <arglist>(ObjectStorage &amp;storage, const ObjectDict::Key &amp;key, bool cached)</arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>ReadAnyValue</name>
    <filename>structReadAnyValue.html</filename>
    <member kind="function" static="yes">
      <type>static HoldAny</type>
      <name>func</name>
      <anchorfile>structReadAnyValue.html</anchorfile>
      <anchor>a7014aea8dddcbf6af166738dd3a677bf</anchor>
      <arglist>(boost::property_tree::iptree &amp;pt, const std::string &amp;key)</arglist>
    </member>
    <member kind="function" static="yes">
      <type>static HoldAny</type>
      <name>read_value</name>
      <anchorfile>structReadAnyValue.html</anchorfile>
      <anchor>ad208678c36b3e8bd8f5b2ddc7479fb20</anchor>
      <arglist>(boost::property_tree::iptree &amp;pt, uint16_t data_type, const std::string &amp;key)</arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>SDOid</name>
    <filename>structSDOid.html</filename>
    <member kind="function">
      <type>can::Header</type>
      <name>header</name>
      <anchorfile>structSDOid.html</anchorfile>
      <anchor>a2432a5046f7279b3ea41de73ec53e4ac</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>SDOid</name>
      <anchorfile>structSDOid.html</anchorfile>
      <anchor>a7887fc238823f0c21fd104e3c71107b7</anchor>
      <arglist>(uint32_t val)</arglist>
    </member>
    <member kind="variable">
      <type>uint32_t</type>
      <name>dynamic</name>
      <anchorfile>structSDOid.html</anchorfile>
      <anchor>ab0c86e81ee2992b0731faa60fc860e45</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>uint32_t</type>
      <name>extended</name>
      <anchorfile>structSDOid.html</anchorfile>
      <anchor>a458146f3199bd432ae0dd1015b5d151d</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>uint32_t</type>
      <name>id</name>
      <anchorfile>structSDOid.html</anchorfile>
      <anchor>ae6834075868d3773ba50322ccbc352b8</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>uint32_t</type>
      <name>invalid</name>
      <anchorfile>structSDOid.html</anchorfile>
      <anchor>a1fe7f196a3ea6822097c581b50efc2f0</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>SegmentLong</name>
    <filename>structSegmentLong.html</filename>
    <member kind="function">
      <type>size_t</type>
      <name>apply_buffer</name>
      <anchorfile>structSegmentLong.html</anchorfile>
      <anchor>a077e84e9410074e664c399510df82a65</anchor>
      <arglist>(const String &amp;buffer, const size_t offset)</arglist>
    </member>
    <member kind="function">
      <type>size_t</type>
      <name>data_size</name>
      <anchorfile>structSegmentLong.html</anchorfile>
      <anchor>aaa4b51e9e3fa57595a4c7a0def7e7726</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="variable">
      <type>uint8_t</type>
      <name>command</name>
      <anchorfile>structSegmentLong.html</anchorfile>
      <anchor>af25a04eef7e1fa5dfde2aba5d3ea91d3</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>uint8_t</type>
      <name>done</name>
      <anchorfile>structSegmentLong.html</anchorfile>
      <anchor>ad5d36bc5e9717491963f671038b2b3e4</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>uint8_t</type>
      <name>num</name>
      <anchorfile>structSegmentLong.html</anchorfile>
      <anchor>a9bf082c2e7d43940fb8d01e2f372df92</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>uint8_t</type>
      <name>payload</name>
      <anchorfile>structSegmentLong.html</anchorfile>
      <anchor>ad0efd587667e76db93a58c70c65c2fde</anchor>
      <arglist>[7]</arglist>
    </member>
    <member kind="variable">
      <type>uint8_t</type>
      <name>toggle</name>
      <anchorfile>structSegmentLong.html</anchorfile>
      <anchor>a04c6bda9d0342cc04f0e81a914d2a53e</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>SegmentShort</name>
    <filename>structSegmentShort.html</filename>
    <member kind="variable">
      <type>uint8_t</type>
      <name>__pad0__</name>
      <anchorfile>structSegmentShort.html</anchorfile>
      <anchor>a43f39703ece2688b61825b336f4191c7</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>uint8_t</type>
      <name>command</name>
      <anchorfile>structSegmentShort.html</anchorfile>
      <anchor>a200d230d2228d4df81fabba3fdbaa3f3</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>uint8_t</type>
      <name>reserved</name>
      <anchorfile>structSegmentShort.html</anchorfile>
      <anchor>a5e413d8f2548f505fffe4d20a04f7de5</anchor>
      <arglist>[7]</arglist>
    </member>
    <member kind="variable">
      <type>uint8_t</type>
      <name>toggle</name>
      <anchorfile>structSegmentShort.html</anchorfile>
      <anchor>aacd879192b2e56d2adecbbbdd535e724</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>TestHexTypes</name>
    <filename>classTestHexTypes.html</filename>
    <templarg></templarg>
    <member kind="function" static="yes">
      <type>static void</type>
      <name>test_hex</name>
      <anchorfile>classTestHexTypes.html</anchorfile>
      <anchor>a4ce6e030b7ceb99c1793c4b45f39421d</anchor>
      <arglist>(const T &amp;val, const std::string &amp;str)</arglist>
    </member>
    <member kind="function" static="yes">
      <type>static void</type>
      <name>test_hex_node</name>
      <anchorfile>classTestHexTypes.html</anchorfile>
      <anchor>a3f79aaee33333cd16ac6c724e85168f4</anchor>
      <arglist>(const T &amp;val, const std::string &amp;str, const uint8_t offset)</arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>UploadInitiateRequest</name>
    <filename>structUploadInitiateRequest.html</filename>
    <base>FrameOverlay&lt; InitiateShort &gt;</base>
    <member kind="function">
      <type></type>
      <name>UploadInitiateRequest</name>
      <anchorfile>structUploadInitiateRequest.html</anchorfile>
      <anchor>aad6639462458be7558e1058de0b09b4a</anchor>
      <arglist>(const Header &amp;h, const canopen::ObjectDict::Entry &amp;entry)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>UploadInitiateRequest</name>
      <anchorfile>structUploadInitiateRequest.html</anchorfile>
      <anchor>afd0bcbeef0894749c526470b0961effb</anchor>
      <arglist>(const can::Frame &amp;f)</arglist>
    </member>
    <member kind="variable" static="yes">
      <type>static const uint8_t</type>
      <name>command</name>
      <anchorfile>structUploadInitiateRequest.html</anchorfile>
      <anchor>af50dda8e95de96228d19b854a3e14279</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>UploadInitiateResponse</name>
    <filename>structUploadInitiateResponse.html</filename>
    <base>FrameOverlay&lt; InitiateLong &gt;</base>
    <member kind="function">
      <type>bool</type>
      <name>read_data</name>
      <anchorfile>structUploadInitiateResponse.html</anchorfile>
      <anchor>a56bdd9a54ce96ce9b3269b411b85e884</anchor>
      <arglist>(String &amp;buffer, size_t &amp;offset, size_t &amp;total)</arglist>
    </member>
    <member kind="function">
      <type>bool</type>
      <name>test</name>
      <anchorfile>structUploadInitiateResponse.html</anchorfile>
      <anchor>a7ec010f42bd4d2b96472dc926afc8512</anchor>
      <arglist>(const can::Frame &amp;msg, size_t size, uint32_t &amp;reason)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>UploadInitiateResponse</name>
      <anchorfile>structUploadInitiateResponse.html</anchorfile>
      <anchor>a613ca1eebe020478dfa51b08b306ac1c</anchor>
      <arglist>(const can::Frame &amp;f)</arglist>
    </member>
    <member kind="variable" static="yes">
      <type>static const uint8_t</type>
      <name>command</name>
      <anchorfile>structUploadInitiateResponse.html</anchorfile>
      <anchor>a2b9f80287a96c33bf4031d3e36d2ee46</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>UploadSegmentRequest</name>
    <filename>structUploadSegmentRequest.html</filename>
    <base>FrameOverlay&lt; SegmentShort &gt;</base>
    <member kind="function">
      <type></type>
      <name>UploadSegmentRequest</name>
      <anchorfile>structUploadSegmentRequest.html</anchorfile>
      <anchor>a45603615c473158e31c1c339b5409997</anchor>
      <arglist>(const Header &amp;h, bool toggle)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>UploadSegmentRequest</name>
      <anchorfile>structUploadSegmentRequest.html</anchorfile>
      <anchor>a82a2f84c883076b0e07ba15cd508e218</anchor>
      <arglist>(const can::Frame &amp;f)</arglist>
    </member>
    <member kind="variable" static="yes">
      <type>static const uint8_t</type>
      <name>command</name>
      <anchorfile>structUploadSegmentRequest.html</anchorfile>
      <anchor>a63ab00127a0903f818938fc55e40bada</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>UploadSegmentResponse</name>
    <filename>structUploadSegmentResponse.html</filename>
    <base>FrameOverlay&lt; SegmentLong &gt;</base>
    <member kind="function">
      <type>bool</type>
      <name>read_data</name>
      <anchorfile>structUploadSegmentResponse.html</anchorfile>
      <anchor>a3c397c270889f7be693319b736149dc5</anchor>
      <arglist>(String &amp;buffer, size_t &amp;offset, const size_t &amp;total)</arglist>
    </member>
    <member kind="function">
      <type>bool</type>
      <name>test</name>
      <anchorfile>structUploadSegmentResponse.html</anchorfile>
      <anchor>a4444f33f1f45d8a73c3ed95f2fdd0b6b</anchor>
      <arglist>(const can::Frame &amp;msg, uint32_t &amp;reason)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>UploadSegmentResponse</name>
      <anchorfile>structUploadSegmentResponse.html</anchorfile>
      <anchor>a87b69ac23b6a35446a3a0a465852d9c8</anchor>
      <arglist>(const can::Frame &amp;f)</arglist>
    </member>
    <member kind="variable" static="yes">
      <type>static const uint8_t</type>
      <name>command</name>
      <anchorfile>structUploadSegmentResponse.html</anchorfile>
      <anchor>a90a1b29621ba3dcd1ed14d6895b4d277</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>WriteStringValue</name>
    <filename>structWriteStringValue.html</filename>
    <member kind="typedef">
      <type>HoldAny(*</type>
      <name>reader_type</name>
      <anchorfile>structWriteStringValue.html</anchorfile>
      <anchor>a8b5b78ed24f7aafb9269c28550591288</anchor>
      <arglist>)(boost::property_tree::iptree &amp;, const std::string &amp;)</arglist>
    </member>
    <member kind="function" static="yes">
      <type>static void</type>
      <name>write</name>
      <anchorfile>structWriteStringValue.html</anchorfile>
      <anchor>af4df620b3d78422842fcfd4c3029699c</anchor>
      <arglist>(ObjectStorage::Entry&lt; T &gt; entry, bool cached, reader_type reader, const std::string &amp;value)</arglist>
    </member>
    <member kind="variable" static="yes">
      <type>static boost::function&lt; void(const std::string &amp;)&gt;</type>
      <name>func</name>
      <anchorfile>structWriteStringValue.html</anchorfile>
      <anchor>afa13987d5db776010af2b46c27dbbaab</anchor>
      <arglist>(ObjectStorage &amp;storage, const ObjectDict::Key &amp;key, bool cached)</arglist>
    </member>
    <member kind="variable" static="yes">
      <type>static boost::function&lt; void(const std::string &amp;)&gt;</type>
      <name>getWriter</name>
      <anchorfile>structWriteStringValue.html</anchorfile>
      <anchor>ae14445bde8e015f64f77d4d49e2d2ca2</anchor>
      <arglist>(ObjectStorage &amp;storage, const ObjectDict::Key &amp;key, bool cached)</arglist>
    </member>
  </compound>
  <compound kind="namespace">
    <name>canopen</name>
    <filename>namespacecanopen.html</filename>
    <class kind="class">canopen::AccessException</class>
    <class kind="class">canopen::BCMsync</class>
    <class kind="class">canopen::CANLayer</class>
    <class kind="class">canopen::Chain</class>
    <class kind="struct">canopen::DeviceInfo</class>
    <class kind="class">canopen::DiagGroup</class>
    <class kind="class">canopen::EMCYHandler</class>
    <class kind="class">canopen::Exception</class>
    <class kind="class">canopen::ExternalSyncLayer</class>
    <class kind="struct">canopen::FrameOverlay</class>
    <class kind="class">canopen::HoldAny</class>
    <class kind="class">canopen::IPCSyncLayer</class>
    <class kind="class">canopen::IPCSyncMaster</class>
    <class kind="class">canopen::IPCSyncWaiter</class>
    <class kind="class">canopen::Layer</class>
    <class kind="class">canopen::LayerGroup</class>
    <class kind="class">canopen::LayerGroupNoDiag</class>
    <class kind="class">canopen::LayerReport</class>
    <class kind="class">canopen::LayerStack</class>
    <class kind="class">canopen::LayerStatus</class>
    <class kind="class">canopen::LocalIPCSyncMaster</class>
    <class kind="class">canopen::LocalMaster</class>
    <class kind="class">canopen::ManagingSyncLayer</class>
    <class kind="class">canopen::Master</class>
    <class kind="class">canopen::Node</class>
    <class kind="class">canopen::NodeChain</class>
    <class kind="class">canopen::NodeIdOffset</class>
    <class kind="class">canopen::ObjectDict</class>
    <class kind="class">canopen::ObjectStorage</class>
    <class kind="class">canopen::ParseException</class>
    <class kind="class">canopen::PDOMapper</class>
    <class kind="class">canopen::PointerInvalid</class>
    <class kind="class">canopen::SDOClient</class>
    <class kind="class">canopen::Settings</class>
    <class kind="class">canopen::SharedIPCSyncMaster</class>
    <class kind="class">canopen::SharedMaster</class>
    <class kind="class">canopen::SimpleSyncLayer</class>
    <class kind="class">canopen::String</class>
    <class kind="class">canopen::SyncCounter</class>
    <class kind="class">canopen::SyncLayer</class>
    <class kind="struct">canopen::SyncProperties</class>
    <class kind="class">canopen::TimeoutException</class>
    <class kind="class">canopen::Timer</class>
    <class kind="class">canopen::TypeGuard</class>
    <class kind="class">canopen::UnrestrictedMaster</class>
    <class kind="class">canopen::VectorHelper</class>
    <class kind="class">canopen::WrapMaster</class>
    <member kind="typedef">
      <type>WrapMaster&lt; ExternalSyncLayer &gt;</type>
      <name>ExternalMaster</name>
      <anchorfile>namespacecanopen.html</anchorfile>
      <anchor>ae8f9463ad90ca7618a8d706721976e08</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef">
      <type>WrapMaster&lt; SimpleSyncLayer &gt;</type>
      <name>SimpleMaster</name>
      <anchorfile>namespacecanopen.html</anchorfile>
      <anchor>af33bf2cf8a7f83b53716d76568385425</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef">
      <type>boost::chrono::high_resolution_clock::duration</type>
      <name>time_duration</name>
      <anchorfile>namespacecanopen.html</anchorfile>
      <anchor>a6ba2d15f009c4011a408a39663ea5264</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef">
      <type>boost::chrono::high_resolution_clock::time_point</type>
      <name>time_point</name>
      <anchorfile>namespacecanopen.html</anchorfile>
      <anchor>a871e89c0295e2ee21285ce7d2839a960</anchor>
      <arglist></arglist>
    </member>
    <member kind="function" static="yes">
      <type>static R *</type>
      <name>branch_type</name>
      <anchorfile>namespacecanopen.html</anchorfile>
      <anchor>a473bf28a8bbea2fadf5e3fa0d626c735</anchor>
      <arglist>(const uint16_t data_type)</arglist>
    </member>
    <member kind="function">
      <type>time_point</type>
      <name>get_abs_time</name>
      <anchorfile>namespacecanopen.html</anchorfile>
      <anchor>ab84c59bc8a7f0ecb24c96b6d085fff98</anchor>
      <arglist>(const time_duration &amp;timeout)</arglist>
    </member>
    <member kind="function">
      <type>time_point</type>
      <name>get_abs_time</name>
      <anchorfile>namespacecanopen.html</anchorfile>
      <anchor>a3e92c863290655b130984e6d9c780049</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>std::size_t</type>
      <name>hash_value</name>
      <anchorfile>namespacecanopen.html</anchorfile>
      <anchor>ae4fee86136588479cccba0e1f0cb0aee</anchor>
      <arglist>(ObjectDict::Key const &amp;k)</arglist>
    </member>
    <member kind="function">
      <type>std::string</type>
      <name>join</name>
      <anchorfile>namespacecanopen.html</anchorfile>
      <anchor>abb5414c13fde3e81d51f3d2cd51e9df6</anchor>
      <arglist>(const T &amp;container, const std::string &amp;delim)</arglist>
    </member>
    <member kind="function">
      <type>std::ostream &amp;</type>
      <name>operator&lt;&lt;</name>
      <anchorfile>namespacecanopen.html</anchorfile>
      <anchor>a44ff1a4629298158ca8df4e6e516981b</anchor>
      <arglist>(std::ostream &amp;stream, const NodeIdOffset&lt; T &gt; &amp;n)</arglist>
    </member>
    <member kind="function">
      <type>std::ostream &amp;</type>
      <name>operator&lt;&lt;</name>
      <anchorfile>namespacecanopen.html</anchorfile>
      <anchor>a538b00f30d530ac25ad0fa8ca6bfe772</anchor>
      <arglist>(std::ostream &amp;stream, const ObjectDict::Key &amp;k)</arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>canopen::AccessException</name>
    <filename>classcanopen_1_1AccessException.html</filename>
    <base>canopen::Exception</base>
    <member kind="function">
      <type></type>
      <name>AccessException</name>
      <anchorfile>classcanopen_1_1AccessException.html</anchorfile>
      <anchor>a08a48595b5227da7dd7546ac0aec04cd</anchor>
      <arglist>(const std::string &amp;w)</arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>canopen::BCMsync</name>
    <filename>classcanopen_1_1BCMsync.html</filename>
    <base>canopen::Layer</base>
    <member kind="function">
      <type></type>
      <name>BCMsync</name>
      <anchorfile>classcanopen_1_1BCMsync.html</anchorfile>
      <anchor>a60dd3f8e9ca33d74ee1300abc5dcd069</anchor>
      <arglist>(const std::string &amp;device, boost::shared_ptr&lt; can::SocketCANDriver &gt; driver, const SyncProperties &amp;sync_properties)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>setIgnored</name>
      <anchorfile>classcanopen_1_1BCMsync.html</anchorfile>
      <anchor>a3824d76f925cd79c110d2846106b0f12</anchor>
      <arglist>(const T &amp;other)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>setMonitored</name>
      <anchorfile>classcanopen_1_1BCMsync.html</anchorfile>
      <anchor>a818029060f31c928376593c4f25a9e61</anchor>
      <arglist>(const T &amp;other)</arglist>
    </member>
    <member kind="variable" static="yes">
      <type>static const uint32_t</type>
      <name>ALL_NODES_MASK</name>
      <anchorfile>classcanopen_1_1BCMsync.html</anchorfile>
      <anchor>ac6122d5166c3f827b62b3c9968ec0b55</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" static="yes">
      <type>static const uint32_t</type>
      <name>HEARTBEAT_ID</name>
      <anchorfile>classcanopen_1_1BCMsync.html</anchorfile>
      <anchor>a414600ce40f7b00d3b6eb1681292fde1</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" static="yes">
      <type>static const uint32_t</type>
      <name>NMT_ID</name>
      <anchorfile>classcanopen_1_1BCMsync.html</anchorfile>
      <anchor>a37882948be011d187d90a3e44587d00e</anchor>
      <arglist></arglist>
    </member>
    <member kind="function" protection="protected" virtualness="virtual">
      <type>virtual void</type>
      <name>handleDiag</name>
      <anchorfile>classcanopen_1_1BCMsync.html</anchorfile>
      <anchor>a5f79c0710712918254ef8140ed69b4b5</anchor>
      <arglist>(LayerReport &amp;report)</arglist>
    </member>
    <member kind="function" protection="protected" virtualness="virtual">
      <type>virtual void</type>
      <name>handleHalt</name>
      <anchorfile>classcanopen_1_1BCMsync.html</anchorfile>
      <anchor>a24bb662fbfe77d08e650fce5d93ba198</anchor>
      <arglist>(LayerStatus &amp;status)</arglist>
    </member>
    <member kind="function" protection="protected" virtualness="virtual">
      <type>virtual void</type>
      <name>handleInit</name>
      <anchorfile>classcanopen_1_1BCMsync.html</anchorfile>
      <anchor>a3fabbf3dea225abd1419cee87ec25251</anchor>
      <arglist>(LayerStatus &amp;status)</arglist>
    </member>
    <member kind="function" protection="protected" virtualness="virtual">
      <type>virtual void</type>
      <name>handleRead</name>
      <anchorfile>classcanopen_1_1BCMsync.html</anchorfile>
      <anchor>a5e41cff9f8a09f860186dbb808b2cc21</anchor>
      <arglist>(LayerStatus &amp;status, const LayerState &amp;current_state)</arglist>
    </member>
    <member kind="function" protection="protected" virtualness="virtual">
      <type>virtual void</type>
      <name>handleRecover</name>
      <anchorfile>classcanopen_1_1BCMsync.html</anchorfile>
      <anchor>a51ab5c37b66fd9cd37a052f64fe785fb</anchor>
      <arglist>(LayerStatus &amp;status)</arglist>
    </member>
    <member kind="function" protection="protected" virtualness="virtual">
      <type>virtual void</type>
      <name>handleShutdown</name>
      <anchorfile>classcanopen_1_1BCMsync.html</anchorfile>
      <anchor>ac37fb647cce4af950d967931feaf5b12</anchor>
      <arglist>(LayerStatus &amp;status)</arglist>
    </member>
    <member kind="function" protection="protected" virtualness="virtual">
      <type>virtual void</type>
      <name>handleWrite</name>
      <anchorfile>classcanopen_1_1BCMsync.html</anchorfile>
      <anchor>a8c3bbc6921796fad7c931cfa41e3fbbb</anchor>
      <arglist>(LayerStatus &amp;status, const LayerState &amp;current_state)</arglist>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>handleFrame</name>
      <anchorfile>classcanopen_1_1BCMsync.html</anchorfile>
      <anchor>a49ac91f975bd59b59e1b539c6265a0eb</anchor>
      <arglist>(const can::Frame &amp;frame)</arglist>
    </member>
    <member kind="function" protection="private">
      <type>bool</type>
      <name>skipNode</name>
      <anchorfile>classcanopen_1_1BCMsync.html</anchorfile>
      <anchor>a5e7556082c5b4823aeca1ac92bb46931</anchor>
      <arglist>(uint8_t id)</arglist>
    </member>
    <member kind="variable" protection="private">
      <type>can::BCMsocket</type>
      <name>bcm_</name>
      <anchorfile>classcanopen_1_1BCMsync.html</anchorfile>
      <anchor>a397bae9747b840a111b64d50ad279e31</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::string</type>
      <name>device_</name>
      <anchorfile>classcanopen_1_1BCMsync.html</anchorfile>
      <anchor>a1e468fd46ecb05dd35f3b6c62ffcf7e2</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>boost::shared_ptr&lt; can::SocketCANDriver &gt;</type>
      <name>driver_</name>
      <anchorfile>classcanopen_1_1BCMsync.html</anchorfile>
      <anchor>a70c8af1289e0244d22216ea26a3cb629</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>can::CommInterface::FrameListener::Ptr</type>
      <name>handler_</name>
      <anchorfile>classcanopen_1_1BCMsync.html</anchorfile>
      <anchor>a19dbb9060602e564359fd4ed7ee59b20</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::set&lt; int &gt;</type>
      <name>ignored_nodes_</name>
      <anchorfile>classcanopen_1_1BCMsync.html</anchorfile>
      <anchor>a6ec4e653402b98708b73aa06c3103043</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::set&lt; int &gt;</type>
      <name>known_nodes_</name>
      <anchorfile>classcanopen_1_1BCMsync.html</anchorfile>
      <anchor>a4b324327caa6f5e6a7f4e011ec96b5f7</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::set&lt; int &gt;</type>
      <name>monitored_nodes_</name>
      <anchorfile>classcanopen_1_1BCMsync.html</anchorfile>
      <anchor>a0d29ab4a83470dcf205e2f0e7b9f3d44</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>boost::mutex</type>
      <name>mutex_</name>
      <anchorfile>classcanopen_1_1BCMsync.html</anchorfile>
      <anchor>a627bb8c2e71c488cf66ca3ae6e2fd7af</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::set&lt; int &gt;</type>
      <name>started_nodes_</name>
      <anchorfile>classcanopen_1_1BCMsync.html</anchorfile>
      <anchor>ac03adfe9e387979e6dd4b5a515ddf6bd</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::vector&lt; can::Frame &gt;</type>
      <name>sync_frames_</name>
      <anchorfile>classcanopen_1_1BCMsync.html</anchorfile>
      <anchor>a40e3ad3f4d6218528736aadcedefe4d1</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>uint16_t</type>
      <name>sync_ms_</name>
      <anchorfile>classcanopen_1_1BCMsync.html</anchorfile>
      <anchor>a105f439116e46144544e3c887b68ccab</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>bool</type>
      <name>sync_running_</name>
      <anchorfile>classcanopen_1_1BCMsync.html</anchorfile>
      <anchor>a87d8af198f5eab02900df9d5b434e69e</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>canopen::CANLayer</name>
    <filename>classcanopen_1_1CANLayer.html</filename>
    <base>canopen::Layer</base>
    <member kind="function">
      <type></type>
      <name>CANLayer</name>
      <anchorfile>classcanopen_1_1CANLayer.html</anchorfile>
      <anchor>ab776defc040e2b09a59bed21ce48f0f0</anchor>
      <arglist>(const boost::shared_ptr&lt; can::DriverInterface &gt; &amp;driver, const std::string &amp;device, bool loopback)</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual void</type>
      <name>handleDiag</name>
      <anchorfile>classcanopen_1_1CANLayer.html</anchorfile>
      <anchor>a9ff08e9371357d5b17b35ae54949e17b</anchor>
      <arglist>(LayerReport &amp;report)</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual void</type>
      <name>handleHalt</name>
      <anchorfile>classcanopen_1_1CANLayer.html</anchorfile>
      <anchor>a2c1a411873bb5d9e3bb05904f86d48ec</anchor>
      <arglist>(LayerStatus &amp;status)</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual void</type>
      <name>handleInit</name>
      <anchorfile>classcanopen_1_1CANLayer.html</anchorfile>
      <anchor>a7bc97bae06f59473520b3f60378b4358</anchor>
      <arglist>(LayerStatus &amp;status)</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual void</type>
      <name>handleRead</name>
      <anchorfile>classcanopen_1_1CANLayer.html</anchorfile>
      <anchor>a6876e93b47253b821e80d378effe6cc0</anchor>
      <arglist>(LayerStatus &amp;status, const LayerState &amp;current_state)</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual void</type>
      <name>handleRecover</name>
      <anchorfile>classcanopen_1_1CANLayer.html</anchorfile>
      <anchor>a7c7c261f163c28368478feab5bff5abc</anchor>
      <arglist>(LayerStatus &amp;status)</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual void</type>
      <name>handleShutdown</name>
      <anchorfile>classcanopen_1_1CANLayer.html</anchorfile>
      <anchor>aeb78214b393088fd0e84d5e04dd2488e</anchor>
      <arglist>(LayerStatus &amp;status)</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual void</type>
      <name>handleWrite</name>
      <anchorfile>classcanopen_1_1CANLayer.html</anchorfile>
      <anchor>adc2b02f06201c4ef0a0254284c65921b</anchor>
      <arglist>(LayerStatus &amp;status, const LayerState &amp;current_state)</arglist>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>handleFrame</name>
      <anchorfile>classcanopen_1_1CANLayer.html</anchorfile>
      <anchor>adc2e80e9c6703ec74adbae9e09378938</anchor>
      <arglist>(const can::Frame &amp;msg)</arglist>
    </member>
    <member kind="variable" protection="private">
      <type>const std::string</type>
      <name>device_</name>
      <anchorfile>classcanopen_1_1CANLayer.html</anchorfile>
      <anchor>a1e7bb06b2137758c0810c28c3247a320</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>boost::shared_ptr&lt; can::DriverInterface &gt;</type>
      <name>driver_</name>
      <anchorfile>classcanopen_1_1CANLayer.html</anchorfile>
      <anchor>ad63d4a2666b511bbd72efefbb7728ad6</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>can::CommInterface::FrameListener::Ptr</type>
      <name>error_listener_</name>
      <anchorfile>classcanopen_1_1CANLayer.html</anchorfile>
      <anchor>a07bd44bff85075741bea42f328f4e538</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>can::Frame</type>
      <name>last_error_</name>
      <anchorfile>classcanopen_1_1CANLayer.html</anchorfile>
      <anchor>afba477f006cc3333bf92e0e2b7bc567d</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>const bool</type>
      <name>loopback_</name>
      <anchorfile>classcanopen_1_1CANLayer.html</anchorfile>
      <anchor>a5c9b80cf088e843e8643875c0c3f76bc</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>boost::mutex</type>
      <name>mutex_</name>
      <anchorfile>classcanopen_1_1CANLayer.html</anchorfile>
      <anchor>a108197146780d62b453915334344c3f5</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>boost::shared_ptr&lt; boost::thread &gt;</type>
      <name>thread_</name>
      <anchorfile>classcanopen_1_1CANLayer.html</anchorfile>
      <anchor>a38ed8cacb14442da3396ca8c1fec8d9c</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>canopen::Chain</name>
    <filename>classcanopen_1_1Chain.html</filename>
    <templarg></templarg>
    <member kind="function">
      <type>void</type>
      <name>add</name>
      <anchorfile>classcanopen_1_1Chain.html</anchorfile>
      <anchor>a0b9abd807397a5b4a09cdbd167be8ef9</anchor>
      <arglist>(boost::shared_ptr&lt; T &gt; t)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>call</name>
      <anchorfile>classcanopen_1_1Chain.html</anchorfile>
      <anchor>aaf29456eefd1df5e687b124bf03c7e53</anchor>
      <arglist>(void(T::*func)(void))</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>call</name>
      <anchorfile>classcanopen_1_1Chain.html</anchorfile>
      <anchor>a6260fdb3a9abe213f44302b496019dae</anchor>
      <arglist>(void(T::*func)(const V &amp;), const std::vector&lt; V &gt; &amp;vs)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>call</name>
      <anchorfile>classcanopen_1_1Chain.html</anchorfile>
      <anchor>a57fd372c7eae73d29fa697d1a3bd527f</anchor>
      <arglist>(void(T::*func)(V &amp;), std::vector&lt; V &gt; &amp;vs)</arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>std::vector&lt; boost::shared_ptr&lt; T &gt; &gt;</type>
      <name>elements</name>
      <anchorfile>classcanopen_1_1Chain.html</anchorfile>
      <anchor>a00eb6f76e8f6b4c0092616609ff108e6</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>canopen::DeviceInfo</name>
    <filename>structcanopen_1_1DeviceInfo.html</filename>
    <member kind="variable">
      <type>boost::unordered_set&lt; uint32_t &gt;</type>
      <name>baudrates</name>
      <anchorfile>structcanopen_1_1DeviceInfo.html</anchorfile>
      <anchor>ad53234b3e838c686e6d90a3a1be9a733</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>boost::unordered_set&lt; uint16_t &gt;</type>
      <name>dummy_usage</name>
      <anchorfile>structcanopen_1_1DeviceInfo.html</anchorfile>
      <anchor>a0b7271d6305fe6b7f2aed899ebfe729f</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>bool</type>
      <name>dynamic_channels_supported</name>
      <anchorfile>structcanopen_1_1DeviceInfo.html</anchorfile>
      <anchor>a45e35854703611d446b4b90ef7282598</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>uint8_t</type>
      <name>granularity</name>
      <anchorfile>structcanopen_1_1DeviceInfo.html</anchorfile>
      <anchor>a24be92fce974265026beb1e9b7f7cb8d</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>bool</type>
      <name>group_messaging</name>
      <anchorfile>structcanopen_1_1DeviceInfo.html</anchorfile>
      <anchor>ad5cec550b487d5ca8d7f66a764410ecf</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>bool</type>
      <name>lss_supported</name>
      <anchorfile>structcanopen_1_1DeviceInfo.html</anchorfile>
      <anchor>a8ddb5c011179b8d4daee4812d32b80c5</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>uint16_t</type>
      <name>nr_of_rx_pdo</name>
      <anchorfile>structcanopen_1_1DeviceInfo.html</anchorfile>
      <anchor>ae031bb9189b2b1de73483f8fa70f8fa2</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>uint16_t</type>
      <name>nr_of_tx_pdo</name>
      <anchorfile>structcanopen_1_1DeviceInfo.html</anchorfile>
      <anchor>a7463a67b260161fe3623d7119a2f1d2f</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>std::string</type>
      <name>order_code</name>
      <anchorfile>structcanopen_1_1DeviceInfo.html</anchorfile>
      <anchor>a173ef019714ca9d3db128d8b42eacbbe</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>std::string</type>
      <name>product_name</name>
      <anchorfile>structcanopen_1_1DeviceInfo.html</anchorfile>
      <anchor>a21af99d4be7d43ccb68f453d06a322c2</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>uint32_t</type>
      <name>product_number</name>
      <anchorfile>structcanopen_1_1DeviceInfo.html</anchorfile>
      <anchor>a02b6a96141f88d97cf8606c34c5f2404</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>uint32_t</type>
      <name>revision_number</name>
      <anchorfile>structcanopen_1_1DeviceInfo.html</anchorfile>
      <anchor>a049650b40cdbe90a3c78018fc39a612a</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>bool</type>
      <name>simple_boot_up_master</name>
      <anchorfile>structcanopen_1_1DeviceInfo.html</anchorfile>
      <anchor>a48c12708f6e1c3effcc485e04286f18d</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>bool</type>
      <name>simple_boot_up_slave</name>
      <anchorfile>structcanopen_1_1DeviceInfo.html</anchorfile>
      <anchor>a1a59ae9491036e7dda6f31624a99f661</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>std::string</type>
      <name>vendor_name</name>
      <anchorfile>structcanopen_1_1DeviceInfo.html</anchorfile>
      <anchor>ab0d228a0c9c1c219e5d6d187da3221f7</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>uint32_t</type>
      <name>vendor_number</name>
      <anchorfile>structcanopen_1_1DeviceInfo.html</anchorfile>
      <anchor>a412be9017fdd4414f3e64f16890d99d1</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>canopen::DiagGroup</name>
    <filename>classcanopen_1_1DiagGroup.html</filename>
    <templarg></templarg>
    <base>canopen::VectorHelper</base>
    <member kind="function" virtualness="virtual">
      <type>virtual void</type>
      <name>diag</name>
      <anchorfile>classcanopen_1_1DiagGroup.html</anchorfile>
      <anchor>a59ec418d2e9033c5a047f1d9e03ce40f</anchor>
      <arglist>(LayerReport &amp;report)</arglist>
    </member>
    <member kind="typedef" protection="private">
      <type>VectorHelper&lt; T &gt;</type>
      <name>V</name>
      <anchorfile>classcanopen_1_1DiagGroup.html</anchorfile>
      <anchor>a22da3cdff3a39c4acf87caa5b3fa755a</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>canopen::EMCYHandler</name>
    <filename>classcanopen_1_1EMCYHandler.html</filename>
    <base>canopen::Layer</base>
    <member kind="function">
      <type></type>
      <name>EMCYHandler</name>
      <anchorfile>classcanopen_1_1EMCYHandler.html</anchorfile>
      <anchor>ad360d7fcf737bf41adfd8540d77850a3</anchor>
      <arglist>(const boost::shared_ptr&lt; can::CommInterface &gt; interface, const boost::shared_ptr&lt; ObjectStorage &gt; storage)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>resetErrors</name>
      <anchorfile>classcanopen_1_1EMCYHandler.html</anchorfile>
      <anchor>aa338167b40c30574e9eeb8aa7d4763e8</anchor>
      <arglist>(LayerStatus &amp;status)</arglist>
    </member>
    <member kind="function" protection="private" virtualness="virtual">
      <type>virtual void</type>
      <name>handleDiag</name>
      <anchorfile>classcanopen_1_1EMCYHandler.html</anchorfile>
      <anchor>a7c101f43a89536e71fdea2adf2cccff3</anchor>
      <arglist>(LayerReport &amp;report)</arglist>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>handleEMCY</name>
      <anchorfile>classcanopen_1_1EMCYHandler.html</anchorfile>
      <anchor>a188f65d5fa8d63130610f25a49a37852</anchor>
      <arglist>(const can::Frame &amp;msg)</arglist>
    </member>
    <member kind="function" protection="private" virtualness="virtual">
      <type>virtual void</type>
      <name>handleHalt</name>
      <anchorfile>classcanopen_1_1EMCYHandler.html</anchorfile>
      <anchor>a64c3ee6e5729a5c7e8e39fd0d04a3d55</anchor>
      <arglist>(LayerStatus &amp;status)</arglist>
    </member>
    <member kind="function" protection="private" virtualness="virtual">
      <type>virtual void</type>
      <name>handleInit</name>
      <anchorfile>classcanopen_1_1EMCYHandler.html</anchorfile>
      <anchor>aed8f07a46dba2af793763d0616a5fcfb</anchor>
      <arglist>(LayerStatus &amp;status)</arglist>
    </member>
    <member kind="function" protection="private" virtualness="virtual">
      <type>virtual void</type>
      <name>handleRead</name>
      <anchorfile>classcanopen_1_1EMCYHandler.html</anchorfile>
      <anchor>a39e9eb37a0d7d9aa45fb9eeec291ec93</anchor>
      <arglist>(LayerStatus &amp;status, const LayerState &amp;current_state)</arglist>
    </member>
    <member kind="function" protection="private" virtualness="virtual">
      <type>virtual void</type>
      <name>handleRecover</name>
      <anchorfile>classcanopen_1_1EMCYHandler.html</anchorfile>
      <anchor>aa6277b391cca849f69ad9b1aa20bb0b7</anchor>
      <arglist>(LayerStatus &amp;status)</arglist>
    </member>
    <member kind="function" protection="private" virtualness="virtual">
      <type>virtual void</type>
      <name>handleShutdown</name>
      <anchorfile>classcanopen_1_1EMCYHandler.html</anchorfile>
      <anchor>a13f3466a58fcafb16916083d346034e2</anchor>
      <arglist>(LayerStatus &amp;status)</arglist>
    </member>
    <member kind="function" protection="private" virtualness="virtual">
      <type>virtual void</type>
      <name>handleWrite</name>
      <anchorfile>classcanopen_1_1EMCYHandler.html</anchorfile>
      <anchor>ac8650da5a1abbe123d59dce857870a81</anchor>
      <arglist>(LayerStatus &amp;status, const LayerState &amp;current_state)</arglist>
    </member>
    <member kind="variable" protection="private">
      <type>can::CommInterface::FrameListener::Ptr</type>
      <name>emcy_listener_</name>
      <anchorfile>classcanopen_1_1EMCYHandler.html</anchorfile>
      <anchor>a605fb7d7ad7c997dd88d65718c77345c</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>ObjectStorage::Entry&lt; uint8_t &gt;</type>
      <name>error_register_</name>
      <anchorfile>classcanopen_1_1EMCYHandler.html</anchorfile>
      <anchor>a9cb39841694c64cf8f4ed5084c298b0c</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>boost::atomic&lt; bool &gt;</type>
      <name>has_error_</name>
      <anchorfile>classcanopen_1_1EMCYHandler.html</anchorfile>
      <anchor>a07dc3dc976c95a3af676a76dc3e771e5</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>ObjectStorage::Entry&lt; uint8_t &gt;</type>
      <name>num_errors_</name>
      <anchorfile>classcanopen_1_1EMCYHandler.html</anchorfile>
      <anchor>a4be167311e7f7f106178c63471ecb3f3</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>const boost::shared_ptr&lt; ObjectStorage &gt;</type>
      <name>storage_</name>
      <anchorfile>classcanopen_1_1EMCYHandler.html</anchorfile>
      <anchor>a1740ac60dcecc6b7405fb4feb41a731b</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>canopen::Exception</name>
    <filename>classcanopen_1_1Exception.html</filename>
    <member kind="function">
      <type></type>
      <name>Exception</name>
      <anchorfile>classcanopen_1_1Exception.html</anchorfile>
      <anchor>add2a81976c6310691143c7fa4fa7f54d</anchor>
      <arglist>(const std::string &amp;w)</arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>canopen::ExternalSyncLayer</name>
    <filename>classcanopen_1_1ExternalSyncLayer.html</filename>
    <base>canopen::ManagingSyncLayer</base>
    <member kind="function">
      <type></type>
      <name>ExternalSyncLayer</name>
      <anchorfile>classcanopen_1_1ExternalSyncLayer.html</anchorfile>
      <anchor>ad6ac9926f8de8923a5afaa25cf204c34</anchor>
      <arglist>(const SyncProperties &amp;p, boost::shared_ptr&lt; can::CommInterface &gt; interface)</arglist>
    </member>
    <member kind="function" protection="protected" virtualness="virtual">
      <type>virtual void</type>
      <name>handleInit</name>
      <anchorfile>classcanopen_1_1ExternalSyncLayer.html</anchorfile>
      <anchor>ac4f4c2e5d286d824edad0c140f267539</anchor>
      <arglist>(LayerStatus &amp;status)</arglist>
    </member>
    <member kind="function" protection="protected" virtualness="virtual">
      <type>virtual void</type>
      <name>handleRead</name>
      <anchorfile>classcanopen_1_1ExternalSyncLayer.html</anchorfile>
      <anchor>a151b37fc228b9f054924f16a64ec22c7</anchor>
      <arglist>(LayerStatus &amp;status, const LayerState &amp;current_state)</arglist>
    </member>
    <member kind="function" protection="protected" virtualness="virtual">
      <type>virtual void</type>
      <name>handleWrite</name>
      <anchorfile>classcanopen_1_1ExternalSyncLayer.html</anchorfile>
      <anchor>a926ae693e289952b3f4d158b1ea0719e</anchor>
      <arglist>(LayerStatus &amp;status, const LayerState &amp;current_state)</arglist>
    </member>
    <member kind="variable" protection="private">
      <type>can::BufferedReader</type>
      <name>reader_</name>
      <anchorfile>classcanopen_1_1ExternalSyncLayer.html</anchorfile>
      <anchor>aeca16f73419d2b543a8230ff32f56281</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>canopen::FrameOverlay</name>
    <filename>structcanopen_1_1FrameOverlay.html</filename>
    <templarg>T</templarg>
    <base>can::Frame</base>
    <member kind="function">
      <type></type>
      <name>FrameOverlay</name>
      <anchorfile>structcanopen_1_1FrameOverlay.html</anchorfile>
      <anchor>a58116e5a0395890f50ad7f3b57c9f9b6</anchor>
      <arglist>(const Header &amp;h)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>FrameOverlay</name>
      <anchorfile>structcanopen_1_1FrameOverlay.html</anchorfile>
      <anchor>a2ff132a2da1e6793c258ac7f0007b8f4</anchor>
      <arglist>(const can::Frame &amp;f)</arglist>
    </member>
    <member kind="variable">
      <type>T &amp;</type>
      <name>data</name>
      <anchorfile>structcanopen_1_1FrameOverlay.html</anchorfile>
      <anchor>a2fe32459103e92cfb852eccb14b6c9d7</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>canopen::HoldAny</name>
    <filename>classcanopen_1_1HoldAny.html</filename>
    <member kind="function">
      <type>const String &amp;</type>
      <name>data</name>
      <anchorfile>classcanopen_1_1HoldAny.html</anchorfile>
      <anchor>aa79cde6571833289152eea0477645ae6</anchor>
      <arglist>() const </arglist>
    </member>
    <member kind="function">
      <type>const T &amp;</type>
      <name>get</name>
      <anchorfile>classcanopen_1_1HoldAny.html</anchorfile>
      <anchor>a57787ae20422d707c40796e538392401</anchor>
      <arglist>() const </arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>HoldAny</name>
      <anchorfile>classcanopen_1_1HoldAny.html</anchorfile>
      <anchor>aba484dbfd398b1ceaf18e617863e7f83</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>HoldAny</name>
      <anchorfile>classcanopen_1_1HoldAny.html</anchorfile>
      <anchor>a22d52e0f5c43b5a26b6489f301681143</anchor>
      <arglist>(const T &amp;t)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>HoldAny</name>
      <anchorfile>classcanopen_1_1HoldAny.html</anchorfile>
      <anchor>a9b8d07feab39705a019ae64f46cda3a0</anchor>
      <arglist>(const std::string &amp;t)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>HoldAny</name>
      <anchorfile>classcanopen_1_1HoldAny.html</anchorfile>
      <anchor>a758812cce8cec526c83d6f9d3da300e8</anchor>
      <arglist>(const TypeGuard &amp;t)</arglist>
    </member>
    <member kind="function">
      <type>bool</type>
      <name>is_empty</name>
      <anchorfile>classcanopen_1_1HoldAny.html</anchorfile>
      <anchor>a8a8c4e3602d4f6241344bd7587ed8787</anchor>
      <arglist>() const </arglist>
    </member>
    <member kind="function">
      <type>const TypeGuard &amp;</type>
      <name>type</name>
      <anchorfile>classcanopen_1_1HoldAny.html</anchorfile>
      <anchor>af5c206216f57e286597dfbb210bb6668</anchor>
      <arglist>() const </arglist>
    </member>
    <member kind="variable" protection="private">
      <type>String</type>
      <name>buffer</name>
      <anchorfile>classcanopen_1_1HoldAny.html</anchorfile>
      <anchor>aba92166e0f145503cd58a36d7efc43e2</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>bool</type>
      <name>empty</name>
      <anchorfile>classcanopen_1_1HoldAny.html</anchorfile>
      <anchor>a43a19834f133a6fd2820e1bdfc39a70e</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>TypeGuard</type>
      <name>type_guard</name>
      <anchorfile>classcanopen_1_1HoldAny.html</anchorfile>
      <anchor>a79eee56da662644849b49e36b7b908d3</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>canopen::IPCSyncLayer</name>
    <filename>classcanopen_1_1IPCSyncLayer.html</filename>
    <base>canopen::SyncLayer</base>
    <member kind="function" virtualness="virtual">
      <type>virtual void</type>
      <name>addNode</name>
      <anchorfile>classcanopen_1_1IPCSyncLayer.html</anchorfile>
      <anchor>ae4ad3cc993542ae4d659ffbd750f5f3f</anchor>
      <arglist>(void *const ptr)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>IPCSyncLayer</name>
      <anchorfile>classcanopen_1_1IPCSyncLayer.html</anchorfile>
      <anchor>a989fbda7ef5caec801d0601c51beb757</anchor>
      <arglist>(const SyncProperties &amp;p, boost::shared_ptr&lt; can::CommInterface &gt; interface, boost::shared_ptr&lt; IPCSyncMaster &gt; sync_master)</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual void</type>
      <name>removeNode</name>
      <anchorfile>classcanopen_1_1IPCSyncLayer.html</anchorfile>
      <anchor>abbe3ea0f1eec853cd7acddc63a4f2cc5</anchor>
      <arglist>(void *const ptr)</arglist>
    </member>
    <member kind="function" protection="private" virtualness="virtual">
      <type>virtual void</type>
      <name>handleDiag</name>
      <anchorfile>classcanopen_1_1IPCSyncLayer.html</anchorfile>
      <anchor>ae52a5a17ed31d176c720b86d2bb203cc</anchor>
      <arglist>(LayerReport &amp;report)</arglist>
    </member>
    <member kind="function" protection="private" virtualness="virtual">
      <type>virtual void</type>
      <name>handleHalt</name>
      <anchorfile>classcanopen_1_1IPCSyncLayer.html</anchorfile>
      <anchor>aaa32500f89155e3627cc2818002125bd</anchor>
      <arglist>(LayerStatus &amp;status)</arglist>
    </member>
    <member kind="function" protection="private" virtualness="virtual">
      <type>virtual void</type>
      <name>handleInit</name>
      <anchorfile>classcanopen_1_1IPCSyncLayer.html</anchorfile>
      <anchor>ac0ce36bf33bae1b21014d4a9cd910593</anchor>
      <arglist>(LayerStatus &amp;status)</arglist>
    </member>
    <member kind="function" protection="private" virtualness="virtual">
      <type>virtual void</type>
      <name>handleRead</name>
      <anchorfile>classcanopen_1_1IPCSyncLayer.html</anchorfile>
      <anchor>a714328a44c397755febde4c026db0bf0</anchor>
      <arglist>(LayerStatus &amp;status, const LayerState &amp;current_state)</arglist>
    </member>
    <member kind="function" protection="private" virtualness="virtual">
      <type>virtual void</type>
      <name>handleRecover</name>
      <anchorfile>classcanopen_1_1IPCSyncLayer.html</anchorfile>
      <anchor>a6a57774b848c8e76c1fdef8af461d7cd</anchor>
      <arglist>(LayerStatus &amp;status)</arglist>
    </member>
    <member kind="function" protection="private" virtualness="virtual">
      <type>virtual void</type>
      <name>handleShutdown</name>
      <anchorfile>classcanopen_1_1IPCSyncLayer.html</anchorfile>
      <anchor>af2d54c4689e941e361d54ee91b6c3937</anchor>
      <arglist>(LayerStatus &amp;status)</arglist>
    </member>
    <member kind="function" protection="private" virtualness="virtual">
      <type>virtual void</type>
      <name>handleWrite</name>
      <anchorfile>classcanopen_1_1IPCSyncLayer.html</anchorfile>
      <anchor>a3dd2ebd7c738697611fb125d802bd084</anchor>
      <arglist>(LayerStatus &amp;status, const LayerState &amp;current_state)</arglist>
    </member>
    <member kind="variable" protection="private">
      <type>boost::shared_ptr&lt; can::CommInterface &gt;</type>
      <name>interface_</name>
      <anchorfile>classcanopen_1_1IPCSyncLayer.html</anchorfile>
      <anchor>a3ba4501c65953afe8e15c94763a55618</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>boost::mutex</type>
      <name>mutex_</name>
      <anchorfile>classcanopen_1_1IPCSyncLayer.html</anchorfile>
      <anchor>a8234a9f13c039dcc8008cb5b526f0dd5</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>boost::unordered_set&lt; void const * &gt;</type>
      <name>nodes_</name>
      <anchorfile>classcanopen_1_1IPCSyncLayer.html</anchorfile>
      <anchor>adc6f53e787f59c574bf7be6793d4e562</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>boost::shared_ptr&lt; IPCSyncMaster &gt;</type>
      <name>sync_master_</name>
      <anchorfile>classcanopen_1_1IPCSyncLayer.html</anchorfile>
      <anchor>a5a862e1decd9f71101ec2b3bcffacc53</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>canopen::IPCSyncMaster</name>
    <filename>classcanopen_1_1IPCSyncMaster.html</filename>
    <class kind="class">canopen::IPCSyncMaster::SyncObject</class>
    <member kind="function">
      <type>bool</type>
      <name>disableSync</name>
      <anchorfile>classcanopen_1_1IPCSyncMaster.html</anchorfile>
      <anchor>aa7b5fbab53401dc2fcbe1463a93799af</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>bool</type>
      <name>enableSync</name>
      <anchorfile>classcanopen_1_1IPCSyncMaster.html</anchorfile>
      <anchor>a9bd09e035a9d6aa4914ce1b8d8962c31</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>IPCSyncMaster</name>
      <anchorfile>classcanopen_1_1IPCSyncMaster.html</anchorfile>
      <anchor>aee51e2aadfd4f1e51341a810f9852389</anchor>
      <arglist>(boost::shared_ptr&lt; can::CommInterface &gt; interface)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>notify</name>
      <anchorfile>classcanopen_1_1IPCSyncMaster.html</anchorfile>
      <anchor>a39c7535b8fc99eebdd44e255b897eb93</anchor>
      <arglist>(LayerStatus &amp;status)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>start</name>
      <anchorfile>classcanopen_1_1IPCSyncMaster.html</anchorfile>
      <anchor>ae376078494c03490c835282392f2d11a</anchor>
      <arglist>(LayerStatus &amp;status)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>stop</name>
      <anchorfile>classcanopen_1_1IPCSyncMaster.html</anchorfile>
      <anchor>aff1a7967036d906a362ff42334ddfc1f</anchor>
      <arglist>(LayerStatus &amp;status)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>wait</name>
      <anchorfile>classcanopen_1_1IPCSyncMaster.html</anchorfile>
      <anchor>a822389641f93b5a330a07430e30a83ed</anchor>
      <arglist>(LayerStatus &amp;status)</arglist>
    </member>
    <member kind="function" protection="private" virtualness="pure">
      <type>virtual SyncObject *</type>
      <name>getSyncObject</name>
      <anchorfile>classcanopen_1_1IPCSyncMaster.html</anchorfile>
      <anchor>a887501f0136b5e9de1958e43e7412dcc</anchor>
      <arglist>(LayerStatus &amp;status)=0</arglist>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>run</name>
      <anchorfile>classcanopen_1_1IPCSyncMaster.html</anchorfile>
      <anchor>a72720631400077659e644a4a4a6da2d0</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="variable" protection="private">
      <type>boost::shared_ptr&lt; can::CommInterface &gt;</type>
      <name>interface_</name>
      <anchorfile>classcanopen_1_1IPCSyncMaster.html</anchorfile>
      <anchor>a7e78f7d111a5264622aa9eb87c5ecf01</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>SyncObject *</type>
      <name>sync_obj_</name>
      <anchorfile>classcanopen_1_1IPCSyncMaster.html</anchorfile>
      <anchor>a76e7d5e3be0025ef059004d6d70f77e8</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>boost::shared_ptr&lt; boost::thread &gt;</type>
      <name>thread_</name>
      <anchorfile>classcanopen_1_1IPCSyncMaster.html</anchorfile>
      <anchor>a09d4f4fc15d86c023890848a6d32996b</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>canopen::IPCSyncMaster::SyncObject</name>
    <filename>classcanopen_1_1IPCSyncMaster_1_1SyncObject.html</filename>
    <member kind="function">
      <type>void</type>
      <name>disableSync</name>
      <anchorfile>classcanopen_1_1IPCSyncMaster_1_1SyncObject.html</anchorfile>
      <anchor>a5b696d4f39ce78ce568e146d274335b7</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>enableSync</name>
      <anchorfile>classcanopen_1_1IPCSyncMaster_1_1SyncObject.html</anchorfile>
      <anchor>a1070456e1eb83752cf746dfede3754cd</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>bool</type>
      <name>nextSync</name>
      <anchorfile>classcanopen_1_1IPCSyncMaster_1_1SyncObject.html</anchorfile>
      <anchor>ad0e0d4f7c002756935fe158927fee1e2</anchor>
      <arglist>(uint8_t &amp;sync)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>SyncObject</name>
      <anchorfile>classcanopen_1_1IPCSyncMaster_1_1SyncObject.html</anchorfile>
      <anchor>a272eea5d84e4bf8b4ae9840a24c2b782</anchor>
      <arglist>(const SyncProperties &amp;p)</arglist>
    </member>
    <member kind="variable">
      <type>const SyncProperties</type>
      <name>properties</name>
      <anchorfile>classcanopen_1_1IPCSyncMaster_1_1SyncObject.html</anchorfile>
      <anchor>a1714d228a2016bf9aeb231f7d8cfd4aa</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>IPCSyncWaiter</type>
      <name>waiter</name>
      <anchorfile>classcanopen_1_1IPCSyncMaster_1_1SyncObject.html</anchorfile>
      <anchor>a6c13ef3fe674dc6a4b3164cf2f982278</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>uint8_t</type>
      <name>last_sync</name>
      <anchorfile>classcanopen_1_1IPCSyncMaster_1_1SyncObject.html</anchorfile>
      <anchor>a61af27876820d7a3f65fe761d2013abb</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>boost::interprocess::interprocess_mutex</type>
      <name>mutex</name>
      <anchorfile>classcanopen_1_1IPCSyncMaster_1_1SyncObject.html</anchorfile>
      <anchor>a90f45cc847d7482427cb90f99c9e3845</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>size_t</type>
      <name>sync_listeners</name>
      <anchorfile>classcanopen_1_1IPCSyncMaster_1_1SyncObject.html</anchorfile>
      <anchor>a7e6f955fa976294d5aefca2073be0c38</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>canopen::IPCSyncWaiter</name>
    <filename>classcanopen_1_1IPCSyncWaiter.html</filename>
    <member kind="function">
      <type>bool</type>
      <name>done</name>
      <anchorfile>classcanopen_1_1IPCSyncWaiter.html</anchorfile>
      <anchor>a516fe44c2cdac63efa7c2b058f468562</anchor>
      <arglist>(const DT &amp;d)</arglist>
    </member>
    <member kind="function">
      <type>scoped_mutex_lock</type>
      <name>get_lock</name>
      <anchorfile>classcanopen_1_1IPCSyncWaiter.html</anchorfile>
      <anchor>a536e557d20a69e44aa02883fb07c49c1</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>IPCSyncWaiter</name>
      <anchorfile>classcanopen_1_1IPCSyncWaiter.html</anchorfile>
      <anchor>a0d2947c34134bdd6010ecc5c912ea32a</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>bool</type>
      <name>sync</name>
      <anchorfile>classcanopen_1_1IPCSyncWaiter.html</anchorfile>
      <anchor>a4b9db002b7b1a0ebf56e5fb88f67d80c</anchor>
      <arglist>(const AT &amp;abs_time)</arglist>
    </member>
    <member kind="function">
      <type>bool</type>
      <name>wait</name>
      <anchorfile>classcanopen_1_1IPCSyncWaiter.html</anchorfile>
      <anchor>af060019f56870c32250bad9ec8e7e093</anchor>
      <arglist>(const DT &amp;d)</arglist>
    </member>
    <member kind="typedef" protection="private">
      <type>boost::interprocess::interprocess_condition</type>
      <name>interprocess_condition</name>
      <anchorfile>classcanopen_1_1IPCSyncWaiter.html</anchorfile>
      <anchor>adcc3fa8c7853c4de220840f496eb2430</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef" protection="private">
      <type>boost::interprocess::interprocess_mutex</type>
      <name>interprocess_mutex</name>
      <anchorfile>classcanopen_1_1IPCSyncWaiter.html</anchorfile>
      <anchor>ac14b79c2a5251cc592345b122ac82c4a</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef" protection="private">
      <type>boost::interprocess::scoped_lock&lt; interprocess_mutex &gt;</type>
      <name>scoped_mutex_lock</name>
      <anchorfile>classcanopen_1_1IPCSyncWaiter.html</anchorfile>
      <anchor>abb9756bb264cc358f5feda8a2f6ee0b9</anchor>
      <arglist></arglist>
    </member>
    <member kind="function" protection="private">
      <type>bool</type>
      <name>add</name>
      <anchorfile>classcanopen_1_1IPCSyncWaiter.html</anchorfile>
      <anchor>a137df01b1c9b1e780e6ef65303a7b310</anchor>
      <arglist>(const AT &amp;abs_time)</arglist>
    </member>
    <member kind="function" protection="private">
      <type>bool</type>
      <name>done_one</name>
      <anchorfile>classcanopen_1_1IPCSyncWaiter.html</anchorfile>
      <anchor>a4dbe83d41590f47ed2410acfec758a32</anchor>
      <arglist>(const AT &amp;abs_time)</arglist>
    </member>
    <member kind="function" protection="private">
      <type>bool</type>
      <name>start_sync</name>
      <anchorfile>classcanopen_1_1IPCSyncWaiter.html</anchorfile>
      <anchor>a9a604b7f2ac522e2cc0bb1e60603c8bf</anchor>
      <arglist>(const AT &amp;abs_time)</arglist>
    </member>
    <member kind="function" protection="private">
      <type>bool</type>
      <name>wait_done</name>
      <anchorfile>classcanopen_1_1IPCSyncWaiter.html</anchorfile>
      <anchor>a961e4129b4fc133fa9acba4fcb2413d6</anchor>
      <arglist>(const AT &amp;abs_time)</arglist>
    </member>
    <member kind="function" protection="private">
      <type>bool</type>
      <name>wait_started</name>
      <anchorfile>classcanopen_1_1IPCSyncWaiter.html</anchorfile>
      <anchor>aac89f98325ed0709995e7cf164cfc9c7</anchor>
      <arglist>(const AT &amp;abs_time)</arglist>
    </member>
    <member kind="variable" protection="private">
      <type>interprocess_mutex</type>
      <name>master_mutex</name>
      <anchorfile>classcanopen_1_1IPCSyncWaiter.html</anchorfile>
      <anchor>a3eb1be0163020f370642d7b6ea30e136</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>size_t</type>
      <name>number</name>
      <anchorfile>classcanopen_1_1IPCSyncWaiter.html</anchorfile>
      <anchor>a40ebf7af5c46ea9dcd487dc3dfc6c75b</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>interprocess_condition</type>
      <name>number_cond</name>
      <anchorfile>classcanopen_1_1IPCSyncWaiter.html</anchorfile>
      <anchor>a9ffd0aa843b58654015ab25af05e756b</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>interprocess_mutex</type>
      <name>number_mutex</name>
      <anchorfile>classcanopen_1_1IPCSyncWaiter.html</anchorfile>
      <anchor>a587d259b176aee7e6f09117301e4ea25</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>interprocess_condition</type>
      <name>started_cond</name>
      <anchorfile>classcanopen_1_1IPCSyncWaiter.html</anchorfile>
      <anchor>a59e779cf6fab3005c323c9285b013361</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>interprocess_mutex</type>
      <name>started_mutex</name>
      <anchorfile>classcanopen_1_1IPCSyncWaiter.html</anchorfile>
      <anchor>aed3d536bd95c9e53f51720463294dc0a</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>interprocess_mutex</type>
      <name>sync_mutex</name>
      <anchorfile>classcanopen_1_1IPCSyncWaiter.html</anchorfile>
      <anchor>a2aa1943d1eb84cf933761d48f46d17d5</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>size_t</type>
      <name>sync_started</name>
      <anchorfile>classcanopen_1_1IPCSyncWaiter.html</anchorfile>
      <anchor>ac9dfbe92cf5fccc040c938022e6e2e95</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>canopen::Layer</name>
    <filename>classcanopen_1_1Layer.html</filename>
    <member kind="enumeration">
      <name>LayerState</name>
      <anchorfile>classcanopen_1_1Layer.html</anchorfile>
      <anchor>afb49b530bf9cb8ac081f75fcb17a7d56</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>Off</name>
      <anchorfile>classcanopen_1_1Layer.html</anchorfile>
      <anchor>afb49b530bf9cb8ac081f75fcb17a7d56af40531ed2dca37b2d92f4e57acd00dbf</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>Init</name>
      <anchorfile>classcanopen_1_1Layer.html</anchorfile>
      <anchor>afb49b530bf9cb8ac081f75fcb17a7d56a7ab75ae08c41e2837e242632caa3b697</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>Shutdown</name>
      <anchorfile>classcanopen_1_1Layer.html</anchorfile>
      <anchor>afb49b530bf9cb8ac081f75fcb17a7d56a5d10bbc0f888d99999278fa801039405</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>Error</name>
      <anchorfile>classcanopen_1_1Layer.html</anchorfile>
      <anchor>afb49b530bf9cb8ac081f75fcb17a7d56a5032daf14afad78efb077f45270e2823</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>Halt</name>
      <anchorfile>classcanopen_1_1Layer.html</anchorfile>
      <anchor>afb49b530bf9cb8ac081f75fcb17a7d56abd6e5d78e5ba9757cf0ebf19e2fbcbab</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>Recover</name>
      <anchorfile>classcanopen_1_1Layer.html</anchorfile>
      <anchor>afb49b530bf9cb8ac081f75fcb17a7d56aad248b0a183f9aaf89ffa4cfd5218929</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>Ready</name>
      <anchorfile>classcanopen_1_1Layer.html</anchorfile>
      <anchor>afb49b530bf9cb8ac081f75fcb17a7d56a4acc3c1b6325354a975c999a95706116</anchor>
      <arglist></arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>diag</name>
      <anchorfile>classcanopen_1_1Layer.html</anchorfile>
      <anchor>a594e5c7003883cee2962b2fca48daa5c</anchor>
      <arglist>(LayerReport &amp;report)</arglist>
    </member>
    <member kind="function">
      <type>LayerState</type>
      <name>getLayerState</name>
      <anchorfile>classcanopen_1_1Layer.html</anchorfile>
      <anchor>ad533de4354aa668da4995b7ae9432fe0</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>halt</name>
      <anchorfile>classcanopen_1_1Layer.html</anchorfile>
      <anchor>a21588537a264ba0cf169162ee9e9821b</anchor>
      <arglist>(LayerStatus &amp;status)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>init</name>
      <anchorfile>classcanopen_1_1Layer.html</anchorfile>
      <anchor>aabad8ec188a97cd87815820ea2a1f4d7</anchor>
      <arglist>(LayerStatus &amp;status)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>Layer</name>
      <anchorfile>classcanopen_1_1Layer.html</anchorfile>
      <anchor>afae131c6ce20c96b0a1f07fb4d88febe</anchor>
      <arglist>(const std::string &amp;n)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>read</name>
      <anchorfile>classcanopen_1_1Layer.html</anchorfile>
      <anchor>a85113700a6a29c101c033136da8ef173</anchor>
      <arglist>(LayerStatus &amp;status)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>recover</name>
      <anchorfile>classcanopen_1_1Layer.html</anchorfile>
      <anchor>a886f3c5cd5b07949efa5aa7a1484ae6d</anchor>
      <arglist>(LayerStatus &amp;status)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>shutdown</name>
      <anchorfile>classcanopen_1_1Layer.html</anchorfile>
      <anchor>ac8a08a949f793a30dd3f6fd7580cd799</anchor>
      <arglist>(LayerStatus &amp;status)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>write</name>
      <anchorfile>classcanopen_1_1Layer.html</anchorfile>
      <anchor>a5eefe9112a15142eb74f33e52dae26cf</anchor>
      <arglist>(LayerStatus &amp;status)</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual</type>
      <name>~Layer</name>
      <anchorfile>classcanopen_1_1Layer.html</anchorfile>
      <anchor>a09bf347d48359c00d13467a275b0a267</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="variable">
      <type>const std::string</type>
      <name>name</name>
      <anchorfile>classcanopen_1_1Layer.html</anchorfile>
      <anchor>a1f98e8d5afaf3aa5c5618d0a5dc21bc2</anchor>
      <arglist></arglist>
    </member>
    <member kind="function" protection="protected" virtualness="pure">
      <type>virtual void</type>
      <name>handleDiag</name>
      <anchorfile>classcanopen_1_1Layer.html</anchorfile>
      <anchor>adb970e3512213e579d4d7a8f90451db2</anchor>
      <arglist>(LayerReport &amp;report)=0</arglist>
    </member>
    <member kind="function" protection="protected" virtualness="pure">
      <type>virtual void</type>
      <name>handleHalt</name>
      <anchorfile>classcanopen_1_1Layer.html</anchorfile>
      <anchor>a0c163fd7e011fe389207d3d2a044e4f7</anchor>
      <arglist>(LayerStatus &amp;status)=0</arglist>
    </member>
    <member kind="function" protection="protected" virtualness="pure">
      <type>virtual void</type>
      <name>handleInit</name>
      <anchorfile>classcanopen_1_1Layer.html</anchorfile>
      <anchor>a0439851c47622f15bee5901d7de7dcb8</anchor>
      <arglist>(LayerStatus &amp;status)=0</arglist>
    </member>
    <member kind="function" protection="protected" virtualness="pure">
      <type>virtual void</type>
      <name>handleRead</name>
      <anchorfile>classcanopen_1_1Layer.html</anchorfile>
      <anchor>a4691a490e5cedf6ab956489d9dc0b5e4</anchor>
      <arglist>(LayerStatus &amp;status, const LayerState &amp;current_state)=0</arglist>
    </member>
    <member kind="function" protection="protected" virtualness="pure">
      <type>virtual void</type>
      <name>handleRecover</name>
      <anchorfile>classcanopen_1_1Layer.html</anchorfile>
      <anchor>aa6f8fe9d4b8837f1b7f53ff553b420fa</anchor>
      <arglist>(LayerStatus &amp;status)=0</arglist>
    </member>
    <member kind="function" protection="protected" virtualness="pure">
      <type>virtual void</type>
      <name>handleShutdown</name>
      <anchorfile>classcanopen_1_1Layer.html</anchorfile>
      <anchor>ad1f39021d17d8792ac55a22d2dbf851c</anchor>
      <arglist>(LayerStatus &amp;status)=0</arglist>
    </member>
    <member kind="function" protection="protected" virtualness="pure">
      <type>virtual void</type>
      <name>handleWrite</name>
      <anchorfile>classcanopen_1_1Layer.html</anchorfile>
      <anchor>a5dc3e8df8059c0bced331ffb5727bc58</anchor>
      <arglist>(LayerStatus &amp;status, const LayerState &amp;current_state)=0</arglist>
    </member>
    <member kind="variable" protection="private">
      <type>boost::atomic&lt; LayerState &gt;</type>
      <name>state</name>
      <anchorfile>classcanopen_1_1Layer.html</anchorfile>
      <anchor>aa12088433e526f3ca359d4526b7633c8</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>canopen::LayerGroup</name>
    <filename>classcanopen_1_1LayerGroup.html</filename>
    <templarg>T</templarg>
    <base>canopen::Layer</base>
    <base>canopen::VectorHelper</base>
    <member kind="function">
      <type></type>
      <name>LayerGroup</name>
      <anchorfile>classcanopen_1_1LayerGroup.html</anchorfile>
      <anchor>ad9c124cb60a3b0e1ded08d9187394d7d</anchor>
      <arglist>(const std::string &amp;n)</arglist>
    </member>
    <member kind="function" protection="protected">
      <type>void</type>
      <name>call_or_fail</name>
      <anchorfile>classcanopen_1_1LayerGroup.html</anchorfile>
      <anchor>aa317db61a1eac63d1d03b6f5f14a35f6</anchor>
      <arglist>(FuncType func, FailType fail, Data &amp;status)</arglist>
    </member>
    <member kind="function" protection="protected">
      <type>void</type>
      <name>call_or_fail_rev</name>
      <anchorfile>classcanopen_1_1LayerGroup.html</anchorfile>
      <anchor>ae072bbde09073a5526dcd59d63d975d2</anchor>
      <arglist>(FuncType func, FailType fail, Data &amp;status)</arglist>
    </member>
    <member kind="function" protection="protected" virtualness="virtual">
      <type>virtual void</type>
      <name>handleDiag</name>
      <anchorfile>classcanopen_1_1LayerGroup.html</anchorfile>
      <anchor>a736c1c157c834611dd4c2ff965b72d5e</anchor>
      <arglist>(LayerReport &amp;report)</arglist>
    </member>
    <member kind="function" protection="protected" virtualness="virtual">
      <type>virtual void</type>
      <name>handleHalt</name>
      <anchorfile>classcanopen_1_1LayerGroup.html</anchorfile>
      <anchor>a8dc758275062e10c907d0a75dbb92d5d</anchor>
      <arglist>(LayerStatus &amp;status)</arglist>
    </member>
    <member kind="function" protection="protected" virtualness="virtual">
      <type>virtual void</type>
      <name>handleInit</name>
      <anchorfile>classcanopen_1_1LayerGroup.html</anchorfile>
      <anchor>a77d9aac3d86656863ad3f24084959662</anchor>
      <arglist>(LayerStatus &amp;status)</arglist>
    </member>
    <member kind="function" protection="protected" virtualness="virtual">
      <type>virtual void</type>
      <name>handleRead</name>
      <anchorfile>classcanopen_1_1LayerGroup.html</anchorfile>
      <anchor>abb458eb448bb35490dc6f1d9ec83b9d0</anchor>
      <arglist>(LayerStatus &amp;status, const LayerState &amp;current_state)</arglist>
    </member>
    <member kind="function" protection="protected" virtualness="virtual">
      <type>virtual void</type>
      <name>handleRecover</name>
      <anchorfile>classcanopen_1_1LayerGroup.html</anchorfile>
      <anchor>a3ca3c16a6ef34c8b0aa2d13fa0fe5145</anchor>
      <arglist>(LayerStatus &amp;status)</arglist>
    </member>
    <member kind="function" protection="protected" virtualness="virtual">
      <type>virtual void</type>
      <name>handleShutdown</name>
      <anchorfile>classcanopen_1_1LayerGroup.html</anchorfile>
      <anchor>a5062726c16aceef24cf7d1273187ec55</anchor>
      <arglist>(LayerStatus &amp;status)</arglist>
    </member>
    <member kind="function" protection="protected" virtualness="virtual">
      <type>virtual void</type>
      <name>handleWrite</name>
      <anchorfile>classcanopen_1_1LayerGroup.html</anchorfile>
      <anchor>a97de6238bf926446238c63291aa66993</anchor>
      <arglist>(LayerStatus &amp;status, const LayerState &amp;current_state)</arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>canopen::LayerGroupNoDiag</name>
    <filename>classcanopen_1_1LayerGroupNoDiag.html</filename>
    <templarg></templarg>
    <base>canopen::LayerGroup</base>
    <member kind="function" virtualness="virtual">
      <type>virtual void</type>
      <name>handleDiag</name>
      <anchorfile>classcanopen_1_1LayerGroupNoDiag.html</anchorfile>
      <anchor>a1aa23e280bcb74f87b60c31f58f44b61</anchor>
      <arglist>(LayerReport &amp;report)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>LayerGroupNoDiag</name>
      <anchorfile>classcanopen_1_1LayerGroupNoDiag.html</anchorfile>
      <anchor>a41ee2b0fa6b544ac10cfa0d357119269</anchor>
      <arglist>(const std::string &amp;n)</arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>canopen::LayerReport</name>
    <filename>classcanopen_1_1LayerReport.html</filename>
    <base>canopen::LayerStatus</base>
    <member kind="function">
      <type>void</type>
      <name>add</name>
      <anchorfile>classcanopen_1_1LayerReport.html</anchorfile>
      <anchor>a9278247c59bc69baa630dd65cd521aa7</anchor>
      <arglist>(const std::string &amp;key, const T &amp;value)</arglist>
    </member>
    <member kind="function">
      <type>const std::vector&lt; std::pair&lt; std::string, std::string &gt; &gt; &amp;</type>
      <name>values</name>
      <anchorfile>classcanopen_1_1LayerReport.html</anchorfile>
      <anchor>a412b089cb49296fd65d1d9c72e27783e</anchor>
      <arglist>() const </arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::vector&lt; std::pair&lt; std::string, std::string &gt; &gt;</type>
      <name>values_</name>
      <anchorfile>classcanopen_1_1LayerReport.html</anchorfile>
      <anchor>a3a136b38f1ed814a012834d4ca8ff855</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>canopen::LayerStack</name>
    <filename>classcanopen_1_1LayerStack.html</filename>
    <base>LayerGroup&lt;&gt;</base>
    <member kind="function">
      <type></type>
      <name>LayerStack</name>
      <anchorfile>classcanopen_1_1LayerStack.html</anchorfile>
      <anchor>a71d2969db948a1ecd5bc63fad3c64257</anchor>
      <arglist>(const std::string &amp;n)</arglist>
    </member>
    <member kind="function" protection="protected" virtualness="virtual">
      <type>virtual void</type>
      <name>handleShutdown</name>
      <anchorfile>classcanopen_1_1LayerStack.html</anchorfile>
      <anchor>ac91a91075676dcbd8f2c997381fb9c88</anchor>
      <arglist>(LayerStatus &amp;status)</arglist>
    </member>
    <member kind="function" protection="protected" virtualness="virtual">
      <type>virtual void</type>
      <name>handleWrite</name>
      <anchorfile>classcanopen_1_1LayerStack.html</anchorfile>
      <anchor>a3f5b48d880ad69abe65f5c0ea591894e</anchor>
      <arglist>(LayerStatus &amp;status, const LayerState &amp;current_state)</arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>canopen::LayerStatus</name>
    <filename>classcanopen_1_1LayerStatus.html</filename>
    <class kind="struct">canopen::LayerStatus::Error</class>
    <class kind="struct">canopen::LayerStatus::Ok</class>
    <class kind="struct">canopen::LayerStatus::Stale</class>
    <class kind="struct">canopen::LayerStatus::Unbounded</class>
    <class kind="struct">canopen::LayerStatus::Warn</class>
    <member kind="function">
      <type>bool</type>
      <name>bounded</name>
      <anchorfile>classcanopen_1_1LayerStatus.html</anchorfile>
      <anchor>a26da4c473540aa74f86b06aa7f943b50</anchor>
      <arglist>() const </arglist>
    </member>
    <member kind="function">
      <type>const void</type>
      <name>error</name>
      <anchorfile>classcanopen_1_1LayerStatus.html</anchorfile>
      <anchor>a80d5c7088683128b6de9fe84d1e0a0f5</anchor>
      <arglist>(const std::string &amp;r)</arglist>
    </member>
    <member kind="function">
      <type>int</type>
      <name>get</name>
      <anchorfile>classcanopen_1_1LayerStatus.html</anchorfile>
      <anchor>a448b7048f0409b356e77974ec1791411</anchor>
      <arglist>() const </arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>LayerStatus</name>
      <anchorfile>classcanopen_1_1LayerStatus.html</anchorfile>
      <anchor>a45a023cc7018a746ea9344068148e204</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>const std::string</type>
      <name>reason</name>
      <anchorfile>classcanopen_1_1LayerStatus.html</anchorfile>
      <anchor>a281b6299fd2f697093f7de1a3cfe76c9</anchor>
      <arglist>() const </arglist>
    </member>
    <member kind="function">
      <type>const void</type>
      <name>stale</name>
      <anchorfile>classcanopen_1_1LayerStatus.html</anchorfile>
      <anchor>a7b7689adeac8428825758dce30c57e86</anchor>
      <arglist>(const std::string &amp;r)</arglist>
    </member>
    <member kind="function">
      <type>const void</type>
      <name>warn</name>
      <anchorfile>classcanopen_1_1LayerStatus.html</anchorfile>
      <anchor>a716d054f2b63bc208f9f76e563cc42f6</anchor>
      <arglist>(const std::string &amp;r)</arglist>
    </member>
    <member kind="enumeration">
      <name>State</name>
      <anchorfile>classcanopen_1_1LayerStatus.html</anchorfile>
      <anchor>afaf2c83ffc9229a762728dbb73121b7a</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>OK</name>
      <anchorfile>classcanopen_1_1LayerStatus.html</anchorfile>
      <anchor>afaf2c83ffc9229a762728dbb73121b7aab789ee794618635e862635ec807ce251</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>WARN</name>
      <anchorfile>classcanopen_1_1LayerStatus.html</anchorfile>
      <anchor>afaf2c83ffc9229a762728dbb73121b7aac0e954615ee33e760bff4e58f779fc6e</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>ERROR</name>
      <anchorfile>classcanopen_1_1LayerStatus.html</anchorfile>
      <anchor>afaf2c83ffc9229a762728dbb73121b7aabc5832db73d0f6013dec8e8e098a11c3</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>STALE</name>
      <anchorfile>classcanopen_1_1LayerStatus.html</anchorfile>
      <anchor>afaf2c83ffc9229a762728dbb73121b7aac0059e6b7a5b275b550b2072147d463e</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>UNBOUNDED</name>
      <anchorfile>classcanopen_1_1LayerStatus.html</anchorfile>
      <anchor>afaf2c83ffc9229a762728dbb73121b7aaae864ed25ff01433fd4ed420f82b88c7</anchor>
      <arglist></arglist>
    </member>
    <member kind="function" protection="private" virtualness="virtual">
      <type>virtual void</type>
      <name>set</name>
      <anchorfile>classcanopen_1_1LayerStatus.html</anchorfile>
      <anchor>ae80ff2defe5789220c954a814299f15d</anchor>
      <arglist>(const State &amp;s, const std::string &amp;r)</arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::string</type>
      <name>reason_</name>
      <anchorfile>classcanopen_1_1LayerStatus.html</anchorfile>
      <anchor>a99d8c413bd3edd0ea2350d03e664b203</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>boost::atomic&lt; State &gt;</type>
      <name>state</name>
      <anchorfile>classcanopen_1_1LayerStatus.html</anchorfile>
      <anchor>ad7c4d487c9a36ab86552c6550d97027a</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>boost::mutex</type>
      <name>write_mutex_</name>
      <anchorfile>classcanopen_1_1LayerStatus.html</anchorfile>
      <anchor>a7d8d5d0dd56b87823137caa290c2f446</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>canopen::LayerStatus::Error</name>
    <filename>structcanopen_1_1LayerStatus_1_1Error.html</filename>
    <member kind="variable" static="yes">
      <type>static const State</type>
      <name>state</name>
      <anchorfile>structcanopen_1_1LayerStatus_1_1Error.html</anchorfile>
      <anchor>aa0d420cd974b2e6362acd914c377f423</anchor>
      <arglist></arglist>
    </member>
    <member kind="function" protection="private">
      <type></type>
      <name>Error</name>
      <anchorfile>structcanopen_1_1LayerStatus_1_1Error.html</anchorfile>
      <anchor>a7d71bd74a3235d2e041e6485abac77cd</anchor>
      <arglist>()</arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>canopen::LayerStatus::Ok</name>
    <filename>structcanopen_1_1LayerStatus_1_1Ok.html</filename>
    <member kind="variable" static="yes">
      <type>static const State</type>
      <name>state</name>
      <anchorfile>structcanopen_1_1LayerStatus_1_1Ok.html</anchorfile>
      <anchor>ac800edad6d5e269e33822b8958aa519e</anchor>
      <arglist></arglist>
    </member>
    <member kind="function" protection="private">
      <type></type>
      <name>Ok</name>
      <anchorfile>structcanopen_1_1LayerStatus_1_1Ok.html</anchorfile>
      <anchor>a1517b36d468e85c54cb1d770903ddcc8</anchor>
      <arglist>()</arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>canopen::LayerStatus::Stale</name>
    <filename>structcanopen_1_1LayerStatus_1_1Stale.html</filename>
    <member kind="variable" static="yes">
      <type>static const State</type>
      <name>state</name>
      <anchorfile>structcanopen_1_1LayerStatus_1_1Stale.html</anchorfile>
      <anchor>af89faf7f6e855048e1fb547d3e533228</anchor>
      <arglist></arglist>
    </member>
    <member kind="function" protection="private">
      <type></type>
      <name>Stale</name>
      <anchorfile>structcanopen_1_1LayerStatus_1_1Stale.html</anchorfile>
      <anchor>a4ee075c6b4bd0a638fe24f9faa604238</anchor>
      <arglist>()</arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>canopen::LayerStatus::Unbounded</name>
    <filename>structcanopen_1_1LayerStatus_1_1Unbounded.html</filename>
    <member kind="variable" static="yes">
      <type>static const State</type>
      <name>state</name>
      <anchorfile>structcanopen_1_1LayerStatus_1_1Unbounded.html</anchorfile>
      <anchor>a53e653c9028fc47d01d5c492e262a0dd</anchor>
      <arglist></arglist>
    </member>
    <member kind="function" protection="private">
      <type></type>
      <name>Unbounded</name>
      <anchorfile>structcanopen_1_1LayerStatus_1_1Unbounded.html</anchorfile>
      <anchor>a9d5693fe1f270c81dd44bb73dbfc8a47</anchor>
      <arglist>()</arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>canopen::LayerStatus::Warn</name>
    <filename>structcanopen_1_1LayerStatus_1_1Warn.html</filename>
    <member kind="variable" static="yes">
      <type>static const State</type>
      <name>state</name>
      <anchorfile>structcanopen_1_1LayerStatus_1_1Warn.html</anchorfile>
      <anchor>a1fefb50bbca084de5435eac6ddf86d52</anchor>
      <arglist></arglist>
    </member>
    <member kind="function" protection="private">
      <type></type>
      <name>Warn</name>
      <anchorfile>structcanopen_1_1LayerStatus_1_1Warn.html</anchorfile>
      <anchor>ab4d7a34fecd151892aaec6cf9aab9708</anchor>
      <arglist>()</arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>canopen::LocalIPCSyncMaster</name>
    <filename>classcanopen_1_1LocalIPCSyncMaster.html</filename>
    <base>canopen::IPCSyncMaster</base>
    <member kind="function">
      <type></type>
      <name>LocalIPCSyncMaster</name>
      <anchorfile>classcanopen_1_1LocalIPCSyncMaster.html</anchorfile>
      <anchor>a21560a50731dc4b1ec9268d0795da6dc</anchor>
      <arglist>(const SyncProperties &amp;properties, boost::shared_ptr&lt; can::CommInterface &gt; interface)</arglist>
    </member>
    <member kind="function">
      <type>bool</type>
      <name>matches</name>
      <anchorfile>classcanopen_1_1LocalIPCSyncMaster.html</anchorfile>
      <anchor>aafb9f4d3567a86ff06b6220dcda1969c</anchor>
      <arglist>(const SyncProperties &amp;p) const </arglist>
    </member>
    <member kind="function" protection="private" virtualness="virtual">
      <type>virtual SyncObject *</type>
      <name>getSyncObject</name>
      <anchorfile>classcanopen_1_1LocalIPCSyncMaster.html</anchorfile>
      <anchor>a9ac31a0f1cf985450a4fd2c43f6cc463</anchor>
      <arglist>(LayerStatus &amp;status)</arglist>
    </member>
    <member kind="variable" protection="private">
      <type>SyncObject</type>
      <name>sync_obj_</name>
      <anchorfile>classcanopen_1_1LocalIPCSyncMaster.html</anchorfile>
      <anchor>a50c538ed11fc101ea1ec4c0319a6529a</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>canopen::LocalMaster</name>
    <filename>classcanopen_1_1LocalMaster.html</filename>
    <base>canopen::Master</base>
    <class kind="class">canopen::LocalMaster::Allocator</class>
    <member kind="function" virtualness="virtual">
      <type>virtual boost::shared_ptr&lt; SyncLayer &gt;</type>
      <name>getSync</name>
      <anchorfile>classcanopen_1_1LocalMaster.html</anchorfile>
      <anchor>a14a7cac83719691996e90d31c5752e95</anchor>
      <arglist>(const SyncProperties &amp;properties)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>LocalMaster</name>
      <anchorfile>classcanopen_1_1LocalMaster.html</anchorfile>
      <anchor>a05eed0792da86ea6298e677c45c4b7cb</anchor>
      <arglist>(boost::shared_ptr&lt; can::CommInterface &gt; interface)</arglist>
    </member>
    <member kind="variable" protection="private">
      <type>boost::shared_ptr&lt; can::CommInterface &gt;</type>
      <name>interface_</name>
      <anchorfile>classcanopen_1_1LocalMaster.html</anchorfile>
      <anchor>ae45ca564adb4cbf893b4649cf17bf481</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>boost::mutex</type>
      <name>mutex_</name>
      <anchorfile>classcanopen_1_1LocalMaster.html</anchorfile>
      <anchor>a5c26894eda052723ca45215be6c54bab</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>boost::unordered_map&lt; can::Header, boost::shared_ptr&lt; LocalIPCSyncMaster &gt; &gt;</type>
      <name>syncmasters_</name>
      <anchorfile>classcanopen_1_1LocalMaster.html</anchorfile>
      <anchor>ad44f16a1fc964bb709ec547c0c01b96b</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>canopen::LocalMaster::Allocator</name>
    <filename>classcanopen_1_1LocalMaster_1_1Allocator.html</filename>
    <base>canopen::Master::Allocator</base>
    <member kind="function" virtualness="virtual">
      <type>virtual boost::shared_ptr&lt; Master &gt;</type>
      <name>allocate</name>
      <anchorfile>classcanopen_1_1LocalMaster_1_1Allocator.html</anchorfile>
      <anchor>a235eb12647a54b072b9697e8ca52f494</anchor>
      <arglist>(const std::string &amp;name, boost::shared_ptr&lt; can::CommInterface &gt; interface)</arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>canopen::ManagingSyncLayer</name>
    <filename>classcanopen_1_1ManagingSyncLayer.html</filename>
    <base>canopen::SyncLayer</base>
    <member kind="function" virtualness="virtual">
      <type>virtual void</type>
      <name>addNode</name>
      <anchorfile>classcanopen_1_1ManagingSyncLayer.html</anchorfile>
      <anchor>a4a0081a40d6bed2829bc549bbbc9b119</anchor>
      <arglist>(void *const ptr)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>ManagingSyncLayer</name>
      <anchorfile>classcanopen_1_1ManagingSyncLayer.html</anchorfile>
      <anchor>a51ccfcaf37ff33df06d79f34141cf931</anchor>
      <arglist>(const SyncProperties &amp;p, boost::shared_ptr&lt; can::CommInterface &gt; interface)</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual void</type>
      <name>removeNode</name>
      <anchorfile>classcanopen_1_1ManagingSyncLayer.html</anchorfile>
      <anchor>ac38be4a998b5cfb72886e2108a56c759</anchor>
      <arglist>(void *const ptr)</arglist>
    </member>
    <member kind="function" protection="protected" virtualness="virtual">
      <type>virtual void</type>
      <name>handleDiag</name>
      <anchorfile>classcanopen_1_1ManagingSyncLayer.html</anchorfile>
      <anchor>a3c5ffa4a8cd4590394cace0b43c35298</anchor>
      <arglist>(LayerReport &amp;report)</arglist>
    </member>
    <member kind="function" protection="protected" virtualness="virtual">
      <type>virtual void</type>
      <name>handleHalt</name>
      <anchorfile>classcanopen_1_1ManagingSyncLayer.html</anchorfile>
      <anchor>af0486e3224672e5f30d38e5e8cedd572</anchor>
      <arglist>(LayerStatus &amp;status)</arglist>
    </member>
    <member kind="function" protection="protected" virtualness="virtual">
      <type>virtual void</type>
      <name>handleRecover</name>
      <anchorfile>classcanopen_1_1ManagingSyncLayer.html</anchorfile>
      <anchor>af41c90690cf9a2914280f6e3a8cd6383</anchor>
      <arglist>(LayerStatus &amp;status)</arglist>
    </member>
    <member kind="function" protection="protected" virtualness="virtual">
      <type>virtual void</type>
      <name>handleShutdown</name>
      <anchorfile>classcanopen_1_1ManagingSyncLayer.html</anchorfile>
      <anchor>a552757bbdb6c0f7380dfad06a1b84602</anchor>
      <arglist>(LayerStatus &amp;status)</arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>boost::chrono::milliseconds</type>
      <name>half_step_</name>
      <anchorfile>classcanopen_1_1ManagingSyncLayer.html</anchorfile>
      <anchor>a6f21075853536f88d5dfde4fd023c4aa</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>boost::shared_ptr&lt; can::CommInterface &gt;</type>
      <name>interface_</name>
      <anchorfile>classcanopen_1_1ManagingSyncLayer.html</anchorfile>
      <anchor>a7f8b632ebb51e3813dfc3a78066c82dc</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>std::set&lt; void * &gt;</type>
      <name>nodes_</name>
      <anchorfile>classcanopen_1_1ManagingSyncLayer.html</anchorfile>
      <anchor>ad8fff90e0b2592beaf894a791dafd863</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>boost::mutex</type>
      <name>nodes_mutex_</name>
      <anchorfile>classcanopen_1_1ManagingSyncLayer.html</anchorfile>
      <anchor>a024602ac29ecc5e28d955619fda7d708</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>boost::atomic&lt; size_t &gt;</type>
      <name>nodes_size_</name>
      <anchorfile>classcanopen_1_1ManagingSyncLayer.html</anchorfile>
      <anchor>a593f9c3d95415b097b70a89533927142</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>boost::chrono::milliseconds</type>
      <name>step_</name>
      <anchorfile>classcanopen_1_1ManagingSyncLayer.html</anchorfile>
      <anchor>a6f18d0fa63861dcf6ef71eb7a112f2d7</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>canopen::Master</name>
    <filename>classcanopen_1_1Master.html</filename>
    <class kind="class">canopen::Master::Allocator</class>
    <member kind="function" virtualness="pure">
      <type>virtual boost::shared_ptr&lt; SyncLayer &gt;</type>
      <name>getSync</name>
      <anchorfile>classcanopen_1_1Master.html</anchorfile>
      <anchor>ad1c7a27d1580e13d1613dae62470458e</anchor>
      <arglist>(const SyncProperties &amp;properties)=0</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual</type>
      <name>~Master</name>
      <anchorfile>classcanopen_1_1Master.html</anchorfile>
      <anchor>a97de6da60739254f7bc800a6e929d91c</anchor>
      <arglist>()</arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>canopen::Master::Allocator</name>
    <filename>classcanopen_1_1Master_1_1Allocator.html</filename>
    <member kind="function" virtualness="pure">
      <type>virtual boost::shared_ptr&lt; Master &gt;</type>
      <name>allocate</name>
      <anchorfile>classcanopen_1_1Master_1_1Allocator.html</anchorfile>
      <anchor>a0b119b93f2153ed67fea2c383542f9d5</anchor>
      <arglist>(const std::string &amp;name, boost::shared_ptr&lt; can::CommInterface &gt; interface)=0</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual</type>
      <name>~Allocator</name>
      <anchorfile>classcanopen_1_1Master_1_1Allocator.html</anchorfile>
      <anchor>a02b8b132f47f689c53c8d7e22196d48b</anchor>
      <arglist>()</arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>canopen::Node</name>
    <filename>classcanopen_1_1Node.html</filename>
    <base>canopen::Layer</base>
    <member kind="enumeration">
      <name>State</name>
      <anchorfile>classcanopen_1_1Node.html</anchorfile>
      <anchor>a8d708412dc59c2ae071b795dbda754f7</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>Unknown</name>
      <anchorfile>classcanopen_1_1Node.html</anchorfile>
      <anchor>a8d708412dc59c2ae071b795dbda754f7ae1b7814d90ce1a38bc426df844f08020</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>BootUp</name>
      <anchorfile>classcanopen_1_1Node.html</anchorfile>
      <anchor>a8d708412dc59c2ae071b795dbda754f7a424b4dd8fa310389b409ea0a137838b4</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>Stopped</name>
      <anchorfile>classcanopen_1_1Node.html</anchorfile>
      <anchor>a8d708412dc59c2ae071b795dbda754f7ace0349b327e1333e470627f57b791500</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>Operational</name>
      <anchorfile>classcanopen_1_1Node.html</anchorfile>
      <anchor>a8d708412dc59c2ae071b795dbda754f7a5b4ec7b714b4c4da095758b0f1c18469</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>PreOperational</name>
      <anchorfile>classcanopen_1_1Node.html</anchorfile>
      <anchor>a8d708412dc59c2ae071b795dbda754f7a2afd9d7c9c0f3871099de552af5d0d40</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef">
      <type>fastdelegate::FastDelegate1&lt; const State &amp; &gt;</type>
      <name>StateDelegate</name>
      <anchorfile>classcanopen_1_1Node.html</anchorfile>
      <anchor>ad42399244e20c7f969d6733f6566db2f</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef">
      <type>can::Listener&lt; const StateDelegate, const State &amp; &gt;</type>
      <name>StateListener</name>
      <anchorfile>classcanopen_1_1Node.html</anchorfile>
      <anchor>a3a0daea33181a4d823213497b864d0ca</anchor>
      <arglist></arglist>
    </member>
    <member kind="function">
      <type>StateListener::Ptr</type>
      <name>addStateListener</name>
      <anchorfile>classcanopen_1_1Node.html</anchorfile>
      <anchor>a3538b0e828a43021524ec2624e2e68f5</anchor>
      <arglist>(const StateDelegate &amp;s)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>enterState</name>
      <anchorfile>classcanopen_1_1Node.html</anchorfile>
      <anchor>a32f4cbcb9b393b4d9b5905c8308e0e95</anchor>
      <arglist>(const State &amp;s)</arglist>
    </member>
    <member kind="function">
      <type>T</type>
      <name>get</name>
      <anchorfile>classcanopen_1_1Node.html</anchorfile>
      <anchor>a6a9ccceefaa3f5fa5b81c355b7b9361f</anchor>
      <arglist>(const ObjectDict::Key &amp;k)</arglist>
    </member>
    <member kind="function">
      <type>const State</type>
      <name>getState</name>
      <anchorfile>classcanopen_1_1Node.html</anchorfile>
      <anchor>a14bfbd8a415253888edb1a05497e7b9c</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>const boost::shared_ptr&lt; ObjectStorage &gt;</type>
      <name>getStorage</name>
      <anchorfile>classcanopen_1_1Node.html</anchorfile>
      <anchor>afc95995a253fe939334a839bef3b78f4</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>Node</name>
      <anchorfile>classcanopen_1_1Node.html</anchorfile>
      <anchor>a05554badf43cfdb40c92a93c3a22fd4a</anchor>
      <arglist>(const boost::shared_ptr&lt; can::CommInterface &gt; interface, const boost::shared_ptr&lt; ObjectDict &gt; dict, uint8_t node_id, const boost::shared_ptr&lt; SyncCounter &gt; sync=boost::shared_ptr&lt; SyncCounter &gt;())</arglist>
    </member>
    <member kind="function">
      <type>bool</type>
      <name>prepare</name>
      <anchorfile>classcanopen_1_1Node.html</anchorfile>
      <anchor>ad675eb50022e345f655f09a10512fb0b</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>bool</type>
      <name>reset</name>
      <anchorfile>classcanopen_1_1Node.html</anchorfile>
      <anchor>a084d3cb9168c47d4429f8c595e1a14d9</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>bool</type>
      <name>reset_com</name>
      <anchorfile>classcanopen_1_1Node.html</anchorfile>
      <anchor>ae59f30c8a81d13696691daff40af8e7c</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>bool</type>
      <name>start</name>
      <anchorfile>classcanopen_1_1Node.html</anchorfile>
      <anchor>a78bc588d44efc585098b21fb184d8b91</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>bool</type>
      <name>stop</name>
      <anchorfile>classcanopen_1_1Node.html</anchorfile>
      <anchor>a1ead46050b19923a8ca31ff601afddf0</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="variable">
      <type>const uint8_t</type>
      <name>node_id_</name>
      <anchorfile>classcanopen_1_1Node.html</anchorfile>
      <anchor>a6999045c9a33b66532da135530bf9c26</anchor>
      <arglist></arglist>
    </member>
    <member kind="function" protection="private">
      <type>bool</type>
      <name>checkHeartbeat</name>
      <anchorfile>classcanopen_1_1Node.html</anchorfile>
      <anchor>a6311996e845464d4926f43fd0727b605</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" protection="private">
      <type>uint16_t</type>
      <name>getHeartbeatInterval</name>
      <anchorfile>classcanopen_1_1Node.html</anchorfile>
      <anchor>af5653690ed17a055377e315a2a341791</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" protection="private" virtualness="virtual">
      <type>virtual void</type>
      <name>handleDiag</name>
      <anchorfile>classcanopen_1_1Node.html</anchorfile>
      <anchor>ac38d28c0174b92050586c4703f1f7515</anchor>
      <arglist>(LayerReport &amp;report)</arglist>
    </member>
    <member kind="function" protection="private" virtualness="virtual">
      <type>virtual void</type>
      <name>handleHalt</name>
      <anchorfile>classcanopen_1_1Node.html</anchorfile>
      <anchor>a2a9be7786cd6ccb12fdcfde03f61ce5a</anchor>
      <arglist>(LayerStatus &amp;status)</arglist>
    </member>
    <member kind="function" protection="private" virtualness="virtual">
      <type>virtual void</type>
      <name>handleInit</name>
      <anchorfile>classcanopen_1_1Node.html</anchorfile>
      <anchor>a83805467343a0c7273832e4c488ff6d5</anchor>
      <arglist>(LayerStatus &amp;status)</arglist>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>handleNMT</name>
      <anchorfile>classcanopen_1_1Node.html</anchorfile>
      <anchor>a06e4b9277d3170dce0da6ce5443aaf66</anchor>
      <arglist>(const can::Frame &amp;msg)</arglist>
    </member>
    <member kind="function" protection="private" virtualness="virtual">
      <type>virtual void</type>
      <name>handleRead</name>
      <anchorfile>classcanopen_1_1Node.html</anchorfile>
      <anchor>adf768eaf7c85315eb1a791259905099f</anchor>
      <arglist>(LayerStatus &amp;status, const LayerState &amp;current_state)</arglist>
    </member>
    <member kind="function" protection="private" virtualness="virtual">
      <type>virtual void</type>
      <name>handleRecover</name>
      <anchorfile>classcanopen_1_1Node.html</anchorfile>
      <anchor>ad4220c0c651adc76d187b46d49e147f9</anchor>
      <arglist>(LayerStatus &amp;status)</arglist>
    </member>
    <member kind="function" protection="private" virtualness="virtual">
      <type>virtual void</type>
      <name>handleShutdown</name>
      <anchorfile>classcanopen_1_1Node.html</anchorfile>
      <anchor>a3305e02d6facac6cc2684b1c549217e5</anchor>
      <arglist>(LayerStatus &amp;status)</arglist>
    </member>
    <member kind="function" protection="private" virtualness="virtual">
      <type>virtual void</type>
      <name>handleWrite</name>
      <anchorfile>classcanopen_1_1Node.html</anchorfile>
      <anchor>a03f9db59e8fa96f47050850b67690472</anchor>
      <arglist>(LayerStatus &amp;status, const LayerState &amp;current_state)</arglist>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>setHeartbeatInterval</name>
      <anchorfile>classcanopen_1_1Node.html</anchorfile>
      <anchor>acc1ad2e5a62e4acc5472ac1be200b4a6</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>switchState</name>
      <anchorfile>classcanopen_1_1Node.html</anchorfile>
      <anchor>aa8ced5e8a118d693cf97d12acf16a30b</anchor>
      <arglist>(const uint8_t &amp;s)</arglist>
    </member>
    <member kind="function" protection="private">
      <type>int</type>
      <name>wait_for</name>
      <anchorfile>classcanopen_1_1Node.html</anchorfile>
      <anchor>a1862d6cf869fe034cddab541ed35307f</anchor>
      <arglist>(const State &amp;s, const T &amp;timeout)</arglist>
    </member>
    <member kind="variable" protection="private">
      <type>boost::condition_variable</type>
      <name>cond</name>
      <anchorfile>classcanopen_1_1Node.html</anchorfile>
      <anchor>ab42092480660360cbfe2bd8dc83aee00</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>boost::mutex</type>
      <name>cond_mutex</name>
      <anchorfile>classcanopen_1_1Node.html</anchorfile>
      <anchor>a4e849e348155b8b89d65989589a03e42</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>ObjectStorage::Entry&lt; ObjectStorage::DataType&lt; ObjectDict::DEFTYPE_UNSIGNED16 &gt;::type &gt;</type>
      <name>heartbeat_</name>
      <anchorfile>classcanopen_1_1Node.html</anchorfile>
      <anchor>aa7ce40fa4de656a1ba449a37b161b9ef</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>boost::chrono::high_resolution_clock::time_point</type>
      <name>heartbeat_timeout_</name>
      <anchorfile>classcanopen_1_1Node.html</anchorfile>
      <anchor>afb06fa6497db4ccef99477f875856761</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>const boost::shared_ptr&lt; can::CommInterface &gt;</type>
      <name>interface_</name>
      <anchorfile>classcanopen_1_1Node.html</anchorfile>
      <anchor>a1d75a7e1b30d23ed29041d69adf8f0e5</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>boost::timed_mutex</type>
      <name>mutex</name>
      <anchorfile>classcanopen_1_1Node.html</anchorfile>
      <anchor>a68143283f220d5e4f56176056524396b</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>can::CommInterface::FrameListener::Ptr</type>
      <name>nmt_listener_</name>
      <anchorfile>classcanopen_1_1Node.html</anchorfile>
      <anchor>a653c1ee63f1caba63e3779ac9f9ec8c2</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>PDOMapper</type>
      <name>pdo_</name>
      <anchorfile>classcanopen_1_1Node.html</anchorfile>
      <anchor>a6682bc0d117ee04b926c842b28ce7839</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>SDOClient</type>
      <name>sdo_</name>
      <anchorfile>classcanopen_1_1Node.html</anchorfile>
      <anchor>a4977da2aeb92c854383a1631893bc820</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>State</type>
      <name>state_</name>
      <anchorfile>classcanopen_1_1Node.html</anchorfile>
      <anchor>a4f1739440c872fd483d3ef9dfefb9412</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>can::SimpleDispatcher&lt; StateListener &gt;</type>
      <name>state_dispatcher_</name>
      <anchorfile>classcanopen_1_1Node.html</anchorfile>
      <anchor>a62ba05a4c29bb9873dbbbbf9eb0c2f75</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>const boost::shared_ptr&lt; SyncCounter &gt;</type>
      <name>sync_</name>
      <anchorfile>classcanopen_1_1Node.html</anchorfile>
      <anchor>a649fe18ea078e8500c5f532556176a73</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>canopen::NodeChain</name>
    <filename>classcanopen_1_1NodeChain.html</filename>
    <templarg></templarg>
    <base>canopen::Chain</base>
    <member kind="function">
      <type>const std::vector&lt; boost::shared_ptr&lt; T &gt; &gt; &amp;</type>
      <name>getElements</name>
      <anchorfile>classcanopen_1_1NodeChain.html</anchorfile>
      <anchor>a4415f7535b5463797a5238e382ae3c24</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>prepare</name>
      <anchorfile>classcanopen_1_1NodeChain.html</anchorfile>
      <anchor>a8cc6ca59d3cddf395b5c87087bd26680</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>reset</name>
      <anchorfile>classcanopen_1_1NodeChain.html</anchorfile>
      <anchor>aad03ab35538fcf9aa6c2ac7338f14dfc</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>reset_com</name>
      <anchorfile>classcanopen_1_1NodeChain.html</anchorfile>
      <anchor>adef9d9bac0c80a0fc06e8a49c7936bb0</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>start</name>
      <anchorfile>classcanopen_1_1NodeChain.html</anchorfile>
      <anchor>a8909aa3046463b8b566b53d834c48c31</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>stop</name>
      <anchorfile>classcanopen_1_1NodeChain.html</anchorfile>
      <anchor>aed26aa50c5eda6ebcb6bfaa6d6ffd7ec</anchor>
      <arglist>()</arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>canopen::NodeIdOffset</name>
    <filename>classcanopen_1_1NodeIdOffset.html</filename>
    <templarg>T</templarg>
    <member kind="function">
      <type></type>
      <name>NodeIdOffset</name>
      <anchorfile>classcanopen_1_1NodeIdOffset.html</anchorfile>
      <anchor>af540d6cb2c344a3aee0becbcaa41ad44</anchor>
      <arglist>(const T &amp;t)</arglist>
    </member>
    <member kind="function" static="yes">
      <type>static const T</type>
      <name>apply</name>
      <anchorfile>classcanopen_1_1NodeIdOffset.html</anchorfile>
      <anchor>a6bdd64c1f902783b384fe14b42c633f3</anchor>
      <arglist>(const HoldAny &amp;val, const uint8_t &amp;u)</arglist>
    </member>
    <member kind="function" protection="private" static="yes">
      <type>static T</type>
      <name>add</name>
      <anchorfile>classcanopen_1_1NodeIdOffset.html</anchorfile>
      <anchor>a570e1b0748f841fdc3bf2701b7130ada</anchor>
      <arglist>(const uint8_t &amp;u, const T &amp;t)</arglist>
    </member>
    <member kind="variable" protection="private">
      <type>T(*</type>
      <name>adder</name>
      <anchorfile>classcanopen_1_1NodeIdOffset.html</anchorfile>
      <anchor>a3d00ce1358ff17024681db7f38f0ebb1</anchor>
      <arglist>)(const uint8_t &amp;, const T &amp;)</arglist>
    </member>
    <member kind="variable" protection="private">
      <type>T</type>
      <name>offset</name>
      <anchorfile>classcanopen_1_1NodeIdOffset.html</anchorfile>
      <anchor>a389d6b5b64c10e0aca79e953b28910b1</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>canopen::ObjectDict</name>
    <filename>classcanopen_1_1ObjectDict.html</filename>
    <class kind="struct">canopen::ObjectDict::Entry</class>
    <class kind="class">canopen::ObjectDict::Key</class>
    <member kind="enumeration">
      <name>Code</name>
      <anchorfile>classcanopen_1_1ObjectDict.html</anchorfile>
      <anchor>a15b24665775b88bc09a34d73b642261a</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>NULL_DATA</name>
      <anchorfile>classcanopen_1_1ObjectDict.html</anchorfile>
      <anchor>a15b24665775b88bc09a34d73b642261aab36552d94d650b37ec1354eb520868e3</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>DOMAIN_DATA</name>
      <anchorfile>classcanopen_1_1ObjectDict.html</anchorfile>
      <anchor>a15b24665775b88bc09a34d73b642261aa1c5f336a84713323075ba46c46fc22d8</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>DEFTYPE</name>
      <anchorfile>classcanopen_1_1ObjectDict.html</anchorfile>
      <anchor>a15b24665775b88bc09a34d73b642261aabf12010619460d854fb81b7e089a49b3</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>DEFSTRUCT</name>
      <anchorfile>classcanopen_1_1ObjectDict.html</anchorfile>
      <anchor>a15b24665775b88bc09a34d73b642261aa2bc87bb3558ccd63418c0c48ecc93c69</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>VAR</name>
      <anchorfile>classcanopen_1_1ObjectDict.html</anchorfile>
      <anchor>a15b24665775b88bc09a34d73b642261aac2a545de582314a8459d7a9ed727724c</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>ARRAY</name>
      <anchorfile>classcanopen_1_1ObjectDict.html</anchorfile>
      <anchor>a15b24665775b88bc09a34d73b642261aa2735b9911df7c2c86d4930fea09943a6</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>RECORD</name>
      <anchorfile>classcanopen_1_1ObjectDict.html</anchorfile>
      <anchor>a15b24665775b88bc09a34d73b642261aa1b5ffe0d8ce91997821391813688bab0</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumeration">
      <name>DataTypes</name>
      <anchorfile>classcanopen_1_1ObjectDict.html</anchorfile>
      <anchor>a126a5515ba3c9f07adf2fb8e810c2cbd</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>DEFTYPE_INTEGER8</name>
      <anchorfile>classcanopen_1_1ObjectDict.html</anchorfile>
      <anchor>a126a5515ba3c9f07adf2fb8e810c2cbdafbea1b3bdac3744dfdc534b372318c52</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>DEFTYPE_INTEGER16</name>
      <anchorfile>classcanopen_1_1ObjectDict.html</anchorfile>
      <anchor>a126a5515ba3c9f07adf2fb8e810c2cbdaff0459a864edbef3b672a3465ce1dad4</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>DEFTYPE_INTEGER32</name>
      <anchorfile>classcanopen_1_1ObjectDict.html</anchorfile>
      <anchor>a126a5515ba3c9f07adf2fb8e810c2cbdab97d13ce5b2b342de987fb78968c05b2</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>DEFTYPE_UNSIGNED8</name>
      <anchorfile>classcanopen_1_1ObjectDict.html</anchorfile>
      <anchor>a126a5515ba3c9f07adf2fb8e810c2cbda6fdfdd05b9899bddad200af04e9277f3</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>DEFTYPE_UNSIGNED16</name>
      <anchorfile>classcanopen_1_1ObjectDict.html</anchorfile>
      <anchor>a126a5515ba3c9f07adf2fb8e810c2cbda96537a08a1c816e9d04609d8ba1c1b54</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>DEFTYPE_UNSIGNED32</name>
      <anchorfile>classcanopen_1_1ObjectDict.html</anchorfile>
      <anchor>a126a5515ba3c9f07adf2fb8e810c2cbda418cef58153630abd61c54234894355d</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>DEFTYPE_REAL32</name>
      <anchorfile>classcanopen_1_1ObjectDict.html</anchorfile>
      <anchor>a126a5515ba3c9f07adf2fb8e810c2cbda12a147d770d216f6b847456defab317f</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>DEFTYPE_VISIBLE_STRING</name>
      <anchorfile>classcanopen_1_1ObjectDict.html</anchorfile>
      <anchor>a126a5515ba3c9f07adf2fb8e810c2cbda0216f03a2e6fb1ed57815d731dbe25ef</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>DEFTYPE_OCTET_STRING</name>
      <anchorfile>classcanopen_1_1ObjectDict.html</anchorfile>
      <anchor>a126a5515ba3c9f07adf2fb8e810c2cbda65c277f80a29938a83c89fdfca0bb1db</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>DEFTYPE_UNICODE_STRING</name>
      <anchorfile>classcanopen_1_1ObjectDict.html</anchorfile>
      <anchor>a126a5515ba3c9f07adf2fb8e810c2cbda49ca29895560d8725e512260a7c9e414</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>DEFTYPE_DOMAIN</name>
      <anchorfile>classcanopen_1_1ObjectDict.html</anchorfile>
      <anchor>a126a5515ba3c9f07adf2fb8e810c2cbdae398b29d8685f263d56b5a658e14526a</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>DEFTYPE_REAL64</name>
      <anchorfile>classcanopen_1_1ObjectDict.html</anchorfile>
      <anchor>a126a5515ba3c9f07adf2fb8e810c2cbdacebcfa22a43038470e2cfdb143874905</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>DEFTYPE_INTEGER64</name>
      <anchorfile>classcanopen_1_1ObjectDict.html</anchorfile>
      <anchor>a126a5515ba3c9f07adf2fb8e810c2cbdafac36a02db014708130ab47797000a94</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>DEFTYPE_UNSIGNED64</name>
      <anchorfile>classcanopen_1_1ObjectDict.html</anchorfile>
      <anchor>a126a5515ba3c9f07adf2fb8e810c2cbdab81c091dc2fb39d773da4947387775c5</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef">
      <type>boost::error_info&lt; struct tag_objectdict_key, ObjectDict::Key &gt;</type>
      <name>key_info</name>
      <anchorfile>classcanopen_1_1ObjectDict.html</anchorfile>
      <anchor>abbb4a66e7cb2b9bdd30b71ed86bc3cc0</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef">
      <type>std::list&lt; std::pair&lt; std::string, std::string &gt; &gt;</type>
      <name>Overlay</name>
      <anchorfile>classcanopen_1_1ObjectDict.html</anchorfile>
      <anchor>ad506b277e8f085dd26071152fc0dde17</anchor>
      <arglist></arglist>
    </member>
    <member kind="function">
      <type>const boost::shared_ptr&lt; const Entry &gt; &amp;</type>
      <name>get</name>
      <anchorfile>classcanopen_1_1ObjectDict.html</anchorfile>
      <anchor>a10b94ab690a683988149335984050e55</anchor>
      <arglist>(const Key &amp;k) const </arglist>
    </member>
    <member kind="function">
      <type>bool</type>
      <name>has</name>
      <anchorfile>classcanopen_1_1ObjectDict.html</anchorfile>
      <anchor>ac9af3c27e7ee82d366d1bad9f112a49d</anchor>
      <arglist>(uint16_t i, uint8_t s) const </arglist>
    </member>
    <member kind="function">
      <type>bool</type>
      <name>has</name>
      <anchorfile>classcanopen_1_1ObjectDict.html</anchorfile>
      <anchor>aed2a7b0eb7c4f4fdacfd7e0958926ae2</anchor>
      <arglist>(uint16_t i) const </arglist>
    </member>
    <member kind="function">
      <type>bool</type>
      <name>has</name>
      <anchorfile>classcanopen_1_1ObjectDict.html</anchorfile>
      <anchor>a783ad8f031a7814dbc2f5790b5bd7c5a</anchor>
      <arglist>(const Key &amp;k) const </arglist>
    </member>
    <member kind="function">
      <type>bool</type>
      <name>insert</name>
      <anchorfile>classcanopen_1_1ObjectDict.html</anchorfile>
      <anchor>a85b795647e3fc384d36866fa1c989b34</anchor>
      <arglist>(bool is_sub, boost::shared_ptr&lt; const Entry &gt; e)</arglist>
    </member>
    <member kind="function">
      <type>bool</type>
      <name>iterate</name>
      <anchorfile>classcanopen_1_1ObjectDict.html</anchorfile>
      <anchor>a3b5e14a75b07d060041109c294dc47be</anchor>
      <arglist>(boost::unordered_map&lt; Key, boost::shared_ptr&lt; const Entry &gt; &gt;::const_iterator &amp;it) const </arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>ObjectDict</name>
      <anchorfile>classcanopen_1_1ObjectDict.html</anchorfile>
      <anchor>a6dff1f6e7a75693009ea5bb8548480f3</anchor>
      <arglist>(const DeviceInfo &amp;info)</arglist>
    </member>
    <member kind="function">
      <type>const Entry &amp;</type>
      <name>operator()</name>
      <anchorfile>classcanopen_1_1ObjectDict.html</anchorfile>
      <anchor>a340ae402b80de20388d8942f972b8732</anchor>
      <arglist>(uint16_t i) const </arglist>
    </member>
    <member kind="function">
      <type>const Entry &amp;</type>
      <name>operator()</name>
      <anchorfile>classcanopen_1_1ObjectDict.html</anchorfile>
      <anchor>a96199ba92bb32f286b0ad1a0b3583873</anchor>
      <arglist>(uint16_t i, uint8_t s) const </arglist>
    </member>
    <member kind="function" static="yes">
      <type>static boost::shared_ptr&lt; ObjectDict &gt;</type>
      <name>fromFile</name>
      <anchorfile>classcanopen_1_1ObjectDict.html</anchorfile>
      <anchor>a2c1ef20f55d5ccf6f3775ef56b28d756</anchor>
      <arglist>(const std::string &amp;path, const Overlay &amp;overlay=Overlay())</arglist>
    </member>
    <member kind="variable">
      <type>const DeviceInfo</type>
      <name>device_info</name>
      <anchorfile>classcanopen_1_1ObjectDict.html</anchorfile>
      <anchor>a6afb3a07734a816152c7f895be22e803</anchor>
      <arglist></arglist>
    </member>
    <member kind="function" protection="protected">
      <type>const boost::shared_ptr&lt; const Entry &gt; &amp;</type>
      <name>at</name>
      <anchorfile>classcanopen_1_1ObjectDict.html</anchorfile>
      <anchor>ab97c6bc765bd41c8a99d57c8dc09e2a4</anchor>
      <arglist>(const Key &amp;key) const </arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>boost::unordered_map&lt; Key, boost::shared_ptr&lt; const Entry &gt; &gt;</type>
      <name>dict_</name>
      <anchorfile>classcanopen_1_1ObjectDict.html</anchorfile>
      <anchor>a3d9d68fa548a42cdd765d5fde838d26f</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>canopen::ObjectDict::Entry</name>
    <filename>structcanopen_1_1ObjectDict_1_1Entry.html</filename>
    <member kind="function">
      <type></type>
      <name>Entry</name>
      <anchorfile>structcanopen_1_1ObjectDict_1_1Entry.html</anchorfile>
      <anchor>af7c65c9474a054b1bb5fce8a53643ac6</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>Entry</name>
      <anchorfile>structcanopen_1_1ObjectDict_1_1Entry.html</anchorfile>
      <anchor>aa0eac48f676681450f714bd0536e82a7</anchor>
      <arglist>(const Code c, const uint16_t i, const uint16_t t, const std::string &amp;d, const bool r=true, const bool w=true, bool m=false, const HoldAny def=HoldAny(), const HoldAny init=HoldAny())</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>Entry</name>
      <anchorfile>structcanopen_1_1ObjectDict_1_1Entry.html</anchorfile>
      <anchor>a7c9ba7e69d403c10af3ef072f8225781</anchor>
      <arglist>(const uint16_t i, const uint8_t s, const uint16_t t, const std::string &amp;d, const bool r=true, const bool w=true, bool m=false, const HoldAny def=HoldAny(), const HoldAny init=HoldAny())</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>operator Key</name>
      <anchorfile>structcanopen_1_1ObjectDict_1_1Entry.html</anchorfile>
      <anchor>aaf288e1217be54bfed7285ef9240b766</anchor>
      <arglist>() const </arglist>
    </member>
    <member kind="function">
      <type>const HoldAny &amp;</type>
      <name>value</name>
      <anchorfile>structcanopen_1_1ObjectDict_1_1Entry.html</anchorfile>
      <anchor>a64f35dbbdbe13b0c7208198893190235</anchor>
      <arglist>() const </arglist>
    </member>
    <member kind="variable">
      <type>bool</type>
      <name>constant</name>
      <anchorfile>structcanopen_1_1ObjectDict_1_1Entry.html</anchorfile>
      <anchor>afcbbe9c770a3f4e80afd4a78e1cc3334</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>uint16_t</type>
      <name>data_type</name>
      <anchorfile>structcanopen_1_1ObjectDict_1_1Entry.html</anchorfile>
      <anchor>a10421dc5ef65e921a71fedda7cd65dc4</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>HoldAny</type>
      <name>def_val</name>
      <anchorfile>structcanopen_1_1ObjectDict_1_1Entry.html</anchorfile>
      <anchor>a54a4a3239d54620a3fa21673f11f3233</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>std::string</type>
      <name>desc</name>
      <anchorfile>structcanopen_1_1ObjectDict_1_1Entry.html</anchorfile>
      <anchor>a57fd5b57a1e9bf6d580f1a2464d7db8f</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>uint16_t</type>
      <name>index</name>
      <anchorfile>structcanopen_1_1ObjectDict_1_1Entry.html</anchorfile>
      <anchor>a2dc71769a327b24386485d233a5f5cd0</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>HoldAny</type>
      <name>init_val</name>
      <anchorfile>structcanopen_1_1ObjectDict_1_1Entry.html</anchorfile>
      <anchor>a6ef4bb7d170074c462b468976ce5eee8</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>bool</type>
      <name>mappable</name>
      <anchorfile>structcanopen_1_1ObjectDict_1_1Entry.html</anchorfile>
      <anchor>a6b301a2ca433035be6169012beb09b64</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>Code</type>
      <name>obj_code</name>
      <anchorfile>structcanopen_1_1ObjectDict_1_1Entry.html</anchorfile>
      <anchor>a74fe7c6b44b015a0d7d5a7edf870d138</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>bool</type>
      <name>readable</name>
      <anchorfile>structcanopen_1_1ObjectDict_1_1Entry.html</anchorfile>
      <anchor>a1fb7d16925cc623f4861209474a0bb96</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>uint8_t</type>
      <name>sub_index</name>
      <anchorfile>structcanopen_1_1ObjectDict_1_1Entry.html</anchorfile>
      <anchor>a560918eababe69cb31ed3eb44def02c5</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>bool</type>
      <name>writable</name>
      <anchorfile>structcanopen_1_1ObjectDict_1_1Entry.html</anchorfile>
      <anchor>a37fca0f78a5ee0e6a2ddf3ee474b6b0d</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>canopen::ObjectDict::Key</name>
    <filename>classcanopen_1_1ObjectDict_1_1Key.html</filename>
    <member kind="function">
      <type>bool</type>
      <name>hasSub</name>
      <anchorfile>classcanopen_1_1ObjectDict_1_1Key.html</anchorfile>
      <anchor>adc1484899b39aa43ad74650868b2d32f</anchor>
      <arglist>() const </arglist>
    </member>
    <member kind="function">
      <type>uint16_t</type>
      <name>index</name>
      <anchorfile>classcanopen_1_1ObjectDict_1_1Key.html</anchorfile>
      <anchor>a6923172794af1dfeeea13579cfc368e9</anchor>
      <arglist>() const </arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>Key</name>
      <anchorfile>classcanopen_1_1ObjectDict_1_1Key.html</anchorfile>
      <anchor>a9c4a95f9415f458f2e5372e9ce9bf52e</anchor>
      <arglist>(const uint16_t i)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>Key</name>
      <anchorfile>classcanopen_1_1ObjectDict_1_1Key.html</anchorfile>
      <anchor>a24a6c147b88d60d6b4a6857acd901438</anchor>
      <arglist>(const uint16_t i, const uint8_t s)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>Key</name>
      <anchorfile>classcanopen_1_1ObjectDict_1_1Key.html</anchorfile>
      <anchor>a694a9892cb8e5f22534169a3d1916955</anchor>
      <arglist>(const std::string &amp;str)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>operator std::string</name>
      <anchorfile>classcanopen_1_1ObjectDict_1_1Key.html</anchorfile>
      <anchor>ae8e14547f6e0279e70f2ee2400de6c51</anchor>
      <arglist>() const </arglist>
    </member>
    <member kind="function">
      <type>bool</type>
      <name>operator==</name>
      <anchorfile>classcanopen_1_1ObjectDict_1_1Key.html</anchorfile>
      <anchor>a0c073d269a1df6cf3930748c2091ad0b</anchor>
      <arglist>(const Key &amp;other) const </arglist>
    </member>
    <member kind="function">
      <type>uint8_t</type>
      <name>sub_index</name>
      <anchorfile>classcanopen_1_1ObjectDict_1_1Key.html</anchorfile>
      <anchor>abf5f2b0a4f054b3c3fad082957ca88f7</anchor>
      <arglist>() const </arglist>
    </member>
    <member kind="variable">
      <type>const size_t</type>
      <name>hash</name>
      <anchorfile>classcanopen_1_1ObjectDict_1_1Key.html</anchorfile>
      <anchor>acfb5057138f532d97abb033f9bbda294</anchor>
      <arglist></arglist>
    </member>
    <member kind="function" protection="private" static="yes">
      <type>static size_t</type>
      <name>fromString</name>
      <anchorfile>classcanopen_1_1ObjectDict_1_1Key.html</anchorfile>
      <anchor>a56b4fc35182c2c348dd3d9d1454e6b4d</anchor>
      <arglist>(const std::string &amp;str)</arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>canopen::ObjectStorage</name>
    <filename>classcanopen_1_1ObjectStorage.html</filename>
    <class kind="class">canopen::ObjectStorage::Data</class>
    <class kind="struct">canopen::ObjectStorage::DataType</class>
    <class kind="struct">canopen::ObjectStorage::DataType&lt; ObjectDict::DEFTYPE_DOMAIN &gt;</class>
    <class kind="struct">canopen::ObjectStorage::DataType&lt; ObjectDict::DEFTYPE_INTEGER16 &gt;</class>
    <class kind="struct">canopen::ObjectStorage::DataType&lt; ObjectDict::DEFTYPE_INTEGER32 &gt;</class>
    <class kind="struct">canopen::ObjectStorage::DataType&lt; ObjectDict::DEFTYPE_INTEGER64 &gt;</class>
    <class kind="struct">canopen::ObjectStorage::DataType&lt; ObjectDict::DEFTYPE_INTEGER8 &gt;</class>
    <class kind="struct">canopen::ObjectStorage::DataType&lt; ObjectDict::DEFTYPE_OCTET_STRING &gt;</class>
    <class kind="struct">canopen::ObjectStorage::DataType&lt; ObjectDict::DEFTYPE_REAL32 &gt;</class>
    <class kind="struct">canopen::ObjectStorage::DataType&lt; ObjectDict::DEFTYPE_REAL64 &gt;</class>
    <class kind="struct">canopen::ObjectStorage::DataType&lt; ObjectDict::DEFTYPE_UNICODE_STRING &gt;</class>
    <class kind="struct">canopen::ObjectStorage::DataType&lt; ObjectDict::DEFTYPE_UNSIGNED16 &gt;</class>
    <class kind="struct">canopen::ObjectStorage::DataType&lt; ObjectDict::DEFTYPE_UNSIGNED32 &gt;</class>
    <class kind="struct">canopen::ObjectStorage::DataType&lt; ObjectDict::DEFTYPE_UNSIGNED64 &gt;</class>
    <class kind="struct">canopen::ObjectStorage::DataType&lt; ObjectDict::DEFTYPE_UNSIGNED8 &gt;</class>
    <class kind="struct">canopen::ObjectStorage::DataType&lt; ObjectDict::DEFTYPE_VISIBLE_STRING &gt;</class>
    <class kind="class">canopen::ObjectStorage::Entry</class>
    <member kind="typedef">
      <type>fastdelegate::FastDelegate2&lt; const ObjectDict::Entry &amp;, String &amp; &gt;</type>
      <name>ReadDelegate</name>
      <anchorfile>classcanopen_1_1ObjectStorage.html</anchorfile>
      <anchor>a1b64fb45b719f7d5b48b98a64624d007</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef">
      <type>fastdelegate::FastDelegate2&lt; const ObjectDict::Entry &amp;, const String &amp; &gt;</type>
      <name>WriteDelegate</name>
      <anchorfile>classcanopen_1_1ObjectStorage.html</anchorfile>
      <anchor>af2360632a476ba7f19c04a536b8476e3</anchor>
      <arglist></arglist>
    </member>
    <member kind="function">
      <type>Entry&lt; T &gt;</type>
      <name>entry</name>
      <anchorfile>classcanopen_1_1ObjectStorage.html</anchorfile>
      <anchor>a4d84ef8858149676006c7fa57e98059e</anchor>
      <arglist>(const ObjectDict::Key &amp;key)</arglist>
    </member>
    <member kind="function">
      <type>Entry&lt; T &gt;</type>
      <name>entry</name>
      <anchorfile>classcanopen_1_1ObjectStorage.html</anchorfile>
      <anchor>a96fdaaf43be36e54eef6e0fb264cc3ea</anchor>
      <arglist>(uint16_t index)</arglist>
    </member>
    <member kind="function">
      <type>Entry&lt; T &gt;</type>
      <name>entry</name>
      <anchorfile>classcanopen_1_1ObjectStorage.html</anchorfile>
      <anchor>a745bd44a7967429dff4114d31dd3546d</anchor>
      <arglist>(uint16_t index, uint8_t sub_index)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>entry</name>
      <anchorfile>classcanopen_1_1ObjectStorage.html</anchorfile>
      <anchor>abc44ac944c8cb5bb3ee0f8aac5992856</anchor>
      <arglist>(Entry&lt; T &gt; &amp;e, uint16_t index)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>entry</name>
      <anchorfile>classcanopen_1_1ObjectStorage.html</anchorfile>
      <anchor>ad3e941ca996ae61cebe22eddfcd06e61</anchor>
      <arglist>(Entry&lt; T &gt; &amp;e, uint16_t index, uint8_t sub_index)</arglist>
    </member>
    <member kind="function">
      <type>bool</type>
      <name>entry</name>
      <anchorfile>classcanopen_1_1ObjectStorage.html</anchorfile>
      <anchor>a47471f06dedcffe456d712abf66e451b</anchor>
      <arglist>(Entry&lt; T &gt; &amp;e, const ObjectDict::Key &amp;k)</arglist>
    </member>
    <member kind="function">
      <type>boost::function&lt; std::string()&gt;</type>
      <name>getStringReader</name>
      <anchorfile>classcanopen_1_1ObjectStorage.html</anchorfile>
      <anchor>a0aae6493481ddb13d4a31422b4436b02</anchor>
      <arglist>(const ObjectDict::Key &amp;key, bool cached=false)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>init</name>
      <anchorfile>classcanopen_1_1ObjectStorage.html</anchorfile>
      <anchor>a63d53907d9ae54e883c47a29480cb232</anchor>
      <arglist>(const ObjectDict::Key &amp;key)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>init_all</name>
      <anchorfile>classcanopen_1_1ObjectStorage.html</anchorfile>
      <anchor>a0ff5bf7018b4cee7d61dd48da94a3e55</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>size_t</type>
      <name>map</name>
      <anchorfile>classcanopen_1_1ObjectStorage.html</anchorfile>
      <anchor>ad787a3b3206adbd90d1a8f79d53e6401</anchor>
      <arglist>(uint16_t index, uint8_t sub_index, const ReadDelegate &amp;read_delegate, const WriteDelegate &amp;write_delegate)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>ObjectStorage</name>
      <anchorfile>classcanopen_1_1ObjectStorage.html</anchorfile>
      <anchor>a372d02c17a941d9f2acab1633812fd68</anchor>
      <arglist>(boost::shared_ptr&lt; const ObjectDict &gt; dict, uint8_t node_id, ReadDelegate read_delegate, WriteDelegate write_delegate)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>reset</name>
      <anchorfile>classcanopen_1_1ObjectStorage.html</anchorfile>
      <anchor>a6b41061e9e940f2035abe5bfa0f1330e</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="variable">
      <type>const boost::shared_ptr&lt; const ObjectDict &gt;</type>
      <name>dict_</name>
      <anchorfile>classcanopen_1_1ObjectStorage.html</anchorfile>
      <anchor>a9eac459124a5897311871bf096ff1c12</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>boost::function&lt; void(const std::string &amp;)&gt;</type>
      <name>getStringWriter</name>
      <anchorfile>classcanopen_1_1ObjectStorage.html</anchorfile>
      <anchor>a9f5ad3c8e748bcce696df1042edce2bc</anchor>
      <arglist>(const ObjectDict::Key &amp;key, bool cached=false)</arglist>
    </member>
    <member kind="variable">
      <type>const uint8_t</type>
      <name>node_id_</name>
      <anchorfile>classcanopen_1_1ObjectStorage.html</anchorfile>
      <anchor>a74af641d7823dc3d559489b9818ca585</anchor>
      <arglist></arglist>
    </member>
    <member kind="function" protection="protected">
      <type>void</type>
      <name>init_nolock</name>
      <anchorfile>classcanopen_1_1ObjectStorage.html</anchorfile>
      <anchor>adbb1b73149356fede886fdd685ae6053</anchor>
      <arglist>(const ObjectDict::Key &amp;key, const boost::shared_ptr&lt; const ObjectDict::Entry &gt; &amp;entry)</arglist>
    </member>
    <member kind="function" protection="protected">
      <type>size_t</type>
      <name>map</name>
      <anchorfile>classcanopen_1_1ObjectStorage.html</anchorfile>
      <anchor>aaec6dc5fd928e88a7be5ca44faa9b4a5</anchor>
      <arglist>(const boost::shared_ptr&lt; const ObjectDict::Entry &gt; &amp;e, const ObjectDict::Key &amp;key, const ReadDelegate &amp;read_delegate, const WriteDelegate &amp;write_delegate)</arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>boost::mutex</type>
      <name>mutex_</name>
      <anchorfile>classcanopen_1_1ObjectStorage.html</anchorfile>
      <anchor>a39f9d50ea4e87815858b1980afeaf5d2</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>ReadDelegate</type>
      <name>read_delegate_</name>
      <anchorfile>classcanopen_1_1ObjectStorage.html</anchorfile>
      <anchor>a62ff47eb0169386c5254d95e67c67f01</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>boost::unordered_map&lt; ObjectDict::Key, boost::shared_ptr&lt; Data &gt; &gt;</type>
      <name>storage_</name>
      <anchorfile>classcanopen_1_1ObjectStorage.html</anchorfile>
      <anchor>a77f654bd241e79b65456b405968d0d59</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>WriteDelegate</type>
      <name>write_delegate_</name>
      <anchorfile>classcanopen_1_1ObjectStorage.html</anchorfile>
      <anchor>a6680ef2554c4426e623b4bcfb1932aef</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>canopen::ObjectStorage::Data</name>
    <filename>classcanopen_1_1ObjectStorage_1_1Data.html</filename>
    <member kind="function">
      <type></type>
      <name>Data</name>
      <anchorfile>classcanopen_1_1ObjectStorage_1_1Data.html</anchorfile>
      <anchor>ad95d73e1cab0d04be92419103a5c3e04</anchor>
      <arglist>(const ObjectDict::Key &amp;k, const boost::shared_ptr&lt; const ObjectDict::Entry &gt; &amp;e, const T &amp;val, const ReadDelegate &amp;r, const WriteDelegate &amp;w)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>Data</name>
      <anchorfile>classcanopen_1_1ObjectStorage_1_1Data.html</anchorfile>
      <anchor>a99db91e416067faf13e4554d4f413c28</anchor>
      <arglist>(const ObjectDict::Key &amp;k, const boost::shared_ptr&lt; const ObjectDict::Entry &gt; &amp;e, const TypeGuard &amp;t, const ReadDelegate &amp;r, const WriteDelegate &amp;w)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>force_write</name>
      <anchorfile>classcanopen_1_1ObjectStorage_1_1Data.html</anchorfile>
      <anchor>a24dd9ee07446f40cfbea97d958ba5fde</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>const T</type>
      <name>get</name>
      <anchorfile>classcanopen_1_1ObjectStorage_1_1Data.html</anchorfile>
      <anchor>aa8595572e2ab71ec710065133877c57a</anchor>
      <arglist>(bool cached)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>init</name>
      <anchorfile>classcanopen_1_1ObjectStorage_1_1Data.html</anchorfile>
      <anchor>a158d6376c1b58e77fdfc8cba22094310</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>reset</name>
      <anchorfile>classcanopen_1_1ObjectStorage_1_1Data.html</anchorfile>
      <anchor>afc2c08d1f98ce435aae4071c90041255</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>set</name>
      <anchorfile>classcanopen_1_1ObjectStorage_1_1Data.html</anchorfile>
      <anchor>a4f69de186a8dd36af06296ff63ecec6f</anchor>
      <arglist>(const T &amp;val)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>set_cached</name>
      <anchorfile>classcanopen_1_1ObjectStorage_1_1Data.html</anchorfile>
      <anchor>a6a6f4d39e4dd75a79160115ae65c0b54</anchor>
      <arglist>(const T &amp;val)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>set_delegates</name>
      <anchorfile>classcanopen_1_1ObjectStorage_1_1Data.html</anchorfile>
      <anchor>a3419c305558dde24ec7cea82b8fa1bee</anchor>
      <arglist>(const ReadDelegate &amp;r, const WriteDelegate &amp;w)</arglist>
    </member>
    <member kind="function">
      <type>size_t</type>
      <name>size</name>
      <anchorfile>classcanopen_1_1ObjectStorage_1_1Data.html</anchorfile>
      <anchor>a03f454a6c8a6d68944872f8f7753dd86</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="variable">
      <type>const boost::shared_ptr&lt; const ObjectDict::Entry &gt;</type>
      <name>entry</name>
      <anchorfile>classcanopen_1_1ObjectStorage_1_1Data.html</anchorfile>
      <anchor>a1d55cf771b0e320e0455f099967bfd54</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>const ObjectDict::Key</type>
      <name>key</name>
      <anchorfile>classcanopen_1_1ObjectStorage_1_1Data.html</anchorfile>
      <anchor>a137b1417bb38609fffc83e850505487f</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>const TypeGuard</type>
      <name>type_guard</name>
      <anchorfile>classcanopen_1_1ObjectStorage_1_1Data.html</anchorfile>
      <anchor>acbeb504c8e36558599831049a457968f</anchor>
      <arglist></arglist>
    </member>
    <member kind="function" protection="private">
      <type>T &amp;</type>
      <name>access</name>
      <anchorfile>classcanopen_1_1ObjectStorage_1_1Data.html</anchorfile>
      <anchor>ab884c51292b6c9dfeeccaec84b2ffc5e</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" protection="private">
      <type>T &amp;</type>
      <name>allocate</name>
      <anchorfile>classcanopen_1_1ObjectStorage_1_1Data.html</anchorfile>
      <anchor>a1476c5f327cb386978f321d625c35046</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="variable" protection="private">
      <type>String</type>
      <name>buffer</name>
      <anchorfile>classcanopen_1_1ObjectStorage_1_1Data.html</anchorfile>
      <anchor>a4719b7bf2e7364ee8db34780b768cc82</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>boost::mutex</type>
      <name>mutex</name>
      <anchorfile>classcanopen_1_1ObjectStorage_1_1Data.html</anchorfile>
      <anchor>ae6231bb0f239f0cdfbcf32542f8d8e87</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>ReadDelegate</type>
      <name>read_delegate</name>
      <anchorfile>classcanopen_1_1ObjectStorage_1_1Data.html</anchorfile>
      <anchor>a9e710c39b20d8dff33e5220a2ed16dda</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>bool</type>
      <name>valid</name>
      <anchorfile>classcanopen_1_1ObjectStorage_1_1Data.html</anchorfile>
      <anchor>a8758bcf2c5f098390b63c465572f5320</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>WriteDelegate</type>
      <name>write_delegate</name>
      <anchorfile>classcanopen_1_1ObjectStorage_1_1Data.html</anchorfile>
      <anchor>a72b18c81bfdf81e8093d33ee81dc9415</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>canopen::ObjectStorage::DataType</name>
    <filename>structcanopen_1_1ObjectStorage_1_1DataType.html</filename>
    <templarg>dt</templarg>
    <member kind="typedef">
      <type>void</type>
      <name>type</name>
      <anchorfile>structcanopen_1_1ObjectStorage_1_1DataType.html</anchorfile>
      <anchor>a7f98515fdd39606a6c44cd92344a6ccc</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>canopen::ObjectStorage::DataType&lt; ObjectDict::DEFTYPE_DOMAIN &gt;</name>
    <filename>structcanopen_1_1ObjectStorage_1_1DataType_3_01ObjectDict_1_1DEFTYPE__DOMAIN_01_4.html</filename>
    <member kind="typedef">
      <type>String</type>
      <name>type</name>
      <anchorfile>structcanopen_1_1ObjectStorage_1_1DataType_3_01ObjectDict_1_1DEFTYPE__DOMAIN_01_4.html</anchorfile>
      <anchor>aaa28c659781284b7f941bf48e4b12b4e</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>canopen::ObjectStorage::DataType&lt; ObjectDict::DEFTYPE_INTEGER16 &gt;</name>
    <filename>structcanopen_1_1ObjectStorage_1_1DataType_3_01ObjectDict_1_1DEFTYPE__INTEGER16_01_4.html</filename>
    <member kind="typedef">
      <type>int16_t</type>
      <name>type</name>
      <anchorfile>structcanopen_1_1ObjectStorage_1_1DataType_3_01ObjectDict_1_1DEFTYPE__INTEGER16_01_4.html</anchorfile>
      <anchor>a61e8d691936ad765f381174a936ad4e9</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>canopen::ObjectStorage::DataType&lt; ObjectDict::DEFTYPE_INTEGER32 &gt;</name>
    <filename>structcanopen_1_1ObjectStorage_1_1DataType_3_01ObjectDict_1_1DEFTYPE__INTEGER32_01_4.html</filename>
    <member kind="typedef">
      <type>int32_t</type>
      <name>type</name>
      <anchorfile>structcanopen_1_1ObjectStorage_1_1DataType_3_01ObjectDict_1_1DEFTYPE__INTEGER32_01_4.html</anchorfile>
      <anchor>ac68a319c12da0e967d93031969a17966</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>canopen::ObjectStorage::DataType&lt; ObjectDict::DEFTYPE_INTEGER64 &gt;</name>
    <filename>structcanopen_1_1ObjectStorage_1_1DataType_3_01ObjectDict_1_1DEFTYPE__INTEGER64_01_4.html</filename>
    <member kind="typedef">
      <type>int64_t</type>
      <name>type</name>
      <anchorfile>structcanopen_1_1ObjectStorage_1_1DataType_3_01ObjectDict_1_1DEFTYPE__INTEGER64_01_4.html</anchorfile>
      <anchor>a6e71f76ade6d532f127582e2efd99b75</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>canopen::ObjectStorage::DataType&lt; ObjectDict::DEFTYPE_INTEGER8 &gt;</name>
    <filename>structcanopen_1_1ObjectStorage_1_1DataType_3_01ObjectDict_1_1DEFTYPE__INTEGER8_01_4.html</filename>
    <member kind="typedef">
      <type>int8_t</type>
      <name>type</name>
      <anchorfile>structcanopen_1_1ObjectStorage_1_1DataType_3_01ObjectDict_1_1DEFTYPE__INTEGER8_01_4.html</anchorfile>
      <anchor>a0ccf965170dda0ededd1ad13845bb86f</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>canopen::ObjectStorage::DataType&lt; ObjectDict::DEFTYPE_OCTET_STRING &gt;</name>
    <filename>structcanopen_1_1ObjectStorage_1_1DataType_3_01ObjectDict_1_1DEFTYPE__OCTET__STRING_01_4.html</filename>
    <member kind="typedef">
      <type>String</type>
      <name>type</name>
      <anchorfile>structcanopen_1_1ObjectStorage_1_1DataType_3_01ObjectDict_1_1DEFTYPE__OCTET__STRING_01_4.html</anchorfile>
      <anchor>af35b4e69e0c60c0c85a959d35ec826e7</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>canopen::ObjectStorage::DataType&lt; ObjectDict::DEFTYPE_REAL32 &gt;</name>
    <filename>structcanopen_1_1ObjectStorage_1_1DataType_3_01ObjectDict_1_1DEFTYPE__REAL32_01_4.html</filename>
    <member kind="typedef">
      <type>float</type>
      <name>type</name>
      <anchorfile>structcanopen_1_1ObjectStorage_1_1DataType_3_01ObjectDict_1_1DEFTYPE__REAL32_01_4.html</anchorfile>
      <anchor>a7b711d13b2972f81a9a07daeef177748</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>canopen::ObjectStorage::DataType&lt; ObjectDict::DEFTYPE_REAL64 &gt;</name>
    <filename>structcanopen_1_1ObjectStorage_1_1DataType_3_01ObjectDict_1_1DEFTYPE__REAL64_01_4.html</filename>
    <member kind="typedef">
      <type>double</type>
      <name>type</name>
      <anchorfile>structcanopen_1_1ObjectStorage_1_1DataType_3_01ObjectDict_1_1DEFTYPE__REAL64_01_4.html</anchorfile>
      <anchor>a83a7c218c3ceb941fca4ee35fe0b2ddb</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>canopen::ObjectStorage::DataType&lt; ObjectDict::DEFTYPE_UNICODE_STRING &gt;</name>
    <filename>structcanopen_1_1ObjectStorage_1_1DataType_3_01ObjectDict_1_1DEFTYPE__UNICODE__STRING_01_4.html</filename>
    <member kind="typedef">
      <type>String</type>
      <name>type</name>
      <anchorfile>structcanopen_1_1ObjectStorage_1_1DataType_3_01ObjectDict_1_1DEFTYPE__UNICODE__STRING_01_4.html</anchorfile>
      <anchor>ad04f02164d2c84aa79488305ef558e75</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>canopen::ObjectStorage::DataType&lt; ObjectDict::DEFTYPE_UNSIGNED16 &gt;</name>
    <filename>structcanopen_1_1ObjectStorage_1_1DataType_3_01ObjectDict_1_1DEFTYPE__UNSIGNED16_01_4.html</filename>
    <member kind="typedef">
      <type>uint16_t</type>
      <name>type</name>
      <anchorfile>structcanopen_1_1ObjectStorage_1_1DataType_3_01ObjectDict_1_1DEFTYPE__UNSIGNED16_01_4.html</anchorfile>
      <anchor>a34a772e8d8a46557c0e1cf061c0fc23c</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>canopen::ObjectStorage::DataType&lt; ObjectDict::DEFTYPE_UNSIGNED32 &gt;</name>
    <filename>structcanopen_1_1ObjectStorage_1_1DataType_3_01ObjectDict_1_1DEFTYPE__UNSIGNED32_01_4.html</filename>
    <member kind="typedef">
      <type>uint32_t</type>
      <name>type</name>
      <anchorfile>structcanopen_1_1ObjectStorage_1_1DataType_3_01ObjectDict_1_1DEFTYPE__UNSIGNED32_01_4.html</anchorfile>
      <anchor>ab3f25972b5ab66237d442df3bed2087b</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>canopen::ObjectStorage::DataType&lt; ObjectDict::DEFTYPE_UNSIGNED64 &gt;</name>
    <filename>structcanopen_1_1ObjectStorage_1_1DataType_3_01ObjectDict_1_1DEFTYPE__UNSIGNED64_01_4.html</filename>
    <member kind="typedef">
      <type>uint64_t</type>
      <name>type</name>
      <anchorfile>structcanopen_1_1ObjectStorage_1_1DataType_3_01ObjectDict_1_1DEFTYPE__UNSIGNED64_01_4.html</anchorfile>
      <anchor>af2bf3d4e3e4aa5f2bc6bd5c5f1285da7</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>canopen::ObjectStorage::DataType&lt; ObjectDict::DEFTYPE_UNSIGNED8 &gt;</name>
    <filename>structcanopen_1_1ObjectStorage_1_1DataType_3_01ObjectDict_1_1DEFTYPE__UNSIGNED8_01_4.html</filename>
    <member kind="typedef">
      <type>uint8_t</type>
      <name>type</name>
      <anchorfile>structcanopen_1_1ObjectStorage_1_1DataType_3_01ObjectDict_1_1DEFTYPE__UNSIGNED8_01_4.html</anchorfile>
      <anchor>a056efdde42696341358ad8b46ea4a6f1</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>canopen::ObjectStorage::DataType&lt; ObjectDict::DEFTYPE_VISIBLE_STRING &gt;</name>
    <filename>structcanopen_1_1ObjectStorage_1_1DataType_3_01ObjectDict_1_1DEFTYPE__VISIBLE__STRING_01_4.html</filename>
    <member kind="typedef">
      <type>String</type>
      <name>type</name>
      <anchorfile>structcanopen_1_1ObjectStorage_1_1DataType_3_01ObjectDict_1_1DEFTYPE__VISIBLE__STRING_01_4.html</anchorfile>
      <anchor>ad6de00f7cc818f06582067bc74f5d284</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>canopen::ObjectStorage::Entry</name>
    <filename>classcanopen_1_1ObjectStorage_1_1Entry.html</filename>
    <templarg>T</templarg>
    <member kind="typedef">
      <type>T</type>
      <name>type</name>
      <anchorfile>classcanopen_1_1ObjectStorage_1_1Entry.html</anchorfile>
      <anchor>a5e6573f63ca2b082afdc370372d02a40</anchor>
      <arglist></arglist>
    </member>
    <member kind="function">
      <type>const ObjectDict::Entry &amp;</type>
      <name>desc</name>
      <anchorfile>classcanopen_1_1ObjectStorage_1_1Entry.html</anchorfile>
      <anchor>a1d9ada103091cbd5ae1679ecc08ec653</anchor>
      <arglist>() const </arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>Entry</name>
      <anchorfile>classcanopen_1_1ObjectStorage_1_1Entry.html</anchorfile>
      <anchor>a166a81319d54335c30e2b3d7145d59ab</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>Entry</name>
      <anchorfile>classcanopen_1_1ObjectStorage_1_1Entry.html</anchorfile>
      <anchor>a623b1e4375f902e92a2aa42fb838a620</anchor>
      <arglist>(boost::shared_ptr&lt; Data &gt; &amp;d)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>Entry</name>
      <anchorfile>classcanopen_1_1ObjectStorage_1_1Entry.html</anchorfile>
      <anchor>aa6f8ecaf70604b2645e05987c8d571f0</anchor>
      <arglist>(boost::shared_ptr&lt; ObjectStorage &gt; storage, uint16_t index)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>Entry</name>
      <anchorfile>classcanopen_1_1ObjectStorage_1_1Entry.html</anchorfile>
      <anchor>afca16a95c62d46c42a3974d91f6c8196</anchor>
      <arglist>(boost::shared_ptr&lt; ObjectStorage &gt; storage, uint16_t index, uint8_t sub_index)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>Entry</name>
      <anchorfile>classcanopen_1_1ObjectStorage_1_1Entry.html</anchorfile>
      <anchor>ada2d3db4205320edc7d777768d6752b2</anchor>
      <arglist>(boost::shared_ptr&lt; ObjectStorage &gt; storage, const ObjectDict::Key &amp;k)</arglist>
    </member>
    <member kind="function">
      <type>const T</type>
      <name>get</name>
      <anchorfile>classcanopen_1_1ObjectStorage_1_1Entry.html</anchorfile>
      <anchor>a667ac21d9751b25ba3891bb17077f132</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>bool</type>
      <name>get</name>
      <anchorfile>classcanopen_1_1ObjectStorage_1_1Entry.html</anchorfile>
      <anchor>a3a1619d2730bb4e8e7af775b27718126</anchor>
      <arglist>(T &amp;val)</arglist>
    </member>
    <member kind="function">
      <type>const T</type>
      <name>get_cached</name>
      <anchorfile>classcanopen_1_1ObjectStorage_1_1Entry.html</anchorfile>
      <anchor>a23316604060740c6493ff619427c1662</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>bool</type>
      <name>get_cached</name>
      <anchorfile>classcanopen_1_1ObjectStorage_1_1Entry.html</anchorfile>
      <anchor>a9c6814009e6e6b5e913f8663a72c110f</anchor>
      <arglist>(T &amp;val)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>set</name>
      <anchorfile>classcanopen_1_1ObjectStorage_1_1Entry.html</anchorfile>
      <anchor>a4a7363a4282bff9ecffe5ed3c8ce96c6</anchor>
      <arglist>(const T &amp;val)</arglist>
    </member>
    <member kind="function">
      <type>bool</type>
      <name>set_cached</name>
      <anchorfile>classcanopen_1_1ObjectStorage_1_1Entry.html</anchorfile>
      <anchor>a3953752c9968f71a9e582dcd499b217a</anchor>
      <arglist>(const T &amp;val)</arglist>
    </member>
    <member kind="function">
      <type>bool</type>
      <name>valid</name>
      <anchorfile>classcanopen_1_1ObjectStorage_1_1Entry.html</anchorfile>
      <anchor>abf96246b1676440063404aa824021e6b</anchor>
      <arglist>() const </arglist>
    </member>
    <member kind="variable" protection="private">
      <type>boost::shared_ptr&lt; Data &gt;</type>
      <name>data</name>
      <anchorfile>classcanopen_1_1ObjectStorage_1_1Entry.html</anchorfile>
      <anchor>a1450a7f8b9aeee0e7af8c8f8f708aa37</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>canopen::ParseException</name>
    <filename>classcanopen_1_1ParseException.html</filename>
    <base>canopen::Exception</base>
    <member kind="function">
      <type></type>
      <name>ParseException</name>
      <anchorfile>classcanopen_1_1ParseException.html</anchorfile>
      <anchor>a3f3927a67430788177a7f0ce75d12170</anchor>
      <arglist>(const std::string &amp;w)</arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>canopen::PDOMapper</name>
    <filename>classcanopen_1_1PDOMapper.html</filename>
    <class kind="class">canopen::PDOMapper::Buffer</class>
    <class kind="class">canopen::PDOMapper::PDO</class>
    <class kind="struct">canopen::PDOMapper::RPDO</class>
    <class kind="struct">canopen::PDOMapper::TPDO</class>
    <member kind="function">
      <type>bool</type>
      <name>init</name>
      <anchorfile>classcanopen_1_1PDOMapper.html</anchorfile>
      <anchor>a406fecd71210f46c777b6f44644eb241</anchor>
      <arglist>(const boost::shared_ptr&lt; ObjectStorage &gt; storage, LayerStatus &amp;status)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>PDOMapper</name>
      <anchorfile>classcanopen_1_1PDOMapper.html</anchorfile>
      <anchor>a56ef8428dc29c3c2d6f605dd801b0ca3</anchor>
      <arglist>(const boost::shared_ptr&lt; can::CommInterface &gt; interface)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>read</name>
      <anchorfile>classcanopen_1_1PDOMapper.html</anchorfile>
      <anchor>a1cc498d81f132b5dfacd39a89d694d5f</anchor>
      <arglist>(LayerStatus &amp;status)</arglist>
    </member>
    <member kind="function">
      <type>bool</type>
      <name>write</name>
      <anchorfile>classcanopen_1_1PDOMapper.html</anchorfile>
      <anchor>a5a739b848babcf0f218ec034020188e5</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="variable" protection="private">
      <type>const boost::shared_ptr&lt; can::CommInterface &gt;</type>
      <name>interface_</name>
      <anchorfile>classcanopen_1_1PDOMapper.html</anchorfile>
      <anchor>ab061b9ca04f1c3438834bc428117abd8</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>boost::mutex</type>
      <name>mutex_</name>
      <anchorfile>classcanopen_1_1PDOMapper.html</anchorfile>
      <anchor>a9d21779027b24d4a39c1ab18eee88db9</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>boost::unordered_set&lt; boost::shared_ptr&lt; RPDO &gt; &gt;</type>
      <name>rpdos_</name>
      <anchorfile>classcanopen_1_1PDOMapper.html</anchorfile>
      <anchor>aaf45b811e41fdd42bb93c51596d72766</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>boost::unordered_set&lt; boost::shared_ptr&lt; TPDO &gt; &gt;</type>
      <name>tpdos_</name>
      <anchorfile>classcanopen_1_1PDOMapper.html</anchorfile>
      <anchor>aed3176a36102bd7f4c6e56f13fadcd6d</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>canopen::PDOMapper::Buffer</name>
    <filename>classcanopen_1_1PDOMapper_1_1Buffer.html</filename>
    <member kind="function">
      <type></type>
      <name>Buffer</name>
      <anchorfile>classcanopen_1_1PDOMapper_1_1Buffer.html</anchorfile>
      <anchor>aabb7ea77d3da6405c17e4f8af0d0ef31</anchor>
      <arglist>(const size_t sz)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>clean</name>
      <anchorfile>classcanopen_1_1PDOMapper_1_1Buffer.html</anchorfile>
      <anchor>aaccb88c688bbd4f488ab508a13b8dc13</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>bool</type>
      <name>read</name>
      <anchorfile>classcanopen_1_1PDOMapper_1_1Buffer.html</anchorfile>
      <anchor>a7d88c74fce9687bced64b467050e6f17</anchor>
      <arglist>(uint8_t *b, const size_t len)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>read</name>
      <anchorfile>classcanopen_1_1PDOMapper_1_1Buffer.html</anchorfile>
      <anchor>a159b8513d84dd5a07bb4c2e1ad52a2d9</anchor>
      <arglist>(const canopen::ObjectDict::Entry &amp;entry, String &amp;data)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>write</name>
      <anchorfile>classcanopen_1_1PDOMapper_1_1Buffer.html</anchorfile>
      <anchor>a880043207ad84c5754d8f0dfc78144e4</anchor>
      <arglist>(const uint8_t *b, const size_t len)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>write</name>
      <anchorfile>classcanopen_1_1PDOMapper_1_1Buffer.html</anchorfile>
      <anchor>a6d7c9d5c0a4232be4a0886e37a0093f7</anchor>
      <arglist>(const canopen::ObjectDict::Entry &amp;, const String &amp;data)</arglist>
    </member>
    <member kind="variable">
      <type>const size_t</type>
      <name>size</name>
      <anchorfile>classcanopen_1_1PDOMapper_1_1Buffer.html</anchorfile>
      <anchor>af36ec7697db5b08bdd14a16b690d86d7</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::vector&lt; char &gt;</type>
      <name>buffer</name>
      <anchorfile>classcanopen_1_1PDOMapper_1_1Buffer.html</anchorfile>
      <anchor>a78e4eaaed2ba951eac425df62e354b48</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>bool</type>
      <name>dirty</name>
      <anchorfile>classcanopen_1_1PDOMapper_1_1Buffer.html</anchorfile>
      <anchor>ab60831b3c2e47fd9083a43f693746f91</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>bool</type>
      <name>empty</name>
      <anchorfile>classcanopen_1_1PDOMapper_1_1Buffer.html</anchorfile>
      <anchor>a19e773859410e631a931e9f485c6b809</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>boost::mutex</type>
      <name>mutex</name>
      <anchorfile>classcanopen_1_1PDOMapper_1_1Buffer.html</anchorfile>
      <anchor>a198bdd0b4c3ee41ea9af0e33e1df8534</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>canopen::PDOMapper::PDO</name>
    <filename>classcanopen_1_1PDOMapper_1_1PDO.html</filename>
    <member kind="function" protection="protected">
      <type>void</type>
      <name>parse_and_set_mapping</name>
      <anchorfile>classcanopen_1_1PDOMapper_1_1PDO.html</anchorfile>
      <anchor>a6f3fd7ef514c9e79e909e36b5e8c16d7</anchor>
      <arglist>(const boost::shared_ptr&lt; ObjectStorage &gt; &amp;storage, const uint16_t &amp;com_index, const uint16_t &amp;map_index, const bool &amp;read, const bool &amp;write)</arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>std::vector&lt; boost::shared_ptr&lt; Buffer &gt; &gt;</type>
      <name>buffers</name>
      <anchorfile>classcanopen_1_1PDOMapper_1_1PDO.html</anchorfile>
      <anchor>a4e20e27778a38074db2119b327e29d82</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>can::Frame</type>
      <name>frame</name>
      <anchorfile>classcanopen_1_1PDOMapper_1_1PDO.html</anchorfile>
      <anchor>a3f2f0168095029ccd9250ffaf4308227</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>uint8_t</type>
      <name>transmission_type</name>
      <anchorfile>classcanopen_1_1PDOMapper_1_1PDO.html</anchorfile>
      <anchor>a96564149e5b9d0e97e9af1bc775b7808</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>canopen::PDOMapper::RPDO</name>
    <filename>structcanopen_1_1PDOMapper_1_1RPDO.html</filename>
    <base>canopen::PDOMapper::PDO</base>
    <member kind="function">
      <type>void</type>
      <name>sync</name>
      <anchorfile>structcanopen_1_1PDOMapper_1_1RPDO.html</anchorfile>
      <anchor>a4e58fe859d4a67e56227e9247f542c03</anchor>
      <arglist>(LayerStatus &amp;status)</arglist>
    </member>
    <member kind="function" static="yes">
      <type>static boost::shared_ptr&lt; RPDO &gt;</type>
      <name>create</name>
      <anchorfile>structcanopen_1_1PDOMapper_1_1RPDO.html</anchorfile>
      <anchor>aabec58c51beabea6d41a3d7feb3eccaf</anchor>
      <arglist>(const boost::shared_ptr&lt; can::CommInterface &gt; interface, const boost::shared_ptr&lt; ObjectStorage &gt; &amp;storage, const uint16_t &amp;com_index, const uint16_t &amp;map_index)</arglist>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>handleFrame</name>
      <anchorfile>structcanopen_1_1PDOMapper_1_1RPDO.html</anchorfile>
      <anchor>a2d11832a70a4f7813958a79e2ba49716</anchor>
      <arglist>(const can::Frame &amp;msg)</arglist>
    </member>
    <member kind="function" protection="private">
      <type>bool</type>
      <name>init</name>
      <anchorfile>structcanopen_1_1PDOMapper_1_1RPDO.html</anchorfile>
      <anchor>ae06c5a31b0b7383dcc6e64aad3715950</anchor>
      <arglist>(const boost::shared_ptr&lt; ObjectStorage &gt; &amp;storage, const uint16_t &amp;com_index, const uint16_t &amp;map_index)</arglist>
    </member>
    <member kind="function" protection="private">
      <type></type>
      <name>RPDO</name>
      <anchorfile>structcanopen_1_1PDOMapper_1_1RPDO.html</anchorfile>
      <anchor>af07740d2587b3b5f71ead9981543e9b2</anchor>
      <arglist>(const boost::shared_ptr&lt; can::CommInterface &gt; interface)</arglist>
    </member>
    <member kind="variable" protection="private">
      <type>const boost::shared_ptr&lt; can::CommInterface &gt;</type>
      <name>interface_</name>
      <anchorfile>structcanopen_1_1PDOMapper_1_1RPDO.html</anchorfile>
      <anchor>ad5be42e505e4fc1eed7f9e3fd8cd040a</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>can::CommInterface::FrameListener::Ptr</type>
      <name>listener_</name>
      <anchorfile>structcanopen_1_1PDOMapper_1_1RPDO.html</anchorfile>
      <anchor>a8877f25a530a8a7399e988fd4c4296f1</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>boost::mutex</type>
      <name>mutex</name>
      <anchorfile>structcanopen_1_1PDOMapper_1_1RPDO.html</anchorfile>
      <anchor>ad5dc2b870adeb56b32f56c1d342d1141</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>int</type>
      <name>timeout</name>
      <anchorfile>structcanopen_1_1PDOMapper_1_1RPDO.html</anchorfile>
      <anchor>a7f1417b1998f6b922feb5e75f4fa19ab</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>canopen::PDOMapper::TPDO</name>
    <filename>structcanopen_1_1PDOMapper_1_1TPDO.html</filename>
    <base>canopen::PDOMapper::PDO</base>
    <member kind="function">
      <type>void</type>
      <name>sync</name>
      <anchorfile>structcanopen_1_1PDOMapper_1_1TPDO.html</anchorfile>
      <anchor>a2efb0161056cca50b152893ac7502c81</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" static="yes">
      <type>static boost::shared_ptr&lt; TPDO &gt;</type>
      <name>create</name>
      <anchorfile>structcanopen_1_1PDOMapper_1_1TPDO.html</anchorfile>
      <anchor>af92829f1f56cf7416835a88c824cae63</anchor>
      <arglist>(const boost::shared_ptr&lt; can::CommInterface &gt; interface, const boost::shared_ptr&lt; ObjectStorage &gt; &amp;storage, const uint16_t &amp;com_index, const uint16_t &amp;map_index)</arglist>
    </member>
    <member kind="function" protection="private">
      <type>bool</type>
      <name>init</name>
      <anchorfile>structcanopen_1_1PDOMapper_1_1TPDO.html</anchorfile>
      <anchor>aa441100eda3800b5847a5711a1375866</anchor>
      <arglist>(const boost::shared_ptr&lt; ObjectStorage &gt; &amp;storage, const uint16_t &amp;com_index, const uint16_t &amp;map_index)</arglist>
    </member>
    <member kind="function" protection="private">
      <type></type>
      <name>TPDO</name>
      <anchorfile>structcanopen_1_1PDOMapper_1_1TPDO.html</anchorfile>
      <anchor>a38d1fa049f6f305588116328e5c38467</anchor>
      <arglist>(const boost::shared_ptr&lt; can::CommInterface &gt; interface)</arglist>
    </member>
    <member kind="variable" protection="private">
      <type>const boost::shared_ptr&lt; can::CommInterface &gt;</type>
      <name>interface_</name>
      <anchorfile>structcanopen_1_1PDOMapper_1_1TPDO.html</anchorfile>
      <anchor>ac55489f2e9598a3d656c053b477b08d1</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>boost::mutex</type>
      <name>mutex</name>
      <anchorfile>structcanopen_1_1PDOMapper_1_1TPDO.html</anchorfile>
      <anchor>a102b06f713882a3fe7a0946ca189f4fd</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>canopen::PointerInvalid</name>
    <filename>classcanopen_1_1PointerInvalid.html</filename>
    <base>canopen::Exception</base>
    <member kind="function">
      <type></type>
      <name>PointerInvalid</name>
      <anchorfile>classcanopen_1_1PointerInvalid.html</anchorfile>
      <anchor>a37eea4cb833b01de2ce757129431529d</anchor>
      <arglist>(const std::string &amp;w)</arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>canopen::SDOClient</name>
    <filename>classcanopen_1_1SDOClient.html</filename>
    <member kind="function">
      <type>void</type>
      <name>init</name>
      <anchorfile>classcanopen_1_1SDOClient.html</anchorfile>
      <anchor>acfd4c15f7370ced800cfda6ca0f43b34</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>SDOClient</name>
      <anchorfile>classcanopen_1_1SDOClient.html</anchorfile>
      <anchor>ab8f1ba4008cbfaa5822140c1fafc8e28</anchor>
      <arglist>(const boost::shared_ptr&lt; can::CommInterface &gt; interface, const boost::shared_ptr&lt; ObjectDict &gt; dict, uint8_t node_id)</arglist>
    </member>
    <member kind="variable">
      <type>const boost::shared_ptr&lt; ObjectStorage &gt;</type>
      <name>storage_</name>
      <anchorfile>classcanopen_1_1SDOClient.html</anchorfile>
      <anchor>ab6486e00298f37171bb11c9a746cdda6</anchor>
      <arglist></arglist>
    </member>
    <member kind="function" protection="protected">
      <type>void</type>
      <name>read</name>
      <anchorfile>classcanopen_1_1SDOClient.html</anchorfile>
      <anchor>a86d9adc2db05e5dc36eb64c20d3f556f</anchor>
      <arglist>(const canopen::ObjectDict::Entry &amp;entry, String &amp;data)</arglist>
    </member>
    <member kind="function" protection="protected">
      <type>void</type>
      <name>write</name>
      <anchorfile>classcanopen_1_1SDOClient.html</anchorfile>
      <anchor>aff3bde194ffd8a86508379853db97303</anchor>
      <arglist>(const canopen::ObjectDict::Entry &amp;entry, const String &amp;data)</arglist>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>abort</name>
      <anchorfile>classcanopen_1_1SDOClient.html</anchorfile>
      <anchor>a9ca311b779e732665f4732975ccf5974</anchor>
      <arglist>(uint32_t reason)</arglist>
    </member>
    <member kind="function" protection="private">
      <type>bool</type>
      <name>processFrame</name>
      <anchorfile>classcanopen_1_1SDOClient.html</anchorfile>
      <anchor>aec3eaba4f75a4b2ea299b70fd364d666</anchor>
      <arglist>(const can::Frame &amp;msg)</arglist>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>transmitAndWait</name>
      <anchorfile>classcanopen_1_1SDOClient.html</anchorfile>
      <anchor>a3f8aaf22f58bd1460e3637ead0a8b9b2</anchor>
      <arglist>(const canopen::ObjectDict::Entry &amp;entry, const String &amp;data, String *result)</arglist>
    </member>
    <member kind="variable" protection="private">
      <type>String</type>
      <name>buffer</name>
      <anchorfile>classcanopen_1_1SDOClient.html</anchorfile>
      <anchor>a01eae0fc4df3ac37a9469bac8967b2ea</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>can::Header</type>
      <name>client_id</name>
      <anchorfile>classcanopen_1_1SDOClient.html</anchorfile>
      <anchor>a1e5f2496a2d8b4714f8a1b4d4916c87b</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>const canopen::ObjectDict::Entry *</type>
      <name>current_entry</name>
      <anchorfile>classcanopen_1_1SDOClient.html</anchorfile>
      <anchor>a834dc1e437be5ffd512d2242a593dc10</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>bool</type>
      <name>done</name>
      <anchorfile>classcanopen_1_1SDOClient.html</anchorfile>
      <anchor>a96251503dc7fd78466496bc374e2dcf5</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>const boost::shared_ptr&lt; can::CommInterface &gt;</type>
      <name>interface_</name>
      <anchorfile>classcanopen_1_1SDOClient.html</anchorfile>
      <anchor>a0c866083d436fd60b73ec1213dc3c496</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>can::Frame</type>
      <name>last_msg</name>
      <anchorfile>classcanopen_1_1SDOClient.html</anchorfile>
      <anchor>abeeaf47c2da2ccf0bfb5bf7a7a54a4fa</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>boost::timed_mutex</type>
      <name>mutex</name>
      <anchorfile>classcanopen_1_1SDOClient.html</anchorfile>
      <anchor>aeca59021a3f9f0782003426115f06022</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>size_t</type>
      <name>offset</name>
      <anchorfile>classcanopen_1_1SDOClient.html</anchorfile>
      <anchor>a8f5c919c170be344025086245fa8bf97</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>can::BufferedReader</type>
      <name>reader_</name>
      <anchorfile>classcanopen_1_1SDOClient.html</anchorfile>
      <anchor>ac2748de5fc055e38f2a0cf007ff59cf7</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>size_t</type>
      <name>total</name>
      <anchorfile>classcanopen_1_1SDOClient.html</anchorfile>
      <anchor>a071780ae977f51238619d9edab3c175b</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>canopen::Settings</name>
    <filename>classcanopen_1_1Settings.html</filename>
    <member kind="function">
      <type>bool</type>
      <name>get</name>
      <anchorfile>classcanopen_1_1Settings.html</anchorfile>
      <anchor>af1fe57b01098b341306d570266a102db</anchor>
      <arglist>(const std::string &amp;n, T &amp;val) const </arglist>
    </member>
    <member kind="function">
      <type>T</type>
      <name>get_optional</name>
      <anchorfile>classcanopen_1_1Settings.html</anchorfile>
      <anchor>a41ed53bec6e3d56f7a951b4aeebb1c45</anchor>
      <arglist>(const std::string &amp;n, const T &amp;def) const </arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual</type>
      <name>~Settings</name>
      <anchorfile>classcanopen_1_1Settings.html</anchorfile>
      <anchor>ad94011be08892e8e87739fc09f950997</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" protection="private" virtualness="pure">
      <type>virtual bool</type>
      <name>getRepr</name>
      <anchorfile>classcanopen_1_1Settings.html</anchorfile>
      <anchor>ae642bcec8daff155d325e6b209b5e6d1</anchor>
      <arglist>(const std::string &amp;n, std::string &amp;repr) const =0</arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>canopen::SharedIPCSyncMaster</name>
    <filename>classcanopen_1_1SharedIPCSyncMaster.html</filename>
    <base>canopen::IPCSyncMaster</base>
    <member kind="function">
      <type>bool</type>
      <name>matches</name>
      <anchorfile>classcanopen_1_1SharedIPCSyncMaster.html</anchorfile>
      <anchor>a4aba73c6edc691c5354f22d118f6a056</anchor>
      <arglist>(const SyncProperties &amp;p) const </arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>SharedIPCSyncMaster</name>
      <anchorfile>classcanopen_1_1SharedIPCSyncMaster.html</anchorfile>
      <anchor>ac1d5626e387d0b0d444ac0f0854dcce1</anchor>
      <arglist>(boost::interprocess::managed_shared_memory &amp;managed_shm, const SyncProperties &amp;properties, boost::shared_ptr&lt; can::CommInterface &gt; interface)</arglist>
    </member>
    <member kind="function" protection="private" virtualness="virtual">
      <type>virtual SyncObject *</type>
      <name>getSyncObject</name>
      <anchorfile>classcanopen_1_1SharedIPCSyncMaster.html</anchorfile>
      <anchor>a190f0f677b8060a1155d9ad919a31aae</anchor>
      <arglist>(LayerStatus &amp;status)</arglist>
    </member>
    <member kind="variable" protection="private">
      <type>boost::interprocess::managed_shared_memory &amp;</type>
      <name>managed_shm_</name>
      <anchorfile>classcanopen_1_1SharedIPCSyncMaster.html</anchorfile>
      <anchor>a70161daf7df0730d02bdf2b7ac5b3710</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>const SyncProperties</type>
      <name>properties_</name>
      <anchorfile>classcanopen_1_1SharedIPCSyncMaster.html</anchorfile>
      <anchor>a8b3f3eaacb482e9df9bd7d94b907906d</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>canopen::SharedMaster</name>
    <filename>classcanopen_1_1SharedMaster.html</filename>
    <base>canopen::Master</base>
    <class kind="class">canopen::SharedMaster::Allocator</class>
    <member kind="function" virtualness="virtual">
      <type>virtual boost::shared_ptr&lt; SyncLayer &gt;</type>
      <name>getSync</name>
      <anchorfile>classcanopen_1_1SharedMaster.html</anchorfile>
      <anchor>a85ef021136e21bc55bac7691d1027167</anchor>
      <arglist>(const SyncProperties &amp;properties)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>SharedMaster</name>
      <anchorfile>classcanopen_1_1SharedMaster.html</anchorfile>
      <anchor>aff5e5f5f4cb05c6dce7b2239dec50a7c</anchor>
      <arglist>(const std::string &amp;name, boost::shared_ptr&lt; can::CommInterface &gt; interface, const boost::interprocess::permissions &amp;perm=boost::interprocess::permissions())</arglist>
    </member>
    <member kind="variable" protection="private">
      <type>boost::shared_ptr&lt; can::CommInterface &gt;</type>
      <name>interface_</name>
      <anchorfile>classcanopen_1_1SharedMaster.html</anchorfile>
      <anchor>a14626db13fade1549b3f7d85ab9b3b38</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>boost::interprocess::managed_shared_memory</type>
      <name>managed_shm_</name>
      <anchorfile>classcanopen_1_1SharedMaster.html</anchorfile>
      <anchor>afb7eb2e96fe6c6cab338807847bb500e</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>boost::mutex</type>
      <name>mutex_</name>
      <anchorfile>classcanopen_1_1SharedMaster.html</anchorfile>
      <anchor>a2042a1863193133dd71f7c5daac90196</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>const std::string</type>
      <name>name_</name>
      <anchorfile>classcanopen_1_1SharedMaster.html</anchorfile>
      <anchor>a7f2d4f0a5fd242bf7f8a885b9ee425b2</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>boost::unordered_map&lt; can::Header, boost::shared_ptr&lt; SharedIPCSyncMaster &gt; &gt;</type>
      <name>syncmasters_</name>
      <anchorfile>classcanopen_1_1SharedMaster.html</anchorfile>
      <anchor>a0838efc63a683af62205e0c1db7dbbc7</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>canopen::SharedMaster::Allocator</name>
    <filename>classcanopen_1_1SharedMaster_1_1Allocator.html</filename>
    <base>canopen::Master::Allocator</base>
    <member kind="function" virtualness="virtual">
      <type>virtual boost::shared_ptr&lt; Master &gt;</type>
      <name>allocate</name>
      <anchorfile>classcanopen_1_1SharedMaster_1_1Allocator.html</anchorfile>
      <anchor>a541ab7a3641d634d77e415e971b28ec6</anchor>
      <arglist>(const std::string &amp;name, boost::shared_ptr&lt; can::CommInterface &gt; interface)</arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>canopen::SimpleSyncLayer</name>
    <filename>classcanopen_1_1SimpleSyncLayer.html</filename>
    <base>canopen::ManagingSyncLayer</base>
    <member kind="function">
      <type></type>
      <name>SimpleSyncLayer</name>
      <anchorfile>classcanopen_1_1SimpleSyncLayer.html</anchorfile>
      <anchor>aae3d6f8fb96e2d88da31852d20ecb26f</anchor>
      <arglist>(const SyncProperties &amp;p, boost::shared_ptr&lt; can::CommInterface &gt; interface)</arglist>
    </member>
    <member kind="function" protection="protected" virtualness="virtual">
      <type>virtual void</type>
      <name>handleInit</name>
      <anchorfile>classcanopen_1_1SimpleSyncLayer.html</anchorfile>
      <anchor>a595b6d4a5aa2f10971a7298e41ee0494</anchor>
      <arglist>(LayerStatus &amp;status)</arglist>
    </member>
    <member kind="function" protection="protected" virtualness="virtual">
      <type>virtual void</type>
      <name>handleRead</name>
      <anchorfile>classcanopen_1_1SimpleSyncLayer.html</anchorfile>
      <anchor>a198c53fed2b5fbe81404a6220c60e959</anchor>
      <arglist>(LayerStatus &amp;status, const LayerState &amp;current_state)</arglist>
    </member>
    <member kind="function" protection="protected" virtualness="virtual">
      <type>virtual void</type>
      <name>handleWrite</name>
      <anchorfile>classcanopen_1_1SimpleSyncLayer.html</anchorfile>
      <anchor>aee8aa682678b63647b35f92aca163a84</anchor>
      <arglist>(LayerStatus &amp;status, const LayerState &amp;current_state)</arglist>
    </member>
    <member kind="variable" protection="private">
      <type>time_point</type>
      <name>read_time_</name>
      <anchorfile>classcanopen_1_1SimpleSyncLayer.html</anchorfile>
      <anchor>ab7062704c9c64494dec38687a461f42b</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>time_point</type>
      <name>write_time_</name>
      <anchorfile>classcanopen_1_1SimpleSyncLayer.html</anchorfile>
      <anchor>a623c3c7c447301133326b5e2bff22a7d</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>canopen::String</name>
    <filename>classcanopen_1_1String.html</filename>
    <member kind="function">
      <type></type>
      <name>operator const char *</name>
      <anchorfile>classcanopen_1_1String.html</anchorfile>
      <anchor>a217d793f3ad475ebdad4038b65676ec0</anchor>
      <arglist>() const </arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>operator const std::string</name>
      <anchorfile>classcanopen_1_1String.html</anchorfile>
      <anchor>ae7292751013348177f7ec953705ce824</anchor>
      <arglist>() const </arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>String</name>
      <anchorfile>classcanopen_1_1String.html</anchorfile>
      <anchor>a1d2230a101de46ec01e90c30e6dbe473</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>String</name>
      <anchorfile>classcanopen_1_1String.html</anchorfile>
      <anchor>ac05d849978ace5f1662ef7bf493f22b0</anchor>
      <arglist>(const std::string &amp;str)</arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>canopen::SyncCounter</name>
    <filename>classcanopen_1_1SyncCounter.html</filename>
    <member kind="function" virtualness="pure">
      <type>virtual void</type>
      <name>addNode</name>
      <anchorfile>classcanopen_1_1SyncCounter.html</anchorfile>
      <anchor>a816918dbd99362a7bd04ae227b5bd0c4</anchor>
      <arglist>(void *const ptr)=0</arglist>
    </member>
    <member kind="function" virtualness="pure">
      <type>virtual void</type>
      <name>removeNode</name>
      <anchorfile>classcanopen_1_1SyncCounter.html</anchorfile>
      <anchor>ae2a77c5d86fffcceff592973e0a3212f</anchor>
      <arglist>(void *const ptr)=0</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>SyncCounter</name>
      <anchorfile>classcanopen_1_1SyncCounter.html</anchorfile>
      <anchor>ae5143df5e1753e99e944b65626e268b7</anchor>
      <arglist>(const SyncProperties &amp;p)</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual</type>
      <name>~SyncCounter</name>
      <anchorfile>classcanopen_1_1SyncCounter.html</anchorfile>
      <anchor>ad0149e10ec4036199a1ebcd33a105fea</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="variable">
      <type>const SyncProperties</type>
      <name>properties</name>
      <anchorfile>classcanopen_1_1SyncCounter.html</anchorfile>
      <anchor>a8748f0ff8f4bc0bd6c2ace92c2717ee8</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>canopen::SyncLayer</name>
    <filename>classcanopen_1_1SyncLayer.html</filename>
    <base>canopen::Layer</base>
    <base>canopen::SyncCounter</base>
    <member kind="function">
      <type></type>
      <name>SyncLayer</name>
      <anchorfile>classcanopen_1_1SyncLayer.html</anchorfile>
      <anchor>a837ad8ffb0dcd5c519d7638fe29ac2b7</anchor>
      <arglist>(const SyncProperties &amp;p)</arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>canopen::SyncProperties</name>
    <filename>structcanopen_1_1SyncProperties.html</filename>
    <member kind="function">
      <type>bool</type>
      <name>operator==</name>
      <anchorfile>structcanopen_1_1SyncProperties.html</anchorfile>
      <anchor>a297afbcedac3a483233782996793be1a</anchor>
      <arglist>(const SyncProperties &amp;p) const </arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>SyncProperties</name>
      <anchorfile>structcanopen_1_1SyncProperties.html</anchorfile>
      <anchor>ae4c752411fd6a09065b603c8fcc55f7d</anchor>
      <arglist>(const can::Header &amp;h, const uint16_t &amp;p, const uint8_t &amp;o)</arglist>
    </member>
    <member kind="variable">
      <type>const can::Header</type>
      <name>header_</name>
      <anchorfile>structcanopen_1_1SyncProperties.html</anchorfile>
      <anchor>aec54815b0e4b3a5f95a53731c2e3a818</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>const uint8_t</type>
      <name>overflow_</name>
      <anchorfile>structcanopen_1_1SyncProperties.html</anchorfile>
      <anchor>a8f3a558998f4bb22bb179a0974fd05dc</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>const uint16_t</type>
      <name>period_ms_</name>
      <anchorfile>structcanopen_1_1SyncProperties.html</anchorfile>
      <anchor>aef56c9e2aa886a96e4702de8b0a71007</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>canopen::TimeoutException</name>
    <filename>classcanopen_1_1TimeoutException.html</filename>
    <base>canopen::Exception</base>
    <member kind="function">
      <type></type>
      <name>TimeoutException</name>
      <anchorfile>classcanopen_1_1TimeoutException.html</anchorfile>
      <anchor>a4630f3fb27f15a34518db68e77e2884e</anchor>
      <arglist>(const std::string &amp;w)</arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>canopen::Timer</name>
    <filename>classcanopen_1_1Timer.html</filename>
    <member kind="typedef">
      <type>fastdelegate::FastDelegate0&lt; bool &gt;</type>
      <name>TimerDelegate</name>
      <anchorfile>classcanopen_1_1Timer.html</anchorfile>
      <anchor>ae976b415735da06d815d2460b3f1f5b3</anchor>
      <arglist></arglist>
    </member>
    <member kind="function">
      <type>const boost::chrono::high_resolution_clock::duration &amp;</type>
      <name>getPeriod</name>
      <anchorfile>classcanopen_1_1Timer.html</anchorfile>
      <anchor>a9429bd866b3fc9c4ca1cf139777cd734</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>restart</name>
      <anchorfile>classcanopen_1_1Timer.html</anchorfile>
      <anchor>a5cd2aa17c859ebbd12df88d2882a542a</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>start</name>
      <anchorfile>classcanopen_1_1Timer.html</anchorfile>
      <anchor>a2fa9c3fe92e717ba72b3f5bc7aec49e7</anchor>
      <arglist>(const TimerDelegate &amp;del, const T &amp;dur, bool start_now=true)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>stop</name>
      <anchorfile>classcanopen_1_1Timer.html</anchorfile>
      <anchor>a3dbbcc9ed75241548c397f52abef757d</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>Timer</name>
      <anchorfile>classcanopen_1_1Timer.html</anchorfile>
      <anchor>ab1583eaccaf5f6ed218701d00153d4e5</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>~Timer</name>
      <anchorfile>classcanopen_1_1Timer.html</anchorfile>
      <anchor>a60a4f05e9527f37838007348aa8409b4</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>handler</name>
      <anchorfile>classcanopen_1_1Timer.html</anchorfile>
      <anchor>a515146dda6e8bc00b6d46ab2fe5de39c</anchor>
      <arglist>(const boost::system::error_code &amp;ec)</arglist>
    </member>
    <member kind="variable" protection="private">
      <type>TimerDelegate</type>
      <name>delegate</name>
      <anchorfile>classcanopen_1_1Timer.html</anchorfile>
      <anchor>aac1a898afcc399d717f36c35f8543d03</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>boost::asio::io_service</type>
      <name>io</name>
      <anchorfile>classcanopen_1_1Timer.html</anchorfile>
      <anchor>a02902345af4d481b41985f7074d769a7</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>boost::mutex</type>
      <name>mutex</name>
      <anchorfile>classcanopen_1_1Timer.html</anchorfile>
      <anchor>a8468f0c817b5da4f239ed65226ad9cfb</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>boost::chrono::high_resolution_clock::duration</type>
      <name>period</name>
      <anchorfile>classcanopen_1_1Timer.html</anchorfile>
      <anchor>a6687bbe1e1056780a9202abfb463c8eb</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>boost::thread</type>
      <name>thread</name>
      <anchorfile>classcanopen_1_1Timer.html</anchorfile>
      <anchor>a04ad8c966ebf450fb0008d3853dc0f41</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>boost::asio::basic_waitable_timer&lt; boost::chrono::high_resolution_clock &gt;</type>
      <name>timer</name>
      <anchorfile>classcanopen_1_1Timer.html</anchorfile>
      <anchor>a7388b4fe0c975b831e1e876ba3a2c93b</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>boost::asio::io_service::work</type>
      <name>work</name>
      <anchorfile>classcanopen_1_1Timer.html</anchorfile>
      <anchor>a6c3255712883bdf7ff7ca4c363473991</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>canopen::TypeGuard</name>
    <filename>classcanopen_1_1TypeGuard.html</filename>
    <class kind="class">canopen::TypeGuard::TypeInfo</class>
    <member kind="function">
      <type>size_t</type>
      <name>get_size</name>
      <anchorfile>classcanopen_1_1TypeGuard.html</anchorfile>
      <anchor>a7241460261f2d35ea281537d43e72e3a</anchor>
      <arglist>() const </arglist>
    </member>
    <member kind="function">
      <type>bool</type>
      <name>is_type</name>
      <anchorfile>classcanopen_1_1TypeGuard.html</anchorfile>
      <anchor>acc8277ab3266a3b3bde403785285c1ce</anchor>
      <arglist>() const </arglist>
    </member>
    <member kind="function">
      <type>bool</type>
      <name>operator==</name>
      <anchorfile>classcanopen_1_1TypeGuard.html</anchorfile>
      <anchor>a96763942de03d813fa18376f5570e361</anchor>
      <arglist>(const TypeGuard &amp;other) const </arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>TypeGuard</name>
      <anchorfile>classcanopen_1_1TypeGuard.html</anchorfile>
      <anchor>a54c5b00a4c7d879717eb6b028d7db9a4</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>bool</type>
      <name>valid</name>
      <anchorfile>classcanopen_1_1TypeGuard.html</anchorfile>
      <anchor>ac2507a888e97f429354ff88baaca6a0f</anchor>
      <arglist>() const </arglist>
    </member>
    <member kind="function" static="yes">
      <type>static TypeGuard</type>
      <name>create</name>
      <anchorfile>classcanopen_1_1TypeGuard.html</anchorfile>
      <anchor>a1edb7e9d6bb6a710ab074265f38e006b</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" protection="private">
      <type></type>
      <name>TypeGuard</name>
      <anchorfile>classcanopen_1_1TypeGuard.html</anchorfile>
      <anchor>af6ca89fab84f7bfec3c6cdde16d1e61f</anchor>
      <arglist>(const std::type_info &amp;(*ti)(), const size_t s)</arglist>
    </member>
    <member kind="variable" protection="private">
      <type>const std::type_info &amp;(*</type>
      <name>get_type</name>
      <anchorfile>classcanopen_1_1TypeGuard.html</anchorfile>
      <anchor>a73a4df863ae7cbf216b2044b79e6a258</anchor>
      <arglist>)()</arglist>
    </member>
    <member kind="variable" protection="private">
      <type>size_t</type>
      <name>type_size</name>
      <anchorfile>classcanopen_1_1TypeGuard.html</anchorfile>
      <anchor>a3e7a0fd5dc6cef525ef8ea364282bf2c</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>canopen::TypeGuard::TypeInfo</name>
    <filename>classcanopen_1_1TypeGuard_1_1TypeInfo.html</filename>
    <templarg></templarg>
    <member kind="function" static="yes">
      <type>static const std::type_info &amp;</type>
      <name>id</name>
      <anchorfile>classcanopen_1_1TypeGuard_1_1TypeInfo.html</anchorfile>
      <anchor>a0185dc3a39fb3f425a131153fe39dec8</anchor>
      <arglist>()</arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>canopen::UnrestrictedMaster</name>
    <filename>classcanopen_1_1UnrestrictedMaster.html</filename>
    <base>canopen::SharedMaster</base>
    <class kind="class">canopen::UnrestrictedMaster::Allocator</class>
    <class kind="class">canopen::UnrestrictedMaster::unrestricted</class>
    <member kind="function">
      <type></type>
      <name>UnrestrictedMaster</name>
      <anchorfile>classcanopen_1_1UnrestrictedMaster.html</anchorfile>
      <anchor>a47155842beae8c651069fe2503308488</anchor>
      <arglist>(const std::string &amp;name, boost::shared_ptr&lt; can::CommInterface &gt; interface)</arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>canopen::UnrestrictedMaster::Allocator</name>
    <filename>classcanopen_1_1UnrestrictedMaster_1_1Allocator.html</filename>
    <base>canopen::Master::Allocator</base>
    <member kind="function" virtualness="virtual">
      <type>virtual boost::shared_ptr&lt; Master &gt;</type>
      <name>allocate</name>
      <anchorfile>classcanopen_1_1UnrestrictedMaster_1_1Allocator.html</anchorfile>
      <anchor>a92d38a79ef842c0ce0a2cd2fb0f989d8</anchor>
      <arglist>(const std::string &amp;name, boost::shared_ptr&lt; can::CommInterface &gt; interface)</arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>canopen::UnrestrictedMaster::unrestricted</name>
    <filename>classcanopen_1_1UnrestrictedMaster_1_1unrestricted.html</filename>
    <member kind="function">
      <type></type>
      <name>unrestricted</name>
      <anchorfile>classcanopen_1_1UnrestrictedMaster_1_1unrestricted.html</anchorfile>
      <anchor>a22befd2b0ce319bec47538120613baa4</anchor>
      <arglist>()</arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>canopen::VectorHelper</name>
    <filename>classcanopen_1_1VectorHelper.html</filename>
    <templarg>T</templarg>
    <member kind="function" virtualness="virtual">
      <type>virtual void</type>
      <name>add</name>
      <anchorfile>classcanopen_1_1VectorHelper.html</anchorfile>
      <anchor>ae9df81e344ffce23f16cd7814a34ca27</anchor>
      <arglist>(const boost::shared_ptr&lt; T &gt; &amp;l)</arglist>
    </member>
    <member kind="function">
      <type>bool</type>
      <name>callFunc</name>
      <anchorfile>classcanopen_1_1VectorHelper.html</anchorfile>
      <anchor>ac0dbeb9567336f7b6d93508c6d3a644f</anchor>
      <arglist>(FuncType func, Data &amp;status)</arglist>
    </member>
    <member kind="function" protection="protected">
      <type>vector_type::iterator</type>
      <name>call</name>
      <anchorfile>classcanopen_1_1VectorHelper.html</anchorfile>
      <anchor>a8ca957ac487f55f5ac89c290cbc841a8</anchor>
      <arglist>(FuncType func, Data &amp;status)</arglist>
    </member>
    <member kind="function" protection="protected">
      <type>vector_type::iterator</type>
      <name>call</name>
      <anchorfile>classcanopen_1_1VectorHelper.html</anchorfile>
      <anchor>a363ea23b89251d6e5f496353db06b766</anchor>
      <arglist>(FuncType func, Data &amp;status)</arglist>
    </member>
    <member kind="function" protection="protected">
      <type>vector_type::reverse_iterator</type>
      <name>call_rev</name>
      <anchorfile>classcanopen_1_1VectorHelper.html</anchorfile>
      <anchor>afbf0f1c92da69e59be5f60c2264d1c6b</anchor>
      <arglist>(FuncType func, Data &amp;status)</arglist>
    </member>
    <member kind="function" protection="protected">
      <type>vector_type::reverse_iterator</type>
      <name>call_rev</name>
      <anchorfile>classcanopen_1_1VectorHelper.html</anchorfile>
      <anchor>a63fb0ac490cf165b0881da327641a73a</anchor>
      <arglist>(FuncType func, Data &amp;status)</arglist>
    </member>
    <member kind="function" protection="protected">
      <type>void</type>
      <name>destroy</name>
      <anchorfile>classcanopen_1_1VectorHelper.html</anchorfile>
      <anchor>a85e8c5020f5090af95649d6516766d6f</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="typedef" protection="private">
      <type>std::vector&lt; boost::shared_ptr&lt; T &gt; &gt;</type>
      <name>vector_type</name>
      <anchorfile>classcanopen_1_1VectorHelper.html</anchorfile>
      <anchor>a2a1e59870bf0762fee6f70894727b302</anchor>
      <arglist></arglist>
    </member>
    <member kind="function" protection="private">
      <type>Iterator</type>
      <name>call</name>
      <anchorfile>classcanopen_1_1VectorHelper.html</anchorfile>
      <anchor>a07f13d239109a672851b37458b8506e4</anchor>
      <arglist>(FuncType func, Data &amp;status, const Iterator &amp;begin, const Iterator &amp;end)</arglist>
    </member>
    <member kind="function" protection="private">
      <type>Iterator</type>
      <name>call</name>
      <anchorfile>classcanopen_1_1VectorHelper.html</anchorfile>
      <anchor>af221504ae18bb444da23dccc969f4fc8</anchor>
      <arglist>(FuncType func, Data &amp;status, const Iterator &amp;begin, const Iterator &amp;end)</arglist>
    </member>
    <member kind="variable" protection="private">
      <type>vector_type</type>
      <name>layers</name>
      <anchorfile>classcanopen_1_1VectorHelper.html</anchorfile>
      <anchor>a9ad23902e735e2412f8f7703da60cf9f</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>boost::shared_mutex</type>
      <name>mutex</name>
      <anchorfile>classcanopen_1_1VectorHelper.html</anchorfile>
      <anchor>a2a30bd127dcb3d300cc0bc633b987006</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>canopen::WrapMaster</name>
    <filename>classcanopen_1_1WrapMaster.html</filename>
    <templarg></templarg>
    <base>canopen::Master</base>
    <class kind="class">canopen::WrapMaster::Allocator</class>
    <member kind="function" virtualness="virtual">
      <type>virtual boost::shared_ptr&lt; SyncLayer &gt;</type>
      <name>getSync</name>
      <anchorfile>classcanopen_1_1WrapMaster.html</anchorfile>
      <anchor>a217ddc7c38438ffbc3bcae1b7601f5dd</anchor>
      <arglist>(const SyncProperties &amp;properties)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>WrapMaster</name>
      <anchorfile>classcanopen_1_1WrapMaster.html</anchorfile>
      <anchor>a0e41d0b19513b922e2cde61f7fda8a39</anchor>
      <arglist>(boost::shared_ptr&lt; can::CommInterface &gt; interface)</arglist>
    </member>
    <member kind="variable" protection="private">
      <type>boost::shared_ptr&lt; can::CommInterface &gt;</type>
      <name>interface_</name>
      <anchorfile>classcanopen_1_1WrapMaster.html</anchorfile>
      <anchor>a858dc3faffa17bd0d788ab3ba87aa34e</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>canopen::WrapMaster::Allocator</name>
    <filename>classcanopen_1_1WrapMaster_1_1Allocator.html</filename>
    <base>canopen::Master::Allocator</base>
    <member kind="function" virtualness="virtual">
      <type>virtual boost::shared_ptr&lt; Master &gt;</type>
      <name>allocate</name>
      <anchorfile>classcanopen_1_1WrapMaster_1_1Allocator.html</anchorfile>
      <anchor>ad2e7d933a98384673a4f4e4fe0ff011a</anchor>
      <arglist>(const std::string &amp;name, boost::shared_ptr&lt; can::CommInterface &gt; interface)</arglist>
    </member>
  </compound>
</tagfile>
