Defines socket functions required for a simple connection type. More...
#include <simple_socket.h>

Public Member Functions | |
| bool | isConnected () |
| return connection status | |
| bool | isReadyReceive (int timeout) |
| returns true if socket data is ready to receive | |
| virtual void | setDisconnected () |
| SimpleSocket () | |
| Constructor. | |
| virtual | ~SimpleSocket () |
| Destructor. | |
Protected Member Functions | |
| __attribute__ ((deprecated("Please use: logSocketError(const char* msg, const int rc, const int error_no)"))) void logSocketError(const char *msg | |
| Logs message to error log and reports associated socket system error. | |
| int | getSockHandle () const |
| virtual bool | rawPoll (int timeout, bool &ready, bool &error)=0 |
| polls socket for data or error | |
| virtual int | rawReceiveBytes (char *buffer, industrial::shared_types::shared_int num_bytes)=0 |
| virtual int | rawSendBytes (char *buffer, industrial::shared_types::shared_int num_bytes)=0 |
| bool | receiveBytes (industrial::byte_array::ByteArray &buffer, industrial::shared_types::shared_int num_bytes) |
| Method used by receive message interface method. This should be overridden for the specific connection type. | |
| virtual void | setConnected (bool connected) |
| void | setSockHandle (int sock_handle_) |
Protected Attributes | |
| char | buffer_ [MAX_BUFFER_SIZE+1] |
| internal data buffer for receiving | |
| bool | connected_ |
| flag indicating socket connection status | |
| int | sock_handle_ |
| socket handle for sending/receiving data | |
| sockaddr_in | sockaddr_ |
| address/port of remote socket | |
Static Protected Attributes | |
| static const int | MAX_BUFFER_SIZE = 1024 |
| maximum size of buffer for receiving data (fixed memory size used in order to avoid dynamic memory allocation) | |
| static const int | SOCKET_FAIL = -1 |
| socket fail return value | |
| static const int | SOCKET_POLL_TO = 1000 |
| socket ready polling timeout (ms) | |
Defines socket functions required for a simple connection type.
Definition at line 140 of file simple_socket.h.
Constructor.
Definition at line 147 of file simple_socket.h.
| virtual industrial::simple_socket::SimpleSocket::~SimpleSocket | ( | ) | [inline, virtual] |
Destructor.
Definition at line 157 of file simple_socket.h.
| industrial::simple_socket::SimpleSocket::__attribute__ | ( | (deprecated("Please use: logSocketError(const char* msg, const int rc, const int error_no)")) | ) | const [protected] |
Logs message to error log and reports associated socket system error.
| msg | custom message prefixed to system error |
| rc | return code from socket |
| int industrial::simple_socket::SimpleSocket::getSockHandle | ( | ) | const [inline, protected] |
Definition at line 224 of file simple_socket.h.
| bool industrial::simple_socket::SimpleSocket::isConnected | ( | ) | [inline, virtual] |
return connection status
Implements industrial::smpl_msg_connection::SmplMsgConnection.
Definition at line 159 of file simple_socket.h.
| bool industrial::simple_socket::SimpleSocket::isReadyReceive | ( | int | timeout | ) | [inline] |
returns true if socket data is ready to receive
| timeout | (ms) negative or zero values result in blocking |
Definition at line 179 of file simple_socket.h.
| virtual bool industrial::simple_socket::SimpleSocket::rawPoll | ( | int | timeout, |
| bool & | ready, | ||
| bool & | error | ||
| ) | [protected, pure virtual] |
polls socket for data or error
| timeout | (ms) negative or zero values result in blocking |
| ready | true if ready |
| except | true if exception |
Implemented in industrial::udp_socket::UdpSocket, and industrial::tcp_socket::TcpSocket.
| virtual int industrial::simple_socket::SimpleSocket::rawReceiveBytes | ( | char * | buffer, |
| industrial::shared_types::shared_int | num_bytes | ||
| ) | [protected, pure virtual] |
Implemented in industrial::udp_socket::UdpSocket, and industrial::tcp_socket::TcpSocket.
| virtual int industrial::simple_socket::SimpleSocket::rawSendBytes | ( | char * | buffer, |
| industrial::shared_types::shared_int | num_bytes | ||
| ) | [protected, pure virtual] |
Implemented in industrial::udp_socket::UdpSocket, and industrial::tcp_socket::TcpSocket.
| bool industrial::simple_socket::SimpleSocket::receiveBytes | ( | industrial::byte_array::ByteArray & | buffer, |
| industrial::shared_types::shared_int | num_bytes | ||
| ) | [protected, virtual] |
Method used by receive message interface method. This should be overridden for the specific connection type.
| data | to receive. |
| size | (in bytes) of data to receive |
Implements industrial::smpl_msg_connection::SmplMsgConnection.
Reimplemented in TestServer.
Definition at line 94 of file simple_socket.cpp.
| virtual void industrial::simple_socket::SimpleSocket::setConnected | ( | bool | connected | ) | [inline, protected, virtual] |
Definition at line 279 of file simple_socket.h.
| virtual void industrial::simple_socket::SimpleSocket::setDisconnected | ( | ) | [inline, virtual] |
Definition at line 167 of file simple_socket.h.
| void industrial::simple_socket::SimpleSocket::setSockHandle | ( | int | sock_handle_ | ) | [inline, protected] |
Definition at line 229 of file simple_socket.h.
char industrial::simple_socket::SimpleSocket::buffer_[MAX_BUFFER_SIZE+1] [protected] |
internal data buffer for receiving
Definition at line 222 of file simple_socket.h.
bool industrial::simple_socket::SimpleSocket::connected_ [protected] |
flag indicating socket connection status
Definition at line 201 of file simple_socket.h.
const int industrial::simple_socket::SimpleSocket::MAX_BUFFER_SIZE = 1024 [static, protected] |
maximum size of buffer for receiving data (fixed memory size used in order to avoid dynamic memory allocation)
Definition at line 212 of file simple_socket.h.
int industrial::simple_socket::SimpleSocket::sock_handle_ [protected] |
socket handle for sending/receiving data
Definition at line 191 of file simple_socket.h.
sockaddr_in industrial::simple_socket::SimpleSocket::sockaddr_ [protected] |
address/port of remote socket
Definition at line 196 of file simple_socket.h.
const int industrial::simple_socket::SimpleSocket::SOCKET_FAIL = -1 [static, protected] |
socket fail return value
Definition at line 206 of file simple_socket.h.
const int industrial::simple_socket::SimpleSocket::SOCKET_POLL_TO = 1000 [static, protected] |
socket ready polling timeout (ms)
Definition at line 217 of file simple_socket.h.