5 #ifndef ROHDESCHWARZ_BUSSES_SOCKET_SOCKET_HPP
6 #define ROHDESCHWARZ_BUSSES_SOCKET_SOCKET_HPP
14 #include <boost/asio.hpp>
81 std::string
host()
const;
93 virtual std::string
endpoint()
const;
116 virtual bool readData(
unsigned char*
buffer, std::size_t bufferSize, std::size_t* readSize =
nullptr);
127 virtual bool writeData(
const unsigned char* data, std::size_t dataSize, std::size_t* writeSize =
nullptr);
155 boost::asio::io_context _io_context;
156 boost::asio::ip::tcp::socket _socket;
157 boost::asio::ip::tcp::socket::native_handle_type _native_handle;
rohdeschwarz::busses::Bus class definition
std::vector< unsigned char > * buffer()
A class for managing synchronous TCP IP sockets.
virtual bool isError() const
Checks socket state for error.
virtual bool readData(unsigned char *buffer, std::size_t bufferSize, std::size_t *readSize=nullptr)
read data into buffer
virtual int timeout_ms() const
Get timeout, in ms.
int port() const
returns the port
virtual std::string endpoint() const
Returns string '{host}:{port}'.
Socket(const char *host, int port=5025)
Constructor.
virtual std::string statusMessage() const
human-readable bus status message
std::string host() const
returns the host or ip address
virtual bool writeData(const unsigned char *data, std::size_t dataSize, std::size_t *writeSize=nullptr)
read data into buffer
virtual bool setTimeout(int timeout_ms)
Set timeout, in ms.
virtual ~Socket()
Destructor.
boost::system::system_error system_error
System error exception.
rohdeschwarz::busses::socket::system_error system_error