<?xml version='1.0' encoding='UTF-8' standalone='yes' ?>
<tagfile>
  <compound kind="file">
    <name>console_bridge_compat.h</name>
    <path>/tmp/ws/src/mavros/libmavconn/include/mavconn/</path>
    <filename>console__bridge__compat_8h.html</filename>
    <member kind="define">
      <type>#define</type>
      <name>CONSOLE_BRIDGE_logDebug</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gaaf4116dec671bee3f8f1445f6c6a3ebe</anchor>
      <arglist>(fmt,...)</arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>CONSOLE_BRIDGE_logError</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga78bfb8423a8c11242fba38b8b3952aa7</anchor>
      <arglist>(fmt,...)</arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>CONSOLE_BRIDGE_logInform</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gaa587fd17781bdf24e813cb3c43eb8ff2</anchor>
      <arglist>(fmt,...)</arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>CONSOLE_BRIDGE_logWarn</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga57a50f2283a7b43395b93a31ac90461c</anchor>
      <arglist>(fmt,...)</arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>interface.cpp</name>
    <path>/tmp/ws/src/mavros/libmavconn/src/</path>
    <filename>interface_8cpp.html</filename>
    <includes id="console__bridge__compat_8h" name="console_bridge_compat.h" local="no" imported="no">mavconn/console_bridge_compat.h</includes>
    <includes id="interface_8h" name="interface.h" local="no" imported="no">mavconn/interface.h</includes>
    <includes id="msgbuffer_8h" name="msgbuffer.h" local="no" imported="no">mavconn/msgbuffer.h</includes>
    <includes id="serial_8h" name="serial.h" local="no" imported="no">mavconn/serial.h</includes>
    <includes id="udp_8h" name="udp.h" local="no" imported="no">mavconn/udp.h</includes>
    <includes id="tcp_8h" name="tcp.h" local="no" imported="no">mavconn/tcp.h</includes>
    <namespace>mavconn</namespace>
    <member kind="define">
      <type>#define</type>
      <name>PFX</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga176e4c39a833f4d01f0ecd322c0f4343</anchor>
      <arglist></arglist>
    </member>
    <member kind="function" static="yes">
      <type>static void</type>
      <name>url_parse_host</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gae58851f2a11f5372dc1cb8d4e8295589</anchor>
      <arglist>(std::string host, std::string &amp;host_out, int &amp;port_out, const std::string def_host, const int def_port)</arglist>
    </member>
    <member kind="function" static="yes">
      <type>static void</type>
      <name>url_parse_query</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gae4c87353e8213c84c3b094d884035fbc</anchor>
      <arglist>(std::string query, uint8_t &amp;sysid, uint8_t &amp;compid)</arglist>
    </member>
    <member kind="function" static="yes">
      <type>static MAVConnInterface::Ptr</type>
      <name>url_parse_serial</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gaeaa9e04064e3ebc7ff1bfc46c0eb1e97</anchor>
      <arglist>(std::string path, std::string query, uint8_t system_id, uint8_t component_id, bool hwflow)</arglist>
    </member>
    <member kind="function" static="yes">
      <type>static MAVConnInterface::Ptr</type>
      <name>url_parse_tcp_client</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga50392e3a8260dd21671883ad67a1176c</anchor>
      <arglist>(std::string host, std::string query, uint8_t system_id, uint8_t component_id)</arglist>
    </member>
    <member kind="function" static="yes">
      <type>static MAVConnInterface::Ptr</type>
      <name>url_parse_tcp_server</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga859646efce0b3d6f7fefe7ca3f443af7</anchor>
      <arglist>(std::string host, std::string query, uint8_t system_id, uint8_t component_id)</arglist>
    </member>
    <member kind="function" static="yes">
      <type>static MAVConnInterface::Ptr</type>
      <name>url_parse_udp</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gaa9774724a37df446436776ec2ce7b89c</anchor>
      <arglist>(std::string hosts, std::string query, uint8_t system_id, uint8_t component_id, bool is_udpb, bool permanent_broadcast)</arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>interface.h</name>
    <path>/tmp/ws/src/mavros/libmavconn/include/mavconn/</path>
    <filename>interface_8h.html</filename>
    <class kind="class">mavconn::DeviceError</class>
    <class kind="struct">mavconn::MAVConnInterface::IOStat</class>
    <class kind="class">mavconn::MAVConnInterface</class>
    <namespace>mavconn</namespace>
    <member kind="typedef">
      <type>std::lock_guard&lt; std::recursive_mutex &gt;</type>
      <name>lock_guard</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga46feb20496b24d733abd4e68ef29bc90</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef">
      <type>std::chrono::steady_clock</type>
      <name>steady_clock</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gab7fe4e29d643505aafb15c532a9338d3</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumeration">
      <type></type>
      <name>Framing</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gac93e6f8262bcc6008b4882ae6213f494</anchor>
      <arglist></arglist>
      <enumvalue file="group__mavconn.html" anchor="ggac93e6f8262bcc6008b4882ae6213f494a5ed4e9858ad8d239145ef285b6210a00">incomplete</enumvalue>
      <enumvalue file="group__mavconn.html" anchor="ggac93e6f8262bcc6008b4882ae6213f494a444bcb3a3fcf8389296c49467f27e1d6">ok</enumvalue>
      <enumvalue file="group__mavconn.html" anchor="ggac93e6f8262bcc6008b4882ae6213f494abaf1c3d199daf5f5b444664b81a08749">bad_crc</enumvalue>
      <enumvalue file="group__mavconn.html" anchor="ggac93e6f8262bcc6008b4882ae6213f494adbfa03ea5df0b8979551ed84f97018e9">bad_signature</enumvalue>
    </member>
    <member kind="enumeration">
      <type></type>
      <name>Protocol</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gae4e5498ebfd232dcad75be0f8a168ff3</anchor>
      <arglist></arglist>
      <enumvalue file="group__mavconn.html" anchor="ggae4e5498ebfd232dcad75be0f8a168ff3a3ffc64fa10df9a884ba82f3e49e8282e">V10</enumvalue>
      <enumvalue file="group__mavconn.html" anchor="ggae4e5498ebfd232dcad75be0f8a168ff3aba9161e2ae9f747e361fa824ca0d0337">V20</enumvalue>
    </member>
    <member kind="variable" static="yes">
      <type>static constexpr auto</type>
      <name>MAV_COMP_ID_UDP_BRIDGE</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gaaf2017cbed1a6863f1c7dde68ff01baf</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>msgbuffer.h</name>
    <path>/tmp/ws/src/mavros/libmavconn/include/mavconn/</path>
    <filename>msgbuffer_8h.html</filename>
    <class kind="struct">mavconn::MsgBuffer</class>
    <namespace>mavconn</namespace>
  </compound>
  <compound kind="file">
    <name>serial.cpp</name>
    <path>/tmp/ws/src/mavros/libmavconn/src/</path>
    <filename>serial_8cpp.html</filename>
    <includes id="console__bridge__compat_8h" name="console_bridge_compat.h" local="no" imported="no">mavconn/console_bridge_compat.h</includes>
    <includes id="thread__utils_8h" name="thread_utils.h" local="no" imported="no">mavconn/thread_utils.h</includes>
    <includes id="serial_8h" name="serial.h" local="no" imported="no">mavconn/serial.h</includes>
    <namespace>mavconn</namespace>
    <member kind="define">
      <type>#define</type>
      <name>PFX</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga176e4c39a833f4d01f0ecd322c0f4343</anchor>
      <arglist></arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>PFXd</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga9aa83a322c418c99083b35fddccd39e3</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>serial.h</name>
    <path>/tmp/ws/src/mavros/libmavconn/include/mavconn/</path>
    <filename>serial_8h.html</filename>
    <includes id="interface_8h" name="interface.h" local="no" imported="no">mavconn/interface.h</includes>
    <includes id="msgbuffer_8h" name="msgbuffer.h" local="no" imported="no">mavconn/msgbuffer.h</includes>
    <class kind="class">mavconn::MAVConnSerial</class>
    <namespace>mavconn</namespace>
  </compound>
  <compound kind="file">
    <name>tcp.cpp</name>
    <path>/tmp/ws/src/mavros/libmavconn/src/</path>
    <filename>tcp_8cpp.html</filename>
    <includes id="console__bridge__compat_8h" name="console_bridge_compat.h" local="no" imported="no">mavconn/console_bridge_compat.h</includes>
    <includes id="thread__utils_8h" name="thread_utils.h" local="no" imported="no">mavconn/thread_utils.h</includes>
    <includes id="tcp_8h" name="tcp.h" local="no" imported="no">mavconn/tcp.h</includes>
    <namespace>mavconn</namespace>
    <member kind="define">
      <type>#define</type>
      <name>GET_IO_SERVICE</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gae4e1c9b3895a9efca6bf613707050d98</anchor>
      <arglist>(s)</arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>PFX</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga176e4c39a833f4d01f0ecd322c0f4343</anchor>
      <arglist></arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>PFXd</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga9aa83a322c418c99083b35fddccd39e3</anchor>
      <arglist></arglist>
    </member>
    <member kind="function" static="yes">
      <type>static bool</type>
      <name>resolve_address_tcp</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gac60b8995acae39e0d83d62b55323a74c</anchor>
      <arglist>(io_service &amp;io, size_t chan, std::string host, unsigned short port, tcp::endpoint &amp;ep)</arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>tcp.h</name>
    <path>/tmp/ws/src/mavros/libmavconn/include/mavconn/</path>
    <filename>tcp_8h.html</filename>
    <includes id="interface_8h" name="interface.h" local="no" imported="no">mavconn/interface.h</includes>
    <includes id="msgbuffer_8h" name="msgbuffer.h" local="no" imported="no">mavconn/msgbuffer.h</includes>
    <class kind="class">mavconn::MAVConnTCPClient</class>
    <class kind="class">mavconn::MAVConnTCPServer</class>
    <namespace>mavconn</namespace>
  </compound>
  <compound kind="file">
    <name>thread_utils.h</name>
    <path>/tmp/ws/src/mavros/libmavconn/include/mavconn/</path>
    <filename>thread__utils_8h.html</filename>
    <namespace>mavconn</namespace>
    <namespace>mavconn::utils</namespace>
    <member kind="function">
      <type>std::string</type>
      <name>format</name>
      <anchorfile>group__mavutils.html</anchorfile>
      <anchor>ga0d03da68919138512c198995276dd9ea</anchor>
      <arglist>(const std::string &amp;fmt, Args ... args)</arglist>
    </member>
    <member kind="function">
      <type>constexpr size_t</type>
      <name>operator&quot;&quot;_KiB</name>
      <anchorfile>group__mavutils.html</anchorfile>
      <anchor>ga301ff0ee568776aa543ccaff3c1c039c</anchor>
      <arglist>(unsigned long long sz)</arglist>
    </member>
    <member kind="function">
      <type>bool</type>
      <name>set_this_thread_name</name>
      <anchorfile>group__mavutils.html</anchorfile>
      <anchor>gac5ea11f12ae2183df1dc4a810ff0a87b</anchor>
      <arglist>(const std::string &amp;name, Args &amp;&amp;... args)</arglist>
    </member>
    <member kind="function">
      <type>const std::string</type>
      <name>to_string_ss</name>
      <anchorfile>group__mavutils.html</anchorfile>
      <anchor>ga6c132876dd85249684a7935fe0bc8f51</anchor>
      <arglist>(T &amp;obj)</arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>udp.cpp</name>
    <path>/tmp/ws/src/mavros/libmavconn/src/</path>
    <filename>udp_8cpp.html</filename>
    <includes id="console__bridge__compat_8h" name="console_bridge_compat.h" local="no" imported="no">mavconn/console_bridge_compat.h</includes>
    <includes id="thread__utils_8h" name="thread_utils.h" local="no" imported="no">mavconn/thread_utils.h</includes>
    <includes id="udp_8h" name="udp.h" local="no" imported="no">mavconn/udp.h</includes>
    <namespace>mavconn</namespace>
    <member kind="define">
      <type>#define</type>
      <name>PFX</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga176e4c39a833f4d01f0ecd322c0f4343</anchor>
      <arglist></arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>PFXd</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga9aa83a322c418c99083b35fddccd39e3</anchor>
      <arglist></arglist>
    </member>
    <member kind="function" static="yes">
      <type>static bool</type>
      <name>resolve_address_udp</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga6fa5da19f86d5bfb4422a05c15873331</anchor>
      <arglist>(io_service &amp;io, size_t chan, std::string host, unsigned short port, udp::endpoint &amp;ep)</arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>udp.h</name>
    <path>/tmp/ws/src/mavros/libmavconn/include/mavconn/</path>
    <filename>udp_8h.html</filename>
    <includes id="interface_8h" name="interface.h" local="no" imported="no">mavconn/interface.h</includes>
    <includes id="msgbuffer_8h" name="msgbuffer.h" local="no" imported="no">mavconn/msgbuffer.h</includes>
    <class kind="class">mavconn::MAVConnUDP</class>
    <namespace>mavconn</namespace>
  </compound>
  <compound kind="class">
    <name>mavconn::DeviceError</name>
    <filename>classmavconn_1_1DeviceError.html</filename>
    <member kind="function">
      <type></type>
      <name>DeviceError</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga686d0d40b10a4d013dc09de32a43efaa</anchor>
      <arglist>(const char *module, T msg)</arglist>
    </member>
    <member kind="function" static="yes">
      <type>static std::string</type>
      <name>make_message</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga76a9378a9bfc4f2b6f1b9c3ecb00ec9a</anchor>
      <arglist>(const char *module, T msg)</arglist>
    </member>
    <member kind="function" static="yes">
      <type>static std::string</type>
      <name>msg_to_string</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga1a6103f0af6a0a451ae5af0ba190a50d</anchor>
      <arglist>(boost::system::system_error &amp;err)</arglist>
    </member>
    <member kind="function" static="yes">
      <type>static std::string</type>
      <name>msg_to_string</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gae998ec92e731b23abc43286b88fa84ca</anchor>
      <arglist>(const char *description)</arglist>
    </member>
    <member kind="function" static="yes">
      <type>static std::string</type>
      <name>msg_to_string</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga0422d27d75fd22d67cc678d9b92f9d95</anchor>
      <arglist>(int errnum)</arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>mavconn::MAVConnInterface::IOStat</name>
    <filename>structmavconn_1_1MAVConnInterface_1_1IOStat.html</filename>
    <member kind="variable">
      <type>float</type>
      <name>rx_speed</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gaf125917de0e57f9f394f038c71799fa0</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>size_t</type>
      <name>rx_total_bytes</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga3f5e58792c58b0400dcd903c821e97cb</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>float</type>
      <name>tx_speed</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gadbe490b44c012f629ee0dc0302c17a8b</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>size_t</type>
      <name>tx_total_bytes</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga941de0f0d1968c6b2d272d5834d8f526</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>mavconn::MAVConnInterface</name>
    <filename>classmavconn_1_1MAVConnInterface.html</filename>
    <class kind="struct">mavconn::MAVConnInterface::IOStat</class>
    <member kind="typedef">
      <type>std::function&lt; void(void)&gt;</type>
      <name>ClosedCb</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga6eef19e745c84f9b0b85d704b2e3e430</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef">
      <type>std::shared_ptr&lt; MAVConnInterface const  &gt;</type>
      <name>ConstPtr</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga47036145ce30f67fcd830e28712216eb</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef">
      <type>std::shared_ptr&lt; MAVConnInterface &gt;</type>
      <name>Ptr</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gaff41078b805e1d8f85ed6fd2d87711ce</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef">
      <type>std::function&lt; void(const mavlink::mavlink_message_t *message, const Framing framing)&gt;</type>
      <name>ReceivedCb</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga1d04ead963f1685f3aaf4b18ffb49ff7</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef">
      <type>std::weak_ptr&lt; MAVConnInterface &gt;</type>
      <name>WeakPtr</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga010ca3b237199e0ebb7b850b1f3ea0ba</anchor>
      <arglist></arglist>
    </member>
    <member kind="function" virtualness="pure">
      <type>virtual void</type>
      <name>close</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga7c1a5a89489e345a6621c327107293d8</anchor>
      <arglist>()=0</arglist>
    </member>
    <member kind="function" virtualness="pure">
      <type>virtual void</type>
      <name>connect</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga5a36f77cdb5fd735f0b7b105aefd0456</anchor>
      <arglist>(const ReceivedCb &amp;cb_handle_message, const ClosedCb &amp;cb_handle_closed_port=ClosedCb())=0</arglist>
    </member>
    <member kind="function">
      <type>uint8_t</type>
      <name>get_component_id</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gada7ecc7f6cffa0ecfc17f88327953223</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual IOStat</type>
      <name>get_iostat</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gab330e130b5cff0e1d6aa67742ffc79f4</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>Protocol</type>
      <name>get_protocol_version</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gaae320aaf19ca5b0c03b6febba5efdf1b</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual mavlink::mavlink_status_t</type>
      <name>get_status</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gaa3c7017b05ca60187122edf2ec196918</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>uint8_t</type>
      <name>get_system_id</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gac09eda5df4b4b82823429d9af6dddd44</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" virtualness="pure">
      <type>virtual bool</type>
      <name>is_open</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga135638c7c953c50bee3143a9e2b35416</anchor>
      <arglist>()=0</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>MAVConnInterface</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga9b64f95099f1be0b41ae1dd459db63bc</anchor>
      <arglist>(uint8_t system_id=1, uint8_t component_id=MAV_COMP_ID_UDP_BRIDGE)</arglist>
    </member>
    <member kind="function" virtualness="pure">
      <type>virtual void</type>
      <name>send_bytes</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga7d00279e176e9a6890ed47ab1ceeb597</anchor>
      <arglist>(const uint8_t *bytes, size_t length)=0</arglist>
    </member>
    <member kind="function" virtualness="pure">
      <type>virtual void</type>
      <name>send_message</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gad807cf7e1935548e0c7ba94943cbb7aa</anchor>
      <arglist>(const mavlink::mavlink_message_t *message)=0</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual void</type>
      <name>send_message</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga6af3ab61730d6cef64b167b4cd8956e3</anchor>
      <arglist>(const mavlink::Message &amp;message)</arglist>
    </member>
    <member kind="function" virtualness="pure">
      <type>virtual void</type>
      <name>send_message</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga27debe86c28cf208903ccb0c7414e07b</anchor>
      <arglist>(const mavlink::Message &amp;message, const uint8_t src_compid)=0</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>send_message_ignore_drop</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gabf049aebc9a9a9abfd36a1fb0034a433</anchor>
      <arglist>(const mavlink::mavlink_message_t *message)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>send_message_ignore_drop</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gaafdea305c3cd449ac629f84598febbe0</anchor>
      <arglist>(const mavlink::Message &amp;message)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>send_message_ignore_drop</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga67928b3ef1cc91a2d42de31c69eac78c</anchor>
      <arglist>(const mavlink::Message &amp;message, const uint8_t src_compid)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>set_component_id</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gac3e7c34cdb6e8104959654ff49bd2497</anchor>
      <arglist>(uint8_t compid)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>set_protocol_version</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gae78b30f23f5f1a94684761f7ddc0d2e2</anchor>
      <arglist>(Protocol pver)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>set_system_id</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gaf2828d99a65c8e631566e7fd564abac3</anchor>
      <arglist>(uint8_t sysid)</arglist>
    </member>
    <member kind="function" static="yes">
      <type>static std::vector&lt; std::string &gt;</type>
      <name>get_known_dialects</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga61b41f9d98dbf524a9b873c3b9ae0b14</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" static="yes">
      <type>static Ptr</type>
      <name>open_url</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gadcb338b777d0a29ae87bdbf56d8c4c33</anchor>
      <arglist>(std::string url, uint8_t system_id=1, uint8_t component_id=MAV_COMP_ID_UDP_BRIDGE, const ReceivedCb &amp;cb_handle_message=ReceivedCb(), const ClosedCb &amp;cb_handle_closed_port=ClosedCb())</arglist>
    </member>
    <member kind="function" static="yes">
      <type>static Ptr</type>
      <name>open_url_no_connect</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga95c2580b000fea7ee81791d63c25ae64</anchor>
      <arglist>(std::string url, uint8_t system_id=1, uint8_t component_id=MAV_COMP_ID_UDP_BRIDGE)</arglist>
    </member>
    <member kind="variable">
      <type>ReceivedCb</type>
      <name>message_received_cb</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga47d4ac1fa3ceb8797164b56c517f1ff8</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>ClosedCb</type>
      <name>port_closed_cb</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gaf00411ca9b9fbe3329804f22755dee05</anchor>
      <arglist></arglist>
    </member>
    <member kind="function" protection="protected">
      <type>mavlink::mavlink_message_t *</type>
      <name>get_buffer_p</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gae9521a7ebe812821fcd15a63f1c12b10</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" protection="protected">
      <type>mavlink::mavlink_status_t *</type>
      <name>get_status_p</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga2bb422475644d340b8116f7d67253dde</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" protection="protected">
      <type>void</type>
      <name>iostat_rx_add</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gab045ff5b6e55b96630f00e131e4d2c16</anchor>
      <arglist>(size_t bytes)</arglist>
    </member>
    <member kind="function" protection="protected">
      <type>void</type>
      <name>iostat_tx_add</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gaabfc001375565bdafd47172374fcda0f</anchor>
      <arglist>(size_t bytes)</arglist>
    </member>
    <member kind="function" protection="protected">
      <type>void</type>
      <name>log_recv</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga6edf345e262423905ecd6da2966d7b4f</anchor>
      <arglist>(const char *pfx, mavlink::mavlink_message_t &amp;msg, Framing framing)</arglist>
    </member>
    <member kind="function" protection="protected">
      <type>void</type>
      <name>log_send</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga7a6bcc0b1c21c9016422e2c20b4b04d0</anchor>
      <arglist>(const char *pfx, const mavlink::mavlink_message_t *msg)</arglist>
    </member>
    <member kind="function" protection="protected">
      <type>void</type>
      <name>log_send_obj</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga52bf39da3102cf3376a801f5b0f647a5</anchor>
      <arglist>(const char *pfx, const mavlink::Message &amp;msg)</arglist>
    </member>
    <member kind="function" protection="protected">
      <type>void</type>
      <name>parse_buffer</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga5086c8460510e92da4e86fb266cb5a8b</anchor>
      <arglist>(const char *pfx, uint8_t *buf, const size_t bufsize, size_t bytes_received)</arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>uint8_t</type>
      <name>comp_id</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga9f68651877ebc10d79f41925185d8553</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>size_t</type>
      <name>conn_id</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gab5e1164e0e16a986b4b8b07ac42149e5</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>uint8_t</type>
      <name>sys_id</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga2dc764873c9185f0399bf41fbadff32f</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected" static="yes">
      <type>static constexpr size_t</type>
      <name>MAX_PACKET_SIZE</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga1810847cbd773691c40b73e9ed24455d</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected" static="yes">
      <type>static constexpr size_t</type>
      <name>MAX_TXQ_SIZE</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gaf5e70afd06413dba8c7aee46396f03a1</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected" static="yes">
      <type>static std::unordered_map&lt; mavlink::msgid_t, const mavlink::mavlink_msg_entry_t * &gt;</type>
      <name>message_entries</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga95f9336a3630ce53abf1611f5e8a061f</anchor>
      <arglist></arglist>
    </member>
    <member kind="function" protection="private">
      <type></type>
      <name>MAVConnInterface</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gacd56462848ee9561c55698b3b4c5d1b1</anchor>
      <arglist>(const MAVConnInterface &amp;)=delete</arglist>
    </member>
    <member kind="function" protection="private" static="yes">
      <type>static void</type>
      <name>init_msg_entry</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gaef852d6fd7163fce9087b40a58c0097d</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::recursive_mutex</type>
      <name>iostat_mutex</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga5901ad3bf2e4ecb181bf0767508d04c3</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::chrono::time_point&lt; steady_clock &gt;</type>
      <name>last_iostat</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga009da6f1615a2f9cdc19e44cdfb009c0</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>size_t</type>
      <name>last_rx_total_bytes</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gaa0bd02ab76b4c0c549a667022568ca55</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>size_t</type>
      <name>last_tx_total_bytes</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gac23e741f585e75c0b3488f7bfc7a7551</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>mavlink::mavlink_message_t</type>
      <name>m_buffer</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga954656c4a8f58bf61c4ea4aa903b1e68</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>mavlink::mavlink_status_t</type>
      <name>m_mavlink_status</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga470daf84b9e546032b295f075e9f394b</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>mavlink::mavlink_status_t</type>
      <name>m_parse_status</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga814ef19a1622b08c2a91379638cc7a40</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::atomic&lt; size_t &gt;</type>
      <name>rx_total_bytes</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gafd9becf52414d0c409afbfadeb458def</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::atomic&lt; size_t &gt;</type>
      <name>tx_total_bytes</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gab122b202a6ca1d84f883d21a36811fe5</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private" static="yes">
      <type>static std::atomic&lt; size_t &gt;</type>
      <name>conn_id_counter</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga271f52f70e8a75c59426bba3971ab95c</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private" static="yes">
      <type>static std::once_flag</type>
      <name>init_flag</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gaea1c781c2d59310bc71e6b994ad811c3</anchor>
      <arglist></arglist>
    </member>
    <member kind="friend" protection="private">
      <type>const friend mavlink::mavlink_msg_entry_t *</type>
      <name>mavlink::mavlink_get_msg_entry</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga0e619f628d48db7f6cb2297262f33b5b</anchor>
      <arglist>(uint32_t msgid)</arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>mavconn::MAVConnSerial</name>
    <filename>classmavconn_1_1MAVConnSerial.html</filename>
    <base>mavconn::MAVConnInterface</base>
    <member kind="function">
      <type>void</type>
      <name>close</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gabacc69adc5d2d2f9cb3aa27907d83d5c</anchor>
      <arglist>() override</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>connect</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gaeb3dc22d72018401d7270b1845c85e1b</anchor>
      <arglist>(const ReceivedCb &amp;cb_handle_message, const ClosedCb &amp;cb_handle_closed_port=ClosedCb()) override</arglist>
    </member>
    <member kind="function">
      <type>bool</type>
      <name>is_open</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga7b2ae62cddd41671b3312050f64b3036</anchor>
      <arglist>() override</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>MAVConnSerial</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga53b8b8d9fceab4d4a2767b3aa0a25462</anchor>
      <arglist>(uint8_t system_id=1, uint8_t component_id=MAV_COMP_ID_UDP_BRIDGE, std::string device=DEFAULT_DEVICE, unsigned baudrate=DEFAULT_BAUDRATE, bool hwflow=false)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>send_bytes</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga6073d6f88157f3b29ee519eafe16f8fd</anchor>
      <arglist>(const uint8_t *bytes, size_t length) override</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>send_message</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga452a97c9cd256b591eee063a1927a93a</anchor>
      <arglist>(const mavlink::mavlink_message_t *message) override</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>send_message</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga47e914a4f0d33ce89d0dec9df50b2360</anchor>
      <arglist>(const mavlink::Message &amp;message, const uint8_t source_compid) override</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual</type>
      <name>~MAVConnSerial</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga63860bdb6f3eb8a5ef266fc99edd715d</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="variable" static="yes">
      <type>static constexpr auto</type>
      <name>DEFAULT_BAUDRATE</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gaf0dd28c4a6b236f2ec3092a1b35ff5df</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" static="yes">
      <type>static constexpr auto</type>
      <name>DEFAULT_DEVICE</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga3b2c35e0bfa1020060b2fde345d66f0e</anchor>
      <arglist></arglist>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>do_read</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga2996ef2a0f634ffe0a76e13dc5d2b5b6</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>do_write</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga587524e1878eb77d338b4bb04cc192e3</anchor>
      <arglist>(bool check_tx_state)</arglist>
    </member>
    <member kind="variable" protection="private">
      <type>boost::asio::io_service</type>
      <name>io_service</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga307ecb75aaa11da3219c8327f612bbd1</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::thread</type>
      <name>io_thread</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga7889312accd2f77c677ec56b2f9fe300</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::recursive_mutex</type>
      <name>mutex</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gad528432535aeb635f2ed08bc77f641ea</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::array&lt; uint8_t, MsgBuffer::MAX_SIZE &gt;</type>
      <name>rx_buf</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga5146d63de89653b58552cdb7b992c549</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>boost::asio::serial_port</type>
      <name>serial_dev</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gafaaa9c4e2b9df881c5a08b860ce96c2c</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::atomic&lt; bool &gt;</type>
      <name>tx_in_progress</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga3081a6ebfed67b652763f5941e1a0e79</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::deque&lt; MsgBuffer &gt;</type>
      <name>tx_q</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga0196a14c22a520566e43dfc496062992</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>mavconn::MAVConnTCPClient</name>
    <filename>classmavconn_1_1MAVConnTCPClient.html</filename>
    <base>mavconn::MAVConnInterface</base>
    <member kind="function">
      <type>void</type>
      <name>close</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga3128ab3303f5a303be12c2c9df1ee321</anchor>
      <arglist>() override</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>connect</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gabf8e08bac7ce5877217c624d32cfdee9</anchor>
      <arglist>(const ReceivedCb &amp;cb_handle_message, const ClosedCb &amp;cb_handle_closed_port=ClosedCb()) override</arglist>
    </member>
    <member kind="function">
      <type>bool</type>
      <name>is_open</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gadcabe763ecf8fc00e123fcf78af9eaf4</anchor>
      <arglist>() override</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>MAVConnTCPClient</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga93a7b76eccf987b4321f7bcc502001b8</anchor>
      <arglist>(uint8_t system_id, uint8_t component_id, boost::asio::io_service &amp;server_io)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>MAVConnTCPClient</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga930d7bcb750e00606a1ba406135f0020</anchor>
      <arglist>(uint8_t system_id=1, uint8_t component_id=MAV_COMP_ID_UDP_BRIDGE, std::string server_host=DEFAULT_SERVER_HOST, unsigned short server_port=DEFAULT_SERVER_PORT)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>send_bytes</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gac327ab4a27b6de2da3c594d93c599312</anchor>
      <arglist>(const uint8_t *bytes, size_t length) override</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>send_message</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga6f835299707df78f3694cef5853139d4</anchor>
      <arglist>(const mavlink::mavlink_message_t *message) override</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>send_message</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga59e5c1ac405a36de1a626e1066268c75</anchor>
      <arglist>(const mavlink::Message &amp;message, const uint8_t source_compid) override</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual</type>
      <name>~MAVConnTCPClient</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gaa9e9ea305aaaa39aeb4bcb91328d47c5</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="variable" static="yes">
      <type>static constexpr auto</type>
      <name>DEFAULT_SERVER_HOST</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga25f08b85aaeacae255d37a898f978c42</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" static="yes">
      <type>static constexpr auto</type>
      <name>DEFAULT_SERVER_PORT</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga3d9c438ece25a8aa6ae7af15341e7706</anchor>
      <arglist></arglist>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>client_connected</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga83cbab14f0408fae85770d1b0cabc364</anchor>
      <arglist>(size_t server_channel)</arglist>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>do_recv</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gae521a090c21b711b5c1d8e313a28edb2</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>do_send</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga68bf6e8827de62b242d006993f0c80f0</anchor>
      <arglist>(bool check_tx_state)</arglist>
    </member>
    <member kind="variable" protection="private">
      <type>boost::asio::io_service</type>
      <name>io_service</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga14790e1516d382bd99f6edbf096229e3</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::thread</type>
      <name>io_thread</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gacc56e8b79c7cceb1dbb8a96588d81848</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::unique_ptr&lt; boost::asio::io_service::work &gt;</type>
      <name>io_work</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga7fb26091b4ff6c744ce9a4eee2a234e4</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::atomic&lt; bool &gt;</type>
      <name>is_destroying</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga28afceb9e4c1a65f4acda055742005b0</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::recursive_mutex</type>
      <name>mutex</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga5efb8dc674cc05b47e5e15cfc612b180</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::array&lt; uint8_t, MsgBuffer::MAX_SIZE &gt;</type>
      <name>rx_buf</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga8255d65124d559d2fc54b0929db9739e</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>boost::asio::ip::tcp::endpoint</type>
      <name>server_ep</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gab5edf3003bc20ce9d58bd96eb088f193</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>boost::asio::ip::tcp::socket</type>
      <name>socket</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga7f526878c7f6a3538b66ddea8b1c7458</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::atomic&lt; bool &gt;</type>
      <name>tx_in_progress</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga251eabe992ff3804292c11587c6b1d46</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::deque&lt; MsgBuffer &gt;</type>
      <name>tx_q</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gaff1d9074bfdbf001e0d08c651dff84e6</anchor>
      <arglist></arglist>
    </member>
    <member kind="friend" protection="private">
      <type>friend class</type>
      <name>MAVConnTCPServer</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gaa93ce54993292c6350cf74aa47fde6cd</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>mavconn::MAVConnTCPServer</name>
    <filename>classmavconn_1_1MAVConnTCPServer.html</filename>
    <base>mavconn::MAVConnInterface</base>
    <member kind="function">
      <type>void</type>
      <name>close</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga11e23cc16d8a8637583fbecc7bbe915b</anchor>
      <arglist>() override</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>connect</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga13548028371d2e1b599ed395d192cbe2</anchor>
      <arglist>(const ReceivedCb &amp;cb_handle_message, const ClosedCb &amp;cb_handle_closed_port=ClosedCb()) override</arglist>
    </member>
    <member kind="function">
      <type>IOStat</type>
      <name>get_iostat</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga7fd83c9a2233baa30aff24b6f3c8dd25</anchor>
      <arglist>() override</arglist>
    </member>
    <member kind="function">
      <type>mavlink::mavlink_status_t</type>
      <name>get_status</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gab139fa8d7e65c0de256f7d9dee0d0f30</anchor>
      <arglist>() override</arglist>
    </member>
    <member kind="function">
      <type>bool</type>
      <name>is_open</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga7bcb8a571a040f61ad2b61f002edc381</anchor>
      <arglist>() override</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>MAVConnTCPServer</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gad395465c3a85e4441cbccc84615cacb5</anchor>
      <arglist>(uint8_t system_id=1, uint8_t component_id=MAV_COMP_ID_UDP_BRIDGE, std::string bind_host=DEFAULT_BIND_HOST, unsigned short bind_port=DEFAULT_BIND_PORT)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>send_bytes</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga4eedf8da39d9dee8cf84074d010ddf0d</anchor>
      <arglist>(const uint8_t *bytes, size_t length) override</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>send_message</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gacbae4efba2ed887e4a731ca60dceb0a6</anchor>
      <arglist>(const mavlink::mavlink_message_t *message) override</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>send_message</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gaf4c27609941699e62981bab04f64d246</anchor>
      <arglist>(const mavlink::Message &amp;message, const uint8_t source_compid) override</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual</type>
      <name>~MAVConnTCPServer</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gaee25f07913d08d976e205be3136d813c</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="variable" static="yes">
      <type>static constexpr auto</type>
      <name>DEFAULT_BIND_HOST</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gae043843ee4b947094ca58342c442c3b6</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" static="yes">
      <type>static constexpr auto</type>
      <name>DEFAULT_BIND_PORT</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gacf9d47d0f198105f4a27c9668ba793b1</anchor>
      <arglist></arglist>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>client_closed</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gaad6ffb3a8e97074fbeca09b749550592</anchor>
      <arglist>(std::weak_ptr&lt; MAVConnTCPClient &gt; weak_instp)</arglist>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>do_accept</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gad0c06c9d2e03f1d55a257468fe00c493</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="variable" protection="private">
      <type>boost::asio::ip::tcp::acceptor</type>
      <name>acceptor</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gae54198e1b2298d28509b75258d6085b7</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>boost::asio::ip::tcp::endpoint</type>
      <name>bind_ep</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gaf44fa60b1c61e77d3b5e0f5ab2d267da</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::list&lt; std::shared_ptr&lt; MAVConnTCPClient &gt; &gt;</type>
      <name>client_list</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga35978a7c19f14edd285555ec2c4fa10e</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>boost::asio::io_service</type>
      <name>io_service</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga6b94e5e63f070a571324a5ea76f30d77</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::thread</type>
      <name>io_thread</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga5c6919dd23a9145da8f20847a74e1b92</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::unique_ptr&lt; boost::asio::io_service::work &gt;</type>
      <name>io_work</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga555c78eafea6eb83b4fa0c56d32e1117</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::atomic&lt; bool &gt;</type>
      <name>is_destroying</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga12610a1b9854a3bb722ab1229cfbc29d</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::recursive_mutex</type>
      <name>mutex</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga76a49cf0dde8998cfc89bf9abc3511cc</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>mavconn::MAVConnUDP</name>
    <filename>classmavconn_1_1MAVConnUDP.html</filename>
    <base>mavconn::MAVConnInterface</base>
    <member kind="function">
      <type>void</type>
      <name>close</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga78a057400db4bf2240b00e29d4251dfe</anchor>
      <arglist>() override</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>connect</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga1baa7a0e837c13c7474725994594a333</anchor>
      <arglist>(const ReceivedCb &amp;cb_handle_message, const ClosedCb &amp;cb_handle_closed_port=ClosedCb()) override</arglist>
    </member>
    <member kind="function">
      <type>std::string</type>
      <name>get_remote_endpoint</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga13a5e8e5de10de0026c24cb987fb2213</anchor>
      <arglist>() const</arglist>
    </member>
    <member kind="function">
      <type>bool</type>
      <name>is_open</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga496ff8d6806b35c993740cc05727f59c</anchor>
      <arglist>() override</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>MAVConnUDP</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga22deee111faac2fde80a0affc6c29245</anchor>
      <arglist>(uint8_t system_id=1, uint8_t component_id=MAV_COMP_ID_UDP_BRIDGE, std::string bind_host=DEFAULT_BIND_HOST, unsigned short bind_port=DEFAULT_BIND_PORT, std::string remote_host=DEFAULT_REMOTE_HOST, unsigned short remote_port=DEFAULT_REMOTE_PORT)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>send_bytes</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga7a1a56365cb5355da86a6a6e2bb4bc8e</anchor>
      <arglist>(const uint8_t *bytes, size_t length) override</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>send_message</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gae33a3895701a613a72d7fc1ab9bbb3d8</anchor>
      <arglist>(const mavlink::mavlink_message_t *message) override</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>send_message</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga4fa2e83e6073089f355934696d568aed</anchor>
      <arglist>(const mavlink::Message &amp;message, const uint8_t source_compid) override</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual</type>
      <name>~MAVConnUDP</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gad9edacd1a8f5993cdcfb188f83e3ca49</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="variable" static="yes">
      <type>static constexpr auto</type>
      <name>BROADCAST_REMOTE_HOST</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gae78adaaf99172a7aafead43dc2883cec</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" static="yes">
      <type>static constexpr auto</type>
      <name>DEFAULT_BIND_HOST</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga62467db7651e86bb5428c4288356f813</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" static="yes">
      <type>static constexpr auto</type>
      <name>DEFAULT_BIND_PORT</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga330f03ed06a3e027ec7be74426dc646b</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" static="yes">
      <type>static constexpr auto</type>
      <name>DEFAULT_REMOTE_HOST</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga7a03f4b69e2791a742717516b6421466</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" static="yes">
      <type>static constexpr auto</type>
      <name>DEFAULT_REMOTE_PORT</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga25daeb4235691fdf52da1551bf93bc88</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" static="yes">
      <type>static constexpr auto</type>
      <name>PERMANENT_BROADCAST_REMOTE_HOST</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gab9cc9895e36eefd3cd6e6fc7d4895c6f</anchor>
      <arglist></arglist>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>do_recvfrom</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga6b3a319b66a94a258b7a27027556b252</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>do_sendto</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga03cfacb26e55728856a1568ec2c3a5e4</anchor>
      <arglist>(bool check_tx_state)</arglist>
    </member>
    <member kind="variable" protection="private">
      <type>boost::asio::ip::udp::endpoint</type>
      <name>bind_ep</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga844e549102c881755685d8fc31226700</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>boost::asio::io_service</type>
      <name>io_service</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga240e473e4774af7450a044fd5627f466</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::thread</type>
      <name>io_thread</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gacd2b07b5480c66754b850c609b8b0c68</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::unique_ptr&lt; boost::asio::io_service::work &gt;</type>
      <name>io_work</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga1cc128f7b23afd389a915523e165d65a</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>boost::asio::ip::udp::endpoint</type>
      <name>last_remote_ep</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gac80526faefe220734640fc0f72fdb158</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::recursive_mutex</type>
      <name>mutex</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gab01217166a4a8d6ef02cbbb76497d029</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>bool</type>
      <name>permanent_broadcast</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gac4f1e0d79c0387e1e608658856479d53</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>boost::asio::ip::udp::endpoint</type>
      <name>recv_ep</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gac8aee73b29825fa900b613ea10d8cc8a</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>boost::asio::ip::udp::endpoint</type>
      <name>remote_ep</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga9916c5b42fc68a1b96a0891512441631</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::atomic&lt; bool &gt;</type>
      <name>remote_exists</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga5dfbbe7837b1bc5edeaf00dd6c0a7115</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::array&lt; uint8_t, MsgBuffer::MAX_SIZE &gt;</type>
      <name>rx_buf</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga2e6835a48e96d018f66685d236828c54</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>boost::asio::ip::udp::socket</type>
      <name>socket</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga80d618c29c866459bcfb6fa7b4766fda</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::atomic&lt; bool &gt;</type>
      <name>tx_in_progress</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga990c9f7a9091474165583d34f1fe1d92</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::deque&lt; MsgBuffer &gt;</type>
      <name>tx_q</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gaed2e262261adecf3de9ced183a977ee2</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>mavconn::MsgBuffer</name>
    <filename>structmavconn_1_1MsgBuffer.html</filename>
    <member kind="function">
      <type>uint8_t *</type>
      <name>dpos</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga0c971b3c0d8d540ccaf7e1929a5ecf07</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>MsgBuffer</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga64da82fdf707ca5304fda5e686fe4f11</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>MsgBuffer</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga202de878cea6b3fff8f8ef8c7f001cd5</anchor>
      <arglist>(const mavlink::mavlink_message_t *msg)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>MsgBuffer</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga8bcb63913aa131f1c054dc1e18a4d945</anchor>
      <arglist>(const mavlink::Message &amp;obj, mavlink::mavlink_status_t *status, uint8_t sysid, uint8_t compid)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>MsgBuffer</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga4555922debc003d9ba989aded6714fb5</anchor>
      <arglist>(const uint8_t *bytes, ssize_t nbytes)</arglist>
    </member>
    <member kind="function">
      <type>ssize_t</type>
      <name>nbytes</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga564c27473f42c6cea687c8b5bbbb1621</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual</type>
      <name>~MsgBuffer</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gac56cac6705c915b3c74c3d0b12c45939</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="variable">
      <type>uint8_t</type>
      <name>data</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gafac3ddb58cafe6448ff6f046a73a66a5</anchor>
      <arglist>[MAX_SIZE]</arglist>
    </member>
    <member kind="variable">
      <type>ssize_t</type>
      <name>len</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga712063584cbb6fa1ffb3cb30d0b2bd61</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>ssize_t</type>
      <name>pos</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gaf3493729d445b0f55b2ced8cfc5fa0f6</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" static="yes">
      <type>static constexpr ssize_t</type>
      <name>MAX_SIZE</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga7187a6a6dd41cfe0e92d2c59c81a0010</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="namespace">
    <name>mavconn</name>
    <filename>namespacemavconn.html</filename>
    <namespace>mavconn::utils</namespace>
    <class kind="class">mavconn::DeviceError</class>
    <class kind="class">mavconn::MAVConnInterface</class>
    <class kind="class">mavconn::MAVConnSerial</class>
    <class kind="class">mavconn::MAVConnTCPClient</class>
    <class kind="class">mavconn::MAVConnTCPServer</class>
    <class kind="class">mavconn::MAVConnUDP</class>
    <class kind="struct">mavconn::MsgBuffer</class>
    <member kind="typedef">
      <type>std::lock_guard&lt; std::recursive_mutex &gt;</type>
      <name>lock_guard</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga46feb20496b24d733abd4e68ef29bc90</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef">
      <type>std::chrono::steady_clock</type>
      <name>steady_clock</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gab7fe4e29d643505aafb15c532a9338d3</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumeration">
      <type></type>
      <name>Framing</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gac93e6f8262bcc6008b4882ae6213f494</anchor>
      <arglist></arglist>
      <enumvalue file="group__mavconn.html" anchor="ggac93e6f8262bcc6008b4882ae6213f494a5ed4e9858ad8d239145ef285b6210a00">incomplete</enumvalue>
      <enumvalue file="group__mavconn.html" anchor="ggac93e6f8262bcc6008b4882ae6213f494a444bcb3a3fcf8389296c49467f27e1d6">ok</enumvalue>
      <enumvalue file="group__mavconn.html" anchor="ggac93e6f8262bcc6008b4882ae6213f494abaf1c3d199daf5f5b444664b81a08749">bad_crc</enumvalue>
      <enumvalue file="group__mavconn.html" anchor="ggac93e6f8262bcc6008b4882ae6213f494adbfa03ea5df0b8979551ed84f97018e9">bad_signature</enumvalue>
    </member>
    <member kind="enumeration">
      <type></type>
      <name>Protocol</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gae4e5498ebfd232dcad75be0f8a168ff3</anchor>
      <arglist></arglist>
      <enumvalue file="group__mavconn.html" anchor="ggae4e5498ebfd232dcad75be0f8a168ff3a3ffc64fa10df9a884ba82f3e49e8282e">V10</enumvalue>
      <enumvalue file="group__mavconn.html" anchor="ggae4e5498ebfd232dcad75be0f8a168ff3aba9161e2ae9f747e361fa824ca0d0337">V20</enumvalue>
    </member>
    <member kind="function" static="yes">
      <type>static bool</type>
      <name>resolve_address_tcp</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gac60b8995acae39e0d83d62b55323a74c</anchor>
      <arglist>(io_service &amp;io, size_t chan, std::string host, unsigned short port, tcp::endpoint &amp;ep)</arglist>
    </member>
    <member kind="function" static="yes">
      <type>static bool</type>
      <name>resolve_address_udp</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga6fa5da19f86d5bfb4422a05c15873331</anchor>
      <arglist>(io_service &amp;io, size_t chan, std::string host, unsigned short port, udp::endpoint &amp;ep)</arglist>
    </member>
    <member kind="function" static="yes">
      <type>static void</type>
      <name>url_parse_host</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gae58851f2a11f5372dc1cb8d4e8295589</anchor>
      <arglist>(std::string host, std::string &amp;host_out, int &amp;port_out, const std::string def_host, const int def_port)</arglist>
    </member>
    <member kind="function" static="yes">
      <type>static void</type>
      <name>url_parse_query</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gae4c87353e8213c84c3b094d884035fbc</anchor>
      <arglist>(std::string query, uint8_t &amp;sysid, uint8_t &amp;compid)</arglist>
    </member>
    <member kind="function" static="yes">
      <type>static MAVConnInterface::Ptr</type>
      <name>url_parse_serial</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gaeaa9e04064e3ebc7ff1bfc46c0eb1e97</anchor>
      <arglist>(std::string path, std::string query, uint8_t system_id, uint8_t component_id, bool hwflow)</arglist>
    </member>
    <member kind="function" static="yes">
      <type>static MAVConnInterface::Ptr</type>
      <name>url_parse_tcp_client</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga50392e3a8260dd21671883ad67a1176c</anchor>
      <arglist>(std::string host, std::string query, uint8_t system_id, uint8_t component_id)</arglist>
    </member>
    <member kind="function" static="yes">
      <type>static MAVConnInterface::Ptr</type>
      <name>url_parse_tcp_server</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga859646efce0b3d6f7fefe7ca3f443af7</anchor>
      <arglist>(std::string host, std::string query, uint8_t system_id, uint8_t component_id)</arglist>
    </member>
    <member kind="function" static="yes">
      <type>static MAVConnInterface::Ptr</type>
      <name>url_parse_udp</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gaa9774724a37df446436776ec2ce7b89c</anchor>
      <arglist>(std::string hosts, std::string query, uint8_t system_id, uint8_t component_id, bool is_udpb, bool permanent_broadcast)</arglist>
    </member>
    <member kind="variable" static="yes">
      <type>static constexpr auto</type>
      <name>MAV_COMP_ID_UDP_BRIDGE</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gaaf2017cbed1a6863f1c7dde68ff01baf</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="namespace">
    <name>mavconn::utils</name>
    <filename>namespacemavconn_1_1utils.html</filename>
    <member kind="function">
      <type>std::string</type>
      <name>format</name>
      <anchorfile>group__mavutils.html</anchorfile>
      <anchor>ga0d03da68919138512c198995276dd9ea</anchor>
      <arglist>(const std::string &amp;fmt, Args ... args)</arglist>
    </member>
    <member kind="function">
      <type>constexpr size_t</type>
      <name>operator&quot;&quot;_KiB</name>
      <anchorfile>group__mavutils.html</anchorfile>
      <anchor>ga301ff0ee568776aa543ccaff3c1c039c</anchor>
      <arglist>(unsigned long long sz)</arglist>
    </member>
    <member kind="function">
      <type>bool</type>
      <name>set_this_thread_name</name>
      <anchorfile>group__mavutils.html</anchorfile>
      <anchor>gac5ea11f12ae2183df1dc4a810ff0a87b</anchor>
      <arglist>(const std::string &amp;name, Args &amp;&amp;... args)</arglist>
    </member>
    <member kind="function">
      <type>const std::string</type>
      <name>to_string_ss</name>
      <anchorfile>group__mavutils.html</anchorfile>
      <anchor>ga6c132876dd85249684a7935fe0bc8f51</anchor>
      <arglist>(T &amp;obj)</arglist>
    </member>
  </compound>
  <compound kind="group">
    <name>mavconn</name>
    <title>Mavconn</title>
    <filename>group__mavconn.html</filename>
    <namespace>mavconn</namespace>
    <class kind="class">mavconn::DeviceError</class>
    <class kind="struct">mavconn::MAVConnInterface::IOStat</class>
    <class kind="class">mavconn::MAVConnInterface</class>
    <class kind="class">mavconn::MAVConnSerial</class>
    <class kind="class">mavconn::MAVConnTCPClient</class>
    <class kind="class">mavconn::MAVConnTCPServer</class>
    <class kind="class">mavconn::MAVConnUDP</class>
    <class kind="struct">mavconn::MsgBuffer</class>
    <member kind="define">
      <type>#define</type>
      <name>CONSOLE_BRIDGE_logDebug</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gaaf4116dec671bee3f8f1445f6c6a3ebe</anchor>
      <arglist>(fmt,...)</arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>CONSOLE_BRIDGE_logError</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga78bfb8423a8c11242fba38b8b3952aa7</anchor>
      <arglist>(fmt,...)</arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>CONSOLE_BRIDGE_logInform</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gaa587fd17781bdf24e813cb3c43eb8ff2</anchor>
      <arglist>(fmt,...)</arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>CONSOLE_BRIDGE_logWarn</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga57a50f2283a7b43395b93a31ac90461c</anchor>
      <arglist>(fmt,...)</arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>GET_IO_SERVICE</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gae4e1c9b3895a9efca6bf613707050d98</anchor>
      <arglist>(s)</arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>PFX</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga176e4c39a833f4d01f0ecd322c0f4343</anchor>
      <arglist></arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>PFX</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga176e4c39a833f4d01f0ecd322c0f4343</anchor>
      <arglist></arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>PFX</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga176e4c39a833f4d01f0ecd322c0f4343</anchor>
      <arglist></arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>PFX</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga176e4c39a833f4d01f0ecd322c0f4343</anchor>
      <arglist></arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>PFXd</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga9aa83a322c418c99083b35fddccd39e3</anchor>
      <arglist></arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>PFXd</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga9aa83a322c418c99083b35fddccd39e3</anchor>
      <arglist></arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>PFXd</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga9aa83a322c418c99083b35fddccd39e3</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef">
      <type>std::function&lt; void(void)&gt;</type>
      <name>ClosedCb</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga6eef19e745c84f9b0b85d704b2e3e430</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef">
      <type>std::shared_ptr&lt; MAVConnInterface const  &gt;</type>
      <name>ConstPtr</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga47036145ce30f67fcd830e28712216eb</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef">
      <type>std::lock_guard&lt; std::recursive_mutex &gt;</type>
      <name>lock_guard</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga46feb20496b24d733abd4e68ef29bc90</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef">
      <type>std::shared_ptr&lt; MAVConnInterface &gt;</type>
      <name>Ptr</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gaff41078b805e1d8f85ed6fd2d87711ce</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef">
      <type>std::function&lt; void(const mavlink::mavlink_message_t *message, const Framing framing)&gt;</type>
      <name>ReceivedCb</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga1d04ead963f1685f3aaf4b18ffb49ff7</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef">
      <type>std::chrono::steady_clock</type>
      <name>steady_clock</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gab7fe4e29d643505aafb15c532a9338d3</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef">
      <type>std::weak_ptr&lt; MAVConnInterface &gt;</type>
      <name>WeakPtr</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga010ca3b237199e0ebb7b850b1f3ea0ba</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumeration">
      <type></type>
      <name>Framing</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gac93e6f8262bcc6008b4882ae6213f494</anchor>
      <arglist></arglist>
      <enumvalue file="group__mavconn.html" anchor="ggac93e6f8262bcc6008b4882ae6213f494a5ed4e9858ad8d239145ef285b6210a00">incomplete</enumvalue>
      <enumvalue file="group__mavconn.html" anchor="ggac93e6f8262bcc6008b4882ae6213f494a444bcb3a3fcf8389296c49467f27e1d6">ok</enumvalue>
      <enumvalue file="group__mavconn.html" anchor="ggac93e6f8262bcc6008b4882ae6213f494abaf1c3d199daf5f5b444664b81a08749">bad_crc</enumvalue>
      <enumvalue file="group__mavconn.html" anchor="ggac93e6f8262bcc6008b4882ae6213f494adbfa03ea5df0b8979551ed84f97018e9">bad_signature</enumvalue>
    </member>
    <member kind="enumeration">
      <type></type>
      <name>Protocol</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gae4e5498ebfd232dcad75be0f8a168ff3</anchor>
      <arglist></arglist>
      <enumvalue file="group__mavconn.html" anchor="ggae4e5498ebfd232dcad75be0f8a168ff3a3ffc64fa10df9a884ba82f3e49e8282e">V10</enumvalue>
      <enumvalue file="group__mavconn.html" anchor="ggae4e5498ebfd232dcad75be0f8a168ff3aba9161e2ae9f747e361fa824ca0d0337">V20</enumvalue>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>client_closed</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gaad6ffb3a8e97074fbeca09b749550592</anchor>
      <arglist>(std::weak_ptr&lt; MAVConnTCPClient &gt; weak_instp)</arglist>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>client_connected</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga83cbab14f0408fae85770d1b0cabc364</anchor>
      <arglist>(size_t server_channel)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>close</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gabacc69adc5d2d2f9cb3aa27907d83d5c</anchor>
      <arglist>() override</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>close</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga78a057400db4bf2240b00e29d4251dfe</anchor>
      <arglist>() override</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>close</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga3128ab3303f5a303be12c2c9df1ee321</anchor>
      <arglist>() override</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>close</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga11e23cc16d8a8637583fbecc7bbe915b</anchor>
      <arglist>() override</arglist>
    </member>
    <member kind="function" virtualness="pure">
      <type>virtual void</type>
      <name>close</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga7c1a5a89489e345a6621c327107293d8</anchor>
      <arglist>()=0</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>connect</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gaeb3dc22d72018401d7270b1845c85e1b</anchor>
      <arglist>(const ReceivedCb &amp;cb_handle_message, const ClosedCb &amp;cb_handle_closed_port=ClosedCb()) override</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>connect</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga1baa7a0e837c13c7474725994594a333</anchor>
      <arglist>(const ReceivedCb &amp;cb_handle_message, const ClosedCb &amp;cb_handle_closed_port=ClosedCb()) override</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>connect</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gabf8e08bac7ce5877217c624d32cfdee9</anchor>
      <arglist>(const ReceivedCb &amp;cb_handle_message, const ClosedCb &amp;cb_handle_closed_port=ClosedCb()) override</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>connect</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga13548028371d2e1b599ed395d192cbe2</anchor>
      <arglist>(const ReceivedCb &amp;cb_handle_message, const ClosedCb &amp;cb_handle_closed_port=ClosedCb()) override</arglist>
    </member>
    <member kind="function" virtualness="pure">
      <type>virtual void</type>
      <name>connect</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga5a36f77cdb5fd735f0b7b105aefd0456</anchor>
      <arglist>(const ReceivedCb &amp;cb_handle_message, const ClosedCb &amp;cb_handle_closed_port=ClosedCb())=0</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>DeviceError</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga686d0d40b10a4d013dc09de32a43efaa</anchor>
      <arglist>(const char *module, T msg)</arglist>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>do_accept</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gad0c06c9d2e03f1d55a257468fe00c493</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>do_read</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga2996ef2a0f634ffe0a76e13dc5d2b5b6</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>do_recv</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gae521a090c21b711b5c1d8e313a28edb2</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>do_recvfrom</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga6b3a319b66a94a258b7a27027556b252</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>do_send</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga68bf6e8827de62b242d006993f0c80f0</anchor>
      <arglist>(bool check_tx_state)</arglist>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>do_sendto</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga03cfacb26e55728856a1568ec2c3a5e4</anchor>
      <arglist>(bool check_tx_state)</arglist>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>do_write</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga587524e1878eb77d338b4bb04cc192e3</anchor>
      <arglist>(bool check_tx_state)</arglist>
    </member>
    <member kind="function">
      <type>uint8_t *</type>
      <name>dpos</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga0c971b3c0d8d540ccaf7e1929a5ecf07</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" protection="protected">
      <type>mavlink::mavlink_message_t *</type>
      <name>get_buffer_p</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gae9521a7ebe812821fcd15a63f1c12b10</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>uint8_t</type>
      <name>get_component_id</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gada7ecc7f6cffa0ecfc17f88327953223</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual IOStat</type>
      <name>get_iostat</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gab330e130b5cff0e1d6aa67742ffc79f4</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>IOStat</type>
      <name>get_iostat</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga7fd83c9a2233baa30aff24b6f3c8dd25</anchor>
      <arglist>() override</arglist>
    </member>
    <member kind="function" static="yes">
      <type>static std::vector&lt; std::string &gt;</type>
      <name>get_known_dialects</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga61b41f9d98dbf524a9b873c3b9ae0b14</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>Protocol</type>
      <name>get_protocol_version</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gaae320aaf19ca5b0c03b6febba5efdf1b</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>std::string</type>
      <name>get_remote_endpoint</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga13a5e8e5de10de0026c24cb987fb2213</anchor>
      <arglist>() const</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual mavlink::mavlink_status_t</type>
      <name>get_status</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gaa3c7017b05ca60187122edf2ec196918</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>mavlink::mavlink_status_t</type>
      <name>get_status</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gab139fa8d7e65c0de256f7d9dee0d0f30</anchor>
      <arglist>() override</arglist>
    </member>
    <member kind="function" protection="protected">
      <type>mavlink::mavlink_status_t *</type>
      <name>get_status_p</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga2bb422475644d340b8116f7d67253dde</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>uint8_t</type>
      <name>get_system_id</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gac09eda5df4b4b82823429d9af6dddd44</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" protection="private" static="yes">
      <type>static void</type>
      <name>init_msg_entry</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gaef852d6fd7163fce9087b40a58c0097d</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" protection="protected">
      <type>void</type>
      <name>iostat_rx_add</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gab045ff5b6e55b96630f00e131e4d2c16</anchor>
      <arglist>(size_t bytes)</arglist>
    </member>
    <member kind="function" protection="protected">
      <type>void</type>
      <name>iostat_tx_add</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gaabfc001375565bdafd47172374fcda0f</anchor>
      <arglist>(size_t bytes)</arglist>
    </member>
    <member kind="function">
      <type>bool</type>
      <name>is_open</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga7b2ae62cddd41671b3312050f64b3036</anchor>
      <arglist>() override</arglist>
    </member>
    <member kind="function">
      <type>bool</type>
      <name>is_open</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga496ff8d6806b35c993740cc05727f59c</anchor>
      <arglist>() override</arglist>
    </member>
    <member kind="function">
      <type>bool</type>
      <name>is_open</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gadcabe763ecf8fc00e123fcf78af9eaf4</anchor>
      <arglist>() override</arglist>
    </member>
    <member kind="function">
      <type>bool</type>
      <name>is_open</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga7bcb8a571a040f61ad2b61f002edc381</anchor>
      <arglist>() override</arglist>
    </member>
    <member kind="function" virtualness="pure">
      <type>virtual bool</type>
      <name>is_open</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga135638c7c953c50bee3143a9e2b35416</anchor>
      <arglist>()=0</arglist>
    </member>
    <member kind="function" protection="protected">
      <type>void</type>
      <name>log_recv</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga6edf345e262423905ecd6da2966d7b4f</anchor>
      <arglist>(const char *pfx, mavlink::mavlink_message_t &amp;msg, Framing framing)</arglist>
    </member>
    <member kind="function" protection="protected">
      <type>void</type>
      <name>log_send</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga7a6bcc0b1c21c9016422e2c20b4b04d0</anchor>
      <arglist>(const char *pfx, const mavlink::mavlink_message_t *msg)</arglist>
    </member>
    <member kind="function" protection="protected">
      <type>void</type>
      <name>log_send_obj</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga52bf39da3102cf3376a801f5b0f647a5</anchor>
      <arglist>(const char *pfx, const mavlink::Message &amp;msg)</arglist>
    </member>
    <member kind="function" static="yes">
      <type>static std::string</type>
      <name>make_message</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga76a9378a9bfc4f2b6f1b9c3ecb00ec9a</anchor>
      <arglist>(const char *module, T msg)</arglist>
    </member>
    <member kind="function" protection="private">
      <type></type>
      <name>MAVConnInterface</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gacd56462848ee9561c55698b3b4c5d1b1</anchor>
      <arglist>(const MAVConnInterface &amp;)=delete</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>MAVConnInterface</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga9b64f95099f1be0b41ae1dd459db63bc</anchor>
      <arglist>(uint8_t system_id=1, uint8_t component_id=MAV_COMP_ID_UDP_BRIDGE)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>MAVConnSerial</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga53b8b8d9fceab4d4a2767b3aa0a25462</anchor>
      <arglist>(uint8_t system_id=1, uint8_t component_id=MAV_COMP_ID_UDP_BRIDGE, std::string device=DEFAULT_DEVICE, unsigned baudrate=DEFAULT_BAUDRATE, bool hwflow=false)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>MAVConnTCPClient</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga93a7b76eccf987b4321f7bcc502001b8</anchor>
      <arglist>(uint8_t system_id, uint8_t component_id, boost::asio::io_service &amp;server_io)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>MAVConnTCPClient</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga930d7bcb750e00606a1ba406135f0020</anchor>
      <arglist>(uint8_t system_id=1, uint8_t component_id=MAV_COMP_ID_UDP_BRIDGE, std::string server_host=DEFAULT_SERVER_HOST, unsigned short server_port=DEFAULT_SERVER_PORT)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>MAVConnTCPServer</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gad395465c3a85e4441cbccc84615cacb5</anchor>
      <arglist>(uint8_t system_id=1, uint8_t component_id=MAV_COMP_ID_UDP_BRIDGE, std::string bind_host=DEFAULT_BIND_HOST, unsigned short bind_port=DEFAULT_BIND_PORT)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>MAVConnUDP</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga22deee111faac2fde80a0affc6c29245</anchor>
      <arglist>(uint8_t system_id=1, uint8_t component_id=MAV_COMP_ID_UDP_BRIDGE, std::string bind_host=DEFAULT_BIND_HOST, unsigned short bind_port=DEFAULT_BIND_PORT, std::string remote_host=DEFAULT_REMOTE_HOST, unsigned short remote_port=DEFAULT_REMOTE_PORT)</arglist>
    </member>
    <member kind="function" static="yes">
      <type>static std::string</type>
      <name>msg_to_string</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga1a6103f0af6a0a451ae5af0ba190a50d</anchor>
      <arglist>(boost::system::system_error &amp;err)</arglist>
    </member>
    <member kind="function" static="yes">
      <type>static std::string</type>
      <name>msg_to_string</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gae998ec92e731b23abc43286b88fa84ca</anchor>
      <arglist>(const char *description)</arglist>
    </member>
    <member kind="function" static="yes">
      <type>static std::string</type>
      <name>msg_to_string</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga0422d27d75fd22d67cc678d9b92f9d95</anchor>
      <arglist>(int errnum)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>MsgBuffer</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga64da82fdf707ca5304fda5e686fe4f11</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>MsgBuffer</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga202de878cea6b3fff8f8ef8c7f001cd5</anchor>
      <arglist>(const mavlink::mavlink_message_t *msg)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>MsgBuffer</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga8bcb63913aa131f1c054dc1e18a4d945</anchor>
      <arglist>(const mavlink::Message &amp;obj, mavlink::mavlink_status_t *status, uint8_t sysid, uint8_t compid)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>MsgBuffer</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga4555922debc003d9ba989aded6714fb5</anchor>
      <arglist>(const uint8_t *bytes, ssize_t nbytes)</arglist>
    </member>
    <member kind="function">
      <type>ssize_t</type>
      <name>nbytes</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga564c27473f42c6cea687c8b5bbbb1621</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" static="yes">
      <type>static Ptr</type>
      <name>open_url</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gadcb338b777d0a29ae87bdbf56d8c4c33</anchor>
      <arglist>(std::string url, uint8_t system_id=1, uint8_t component_id=MAV_COMP_ID_UDP_BRIDGE, const ReceivedCb &amp;cb_handle_message=ReceivedCb(), const ClosedCb &amp;cb_handle_closed_port=ClosedCb())</arglist>
    </member>
    <member kind="function" static="yes">
      <type>static Ptr</type>
      <name>open_url_no_connect</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga95c2580b000fea7ee81791d63c25ae64</anchor>
      <arglist>(std::string url, uint8_t system_id=1, uint8_t component_id=MAV_COMP_ID_UDP_BRIDGE)</arglist>
    </member>
    <member kind="function" protection="protected">
      <type>void</type>
      <name>parse_buffer</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga5086c8460510e92da4e86fb266cb5a8b</anchor>
      <arglist>(const char *pfx, uint8_t *buf, const size_t bufsize, size_t bytes_received)</arglist>
    </member>
    <member kind="function" static="yes">
      <type>static bool</type>
      <name>resolve_address_tcp</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gac60b8995acae39e0d83d62b55323a74c</anchor>
      <arglist>(io_service &amp;io, size_t chan, std::string host, unsigned short port, tcp::endpoint &amp;ep)</arglist>
    </member>
    <member kind="function" static="yes">
      <type>static bool</type>
      <name>resolve_address_udp</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga6fa5da19f86d5bfb4422a05c15873331</anchor>
      <arglist>(io_service &amp;io, size_t chan, std::string host, unsigned short port, udp::endpoint &amp;ep)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>send_bytes</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga6073d6f88157f3b29ee519eafe16f8fd</anchor>
      <arglist>(const uint8_t *bytes, size_t length) override</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>send_bytes</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga7a1a56365cb5355da86a6a6e2bb4bc8e</anchor>
      <arglist>(const uint8_t *bytes, size_t length) override</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>send_bytes</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gac327ab4a27b6de2da3c594d93c599312</anchor>
      <arglist>(const uint8_t *bytes, size_t length) override</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>send_bytes</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga4eedf8da39d9dee8cf84074d010ddf0d</anchor>
      <arglist>(const uint8_t *bytes, size_t length) override</arglist>
    </member>
    <member kind="function" virtualness="pure">
      <type>virtual void</type>
      <name>send_bytes</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga7d00279e176e9a6890ed47ab1ceeb597</anchor>
      <arglist>(const uint8_t *bytes, size_t length)=0</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>send_message</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga452a97c9cd256b591eee063a1927a93a</anchor>
      <arglist>(const mavlink::mavlink_message_t *message) override</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>send_message</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gae33a3895701a613a72d7fc1ab9bbb3d8</anchor>
      <arglist>(const mavlink::mavlink_message_t *message) override</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>send_message</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga6f835299707df78f3694cef5853139d4</anchor>
      <arglist>(const mavlink::mavlink_message_t *message) override</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>send_message</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gacbae4efba2ed887e4a731ca60dceb0a6</anchor>
      <arglist>(const mavlink::mavlink_message_t *message) override</arglist>
    </member>
    <member kind="function" virtualness="pure">
      <type>virtual void</type>
      <name>send_message</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gad807cf7e1935548e0c7ba94943cbb7aa</anchor>
      <arglist>(const mavlink::mavlink_message_t *message)=0</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual void</type>
      <name>send_message</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga6af3ab61730d6cef64b167b4cd8956e3</anchor>
      <arglist>(const mavlink::Message &amp;message)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>send_message</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga47e914a4f0d33ce89d0dec9df50b2360</anchor>
      <arglist>(const mavlink::Message &amp;message, const uint8_t source_compid) override</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>send_message</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga4fa2e83e6073089f355934696d568aed</anchor>
      <arglist>(const mavlink::Message &amp;message, const uint8_t source_compid) override</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>send_message</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga59e5c1ac405a36de1a626e1066268c75</anchor>
      <arglist>(const mavlink::Message &amp;message, const uint8_t source_compid) override</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>send_message</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gaf4c27609941699e62981bab04f64d246</anchor>
      <arglist>(const mavlink::Message &amp;message, const uint8_t source_compid) override</arglist>
    </member>
    <member kind="function" virtualness="pure">
      <type>virtual void</type>
      <name>send_message</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga27debe86c28cf208903ccb0c7414e07b</anchor>
      <arglist>(const mavlink::Message &amp;message, const uint8_t src_compid)=0</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>send_message_ignore_drop</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gabf049aebc9a9a9abfd36a1fb0034a433</anchor>
      <arglist>(const mavlink::mavlink_message_t *message)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>send_message_ignore_drop</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gaafdea305c3cd449ac629f84598febbe0</anchor>
      <arglist>(const mavlink::Message &amp;message)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>send_message_ignore_drop</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga67928b3ef1cc91a2d42de31c69eac78c</anchor>
      <arglist>(const mavlink::Message &amp;message, const uint8_t src_compid)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>set_component_id</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gac3e7c34cdb6e8104959654ff49bd2497</anchor>
      <arglist>(uint8_t compid)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>set_protocol_version</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gae78b30f23f5f1a94684761f7ddc0d2e2</anchor>
      <arglist>(Protocol pver)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>set_system_id</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gaf2828d99a65c8e631566e7fd564abac3</anchor>
      <arglist>(uint8_t sysid)</arglist>
    </member>
    <member kind="function" static="yes">
      <type>static void</type>
      <name>url_parse_host</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gae58851f2a11f5372dc1cb8d4e8295589</anchor>
      <arglist>(std::string host, std::string &amp;host_out, int &amp;port_out, const std::string def_host, const int def_port)</arglist>
    </member>
    <member kind="function" static="yes">
      <type>static void</type>
      <name>url_parse_query</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gae4c87353e8213c84c3b094d884035fbc</anchor>
      <arglist>(std::string query, uint8_t &amp;sysid, uint8_t &amp;compid)</arglist>
    </member>
    <member kind="function" static="yes">
      <type>static MAVConnInterface::Ptr</type>
      <name>url_parse_serial</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gaeaa9e04064e3ebc7ff1bfc46c0eb1e97</anchor>
      <arglist>(std::string path, std::string query, uint8_t system_id, uint8_t component_id, bool hwflow)</arglist>
    </member>
    <member kind="function" static="yes">
      <type>static MAVConnInterface::Ptr</type>
      <name>url_parse_tcp_client</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga50392e3a8260dd21671883ad67a1176c</anchor>
      <arglist>(std::string host, std::string query, uint8_t system_id, uint8_t component_id)</arglist>
    </member>
    <member kind="function" static="yes">
      <type>static MAVConnInterface::Ptr</type>
      <name>url_parse_tcp_server</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga859646efce0b3d6f7fefe7ca3f443af7</anchor>
      <arglist>(std::string host, std::string query, uint8_t system_id, uint8_t component_id)</arglist>
    </member>
    <member kind="function" static="yes">
      <type>static MAVConnInterface::Ptr</type>
      <name>url_parse_udp</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gaa9774724a37df446436776ec2ce7b89c</anchor>
      <arglist>(std::string hosts, std::string query, uint8_t system_id, uint8_t component_id, bool is_udpb, bool permanent_broadcast)</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual</type>
      <name>~MAVConnSerial</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga63860bdb6f3eb8a5ef266fc99edd715d</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual</type>
      <name>~MAVConnTCPClient</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gaa9e9ea305aaaa39aeb4bcb91328d47c5</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual</type>
      <name>~MAVConnTCPServer</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gaee25f07913d08d976e205be3136d813c</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual</type>
      <name>~MAVConnUDP</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gad9edacd1a8f5993cdcfb188f83e3ca49</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual</type>
      <name>~MsgBuffer</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gac56cac6705c915b3c74c3d0b12c45939</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="variable" protection="private">
      <type>boost::asio::ip::tcp::acceptor</type>
      <name>acceptor</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gae54198e1b2298d28509b75258d6085b7</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>boost::asio::ip::udp::endpoint</type>
      <name>bind_ep</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga844e549102c881755685d8fc31226700</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>boost::asio::ip::tcp::endpoint</type>
      <name>bind_ep</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gaf44fa60b1c61e77d3b5e0f5ab2d267da</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" static="yes">
      <type>static constexpr auto</type>
      <name>BROADCAST_REMOTE_HOST</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gae78adaaf99172a7aafead43dc2883cec</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::list&lt; std::shared_ptr&lt; MAVConnTCPClient &gt; &gt;</type>
      <name>client_list</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga35978a7c19f14edd285555ec2c4fa10e</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>uint8_t</type>
      <name>comp_id</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga9f68651877ebc10d79f41925185d8553</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>size_t</type>
      <name>conn_id</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gab5e1164e0e16a986b4b8b07ac42149e5</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private" static="yes">
      <type>static std::atomic&lt; size_t &gt;</type>
      <name>conn_id_counter</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga271f52f70e8a75c59426bba3971ab95c</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>uint8_t</type>
      <name>data</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gafac3ddb58cafe6448ff6f046a73a66a5</anchor>
      <arglist>[MAX_SIZE]</arglist>
    </member>
    <member kind="variable" static="yes">
      <type>static constexpr auto</type>
      <name>DEFAULT_BAUDRATE</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gaf0dd28c4a6b236f2ec3092a1b35ff5df</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" static="yes">
      <type>static constexpr auto</type>
      <name>DEFAULT_BIND_HOST</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga62467db7651e86bb5428c4288356f813</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" static="yes">
      <type>static constexpr auto</type>
      <name>DEFAULT_BIND_HOST</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gae043843ee4b947094ca58342c442c3b6</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" static="yes">
      <type>static constexpr auto</type>
      <name>DEFAULT_BIND_PORT</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga330f03ed06a3e027ec7be74426dc646b</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" static="yes">
      <type>static constexpr auto</type>
      <name>DEFAULT_BIND_PORT</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gacf9d47d0f198105f4a27c9668ba793b1</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" static="yes">
      <type>static constexpr auto</type>
      <name>DEFAULT_DEVICE</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga3b2c35e0bfa1020060b2fde345d66f0e</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" static="yes">
      <type>static constexpr auto</type>
      <name>DEFAULT_REMOTE_HOST</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga7a03f4b69e2791a742717516b6421466</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" static="yes">
      <type>static constexpr auto</type>
      <name>DEFAULT_REMOTE_PORT</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga25daeb4235691fdf52da1551bf93bc88</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" static="yes">
      <type>static constexpr auto</type>
      <name>DEFAULT_SERVER_HOST</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga25f08b85aaeacae255d37a898f978c42</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" static="yes">
      <type>static constexpr auto</type>
      <name>DEFAULT_SERVER_PORT</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga3d9c438ece25a8aa6ae7af15341e7706</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private" static="yes">
      <type>static std::once_flag</type>
      <name>init_flag</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gaea1c781c2d59310bc71e6b994ad811c3</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>boost::asio::io_service</type>
      <name>io_service</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga307ecb75aaa11da3219c8327f612bbd1</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>boost::asio::io_service</type>
      <name>io_service</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga240e473e4774af7450a044fd5627f466</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>boost::asio::io_service</type>
      <name>io_service</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga14790e1516d382bd99f6edbf096229e3</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>boost::asio::io_service</type>
      <name>io_service</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga6b94e5e63f070a571324a5ea76f30d77</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::thread</type>
      <name>io_thread</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga7889312accd2f77c677ec56b2f9fe300</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::thread</type>
      <name>io_thread</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gacd2b07b5480c66754b850c609b8b0c68</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::thread</type>
      <name>io_thread</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gacc56e8b79c7cceb1dbb8a96588d81848</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::thread</type>
      <name>io_thread</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga5c6919dd23a9145da8f20847a74e1b92</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::unique_ptr&lt; boost::asio::io_service::work &gt;</type>
      <name>io_work</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga1cc128f7b23afd389a915523e165d65a</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::unique_ptr&lt; boost::asio::io_service::work &gt;</type>
      <name>io_work</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga7fb26091b4ff6c744ce9a4eee2a234e4</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::unique_ptr&lt; boost::asio::io_service::work &gt;</type>
      <name>io_work</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga555c78eafea6eb83b4fa0c56d32e1117</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::recursive_mutex</type>
      <name>iostat_mutex</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga5901ad3bf2e4ecb181bf0767508d04c3</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::atomic&lt; bool &gt;</type>
      <name>is_destroying</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga28afceb9e4c1a65f4acda055742005b0</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::atomic&lt; bool &gt;</type>
      <name>is_destroying</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga12610a1b9854a3bb722ab1229cfbc29d</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::chrono::time_point&lt; steady_clock &gt;</type>
      <name>last_iostat</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga009da6f1615a2f9cdc19e44cdfb009c0</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>boost::asio::ip::udp::endpoint</type>
      <name>last_remote_ep</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gac80526faefe220734640fc0f72fdb158</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>size_t</type>
      <name>last_rx_total_bytes</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gaa0bd02ab76b4c0c549a667022568ca55</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>size_t</type>
      <name>last_tx_total_bytes</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gac23e741f585e75c0b3488f7bfc7a7551</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>ssize_t</type>
      <name>len</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga712063584cbb6fa1ffb3cb30d0b2bd61</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>mavlink::mavlink_message_t</type>
      <name>m_buffer</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga954656c4a8f58bf61c4ea4aa903b1e68</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>mavlink::mavlink_status_t</type>
      <name>m_mavlink_status</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga470daf84b9e546032b295f075e9f394b</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>mavlink::mavlink_status_t</type>
      <name>m_parse_status</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga814ef19a1622b08c2a91379638cc7a40</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" static="yes">
      <type>static constexpr auto</type>
      <name>MAV_COMP_ID_UDP_BRIDGE</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gaaf2017cbed1a6863f1c7dde68ff01baf</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected" static="yes">
      <type>static constexpr size_t</type>
      <name>MAX_PACKET_SIZE</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga1810847cbd773691c40b73e9ed24455d</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" static="yes">
      <type>static constexpr ssize_t</type>
      <name>MAX_SIZE</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga7187a6a6dd41cfe0e92d2c59c81a0010</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected" static="yes">
      <type>static constexpr size_t</type>
      <name>MAX_TXQ_SIZE</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gaf5e70afd06413dba8c7aee46396f03a1</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected" static="yes">
      <type>static std::unordered_map&lt; mavlink::msgid_t, const mavlink::mavlink_msg_entry_t * &gt;</type>
      <name>message_entries</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga95f9336a3630ce53abf1611f5e8a061f</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>ReceivedCb</type>
      <name>message_received_cb</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga47d4ac1fa3ceb8797164b56c517f1ff8</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::recursive_mutex</type>
      <name>mutex</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gad528432535aeb635f2ed08bc77f641ea</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::recursive_mutex</type>
      <name>mutex</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga5efb8dc674cc05b47e5e15cfc612b180</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::recursive_mutex</type>
      <name>mutex</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gab01217166a4a8d6ef02cbbb76497d029</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::recursive_mutex</type>
      <name>mutex</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga76a49cf0dde8998cfc89bf9abc3511cc</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>bool</type>
      <name>permanent_broadcast</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gac4f1e0d79c0387e1e608658856479d53</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" static="yes">
      <type>static constexpr auto</type>
      <name>PERMANENT_BROADCAST_REMOTE_HOST</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gab9cc9895e36eefd3cd6e6fc7d4895c6f</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>ClosedCb</type>
      <name>port_closed_cb</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gaf00411ca9b9fbe3329804f22755dee05</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>ssize_t</type>
      <name>pos</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gaf3493729d445b0f55b2ced8cfc5fa0f6</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>boost::asio::ip::udp::endpoint</type>
      <name>recv_ep</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gac8aee73b29825fa900b613ea10d8cc8a</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>boost::asio::ip::udp::endpoint</type>
      <name>remote_ep</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga9916c5b42fc68a1b96a0891512441631</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::atomic&lt; bool &gt;</type>
      <name>remote_exists</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga5dfbbe7837b1bc5edeaf00dd6c0a7115</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::array&lt; uint8_t, MsgBuffer::MAX_SIZE &gt;</type>
      <name>rx_buf</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga5146d63de89653b58552cdb7b992c549</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::array&lt; uint8_t, MsgBuffer::MAX_SIZE &gt;</type>
      <name>rx_buf</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga8255d65124d559d2fc54b0929db9739e</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::array&lt; uint8_t, MsgBuffer::MAX_SIZE &gt;</type>
      <name>rx_buf</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga2e6835a48e96d018f66685d236828c54</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>float</type>
      <name>rx_speed</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gaf125917de0e57f9f394f038c71799fa0</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>size_t</type>
      <name>rx_total_bytes</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga3f5e58792c58b0400dcd903c821e97cb</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::atomic&lt; size_t &gt;</type>
      <name>rx_total_bytes</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gafd9becf52414d0c409afbfadeb458def</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>boost::asio::serial_port</type>
      <name>serial_dev</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gafaaa9c4e2b9df881c5a08b860ce96c2c</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>boost::asio::ip::tcp::endpoint</type>
      <name>server_ep</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gab5edf3003bc20ce9d58bd96eb088f193</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>boost::asio::ip::tcp::socket</type>
      <name>socket</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga7f526878c7f6a3538b66ddea8b1c7458</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>boost::asio::ip::udp::socket</type>
      <name>socket</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga80d618c29c866459bcfb6fa7b4766fda</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>uint8_t</type>
      <name>sys_id</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga2dc764873c9185f0399bf41fbadff32f</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::atomic&lt; bool &gt;</type>
      <name>tx_in_progress</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga3081a6ebfed67b652763f5941e1a0e79</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::atomic&lt; bool &gt;</type>
      <name>tx_in_progress</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga251eabe992ff3804292c11587c6b1d46</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::atomic&lt; bool &gt;</type>
      <name>tx_in_progress</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga990c9f7a9091474165583d34f1fe1d92</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::deque&lt; MsgBuffer &gt;</type>
      <name>tx_q</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga0196a14c22a520566e43dfc496062992</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::deque&lt; MsgBuffer &gt;</type>
      <name>tx_q</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gaff1d9074bfdbf001e0d08c651dff84e6</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::deque&lt; MsgBuffer &gt;</type>
      <name>tx_q</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gaed2e262261adecf3de9ced183a977ee2</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>float</type>
      <name>tx_speed</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gadbe490b44c012f629ee0dc0302c17a8b</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>size_t</type>
      <name>tx_total_bytes</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga941de0f0d1968c6b2d272d5834d8f526</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::atomic&lt; size_t &gt;</type>
      <name>tx_total_bytes</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gab122b202a6ca1d84f883d21a36811fe5</anchor>
      <arglist></arglist>
    </member>
    <member kind="friend" protection="private">
      <type>friend class</type>
      <name>MAVConnTCPServer</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>gaa93ce54993292c6350cf74aa47fde6cd</anchor>
      <arglist></arglist>
    </member>
    <member kind="friend" protection="private">
      <type>const friend mavlink::mavlink_msg_entry_t *</type>
      <name>mavlink::mavlink_get_msg_entry</name>
      <anchorfile>group__mavconn.html</anchorfile>
      <anchor>ga0e619f628d48db7f6cb2297262f33b5b</anchor>
      <arglist>(uint32_t msgid)</arglist>
    </member>
  </compound>
  <compound kind="group">
    <name>mavutils</name>
    <title>Mavutils</title>
    <filename>group__mavutils.html</filename>
    <namespace>mavconn</namespace>
    <namespace>mavconn::utils</namespace>
    <member kind="function">
      <type>std::string</type>
      <name>format</name>
      <anchorfile>group__mavutils.html</anchorfile>
      <anchor>ga0d03da68919138512c198995276dd9ea</anchor>
      <arglist>(const std::string &amp;fmt, Args ... args)</arglist>
    </member>
    <member kind="function">
      <type>constexpr size_t</type>
      <name>operator&quot;&quot;_KiB</name>
      <anchorfile>group__mavutils.html</anchorfile>
      <anchor>ga301ff0ee568776aa543ccaff3c1c039c</anchor>
      <arglist>(unsigned long long sz)</arglist>
    </member>
    <member kind="function">
      <type>bool</type>
      <name>set_this_thread_name</name>
      <anchorfile>group__mavutils.html</anchorfile>
      <anchor>gac5ea11f12ae2183df1dc4a810ff0a87b</anchor>
      <arglist>(const std::string &amp;name, Args &amp;&amp;... args)</arglist>
    </member>
    <member kind="function">
      <type>const std::string</type>
      <name>to_string_ss</name>
      <anchorfile>group__mavutils.html</anchorfile>
      <anchor>ga6c132876dd85249684a7935fe0bc8f51</anchor>
      <arglist>(T &amp;obj)</arglist>
    </member>
  </compound>
</tagfile>
