Class BaseSocket¶
Defined in File BaseSocket.h
Inheritance Relationships¶
Derived Types¶
public eipScanner::sockets::TCPSocket(Class TCPSocket)public eipScanner::sockets::UDPSocket(Class UDPSocket)
Class Documentation¶
-
class
BaseSocket¶ Subclassed by eipScanner::sockets::TCPSocket, eipScanner::sockets::UDPSocket
Public Types
-
using
BeginReceiveHandler= std::function<void(BaseSocket&)>¶
-
using
SPtr= std::shared_ptr<BaseSocket>¶
-
using
UPtr= std::unique_ptr<BaseSocket>¶
Public Functions
-
BaseSocket(std::string host, int port)¶
-
~BaseSocket()¶
-
virtual void
Send(const std::vector<uint8_t> &data) const = 0¶
-
virtual std::vector<uint8_t>
Receive(size_t size) const = 0¶
-
void
setBeginReceiveHandler(BeginReceiveHandler handler)¶
-
const std::chrono::milliseconds &
getRecvTimeout() const¶
-
void
setRecvTimeout(const std::chrono::milliseconds &recvTimeout)¶
-
int
getSocketFd() const¶
Public Static Functions
-
int
getLastError()¶
-
const std::error_category &
getErrorCategory()¶
-
void
select(std::vector<BaseSocket::SPtr> sockets, std::chrono::milliseconds timeout)¶
Protected Attributes
-
int
_sockedFd¶
-
std::chrono::milliseconds
_recvTimeout¶
-
BeginReceiveHandler
_beginReceiveHandler¶
Protected Static Functions
-
timeval
makePortableInterval(const std::chrono::milliseconds &recvTimeout)¶
-
using