Deskflow 1.24.0.365
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) 2025 Deskflow Developers
4 * SPDX-FileCopyrightText: (C) 2012 - 2016 Symless Ltd.
5 * SPDX-FileCopyrightText: (C) 2002 Chris Schoeneman
6 * SPDX-License-Identifier: GPL-2.0-only WITH LicenseRef-OpenSSL-Exception
7 */
8
9#pragma once
10
11#include "arch/IArchNetwork.h"
12
14
18{
19public:
20 virtual ~ISocketMultiplexerJob() = default;
22
23
25
39 virtual ISocketMultiplexerJob *run(bool readable, bool writable, bool error) = 0;
40
42
44
46
49 virtual ArchSocket getSocket() const = 0;
50
52
56 virtual bool isReadable() const = 0;
57
59
63 virtual bool isWritable() const = 0;
64
66};
ArchSocketImpl * ArchSocket
Opaque socket type. An opaque type representing a socket.
Definition IArchNetwork.h:30
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.
virtual ~ISocketMultiplexerJob()=default