Deskflow 1.22.0.197
Keyboard and mouse sharing utility
Loading...
Searching...
No Matches
ISocketMultiplexerJob Class Referenceabstract

Socket multiplexer job. More...

#include <ISocketMultiplexerJob.h>

Inheritance diagram for ISocketMultiplexerJob:
Collaboration diagram for ISocketMultiplexerJob:

Public Member Functions

manipulators
virtual ISocketMultiplexerJobrun (bool readable, bool writable, bool error)=0
 Handle socket event.
accessors
virtual ArchSocket getSocket () const =0
 Get the socket.
virtual bool isReadable () const =0
 Check for interest in readability.
virtual bool isWritable () const =0
 Check for interest in writability.
Public Member Functions inherited from IInterface
virtual ~IInterface ()=default
 Interface destructor does nothing.

Detailed Description

Socket multiplexer job.

A socket multiplexer job handles events on a socket.

Member Function Documentation

◆ getSocket()

virtual ArchSocket ISocketMultiplexerJob::getSocket ( ) const
pure virtual

Get the socket.

Return the socket to multiplex

Implemented in TSocketMultiplexerMethodJob< T >.

◆ isReadable()

virtual bool ISocketMultiplexerJob::isReadable ( ) const
pure virtual

Check for interest in readability.

Return true if the job is interested in being run if the socket becomes readable.

Implemented in TSocketMultiplexerMethodJob< T >.

◆ isWritable()

virtual bool ISocketMultiplexerJob::isWritable ( ) const
pure virtual

Check for interest in writability.

Return true if the job is interested in being run if the socket becomes writable.

Implemented in TSocketMultiplexerMethodJob< T >.

◆ run()

virtual ISocketMultiplexerJob * ISocketMultiplexerJob::run ( bool readable,
bool writable,
bool error )
pure virtual

Handle socket event.

Called by a socket multiplexer when the socket becomes readable, writable, or has an error. It should return itself if the same job can continue to service events, a new job if the socket must be serviced differently, or nullptr if the socket should no longer be serviced. The socket is readable if readable is true, writable if writable is true, and in error if error is true.

This call must not attempt to directly change the job for this socket by calling addSocket() or removeSocket() on the multiplexer. It must instead return the new job. It can, however, add or remove jobs for other sockets.

Implemented in TSocketMultiplexerMethodJob< T >.


The documentation for this class was generated from the following file: