| 
    Jpp
    
   | 
 
Non-blocking socket reader. More...
#include <JSocketNonblocking.hh>
  
 Public Types | |
| enum | JStatus_t { IO_RESET = -1, IO_READY = 0, IO_BUSY = +1 } | 
Public Member Functions | |
| JSocketNonblockingReader (const JSocket &socket) | |
| Constructor.  More... | |
| JStatus_t | read () | 
| Continuation of non-blocking read method.  More... | |
| int | shutdown () | 
| Shut down socket.  More... | |
| void | setNonBlocking (const bool on) | 
| Set non-blocking of I/O.  More... | |
| bool | getNonBlocking () const | 
| Get non-blocking of I/O.  More... | |
| void | setKeepAlive (const bool on) | 
| Set keep alive of socket.  More... | |
| bool | getKeepAlive () const | 
| Get keep alive of socket.  More... | |
| void | setKeepIdle (const int t_s) | 
| Set the TCP idle time.  More... | |
| void | setKeepCnt (const int count) | 
| Set the TCP idle count.  More... | |
| void | setKeepIntvl (const int t_s) | 
| Set the TCP interval time.  More... | |
| void | setReuseAddress (const bool on) | 
| Set reuse address.  More... | |
| bool | getReuseAddress () const | 
| Get reuse address.  More... | |
| void | setTcpNoDelay (const bool on) | 
| Set TCP no-delay.  More... | |
| bool | getTcpNoDelay () const | 
| Get TCP no-delay.  More... | |
| void | setReceiveBufferSize (const int size) | 
| Set receive buffer size.  More... | |
| int | getReceiveBufferSize () const | 
| Set receive buffer size.  More... | |
| void | setSendBufferSize (const int size) | 
| Set send buffer size.  More... | |
| int | getSendBufferSize () const | 
| Get send buffer size.  More... | |
| virtual int | read (char *buffer, const int length) | 
| Read data from socket.  More... | |
| virtual int | write (const char *buffer, const int length) | 
| Write data to socket.  More... | |
| void | accept (const int server) | 
| Accept connection from a server.  More... | |
| void | connect (const int port) | 
| Connect to port on local host.  More... | |
| void | connect (const std::string &host_name, const int port) | 
| Connect to port on specified host.  More... | |
| void | connect (const int ip_number, const int port) | 
| Connect to port on specified host.  More... | |
| void | close () | 
| Close file.  More... | |
| bool | in_avail (JTimeval timeout=JTimeval::min()) const | 
| Check availability of input.  More... | |
| bool | out_avail (JTimeval timeout=JTimeval::min()) const | 
| Check availability of output.  More... | |
| virtual bool | good () const | 
| Check status.  More... | |
| virtual bool | fail () const | 
| Check status.  More... | |
| virtual bool | bad () const | 
| Check status.  More... | |
| virtual bool | eof () const | 
| Check end of file.  More... | |
| bool | less (const JAbstractFile &file) const | 
| Less than operation.  More... | |
| int | getFileDescriptor () const | 
| Get file descriptor.  More... | |
| bool | is_open () const | 
| Get open status.  More... | |
| const sockaddr * | getSockaddr () const | 
| Get sockaddr.  More... | |
| sockaddr * | getSockaddr () | 
| Get sockaddr.  More... | |
| int | getFamily () const | 
| Get family.  More... | |
| void | setFamily (const int family) | 
| Set family.  More... | |
| std::string | getHostname () const | 
| Get host name.  More... | |
| int | getIPnumber () const | 
| Get IP number.  More... | |
| void | setIPnumber (const int ip_number) | 
| Set IP number.  More... | |
| void | setIPnumber () | 
| Set any IP number.  More... | |
| int | getPort () const | 
| Get port number.  More... | |
| void | setPort (const int port) | 
| Set port number.  More... | |
| int | getSize () const | 
| Get size of pending data.  More... | |
| void | set (const JSocketBuffer< JElement_t > &buffer) | 
| Initialise buffer.  More... | |
| void | set (JElement_t *buffer, const int length) | 
| Initialise buffer.  More... | |
| void | reset () | 
| Reset.  More... | |
| JStatus_t | getStatus () const | 
| Get status of I/O.  More... | |
| bool | isReset () const | 
| Check reset status.  More... | |
| bool | isBusy () const | 
| Check busy status.  More... | |
| bool | isReady () const | 
| Check ready status.  More... | |
| int | getCounter () const | 
| Get number of I/O attempts.  More... | |
Static Public Member Functions | |
| static int | sizeOf () | 
| Get size of object.  More... | |
Static Public Attributes | |
| static const int | FILE_CLOSED = -1 | 
Protected Member Functions | |
| template<class T > | |
| void | setOption (const int level, const int option, const T value) | 
| Set socket option.  More... | |
| template<class T > | |
| T | getOption (const int level, const int option) const | 
| Get socket option.  More... | |
| void | setStatus (const JStatus_t status) | 
| Set status of I/O.  More... | |
Protected Attributes | |
| int | fileDescriptor | 
| JElement_t * | __data | 
| int | __size | 
| JStatus_t | status | 
| int | counter | 
Non-blocking socket reader.
This class can be used in case of non-blocking I/O (see method JSocket::setNonBlocking()).
Definition at line 118 of file JSocketNonblocking.hh.
      
  | 
  inherited | 
| Enumerator | |
|---|---|
| IO_RESET | |
| IO_READY | |
| IO_BUSY | |
Definition at line 26 of file JSocketStatus.hh.
      
  | 
  inline | 
Constructor.
| socket | socket | 
Definition at line 128 of file JSocketNonblocking.hh.
      
  | 
  inline | 
Continuation of non-blocking read method.
Definition at line 139 of file JSocketNonblocking.hh.
      
  | 
  inlineinherited | 
Shut down socket.
Definition at line 94 of file JSocket.hh.
      
  | 
  inlineinherited | 
Set non-blocking of I/O.
| on | true to enable non-blocking; false to disable | 
Definition at line 109 of file JSocket.hh.
      
  | 
  inlineinherited | 
Get non-blocking of I/O.
Definition at line 133 of file JSocket.hh.
      
  | 
  inlineinherited | 
Set keep alive of socket.
| on | true to enable keep alive; false to disable | 
Definition at line 151 of file JSocket.hh.
      
  | 
  inlineinherited | 
Get keep alive of socket.
Definition at line 162 of file JSocket.hh.
      
  | 
  inlineinherited | 
Set the TCP idle time.
| t_s | time [s] | 
Definition at line 173 of file JSocket.hh.
      
  | 
  inlineinherited | 
Set the TCP idle count.
| count | count | 
Definition at line 184 of file JSocket.hh.
      
  | 
  inlineinherited | 
Set the TCP interval time.
| t_s | time [s] | 
Definition at line 195 of file JSocket.hh.
      
  | 
  inlineinherited | 
Set reuse address.
| on | true to enable reuse address; false to disable | 
Definition at line 206 of file JSocket.hh.
      
  | 
  inlineinherited | 
Get reuse address.
Definition at line 217 of file JSocket.hh.
      
  | 
  inlineinherited | 
Set TCP no-delay.
| on | true to set TCP no-delay; false to disable | 
Definition at line 228 of file JSocket.hh.
      
  | 
  inlineinherited | 
Get TCP no-delay.
Definition at line 239 of file JSocket.hh.
      
  | 
  inlineinherited | 
Set receive buffer size.
| size | number of bytes | 
Definition at line 250 of file JSocket.hh.
      
  | 
  inlineinherited | 
      
  | 
  inlineinherited | 
Set send buffer size.
| size | number of bytes | 
Definition at line 272 of file JSocket.hh.
      
  | 
  inlineinherited | 
      
  | 
  inlinevirtualinherited | 
Read data from socket.
This method handles I/O errors in such a way that:
| buffer | buffer | 
| length | number of bytes to read | 
Reimplemented from JLANG::JFile.
Reimplemented in JNET::JSocketBlocking.
Definition at line 300 of file JSocket.hh.
      
  | 
  inlinevirtualinherited | 
Write data to socket.
This method handles I/O errors in such a way that:
| buffer | buffer | 
| length | number of bytes to write | 
Reimplemented from JLANG::JFile.
Reimplemented in JNET::JSocketBlocking.
Definition at line 339 of file JSocket.hh.
      
  | 
  inlineinherited | 
Accept connection from a server.
| server | file descriptor of server socket | 
Definition at line 372 of file JSocket.hh.
      
  | 
  inlineinherited | 
Connect to port on local host.
| port | port number | 
Definition at line 384 of file JSocket.hh.
      
  | 
  inlineinherited | 
Connect to port on specified host.
| host_name | host name | 
| port | port number | 
Definition at line 396 of file JSocket.hh.
      
  | 
  inlineinherited | 
Connect to port on specified host.
| ip_number | IP number | 
| port | port number | 
Definition at line 408 of file JSocket.hh.
      
  | 
  inlineprotectedinherited | 
Set socket option.
| level | level | 
| option | option | 
| value | value | 
Definition at line 428 of file JSocket.hh.
      
  | 
  inlineprotectedinherited | 
Get socket option.
| level | level | 
| option | option | 
Definition at line 446 of file JSocket.hh.
      
  | 
  inlineinherited | 
Check availability of input.
This method returns true if at least one byte can be read without blocking.
| timeout | timeout | 
Definition at line 100 of file JFile.hh.
      
  | 
  inlineinherited | 
Check availability of output.
This method returns true if at least one byte can be written without blocking.
| timeout | timeout | 
Definition at line 113 of file JFile.hh.
      
  | 
  inlinevirtualinherited | 
      
  | 
  inlinevirtualinherited | 
Check status.
      
  | 
  inlinevirtualinherited | 
      
  | 
  inlinevirtualinherited | 
Check end of file.
      
  | 
  inlineinherited | 
Less than operation.
| file | JAbstractFile to be compared | 
Definition at line 64 of file JAbstractFile.hh.
      
  | 
  inlineinherited | 
      
  | 
  inlineinherited | 
      
  | 
  inlineinherited | 
      
  | 
  inlineinherited | 
      
  | 
  inlineinherited | 
      
  | 
  inlineinherited | 
      
  | 
  inlineinherited | 
Get host name.
Definition at line 88 of file JSocketAddress.hh.
      
  | 
  inlineinherited | 
      
  | 
  inlineinherited | 
      
  | 
  inlineinherited | 
Set any IP number.
Definition at line 119 of file JSocketAddress.hh.
      
  | 
  inlineinherited | 
      
  | 
  inlineinherited | 
      
  | 
  inlinestaticinherited | 
      
  | 
  inlineinherited | 
Get size of pending data.
Definition at line 55 of file JSocketNonblocking.hh.
      
  | 
  inlineinherited | 
Initialise buffer.
| buffer | buffer | 
Definition at line 66 of file JSocketNonblocking.hh.
      
  | 
  inlineinherited | 
Initialise buffer.
| buffer | I/O data | 
| length | number of bytes | 
Definition at line 78 of file JSocketNonblocking.hh.
      
  | 
  inlineinherited | 
      
  | 
  inlineinherited | 
      
  | 
  inlineinherited | 
Check reset status.
Definition at line 54 of file JSocketStatus.hh.
      
  | 
  inlineinherited | 
Check busy status.
Definition at line 65 of file JSocketStatus.hh.
      
  | 
  inlineinherited | 
Check ready status.
Definition at line 76 of file JSocketStatus.hh.
      
  | 
  inlineinherited | 
Get number of I/O attempts.
Definition at line 87 of file JSocketStatus.hh.
      
  | 
  inlineprotectedinherited | 
      
  | 
  staticinherited | 
Definition at line 27 of file JAbstractFile.hh.
      
  | 
  protectedinherited | 
Definition at line 91 of file JAbstractFile.hh.
      
  | 
  protectedinherited | 
Definition at line 104 of file JSocketNonblocking.hh.
      
  | 
  protectedinherited | 
Definition at line 105 of file JSocketNonblocking.hh.
      
  | 
  protectedinherited | 
Definition at line 115 of file JSocketStatus.hh.
      
  | 
  protectedinherited | 
Definition at line 116 of file JSocketStatus.hh.
 1.8.5