Deskflow 1.22.0.197
Keyboard and mouse sharing utility
Loading...
Searching...
No Matches
IListenSocket.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 "base/EventTypes.h"
11#include "net/ISocket.h"
12
13#include <memory>
14
15class IDataSocket;
16
18
22class IListenSocket : public ISocket
23{
24public:
26
27
29
34 virtual std::unique_ptr<IDataSocket> accept() = 0;
35
37
38 // ISocket overrides
39 void bind(const NetworkAddress &) override = 0;
40 void close() override = 0;
41 void *getEventTarget() const override = 0;
42};
Data stream socket interface.
Definition IDataSocket.h:20
Listen socket interface.
Definition IListenSocket.h:23
void close() override=0
Close socket.
virtual std::unique_ptr< IDataSocket > accept()=0
Accept connection.
void * getEventTarget() const override=0
Get event target.
void bind(const NetworkAddress &) override=0
Bind socket to address.
Generic socket interface.
Definition ISocket.h:22
Network address type.
Definition NetworkAddress.h:18