dbus-cxx
uvdispatcher.h
Go to the documentation of this file.
1// SPDX-License-Identifier: LGPL-3.0-or-later OR BSD-3-Clause
2// SPDX-License-Identifier: LGPL-3.0-or-later OR BSD-3-Clause
3/***************************************************************************
4 * Copyright (C) 2020 by Robert Middleton *
5 * robert.middleton@rm5248.com *
6 * *
7 * This file is part of the dbus-cxx library. *
8 * *
9 * The dbus-cxx library is free software; you can redistribute it and/or *
10 * modify it under the terms of the GNU General Public License *
11 * version 3 as published by the Free Software Foundation. *
12 * *
13 * The dbus-cxx library is distributed in the hope that it will be *
14 * useful, but WITHOUT ANY WARRANTY; without even the implied warranty *
15 * of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU *
16 * General Public License for more details. *
17 * *
18 * You should have received a copy of the GNU General Public License *
19 * along with this software. If not see <http://www.gnu.org/licenses/>. *
20 ***************************************************************************/
21#ifndef DBUS_CXX_UV_DISPATCHER_H
22#define DBUS_CXX_UV_DISPATCHER_H
23
24#include <dbus-cxx/dispatcher.h>
25
26namespace DBus {
27namespace Uv {
28
30private:
32
33public:
35
36 static std::shared_ptr<UvDispatcher> create();
37
38 std::shared_ptr<Connection> create_connection( BusType type );
39
40 std::shared_ptr<Connection> create_connection( std::string address );
41
42 bool add_connection( std::shared_ptr<Connection> connection );
43
44private:
45 class priv_data;
46
47 DBUS_CXX_PROPAGATE_CONST(std::unique_ptr<priv_data>) m_priv;
48};
49
50} /* namespace Uv */
51} /* namespace DBus */
52
53#endif /* DBUS_CXX_UV_DISPATCHER_H */
A Dispatcher handles all of the reading/writing that a Connection needs in order to work correctly.
Definition: dispatcher.h:24
Definition: uvdispatcher.h:29
static std::shared_ptr< UvDispatcher > create()
Definition: uvdispatcher.cpp:162
bool add_connection(std::shared_ptr< Connection > connection)
Definition: uvdispatcher.cpp:182
UvDispatcher()
Definition: uvdispatcher.cpp:154
~UvDispatcher()
Definition: uvdispatcher.cpp:159
std::shared_ptr< Connection > create_connection(BusType type)
Definition: uvdispatcher.cpp:166
DBUS_CXX_PROPAGATE_CONST(std::unique_ptr< priv_data >) m_priv
Global DBus namespace, where everything happens.
Definition: callmessage.cpp:18
BusType
Definition: enums.h:16
DataType type(const uint8_t &)
Definition: types.h:139