Class TCPSocket
- Defined in File tcp_socket.h 
Inheritance Relationships
Derived Types
- public urcl::comm::URStream< urcl::rtde_interface::RTDEPackage >(Template Class URStream)
- public urcl::comm::URStream< urcl::primary_interface::PrimaryPackage >(Template Class URStream)
- private urcl::DashboardClientImplG5(Class DashboardClientImplG5)
- public urcl::comm::URStream< T >(Template Class URStream)
Class Documentation
- 
class TCPSocket
- Class for TCP socket abstraction. - Subclassed by urcl::comm::URStream< urcl::rtde_interface::RTDEPackage >, urcl::comm::URStream< urcl::primary_interface::PrimaryPackage >, urcl::DashboardClientImplG5, urcl::comm::URStream< T > - Public Functions - 
virtual ~TCPSocket()
 - 
inline SocketState getState()
- Getter for the state of the socket. - Returns:
- Returns the current state of the socket 
 
 - 
inline socket_t getSocketFD()
- Getter for the file descriptor of the socket. - Returns:
- The file descriptor of the socket 
 
 - 
std::string getIP() const
- Determines the local IP address of the currently configured socket. - Returns:
- The local IP address of the socket associated to the current file descriptor 
 
 - 
bool read(char *character)
- Reads one byte from the socket. - Parameters:
- character – [out] Target buffer 
- Returns:
- True on success, false otherwise 
 
 - 
bool read(uint8_t *buf, const size_t buf_len, size_t &read)
- Reads data from the socket. - Parameters:
- buf – [out] Buffer where the data shall be stored 
- buf_len – [in] Number of bytes allocated for the buffer 
- read – [out] Number of bytes actually read 
 
- Returns:
- True on success, false otherwise 
 
 - 
bool write(const uint8_t *buf, const size_t buf_len, size_t &written)
- Writes to the socket. - Parameters:
- buf – [in] Buffer of bytes to write 
- buf_len – [in] Number of bytes in the buffer 
- written – [out] Number of bytes actually written 
 
- Returns:
- True on success, false otherwise 
 
 - 
void close()
- Closes the connection to the socket. 
 - 
void setReceiveTimeout(const timeval &timeout)
- Setup Receive timeout used for this socket. - Parameters:
- timeout – Timeout used for setting things up 
 
 - 
void setReconnectionTime(const std::chrono::milliseconds reconnection_time)
- Set reconnection time, if the server is unavailable during connection this will set the time before trying connect to the server again. - Parameters:
- reconnection_time – time in between connection attempts to the server 
 
 - Public Static Attributes - 
static constexpr std::chrono::milliseconds DEFAULT_RECONNECTION_TIME = {10000}
 - Protected Functions - 
bool setup(const std::string &host, const int port, const size_t max_num_tries = 0, const std::chrono::milliseconds reconnection_time = DEFAULT_RECONNECTION_TIME)
 - Protected Attributes - 
std::unique_ptr<timeval> recv_timeout_
 
- 
virtual ~TCPSocket()