18 incoming_machine_message_queue,
20 outgoing_machine_message_queue);
54 static std::shared_ptr<ConnectionState>
56 return std::make_shared<MotionMasterConnectionState>();
64 std::unique_ptr<std::thread> server_thread_;
65 std::atomic_bool running_;
68 incoming_machine_message_queue_;
70 outgoing_machine_message_queue_;
73 std::unordered_map<std::string ,
74 std::shared_ptr<ix::WebSocket>>
75 dealer_ws_client_map_;
76 std::unordered_map<std::string ,
77 std::shared_ptr<ix::WebSocket>>
83 dealer_ws_incoming_message_map_;
85 std::unordered_map<std::string ,
86 std::vector<std::string> >
87 topic_to_client_ids_map_;
89 std::unordered_map<std::string ,
91 request_id_to_topic_map_;
105 void dealer_ws_close_clean_up(
const std::string& client_id);
112 void sub_ws_close_clean_up(
const std::string& client_id);
122 void send_outgoing_messages();