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

Reads/Writes MAVLink message packages from/to serial port. More...

#include <goby/middleware/io/mavlink/serial.h>

Inheritance diagram for goby::middleware::io::SerialThreadMAVLink< line_in_group, line_out_group, publish_layer, subscribe_layer, ThreadType >:
goby::middleware::io::IOThreadMAVLink< line_in_group, line_out_group, publish_layer, subscribe_layer, detail::SerialThread< line_in_group, line_out_group, publish_layer, subscribe_layer, ThreadType >, goby::middleware::protobuf::SerialConfig > goby::middleware::io::detail::SerialThread< line_in_group, line_out_group, publish_layer, subscribe_layer, ThreadType, use_indexed_groups > goby::middleware::io::detail::IOThread< line_in_group, line_out_group, publish_layer, subscribe_layer, goby::middleware::protobuf::SerialConfig, boost::asio::serial_port, ThreadType, false > goby::middleware::io::detail::IOPublishTransporter< IOThread< line_in_group, line_out_group, publish_layer, subscribe_layer, goby::middleware::protobuf::SerialConfig, boost::asio::serial_port, ThreadType, use_indexed_groups >, line_in_group, publish_layer, ThreadType< goby::middleware::protobuf::SerialConfig >::Transporter::implementation_tag, use_indexed_groups > goby::middleware::io::detail::IOSubscribeTransporter< IOThread< line_in_group, line_out_group, publish_layer, subscribe_layer, goby::middleware::protobuf::SerialConfig, boost::asio::serial_port, ThreadType, use_indexed_groups >, line_out_group, subscribe_layer, ThreadType< goby::middleware::protobuf::SerialConfig >::Transporter::implementation_tag, use_indexed_groups >

Public Member Functions

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

Additional Inherited Members

Protected Member Functions inherited from goby::middleware::io::detail::SerialThread< line_in_group, line_out_group, publish_layer, subscribe_layer, ThreadType, use_indexed_groups >
boost::asio::serial_port & mutable_serial_port ()
 Access the (mutable) serial_port object.
Protected Member Functions inherited from goby::middleware::io::detail::IOThread< line_in_group, line_out_group, publish_layer, subscribe_layer, goby::middleware::protobuf::SerialConfig, boost::asio::serial_port, 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::serial_port & 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?
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::INTERPROCESS, PubSubLayer subscribe_layer = PubSubLayer::INTERTHREAD, template< class > class ThreadType = goby::zeromq::SimpleThread>
class goby::middleware::io::SerialThreadMAVLink< line_in_group, line_out_group, publish_layer, subscribe_layer, ThreadType >

Reads/Writes MAVLink message packages from/to serial port.

Template Parameters
line_in_groupgoby::middleware::Group to publish to after receiving data from the serial port
line_out_groupgoby::middleware::Group to subcribe to for data to send to the serial port

Definition at line 79 of file serial.h.

Constructor & Destructor Documentation

◆ SerialThreadMAVLink()

template<const goby::middleware::Group & line_in_group, const goby::middleware::Group & line_out_group, PubSubLayer publish_layer = PubSubLayer::INTERPROCESS, PubSubLayer subscribe_layer = PubSubLayer::INTERTHREAD, template< class > class ThreadType = goby::zeromq::SimpleThread>
goby::middleware::io::SerialThreadMAVLink< line_in_group, line_out_group, publish_layer, subscribe_layer, ThreadType >::SerialThreadMAVLink ( const goby::middleware::protobuf::SerialConfig & config)
inline

Definition at line 84 of file serial.h.

◆ ~SerialThreadMAVLink()

template<const goby::middleware::Group & line_in_group, const goby::middleware::Group & line_out_group, PubSubLayer publish_layer = PubSubLayer::INTERPROCESS, PubSubLayer subscribe_layer = PubSubLayer::INTERTHREAD, template< class > class ThreadType = goby::zeromq::SimpleThread>
goby::middleware::io::SerialThreadMAVLink< line_in_group, line_out_group, publish_layer, subscribe_layer, ThreadType >::~SerialThreadMAVLink ( )
inline

Definition at line 90 of file serial.h.


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