16#include <boost/asio/deadline_timer.hpp>
17#include <boost/asio/io_context.hpp>
18#include <boost/asio/ip/tcp.hpp>
19#include <boost/asio/strand.hpp>
38 :
public std::enable_shared_from_this<Client>,
44 using endpoint = boost::asio::ip::tcp::endpoint;
57 boost::asio::io_context &io_context,
一块原始数据。 请注意,如果需要更多容量,则会分配一个新的内存块,并 删除旧的内存块。这意味着默认情况下,缓冲区只能增长。要释放内存,使用 clear 或 pop。
std::function< void(Buffer)> callback_function_type
回调函数类型,接收一个Buffer作为参数。
boost::asio::io_context::strand _strand
序列化对套接字的访问。
boost::asio::ip::tcp::endpoint endpoint
TCP端点类型,用于表示TCP连接的一端。
callback_function_type _callback
回调函数类型,用于处理读取的数据。
boost::asio::deadline_timer _connection_timer
连接超时定时器。
std::shared_ptr< BufferPool > _buffer_pool
指向缓冲区池的共享指针。
Client(boost::asio::io_context &io_context, const token_type &token, callback_function_type callback)
构造函数。
std::atomic_bool _done
表示客户端是否已完成工作的原子布尔值。
stream_id_type GetStreamId() const
获取流的ID。
boost::asio::ip::tcp::socket _socket
TCP套接字,用于与流建立连接。
endpoint::protocol_type protocol_type
协议类型,表示TCP协议。
const token_type _token
存储流的唯一标识令牌。
静态断言,用于确保token_data结构体的大小与Token::data的大小相同。
const auto & get_stream_id() const
获取流ID的引用。
包含CARLA流处理相关头文件和Boost.Asio网络库头文件。 包含CARLA的调试功能相关定义。 包含CARLA流处理的端点(EndPoint)类定义。 包含CARLA流处理的令牌(Token)类...
uint32_t stream_id_type
流ID的类型定义。