<?xml version='1.0' encoding='UTF-8' standalone='yes' ?>
<tagfile>
  <compound kind="file">
    <name>imu.cpp</name>
    <path>/tmp/ws/src/thormang3_mpc_sensors/thormang3_imu_3dm_gx4/src/</path>
    <filename>imu_8cpp</filename>
    <includes id="imu_8hpp" name="imu.hpp" local="yes" imported="no">thormang3_imu_3dm_gx4/imu.hpp</includes>
    <class kind="class">PacketDecoder</class>
    <class kind="class">PacketEncoder</class>
    <member kind="define">
      <type>#define</type>
      <name>add_byte</name>
      <anchorfile>imu_8cpp.html</anchorfile>
      <anchor>a2bdbe6f60af0b7008f503391266e73c1</anchor>
      <arglist>(x)</arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>COMAMND_FILTER_MESSAGE_FORMAT</name>
      <anchorfile>imu_8cpp.html</anchorfile>
      <anchor>ae381235210194d2eacf89a4fae3f3ff0</anchor>
      <arglist></arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>COMMAND_CLASS_3DM</name>
      <anchorfile>imu_8cpp.html</anchorfile>
      <anchor>a013dec9c048ca907988c7dd0bea6f35d</anchor>
      <arglist></arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>COMMAND_CLASS_BASE</name>
      <anchorfile>imu_8cpp.html</anchorfile>
      <anchor>a57e9ebce0721e10f82526e39a3830afc</anchor>
      <arglist></arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>COMMAND_CLASS_FILTER</name>
      <anchorfile>imu_8cpp.html</anchorfile>
      <anchor>a0a2884f25273070e9290a251caf3166f</anchor>
      <arglist></arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>COMMAND_DEVICE_STATUS</name>
      <anchorfile>imu_8cpp.html</anchorfile>
      <anchor>a4fb6558a5568af171edba096852d4c23</anchor>
      <arglist></arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>COMMAND_ENABLE_DATA_STREAM</name>
      <anchorfile>imu_8cpp.html</anchorfile>
      <anchor>a7e12e5a2fbcb88b5970fde4e0036bd54</anchor>
      <arglist></arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>COMMAND_ENABLE_MEASUREMENTS</name>
      <anchorfile>imu_8cpp.html</anchorfile>
      <anchor>a4158d451ec7051ea9b536bca720cf952</anchor>
      <arglist></arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>COMMAND_FILTER_CONTROL_FLAGS</name>
      <anchorfile>imu_8cpp.html</anchorfile>
      <anchor>a5cffe8b6f0b9bd2a0466e4dd69c2fe08</anchor>
      <arglist></arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>COMMAND_GET_DEVICE_INFO</name>
      <anchorfile>imu_8cpp.html</anchorfile>
      <anchor>a00f04d1b38cb9155cd787bbf193c2861</anchor>
      <arglist></arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>COMMAND_GET_FILTER_BASE_RATE</name>
      <anchorfile>imu_8cpp.html</anchorfile>
      <anchor>adc51a4cc277f64b3df2a6d4def226ed6</anchor>
      <arglist></arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>COMMAND_GET_IMU_BASE_RATE</name>
      <anchorfile>imu_8cpp.html</anchorfile>
      <anchor>a849e76f470e8a7c1acb334bd40ce6924</anchor>
      <arglist></arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>COMMAND_IMU_MESSAGE_FORMAT</name>
      <anchorfile>imu_8cpp.html</anchorfile>
      <anchor>a7e325e0cdc2887ed569826bb9871db07</anchor>
      <arglist></arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>COMMAND_SET_HARD_IRON</name>
      <anchorfile>imu_8cpp.html</anchorfile>
      <anchor>aa6a82526500b6fd4351c139a42fbdb23</anchor>
      <arglist></arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>COMMAND_SET_SOFT_IRON</name>
      <anchorfile>imu_8cpp.html</anchorfile>
      <anchor>a1db99d614dc5ca03ec6eff8e6129daa0</anchor>
      <arglist></arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>COMMAND_UART_BAUD_RATE</name>
      <anchorfile>imu_8cpp.html</anchorfile>
      <anchor>affc8e24e9f88cc2522c529ee6e2cacd9</anchor>
      <arglist></arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>DATA_CLASS_FILTER</name>
      <anchorfile>imu_8cpp.html</anchorfile>
      <anchor>a30d0495eb692f0e346e75d88868f8539</anchor>
      <arglist></arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>DATA_CLASS_IMU</name>
      <anchorfile>imu_8cpp.html</anchorfile>
      <anchor>a662a3ccc3e5cf7d861e37e7ac8268e03</anchor>
      <arglist></arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>DEVICE_IDLE</name>
      <anchorfile>imu_8cpp.html</anchorfile>
      <anchor>aab45242f72784f26604c21dc284e6d55</anchor>
      <arglist></arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>DEVICE_PING</name>
      <anchorfile>imu_8cpp.html</anchorfile>
      <anchor>aa2cfe950ac1e7e33bbe1fd74f21a56a3</anchor>
      <arglist></arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>DEVICE_RESUME</name>
      <anchorfile>imu_8cpp.html</anchorfile>
      <anchor>ad3998b9508663ddf18c175a7f61517ae</anchor>
      <arglist></arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>FIELD_ACCELEROMETER</name>
      <anchorfile>imu_8cpp.html</anchorfile>
      <anchor>a1a918a61ea0d4c6e05cda8854a7af5f6</anchor>
      <arglist></arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>FIELD_ACK_OR_NACK</name>
      <anchorfile>imu_8cpp.html</anchorfile>
      <anchor>a3f66cc8f7d5de99cce6023c6b7d2a049</anchor>
      <arglist></arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>FIELD_ANGLE_UNCERTAINTY</name>
      <anchorfile>imu_8cpp.html</anchorfile>
      <anchor>a208c5003cb23f0349fca9812f01d95ad</anchor>
      <arglist></arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>FIELD_BAROMETER</name>
      <anchorfile>imu_8cpp.html</anchorfile>
      <anchor>ac1c2c10c961af7e55e297272146a6135</anchor>
      <arglist></arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>FIELD_BIAS_UNCERTAINTY</name>
      <anchorfile>imu_8cpp.html</anchorfile>
      <anchor>a57cfc9c53f78ac233499d535906f3096</anchor>
      <arglist></arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>FIELD_DEVICE_INFO</name>
      <anchorfile>imu_8cpp.html</anchorfile>
      <anchor>a1cec039cd73bcdd1a85aa22d27467376</anchor>
      <arglist></arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>FIELD_FILTER_BASERATE</name>
      <anchorfile>imu_8cpp.html</anchorfile>
      <anchor>ade7e67de00965b334f48d4d026acbb67</anchor>
      <arglist></arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>FIELD_GYRO_BIAS</name>
      <anchorfile>imu_8cpp.html</anchorfile>
      <anchor>aacf21d5b696beab4079ed982e2dbca52</anchor>
      <arglist></arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>FIELD_GYROSCOPE</name>
      <anchorfile>imu_8cpp.html</anchorfile>
      <anchor>a268ae9d9f199f350fb7e3813c4d9ebbc</anchor>
      <arglist></arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>FIELD_IMU_BASERATE</name>
      <anchorfile>imu_8cpp.html</anchorfile>
      <anchor>ab4df88f1379fc5174dfa5531da34f965</anchor>
      <arglist></arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>FIELD_MAGNETOMETER</name>
      <anchorfile>imu_8cpp.html</anchorfile>
      <anchor>a099b725d4849b700b289252dfd1c1b89</anchor>
      <arglist></arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>FIELD_QUATERNION</name>
      <anchorfile>imu_8cpp.html</anchorfile>
      <anchor>a8cb9e5ed38d91c7e4aad4e8fa6167388</anchor>
      <arglist></arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>FIELD_STATUS_REPORT</name>
      <anchorfile>imu_8cpp.html</anchorfile>
      <anchor>ad600803f8b637aef80ab9b4834300079</anchor>
      <arglist></arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>FUNCTION_APPLY</name>
      <anchorfile>imu_8cpp.html</anchorfile>
      <anchor>a12009dc0041f163c7061538551a6eec8</anchor>
      <arglist></arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>kBufferSize</name>
      <anchorfile>imu_8cpp.html</anchorfile>
      <anchor>aa1c34e702d71838b2b30b0e0b57b5469</anchor>
      <arglist></arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>kDefaultTimeout</name>
      <anchorfile>imu_8cpp.html</anchorfile>
      <anchor>aed30cd88cdd163dcd29d9fdb79d38125</anchor>
      <arglist></arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>SELECTOR_FILTER</name>
      <anchorfile>imu_8cpp.html</anchorfile>
      <anchor>aafbc635f54767c9553519e39edc63e13</anchor>
      <arglist></arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>SELECTOR_IMU</name>
      <anchorfile>imu_8cpp.html</anchorfile>
      <anchor>a29fbc47be4bab3d9c301e55e37157cd2</anchor>
      <arglist></arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>u8</name>
      <anchorfile>imu_8cpp.html</anchorfile>
      <anchor>a241038805704fe6475460245eb139bd0</anchor>
      <arglist>(x)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>decode</name>
      <anchorfile>imu_8cpp.html</anchorfile>
      <anchor>abcdbdab7ef959b7826134fafb30d1312</anchor>
      <arglist>(const uint8_t *buffer, size_t count, T *output)</arglist>
    </member>
    <member kind="function">
      <type>size_t</type>
      <name>encode</name>
      <anchorfile>imu_8cpp.html</anchorfile>
      <anchor>aafa8f562e8852f9e96984a6525865b0d</anchor>
      <arglist>(uint8_t *buffer, const T &amp;t)</arglist>
    </member>
    <member kind="function">
      <type>size_t</type>
      <name>encode</name>
      <anchorfile>imu_8cpp.html</anchorfile>
      <anchor>aca3cd6485cafe5edba718d15878603a3</anchor>
      <arglist>(uint8_t *buffer, const T &amp;t, const Ts &amp;...ts)</arglist>
    </member>
    <member kind="function" static="yes">
      <type>static std::string</type>
      <name>ltrim</name>
      <anchorfile>imu_8cpp.html</anchorfile>
      <anchor>abe87b71b83c3838e46a2819f0a979580</anchor>
      <arglist>(std::string s)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>to_device_order</name>
      <anchorfile>imu_8cpp.html</anchorfile>
      <anchor>af8de3b7cf4f583647c934dd6fd3db515</anchor>
      <arglist>(uint8_t buffer[sz])</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>to_device_order&lt; 1 &gt;</name>
      <anchorfile>imu_8cpp.html</anchorfile>
      <anchor>af3db0a8a0d0bc9cc534c1ba80347ce06</anchor>
      <arglist>(uint8_t buffer[1])</arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>imu.hpp</name>
    <path>/tmp/ws/src/thormang3_mpc_sensors/thormang3_imu_3dm_gx4/include/thormang3_imu_3dm_gx4/</path>
    <filename>imu_8hpp</filename>
    <class kind="struct">imu_3dm_gx4::Imu::command_error</class>
    <class kind="struct">imu_3dm_gx4::Imu::DiagnosticFields</class>
    <class kind="struct">imu_3dm_gx4::Imu::FilterData</class>
    <class kind="class">imu_3dm_gx4::Imu</class>
    <class kind="struct">imu_3dm_gx4::Imu::IMUData</class>
    <class kind="struct">imu_3dm_gx4::Imu::Info</class>
    <class kind="struct">imu_3dm_gx4::Imu::io_error</class>
    <class kind="struct">imu_3dm_gx4::Imu::Packet</class>
    <class kind="struct">imu_3dm_gx4::Imu::timeout_error</class>
    <namespace>imu_3dm_gx4</namespace>
    <member kind="define">
      <type>#define</type>
      <name>HOST_LITTLE_ENDIAN</name>
      <anchorfile>imu_8hpp.html</anchorfile>
      <anchor>ae0b024f7ee4bd875149b1a0a50c20b0a</anchor>
      <arglist></arglist>
    </member>
    <member kind="function">
      <type>int</type>
      <name>ackErrorCodeFor</name>
      <anchorfile>imu_8hpp.html</anchorfile>
      <anchor>a60ee8f725f216b37a39db68cb6978a58</anchor>
      <arglist>(const Packet &amp;command) const </arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>calcChecksum</name>
      <anchorfile>imu_8hpp.html</anchorfile>
      <anchor>ac9fddca9db913c75b93f2dd1ba56d1f8</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>bool</type>
      <name>isFilterData</name>
      <anchorfile>imu_8hpp.html</anchorfile>
      <anchor>ae1068f4e6ae6199e3cc33bcc6bbf0264</anchor>
      <arglist>() const </arglist>
    </member>
    <member kind="function">
      <type>bool</type>
      <name>isIMUData</name>
      <anchorfile>imu_8hpp.html</anchorfile>
      <anchor>a34d7d5375287da85e2b4a78ed184032a</anchor>
      <arglist>() const </arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>Packet</name>
      <anchorfile>imu_8hpp.html</anchorfile>
      <anchor>ac5fc81f775c6b9c22f0e00038b6240b3</anchor>
      <arglist>(uint8_t desc=0)</arglist>
    </member>
    <member kind="function">
      <type>std::map&lt; std::string, unsigned int &gt;</type>
      <name>toMap</name>
      <anchorfile>imu_8hpp.html</anchorfile>
      <anchor>a9d93dbd93ec3a58c85ed3a42c0e28865</anchor>
      <arglist>() const </arglist>
    </member>
    <member kind="function">
      <type>std::string</type>
      <name>toString</name>
      <anchorfile>imu_8hpp.html</anchorfile>
      <anchor>ac6f41cf43a73f14e542d722844ee3017</anchor>
      <arglist>() const </arglist>
    </member>
    <member kind="variable">
      <type>uint8_t</type>
      <name>checkLSB</name>
      <anchorfile>imu_8hpp.html</anchorfile>
      <anchor>a83b37844c98a6c36d9828d6a0583cd05</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>uint8_t</type>
      <name>checkMSB</name>
      <anchorfile>imu_8hpp.html</anchorfile>
      <anchor>a321ea2c129393ce604621e81617ba776</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>uint16_t</type>
      <name>checksum</name>
      <anchorfile>imu_8hpp.html</anchorfile>
      <anchor>a6796c847bbd16253ce2538754c250bd6</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>uint32_t</type>
      <name>comBytesRead</name>
      <anchorfile>imu_8hpp.html</anchorfile>
      <anchor>adc45246edb50ba8df66c02abdc5135be</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>uint32_t</type>
      <name>comBytesWritten</name>
      <anchorfile>imu_8hpp.html</anchorfile>
      <anchor>a42a8168088b7c41455cea431b52961b4</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>uint32_t</type>
      <name>comNumReadOverruns</name>
      <anchorfile>imu_8hpp.html</anchorfile>
      <anchor>a5ac7be9435c2e47483dc3e12a5b3b153</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>uint32_t</type>
      <name>comNumWriteOverruns</name>
      <anchorfile>imu_8hpp.html</anchorfile>
      <anchor>a3985fd130b0dfbb5c230cf423fc7a271</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>uint8_t</type>
      <name>descriptor</name>
      <anchorfile>imu_8hpp.html</anchorfile>
      <anchor>ad402ac1f460f243ebe02b12329135520</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>uint32_t</type>
      <name>filterPacketsDropped</name>
      <anchorfile>imu_8hpp.html</anchorfile>
      <anchor>aed198c7f700a01c78a54b5b91e73cc54</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>uint8_t</type>
      <name>filterStreamEnabled</name>
      <anchorfile>imu_8hpp.html</anchorfile>
      <anchor>abca253ba58810061b5732a235801555a</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>uint32_t</type>
      <name>imuPacketsDropped</name>
      <anchorfile>imu_8hpp.html</anchorfile>
      <anchor>a204777f169a14fd63fcd8a24ddd8e5e0</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>uint8_t</type>
      <name>imuStreamEnabled</name>
      <anchorfile>imu_8hpp.html</anchorfile>
      <anchor>ac51016918b18286aa97cf00c6a02e21f</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" static="yes">
      <type>static constexpr uint8_t</type>
      <name>kHeaderLength</name>
      <anchorfile>imu_8hpp.html</anchorfile>
      <anchor>a81b80cce1a649c8c2b608991cc5755be</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" static="yes">
      <type>static constexpr uint8_t</type>
      <name>kSyncLSB</name>
      <anchorfile>imu_8hpp.html</anchorfile>
      <anchor>af4fdd51c9e4c4b5c7b4a62ee7924f806</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" static="yes">
      <type>static constexpr uint8_t</type>
      <name>kSyncMSB</name>
      <anchorfile>imu_8hpp.html</anchorfile>
      <anchor>a524e6914882a74d917ed269ec2db7d3f</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>uint32_t</type>
      <name>last1PPSPulse</name>
      <anchorfile>imu_8hpp.html</anchorfile>
      <anchor>adb4384c3fcbe72512246a8db11d3ce1b</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>uint32_t</type>
      <name>lastIMUMessage</name>
      <anchorfile>imu_8hpp.html</anchorfile>
      <anchor>ad14b3ec2496e17bb9c7bfd1a554441e5</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>uint8_t</type>
      <name>length</name>
      <anchorfile>imu_8hpp.html</anchorfile>
      <anchor>ab2b3adeb2a67e656ff030b56727fd0ac</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>uint16_t</type>
      <name>modelNumber</name>
      <anchorfile>imu_8hpp.html</anchorfile>
      <anchor>a365fef3228d9b1809456afd514605b12</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>uint32_t</type>
      <name>num1PPSPulses</name>
      <anchorfile>imu_8hpp.html</anchorfile>
      <anchor>a94bef6ae6e02353727f378141fb65a62</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>uint32_t</type>
      <name>numIMUParseErrors</name>
      <anchorfile>imu_8hpp.html</anchorfile>
      <anchor>a61443185407cd8c42dd385d9e03db721</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>uint8_t</type>
      <name>payload</name>
      <anchorfile>imu_8hpp.html</anchorfile>
      <anchor>a4fd6536ce7e68fd8ad2ef23a1e925d98</anchor>
      <arglist>[255]</arglist>
    </member>
    <member kind="variable">
      <type>uint8_t</type>
      <name>selector</name>
      <anchorfile>imu_8hpp.html</anchorfile>
      <anchor>ac5bb6ae84eeec357171242f1a02598a8</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>uint32_t</type>
      <name>statusFlags</name>
      <anchorfile>imu_8hpp.html</anchorfile>
      <anchor>a816d8c01e6c2f84727d960a94ab7ee52</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>uint16_t</type>
      <name>sync</name>
      <anchorfile>imu_8hpp.html</anchorfile>
      <anchor>a4601e29bf7251628490bd3df1b9bce29</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>uint8_t</type>
      <name>syncLSB</name>
      <anchorfile>imu_8hpp.html</anchorfile>
      <anchor>acd4188e49bbcf7d428d8ac4e67c9a9b4</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>uint8_t</type>
      <name>syncMSB</name>
      <anchorfile>imu_8hpp.html</anchorfile>
      <anchor>aa6224fc2a6c404d581e79860124d0251</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>uint32_t</type>
      <name>systemTimer</name>
      <anchorfile>imu_8hpp.html</anchorfile>
      <anchor>aa8cece50a74c746b6fdb03b0de3df294</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>uint32_t</type>
      <name>totalIMUMessages</name>
      <anchorfile>imu_8hpp.html</anchorfile>
      <anchor>a51a30f15a70b276e911f7df3c017c445</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>uint32_t</type>
      <name>usbBytesRead</name>
      <anchorfile>imu_8hpp.html</anchorfile>
      <anchor>a3687150725b117eea68dc8a4e6e19749</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>uint32_t</type>
      <name>usbBytesWritten</name>
      <anchorfile>imu_8hpp.html</anchorfile>
      <anchor>a828e140433d48825157852d9e35374ae</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>uint32_t</type>
      <name>usbNumReadOverruns</name>
      <anchorfile>imu_8hpp.html</anchorfile>
      <anchor>aa0f25f6df4fa69184c93fdf49a75635b</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>uint32_t</type>
      <name>usbNumWriteOverruns</name>
      <anchorfile>imu_8hpp.html</anchorfile>
      <anchor>a7d255e70dddb78a7af3b179dbb696642</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>imu_3dm_gx4.cpp</name>
    <path>/tmp/ws/src/thormang3_mpc_sensors/thormang3_imu_3dm_gx4/src/</path>
    <filename>imu__3dm__gx4_8cpp</filename>
    <includes id="imu_8hpp" name="imu.hpp" local="yes" imported="no">thormang3_imu_3dm_gx4/imu.hpp</includes>
    <member kind="define">
      <type>#define</type>
      <name>kEarthGravity</name>
      <anchorfile>imu__3dm__gx4_8cpp.html</anchorfile>
      <anchor>af333781e370acf824c98d088a5be451a</anchor>
      <arglist></arglist>
    </member>
    <member kind="function">
      <type>std::shared_ptr&lt; diagnostic_updater::TopicDiagnostic &gt;</type>
      <name>configTopicDiagnostic</name>
      <anchorfile>imu__3dm__gx4_8cpp.html</anchorfile>
      <anchor>a77b3781c8fa2f0cf4dc1e86cf6c41680</anchor>
      <arglist>(const std::string &amp;name, double *target)</arglist>
    </member>
    <member kind="function">
      <type>int</type>
      <name>main</name>
      <anchorfile>imu__3dm__gx4_8cpp.html</anchorfile>
      <anchor>a3c04138a5bfe5d72780bb7e82a18e627</anchor>
      <arglist>(int argc, char **argv)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>publishData</name>
      <anchorfile>imu__3dm__gx4_8cpp.html</anchorfile>
      <anchor>a99b8d1929f83284fe0d2fbb9405f25d7</anchor>
      <arglist>(const Imu::IMUData &amp;data)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>publishFilter</name>
      <anchorfile>imu__3dm__gx4_8cpp.html</anchorfile>
      <anchor>a217c5522733545505d71b7d6e114bc25</anchor>
      <arglist>(const Imu::FilterData &amp;data)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>updateDiagnosticInfo</name>
      <anchorfile>imu__3dm__gx4_8cpp.html</anchorfile>
      <anchor>affe2a6b96765fe7e0d0f688346afac17</anchor>
      <arglist>(diagnostic_updater::DiagnosticStatusWrapper &amp;stat, imu_3dm_gx4::Imu *imu)</arglist>
    </member>
    <member kind="variable">
      <type>Imu::DiagnosticFields</type>
      <name>fields</name>
      <anchorfile>imu__3dm__gx4_8cpp.html</anchorfile>
      <anchor>a3f14258123051b768f20f98e5eda8185</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>std::shared_ptr&lt; diagnostic_updater::TopicDiagnostic &gt;</type>
      <name>filterDiag</name>
      <anchorfile>imu__3dm__gx4_8cpp.html</anchorfile>
      <anchor>ad17fe0e76f5104c04a0788dfef06f611</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>std::string</type>
      <name>frameId</name>
      <anchorfile>imu__3dm__gx4_8cpp.html</anchorfile>
      <anchor>ae2da17f3adaf575f0fa9f3e5a8fc00b1</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>std::shared_ptr&lt; diagnostic_updater::TopicDiagnostic &gt;</type>
      <name>imuDiag</name>
      <anchorfile>imu__3dm__gx4_8cpp.html</anchorfile>
      <anchor>a79d607f6665f41c35c8e4cd46f1b0599</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>sensor_msgs::Imu</type>
      <name>imuFilterData</name>
      <anchorfile>imu__3dm__gx4_8cpp.html</anchorfile>
      <anchor>a99b10693cb176654a5b338c727dc9914</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>Imu::Info</type>
      <name>info</name>
      <anchorfile>imu__3dm__gx4_8cpp.html</anchorfile>
      <anchor>abb6f4e9d5038223bf10d81a94ccdb4e8</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>ros::Publisher</type>
      <name>pubFilter</name>
      <anchorfile>imu__3dm__gx4_8cpp.html</anchorfile>
      <anchor>a89a77130dcf27bf314e6bafad7993d52</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>ros::Publisher</type>
      <name>pubIMU</name>
      <anchorfile>imu__3dm__gx4_8cpp.html</anchorfile>
      <anchor>a5d52633a1a61ec8484dc5e56b77e74ee</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>ros::Publisher</type>
      <name>pubMag</name>
      <anchorfile>imu__3dm__gx4_8cpp.html</anchorfile>
      <anchor>a6276b882bf273db62727ce988645e335</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>ros::Publisher</type>
      <name>pubPressure</name>
      <anchorfile>imu__3dm__gx4_8cpp.html</anchorfile>
      <anchor>a89cc1b17497c63d23d0924a57a47b40e</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>std::shared_ptr&lt; diagnostic_updater::Updater &gt;</type>
      <name>updater</name>
      <anchorfile>imu__3dm__gx4_8cpp.html</anchorfile>
      <anchor>a6ffe11644aee5c1dfcd197cc30b407ad</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>imu_3dm_gx4::Imu::command_error</name>
    <filename>structimu__3dm__gx4_1_1Imu_1_1command__error.html</filename>
    <member kind="function">
      <type></type>
      <name>command_error</name>
      <anchorfile>structimu__3dm__gx4_1_1Imu_1_1command__error.html</anchorfile>
      <anchor>a64a72e7528ddecb061680bf71904ff1d</anchor>
      <arglist>(const Packet &amp;p, uint8_t code)</arglist>
    </member>
    <member kind="function" protection="private">
      <type>std::string</type>
      <name>generateString</name>
      <anchorfile>structimu__3dm__gx4_1_1Imu_1_1command__error.html</anchorfile>
      <anchor>ae9f14524b6ad983095fac20ae45c63a4</anchor>
      <arglist>(const Packet &amp;p, uint8_t code)</arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>imu_3dm_gx4::Imu::DiagnosticFields</name>
    <filename>structimu__3dm__gx4_1_1Imu_1_1DiagnosticFields.html</filename>
    <member kind="function">
      <type>std::map&lt; std::string, unsigned int &gt;</type>
      <name>toMap</name>
      <anchorfile>structimu__3dm__gx4_1_1Imu_1_1DiagnosticFields.html</anchorfile>
      <anchor>a7d266c54e8339951658459f90b45dd5d</anchor>
      <arglist>() const </arglist>
    </member>
    <member kind="variable">
      <type>uint32_t</type>
      <name>comBytesRead</name>
      <anchorfile>structimu__3dm__gx4_1_1Imu_1_1DiagnosticFields.html</anchorfile>
      <anchor>a920a1e5f985aa7979d2de43841f5c35d</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>uint32_t</type>
      <name>comBytesWritten</name>
      <anchorfile>structimu__3dm__gx4_1_1Imu_1_1DiagnosticFields.html</anchorfile>
      <anchor>aacf54ba5ba69946db31dfa2ec2ea7dae</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>uint32_t</type>
      <name>comNumReadOverruns</name>
      <anchorfile>structimu__3dm__gx4_1_1Imu_1_1DiagnosticFields.html</anchorfile>
      <anchor>a0818610dfdc77ecf2ec2480b2c452880</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>uint32_t</type>
      <name>comNumWriteOverruns</name>
      <anchorfile>structimu__3dm__gx4_1_1Imu_1_1DiagnosticFields.html</anchorfile>
      <anchor>a2f2d3f4c5cbb78f61cc267fa7f69ee7b</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>uint32_t</type>
      <name>filterPacketsDropped</name>
      <anchorfile>structimu__3dm__gx4_1_1Imu_1_1DiagnosticFields.html</anchorfile>
      <anchor>acd29cc98ead982d2d94cce5bd743d3f2</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>uint8_t</type>
      <name>filterStreamEnabled</name>
      <anchorfile>structimu__3dm__gx4_1_1Imu_1_1DiagnosticFields.html</anchorfile>
      <anchor>ab7b94145dda3f03c0ac17dcaa3abcceb</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>uint32_t</type>
      <name>imuPacketsDropped</name>
      <anchorfile>structimu__3dm__gx4_1_1Imu_1_1DiagnosticFields.html</anchorfile>
      <anchor>ab58059121c2af39fda2d6ca153b6d1aa</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>uint8_t</type>
      <name>imuStreamEnabled</name>
      <anchorfile>structimu__3dm__gx4_1_1Imu_1_1DiagnosticFields.html</anchorfile>
      <anchor>a6865b94e3da54c1cbbd975c57516b636</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>uint32_t</type>
      <name>last1PPSPulse</name>
      <anchorfile>structimu__3dm__gx4_1_1Imu_1_1DiagnosticFields.html</anchorfile>
      <anchor>ab3b121c166a01ab86cb37e92713ee598</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>uint32_t</type>
      <name>lastIMUMessage</name>
      <anchorfile>structimu__3dm__gx4_1_1Imu_1_1DiagnosticFields.html</anchorfile>
      <anchor>a02f0b69b6e5811be624c4aa8b386df6f</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>uint16_t</type>
      <name>modelNumber</name>
      <anchorfile>structimu__3dm__gx4_1_1Imu_1_1DiagnosticFields.html</anchorfile>
      <anchor>ad5f9d0e5b38858774fbb2b308ce6806f</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>uint32_t</type>
      <name>num1PPSPulses</name>
      <anchorfile>structimu__3dm__gx4_1_1Imu_1_1DiagnosticFields.html</anchorfile>
      <anchor>a59dc85a708311f08a83b52e55e6b1663</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>uint32_t</type>
      <name>numIMUParseErrors</name>
      <anchorfile>structimu__3dm__gx4_1_1Imu_1_1DiagnosticFields.html</anchorfile>
      <anchor>a0bfef102468152ee7e109bea190d0842</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>uint8_t</type>
      <name>selector</name>
      <anchorfile>structimu__3dm__gx4_1_1Imu_1_1DiagnosticFields.html</anchorfile>
      <anchor>a9d2f64e3a44af63fa3779e1d785ab4a0</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>uint32_t</type>
      <name>statusFlags</name>
      <anchorfile>structimu__3dm__gx4_1_1Imu_1_1DiagnosticFields.html</anchorfile>
      <anchor>af5d6fe9b9da442e1ce631e4c4c9d86cc</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>uint32_t</type>
      <name>systemTimer</name>
      <anchorfile>structimu__3dm__gx4_1_1Imu_1_1DiagnosticFields.html</anchorfile>
      <anchor>a48ac45d8b49071c88469855a25162d04</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>uint32_t</type>
      <name>totalIMUMessages</name>
      <anchorfile>structimu__3dm__gx4_1_1Imu_1_1DiagnosticFields.html</anchorfile>
      <anchor>a510af64e0c307536a3c92e22462a4112</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>uint32_t</type>
      <name>usbBytesRead</name>
      <anchorfile>structimu__3dm__gx4_1_1Imu_1_1DiagnosticFields.html</anchorfile>
      <anchor>a72b30cb57f0d64cb388b42027f226a16</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>uint32_t</type>
      <name>usbBytesWritten</name>
      <anchorfile>structimu__3dm__gx4_1_1Imu_1_1DiagnosticFields.html</anchorfile>
      <anchor>a4c1ca1402bc033f4ce4e076542204ebe</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>uint32_t</type>
      <name>usbNumReadOverruns</name>
      <anchorfile>structimu__3dm__gx4_1_1Imu_1_1DiagnosticFields.html</anchorfile>
      <anchor>ac2701a7307055530516b01cd3ab61164</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>uint32_t</type>
      <name>usbNumWriteOverruns</name>
      <anchorfile>structimu__3dm__gx4_1_1Imu_1_1DiagnosticFields.html</anchorfile>
      <anchor>a2c6fc22ead552e724fcc93959368db4d</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>imu_3dm_gx4::Imu::FilterData</name>
    <filename>structimu__3dm__gx4_1_1Imu_1_1FilterData.html</filename>
    <member kind="enumvalue">
      <name>Quaternion</name>
      <anchorfile>structimu__3dm__gx4_1_1Imu_1_1FilterData.html</anchorfile>
      <anchor>a2184f2ce70fcb5f2ec7bf03308de72a9af13e9c13500cb7dea4372c0152493b77</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>Bias</name>
      <anchorfile>structimu__3dm__gx4_1_1Imu_1_1FilterData.html</anchorfile>
      <anchor>a2184f2ce70fcb5f2ec7bf03308de72a9af5d68bd024f69afefa3eaf4d08928a01</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>AngleUnertainty</name>
      <anchorfile>structimu__3dm__gx4_1_1Imu_1_1FilterData.html</anchorfile>
      <anchor>a2184f2ce70fcb5f2ec7bf03308de72a9a999dfd6a43c8e435d1c50d51921d4921</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>BiasUncertainty</name>
      <anchorfile>structimu__3dm__gx4_1_1Imu_1_1FilterData.html</anchorfile>
      <anchor>a2184f2ce70fcb5f2ec7bf03308de72a9adf9988d04af3273f83a4af80ad2950ac</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>AngleUnertainty</name>
      <anchorfile>structimu__3dm__gx4_1_1Imu_1_1FilterData.html</anchorfile>
      <anchor>a2184f2ce70fcb5f2ec7bf03308de72a9a999dfd6a43c8e435d1c50d51921d4921</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>Bias</name>
      <anchorfile>structimu__3dm__gx4_1_1Imu_1_1FilterData.html</anchorfile>
      <anchor>a2184f2ce70fcb5f2ec7bf03308de72a9af5d68bd024f69afefa3eaf4d08928a01</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>BiasUncertainty</name>
      <anchorfile>structimu__3dm__gx4_1_1Imu_1_1FilterData.html</anchorfile>
      <anchor>a2184f2ce70fcb5f2ec7bf03308de72a9adf9988d04af3273f83a4af80ad2950ac</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>Quaternion</name>
      <anchorfile>structimu__3dm__gx4_1_1Imu_1_1FilterData.html</anchorfile>
      <anchor>a2184f2ce70fcb5f2ec7bf03308de72a9af13e9c13500cb7dea4372c0152493b77</anchor>
      <arglist></arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>FilterData</name>
      <anchorfile>structimu__3dm__gx4_1_1Imu_1_1FilterData.html</anchorfile>
      <anchor>aa8688bde48c949e9535044736a5c6e6c</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="variable">
      <type>float</type>
      <name>angleUncertainty</name>
      <anchorfile>structimu__3dm__gx4_1_1Imu_1_1FilterData.html</anchorfile>
      <anchor>afa1267e26e79a763b18191f7be77f268</anchor>
      <arglist>[3]</arglist>
    </member>
    <member kind="variable">
      <type>uint16_t</type>
      <name>angleUncertaintyStatus</name>
      <anchorfile>structimu__3dm__gx4_1_1Imu_1_1FilterData.html</anchorfile>
      <anchor>a860d3dfcf00803b977d8431365eebb72</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>float</type>
      <name>bias</name>
      <anchorfile>structimu__3dm__gx4_1_1Imu_1_1FilterData.html</anchorfile>
      <anchor>a1d6d26f454a4e86506f924713db8d2fc</anchor>
      <arglist>[3]</arglist>
    </member>
    <member kind="variable">
      <type>uint16_t</type>
      <name>biasStatus</name>
      <anchorfile>structimu__3dm__gx4_1_1Imu_1_1FilterData.html</anchorfile>
      <anchor>a385e238d1fdb20c42a59ada5a71f472b</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>float</type>
      <name>biasUncertainty</name>
      <anchorfile>structimu__3dm__gx4_1_1Imu_1_1FilterData.html</anchorfile>
      <anchor>ab204842eddd2b89f6be726071785fe05</anchor>
      <arglist>[3]</arglist>
    </member>
    <member kind="variable">
      <type>uint16_t</type>
      <name>biasUncertaintyStatus</name>
      <anchorfile>structimu__3dm__gx4_1_1Imu_1_1FilterData.html</anchorfile>
      <anchor>a98f3d0f5b15e7bff5f667e8107a5ed46</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>unsigned int</type>
      <name>fields</name>
      <anchorfile>structimu__3dm__gx4_1_1Imu_1_1FilterData.html</anchorfile>
      <anchor>a6252f30ca3aa8a105c0257a8b74dfc38</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>float</type>
      <name>quaternion</name>
      <anchorfile>structimu__3dm__gx4_1_1Imu_1_1FilterData.html</anchorfile>
      <anchor>a3b539c42abc89d8dd47fe118fc61c852</anchor>
      <arglist>[4]</arglist>
    </member>
    <member kind="variable">
      <type>uint16_t</type>
      <name>quaternionStatus</name>
      <anchorfile>structimu__3dm__gx4_1_1Imu_1_1FilterData.html</anchorfile>
      <anchor>a45e60cde80186f2228a8fdc2b4611989</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>imu_3dm_gx4::Imu</name>
    <filename>classimu__3dm__gx4_1_1Imu.html</filename>
    <class kind="struct">imu_3dm_gx4::Imu::command_error</class>
    <class kind="struct">imu_3dm_gx4::Imu::DiagnosticFields</class>
    <class kind="struct">imu_3dm_gx4::Imu::FilterData</class>
    <class kind="struct">imu_3dm_gx4::Imu::IMUData</class>
    <class kind="struct">imu_3dm_gx4::Imu::Info</class>
    <class kind="struct">imu_3dm_gx4::Imu::io_error</class>
    <class kind="struct">imu_3dm_gx4::Imu::Packet</class>
    <class kind="struct">imu_3dm_gx4::Imu::timeout_error</class>
    <member kind="function">
      <type>struct imu_3dm_gx4::Imu::Packet</type>
      <name>__attribute__</name>
      <anchorfile>classimu__3dm__gx4_1_1Imu.html</anchorfile>
      <anchor>ad0e1259b6d33fd935138a4620dbd1687</anchor>
      <arglist>((packed))</arglist>
    </member>
    <member kind="function">
      <type>struct imu_3dm_gx4::Imu::DiagnosticFields</type>
      <name>__attribute__</name>
      <anchorfile>classimu__3dm__gx4_1_1Imu.html</anchorfile>
      <anchor>a0280b4eb1e32aa06a14e6f00a73a1f07</anchor>
      <arglist>((packed))</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>connect</name>
      <anchorfile>classimu__3dm__gx4_1_1Imu.html</anchorfile>
      <anchor>aa75eb1d6986699477f47b8acc19e0893</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>disconnect</name>
      <anchorfile>classimu__3dm__gx4_1_1Imu.html</anchorfile>
      <anchor>aa9eb35484436e7fa67aa05b13319ceb6</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>enableBiasEstimation</name>
      <anchorfile>classimu__3dm__gx4_1_1Imu.html</anchorfile>
      <anchor>ad1966f3272b848d2b32224f4f7e19da0</anchor>
      <arglist>(bool enabled)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>enableFilterStream</name>
      <anchorfile>classimu__3dm__gx4_1_1Imu.html</anchorfile>
      <anchor>aa009885497e9ff6a7539d63a8fbb3802</anchor>
      <arglist>(bool enabled)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>enableIMUStream</name>
      <anchorfile>classimu__3dm__gx4_1_1Imu.html</anchorfile>
      <anchor>a3d16d630cea1027d35899a71f12f4608</anchor>
      <arglist>(bool enabled)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>enableMeasurements</name>
      <anchorfile>classimu__3dm__gx4_1_1Imu.html</anchorfile>
      <anchor>aa4b637efe327374837868f81438d0100</anchor>
      <arglist>(bool accel, bool magnetometer)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>getDeviceInfo</name>
      <anchorfile>classimu__3dm__gx4_1_1Imu.html</anchorfile>
      <anchor>a8140618f40e0663938880cebf2e3e551</anchor>
      <arglist>(Imu::Info &amp;info)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>getDiagnosticInfo</name>
      <anchorfile>classimu__3dm__gx4_1_1Imu.html</anchorfile>
      <anchor>aaf3a72535a0fc133c6c0aa850773ae0e</anchor>
      <arglist>(Imu::DiagnosticFields &amp;fields)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>getFilterDataBaseRate</name>
      <anchorfile>classimu__3dm__gx4_1_1Imu.html</anchorfile>
      <anchor>a9ac11825d0c3f545fb08413f6c1c0345</anchor>
      <arglist>(uint16_t &amp;baseRate)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>getIMUDataBaseRate</name>
      <anchorfile>classimu__3dm__gx4_1_1Imu.html</anchorfile>
      <anchor>a33dc2e29b46b2db7c38cb6b36a38e6db</anchor>
      <arglist>(uint16_t &amp;baseRate)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>idle</name>
      <anchorfile>classimu__3dm__gx4_1_1Imu.html</anchorfile>
      <anchor>a960fe498b48cf722c0e48d19cdba694c</anchor>
      <arglist>(bool needReply=true)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>Imu</name>
      <anchorfile>classimu__3dm__gx4_1_1Imu.html</anchorfile>
      <anchor>a81d99fc9fe75e9339f2cee93e6d582e5</anchor>
      <arglist>(const std::string &amp;device, bool verbose)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>ping</name>
      <anchorfile>classimu__3dm__gx4_1_1Imu.html</anchorfile>
      <anchor>a682ac5bbe8419e6727cf81934f76989b</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>resume</name>
      <anchorfile>classimu__3dm__gx4_1_1Imu.html</anchorfile>
      <anchor>a14d1717b725dce096bf194db3030a23c</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>runOnce</name>
      <anchorfile>classimu__3dm__gx4_1_1Imu.html</anchorfile>
      <anchor>aa8568c624b8d1ee47237ad0632f3bb30</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>selectBaudRate</name>
      <anchorfile>classimu__3dm__gx4_1_1Imu.html</anchorfile>
      <anchor>a25f7fe7ce64c3bd0449aa9cac5473af6</anchor>
      <arglist>(unsigned int baud)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>setFilterDataCallback</name>
      <anchorfile>classimu__3dm__gx4_1_1Imu.html</anchorfile>
      <anchor>a3b53390c36a83894fc80e7075c310d18</anchor>
      <arglist>(const std::function&lt; void(const Imu::FilterData &amp;)&gt; &amp;)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>setFilterDataRate</name>
      <anchorfile>classimu__3dm__gx4_1_1Imu.html</anchorfile>
      <anchor>abed7d1ba6a4775f4909086509c7f99ac</anchor>
      <arglist>(uint16_t decimation, const std::bitset&lt; 4 &gt; &amp;sources)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>setHardIronOffset</name>
      <anchorfile>classimu__3dm__gx4_1_1Imu.html</anchorfile>
      <anchor>a305999c6cdb7e7402084a16a1be8b13c</anchor>
      <arglist>(float offset[3])</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>setIMUDataCallback</name>
      <anchorfile>classimu__3dm__gx4_1_1Imu.html</anchorfile>
      <anchor>a68c9e83dcdc08c8a1d414c08f0d38292</anchor>
      <arglist>(const std::function&lt; void(const Imu::IMUData &amp;)&gt; &amp;)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>setIMUDataRate</name>
      <anchorfile>classimu__3dm__gx4_1_1Imu.html</anchorfile>
      <anchor>a5ced2cac0ca535dfb516199f8e4d08d7</anchor>
      <arglist>(uint16_t decimation, const std::bitset&lt; 4 &gt; &amp;sources)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>setSoftIronMatrix</name>
      <anchorfile>classimu__3dm__gx4_1_1Imu.html</anchorfile>
      <anchor>a5837658fd489a4b4d80b6577c353e114</anchor>
      <arglist>(float matrix[9])</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual</type>
      <name>~Imu</name>
      <anchorfile>classimu__3dm__gx4_1_1Imu.html</anchorfile>
      <anchor>a0660138107b74ceb001a5691eb1db4d0</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="variable">
      <type>struct imu_3dm_gx4::Imu::Info</type>
      <name>__attribute__</name>
      <anchorfile>classimu__3dm__gx4_1_1Imu.html</anchorfile>
      <anchor>a07ec1ed38f2a329105a1134ccfd4f783</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>struct imu_3dm_gx4::Imu::IMUData</type>
      <name>__attribute__</name>
      <anchorfile>classimu__3dm__gx4_1_1Imu.html</anchorfile>
      <anchor>aaeca500a88c65185c79644c6b904b9af</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue" protection="private">
      <name>Idle</name>
      <anchorfile>classimu__3dm__gx4_1_1Imu.html</anchorfile>
      <anchor>a1c57ef050a28d731fc77b30016f4b355a386b02206fae445ebc1ba062324af2df</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue" protection="private">
      <name>Reading</name>
      <anchorfile>classimu__3dm__gx4_1_1Imu.html</anchorfile>
      <anchor>a1c57ef050a28d731fc77b30016f4b355aa14af3b5e3ae826e33d98cae6cff0374</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue" protection="private">
      <name>Idle</name>
      <anchorfile>classimu__3dm__gx4_1_1Imu.html</anchorfile>
      <anchor>a1c57ef050a28d731fc77b30016f4b355a386b02206fae445ebc1ba062324af2df</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue" protection="private">
      <name>Reading</name>
      <anchorfile>classimu__3dm__gx4_1_1Imu.html</anchorfile>
      <anchor>a1c57ef050a28d731fc77b30016f4b355aa14af3b5e3ae826e33d98cae6cff0374</anchor>
      <arglist></arglist>
    </member>
    <member kind="function" protection="private">
      <type>std::size_t</type>
      <name>handleByte</name>
      <anchorfile>classimu__3dm__gx4_1_1Imu.html</anchorfile>
      <anchor>a088001ee877321582cda6bd10e1689fc</anchor>
      <arglist>(const uint8_t &amp;byte, bool &amp;found)</arglist>
    </member>
    <member kind="function" protection="private">
      <type>int</type>
      <name>handleRead</name>
      <anchorfile>classimu__3dm__gx4_1_1Imu.html</anchorfile>
      <anchor>a9f57adf439eb2af681a127bd9996adb0</anchor>
      <arglist>(size_t)</arglist>
    </member>
    <member kind="function" protection="private">
      <type></type>
      <name>Imu</name>
      <anchorfile>classimu__3dm__gx4_1_1Imu.html</anchorfile>
      <anchor>a2398c943c4b34976edf0f32f1d796acb</anchor>
      <arglist>(const Imu &amp;)=delete</arglist>
    </member>
    <member kind="function" protection="private">
      <type>Imu &amp;</type>
      <name>operator=</name>
      <anchorfile>classimu__3dm__gx4_1_1Imu.html</anchorfile>
      <anchor>a57811e025a195f95d67bb699ed59af22</anchor>
      <arglist>(const Imu &amp;)=delete</arglist>
    </member>
    <member kind="function" protection="private">
      <type>int</type>
      <name>pollInput</name>
      <anchorfile>classimu__3dm__gx4_1_1Imu.html</anchorfile>
      <anchor>aecbbed931dea65f3970ea5222a810a76</anchor>
      <arglist>(unsigned int to)</arglist>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>processPacket</name>
      <anchorfile>classimu__3dm__gx4_1_1Imu.html</anchorfile>
      <anchor>ada10c64b1c06c912efe1ae2cf0e2219e</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>receiveResponse</name>
      <anchorfile>classimu__3dm__gx4_1_1Imu.html</anchorfile>
      <anchor>a379703026c7983c293a0441eefce81d4</anchor>
      <arglist>(const Packet &amp;command, unsigned int to)</arglist>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>sendCommand</name>
      <anchorfile>classimu__3dm__gx4_1_1Imu.html</anchorfile>
      <anchor>a4d00ed03c800f2776639fdf63143b1e6</anchor>
      <arglist>(const Packet &amp;p, bool readReply=true)</arglist>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>sendPacket</name>
      <anchorfile>classimu__3dm__gx4_1_1Imu.html</anchorfile>
      <anchor>abfd7fe6f80d57195a413a5c14bf9e1cc</anchor>
      <arglist>(const Packet &amp;p, unsigned int to)</arglist>
    </member>
    <member kind="function" protection="private">
      <type>bool</type>
      <name>termiosBaudRate</name>
      <anchorfile>classimu__3dm__gx4_1_1Imu.html</anchorfile>
      <anchor>ab5ffb074b89dff467f709efcfce07c73</anchor>
      <arglist>(unsigned int baud)</arglist>
    </member>
    <member kind="function" protection="private">
      <type>int</type>
      <name>writePacket</name>
      <anchorfile>classimu__3dm__gx4_1_1Imu.html</anchorfile>
      <anchor>a21b8ecb272327a8a2c2588f68f505b22</anchor>
      <arglist>(const Packet &amp;p, unsigned int to)</arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::vector&lt; uint8_t &gt;</type>
      <name>buffer_</name>
      <anchorfile>classimu__3dm__gx4_1_1Imu.html</anchorfile>
      <anchor>abd4a18d4790eb73b4b433c7694a4b16a</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>const std::string</type>
      <name>device_</name>
      <anchorfile>classimu__3dm__gx4_1_1Imu.html</anchorfile>
      <anchor>a1339064f9ec657282177708fa03142a7</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>size_t</type>
      <name>dstIndex_</name>
      <anchorfile>classimu__3dm__gx4_1_1Imu.html</anchorfile>
      <anchor>a79c538dfd4077060e09473b1f8f25c6e</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>int</type>
      <name>fd_</name>
      <anchorfile>classimu__3dm__gx4_1_1Imu.html</anchorfile>
      <anchor>a0b844c9f77ce79c44dca14a0e99e58d4</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::function&lt; void(const Imu::FilterData &amp;)&gt;</type>
      <name>filterDataCallback_</name>
      <anchorfile>classimu__3dm__gx4_1_1Imu.html</anchorfile>
      <anchor>a831f8a3099fc6471119d9923773adfe6</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::function&lt; void(const Imu::IMUData &amp;)&gt;</type>
      <name>imuDataCallback_</name>
      <anchorfile>classimu__3dm__gx4_1_1Imu.html</anchorfile>
      <anchor>aba2cba71a5019f1f8b34d8f2df7b43ce</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>Packet</type>
      <name>packet_</name>
      <anchorfile>classimu__3dm__gx4_1_1Imu.html</anchorfile>
      <anchor>ac4386b4572e47aa5e1193534510658e2</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::deque&lt; uint8_t &gt;</type>
      <name>queue_</name>
      <anchorfile>classimu__3dm__gx4_1_1Imu.html</anchorfile>
      <anchor>aaa3dafa6916f2cbfca8a83b8c927a243</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>unsigned int</type>
      <name>rwTimeout_</name>
      <anchorfile>classimu__3dm__gx4_1_1Imu.html</anchorfile>
      <anchor>a9a94ae1bfa6a390ee5db718268ca16dc</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>size_t</type>
      <name>srcIndex_</name>
      <anchorfile>classimu__3dm__gx4_1_1Imu.html</anchorfile>
      <anchor>aff2ac2b0f717a653fbed80bafdb124cb</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>enum imu_3dm_gx4::Imu::@0</type>
      <name>state_</name>
      <anchorfile>classimu__3dm__gx4_1_1Imu.html</anchorfile>
      <anchor>a9a8f436c90eab5eb369e90de29a5cde1</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>const bool</type>
      <name>verbose_</name>
      <anchorfile>classimu__3dm__gx4_1_1Imu.html</anchorfile>
      <anchor>a166be6baa3dc0c004a5ee7bc6a1b4ea3</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>imu_3dm_gx4::Imu::IMUData</name>
    <filename>structimu__3dm__gx4_1_1Imu_1_1IMUData.html</filename>
    <member kind="enumvalue">
      <name>Accelerometer</name>
      <anchorfile>structimu__3dm__gx4_1_1Imu_1_1IMUData.html</anchorfile>
      <anchor>ad1e1106aaed9bfc2a7e200f09512b84caee6dacefdc3825ade3445f49b0298585</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>Gyroscope</name>
      <anchorfile>structimu__3dm__gx4_1_1Imu_1_1IMUData.html</anchorfile>
      <anchor>ad1e1106aaed9bfc2a7e200f09512b84ca445779d5dc7eb5cc337a94844eb49660</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>Magnetometer</name>
      <anchorfile>structimu__3dm__gx4_1_1Imu_1_1IMUData.html</anchorfile>
      <anchor>ad1e1106aaed9bfc2a7e200f09512b84ca81b3ce6ed6be9cd2829b2687ef4ad41a</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>Barometer</name>
      <anchorfile>structimu__3dm__gx4_1_1Imu_1_1IMUData.html</anchorfile>
      <anchor>ad1e1106aaed9bfc2a7e200f09512b84caca2d3d5ae76c0ef548d3e51bdeed607f</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>Accelerometer</name>
      <anchorfile>structimu__3dm__gx4_1_1Imu_1_1IMUData.html</anchorfile>
      <anchor>ad1e1106aaed9bfc2a7e200f09512b84caee6dacefdc3825ade3445f49b0298585</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>Barometer</name>
      <anchorfile>structimu__3dm__gx4_1_1Imu_1_1IMUData.html</anchorfile>
      <anchor>ad1e1106aaed9bfc2a7e200f09512b84caca2d3d5ae76c0ef548d3e51bdeed607f</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>Gyroscope</name>
      <anchorfile>structimu__3dm__gx4_1_1Imu_1_1IMUData.html</anchorfile>
      <anchor>ad1e1106aaed9bfc2a7e200f09512b84ca445779d5dc7eb5cc337a94844eb49660</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>Magnetometer</name>
      <anchorfile>structimu__3dm__gx4_1_1Imu_1_1IMUData.html</anchorfile>
      <anchor>ad1e1106aaed9bfc2a7e200f09512b84ca81b3ce6ed6be9cd2829b2687ef4ad41a</anchor>
      <arglist></arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>IMUData</name>
      <anchorfile>structimu__3dm__gx4_1_1Imu_1_1IMUData.html</anchorfile>
      <anchor>adeedd27320e3344aa33ee855338ff24a</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="variable">
      <type>float</type>
      <name>accel</name>
      <anchorfile>structimu__3dm__gx4_1_1Imu_1_1IMUData.html</anchorfile>
      <anchor>a648cfae9bb25c0d947a1600d7e00edb6</anchor>
      <arglist>[3]</arglist>
    </member>
    <member kind="variable">
      <type>unsigned int</type>
      <name>fields</name>
      <anchorfile>structimu__3dm__gx4_1_1Imu_1_1IMUData.html</anchorfile>
      <anchor>a19e47115f6316ad37181ffbd2103b7fc</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>float</type>
      <name>gyro</name>
      <anchorfile>structimu__3dm__gx4_1_1Imu_1_1IMUData.html</anchorfile>
      <anchor>a1d56e12fb5b535a2f1e68b2186d7665f</anchor>
      <arglist>[3]</arglist>
    </member>
    <member kind="variable">
      <type>float</type>
      <name>mag</name>
      <anchorfile>structimu__3dm__gx4_1_1Imu_1_1IMUData.html</anchorfile>
      <anchor>a2b67bb7e3a536e84986bd245bb75e2e5</anchor>
      <arglist>[3]</arglist>
    </member>
    <member kind="variable">
      <type>float</type>
      <name>pressure</name>
      <anchorfile>structimu__3dm__gx4_1_1Imu_1_1IMUData.html</anchorfile>
      <anchor>a167ecd39dafccdfdfe4a39edaf2f01ee</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>imu_3dm_gx4::Imu::Info</name>
    <filename>structimu__3dm__gx4_1_1Imu_1_1Info.html</filename>
    <member kind="function">
      <type>std::map&lt; std::string, std::string &gt;</type>
      <name>toMap</name>
      <anchorfile>structimu__3dm__gx4_1_1Imu_1_1Info.html</anchorfile>
      <anchor>a72e1ec605816b1ed678c87ef7be5b80a</anchor>
      <arglist>() const </arglist>
    </member>
    <member kind="variable">
      <type>std::string</type>
      <name>deviceOptions</name>
      <anchorfile>structimu__3dm__gx4_1_1Imu_1_1Info.html</anchorfile>
      <anchor>aaf56ae4c49a6735f1db0e47c18f6740f</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>uint16_t</type>
      <name>firmwareVersion</name>
      <anchorfile>structimu__3dm__gx4_1_1Imu_1_1Info.html</anchorfile>
      <anchor>a99f4e0930f81fe0fd9ec8782aa9d5442</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>std::string</type>
      <name>lotNumber</name>
      <anchorfile>structimu__3dm__gx4_1_1Imu_1_1Info.html</anchorfile>
      <anchor>ab058908a8b23a81e61401f031c26cd7c</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>std::string</type>
      <name>modelName</name>
      <anchorfile>structimu__3dm__gx4_1_1Imu_1_1Info.html</anchorfile>
      <anchor>a98d889fa9ee3f9c606ed0ede070084cf</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>std::string</type>
      <name>modelNumber</name>
      <anchorfile>structimu__3dm__gx4_1_1Imu_1_1Info.html</anchorfile>
      <anchor>aac502febc839c4bd5f9f5e879fd56abc</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>std::string</type>
      <name>serialNumber</name>
      <anchorfile>structimu__3dm__gx4_1_1Imu_1_1Info.html</anchorfile>
      <anchor>aba81092e0e80b3280eefd3c92a669b7f</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>imu_3dm_gx4::Imu::io_error</name>
    <filename>structimu__3dm__gx4_1_1Imu_1_1io__error.html</filename>
    <member kind="function">
      <type></type>
      <name>io_error</name>
      <anchorfile>structimu__3dm__gx4_1_1Imu_1_1io__error.html</anchorfile>
      <anchor>aff1e7b4221a4f72cee870c1e8707c640</anchor>
      <arglist>(const std::string &amp;desc)</arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>imu_3dm_gx4::Imu::Packet</name>
    <filename>structimu__3dm__gx4_1_1Imu_1_1Packet.html</filename>
    <member kind="function">
      <type>int</type>
      <name>ackErrorCodeFor</name>
      <anchorfile>structimu__3dm__gx4_1_1Imu_1_1Packet.html</anchorfile>
      <anchor>aa6c65a9910e5ff0d7c2aa5991689c7f4</anchor>
      <arglist>(const Packet &amp;command) const </arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>calcChecksum</name>
      <anchorfile>structimu__3dm__gx4_1_1Imu_1_1Packet.html</anchorfile>
      <anchor>ad943156ed6553b287c27722b2b1ece04</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>bool</type>
      <name>isFilterData</name>
      <anchorfile>structimu__3dm__gx4_1_1Imu_1_1Packet.html</anchorfile>
      <anchor>a7485f831a2ba34c9405a3ebbda2b895c</anchor>
      <arglist>() const </arglist>
    </member>
    <member kind="function">
      <type>bool</type>
      <name>isIMUData</name>
      <anchorfile>structimu__3dm__gx4_1_1Imu_1_1Packet.html</anchorfile>
      <anchor>a95b5ab864b0eea3326d197fb8232d2e1</anchor>
      <arglist>() const </arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>Packet</name>
      <anchorfile>structimu__3dm__gx4_1_1Imu_1_1Packet.html</anchorfile>
      <anchor>a38263cd14ff6843cac70030b2b7e1ba0</anchor>
      <arglist>(uint8_t desc=0)</arglist>
    </member>
    <member kind="function">
      <type>std::string</type>
      <name>toString</name>
      <anchorfile>structimu__3dm__gx4_1_1Imu_1_1Packet.html</anchorfile>
      <anchor>a20ad7ff6f9cc7cc806252f75c4e3445a</anchor>
      <arglist>() const </arglist>
    </member>
    <member kind="variable">
      <type>uint8_t</type>
      <name>checkLSB</name>
      <anchorfile>structimu__3dm__gx4_1_1Imu_1_1Packet.html</anchorfile>
      <anchor>a5f7be0871594bc4d7dd04b0c32470d35</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>uint8_t</type>
      <name>checkMSB</name>
      <anchorfile>structimu__3dm__gx4_1_1Imu_1_1Packet.html</anchorfile>
      <anchor>aa20b242a74f2835296ef67f8a16b2caa</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>uint16_t</type>
      <name>checksum</name>
      <anchorfile>structimu__3dm__gx4_1_1Imu_1_1Packet.html</anchorfile>
      <anchor>a1486ac94aee95b255e46186fc5e21c01</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>uint8_t</type>
      <name>descriptor</name>
      <anchorfile>structimu__3dm__gx4_1_1Imu_1_1Packet.html</anchorfile>
      <anchor>a43f690ce31ab8e77d03128324204eb5e</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>uint8_t</type>
      <name>length</name>
      <anchorfile>structimu__3dm__gx4_1_1Imu_1_1Packet.html</anchorfile>
      <anchor>a3517cda21d2d716cc34f0f6d685c4810</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>uint8_t</type>
      <name>payload</name>
      <anchorfile>structimu__3dm__gx4_1_1Imu_1_1Packet.html</anchorfile>
      <anchor>ac0f82e91b18b37dd8f2c07ae22a5748f</anchor>
      <arglist>[255]</arglist>
    </member>
    <member kind="variable">
      <type>uint16_t</type>
      <name>sync</name>
      <anchorfile>structimu__3dm__gx4_1_1Imu_1_1Packet.html</anchorfile>
      <anchor>a7ee1c60cbb93909e9dd2a6fe45accf60</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>uint8_t</type>
      <name>syncLSB</name>
      <anchorfile>structimu__3dm__gx4_1_1Imu_1_1Packet.html</anchorfile>
      <anchor>af61633f7ec0d88a40a37733ad8826ce2</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>uint8_t</type>
      <name>syncMSB</name>
      <anchorfile>structimu__3dm__gx4_1_1Imu_1_1Packet.html</anchorfile>
      <anchor>ac949e5d1249416ca87ab0d584b29398a</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" static="yes">
      <type>static constexpr uint8_t</type>
      <name>kHeaderLength</name>
      <anchorfile>structimu__3dm__gx4_1_1Imu_1_1Packet.html</anchorfile>
      <anchor>a1f4e298924f9f58babc43b93cc85a47c</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" static="yes">
      <type>static constexpr uint8_t</type>
      <name>kSyncLSB</name>
      <anchorfile>structimu__3dm__gx4_1_1Imu_1_1Packet.html</anchorfile>
      <anchor>ab9b1ccb7b8eeb7d425206e4711e9dcbc</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" static="yes">
      <type>static constexpr uint8_t</type>
      <name>kSyncMSB</name>
      <anchorfile>structimu__3dm__gx4_1_1Imu_1_1Packet.html</anchorfile>
      <anchor>a97ffbb6ce863dd7607c8c49eceb3feda</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>PacketDecoder</name>
    <filename>classPacketDecoder.html</filename>
    <member kind="function">
      <type>void</type>
      <name>advance</name>
      <anchorfile>classPacketDecoder.html</anchorfile>
      <anchor>a54a14c39db65b37f37dae7196306ffd1</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>bool</type>
      <name>advanceTo</name>
      <anchorfile>classPacketDecoder.html</anchorfile>
      <anchor>a393eef6f2c642a6d8e2eb44217e03856</anchor>
      <arglist>(uint8_t field)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>extract</name>
      <anchorfile>classPacketDecoder.html</anchorfile>
      <anchor>ae672e808c0fc7f9c91a331c83e69885c</anchor>
      <arglist>(size_t count, T *output)</arglist>
    </member>
    <member kind="function">
      <type>int</type>
      <name>fieldDescriptor</name>
      <anchorfile>classPacketDecoder.html</anchorfile>
      <anchor>ab010d05ecac0615256aae3d52d5fd94d</anchor>
      <arglist>() const </arglist>
    </member>
    <member kind="function">
      <type>bool</type>
      <name>fieldIsAckOrNack</name>
      <anchorfile>classPacketDecoder.html</anchorfile>
      <anchor>a2767e2191a68c199b1315f6d1d31fafc</anchor>
      <arglist>() const </arglist>
    </member>
    <member kind="function">
      <type>int</type>
      <name>fieldLength</name>
      <anchorfile>classPacketDecoder.html</anchorfile>
      <anchor>a7c3e934a484bfcb839a9950bcf9b8778</anchor>
      <arglist>() const </arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>PacketDecoder</name>
      <anchorfile>classPacketDecoder.html</anchorfile>
      <anchor>a9e3ae888549e3c8605c00802d3f81bc9</anchor>
      <arglist>(const Imu::Packet &amp;p)</arglist>
    </member>
    <member kind="variable" protection="private">
      <type>uint8_t</type>
      <name>fs_</name>
      <anchorfile>classPacketDecoder.html</anchorfile>
      <anchor>a45aad9d21173051e7dd3354bbb240a45</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>const Imu::Packet &amp;</type>
      <name>p_</name>
      <anchorfile>classPacketDecoder.html</anchorfile>
      <anchor>a3a2951267340694dc5128c66e0622d93</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>uint8_t</type>
      <name>pos_</name>
      <anchorfile>classPacketDecoder.html</anchorfile>
      <anchor>ab99f07f1d0b8536ab620fe0918b1abdc</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>PacketEncoder</name>
    <filename>classPacketEncoder.html</filename>
    <member kind="function">
      <type>void</type>
      <name>append</name>
      <anchorfile>classPacketEncoder.html</anchorfile>
      <anchor>a213dcaff2d5b122a91e0491f715ba8c1</anchor>
      <arglist>(const Ts &amp;...args)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>beginField</name>
      <anchorfile>classPacketEncoder.html</anchorfile>
      <anchor>ae647a0fd42c1e9373ec29e04cbbfa38d</anchor>
      <arglist>(uint8_t desc)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>endField</name>
      <anchorfile>classPacketEncoder.html</anchorfile>
      <anchor>a4843a25d3e2db1c06f5bb2e81bfa28ab</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>PacketEncoder</name>
      <anchorfile>classPacketEncoder.html</anchorfile>
      <anchor>a5978b018b64ce066f29c1ef081738f4c</anchor>
      <arglist>(Imu::Packet &amp;p)</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual</type>
      <name>~PacketEncoder</name>
      <anchorfile>classPacketEncoder.html</anchorfile>
      <anchor>ab5431caca29da5721336dd7f198b9c9b</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="variable" protection="private">
      <type>bool</type>
      <name>enc_</name>
      <anchorfile>classPacketEncoder.html</anchorfile>
      <anchor>adfd94ea98cb509ce3912fe7111bf592b</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>uint8_t</type>
      <name>fs_</name>
      <anchorfile>classPacketEncoder.html</anchorfile>
      <anchor>ade51d1d265d6a499865703ed3ae4a62e</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>Imu::Packet &amp;</type>
      <name>p_</name>
      <anchorfile>classPacketEncoder.html</anchorfile>
      <anchor>a2d3c255209818c3f22eca453c4b105ba</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>imu_3dm_gx4::Imu::timeout_error</name>
    <filename>structimu__3dm__gx4_1_1Imu_1_1timeout__error.html</filename>
    <member kind="function">
      <type></type>
      <name>timeout_error</name>
      <anchorfile>structimu__3dm__gx4_1_1Imu_1_1timeout__error.html</anchorfile>
      <anchor>aaccc7fc985f73ae1f8198f5fc0792a29</anchor>
      <arglist>(bool write, unsigned int to)</arglist>
    </member>
    <member kind="function" protection="private">
      <type>std::string</type>
      <name>generateString</name>
      <anchorfile>structimu__3dm__gx4_1_1Imu_1_1timeout__error.html</anchorfile>
      <anchor>a59325b9b52e0854afb6f1966df9b6455</anchor>
      <arglist>(bool write, unsigned int to)</arglist>
    </member>
  </compound>
  <compound kind="namespace">
    <name>imu_3dm_gx4</name>
    <filename>namespaceimu__3dm__gx4.html</filename>
    <class kind="class">imu_3dm_gx4::Imu</class>
  </compound>
</tagfile>
