Loading...
Searching...
No Matches
resdb::Socket Class Referenceabstract

#include <socket.h>

Inheritance diagram for resdb::Socket:
resdb::MockSocket resdb::TcpSocket

Public Member Functions

 Socket ()=default
 
virtual ~Socket ()=default
 
virtual int Connect (const std::string &ip, int port)=0
 
virtual int Listen (const std::string &ip, int port)=0
 
virtual void ReInit ()=0
 
virtual void Close ()=0
 
virtual std::unique_ptr< Socket > Accept ()=0
 
virtual int Send (const std::string &data)=0
 
virtual int Recv (void **buf, size_t *len)=0
 
virtual int SetSocketOpt (const char *option, int optval)
 
virtual int GetBindingPort ()=0
 
virtual void SetRecvTimeout (int64_t microseconds)
 
virtual void SetSendTimeout (int64_t microseconds)
 
virtual int SetAsync (bool is_open=true)
 

Detailed Description

Definition at line 28 of file socket.h.

Constructor & Destructor Documentation

◆ Socket()

resdb::Socket::Socket ( )
default

◆ ~Socket()

virtual resdb::Socket::~Socket ( )
virtualdefault

Member Function Documentation

◆ Accept()

virtual std::unique_ptr< Socket > resdb::Socket::Accept ( )
pure virtual

Implemented in resdb::TcpSocket.

◆ Close()

virtual void resdb::Socket::Close ( )
pure virtual

Implemented in resdb::TcpSocket.

◆ Connect()

virtual int resdb::Socket::Connect ( const std::string &  ip,
int  port 
)
pure virtual

Implemented in resdb::TcpSocket.

◆ GetBindingPort()

virtual int resdb::Socket::GetBindingPort ( )
pure virtual

Implemented in resdb::TcpSocket.

◆ Listen()

virtual int resdb::Socket::Listen ( const std::string &  ip,
int  port 
)
pure virtual

Implemented in resdb::TcpSocket.

◆ Recv()

virtual int resdb::Socket::Recv ( void **  buf,
size_t *  len 
)
pure virtual

Implemented in resdb::TcpSocket.

◆ ReInit()

virtual void resdb::Socket::ReInit ( )
pure virtual

Implemented in resdb::TcpSocket.

◆ Send()

virtual int resdb::Socket::Send ( const std::string &  data)
pure virtual

Implemented in resdb::TcpSocket.

◆ SetAsync()

virtual int resdb::Socket::SetAsync ( bool  is_open = true)
inlinevirtual

Reimplemented in resdb::TcpSocket.

Definition at line 48 of file socket.h.

◆ SetRecvTimeout()

virtual void resdb::Socket::SetRecvTimeout ( int64_t  microseconds)
inlinevirtual

Reimplemented in resdb::TcpSocket.

Definition at line 46 of file socket.h.

◆ SetSendTimeout()

virtual void resdb::Socket::SetSendTimeout ( int64_t  microseconds)
inlinevirtual

Reimplemented in resdb::TcpSocket.

Definition at line 47 of file socket.h.

◆ SetSocketOpt()

virtual int resdb::Socket::SetSocketOpt ( const char *  option,
int  optval 
)
inlinevirtual

Definition at line 43 of file socket.h.