dbus-cxx
objectmanagerproxy.h
Go to the documentation of this file.
1// SPDX-License-Identifier: LGPL-3.0-or-later OR BSD-3-Clause
2/***************************************************************************
3 * Copyright (C) 2025 by Robert Middleton *
4 * robert.middleton@rm5248.com *
5 * *
6 * This file is part of the dbus-cxx library. *
7 ***************************************************************************/
8#ifndef DBUSCXX_OBJECTMANAGER_PROXY_H
9#define DBUSCXX_OBJECTMANAGER_PROXY_H
10
11#include "../interfaceproxy.h"
12#include <memory>
13#include <map>
14#include <vector>
15#include <string>
16#include "../variant.h"
17
18namespace DBus {
19
21private:
23
24public:
25 static std::shared_ptr<ObjectManagerProxy> create();
26
28
29 DBus::SignalProxy<void(Path, std::map<std::string,std::map<std::string,DBus::Variant>>)>& signal_InterfacesAdded();
30
31 DBus::SignalProxy<void(Path, std::vector<std::string> interfaces)>& signal_InterfacesRemoved();
32
33private:
35 std::shared_ptr<DBus::SignalProxy<void(Path, std::map<std::string,std::map<std::string,DBus::Variant>>)>> m_signal_interfaces_added;
36 std::shared_ptr<DBus::SignalProxy<void(Path, std::vector<std::string>)>> m_signal_interfaces_removed;
37};
38
39}
40
41#endif // DBUSCXX_OBJECTMANAGER_PROXY_H
An InterfaceProxy represents a remote Interface in another application on the DBus.
Definition: interfaceproxy.h:43
Definition: interfaceproxy.h:30
Definition: objectmanagerproxy.h:20
ObjectManagerProxy()
Definition: objectmanagerproxy.cpp:14
std::shared_ptr< DBus::SignalProxy< void(Path, std::vector< std::string >)> > m_signal_interfaces_removed
Definition: objectmanagerproxy.h:36
DBus::SignalProxy< void(Path, std::map< std::string, std::map< std::string, DBus::Variant > >)> & signal_InterfacesAdded()
Definition: objectmanagerproxy.cpp:30
ObjectManagerObjects GetManagedObjects()
Definition: objectmanagerproxy.cpp:26
std::shared_ptr< MethodProxy< ObjectManagerObjects()> > m_get_managed_objects_method
Definition: objectmanagerproxy.h:34
static std::shared_ptr< ObjectManagerProxy > create()
Definition: objectmanagerproxy.cpp:22
std::shared_ptr< DBus::SignalProxy< void(Path, std::map< std::string, std::map< std::string, DBus::Variant > >)> > m_signal_interfaces_added
Definition: objectmanagerproxy.h:35
DBus::SignalProxy< void(Path, std::vector< std::string > interfaces)> & signal_InterfacesRemoved()
Definition: objectmanagerproxy.cpp:34
Represents a DBus Path.
Definition: path.h:21
Definition: signalproxy.h:26
Global DBus namespace, where everything happens.
Definition: callmessage.cpp:18
std::map< DBus::Path, std::map< std::string, std::map< std::string, DBus::Variant > > > ObjectManagerObjects
Definition: types.h:22