unilink  0.4.3
A simple C++ library for unified async communication
unilink::wrapper::Serial Class Reference

Modernized Serial Wrapper. More...

#include <serial.hpp>

Inheritance diagram for unilink::wrapper::Serial:
unilink::wrapper::ChannelInterface

Classes

struct  Impl
 

Public Member Functions

 Serial (const std::string &device, uint32_t baud_rate)
 
 Serial (const std::string &device, uint32_t baud_rate, std::shared_ptr< boost::asio::io_context > external_ioc)
 
 Serial (std::shared_ptr< interface::Channel > channel)
 
 ~Serial () override
 
 Serial (Serial &&) noexcept
 
Serialoperator= (Serial &&) noexcept
 
 Serial (const Serial &)=delete
 
Serialoperator= (const Serial &)=delete
 
std::future< bool > start () override
 
void stop () override
 
void send (std::string_view data) override
 
void send_line (std::string_view line) override
 
bool is_connected () const override
 
ChannelInterfaceon_data (MessageHandler handler) override
 
ChannelInterfaceon_connect (ConnectionHandler handler) override
 
ChannelInterfaceon_disconnect (ConnectionHandler handler) override
 
ChannelInterfaceon_error (ErrorHandler handler) override
 
ChannelInterfaceauto_manage (bool manage=true) override
 
void set_baud_rate (uint32_t baud_rate)
 
void set_data_bits (int data_bits)
 
void set_stop_bits (int stop_bits)
 
void set_parity (const std::string &parity)
 
void set_flow_control (const std::string &flow_control)
 
void set_retry_interval (std::chrono::milliseconds interval)
 
void set_manage_external_context (bool manage)
 
config::SerialConfig build_config () const
 

Additional Inherited Members

Detailed Description

Modernized Serial Wrapper.

Definition at line 46 of file serial.hpp.

Constructor & Destructor Documentation

◆ Serial() [1/5]

unilink::wrapper::Serial::Serial ( const std::string &  device,
uint32_t  baud_rate 
)

Definition at line 195 of file serial.cc.

◆ Serial() [2/5]

unilink::wrapper::Serial::Serial ( const std::string &  device,
uint32_t  baud_rate,
std::shared_ptr< boost::asio::io_context >  external_ioc 
)

Definition at line 196 of file serial.cc.

◆ Serial() [3/5]

unilink::wrapper::Serial::Serial ( std::shared_ptr< interface::Channel channel)
explicit

Definition at line 198 of file serial.cc.

◆ ~Serial()

unilink::wrapper::Serial::~Serial ( )
overridedefault

◆ Serial() [4/5]

unilink::wrapper::Serial::Serial ( Serial &&  )
defaultnoexcept

◆ Serial() [5/5]

unilink::wrapper::Serial::Serial ( const Serial )
delete

Member Function Documentation

◆ auto_manage()

ChannelInterface & unilink::wrapper::Serial::auto_manage ( bool  manage = true)
overridevirtual

Implements unilink::wrapper::ChannelInterface.

Definition at line 234 of file serial.cc.

◆ build_config()

config::SerialConfig unilink::wrapper::Serial::build_config ( ) const

Definition at line 253 of file serial.cc.

◆ is_connected()

bool unilink::wrapper::Serial::is_connected ( ) const
overridevirtual

Implements unilink::wrapper::ChannelInterface.

Definition at line 215 of file serial.cc.

◆ on_connect()

ChannelInterface & unilink::wrapper::Serial::on_connect ( ConnectionHandler  handler)
overridevirtual

Implements unilink::wrapper::ChannelInterface.

Definition at line 221 of file serial.cc.

◆ on_data()

ChannelInterface & unilink::wrapper::Serial::on_data ( MessageHandler  handler)
overridevirtual

Implements unilink::wrapper::ChannelInterface.

Definition at line 217 of file serial.cc.

◆ on_disconnect()

ChannelInterface & unilink::wrapper::Serial::on_disconnect ( ConnectionHandler  handler)
overridevirtual

Implements unilink::wrapper::ChannelInterface.

Definition at line 225 of file serial.cc.

◆ on_error()

ChannelInterface & unilink::wrapper::Serial::on_error ( ErrorHandler  handler)
overridevirtual

Implements unilink::wrapper::ChannelInterface.

Definition at line 229 of file serial.cc.

◆ operator=() [1/2]

Serial& unilink::wrapper::Serial::operator= ( const Serial )
delete

◆ operator=() [2/2]

Serial & unilink::wrapper::Serial::operator= ( Serial &&  )
defaultnoexcept

◆ send()

void unilink::wrapper::Serial::send ( std::string_view  data)
overridevirtual

Implements unilink::wrapper::ChannelInterface.

Definition at line 208 of file serial.cc.

◆ send_line()

void unilink::wrapper::Serial::send_line ( std::string_view  line)
overridevirtual

Implements unilink::wrapper::ChannelInterface.

Definition at line 214 of file serial.cc.

◆ set_baud_rate()

void unilink::wrapper::Serial::set_baud_rate ( uint32_t  baud_rate)

Definition at line 240 of file serial.cc.

◆ set_data_bits()

void unilink::wrapper::Serial::set_data_bits ( int  data_bits)

Definition at line 241 of file serial.cc.

◆ set_flow_control()

void unilink::wrapper::Serial::set_flow_control ( const std::string &  flow_control)

Definition at line 244 of file serial.cc.

◆ set_manage_external_context()

void unilink::wrapper::Serial::set_manage_external_context ( bool  manage)

Definition at line 255 of file serial.cc.

◆ set_parity()

void unilink::wrapper::Serial::set_parity ( const std::string &  parity)

Definition at line 243 of file serial.cc.

◆ set_retry_interval()

void unilink::wrapper::Serial::set_retry_interval ( std::chrono::milliseconds  interval)

Definition at line 245 of file serial.cc.

◆ set_stop_bits()

void unilink::wrapper::Serial::set_stop_bits ( int  stop_bits)

Definition at line 242 of file serial.cc.

◆ start()

std::future< bool > unilink::wrapper::Serial::start ( )
overridevirtual

Implements unilink::wrapper::ChannelInterface.

Definition at line 206 of file serial.cc.

◆ stop()

void unilink::wrapper::Serial::stop ( )
overridevirtual

Implements unilink::wrapper::ChannelInterface.

Definition at line 207 of file serial.cc.


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