<?xml version='1.0' encoding='UTF-8' standalone='yes' ?>
<tagfile>
  <compound kind="file">
    <name>__init__.py</name>
    <path>/tmp/ws/src/skyway/examples/skyway_for_ros_examples/scripts/utils/</path>
    <filename>____init_____8py.html</filename>
    <namespace>utils</namespace>
  </compound>
  <compound kind="file">
    <name>binary_loopback.cpp</name>
    <path>/tmp/ws/src/skyway/src/plugin/samples/</path>
    <filename>binary__loopback_8cpp.html</filename>
    <includes id="binary__loopback_8h" name="binary_loopback.h" local="no" imported="no">skyway/binary_loopback.h</includes>
    <includes id="skyway__plugin_8h" name="skyway_plugin.h" local="no" imported="no">skyway/skyway_plugin.h</includes>
  </compound>
  <compound kind="file">
    <name>binary_loopback.h</name>
    <path>/tmp/ws/src/skyway/include/skyway/</path>
    <filename>binary__loopback_8h.html</filename>
    <includes id="skyway__plugin_8h" name="skyway_plugin.h" local="no" imported="no">skyway/skyway_plugin.h</includes>
    <class kind="class">binary_loopback::BinaryLoopback</class>
    <namespace>binary_loopback</namespace>
  </compound>
  <compound kind="file">
    <name>binary_plugin_router.cpp</name>
    <path>/tmp/ws/src/skyway/src/plugin_router/</path>
    <filename>binary__plugin__router_8cpp.html</filename>
    <includes id="binary__plugin__router_8h" name="binary_plugin_router.h" local="yes" imported="no">binary_plugin_router.h</includes>
    <member kind="function">
      <type>Component&lt; fruit::Annotated&lt; BinaryAnnotation, PluginRouterFactory &gt; &gt;</type>
      <name>getBinaryPluginRouterComponent</name>
      <anchorfile>binary__plugin__router_8cpp.html</anchorfile>
      <anchor>a61a0b995529cdc15f06966ae6a81995b</anchor>
      <arglist>()</arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>binary_plugin_router.h</name>
    <path>/tmp/ws/src/skyway/src/plugin_router/</path>
    <filename>binary__plugin__router_8h.html</filename>
    <includes id="udp__socket_8h" name="udp_socket.h" local="yes" imported="no">../socket/udp_socket.h</includes>
    <includes id="plugin__router_8h" name="plugin_router.h" local="yes" imported="no">plugin_router.h</includes>
    <includes id="skyway__plugin_8h" name="skyway_plugin.h" local="yes" imported="no">skyway/skyway_plugin.h</includes>
    <class kind="struct">BinaryAnnotation</class>
    <class kind="class">BinaryPluginRouter</class>
    <member kind="function">
      <type>Component&lt; fruit::Annotated&lt; BinaryAnnotation, PluginRouterFactory &gt; &gt;</type>
      <name>getBinaryPluginRouterComponent</name>
      <anchorfile>binary__plugin__router_8h.html</anchorfile>
      <anchor>a61a0b995529cdc15f06966ae6a81995b</anchor>
      <arglist>()</arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>binary_plugin_router_test.cpp</name>
    <path>/tmp/ws/src/skyway/test/plugin_router/</path>
    <filename>binary__plugin__router__test_8cpp.html</filename>
    <includes id="binary__plugin__router_8h" name="binary_plugin_router.h" local="yes" imported="no">../../src/plugin_router/binary_plugin_router.h</includes>
    <includes id="socket_8h" name="socket.h" local="yes" imported="no">../../src/socket/socket.h</includes>
    <class kind="class">MockBinarySocket</class>
    <member kind="function">
      <type>Component&lt; Annotated&lt; BinaryAnnotation, PluginRouterFactory &gt; &gt;</type>
      <name>getMockBinaryPluginRouterComponent</name>
      <anchorfile>binary__plugin__router__test_8cpp.html</anchorfile>
      <anchor>a28f5ecbb02133a97fa93e4949f1e8ac8</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>Component&lt; SocketFactory &gt;</type>
      <name>getMockBinarySourceComponent</name>
      <anchorfile>binary__plugin__router__test_8cpp.html</anchorfile>
      <anchor>a1ac998c0e12f68f807d6d85b1208a546</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>TEST</name>
      <anchorfile>binary__plugin__router__test_8cpp.html</anchorfile>
      <anchor>ac472fac02bad33db4ffa600c87f8172e</anchor>
      <arglist>(TestSuite, binary_plugin_try_start_not_found_plugin)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>TEST</name>
      <anchorfile>binary__plugin__router__test_8cpp.html</anchorfile>
      <anchor>a5c167ccbd01842c87b912aa6e13be8bb</anchor>
      <arglist>(TestSuite, binary_plugin_try_start_with_invalid_xml)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>TEST</name>
      <anchorfile>binary__plugin__router__test_8cpp.html</anchorfile>
      <anchor>acbe6b704a819b8d85acb06e4054e399f</anchor>
      <arglist>(TestSuite, binary_plugin_try_start_with_loopback_plugin)</arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>callback_from_rust.cpp</name>
    <path>/tmp/ws/src/skyway/src/ffi/</path>
    <filename>callback__from__rust_8cpp.html</filename>
    <includes id="callback__from__rust_8h" name="callback_from_rust.h" local="yes" imported="no">callback_from_rust.h</includes>
    <includes id="rust__functions_8h" name="rust_functions.h" local="yes" imported="no">rust_functions.h</includes>
    <member kind="function">
      <type>PluginLoadResult</type>
      <name>create_data_callback_ffi</name>
      <anchorfile>callback__from__rust_8cpp.html</anchorfile>
      <anchor>ac687bd42d62826bd1463d44499e9c9be</anchor>
      <arglist>(char *target_ip, uint16_t target_port, char *plugin_type, char *plugin_param)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>create_peer_callback_ffi</name>
      <anchorfile>callback__from__rust_8cpp.html</anchorfile>
      <anchor>addc0675c410c557559af733a6f7c61e3</anchor>
      <arglist>(char *peer_id, char *token)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>data_connection_close_event_callback_ffi</name>
      <anchorfile>callback__from__rust_8cpp.html</anchorfile>
      <anchor>a4d12ef99d5547eeabdba0b8fb1befc6c</anchor>
      <arglist>(uint16_t port_num)</arglist>
    </member>
    <member kind="function">
      <type>Component&lt; CallbackFromRust &gt;</type>
      <name>getCallbackFromRustComponent</name>
      <anchorfile>callback__from__rust_8cpp.html</anchorfile>
      <anchor>a741e6b1eec13141db635b13ec7399e08</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>peer_deleted_callback_ffi</name>
      <anchorfile>callback__from__rust_8cpp.html</anchorfile>
      <anchor>a44ae3d748f1f8c45ee35b4e68a9f415d</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>release_string_ffi</name>
      <anchorfile>callback__from__rust_8cpp.html</anchorfile>
      <anchor>a424d593a9075c3ab1adb6494cd973792</anchor>
      <arglist>(char *str)</arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>callback_from_rust.h</name>
    <path>/tmp/ws/src/skyway/src/ffi/</path>
    <filename>callback__from__rust_8h.html</filename>
    <includes id="common_8h" name="common.h" local="yes" imported="no">common.h</includes>
    <includes id="ros__functions_8h" name="ros_functions.h" local="yes" imported="no">ros_functions.h</includes>
    <class kind="class">CallbackFromRust</class>
    <class kind="class">CallbackFromRustImpl</class>
    <member kind="function">
      <type>Component&lt; CallbackFromRust &gt;</type>
      <name>getCallbackFromRustComponent</name>
      <anchorfile>callback__from__rust_8h.html</anchorfile>
      <anchor>a741e6b1eec13141db635b13ec7399e08</anchor>
      <arglist>()</arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>common.h</name>
    <path>/tmp/ws/src/skyway/src/ffi/</path>
    <filename>common_8h.html</filename>
    <class kind="struct">Function</class>
    <class kind="struct">PluginLoadResult</class>
    <class kind="struct">run_response_t</class>
    <member kind="typedef">
      <type>bool(*)()</type>
      <name>bool_void_func</name>
      <anchorfile>common_8h.html</anchorfile>
      <anchor>a5a8bd92143fb886985106da127ecf00f</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef">
      <type>PluginLoadResult(*)(char *, uint16_t, char *, char *)</type>
      <name>plugin_topicparam_func</name>
      <anchorfile>common_8h.html</anchorfile>
      <anchor>af1fe290513c80fb62007a02a156ecc19</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef">
      <type>void(*)(char *, char *)</type>
      <name>void_char_char_func</name>
      <anchorfile>common_8h.html</anchorfile>
      <anchor>ae0bce3a4605d749b2d3da0f7d5b46d96</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef">
      <type>void(*)(char *)</type>
      <name>void_char_func</name>
      <anchorfile>common_8h.html</anchorfile>
      <anchor>a04d4e1f5e82d0dac9a462b531d622d7c</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef">
      <type>void(*)(double)</type>
      <name>void_double_func</name>
      <anchorfile>common_8h.html</anchorfile>
      <anchor>a5d9e54810ca86e1750f4b094db655d03</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef">
      <type>void(*)(uint16_t)</type>
      <name>void_uint16_func</name>
      <anchorfile>common_8h.html</anchorfile>
      <anchor>a3e00f0b9491bb6e35f3f580560bb2c0e</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef">
      <type>void(*)()</type>
      <name>void_void_func</name>
      <anchorfile>common_8h.html</anchorfile>
      <anchor>a3c464cc1550cf016337a22e70ebd9155</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>control_service.cpp</name>
    <path>/tmp/ws/src/skyway/src/presentation/</path>
    <filename>control__service_8cpp.html</filename>
    <includes id="control__service_8h" name="control_service.h" local="yes" imported="no">control_service.h</includes>
    <member kind="function">
      <type>Component&lt; ControlServiceFactory &gt;</type>
      <name>getControlServiceComponent</name>
      <anchorfile>control__service_8cpp.html</anchorfile>
      <anchor>a20b5375aa70e0bed722481ed2c8346b4</anchor>
      <arglist>()</arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>control_service.h</name>
    <path>/tmp/ws/src/skyway/src/presentation/</path>
    <filename>control__service_8h.html</filename>
    <class kind="class">ControlService</class>
    <class kind="class">ControlServiceImpl</class>
    <member kind="typedef">
      <type>std::function&lt; std::unique_ptr&lt; ControlService &gt;(std::string, std::function&lt; std::string(std::string)&gt;)&gt;</type>
      <name>ControlServiceFactory</name>
      <anchorfile>control__service_8h.html</anchorfile>
      <anchor>a9b573125c1ef91b49e4be6bf4a8dcbe4</anchor>
      <arglist></arglist>
    </member>
    <member kind="function">
      <type>fruit::Component&lt; ControlServiceFactory &gt;</type>
      <name>getControlServiceComponent</name>
      <anchorfile>control__service_8h.html</anchorfile>
      <anchor>a0888da31c86ff117c12a0e37dfd21756</anchor>
      <arglist>()</arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>data.py</name>
    <path>/tmp/ws/src/skyway/examples/skyway_for_ros_examples/scripts/utils/</path>
    <filename>data_8py.html</filename>
    <namespace>utils::data</namespace>
    <member kind="function">
      <type>def</type>
      <name>create_connect_request</name>
      <anchorfile>namespaceutils_1_1data.html</anchorfile>
      <anchor>a85a3190ab101699371b810634cd8d504</anchor>
      <arglist>(peer_id, token, target_id, plugin_info, metadata, data_id, redirect_ip, redirect_port)</arglist>
    </member>
    <member kind="function">
      <type>def</type>
      <name>create_data_status_request</name>
      <anchorfile>namespaceutils_1_1data.html</anchorfile>
      <anchor>aeaf1fe8842c65776c07253ab91fc9fcb</anchor>
      <arglist>(data_connection_id)</arglist>
    </member>
    <member kind="function">
      <type>def</type>
      <name>redirect_request</name>
      <anchorfile>namespaceutils_1_1data.html</anchorfile>
      <anchor>a16779891dfea28c0d6b0482d9c22f6f3</anchor>
      <arglist>(data_connection_id, plugin_info)</arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>data_callee.py</name>
    <path>/tmp/ws/src/skyway/examples/skyway_for_ros_examples/scripts/</path>
    <filename>data__callee_8py.html</filename>
    <class kind="class">data_callee::EventListener</class>
    <namespace>data_callee</namespace>
    <member kind="function">
      <type>def</type>
      <name>main</name>
      <anchorfile>namespacedata__callee.html</anchorfile>
      <anchor>a063696c5654075d5f7d2497417fab278</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>def</type>
      <name>signal_handler</name>
      <anchorfile>namespacedata__callee.html</anchorfile>
      <anchor>ae8d7d6fb25d97068de4e9ab01010faee</anchor>
      <arglist>(peer_id, token)</arglist>
    </member>
    <member kind="variable">
      <type></type>
      <name>log_level</name>
      <anchorfile>namespacedata__callee.html</anchorfile>
      <anchor>aec7fd32b6bdb6df2e4cec7cccb117d3c</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>data_caller.py</name>
    <path>/tmp/ws/src/skyway/examples/skyway_for_ros_examples/scripts/</path>
    <filename>data__caller_8py.html</filename>
    <class kind="class">data_caller::EventListener</class>
    <namespace>data_caller</namespace>
    <member kind="function">
      <type>def</type>
      <name>main</name>
      <anchorfile>namespacedata__caller.html</anchorfile>
      <anchor>a9dbf886cf4e2d9aa17a08defff7647ad</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>def</type>
      <name>signal_handler</name>
      <anchorfile>namespacedata__caller.html</anchorfile>
      <anchor>a5e7cff5fba22b89bdb3c2c61026ca03b</anchor>
      <arglist>(peer_id, token)</arglist>
    </member>
    <member kind="variable">
      <type></type>
      <name>log_level</name>
      <anchorfile>namespacedata__caller.html</anchorfile>
      <anchor>a6cda70443511ee0fd64aeded5e522896</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>events_service.cpp</name>
    <path>/tmp/ws/src/skyway/src/presentation/</path>
    <filename>events__service_8cpp.html</filename>
    <includes id="events__service_8h" name="events_service.h" local="yes" imported="no">events_service.h</includes>
    <member kind="function">
      <type>Component&lt; EventsServiceFactory &gt;</type>
      <name>getEventsServiceComponent</name>
      <anchorfile>events__service_8cpp.html</anchorfile>
      <anchor>a0ffec827dca95cbc273236db9147abf6</anchor>
      <arglist>()</arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>events_service.h</name>
    <path>/tmp/ws/src/skyway/src/presentation/</path>
    <filename>events__service_8h.html</filename>
    <class kind="class">EventsService</class>
    <class kind="class">EventsServiceImpl</class>
    <member kind="typedef">
      <type>std::function&lt; std::unique_ptr&lt; EventsService &gt;(std::string, std::function&lt; std::string()&gt;)&gt;</type>
      <name>EventsServiceFactory</name>
      <anchorfile>events__service_8h.html</anchorfile>
      <anchor>a2489a3dc9b3ae4073836e64f8917a6c2</anchor>
      <arglist></arglist>
    </member>
    <member kind="function">
      <type>fruit::Component&lt; EventsServiceFactory &gt;</type>
      <name>getEventsServiceComponent</name>
      <anchorfile>events__service_8h.html</anchorfile>
      <anchor>a181d8d1cbe6f131f90f725f2851c45a3</anchor>
      <arglist>()</arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>json_loopback.cpp</name>
    <path>/tmp/ws/src/skyway/src/plugin/samples/</path>
    <filename>json__loopback_8cpp.html</filename>
    <includes id="json__loopback_8h" name="json_loopback.h" local="no" imported="no">skyway/json_loopback.h</includes>
    <includes id="skyway__plugin_8h" name="skyway_plugin.h" local="no" imported="no">skyway/skyway_plugin.h</includes>
  </compound>
  <compound kind="file">
    <name>json_loopback.h</name>
    <path>/tmp/ws/src/skyway/include/skyway/</path>
    <filename>json__loopback_8h.html</filename>
    <includes id="skyway__plugin_8h" name="skyway_plugin.h" local="no" imported="no">skyway/skyway_plugin.h</includes>
    <class kind="class">json_loopback::JsonLoopback</class>
    <namespace>json_loopback</namespace>
  </compound>
  <compound kind="file">
    <name>json_plugin_router.cpp</name>
    <path>/tmp/ws/src/skyway/src/plugin_router/</path>
    <filename>json__plugin__router_8cpp.html</filename>
    <includes id="json__plugin__router_8h" name="json_plugin_router.h" local="yes" imported="no">json_plugin_router.h</includes>
    <member kind="function">
      <type>Component&lt; fruit::Annotated&lt; JsonAnnotation, PluginRouterFactory &gt; &gt;</type>
      <name>getJsonPluginRouterComponent</name>
      <anchorfile>json__plugin__router_8cpp.html</anchorfile>
      <anchor>a38785348c2f250d750896cee4be0f28f</anchor>
      <arglist>()</arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>json_plugin_router.h</name>
    <path>/tmp/ws/src/skyway/src/plugin_router/</path>
    <filename>json__plugin__router_8h.html</filename>
    <includes id="udp__socket_8h" name="udp_socket.h" local="yes" imported="no">../socket/udp_socket.h</includes>
    <includes id="plugin__router_8h" name="plugin_router.h" local="yes" imported="no">plugin_router.h</includes>
    <includes id="skyway__plugin_8h" name="skyway_plugin.h" local="yes" imported="no">skyway/skyway_plugin.h</includes>
    <class kind="struct">JsonAnnotation</class>
    <class kind="class">JsonPluginRouter</class>
    <member kind="function">
      <type>Component&lt; fruit::Annotated&lt; JsonAnnotation, PluginRouterFactory &gt; &gt;</type>
      <name>getJsonPluginRouterComponent</name>
      <anchorfile>json__plugin__router_8h.html</anchorfile>
      <anchor>a38785348c2f250d750896cee4be0f28f</anchor>
      <arglist>()</arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>json_plugin_router_test.cpp</name>
    <path>/tmp/ws/src/skyway/test/plugin_router/</path>
    <filename>json__plugin__router__test_8cpp.html</filename>
    <includes id="json__plugin__router_8h" name="json_plugin_router.h" local="yes" imported="no">../../src/plugin_router/json_plugin_router.h</includes>
    <includes id="udp__socket_8h" name="udp_socket.h" local="yes" imported="no">../../src/socket/udp_socket.h</includes>
    <class kind="class">MockJsonSocket</class>
    <member kind="function">
      <type>Component&lt; Annotated&lt; JsonAnnotation, PluginRouterFactory &gt; &gt;</type>
      <name>getMockJsonPluginRouterComponent</name>
      <anchorfile>json__plugin__router__test_8cpp.html</anchorfile>
      <anchor>a9efd3d0a082c029d330a76f30ac5bb89</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>Component&lt; SocketFactory &gt;</type>
      <name>getMockJsonUdpSourceComponent</name>
      <anchorfile>json__plugin__router__test_8cpp.html</anchorfile>
      <anchor>a6c277b4585d4361372bd54fe02805e64</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>TEST</name>
      <anchorfile>json__plugin__router__test_8cpp.html</anchorfile>
      <anchor>af732432bcb084270ab06ddce6cb15452</anchor>
      <arglist>(TestSuite, json_plugin_try_start_not_found_plugin)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>TEST</name>
      <anchorfile>json__plugin__router__test_8cpp.html</anchorfile>
      <anchor>a6e46098eff89713398d95a62f6c3d3e4</anchor>
      <arglist>(TestSuite, json_plugin_try_start_with_invalid_xml)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>TEST</name>
      <anchorfile>json__plugin__router__test_8cpp.html</anchorfile>
      <anchor>a36fd2b0cd563a59402edbc57232969b3</anchor>
      <arglist>(TestSuite, json_plugin_try_start_with_loopback_plugin)</arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>main.cpp</name>
    <path>/tmp/ws/src/skyway/src/</path>
    <filename>main_8cpp.html</filename>
    <includes id="callback__from__rust_8h" name="callback_from_rust.h" local="yes" imported="no">ffi/callback_from_rust.h</includes>
    <includes id="rust__functions_8h" name="rust_functions.h" local="yes" imported="no">ffi/rust_functions.h</includes>
    <member kind="function">
      <type>int</type>
      <name>main</name>
      <anchorfile>main_8cpp.html</anchorfile>
      <anchor>a3c04138a5bfe5d72780bb7e82a18e627</anchor>
      <arglist>(int argc, char **argv)</arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>main.py</name>
    <path>/tmp/ws/src/skyway/examples/gstreamer_launcher/scripts/</path>
    <filename>main_8py.html</filename>
    <namespace>main</namespace>
    <member kind="function">
      <type>def</type>
      <name>exiting</name>
      <anchorfile>namespacemain.html</anchorfile>
      <anchor>a0c44129ea4c86f1b48f05e94ea31f908</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>def</type>
      <name>gst_launch_server</name>
      <anchorfile>namespacemain.html</anchorfile>
      <anchor>a0f765285488745a7ed3487866fc67b1e</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>def</type>
      <name>launcher</name>
      <anchorfile>namespacemain.html</anchorfile>
      <anchor>a97018796b35f1d5f6c25c370fd7125e0</anchor>
      <arglist>(req)</arglist>
    </member>
    <member kind="function">
      <type>def</type>
      <name>main</name>
      <anchorfile>namespacemain.html</anchorfile>
      <anchor>af613cea4cba4fb7de8e40896b3368945</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>def</type>
      <name>sigterm_handler</name>
      <anchorfile>namespacemain.html</anchorfile>
      <anchor>ab18bd9a5f3444c2223729532367b3720</anchor>
      <arglist>(signal, frame)</arglist>
    </member>
    <member kind="variable">
      <type></type>
      <name>exiting_thread</name>
      <anchorfile>namespacemain.html</anchorfile>
      <anchor>ab3564b95dc37c76d7fe3f0d01273a952</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type></type>
      <name>log_level</name>
      <anchorfile>namespacemain.html</anchorfile>
      <anchor>a7c448fa533f5ed7dc4a0d2c1eeada635</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>media.py</name>
    <path>/tmp/ws/src/skyway/examples/skyway_for_ros_examples/scripts/utils/</path>
    <filename>media_8py.html</filename>
    <namespace>utils::media</namespace>
    <member kind="function">
      <type>def</type>
      <name>create_answer_query</name>
      <anchorfile>namespaceutils_1_1media.html</anchorfile>
      <anchor>a1b9963d661186c45a41dce051dae1d0f</anchor>
      <arglist>(media_connection_id)</arglist>
    </member>
    <member kind="function">
      <type>def</type>
      <name>create_call_query</name>
      <anchorfile>namespaceutils_1_1media.html</anchorfile>
      <anchor>aa8fcf4a8ad9af7b6c0bdeea4fd270fc1</anchor>
      <arglist>(peer_id, token, target_id)</arglist>
    </member>
    <member kind="function">
      <type>def</type>
      <name>create_media_status_request</name>
      <anchorfile>namespaceutils_1_1media.html</anchorfile>
      <anchor>acb077b523fb723553b76f8a4cf106ea7</anchor>
      <arglist>(media_connection_id)</arglist>
    </member>
    <member kind="function">
      <type>def</type>
      <name>find_free_port</name>
      <anchorfile>namespaceutils_1_1media.html</anchorfile>
      <anchor>a291cd6676bad6a547a412a6de05afc20</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>def</type>
      <name>parse_media_info</name>
      <anchorfile>namespaceutils_1_1media.html</anchorfile>
      <anchor>a2b70888cb77b9d6ace9d874f52ef093f</anchor>
      <arglist>(object)</arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>media_callee.py</name>
    <path>/tmp/ws/src/skyway/examples/skyway_for_ros_examples/scripts/</path>
    <filename>media__callee_8py.html</filename>
    <class kind="class">media_callee::EventListener</class>
    <namespace>media_callee</namespace>
    <member kind="function">
      <type>def</type>
      <name>main</name>
      <anchorfile>namespacemedia__callee.html</anchorfile>
      <anchor>a9e40b741173f6f91b5f7a8c7d068f3da</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>def</type>
      <name>signal_handler</name>
      <anchorfile>namespacemedia__callee.html</anchorfile>
      <anchor>a33cf64f7a90747bac43aadbef2194a7b</anchor>
      <arglist>(peer_id, token)</arglist>
    </member>
    <member kind="variable">
      <type></type>
      <name>log_level</name>
      <anchorfile>namespacemedia__callee.html</anchorfile>
      <anchor>a9fe9653231c741fa41060e905e826588</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>media_caller.py</name>
    <path>/tmp/ws/src/skyway/examples/skyway_for_ros_examples/scripts/</path>
    <filename>media__caller_8py.html</filename>
    <class kind="class">media_caller::EventListener</class>
    <namespace>media_caller</namespace>
    <member kind="function">
      <type>def</type>
      <name>main</name>
      <anchorfile>namespacemedia__caller.html</anchorfile>
      <anchor>ab5c28782ebfb79fa3f4c8a2afbb25194</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>def</type>
      <name>signal_handler</name>
      <anchorfile>namespacemedia__caller.html</anchorfile>
      <anchor>a9c8b782938ea6ef220fb26ea5d4ac00d</anchor>
      <arglist>(peer_id, token)</arglist>
    </member>
    <member kind="variable">
      <type></type>
      <name>log_level</name>
      <anchorfile>namespacemedia__caller.html</anchorfile>
      <anchor>a51647d6bce993637c1b637ee8bdbd5c6</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>peer.py</name>
    <path>/tmp/ws/src/skyway/examples/skyway_for_ros_examples/scripts/utils/</path>
    <filename>peer_8py.html</filename>
    <namespace>utils::peer</namespace>
    <member kind="function">
      <type>def</type>
      <name>create_peer_request</name>
      <anchorfile>namespaceutils_1_1peer.html</anchorfile>
      <anchor>ac1ce57812e243aa60205f043e9a8d3b8</anchor>
      <arglist>(peer_id, api_key)</arglist>
    </member>
    <member kind="function">
      <type>def</type>
      <name>create_peer_status_request</name>
      <anchorfile>namespaceutils_1_1peer.html</anchorfile>
      <anchor>a1ad6a52191317e48dee7246b1ff26b11</anchor>
      <arglist>(peer_id, token)</arglist>
    </member>
    <member kind="function">
      <type>def</type>
      <name>delete_peer_request</name>
      <anchorfile>namespaceutils_1_1peer.html</anchorfile>
      <anchor>a9fa150c5987bb61aca630f5b4df68d12</anchor>
      <arglist>(peer_id, token)</arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>plugin.py</name>
    <path>/tmp/ws/src/skyway/examples/skyway_for_ros_examples/scripts/utils/</path>
    <filename>plugin_8py.html</filename>
    <class kind="class">utils::plugin::PluginManager</class>
    <namespace>utils::plugin</namespace>
  </compound>
  <compound kind="file">
    <name>plugin_router.h</name>
    <path>/tmp/ws/src/skyway/src/plugin_router/</path>
    <filename>plugin__router_8h.html</filename>
    <class kind="struct">PluginResult</class>
    <class kind="class">PluginRouter</class>
    <member kind="typedef">
      <type>std::function&lt; std::unique_ptr&lt; PluginRouter &gt;(std::shared_ptr&lt; rapidjson::Document &gt;, udp::endpoint)&gt;</type>
      <name>PluginRouterFactory</name>
      <anchorfile>plugin__router_8h.html</anchorfile>
      <anchor>ab85da1fcaa30937afcbb3fc300126b2f</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>plugin_router_factory.cpp</name>
    <path>/tmp/ws/src/skyway/src/plugin_router/</path>
    <filename>plugin__router__factory_8cpp.html</filename>
    <includes id="plugin__router__factory_8h" name="plugin_router_factory.h" local="yes" imported="no">plugin_router_factory.h</includes>
    <member kind="function">
      <type>Component&lt; IPluginRouterFactory &gt;</type>
      <name>getPluginFactoryComponent</name>
      <anchorfile>plugin__router__factory_8cpp.html</anchorfile>
      <anchor>a2a45e991e1b9b4562df8c0a3b16d9f66</anchor>
      <arglist>()</arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>plugin_router_factory.h</name>
    <path>/tmp/ws/src/skyway/src/plugin_router/</path>
    <filename>plugin__router__factory_8h.html</filename>
    <includes id="binary__plugin__router_8h" name="binary_plugin_router.h" local="yes" imported="no">binary_plugin_router.h</includes>
    <includes id="json__plugin__router_8h" name="json_plugin_router.h" local="yes" imported="no">json_plugin_router.h</includes>
    <includes id="string__plugin__router_8h" name="string_plugin_router.h" local="yes" imported="no">string_plugin_router.h</includes>
    <class kind="class">IPluginRouterFactory</class>
    <class kind="class">PluginRouterFactoryImpl</class>
    <member kind="function">
      <type>Component&lt; IPluginRouterFactory &gt;</type>
      <name>getPluginFactoryComponent</name>
      <anchorfile>plugin__router__factory_8h.html</anchorfile>
      <anchor>a2a45e991e1b9b4562df8c0a3b16d9f66</anchor>
      <arglist>()</arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>plugin_router_factory_test.cpp</name>
    <path>/tmp/ws/src/skyway/test/plugin_router/</path>
    <filename>plugin__router__factory__test_8cpp.html</filename>
    <includes id="plugin__router__factory_8h" name="plugin_router_factory.h" local="yes" imported="no">../../src/plugin_router/plugin_router_factory.h</includes>
    <includes id="binary__plugin__router_8h" name="binary_plugin_router.h" local="yes" imported="no">../../src/plugin_router/binary_plugin_router.h</includes>
    <includes id="json__plugin__router_8h" name="json_plugin_router.h" local="yes" imported="no">../../src/plugin_router/json_plugin_router.h</includes>
    <includes id="string__plugin__router_8h" name="string_plugin_router.h" local="yes" imported="no">../../src/plugin_router/string_plugin_router.h</includes>
    <member kind="function">
      <type></type>
      <name>TEST</name>
      <anchorfile>plugin__router__factory__test_8cpp.html</anchorfile>
      <anchor>a6d54275e87da66ff7965fbc69ae742f0</anchor>
      <arglist>(TestSuite, create_binary_plugin_with_factory)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>TEST</name>
      <anchorfile>plugin__router__factory__test_8cpp.html</anchorfile>
      <anchor>af5f11af4bfd3ae26937fef92f1b31265</anchor>
      <arglist>(TestSuite, create_json_plugin_with_factory)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>TEST</name>
      <anchorfile>plugin__router__factory__test_8cpp.html</anchorfile>
      <anchor>a32e487764d76ccd9568390d6d083a481</anchor>
      <arglist>(TestSuite, create_string_plugin_with_factory)</arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>ros_functions.cpp</name>
    <path>/tmp/ws/src/skyway/src/ffi/</path>
    <filename>ros__functions_8cpp.html</filename>
    <includes id="ros__functions_8h" name="ros_functions.h" local="yes" imported="no">ros_functions.h</includes>
    <includes id="rust__functions_8h" name="rust_functions.h" local="yes" imported="no">rust_functions.h</includes>
    <member kind="function">
      <type>bool</type>
      <name>is_ok_c</name>
      <anchorfile>ros__functions_8cpp.html</anchorfile>
      <anchor>a0d653daeb4060d0f3ffd9277b60cc746</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>bool</type>
      <name>is_shutting_down_c</name>
      <anchorfile>ros__functions_8cpp.html</anchorfile>
      <anchor>a52d8e2b3f839233a50dbac8f081157f7</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>log_debug_c</name>
      <anchorfile>ros__functions_8cpp.html</anchorfile>
      <anchor>a8bd3cdb895ea74bfe5e26279fd8a5e19</anchor>
      <arglist>(char *message)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>log_err_c</name>
      <anchorfile>ros__functions_8cpp.html</anchorfile>
      <anchor>a5aaf2f53cbb62313d06b59fa5837f933</anchor>
      <arglist>(char *message)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>log_info_c</name>
      <anchorfile>ros__functions_8cpp.html</anchorfile>
      <anchor>a5f923b5e7937f08620184fd838f26a62</anchor>
      <arglist>(char *message)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>log_warn_c</name>
      <anchorfile>ros__functions_8cpp.html</anchorfile>
      <anchor>ac516ba2bc86eac0dccc5288d303da179</anchor>
      <arglist>(char *message)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>ros_sleep_c</name>
      <anchorfile>ros__functions_8cpp.html</anchorfile>
      <anchor>a0e9ba7fba98be912ff6e45aefc97af19</anchor>
      <arglist>(double dur)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>shutdown_c</name>
      <anchorfile>ros__functions_8cpp.html</anchorfile>
      <anchor>a32ba4786bf1da180ed5ea982e0045e7b</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>wait_for_shutdown_c</name>
      <anchorfile>ros__functions_8cpp.html</anchorfile>
      <anchor>a0a424cfb01a618e5fb96138e78025ead</anchor>
      <arglist>()</arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>ros_functions.h</name>
    <path>/tmp/ws/src/skyway/src/ffi/</path>
    <filename>ros__functions_8h.html</filename>
    <includes id="router_8h" name="router.h" local="yes" imported="no">../router.h</includes>
    <member kind="function">
      <type>bool</type>
      <name>is_ok_c</name>
      <anchorfile>ros__functions_8h.html</anchorfile>
      <anchor>a0d653daeb4060d0f3ffd9277b60cc746</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>bool</type>
      <name>is_shutting_down_c</name>
      <anchorfile>ros__functions_8h.html</anchorfile>
      <anchor>a52d8e2b3f839233a50dbac8f081157f7</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>log_debug_c</name>
      <anchorfile>ros__functions_8h.html</anchorfile>
      <anchor>a8bd3cdb895ea74bfe5e26279fd8a5e19</anchor>
      <arglist>(char *message)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>log_err_c</name>
      <anchorfile>ros__functions_8h.html</anchorfile>
      <anchor>a5aaf2f53cbb62313d06b59fa5837f933</anchor>
      <arglist>(char *message)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>log_info_c</name>
      <anchorfile>ros__functions_8h.html</anchorfile>
      <anchor>a5f923b5e7937f08620184fd838f26a62</anchor>
      <arglist>(char *message)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>log_warn_c</name>
      <anchorfile>ros__functions_8h.html</anchorfile>
      <anchor>ac516ba2bc86eac0dccc5288d303da179</anchor>
      <arglist>(char *message)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>ros_sleep_c</name>
      <anchorfile>ros__functions_8h.html</anchorfile>
      <anchor>a0e9ba7fba98be912ff6e45aefc97af19</anchor>
      <arglist>(double dur)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>shutdown_c</name>
      <anchorfile>ros__functions_8h.html</anchorfile>
      <anchor>a32ba4786bf1da180ed5ea982e0045e7b</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>wait_for_shutdown_c</name>
      <anchorfile>ros__functions_8h.html</anchorfile>
      <anchor>a0a424cfb01a618e5fb96138e78025ead</anchor>
      <arglist>()</arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>router.cpp</name>
    <path>/tmp/ws/src/skyway/src/</path>
    <filename>router_8cpp.html</filename>
    <includes id="router_8h" name="router.h" local="yes" imported="no">router.h</includes>
    <includes id="rust__functions_8h" name="rust_functions.h" local="yes" imported="no">ffi/rust_functions.h</includes>
    <member kind="function">
      <type>Component&lt; Router &gt;</type>
      <name>getRouterComponent</name>
      <anchorfile>router_8cpp.html</anchorfile>
      <anchor>ae1c86b0be266c5e4102f52cdb194a4fe</anchor>
      <arglist>()</arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>router.h</name>
    <path>/tmp/ws/src/skyway/src/</path>
    <filename>router_8h.html</filename>
    <includes id="ros__functions_8h" name="ros_functions.h" local="yes" imported="no">ffi/ros_functions.h</includes>
    <includes id="plugin__router__factory_8h" name="plugin_router_factory.h" local="yes" imported="no">plugin_router/plugin_router_factory.h</includes>
    <includes id="control__service_8h" name="control_service.h" local="yes" imported="no">presentation/control_service.h</includes>
    <includes id="events__service_8h" name="events_service.h" local="yes" imported="no">presentation/events_service.h</includes>
    <class kind="class">Router</class>
    <class kind="class">RouterImpl</class>
    <member kind="function">
      <type>Component&lt; Router &gt;</type>
      <name>getRouterComponent</name>
      <anchorfile>router_8h.html</anchorfile>
      <anchor>ae1c86b0be266c5e4102f52cdb194a4fe</anchor>
      <arglist>()</arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>rust_functions.h</name>
    <path>/tmp/ws/src/skyway/src/ffi/</path>
    <filename>rust__functions_8h.html</filename>
    <includes id="common_8h" name="common.h" local="yes" imported="no">common.h</includes>
    <member kind="function">
      <type>char *</type>
      <name>call_service</name>
      <anchorfile>rust__functions_8h.html</anchorfile>
      <anchor>ae813580e6a593d6863956c5e6165212f</anchor>
      <arglist>(const char *message)</arglist>
    </member>
    <member kind="function">
      <type>PluginLoadResult</type>
      <name>create_data_callback</name>
      <anchorfile>rust__functions_8h.html</anchorfile>
      <anchor>a6c7cc704689452a4b288ea14e3009baf</anchor>
      <arglist>(char *parameter)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>create_peer_callback</name>
      <anchorfile>rust__functions_8h.html</anchorfile>
      <anchor>affe24a80b34b9c4fc7a29253ffa21253</anchor>
      <arglist>(char *peer_id, char *token)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>data_connection_close_event_callback</name>
      <anchorfile>rust__functions_8h.html</anchorfile>
      <anchor>a6e3028315fb09b63575c6d52197d59c4</anchor>
      <arglist>(char *data_connection_id)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>join_handler</name>
      <anchorfile>rust__functions_8h.html</anchorfile>
      <anchor>a4d4913cce90bbf6395f530e49715718a</anchor>
      <arglist>(void *handler)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>peer_deleted_callback</name>
      <anchorfile>rust__functions_8h.html</anchorfile>
      <anchor>a9213ae8788c40e33285e3b8278118d78</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>print_string</name>
      <anchorfile>rust__functions_8h.html</anchorfile>
      <anchor>a180b1704b5aa04df694426a3589c7d04</anchor>
      <arglist>(char *message)</arglist>
    </member>
    <member kind="function">
      <type>char *</type>
      <name>receive_events</name>
      <anchorfile>rust__functions_8h.html</anchorfile>
      <anchor>abaa8bd262b7ade6ca339d30d99b2f5e2</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>register_callbacks</name>
      <anchorfile>rust__functions_8h.html</anchorfile>
      <anchor>a8acb7e75125f0cb5907b195ecbb32414</anchor>
      <arglist>(Function &amp;functions)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>register_logger</name>
      <anchorfile>rust__functions_8h.html</anchorfile>
      <anchor>a160ee18c35e1f5cf3ed569bc4535f171</anchor>
      <arglist>(void_char_func debug, void_char_func info, void_char_func warn, void_char_func error)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>register_program_state</name>
      <anchorfile>rust__functions_8h.html</anchorfile>
      <anchor>a3d1e31a29d1a1029c5dd697348e89a90</anchor>
      <arglist>(bool_void_func is_running_c, bool_void_func is_shutting_down_c, void_double_func sleep_c, void_void_func wait_for_shutdown_c, void_void_func shutdown_c)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>release_string</name>
      <anchorfile>rust__functions_8h.html</anchorfile>
      <anchor>ae25e2d4c0d64f956a11017acc2ff0d20</anchor>
      <arglist>(char *message)</arglist>
    </member>
    <member kind="function">
      <type>run_response_t</type>
      <name>run</name>
      <anchorfile>rust__functions_8h.html</anchorfile>
      <anchor>a77ab423e91b381346950726c0d196350</anchor>
      <arglist>()</arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>service_client.py</name>
    <path>/tmp/ws/src/skyway/examples/skyway_for_ros_examples/scripts/utils/</path>
    <filename>service__client_8py.html</filename>
    <namespace>utils::service_client</namespace>
    <member kind="function">
      <type>def</type>
      <name>gst_launch</name>
      <anchorfile>namespaceutils_1_1service__client.html</anchorfile>
      <anchor>a79d6fbd5afbbc8b54b1926792f1b8a67</anchor>
      <arglist>(message_type, command, pid)</arglist>
    </member>
    <member kind="function">
      <type>def</type>
      <name>skyway_control</name>
      <anchorfile>namespaceutils_1_1service__client.html</anchorfile>
      <anchor>a2480036355eda603eb5baa7606116b47</anchor>
      <arglist>(json_str)</arglist>
    </member>
    <member kind="function">
      <type>def</type>
      <name>skyway_event</name>
      <anchorfile>namespaceutils_1_1service__client.html</anchorfile>
      <anchor>ab6bc04a98d2cce7884c078c38038abf8</anchor>
      <arglist>(peer_id, token)</arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>skyway_plugin.cpp</name>
    <path>/tmp/ws/src/skyway/src/plugin/</path>
    <filename>skyway__plugin_8cpp.html</filename>
    <includes id="binary__loopback_8h" name="binary_loopback.h" local="no" imported="no">skyway/binary_loopback.h</includes>
    <includes id="json__loopback_8h" name="json_loopback.h" local="no" imported="no">skyway/json_loopback.h</includes>
    <includes id="skyway__plugin_8h" name="skyway_plugin.h" local="no" imported="no">skyway/skyway_plugin.h</includes>
    <includes id="string__loopback_8h" name="string_loopback.h" local="no" imported="no">skyway/string_loopback.h</includes>
    <includes id="string__pub__sub_8h" name="string_pub_sub.h" local="no" imported="no">skyway/string_pub_sub.h</includes>
    <member kind="function">
      <type></type>
      <name>PLUGINLIB_EXPORT_CLASS</name>
      <anchorfile>skyway__plugin_8cpp.html</anchorfile>
      <anchor>a8b222b1c6ec36d853b3b4de6468e49c7</anchor>
      <arglist>(binary_loopback::BinaryLoopback, skyway_plugin::SkyWayBinaryPlugin)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>PLUGINLIB_EXPORT_CLASS</name>
      <anchorfile>skyway__plugin_8cpp.html</anchorfile>
      <anchor>a8591877cb5aa1248409002fc46c647cc</anchor>
      <arglist>(json_loopback::JsonLoopback, skyway_plugin::SkyWayJsonPlugin)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>PLUGINLIB_EXPORT_CLASS</name>
      <anchorfile>skyway__plugin_8cpp.html</anchorfile>
      <anchor>a8de90a17a994a2a56172cbc2c8ccaf1f</anchor>
      <arglist>(string_loopback::StringLoopback, skyway_plugin::SkyWayStringPlugin)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>PLUGINLIB_EXPORT_CLASS</name>
      <anchorfile>skyway__plugin_8cpp.html</anchorfile>
      <anchor>a204f9b96920d955e9088e5e7439db172</anchor>
      <arglist>(string_pub_sub::StringPubSub, skyway_plugin::SkyWayStringPlugin)</arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>skyway_plugin.h</name>
    <path>/tmp/ws/src/skyway/include/skyway/</path>
    <filename>skyway__plugin_8h.html</filename>
    <class kind="class">skyway_plugin::SkyWayBinaryPlugin</class>
    <class kind="class">skyway_plugin::SkyWayJsonPlugin</class>
    <class kind="class">skyway_plugin::SkyWayStringPlugin</class>
    <namespace>skyway_plugin</namespace>
  </compound>
  <compound kind="file">
    <name>socket.h</name>
    <path>/tmp/ws/src/skyway/src/socket/</path>
    <filename>socket_8h.html</filename>
    <class kind="class">Socket</class>
  </compound>
  <compound kind="file">
    <name>string_loopback.cpp</name>
    <path>/tmp/ws/src/skyway/src/plugin/samples/</path>
    <filename>string__loopback_8cpp.html</filename>
    <includes id="skyway__plugin_8h" name="skyway_plugin.h" local="no" imported="no">skyway/skyway_plugin.h</includes>
    <includes id="string__loopback_8h" name="string_loopback.h" local="no" imported="no">skyway/string_loopback.h</includes>
  </compound>
  <compound kind="file">
    <name>string_loopback.h</name>
    <path>/tmp/ws/src/skyway/include/skyway/</path>
    <filename>string__loopback_8h.html</filename>
    <includes id="skyway__plugin_8h" name="skyway_plugin.h" local="no" imported="no">skyway/skyway_plugin.h</includes>
    <class kind="class">string_loopback::StringLoopback</class>
    <namespace>string_loopback</namespace>
  </compound>
  <compound kind="file">
    <name>string_plugin_router.cpp</name>
    <path>/tmp/ws/src/skyway/src/plugin_router/</path>
    <filename>string__plugin__router_8cpp.html</filename>
    <includes id="string__plugin__router_8h" name="string_plugin_router.h" local="yes" imported="no">string_plugin_router.h</includes>
    <member kind="function">
      <type>Component&lt; fruit::Annotated&lt; StringAnnotation, PluginRouterFactory &gt; &gt;</type>
      <name>getStringPluginRouterComponent</name>
      <anchorfile>string__plugin__router_8cpp.html</anchorfile>
      <anchor>afc4638992bdbfaa019e1a34d5ab59ec9</anchor>
      <arglist>()</arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>string_plugin_router.h</name>
    <path>/tmp/ws/src/skyway/src/plugin_router/</path>
    <filename>string__plugin__router_8h.html</filename>
    <includes id="udp__socket_8h" name="udp_socket.h" local="yes" imported="no">../socket/udp_socket.h</includes>
    <includes id="plugin__router_8h" name="plugin_router.h" local="yes" imported="no">plugin_router.h</includes>
    <includes id="skyway__plugin_8h" name="skyway_plugin.h" local="yes" imported="no">skyway/skyway_plugin.h</includes>
    <class kind="struct">StringAnnotation</class>
    <class kind="class">StringPluginRouter</class>
    <member kind="function">
      <type>Component&lt; fruit::Annotated&lt; StringAnnotation, PluginRouterFactory &gt; &gt;</type>
      <name>getStringPluginRouterComponent</name>
      <anchorfile>string__plugin__router_8h.html</anchorfile>
      <anchor>afc4638992bdbfaa019e1a34d5ab59ec9</anchor>
      <arglist>()</arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>string_plugin_router_test.cpp</name>
    <path>/tmp/ws/src/skyway/test/plugin_router/</path>
    <filename>string__plugin__router__test_8cpp.html</filename>
    <includes id="string__plugin__router_8h" name="string_plugin_router.h" local="yes" imported="no">../../src/plugin_router/string_plugin_router.h</includes>
    <includes id="udp__socket_8h" name="udp_socket.h" local="yes" imported="no">../../src/socket/udp_socket.h</includes>
    <class kind="class">MockStringSocket</class>
    <member kind="function">
      <type>Component&lt; Annotated&lt; StringAnnotation, PluginRouterFactory &gt; &gt;</type>
      <name>getMockStringPluginRouterComponent</name>
      <anchorfile>string__plugin__router__test_8cpp.html</anchorfile>
      <anchor>a7acca3909e1cec9c17ba150068da6083</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>Component&lt; SocketFactory &gt;</type>
      <name>getMockStringUdpSourceComponent</name>
      <anchorfile>string__plugin__router__test_8cpp.html</anchorfile>
      <anchor>a94b1f48304de26783c89459532e425a9</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>TEST</name>
      <anchorfile>string__plugin__router__test_8cpp.html</anchorfile>
      <anchor>a341e651b2465c07fcceff8097b15a953</anchor>
      <arglist>(TestSuite, string_plugin_try_start_not_found_plugin)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>TEST</name>
      <anchorfile>string__plugin__router__test_8cpp.html</anchorfile>
      <anchor>a93da443dcf9c91e152823be883739c3b</anchor>
      <arglist>(TestSuite, string_plugin_try_start_with_invalid_xml)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>TEST</name>
      <anchorfile>string__plugin__router__test_8cpp.html</anchorfile>
      <anchor>aff89bbec304548399af056be5d1bce1b</anchor>
      <arglist>(TestSuite, string_plugin_try_start_with_loopback_plugin)</arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>string_pub_sub.cpp</name>
    <path>/tmp/ws/src/skyway/src/plugin/samples/</path>
    <filename>string__pub__sub_8cpp.html</filename>
    <includes id="skyway__plugin_8h" name="skyway_plugin.h" local="no" imported="no">skyway/skyway_plugin.h</includes>
    <includes id="string__pub__sub_8h" name="string_pub_sub.h" local="no" imported="no">skyway/string_pub_sub.h</includes>
  </compound>
  <compound kind="file">
    <name>string_pub_sub.h</name>
    <path>/tmp/ws/src/skyway/include/skyway/</path>
    <filename>string__pub__sub_8h.html</filename>
    <includes id="skyway__plugin_8h" name="skyway_plugin.h" local="no" imported="no">skyway/skyway_plugin.h</includes>
    <class kind="class">string_pub_sub::StringPubSub</class>
    <namespace>string_pub_sub</namespace>
  </compound>
  <compound kind="file">
    <name>test_main.cpp</name>
    <path>/tmp/ws/src/skyway/test/</path>
    <filename>test__main_8cpp.html</filename>
    <member kind="function">
      <type>int</type>
      <name>main</name>
      <anchorfile>test__main_8cpp.html</anchorfile>
      <anchor>a3c04138a5bfe5d72780bb7e82a18e627</anchor>
      <arglist>(int argc, char **argv)</arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>udp_socket.cpp</name>
    <path>/tmp/ws/src/skyway/src/socket/</path>
    <filename>udp__socket_8cpp.html</filename>
    <includes id="udp__socket_8h" name="udp_socket.h" local="yes" imported="no">udp_socket.h</includes>
    <member kind="function">
      <type>udp::endpoint</type>
      <name>getFreePort</name>
      <anchorfile>udp__socket_8cpp.html</anchorfile>
      <anchor>ad7ae007fd949319e34907506794b6186</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>Component&lt; SocketFactory &gt;</type>
      <name>getUdpSocketComponent</name>
      <anchorfile>udp__socket_8cpp.html</anchorfile>
      <anchor>a76f62b6ba942f55282e00195c56350a8</anchor>
      <arglist>()</arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>udp_socket.h</name>
    <path>/tmp/ws/src/skyway/src/socket/</path>
    <filename>udp__socket_8h.html</filename>
    <includes id="socket_8h" name="socket.h" local="yes" imported="no">socket.h</includes>
    <class kind="class">UdpSocket</class>
    <member kind="typedef">
      <type>std::function&lt; std::unique_ptr&lt; Socket &gt;(udp::endpoint, std::shared_ptr&lt; std::function&lt; void(std::vector&lt; uint8_t &gt;)&gt; &gt;)&gt;</type>
      <name>SocketFactory</name>
      <anchorfile>udp__socket_8h.html</anchorfile>
      <anchor>ada0192500dc34dedb5b710e0ee5ecb42</anchor>
      <arglist></arglist>
    </member>
    <member kind="function">
      <type>udp::endpoint</type>
      <name>getFreePort</name>
      <anchorfile>udp__socket_8h.html</anchorfile>
      <anchor>ad7ae007fd949319e34907506794b6186</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>fruit::Component&lt; SocketFactory &gt;</type>
      <name>getUdpSocketComponent</name>
      <anchorfile>udp__socket_8h.html</anchorfile>
      <anchor>a9aab8a03a8df68518611c9201ace1119</anchor>
      <arglist>()</arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>udp_socket_test.cpp</name>
    <path>/tmp/ws/src/skyway/test/socket/</path>
    <filename>udp__socket__test_8cpp.html</filename>
    <includes id="udp__socket_8h" name="udp_socket.h" local="yes" imported="no">../../src/socket/udp_socket.h</includes>
    <member kind="function">
      <type></type>
      <name>TEST</name>
      <anchorfile>udp__socket__test_8cpp.html</anchorfile>
      <anchor>ae698842e0c78e882d4b3312ec8238ea2</anchor>
      <arglist>(TestSuite, socket_callback)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>TEST</name>
      <anchorfile>udp__socket__test_8cpp.html</anchorfile>
      <anchor>aa926efe1599ddd5376fed452703a88bf</anchor>
      <arglist>(TestSuite, socket_callback_in_map)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>TEST</name>
      <anchorfile>udp__socket__test_8cpp.html</anchorfile>
      <anchor>a56d86aa82572ee66c93c0b33c7a888e8</anchor>
      <arglist>(TestSuite, socket_callback_twice)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>TEST</name>
      <anchorfile>udp__socket__test_8cpp.html</anchorfile>
      <anchor>af28a937b6e4a3b956f4787ab455aae99</anchor>
      <arglist>(TestSuite, socket_send_data)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>TEST</name>
      <anchorfile>udp__socket__test_8cpp.html</anchorfile>
      <anchor>a921855cb95a6976418a41f05c180f77d</anchor>
      <arglist>(TestSuite, socket_send_data_in_map)</arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>BinaryAnnotation</name>
    <filename>structBinaryAnnotation.html</filename>
  </compound>
  <compound kind="class">
    <name>binary_loopback::BinaryLoopback</name>
    <filename>classbinary__loopback_1_1BinaryLoopback.html</filename>
    <base>skyway_plugin::SkyWayBinaryPlugin</base>
    <member kind="function">
      <type></type>
      <name>BinaryLoopback</name>
      <anchorfile>classbinary__loopback_1_1BinaryLoopback.html</anchorfile>
      <anchor>a5e848a119073a8f1a6c71b5ab16026ed</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual void</type>
      <name>Execute</name>
      <anchorfile>classbinary__loopback_1_1BinaryLoopback.html</anchorfile>
      <anchor>ab4b1b57ca2c294e2d9934f5d710f07d1</anchor>
      <arglist>(std::vector&lt; uint8_t &gt; data) override</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual void</type>
      <name>Initialize</name>
      <anchorfile>classbinary__loopback_1_1BinaryLoopback.html</anchorfile>
      <anchor>a7b0904be6815122707e7544ef44f82a5</anchor>
      <arglist>(std::shared_ptr&lt; rapidjson::Document &gt; parameter, std::shared_ptr&lt; std::function&lt; void(std::vector&lt; uint8_t &gt;)&gt;&gt; callback) override</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual void</type>
      <name>Shutdown</name>
      <anchorfile>classbinary__loopback_1_1BinaryLoopback.html</anchorfile>
      <anchor>a722a6dc5479d9fa8c2a903abcdbe340a</anchor>
      <arglist>() override</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual</type>
      <name>~BinaryLoopback</name>
      <anchorfile>classbinary__loopback_1_1BinaryLoopback.html</anchorfile>
      <anchor>a4f5470484599122ca790b4bf0dec782a</anchor>
      <arglist>() override</arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::shared_ptr&lt; std::function&lt; void(std::vector&lt; uint8_t &gt;)&gt; &gt;</type>
      <name>callback_</name>
      <anchorfile>classbinary__loopback_1_1BinaryLoopback.html</anchorfile>
      <anchor>abc4175c8e6058e98d80fb3d2557912ce</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>BinaryPluginRouter</name>
    <filename>classBinaryPluginRouter.html</filename>
    <base>PluginRouter</base>
    <member kind="function">
      <type></type>
      <name>ASSISTED</name>
      <anchorfile>classBinaryPluginRouter.html</anchorfile>
      <anchor>acf2e0fcb4e1fa99a7634027759743edc</anchor>
      <arglist>(udp::endpoint) target_socket</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>BinaryPluginRouter</name>
      <anchorfile>classBinaryPluginRouter.html</anchorfile>
      <anchor>a847fcede144a461e314e51778903a96b</anchor>
      <arglist>()=delete</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual uint16_t</type>
      <name>Port</name>
      <anchorfile>classBinaryPluginRouter.html</anchorfile>
      <anchor>a802d62c72d20d34928d263603145e5ed</anchor>
      <arglist>() override</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual PluginResult</type>
      <name>TryStart</name>
      <anchorfile>classBinaryPluginRouter.html</anchorfile>
      <anchor>aa96074edbbeff1cac71aceb9b57694f3</anchor>
      <arglist>() override</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>~BinaryPluginRouter</name>
      <anchorfile>classBinaryPluginRouter.html</anchorfile>
      <anchor>a990f9c106b31953f9a10a7b7347538b2</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="variable">
      <type></type>
      <name>config</name>
      <anchorfile>classBinaryPluginRouter.html</anchorfile>
      <anchor>a84b5dc3329cfb13dab520adfee2503f1</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>SocketFactory</type>
      <name>factory</name>
      <anchorfile>classBinaryPluginRouter.html</anchorfile>
      <anchor>a5801c081566ddc128b17d1f22ccaa3fe</anchor>
      <arglist></arglist>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>observe_plugins</name>
      <anchorfile>classBinaryPluginRouter.html</anchorfile>
      <anchor>a9bf32611ecb2a772474b11155e9602de</anchor>
      <arglist>(std::vector&lt; uint8_t &gt; data)</arglist>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>observe_socket</name>
      <anchorfile>classBinaryPluginRouter.html</anchorfile>
      <anchor>a6e5c1d65b7621f0a9096e4237266db74</anchor>
      <arglist>(std::vector&lt; uint8_t &gt; data)</arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::shared_ptr&lt; rapidjson::Document &gt;</type>
      <name>config_</name>
      <anchorfile>classBinaryPluginRouter.html</anchorfile>
      <anchor>a88288f4adc5e966b6619ba2a61699ab9</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>ros::NodeHandle</type>
      <name>nh_</name>
      <anchorfile>classBinaryPluginRouter.html</anchorfile>
      <anchor>a3b18d8f611ca39613476dcd9de7e5ce4</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>pluginlib::ClassLoader&lt; skyway_plugin::SkyWayBinaryPlugin &gt;</type>
      <name>plugin_loader_</name>
      <anchorfile>classBinaryPluginRouter.html</anchorfile>
      <anchor>a38a518042bd2220b988a0eb236a03882</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::vector&lt; boost::shared_ptr&lt; skyway_plugin::SkyWayBinaryPlugin &gt; &gt;</type>
      <name>plugins_</name>
      <anchorfile>classBinaryPluginRouter.html</anchorfile>
      <anchor>aa9f0b750f9173490986d8aacce154338</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::unique_ptr&lt; Socket &gt;</type>
      <name>socket_</name>
      <anchorfile>classBinaryPluginRouter.html</anchorfile>
      <anchor>a981027ee684ee82410c45c640755374a</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>udp::endpoint</type>
      <name>target_socket_</name>
      <anchorfile>classBinaryPluginRouter.html</anchorfile>
      <anchor>a0d04f65fc502ecdbc9188f7d55d9cbfb</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>CallbackFromRust</name>
    <filename>classCallbackFromRust.html</filename>
  </compound>
  <compound kind="class">
    <name>CallbackFromRustImpl</name>
    <filename>classCallbackFromRustImpl.html</filename>
    <base>CallbackFromRust</base>
    <member kind="function">
      <type></type>
      <name>CallbackFromRustImpl</name>
      <anchorfile>classCallbackFromRustImpl.html</anchorfile>
      <anchor>a2945f5dd30694314fd1a9c320a8dd7cc</anchor>
      <arglist>()=delete</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>INJECT</name>
      <anchorfile>classCallbackFromRustImpl.html</anchorfile>
      <anchor>a26a609119b4cb7bd07a91d64c7b5512b</anchor>
      <arglist>(CallbackFromRustImpl(std::shared_ptr&lt; Router &gt; router))</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual</type>
      <name>~CallbackFromRustImpl</name>
      <anchorfile>classCallbackFromRustImpl.html</anchorfile>
      <anchor>a24e2fb4d1496ca81fb3b1f2da64afad7</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" protection="private">
      <type>PluginLoadResult</type>
      <name>create_data_connection_callback</name>
      <anchorfile>classCallbackFromRustImpl.html</anchorfile>
      <anchor>a239272d690762e63c10c0bb1de8c30d4</anchor>
      <arglist>(char *, uint16_t, char *, char *)</arglist>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>create_peer_callback</name>
      <anchorfile>classCallbackFromRustImpl.html</anchorfile>
      <anchor>a55ff7f844110c2f2c9233a0621e8abb4</anchor>
      <arglist>(char *peer_id, char *token)</arglist>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>delete_data_connection_callback</name>
      <anchorfile>classCallbackFromRustImpl.html</anchorfile>
      <anchor>a514394e903acc742a45bb242d8654328</anchor>
      <arglist>(uint16_t)</arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::shared_ptr&lt; Router &gt;</type>
      <name>router_</name>
      <anchorfile>classCallbackFromRustImpl.html</anchorfile>
      <anchor>affe6e60e63cd468b317f7f2e5b20c634</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>ControlService</name>
    <filename>classControlService.html</filename>
    <member kind="function" virtualness="virtual">
      <type>virtual void</type>
      <name>Shutdown</name>
      <anchorfile>classControlService.html</anchorfile>
      <anchor>a19a8e1b605226fbc3e1fb936fe48e982</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual</type>
      <name>~ControlService</name>
      <anchorfile>classControlService.html</anchorfile>
      <anchor>a954352ecef9c04c362edc60343f2b1cb</anchor>
      <arglist>()=default</arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>ControlServiceImpl</name>
    <filename>classControlServiceImpl.html</filename>
    <base>ControlService</base>
    <member kind="function">
      <type></type>
      <name>INJECT</name>
      <anchorfile>classControlServiceImpl.html</anchorfile>
      <anchor>a7ecd0289eef55edbc4a52551c029d1cd</anchor>
      <arglist>(ControlServiceImpl(ASSISTED(std::string) name, callback))</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual void</type>
      <name>Shutdown</name>
      <anchorfile>classControlServiceImpl.html</anchorfile>
      <anchor>a2aeddbb15e1ab11044cc4a0c8771692e</anchor>
      <arglist>() override</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>~ControlServiceImpl</name>
      <anchorfile>classControlServiceImpl.html</anchorfile>
      <anchor>a93059a73a6269833370ad77a449ef4f7</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" protection="private">
      <type>bool</type>
      <name>callback</name>
      <anchorfile>classControlServiceImpl.html</anchorfile>
      <anchor>af2539e7544b89c9dfa562179b3ccdfd8</anchor>
      <arglist>(skyway::SkyWayControl::Request &amp;req, skyway::SkyWayControl::Response &amp;res)</arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::function&lt; std::string(std::string)&gt;</type>
      <name>callback_</name>
      <anchorfile>classControlServiceImpl.html</anchorfile>
      <anchor>a8eec2ffb253fa92f8e2696b2c531b817</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>bool</type>
      <name>is_running_</name>
      <anchorfile>classControlServiceImpl.html</anchorfile>
      <anchor>ad3eab86734d7070cd310f6b2701e0f08</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::string</type>
      <name>name_</name>
      <anchorfile>classControlServiceImpl.html</anchorfile>
      <anchor>ab4218c964d3de4ab8e8e5879c06e8ce9</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>ros::NodeHandle</type>
      <name>nh_</name>
      <anchorfile>classControlServiceImpl.html</anchorfile>
      <anchor>a01bd451ffacc98172e41645f147a16f0</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>ros::ServiceServer</type>
      <name>service_</name>
      <anchorfile>classControlServiceImpl.html</anchorfile>
      <anchor>a8d0487e4c6529d63e769f2f638f9dba0</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>data_callee::EventListener</name>
    <filename>classdata__callee_1_1EventListener.html</filename>
    <member kind="function">
      <type>def</type>
      <name>__init__</name>
      <anchorfile>classdata__callee_1_1EventListener.html</anchorfile>
      <anchor>a75215be22dda3fdef27a8057ec2e18e0</anchor>
      <arglist>(self, peer_id, token)</arglist>
    </member>
    <member kind="function">
      <type>def</type>
      <name>run</name>
      <anchorfile>classdata__callee_1_1EventListener.html</anchorfile>
      <anchor>a9b310ecba83faada624b5b89633e5755</anchor>
      <arglist>(self)</arglist>
    </member>
    <member kind="function" protection="private">
      <type>def</type>
      <name>_data_event_react</name>
      <anchorfile>classdata__callee_1_1EventListener.html</anchorfile>
      <anchor>a817977e26e2a8a61e7dfbaf6299ae41c</anchor>
      <arglist>(self, event)</arglist>
    </member>
    <member kind="function" protection="private">
      <type>def</type>
      <name>_media_event_react</name>
      <anchorfile>classdata__callee_1_1EventListener.html</anchorfile>
      <anchor>a2126145dcec2f925cacfe471ee38a4e4</anchor>
      <arglist>(self, event)</arglist>
    </member>
    <member kind="function" protection="private">
      <type>def</type>
      <name>_peer_event_react</name>
      <anchorfile>classdata__callee_1_1EventListener.html</anchorfile>
      <anchor>a91d9234a7a5acdb467f1fc0c5cc8516f</anchor>
      <arglist>(self, event, has_data_config, has_media_config)</arglist>
    </member>
    <member kind="variable" protection="private">
      <type></type>
      <name>_is_running</name>
      <anchorfile>classdata__callee_1_1EventListener.html</anchorfile>
      <anchor>ad6a672be89949b54ac89d87f8781e400</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type></type>
      <name>_peer_id</name>
      <anchorfile>classdata__callee_1_1EventListener.html</anchorfile>
      <anchor>a94ef3b34fc71ffbf31d8214aad26e6dc</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type></type>
      <name>_token</name>
      <anchorfile>classdata__callee_1_1EventListener.html</anchorfile>
      <anchor>af163aef4274ef7e91fd7aa8fad399c33</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private" static="yes">
      <type>bool</type>
      <name>_is_running</name>
      <anchorfile>classdata__callee_1_1EventListener.html</anchorfile>
      <anchor>ae5a485f33830bb4bfbc78f0e15d4319e</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private" static="yes">
      <type>string</type>
      <name>_peer_id</name>
      <anchorfile>classdata__callee_1_1EventListener.html</anchorfile>
      <anchor>a7c92658a7d9a8754f7d0c484426ce06f</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private" static="yes">
      <type>dictionary</type>
      <name>_pid_map</name>
      <anchorfile>classdata__callee_1_1EventListener.html</anchorfile>
      <anchor>a1a3586e8a5c82c51937bc1dac3e64472</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private" static="yes">
      <type></type>
      <name>_plugin_manager</name>
      <anchorfile>classdata__callee_1_1EventListener.html</anchorfile>
      <anchor>a4989c9377df82963edc3ec0ee38ef058</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private" static="yes">
      <type>string</type>
      <name>_token</name>
      <anchorfile>classdata__callee_1_1EventListener.html</anchorfile>
      <anchor>aee170bd0232ca6c126bf9ae8d06092e5</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>data_caller::EventListener</name>
    <filename>classdata__caller_1_1EventListener.html</filename>
    <member kind="function">
      <type>def</type>
      <name>__init__</name>
      <anchorfile>classdata__caller_1_1EventListener.html</anchorfile>
      <anchor>a468d287bc2ba6672bc2955afdd853068</anchor>
      <arglist>(self, peer_id, token)</arglist>
    </member>
    <member kind="function">
      <type>def</type>
      <name>run</name>
      <anchorfile>classdata__caller_1_1EventListener.html</anchorfile>
      <anchor>a8ac45b4d76b1b2d050c5f418edd8bbfc</anchor>
      <arglist>(self)</arglist>
    </member>
    <member kind="function" protection="private">
      <type>def</type>
      <name>_data_event_react</name>
      <anchorfile>classdata__caller_1_1EventListener.html</anchorfile>
      <anchor>a950ec762ee2c53f650ba80ba00e3d367</anchor>
      <arglist>(self, event)</arglist>
    </member>
    <member kind="function" protection="private">
      <type>def</type>
      <name>_media_event_react</name>
      <anchorfile>classdata__caller_1_1EventListener.html</anchorfile>
      <anchor>addff5644e97799472c25a22c45be12c3</anchor>
      <arglist>(self, event)</arglist>
    </member>
    <member kind="function" protection="private">
      <type>def</type>
      <name>_peer_event_react</name>
      <anchorfile>classdata__caller_1_1EventListener.html</anchorfile>
      <anchor>ae6c64c570b3562cbab48b72215e1a56d</anchor>
      <arglist>(self, event, has_data_config, has_media_config)</arglist>
    </member>
    <member kind="variable" protection="private">
      <type></type>
      <name>_is_running</name>
      <anchorfile>classdata__caller_1_1EventListener.html</anchorfile>
      <anchor>a29328e5afcdee2f745e53dacbb9ae316</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type></type>
      <name>_peer_id</name>
      <anchorfile>classdata__caller_1_1EventListener.html</anchorfile>
      <anchor>ac070d2be60a90b105dd799fd35dbfdbb</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type></type>
      <name>_token</name>
      <anchorfile>classdata__caller_1_1EventListener.html</anchorfile>
      <anchor>a57cb10b0ab6c35ae6b3613cb8e8a9499</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private" static="yes">
      <type>bool</type>
      <name>_is_running</name>
      <anchorfile>classdata__caller_1_1EventListener.html</anchorfile>
      <anchor>a8fbe36870314cde18c0b64c3cc1175c1</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private" static="yes">
      <type>string</type>
      <name>_peer_id</name>
      <anchorfile>classdata__caller_1_1EventListener.html</anchorfile>
      <anchor>aa9d6a7d5659fccc8dd5c3098a5ef2781</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private" static="yes">
      <type>dictionary</type>
      <name>_pid_map</name>
      <anchorfile>classdata__caller_1_1EventListener.html</anchorfile>
      <anchor>a42eac8409552807452115d11502ff9b0</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private" static="yes">
      <type>string</type>
      <name>_token</name>
      <anchorfile>classdata__caller_1_1EventListener.html</anchorfile>
      <anchor>ab8581188219532cc4cfd3bf95ab378a0</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>media_caller::EventListener</name>
    <filename>classmedia__caller_1_1EventListener.html</filename>
    <member kind="function">
      <type>def</type>
      <name>__init__</name>
      <anchorfile>classmedia__caller_1_1EventListener.html</anchorfile>
      <anchor>a320650894aa07fec228162f81406602c</anchor>
      <arglist>(self, peer_id, token)</arglist>
    </member>
    <member kind="function">
      <type>def</type>
      <name>run</name>
      <anchorfile>classmedia__caller_1_1EventListener.html</anchorfile>
      <anchor>a62b0eb7c7eaa8d7168d1fd914fbf2e54</anchor>
      <arglist>(self)</arglist>
    </member>
    <member kind="function" protection="private">
      <type>def</type>
      <name>_data_event_react</name>
      <anchorfile>classmedia__caller_1_1EventListener.html</anchorfile>
      <anchor>a88e2a82f3bc08e2a92072b361cc809d2</anchor>
      <arglist>(self, event)</arglist>
    </member>
    <member kind="function" protection="private">
      <type>def</type>
      <name>_media_event_react</name>
      <anchorfile>classmedia__caller_1_1EventListener.html</anchorfile>
      <anchor>ab609fdd9b01b0f030d3267f1afe51c45</anchor>
      <arglist>(self, event)</arglist>
    </member>
    <member kind="function" protection="private">
      <type>def</type>
      <name>_peer_event_react</name>
      <anchorfile>classmedia__caller_1_1EventListener.html</anchorfile>
      <anchor>a55b82293c7338102e181bb9a743179ec</anchor>
      <arglist>(self, event, has_data_config, has_media_config)</arglist>
    </member>
    <member kind="variable" protection="private">
      <type></type>
      <name>_is_running</name>
      <anchorfile>classmedia__caller_1_1EventListener.html</anchorfile>
      <anchor>aa1eea765ff8bf23eccfc378e158bfb7b</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type></type>
      <name>_peer_id</name>
      <anchorfile>classmedia__caller_1_1EventListener.html</anchorfile>
      <anchor>af0314549d2900c1a94b2268d152a2dd9</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type></type>
      <name>_token</name>
      <anchorfile>classmedia__caller_1_1EventListener.html</anchorfile>
      <anchor>a8fef8e9940f260ef0a0109093436ef5d</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private" static="yes">
      <type>bool</type>
      <name>_is_running</name>
      <anchorfile>classmedia__caller_1_1EventListener.html</anchorfile>
      <anchor>ad089a25c583b85dc856a7050268f844f</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private" static="yes">
      <type>string</type>
      <name>_peer_id</name>
      <anchorfile>classmedia__caller_1_1EventListener.html</anchorfile>
      <anchor>a05997df3b4b9d3897921c99dbb24b3f5</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private" static="yes">
      <type>dictionary</type>
      <name>_pid_map</name>
      <anchorfile>classmedia__caller_1_1EventListener.html</anchorfile>
      <anchor>a132f27dbe8d4212d3bde2efc923cd98e</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private" static="yes">
      <type>string</type>
      <name>_token</name>
      <anchorfile>classmedia__caller_1_1EventListener.html</anchorfile>
      <anchor>abfeed0f1a05db7889f09296cbf5648c3</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>media_callee::EventListener</name>
    <filename>classmedia__callee_1_1EventListener.html</filename>
    <member kind="function">
      <type>def</type>
      <name>__init__</name>
      <anchorfile>classmedia__callee_1_1EventListener.html</anchorfile>
      <anchor>a186ab90468380bbcecb980e58e127649</anchor>
      <arglist>(self, peer_id, token)</arglist>
    </member>
    <member kind="function">
      <type>def</type>
      <name>run</name>
      <anchorfile>classmedia__callee_1_1EventListener.html</anchorfile>
      <anchor>aea3881e4ad5d5b0638c820922e1b071e</anchor>
      <arglist>(self)</arglist>
    </member>
    <member kind="function" protection="private">
      <type>def</type>
      <name>_data_event_react</name>
      <anchorfile>classmedia__callee_1_1EventListener.html</anchorfile>
      <anchor>a320fd887dd1911679fa247ce6ffa4ec5</anchor>
      <arglist>(self, event)</arglist>
    </member>
    <member kind="function" protection="private">
      <type>def</type>
      <name>_media_event_react</name>
      <anchorfile>classmedia__callee_1_1EventListener.html</anchorfile>
      <anchor>a1371131d5ab2deb3d30cdd2e7b9861b0</anchor>
      <arglist>(self, event)</arglist>
    </member>
    <member kind="function" protection="private">
      <type>def</type>
      <name>_peer_event_react</name>
      <anchorfile>classmedia__callee_1_1EventListener.html</anchorfile>
      <anchor>a7098a4bc7f8c340fad8a797c918dd9f9</anchor>
      <arglist>(self, event, has_data_config, has_media_config)</arglist>
    </member>
    <member kind="variable" protection="private">
      <type></type>
      <name>_is_running</name>
      <anchorfile>classmedia__callee_1_1EventListener.html</anchorfile>
      <anchor>a8a52b8cdb4fec513a3d17717a883c939</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type></type>
      <name>_peer_id</name>
      <anchorfile>classmedia__callee_1_1EventListener.html</anchorfile>
      <anchor>a0068c089f8eef0b513ca0a2ea34d2376</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type></type>
      <name>_token</name>
      <anchorfile>classmedia__callee_1_1EventListener.html</anchorfile>
      <anchor>aea38c4a479e5498825d69bc36d1e5e98</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private" static="yes">
      <type>bool</type>
      <name>_is_running</name>
      <anchorfile>classmedia__callee_1_1EventListener.html</anchorfile>
      <anchor>a1e0803fb41a21ee2601a89b2e1cb4c4f</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private" static="yes">
      <type>string</type>
      <name>_peer_id</name>
      <anchorfile>classmedia__callee_1_1EventListener.html</anchorfile>
      <anchor>a9503426deb5f7556345165cf16d17821</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private" static="yes">
      <type>dictionary</type>
      <name>_pid_map</name>
      <anchorfile>classmedia__callee_1_1EventListener.html</anchorfile>
      <anchor>aff615dc1b4b206d4cea90cbf2e0be024</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private" static="yes">
      <type>string</type>
      <name>_token</name>
      <anchorfile>classmedia__callee_1_1EventListener.html</anchorfile>
      <anchor>ab32e2d98ad0ac44900ff2b809237c76c</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>EventsService</name>
    <filename>classEventsService.html</filename>
    <member kind="function" virtualness="virtual">
      <type>virtual void</type>
      <name>Shutdown</name>
      <anchorfile>classEventsService.html</anchorfile>
      <anchor>a57230343dd92be852fdb9622e2fdd0dc</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual</type>
      <name>~EventsService</name>
      <anchorfile>classEventsService.html</anchorfile>
      <anchor>a3a663281c1cda4fe35a62ac6615bac42</anchor>
      <arglist>()=default</arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>EventsServiceImpl</name>
    <filename>classEventsServiceImpl.html</filename>
    <base>EventsService</base>
    <member kind="function">
      <type></type>
      <name>INJECT</name>
      <anchorfile>classEventsServiceImpl.html</anchorfile>
      <anchor>a184676e815642081103f9af0c924d470</anchor>
      <arglist>(EventsServiceImpl(ASSISTED(std::string) name, ASSISTED(std::function&lt; std::string()&gt;) callback))</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual void</type>
      <name>Shutdown</name>
      <anchorfile>classEventsServiceImpl.html</anchorfile>
      <anchor>aac68e62222c18a117d69e16e6b848099</anchor>
      <arglist>() override</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>~EventsServiceImpl</name>
      <anchorfile>classEventsServiceImpl.html</anchorfile>
      <anchor>a4035bc55bdc35a718342ff0f4946cd6b</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" protection="private">
      <type>bool</type>
      <name>callback</name>
      <anchorfile>classEventsServiceImpl.html</anchorfile>
      <anchor>ad1fadefc49045c0b5520c394e1e1acfa</anchor>
      <arglist>(skyway::SkyWayEvents::Request &amp;req, skyway::SkyWayEvents::Response &amp;res)</arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::function&lt; std::string()&gt;</type>
      <name>callback_</name>
      <anchorfile>classEventsServiceImpl.html</anchorfile>
      <anchor>ae2dbc0c9698feddbd9bba57c4097ba1b</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>bool</type>
      <name>is_running_</name>
      <anchorfile>classEventsServiceImpl.html</anchorfile>
      <anchor>a315e0e6fe7d84a1c5d0b3aa7dbdb62ef</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::string</type>
      <name>name_</name>
      <anchorfile>classEventsServiceImpl.html</anchorfile>
      <anchor>a5d8d3e1ed5a2e8c4311e14f168d81d76</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>ros::NodeHandle</type>
      <name>nh_</name>
      <anchorfile>classEventsServiceImpl.html</anchorfile>
      <anchor>a06f2a54558585392f4ca1300d8bd5f7a</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>ros::ServiceServer</type>
      <name>service_</name>
      <anchorfile>classEventsServiceImpl.html</anchorfile>
      <anchor>aaa5ed0b8c15bf9754aa192640853cae4</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>Function</name>
    <filename>structFunction.html</filename>
    <member kind="variable">
      <type>plugin_topicparam_func</type>
      <name>create_data_callback</name>
      <anchorfile>structFunction.html</anchorfile>
      <anchor>a84c3c7dfca6ee3de01efeccaddbf0f8f</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>void_char_char_func</type>
      <name>create_peer_callback</name>
      <anchorfile>structFunction.html</anchorfile>
      <anchor>ad4b952bff301c7a90ed537d4aca312af</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>void_uint16_func</type>
      <name>data_connection_deleted_callback</name>
      <anchorfile>structFunction.html</anchorfile>
      <anchor>a2f6e3761000699104c7114e9635caeba</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>void_void_func</type>
      <name>peer_deleted_callback</name>
      <anchorfile>structFunction.html</anchorfile>
      <anchor>afbf5a29d5c1549e762e414b6579bbaa9</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>void_char_func</type>
      <name>release_string_callback</name>
      <anchorfile>structFunction.html</anchorfile>
      <anchor>af6bff13a3ac24ced42631069827fb0cd</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>IPluginRouterFactory</name>
    <filename>classIPluginRouterFactory.html</filename>
    <member kind="function" virtualness="pure">
      <type>virtual std::unique_ptr&lt; PluginRouter &gt;</type>
      <name>Create</name>
      <anchorfile>classIPluginRouterFactory.html</anchorfile>
      <anchor>a0fdf89919a76c41676fbac299bf9496f</anchor>
      <arglist>(std::string target_ip, uint16_t target_port, std::string plugin_type, std::shared_ptr&lt; rapidjson::Document &gt; config)=0</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual</type>
      <name>~IPluginRouterFactory</name>
      <anchorfile>classIPluginRouterFactory.html</anchorfile>
      <anchor>af0ea6fcd11305f4612f8625894d93a53</anchor>
      <arglist>()=default</arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>JsonAnnotation</name>
    <filename>structJsonAnnotation.html</filename>
  </compound>
  <compound kind="class">
    <name>json_loopback::JsonLoopback</name>
    <filename>classjson__loopback_1_1JsonLoopback.html</filename>
    <base>skyway_plugin::SkyWayJsonPlugin</base>
    <member kind="function" virtualness="virtual">
      <type>virtual void</type>
      <name>Execute</name>
      <anchorfile>classjson__loopback_1_1JsonLoopback.html</anchorfile>
      <anchor>aad02bbcd780ef6c1e97b33df6e5413d0</anchor>
      <arglist>(std::shared_ptr&lt; rapidjson::Document &gt; data) override</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual void</type>
      <name>Initialize</name>
      <anchorfile>classjson__loopback_1_1JsonLoopback.html</anchorfile>
      <anchor>a7c9ecbb65ae63160a90e6c051800d708</anchor>
      <arglist>(std::shared_ptr&lt; rapidjson::Document &gt; parameter, std::shared_ptr&lt; std::function&lt; void(std::shared_ptr&lt; rapidjson::Document &gt;)&gt;&gt; callback) override</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>JsonLoopback</name>
      <anchorfile>classjson__loopback_1_1JsonLoopback.html</anchorfile>
      <anchor>a926c1e3e3976b46b906d450d9d4332a5</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual void</type>
      <name>Shutdown</name>
      <anchorfile>classjson__loopback_1_1JsonLoopback.html</anchorfile>
      <anchor>a838ad616fa831e2c7ad252c13f7039da</anchor>
      <arglist>() override</arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::shared_ptr&lt; std::function&lt; void(std::shared_ptr&lt; rapidjson::Document &gt;)&gt; &gt;</type>
      <name>callback_</name>
      <anchorfile>classjson__loopback_1_1JsonLoopback.html</anchorfile>
      <anchor>ad4e42663684f4a39a9564d856357c33d</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>JsonPluginRouter</name>
    <filename>classJsonPluginRouter.html</filename>
    <base>PluginRouter</base>
    <member kind="function">
      <type></type>
      <name>INJECT</name>
      <anchorfile>classJsonPluginRouter.html</anchorfile>
      <anchor>aaf3b1faa50c3e8c9d0d9879d6a3271ad</anchor>
      <arglist>(JsonPluginRouter(ASSISTED(std::shared_ptr&lt; rapidjson::Document &gt;) config, ASSISTED(udp::endpoint) target_socket, SocketFactory factory))</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>JsonPluginRouter</name>
      <anchorfile>classJsonPluginRouter.html</anchorfile>
      <anchor>a011fffc8c6c87bcc1aaa536d2291478e</anchor>
      <arglist>()=delete</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual uint16_t</type>
      <name>Port</name>
      <anchorfile>classJsonPluginRouter.html</anchorfile>
      <anchor>a91c2e7a3dbe5bdbdd475d660b8952599</anchor>
      <arglist>() override</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual PluginResult</type>
      <name>TryStart</name>
      <anchorfile>classJsonPluginRouter.html</anchorfile>
      <anchor>a6e0cd0612c644133386d285eaa3b8be2</anchor>
      <arglist>() override</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>~JsonPluginRouter</name>
      <anchorfile>classJsonPluginRouter.html</anchorfile>
      <anchor>a8d4fc6a44e3af33e1970e591461b1cf5</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>observe_plugins</name>
      <anchorfile>classJsonPluginRouter.html</anchorfile>
      <anchor>a02c480c36111f38c5fc993d8e90795f6</anchor>
      <arglist>(std::shared_ptr&lt; rapidjson::Document &gt; document)</arglist>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>observe_socket</name>
      <anchorfile>classJsonPluginRouter.html</anchorfile>
      <anchor>aed1545b7d498204ef7a67b13bf465b70</anchor>
      <arglist>(std::vector&lt; uint8_t &gt; data)</arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::shared_ptr&lt; rapidjson::Document &gt;</type>
      <name>config_</name>
      <anchorfile>classJsonPluginRouter.html</anchorfile>
      <anchor>aac222bd25861442037c591032609cd86</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>pluginlib::ClassLoader&lt; skyway_plugin::SkyWayJsonPlugin &gt;</type>
      <name>plugin_loader_</name>
      <anchorfile>classJsonPluginRouter.html</anchorfile>
      <anchor>ae31f28a92f37d1641f05246846fb3f37</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::vector&lt; boost::shared_ptr&lt; skyway_plugin::SkyWayJsonPlugin &gt; &gt;</type>
      <name>plugins_</name>
      <anchorfile>classJsonPluginRouter.html</anchorfile>
      <anchor>a28c441b03288ca89080992366c6e1df1</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::unique_ptr&lt; Socket &gt;</type>
      <name>socket_</name>
      <anchorfile>classJsonPluginRouter.html</anchorfile>
      <anchor>ac4fceeff9436b7bb20517d68593b823f</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>udp::endpoint</type>
      <name>target_socket_</name>
      <anchorfile>classJsonPluginRouter.html</anchorfile>
      <anchor>ac35c81583c5376ec0041de7c08ead78e</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>MockBinarySocket</name>
    <filename>classMockBinarySocket.html</filename>
    <base>Socket</base>
    <member kind="function">
      <type></type>
      <name>INJECT</name>
      <anchorfile>classMockBinarySocket.html</anchorfile>
      <anchor>a5c56a517b50d2b665d672abb33673f87</anchor>
      <arglist>(MockBinarySocket(ASSISTED(udp::endpoint) target_socket, callback))</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>MockBinarySocket</name>
      <anchorfile>classMockBinarySocket.html</anchorfile>
      <anchor>a30722899e619b0159770e5efc27cdc4d</anchor>
      <arglist>()=delete</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual void</type>
      <name>SendData</name>
      <anchorfile>classMockBinarySocket.html</anchorfile>
      <anchor>a0899c8ee332f3744b916ecbc51914286</anchor>
      <arglist>(std::vector&lt; uint8_t &gt; data) override</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual void</type>
      <name>Start</name>
      <anchorfile>classMockBinarySocket.html</anchorfile>
      <anchor>a25ce82305ac82afa5db4f4413ccd13ed</anchor>
      <arglist>() override</arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::shared_ptr&lt; std::function&lt; void(std::vector&lt; uint8_t &gt;)&gt; &gt;</type>
      <name>callback_</name>
      <anchorfile>classMockBinarySocket.html</anchorfile>
      <anchor>afa57ee39c378e5a3064faf90d8f97f64</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>MockJsonSocket</name>
    <filename>classMockJsonSocket.html</filename>
    <base>Socket</base>
    <member kind="function">
      <type></type>
      <name>INJECT</name>
      <anchorfile>classMockJsonSocket.html</anchorfile>
      <anchor>afc5336075c5cbe530cd564086b8bfc30</anchor>
      <arglist>(MockJsonSocket(ASSISTED(udp::endpoint) target_socket, callback))</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>MockJsonSocket</name>
      <anchorfile>classMockJsonSocket.html</anchorfile>
      <anchor>a779e2debf99b02875ea53a13e43800e6</anchor>
      <arglist>()=delete</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual void</type>
      <name>SendData</name>
      <anchorfile>classMockJsonSocket.html</anchorfile>
      <anchor>aff1283bfb61ae8a4ada15fb848d1792b</anchor>
      <arglist>(std::vector&lt; uint8_t &gt; data) override</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual void</type>
      <name>Start</name>
      <anchorfile>classMockJsonSocket.html</anchorfile>
      <anchor>ac37214c5606d9519d182058394c59a40</anchor>
      <arglist>() override</arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::shared_ptr&lt; std::function&lt; void(std::vector&lt; uint8_t &gt;)&gt; &gt;</type>
      <name>callback_</name>
      <anchorfile>classMockJsonSocket.html</anchorfile>
      <anchor>a0f55d64172ca358df75d4fa0c342e428</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>int</type>
      <name>counter</name>
      <anchorfile>classMockJsonSocket.html</anchorfile>
      <anchor>a220c7d9442badc91ab1edd7fecb9f0b4</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>MockStringSocket</name>
    <filename>classMockStringSocket.html</filename>
    <base>Socket</base>
    <member kind="function">
      <type></type>
      <name>INJECT</name>
      <anchorfile>classMockStringSocket.html</anchorfile>
      <anchor>ac5152be541ed2375deb250e4cb80f5ec</anchor>
      <arglist>(MockStringSocket(ASSISTED(udp::endpoint) target_socket, callback))</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>MockStringSocket</name>
      <anchorfile>classMockStringSocket.html</anchorfile>
      <anchor>a5d79c9eb936925a299adac0af745e6be</anchor>
      <arglist>()=delete</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual void</type>
      <name>SendData</name>
      <anchorfile>classMockStringSocket.html</anchorfile>
      <anchor>a975a78cf0710d9ed5475b13bed1f63e6</anchor>
      <arglist>(std::vector&lt; uint8_t &gt; data) override</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual void</type>
      <name>Start</name>
      <anchorfile>classMockStringSocket.html</anchorfile>
      <anchor>a8ae9ba51e1b2b8a642715b4d5375eafe</anchor>
      <arglist>() override</arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::shared_ptr&lt; std::function&lt; void(std::vector&lt; uint8_t &gt;)&gt; &gt;</type>
      <name>callback_</name>
      <anchorfile>classMockStringSocket.html</anchorfile>
      <anchor>a874766c06e5c269364926972051f3e4b</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>int</type>
      <name>counter</name>
      <anchorfile>classMockStringSocket.html</anchorfile>
      <anchor>a207c9d74096d3ccf086067b917bbca9f</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>PluginLoadResult</name>
    <filename>structPluginLoadResult.html</filename>
    <member kind="variable">
      <type>const char *</type>
      <name>error_message</name>
      <anchorfile>structPluginLoadResult.html</anchorfile>
      <anchor>aa8cc191284282d16e355be6fb2fb6dbb</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>bool</type>
      <name>is_success</name>
      <anchorfile>structPluginLoadResult.html</anchorfile>
      <anchor>a23cbdd815cef59bd2703e30994ca4e4a</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>uint16_t</type>
      <name>port</name>
      <anchorfile>structPluginLoadResult.html</anchorfile>
      <anchor>a70b6ede5a6764eaf277f86d35788675f</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>utils::plugin::PluginManager</name>
    <filename>classutils_1_1plugin_1_1PluginManager.html</filename>
    <member kind="function">
      <type>def</type>
      <name>__init__</name>
      <anchorfile>classutils_1_1plugin_1_1PluginManager.html</anchorfile>
      <anchor>a91f03c604ab62ef3cefff7d6d4a7544b</anchor>
      <arglist>(self)</arglist>
    </member>
    <member kind="function">
      <type>def</type>
      <name>on_connect</name>
      <anchorfile>classutils_1_1plugin_1_1PluginManager.html</anchorfile>
      <anchor>aca0f562c4f5aeae16d1fe13e3786f287</anchor>
      <arglist>(self, data_connection_id, key)</arglist>
    </member>
    <member kind="function">
      <type>def</type>
      <name>on_disconnect</name>
      <anchorfile>classutils_1_1plugin_1_1PluginManager.html</anchorfile>
      <anchor>abcbe70fc6b6bbfc80b179cf93983004d</anchor>
      <arglist>(self, key)</arglist>
    </member>
    <member kind="variable" protection="private" static="yes">
      <type>dictionary</type>
      <name>_connected_plugin_dictionary</name>
      <anchorfile>classutils_1_1plugin_1_1PluginManager.html</anchorfile>
      <anchor>ac8989ca419848590a50ee55e0167fdb0</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private" static="yes">
      <type>dictionary</type>
      <name>_plugin_dictionary</name>
      <anchorfile>classutils_1_1plugin_1_1PluginManager.html</anchorfile>
      <anchor>a469c1f788b2669e75326f7f920925d79</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>PluginResult</name>
    <filename>structPluginResult.html</filename>
    <member kind="variable">
      <type>const char *</type>
      <name>error_message</name>
      <anchorfile>structPluginResult.html</anchorfile>
      <anchor>aa71b829ef439e9a2889e4a32189e9518</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>bool</type>
      <name>is_success</name>
      <anchorfile>structPluginResult.html</anchorfile>
      <anchor>ab0c4e3f72809c077de898ea1fd3f2023</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>uint16_t</type>
      <name>port</name>
      <anchorfile>structPluginResult.html</anchorfile>
      <anchor>ade00d227d1138703e4b37c9479312357</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>PluginRouter</name>
    <filename>classPluginRouter.html</filename>
    <member kind="function" virtualness="pure">
      <type>virtual uint16_t</type>
      <name>Port</name>
      <anchorfile>classPluginRouter.html</anchorfile>
      <anchor>a8be8860b6e3dea1925d69880b33491b7</anchor>
      <arglist>()=0</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual PluginResult</type>
      <name>TryStart</name>
      <anchorfile>classPluginRouter.html</anchorfile>
      <anchor>a9aa3352f6190f784eaa11201d11655aa</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual</type>
      <name>~PluginRouter</name>
      <anchorfile>classPluginRouter.html</anchorfile>
      <anchor>a4fe85263dd666718c94027d32d5149c3</anchor>
      <arglist>()=default</arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>PluginRouterFactoryImpl</name>
    <filename>classPluginRouterFactoryImpl.html</filename>
    <base>IPluginRouterFactory</base>
    <member kind="function" virtualness="virtual">
      <type>virtual std::unique_ptr&lt; PluginRouter &gt;</type>
      <name>Create</name>
      <anchorfile>classPluginRouterFactoryImpl.html</anchorfile>
      <anchor>aa53d7e70c437343abd2e6bfee8902c42</anchor>
      <arglist>(std::string target_ip, uint16_t target_port, std::string plugin_type, std::shared_ptr&lt; rapidjson::Document &gt; config) override</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>INJECT</name>
      <anchorfile>classPluginRouterFactoryImpl.html</anchorfile>
      <anchor>aa7a529f95d026ac1161cc9138a24f943</anchor>
      <arglist>(PluginRouterFactoryImpl(ANNOTATED(BinaryAnnotation, PluginRouterFactory) binary_factory, ANNOTATED(JsonAnnotation, PluginRouterFactory) json_factory, ANNOTATED(StringAnnotation, PluginRouterFactory) string_factory))</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>PluginRouterFactoryImpl</name>
      <anchorfile>classPluginRouterFactoryImpl.html</anchorfile>
      <anchor>a715aa0dfff8c34aea7258d8c0c0ee475</anchor>
      <arglist>()=delete</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>~PluginRouterFactoryImpl</name>
      <anchorfile>classPluginRouterFactoryImpl.html</anchorfile>
      <anchor>afa70c63801886be2f790f845420bd71b</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="variable" protection="private">
      <type>PluginRouterFactory</type>
      <name>binary_factory_</name>
      <anchorfile>classPluginRouterFactoryImpl.html</anchorfile>
      <anchor>a9fa0e5dda36d9038e68a8fb26b8a0608</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>PluginRouterFactory</type>
      <name>json_factory_</name>
      <anchorfile>classPluginRouterFactoryImpl.html</anchorfile>
      <anchor>ab553c1e04cb02b8ee52974ae37f14404</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>PluginRouterFactory</type>
      <name>string_factory_</name>
      <anchorfile>classPluginRouterFactoryImpl.html</anchorfile>
      <anchor>ae7615b7859879dba3178d41e25e52d0f</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>Router</name>
    <filename>classRouter.html</filename>
    <member kind="function" virtualness="pure">
      <type>virtual PluginResult</type>
      <name>OnConnectData</name>
      <anchorfile>classRouter.html</anchorfile>
      <anchor>acb8221ad76ba183219f318d5fed3c0f3</anchor>
      <arglist>(std::string target_ip, uint16_t target_port, std::string plugin_type, std::string plugin_param)=0</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual void</type>
      <name>OnCreatePeer</name>
      <anchorfile>classRouter.html</anchorfile>
      <anchor>a7ab37c81e8481ca927ac0d6332be6617</anchor>
      <arglist>(char *peer_id, char *token)</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual void</type>
      <name>OnDeleteData</name>
      <anchorfile>classRouter.html</anchorfile>
      <anchor>a756be798111e198a41c696b224eadc32</anchor>
      <arglist>(uint16_t port_num)</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual</type>
      <name>~Router</name>
      <anchorfile>classRouter.html</anchorfile>
      <anchor>a6810706d8e010ae071221d14179fd1a1</anchor>
      <arglist>()=default</arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>RouterImpl</name>
    <filename>classRouterImpl.html</filename>
    <base>Router</base>
    <member kind="function">
      <type></type>
      <name>INJECT</name>
      <anchorfile>classRouterImpl.html</anchorfile>
      <anchor>a4cf70bb7ac5c9dacdcce64040a1155b7</anchor>
      <arglist>(RouterImpl(ControlServiceFactory control_service_factory, EventsServiceFactory event_service_factory, std::shared_ptr&lt; IPluginRouterFactory &gt; plugin_router_factory))</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual PluginResult</type>
      <name>OnConnectData</name>
      <anchorfile>classRouterImpl.html</anchorfile>
      <anchor>a17f09a24761b5c91dbbc24cb404b6bd6</anchor>
      <arglist>(std::string target_ip, uint16_t, std::string, std::string) override</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual void</type>
      <name>OnCreatePeer</name>
      <anchorfile>classRouterImpl.html</anchorfile>
      <anchor>a4ccdd50714d9896f03717e018a50d368</anchor>
      <arglist>(char *peer_id, char *token) override</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual void</type>
      <name>OnDeleteData</name>
      <anchorfile>classRouterImpl.html</anchorfile>
      <anchor>a42000f54b0c98d6d5ea7ef1c54ae7651</anchor>
      <arglist>(uint16_t port_num) override</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>RouterImpl</name>
      <anchorfile>classRouterImpl.html</anchorfile>
      <anchor>a6fb569561ac8ffb747517da6c2324296</anchor>
      <arglist>()=delete</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>~RouterImpl</name>
      <anchorfile>classRouterImpl.html</anchorfile>
      <anchor>abbfde7c65e51327936940b2cad1544d6</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" protection="private">
      <type>std::string</type>
      <name>on_control_message</name>
      <anchorfile>classRouterImpl.html</anchorfile>
      <anchor>aa23897112afc82934e36bbb32874a682</anchor>
      <arglist>(std::string)</arglist>
    </member>
    <member kind="function" protection="private">
      <type>std::string</type>
      <name>on_event_request</name>
      <anchorfile>classRouterImpl.html</anchorfile>
      <anchor>acd4e3f06640f840b7aad11465c3ab9f3</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>shutdown</name>
      <anchorfile>classRouterImpl.html</anchorfile>
      <anchor>aca701d3d1f4d03b4170686aa7cd55466</anchor>
      <arglist>(int signal)</arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::unique_ptr&lt; ControlService &gt;</type>
      <name>control_service_</name>
      <anchorfile>classRouterImpl.html</anchorfile>
      <anchor>a91654d6a2226b2e93a30970b4e006b3a</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>ControlServiceFactory</type>
      <name>control_service_factory_</name>
      <anchorfile>classRouterImpl.html</anchorfile>
      <anchor>a1362d630db081bea18644aba749ef013</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::unique_ptr&lt; EventsService &gt;</type>
      <name>event_service_</name>
      <anchorfile>classRouterImpl.html</anchorfile>
      <anchor>a7164738be18afe562813a0d11d227572</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>EventsServiceFactory</type>
      <name>event_service_factory_</name>
      <anchorfile>classRouterImpl.html</anchorfile>
      <anchor>a2af3f53c41d867f1b99417b984d8f643</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::string</type>
      <name>peer_id_</name>
      <anchorfile>classRouterImpl.html</anchorfile>
      <anchor>a8016132c9f11770c7d33fd1cfa18ae4a</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::unordered_map&lt; std::string, std::unique_ptr&lt; PluginRouter &gt; &gt;</type>
      <name>plugin_map_</name>
      <anchorfile>classRouterImpl.html</anchorfile>
      <anchor>a3ad6d767937341b363f593cb4deff531</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::shared_ptr&lt; IPluginRouterFactory &gt;</type>
      <name>plugin_router_factory_</name>
      <anchorfile>classRouterImpl.html</anchorfile>
      <anchor>a9c3efbeb772437ee21a9195f41449af8</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::string</type>
      <name>token_</name>
      <anchorfile>classRouterImpl.html</anchorfile>
      <anchor>a07227b6b7879bf1e193023e9b1dfa01b</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>run_response_t</name>
    <filename>structrun__response__t.html</filename>
    <member kind="variable">
      <type>bool</type>
      <name>flag</name>
      <anchorfile>structrun__response__t.html</anchorfile>
      <anchor>a3fb36e705cd7d6d71498ee42c19828c5</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>void *</type>
      <name>handler</name>
      <anchorfile>structrun__response__t.html</anchorfile>
      <anchor>a8de798c3414437ca56a63c79d9ff28d2</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>skyway_plugin::SkyWayBinaryPlugin</name>
    <filename>classskyway__plugin_1_1SkyWayBinaryPlugin.html</filename>
    <member kind="function" virtualness="pure">
      <type>virtual void</type>
      <name>Execute</name>
      <anchorfile>classskyway__plugin_1_1SkyWayBinaryPlugin.html</anchorfile>
      <anchor>aa141369c4cfa7c80628fdac0dfe9fa25</anchor>
      <arglist>(std::vector&lt; uint8_t &gt; data)=0</arglist>
    </member>
    <member kind="function" virtualness="pure">
      <type>virtual void</type>
      <name>Initialize</name>
      <anchorfile>classskyway__plugin_1_1SkyWayBinaryPlugin.html</anchorfile>
      <anchor>ae01523ca5e5a52934f9491a6cfbf2b11</anchor>
      <arglist>(std::shared_ptr&lt; rapidjson::Document &gt; parameter, std::shared_ptr&lt; std::function&lt; void(std::vector&lt; uint8_t &gt;)&gt;&gt; callback)=0</arglist>
    </member>
    <member kind="function" virtualness="pure">
      <type>virtual void</type>
      <name>Shutdown</name>
      <anchorfile>classskyway__plugin_1_1SkyWayBinaryPlugin.html</anchorfile>
      <anchor>aa4af7d50dfcb84899dea77db99196d37</anchor>
      <arglist>()=0</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual</type>
      <name>~SkyWayBinaryPlugin</name>
      <anchorfile>classskyway__plugin_1_1SkyWayBinaryPlugin.html</anchorfile>
      <anchor>afd959bf92fbb98be4c549551d4037cb6</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" protection="protected">
      <type></type>
      <name>SkyWayBinaryPlugin</name>
      <anchorfile>classskyway__plugin_1_1SkyWayBinaryPlugin.html</anchorfile>
      <anchor>ad970cc52400da4f5c284df24f996fcf3</anchor>
      <arglist>()</arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>skyway_plugin::SkyWayJsonPlugin</name>
    <filename>classskyway__plugin_1_1SkyWayJsonPlugin.html</filename>
    <member kind="function" virtualness="pure">
      <type>virtual void</type>
      <name>Execute</name>
      <anchorfile>classskyway__plugin_1_1SkyWayJsonPlugin.html</anchorfile>
      <anchor>a4742af4e6966baa806685d59734b8e54</anchor>
      <arglist>(std::shared_ptr&lt; rapidjson::Document &gt; document)=0</arglist>
    </member>
    <member kind="function" virtualness="pure">
      <type>virtual void</type>
      <name>Initialize</name>
      <anchorfile>classskyway__plugin_1_1SkyWayJsonPlugin.html</anchorfile>
      <anchor>a8ecd4816c6914b47132f252c80765df4</anchor>
      <arglist>(std::shared_ptr&lt; rapidjson::Document &gt; parameter, std::shared_ptr&lt; std::function&lt; void(std::shared_ptr&lt; rapidjson::Document &gt;)&gt;&gt; callback)=0</arglist>
    </member>
    <member kind="function" virtualness="pure">
      <type>virtual void</type>
      <name>Shutdown</name>
      <anchorfile>classskyway__plugin_1_1SkyWayJsonPlugin.html</anchorfile>
      <anchor>aefeeaa013c98d2ffaad06d4fe4df07d9</anchor>
      <arglist>()=0</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual</type>
      <name>~SkyWayJsonPlugin</name>
      <anchorfile>classskyway__plugin_1_1SkyWayJsonPlugin.html</anchorfile>
      <anchor>a20e0d4e5a25a6ae041125e0ca9770eb3</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" protection="protected">
      <type></type>
      <name>SkyWayJsonPlugin</name>
      <anchorfile>classskyway__plugin_1_1SkyWayJsonPlugin.html</anchorfile>
      <anchor>a01ab49d108179252085cdb2399ee76c1</anchor>
      <arglist>()</arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>skyway_plugin::SkyWayStringPlugin</name>
    <filename>classskyway__plugin_1_1SkyWayStringPlugin.html</filename>
    <member kind="function" virtualness="pure">
      <type>virtual void</type>
      <name>Execute</name>
      <anchorfile>classskyway__plugin_1_1SkyWayStringPlugin.html</anchorfile>
      <anchor>a66e8ad813f9bf72e862d01ddce4cb0c6</anchor>
      <arglist>(std::string data)=0</arglist>
    </member>
    <member kind="function" virtualness="pure">
      <type>virtual void</type>
      <name>Initialize</name>
      <anchorfile>classskyway__plugin_1_1SkyWayStringPlugin.html</anchorfile>
      <anchor>a841887c4d0490b7cccc365332777a8a8</anchor>
      <arglist>(std::shared_ptr&lt; rapidjson::Document &gt; parameter, std::shared_ptr&lt; std::function&lt; void(std::string)&gt;&gt; callback)=0</arglist>
    </member>
    <member kind="function" virtualness="pure">
      <type>virtual void</type>
      <name>Shutdown</name>
      <anchorfile>classskyway__plugin_1_1SkyWayStringPlugin.html</anchorfile>
      <anchor>ac4ea3ac36bd2a787351d68b04b642c4e</anchor>
      <arglist>()=0</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual</type>
      <name>~SkyWayStringPlugin</name>
      <anchorfile>classskyway__plugin_1_1SkyWayStringPlugin.html</anchorfile>
      <anchor>a7edf9d2c64993ac55bbefbebe65106f3</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" protection="protected">
      <type></type>
      <name>SkyWayStringPlugin</name>
      <anchorfile>classskyway__plugin_1_1SkyWayStringPlugin.html</anchorfile>
      <anchor>a12d66389a437a1b000513241551376ca</anchor>
      <arglist>()</arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>Socket</name>
    <filename>classSocket.html</filename>
    <member kind="function" virtualness="virtual">
      <type>virtual unsigned short</type>
      <name>Port</name>
      <anchorfile>classSocket.html</anchorfile>
      <anchor>a104dce4e6b73b5dd5fde3a88a9803ff9</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual void</type>
      <name>SendData</name>
      <anchorfile>classSocket.html</anchorfile>
      <anchor>aab5938eead2e805edd1aa3920adf22ce</anchor>
      <arglist>(std::vector&lt; uint8_t &gt;)</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual void</type>
      <name>Start</name>
      <anchorfile>classSocket.html</anchorfile>
      <anchor>a858e3bd9b6bb3e591eefd01bbd9a941a</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual void</type>
      <name>Stop</name>
      <anchorfile>classSocket.html</anchorfile>
      <anchor>afe423dfce768a64edd76d15a4ff58e80</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual</type>
      <name>~Socket</name>
      <anchorfile>classSocket.html</anchorfile>
      <anchor>a073b4b728d8b6e366db9caa37a59dbbb</anchor>
      <arglist>()=default</arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>StringAnnotation</name>
    <filename>structStringAnnotation.html</filename>
  </compound>
  <compound kind="class">
    <name>string_loopback::StringLoopback</name>
    <filename>classstring__loopback_1_1StringLoopback.html</filename>
    <base>skyway_plugin::SkyWayStringPlugin</base>
    <member kind="function" virtualness="virtual">
      <type>virtual void</type>
      <name>Execute</name>
      <anchorfile>classstring__loopback_1_1StringLoopback.html</anchorfile>
      <anchor>ace8a0dc5d502b8fad0fb1b8fd1e4bd4c</anchor>
      <arglist>(std::string data) override</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual void</type>
      <name>Initialize</name>
      <anchorfile>classstring__loopback_1_1StringLoopback.html</anchorfile>
      <anchor>a73da924d2c6f2762e0267847fa8f2314</anchor>
      <arglist>(std::shared_ptr&lt; rapidjson::Document &gt; parameter, std::shared_ptr&lt; std::function&lt; void(std::string)&gt;&gt; callback) override</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual void</type>
      <name>Shutdown</name>
      <anchorfile>classstring__loopback_1_1StringLoopback.html</anchorfile>
      <anchor>a2ae1d7ef7c189274af43c8ac6b1a77d1</anchor>
      <arglist>() override</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>StringLoopback</name>
      <anchorfile>classstring__loopback_1_1StringLoopback.html</anchorfile>
      <anchor>a3ab3888f750e892b1862e14a1b55750c</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::shared_ptr&lt; std::function&lt; void(std::string)&gt; &gt;</type>
      <name>callback_</name>
      <anchorfile>classstring__loopback_1_1StringLoopback.html</anchorfile>
      <anchor>ae2f9b98b5f84bde08abbdc0990f86ac1</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>StringPluginRouter</name>
    <filename>classStringPluginRouter.html</filename>
    <base>PluginRouter</base>
    <member kind="function">
      <type></type>
      <name>ASSISTED</name>
      <anchorfile>classStringPluginRouter.html</anchorfile>
      <anchor>ae8d9b09f6c98dd97456d41f3d5fe9bb7</anchor>
      <arglist>(udp::endpoint) target_socket</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual uint16_t</type>
      <name>Port</name>
      <anchorfile>classStringPluginRouter.html</anchorfile>
      <anchor>a63f0db088d0c5f2787beac456d63d831</anchor>
      <arglist>() override</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>StringPluginRouter</name>
      <anchorfile>classStringPluginRouter.html</anchorfile>
      <anchor>ad55cca304d8260bae5742e51124557fd</anchor>
      <arglist>()=delete</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual PluginResult</type>
      <name>TryStart</name>
      <anchorfile>classStringPluginRouter.html</anchorfile>
      <anchor>af1870eebcca31eff86580e7a8f80fbc4</anchor>
      <arglist>() override</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>~StringPluginRouter</name>
      <anchorfile>classStringPluginRouter.html</anchorfile>
      <anchor>aeb843fabfd6dd8a436426e6a11e72e89</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="variable">
      <type></type>
      <name>config</name>
      <anchorfile>classStringPluginRouter.html</anchorfile>
      <anchor>a8cc5799f64e43d792f7c5764201e4c07</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>SocketFactory</type>
      <name>factory</name>
      <anchorfile>classStringPluginRouter.html</anchorfile>
      <anchor>a9c7dbdb964f76c453de2370a3b613fcf</anchor>
      <arglist></arglist>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>observe_plugins</name>
      <anchorfile>classStringPluginRouter.html</anchorfile>
      <anchor>a0593091cbabf02d4a849bc99ed4b7c31</anchor>
      <arglist>(std::string message)</arglist>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>observe_socket</name>
      <anchorfile>classStringPluginRouter.html</anchorfile>
      <anchor>a471ec901d55655a4fa7175abde5d8173</anchor>
      <arglist>(std::vector&lt; uint8_t &gt; data)</arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::shared_ptr&lt; rapidjson::Document &gt;</type>
      <name>config_</name>
      <anchorfile>classStringPluginRouter.html</anchorfile>
      <anchor>a04a4aedf1e243fca35e2f62bc7dd90e7</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>pluginlib::ClassLoader&lt; skyway_plugin::SkyWayStringPlugin &gt;</type>
      <name>plugin_loader_</name>
      <anchorfile>classStringPluginRouter.html</anchorfile>
      <anchor>a1c531665baa3e5c71dd4d4af5483f2fa</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::vector&lt; boost::shared_ptr&lt; skyway_plugin::SkyWayStringPlugin &gt; &gt;</type>
      <name>plugins_</name>
      <anchorfile>classStringPluginRouter.html</anchorfile>
      <anchor>adec1c7b29f3b878408b52353fecd10e3</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::unique_ptr&lt; Socket &gt;</type>
      <name>socket_</name>
      <anchorfile>classStringPluginRouter.html</anchorfile>
      <anchor>a4f7f5edec81213978a083f8e7ae386b9</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>udp::endpoint</type>
      <name>target_socket_</name>
      <anchorfile>classStringPluginRouter.html</anchorfile>
      <anchor>a5b9ca7df2652bcc2cf01e44a81205c41</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>string_pub_sub::StringPubSub</name>
    <filename>classstring__pub__sub_1_1StringPubSub.html</filename>
    <base>skyway_plugin::SkyWayStringPlugin</base>
    <member kind="function" virtualness="virtual">
      <type>virtual void</type>
      <name>Execute</name>
      <anchorfile>classstring__pub__sub_1_1StringPubSub.html</anchorfile>
      <anchor>a3815dcc0c7168191e819e4aedec0fd7f</anchor>
      <arglist>(std::string data) override</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual void</type>
      <name>Initialize</name>
      <anchorfile>classstring__pub__sub_1_1StringPubSub.html</anchorfile>
      <anchor>a069b0255507dd8fd30b2d729408706ff</anchor>
      <arglist>(std::shared_ptr&lt; rapidjson::Document &gt; parameter, std::shared_ptr&lt; std::function&lt; void(std::string)&gt;&gt; callback) override</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual void</type>
      <name>Shutdown</name>
      <anchorfile>classstring__pub__sub_1_1StringPubSub.html</anchorfile>
      <anchor>abba8ee92dffb9078010528763297e1d4</anchor>
      <arglist>() override</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>StringPubSub</name>
      <anchorfile>classstring__pub__sub_1_1StringPubSub.html</anchorfile>
      <anchor>a97867965044637a0bb24cb96e6267477</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>~StringPubSub</name>
      <anchorfile>classstring__pub__sub_1_1StringPubSub.html</anchorfile>
      <anchor>a027ade4ec56bfd1103c7edf29a15dc40</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>service_thread</name>
      <anchorfile>classstring__pub__sub_1_1StringPubSub.html</anchorfile>
      <anchor>a0b5aa04c22bd22d1c2d89ba7df3eb9b2</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>subscribe</name>
      <anchorfile>classstring__pub__sub_1_1StringPubSub.html</anchorfile>
      <anchor>a8cf2583a30208e37a01ef75eadeb9b7f</anchor>
      <arglist>(const std_msgs::String::ConstPtr &amp;msg)</arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::shared_ptr&lt; std::function&lt; void(std::string)&gt; &gt;</type>
      <name>callback_</name>
      <anchorfile>classstring__pub__sub_1_1StringPubSub.html</anchorfile>
      <anchor>a709d21111ee45e166c2d0b1f9969e225</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>bool</type>
      <name>is_running_</name>
      <anchorfile>classstring__pub__sub_1_1StringPubSub.html</anchorfile>
      <anchor>a02b6a9639b09e1293fcb4a2ae8847a92</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::thread</type>
      <name>loop_thread_</name>
      <anchorfile>classstring__pub__sub_1_1StringPubSub.html</anchorfile>
      <anchor>a9d383d1a09801a653ab9e2d9399e3365</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::mutex</type>
      <name>mutex_</name>
      <anchorfile>classstring__pub__sub_1_1StringPubSub.html</anchorfile>
      <anchor>a15a72660587c8aef5c438b53cd150d61</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>ros::NodeHandle</type>
      <name>nh_</name>
      <anchorfile>classstring__pub__sub_1_1StringPubSub.html</anchorfile>
      <anchor>a96dc024f92a4953a5af360dda35b56b9</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::list&lt; std::string &gt;</type>
      <name>parameters_</name>
      <anchorfile>classstring__pub__sub_1_1StringPubSub.html</anchorfile>
      <anchor>a36064ee01f4029a5773cf2aa110faf0d</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>ros::Publisher</type>
      <name>pub_</name>
      <anchorfile>classstring__pub__sub_1_1StringPubSub.html</anchorfile>
      <anchor>ab03366e63cad5f4f333e8b98bd87b2d9</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>ros::Subscriber</type>
      <name>sub_</name>
      <anchorfile>classstring__pub__sub_1_1StringPubSub.html</anchorfile>
      <anchor>a136fc7f9add4e90de99a1c27a8b2ba6e</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>UdpSocket</name>
    <filename>classUdpSocket.html</filename>
    <base>Socket</base>
    <member kind="function">
      <type></type>
      <name>INJECT</name>
      <anchorfile>classUdpSocket.html</anchorfile>
      <anchor>a8d41829e82f0523f5cf3dd7bb9fd1200</anchor>
      <arglist>(UdpSocket(ASSISTED(udp::endpoint) target_socket, callback))</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual unsigned short</type>
      <name>Port</name>
      <anchorfile>classUdpSocket.html</anchorfile>
      <anchor>acada7beea17d5382748edf06682e7d04</anchor>
      <arglist>() override</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual void</type>
      <name>SendData</name>
      <anchorfile>classUdpSocket.html</anchorfile>
      <anchor>ab1a4f720cac54ca03c6e9171be97be2a</anchor>
      <arglist>(std::vector&lt; uint8_t &gt; vec) override</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual void</type>
      <name>Start</name>
      <anchorfile>classUdpSocket.html</anchorfile>
      <anchor>a75c2d0af246aa38dd5109289126191b5</anchor>
      <arglist>() override</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual void</type>
      <name>Stop</name>
      <anchorfile>classUdpSocket.html</anchorfile>
      <anchor>a1eceed3d9daeb3db33d05c41c8a81379</anchor>
      <arglist>() override</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>UdpSocket</name>
      <anchorfile>classUdpSocket.html</anchorfile>
      <anchor>abf8f38af093d8adbee6ad9cabbf1a963</anchor>
      <arglist>()=delete</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>~UdpSocket</name>
      <anchorfile>classUdpSocket.html</anchorfile>
      <anchor>a802344296971400348894126257cf13c</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>send_handler</name>
      <anchorfile>classUdpSocket.html</anchorfile>
      <anchor>a9cafdea86e322a1cd40da07d69ab95d1</anchor>
      <arglist>(const boost::system::error_code &amp;error, std::size_t len)</arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::shared_ptr&lt; std::function&lt; void(std::vector&lt; uint8_t &gt;)&gt; &gt;</type>
      <name>callback_</name>
      <anchorfile>classUdpSocket.html</anchorfile>
      <anchor>ac98f353707e9360cfc60a62201e8db0f</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>bool</type>
      <name>is_running_</name>
      <anchorfile>classUdpSocket.html</anchorfile>
      <anchor>aa88c2923908de1ea625756d0f8434d22</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>udp::endpoint</type>
      <name>local_endpoint_</name>
      <anchorfile>classUdpSocket.html</anchorfile>
      <anchor>a312ea2e4607c44acf518a26e1aaeedf4</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::unique_ptr&lt; std::thread &gt;</type>
      <name>recv_thread_</name>
      <anchorfile>classUdpSocket.html</anchorfile>
      <anchor>aef3d26f856cba4e4ac690f4bd888fa18</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::unique_ptr&lt; boost::asio::io_service &gt;</type>
      <name>send_io_service_</name>
      <anchorfile>classUdpSocket.html</anchorfile>
      <anchor>a037b6324bed92315a9f70971fe855e21</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::unique_ptr&lt; udp::socket &gt;</type>
      <name>send_socket_</name>
      <anchorfile>classUdpSocket.html</anchorfile>
      <anchor>ad8e35750a256d77538a913550f2d18a2</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>udp::endpoint</type>
      <name>target_socket_</name>
      <anchorfile>classUdpSocket.html</anchorfile>
      <anchor>acecdabaea11d9511e16f2fcf2c77020b</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="namespace">
    <name>binary_loopback</name>
    <filename>namespacebinary__loopback.html</filename>
    <class kind="class">binary_loopback::BinaryLoopback</class>
  </compound>
  <compound kind="namespace">
    <name>data_callee</name>
    <filename>namespacedata__callee.html</filename>
    <class kind="class">data_callee::EventListener</class>
    <member kind="function">
      <type>def</type>
      <name>main</name>
      <anchorfile>namespacedata__callee.html</anchorfile>
      <anchor>a063696c5654075d5f7d2497417fab278</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>def</type>
      <name>signal_handler</name>
      <anchorfile>namespacedata__callee.html</anchorfile>
      <anchor>ae8d7d6fb25d97068de4e9ab01010faee</anchor>
      <arglist>(peer_id, token)</arglist>
    </member>
    <member kind="variable">
      <type></type>
      <name>log_level</name>
      <anchorfile>namespacedata__callee.html</anchorfile>
      <anchor>aec7fd32b6bdb6df2e4cec7cccb117d3c</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="namespace">
    <name>data_caller</name>
    <filename>namespacedata__caller.html</filename>
    <class kind="class">data_caller::EventListener</class>
    <member kind="function">
      <type>def</type>
      <name>main</name>
      <anchorfile>namespacedata__caller.html</anchorfile>
      <anchor>a9dbf886cf4e2d9aa17a08defff7647ad</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>def</type>
      <name>signal_handler</name>
      <anchorfile>namespacedata__caller.html</anchorfile>
      <anchor>a5e7cff5fba22b89bdb3c2c61026ca03b</anchor>
      <arglist>(peer_id, token)</arglist>
    </member>
    <member kind="variable">
      <type></type>
      <name>log_level</name>
      <anchorfile>namespacedata__caller.html</anchorfile>
      <anchor>a6cda70443511ee0fd64aeded5e522896</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="namespace">
    <name>json_loopback</name>
    <filename>namespacejson__loopback.html</filename>
    <class kind="class">json_loopback::JsonLoopback</class>
  </compound>
  <compound kind="namespace">
    <name>main</name>
    <filename>namespacemain.html</filename>
    <member kind="function">
      <type>def</type>
      <name>exiting</name>
      <anchorfile>namespacemain.html</anchorfile>
      <anchor>a0c44129ea4c86f1b48f05e94ea31f908</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>def</type>
      <name>gst_launch_server</name>
      <anchorfile>namespacemain.html</anchorfile>
      <anchor>a0f765285488745a7ed3487866fc67b1e</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>def</type>
      <name>launcher</name>
      <anchorfile>namespacemain.html</anchorfile>
      <anchor>a97018796b35f1d5f6c25c370fd7125e0</anchor>
      <arglist>(req)</arglist>
    </member>
    <member kind="function">
      <type>def</type>
      <name>main</name>
      <anchorfile>namespacemain.html</anchorfile>
      <anchor>af613cea4cba4fb7de8e40896b3368945</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>def</type>
      <name>sigterm_handler</name>
      <anchorfile>namespacemain.html</anchorfile>
      <anchor>ab18bd9a5f3444c2223729532367b3720</anchor>
      <arglist>(signal, frame)</arglist>
    </member>
    <member kind="variable">
      <type></type>
      <name>exiting_thread</name>
      <anchorfile>namespacemain.html</anchorfile>
      <anchor>ab3564b95dc37c76d7fe3f0d01273a952</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type></type>
      <name>log_level</name>
      <anchorfile>namespacemain.html</anchorfile>
      <anchor>a7c448fa533f5ed7dc4a0d2c1eeada635</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="namespace">
    <name>media_callee</name>
    <filename>namespacemedia__callee.html</filename>
    <class kind="class">media_callee::EventListener</class>
    <member kind="function">
      <type>def</type>
      <name>main</name>
      <anchorfile>namespacemedia__callee.html</anchorfile>
      <anchor>a9e40b741173f6f91b5f7a8c7d068f3da</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>def</type>
      <name>signal_handler</name>
      <anchorfile>namespacemedia__callee.html</anchorfile>
      <anchor>a33cf64f7a90747bac43aadbef2194a7b</anchor>
      <arglist>(peer_id, token)</arglist>
    </member>
    <member kind="variable">
      <type></type>
      <name>log_level</name>
      <anchorfile>namespacemedia__callee.html</anchorfile>
      <anchor>a9fe9653231c741fa41060e905e826588</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="namespace">
    <name>media_caller</name>
    <filename>namespacemedia__caller.html</filename>
    <class kind="class">media_caller::EventListener</class>
    <member kind="function">
      <type>def</type>
      <name>main</name>
      <anchorfile>namespacemedia__caller.html</anchorfile>
      <anchor>ab5c28782ebfb79fa3f4c8a2afbb25194</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>def</type>
      <name>signal_handler</name>
      <anchorfile>namespacemedia__caller.html</anchorfile>
      <anchor>a9c8b782938ea6ef220fb26ea5d4ac00d</anchor>
      <arglist>(peer_id, token)</arglist>
    </member>
    <member kind="variable">
      <type></type>
      <name>log_level</name>
      <anchorfile>namespacemedia__caller.html</anchorfile>
      <anchor>a51647d6bce993637c1b637ee8bdbd5c6</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="namespace">
    <name>skyway_plugin</name>
    <filename>namespaceskyway__plugin.html</filename>
    <class kind="class">skyway_plugin::SkyWayBinaryPlugin</class>
    <class kind="class">skyway_plugin::SkyWayJsonPlugin</class>
    <class kind="class">skyway_plugin::SkyWayStringPlugin</class>
  </compound>
  <compound kind="namespace">
    <name>string_loopback</name>
    <filename>namespacestring__loopback.html</filename>
    <class kind="class">string_loopback::StringLoopback</class>
  </compound>
  <compound kind="namespace">
    <name>string_pub_sub</name>
    <filename>namespacestring__pub__sub.html</filename>
    <class kind="class">string_pub_sub::StringPubSub</class>
  </compound>
  <compound kind="namespace">
    <name>utils</name>
    <filename>namespaceutils.html</filename>
    <namespace>utils::data</namespace>
    <namespace>utils::media</namespace>
    <namespace>utils::peer</namespace>
    <namespace>utils::plugin</namespace>
    <namespace>utils::service_client</namespace>
  </compound>
  <compound kind="namespace">
    <name>utils::data</name>
    <filename>namespaceutils_1_1data.html</filename>
    <member kind="function">
      <type>def</type>
      <name>create_connect_request</name>
      <anchorfile>namespaceutils_1_1data.html</anchorfile>
      <anchor>a85a3190ab101699371b810634cd8d504</anchor>
      <arglist>(peer_id, token, target_id, plugin_info, metadata, data_id, redirect_ip, redirect_port)</arglist>
    </member>
    <member kind="function">
      <type>def</type>
      <name>create_data_status_request</name>
      <anchorfile>namespaceutils_1_1data.html</anchorfile>
      <anchor>aeaf1fe8842c65776c07253ab91fc9fcb</anchor>
      <arglist>(data_connection_id)</arglist>
    </member>
    <member kind="function">
      <type>def</type>
      <name>redirect_request</name>
      <anchorfile>namespaceutils_1_1data.html</anchorfile>
      <anchor>a16779891dfea28c0d6b0482d9c22f6f3</anchor>
      <arglist>(data_connection_id, plugin_info)</arglist>
    </member>
  </compound>
  <compound kind="namespace">
    <name>utils::media</name>
    <filename>namespaceutils_1_1media.html</filename>
    <member kind="function">
      <type>def</type>
      <name>create_answer_query</name>
      <anchorfile>namespaceutils_1_1media.html</anchorfile>
      <anchor>a1b9963d661186c45a41dce051dae1d0f</anchor>
      <arglist>(media_connection_id)</arglist>
    </member>
    <member kind="function">
      <type>def</type>
      <name>create_call_query</name>
      <anchorfile>namespaceutils_1_1media.html</anchorfile>
      <anchor>aa8fcf4a8ad9af7b6c0bdeea4fd270fc1</anchor>
      <arglist>(peer_id, token, target_id)</arglist>
    </member>
    <member kind="function">
      <type>def</type>
      <name>create_media_status_request</name>
      <anchorfile>namespaceutils_1_1media.html</anchorfile>
      <anchor>acb077b523fb723553b76f8a4cf106ea7</anchor>
      <arglist>(media_connection_id)</arglist>
    </member>
    <member kind="function">
      <type>def</type>
      <name>find_free_port</name>
      <anchorfile>namespaceutils_1_1media.html</anchorfile>
      <anchor>a291cd6676bad6a547a412a6de05afc20</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>def</type>
      <name>parse_media_info</name>
      <anchorfile>namespaceutils_1_1media.html</anchorfile>
      <anchor>a2b70888cb77b9d6ace9d874f52ef093f</anchor>
      <arglist>(object)</arglist>
    </member>
  </compound>
  <compound kind="namespace">
    <name>utils::peer</name>
    <filename>namespaceutils_1_1peer.html</filename>
    <member kind="function">
      <type>def</type>
      <name>create_peer_request</name>
      <anchorfile>namespaceutils_1_1peer.html</anchorfile>
      <anchor>ac1ce57812e243aa60205f043e9a8d3b8</anchor>
      <arglist>(peer_id, api_key)</arglist>
    </member>
    <member kind="function">
      <type>def</type>
      <name>create_peer_status_request</name>
      <anchorfile>namespaceutils_1_1peer.html</anchorfile>
      <anchor>a1ad6a52191317e48dee7246b1ff26b11</anchor>
      <arglist>(peer_id, token)</arglist>
    </member>
    <member kind="function">
      <type>def</type>
      <name>delete_peer_request</name>
      <anchorfile>namespaceutils_1_1peer.html</anchorfile>
      <anchor>a9fa150c5987bb61aca630f5b4df68d12</anchor>
      <arglist>(peer_id, token)</arglist>
    </member>
  </compound>
  <compound kind="namespace">
    <name>utils::plugin</name>
    <filename>namespaceutils_1_1plugin.html</filename>
    <class kind="class">utils::plugin::PluginManager</class>
  </compound>
  <compound kind="namespace">
    <name>utils::service_client</name>
    <filename>namespaceutils_1_1service__client.html</filename>
    <member kind="function">
      <type>def</type>
      <name>gst_launch</name>
      <anchorfile>namespaceutils_1_1service__client.html</anchorfile>
      <anchor>a79d6fbd5afbbc8b54b1926792f1b8a67</anchor>
      <arglist>(message_type, command, pid)</arglist>
    </member>
    <member kind="function">
      <type>def</type>
      <name>skyway_control</name>
      <anchorfile>namespaceutils_1_1service__client.html</anchorfile>
      <anchor>a2480036355eda603eb5baa7606116b47</anchor>
      <arglist>(json_str)</arglist>
    </member>
    <member kind="function">
      <type>def</type>
      <name>skyway_event</name>
      <anchorfile>namespaceutils_1_1service__client.html</anchorfile>
      <anchor>ab6bc04a98d2cce7884c078c38038abf8</anchor>
      <arglist>(peer_id, token)</arglist>
    </member>
  </compound>
</tagfile>
