Go to the documentation of this file.
25 #ifndef GOBY_UTIL_LINEBASEDCOMMS_TCP_SERVER_H
26 #define GOBY_UTIL_LINEBASEDCOMMS_TCP_SERVER_H
61 return remote_endpoints_;
65 void do_subscribe()
override;
66 void do_start()
override;
67 void do_close()
override;
76 std::atomic<bool> tcp_alive_{
false};
77 std::unique_ptr<std::thread> tcp_thread_;
83 std::set<middleware::protobuf::TCPEndPoint> remote_endpoints_;
The global namespace for the Goby project.
constexpr goby::middleware::Group linebasedcomms_in
const std::set< middleware::protobuf::TCPEndPoint > & remote_endpoints()
std::string local_endpoint() override
string representation of the local endpoint (e.g. 192.168.1.105:54230)
NLOHMANN_BASIC_JSON_TPL_DECLARATION std::string to_string(const NLOHMANN_BASIC_JSON_TPL &j)
user-defined to_string function for JSON values
const ::std::string & addr() const
provides a basic TCP server for line by line text based communications to a one or more remote TCP cl...
std::string delimiter() const
::google::protobuf::uint32 port() const
constexpr goby::middleware::Group linebasedcomms_out
TCPServer(unsigned port, const std::string &delimiter="\r\n")
create a TCP server
basic interface class for all the derived serial (and networking mimics) line-based nodes (serial,...