Goby3 3.5.1
2026.06.04
Loading...
Searching...
No Matches
goby::middleware::io::detail::TCPClientThread< line_in_group, line_out_group, publish_layer, subscribe_layer, Config, ThreadType, use_indexed_groups > Class Template Reference

#include <goby/middleware/io/detail/tcp_client_interface.h>

Inheritance diagram for goby::middleware::io::detail::TCPClientThread< line_in_group, line_out_group, publish_layer, subscribe_layer, Config, ThreadType, use_indexed_groups >:
goby::middleware::io::detail::IOThread< line_in_group, line_out_group, publish_layer, subscribe_layer, Config, boost::asio::ip::tcp::socket, ThreadType, false > goby::middleware::io::detail::IOPublishTransporter< IOThread< line_in_group, line_out_group, publish_layer, subscribe_layer, Config, boost::asio::ip::tcp::socket, ThreadType, use_indexed_groups >, line_in_group, publish_layer, ThreadType< Config >::Transporter::implementation_tag, use_indexed_groups > goby::middleware::io::detail::IOSubscribeTransporter< IOThread< line_in_group, line_out_group, publish_layer, subscribe_layer, Config, boost::asio::ip::tcp::socket, ThreadType, use_indexed_groups >, line_out_group, subscribe_layer, ThreadType< Config >::Transporter::implementation_tag, use_indexed_groups > goby::middleware::io::TCPClientThreadLineBased< groups::linebasedcomms_in, groups::linebasedcomms_out, goby::middleware::io::PubSubLayer::INTERTHREAD, goby::middleware::io::PubSubLayer::INTERTHREAD, goby::middleware::protobuf::TCPClientConfig, goby::util::LineBasedCommsThreadStub, true >

Public Member Functions

 TCPClientThread (const Config &config, int index=-1)
 Constructs the thread.
 ~TCPClientThread () override
Public Member Functions inherited from goby::middleware::io::detail::IOThread< line_in_group, line_out_group, publish_layer, subscribe_layer, Config, boost::asio::ip::tcp::socket, ThreadType, false >
 IOThread (const Config &config, int index, std::string glog_group="i/o")
 Constructs the thread.
void initialize () override
void finalize () override
virtual ~IOThread ()

Protected Member Functions

void insert_endpoints (std::shared_ptr< goby::middleware::protobuf::IOData > &io_msg)
Protected Member Functions inherited from goby::middleware::io::detail::IOThread< line_in_group, line_out_group, publish_layer, subscribe_layer, Config, boost::asio::ip::tcp::socket, ThreadType, false >
void write (std::shared_ptr< const goby::middleware::protobuf::IOData > io_msg)
void handle_read_success (std::size_t bytes_transferred, const std::string &bytes)
void handle_write_success (std::size_t bytes_transferred)
void handle_read_error (const boost::system::error_code &ec)
void handle_write_error (const boost::system::error_code &ec)
boost::asio::ip::tcp::socket & mutable_socket ()
 Access the (mutable) socket (or serial_port) object.
boost::asio::io_contextmutable_io ()
bool socket_is_open ()
 Does the socket exist and is it open?
virtual void async_read ()=0
 Starts an asynchronous read on the socket.
const std::string & glog_group ()

Detailed Description

template<const goby::middleware::Group & line_in_group, const goby::middleware::Group & line_out_group, PubSubLayer publish_layer, PubSubLayer subscribe_layer, typename Config, template< class > class ThreadType, bool use_indexed_groups = false>
class goby::middleware::io::detail::TCPClientThread< line_in_group, line_out_group, publish_layer, subscribe_layer, Config, ThreadType, use_indexed_groups >

Definition at line 56 of file tcp_client_interface.h.

Constructor & Destructor Documentation

◆ TCPClientThread()

template<const goby::middleware::Group & line_in_group, const goby::middleware::Group & line_out_group, PubSubLayer publish_layer, PubSubLayer subscribe_layer, typename Config, template< class > class ThreadType, bool use_indexed_groups = false>
goby::middleware::io::detail::TCPClientThread< line_in_group, line_out_group, publish_layer, subscribe_layer, Config, ThreadType, use_indexed_groups >::TCPClientThread ( const Config & config,
int index = -1 )
inline

Constructs the thread.

Parameters
configA reference to the Protocol Buffers config read by the main application at launch

Definition at line 68 of file tcp_client_interface.h.

◆ ~TCPClientThread()

template<const goby::middleware::Group & line_in_group, const goby::middleware::Group & line_out_group, PubSubLayer publish_layer, PubSubLayer subscribe_layer, typename Config, template< class > class ThreadType, bool use_indexed_groups = false>
goby::middleware::io::detail::TCPClientThread< line_in_group, line_out_group, publish_layer, subscribe_layer, Config, ThreadType, use_indexed_groups >::~TCPClientThread ( )
inlineoverride

Definition at line 85 of file tcp_client_interface.h.

Member Function Documentation

◆ insert_endpoints()

template<const goby::middleware::Group & line_in_group, const goby::middleware::Group & line_out_group, PubSubLayer publish_layer, PubSubLayer subscribe_layer, typename Config, template< class > class ThreadType, bool use_indexed_groups = false>
void goby::middleware::io::detail::TCPClientThread< line_in_group, line_out_group, publish_layer, subscribe_layer, Config, ThreadType, use_indexed_groups >::insert_endpoints ( std::shared_ptr< goby::middleware::protobuf::IOData > & io_msg)
inlineprotected

Definition at line 100 of file tcp_client_interface.h.


The documentation for this class was generated from the following file: