Deskflow 1.22.0.197
Keyboard and mouse sharing utility
Loading...
Searching...
No Matches
ISocketMultiplexerJob.h
Go to the documentation of this file.
1/*
2 * Deskflow -- mouse and keyboard sharing utility
3 * SPDX-FileCopyrightText: (C) 2012 - 2016 Symless Ltd.
4 * SPDX-FileCopyrightText: (C) 2002 Chris Schoeneman
5 * SPDX-License-Identifier: GPL-2.0-only WITH LicenseRef-OpenSSL-Exception
6 */
7
8#pragma once
9
10#include "arch/IArchNetwork.h"
11#include "common/IInterface.h"
12
14
18{
19public:
21
22
24
38 virtual ISocketMultiplexerJob *run(bool readable, bool writable, bool error) = 0;
39
41
43
45
48 virtual ArchSocket getSocket() const = 0;
49
51
55 virtual bool isReadable() const = 0;
56
58
62 virtual bool isWritable() const = 0;
63
65};
ArchSocketImpl * ArchSocket
Opaque socket type. An opaque type representing a socket.
Definition IArchNetwork.h:30
Base class of interfaces.
Definition IInterface.h:18
Socket multiplexer job.
Definition ISocketMultiplexerJob.h:18
virtual ArchSocket getSocket() const =0
Get the socket.
virtual ISocketMultiplexerJob * run(bool readable, bool writable, bool error)=0
Handle socket event.
virtual bool isReadable() const =0
Check for interest in readability.
virtual bool isWritable() const =0
Check for interest in writability.