77 const wxSocketBase* GetSock()
const {
return m_sock; }
79 bool SendMessage(std::shared_ptr<const NavMsg> msg,
80 std::shared_ptr<const NavAddr> addr)
override;
85 class SocketTimer :
public wxTimer {
88 void Notify()
override { m_owner.OnTimerSocket(); }
94 class SocketReadWatchdogTimer :
public wxTimer {
97 : wxTimer(), m_owner(owner) {}
98 void Notify()
override { m_owner.OnSocketReadWatchdogTimer(); }
107 void OnServerSocketEvent(wxSocketEvent& event);
108 void OnTimerSocket();
109 void OnSocketEvent(wxSocketEvent& event);
110 void OnSocketReadWatchdogTimer();
111 void OpenNetworkGpsd();
112 void OpenNetworkTcp(
unsigned int addr);
113 void OpenNetworkUdp(
unsigned int addr);
114 void HandleN0183Msg(
const std::string& sentence);
115 bool SendSentenceNetwork(
const wxString& payload);
120 wxIPV4address m_addr;
121 wxSocketBase* m_sock;
122 wxSocketBase* m_tsock;
123 wxSocketServer* m_socket_server;
125 std::unique_ptr<MrqContainer> m_mrq_container;
131 std::chrono::time_point<std::chrono::steady_clock> m_connect_time;
132 bool m_rx_connect_event;
134 SocketTimer m_socket_timer;
135 SocketReadWatchdogTimer m_socketread_watchdog_timer;
138 bool m_is_conn_err_reported;
140 obs::Listener resume_listener;