27 #ifndef SDBUS_CXX_IPROXY_H_ 28 #define SDBUS_CXX_IPROXY_H_ 62 virtual ~
IProxy() =
default;
102 template <
typename _Rep,
typename _Period>
120 virtual void callMethod(
const MethodCall& message, async_reply_handler asyncReplyCallback, uint64_t timeout = 0) = 0;
125 template <
typename _Rep,
typename _Period>
126 void callMethod(
const MethodCall& message, async_reply_handler asyncReplyCallback,
const std::chrono::duration<_Rep, _Period>& timeout);
138 ,
const std::string& signalName
139 , signal_handler signalHandler ) = 0;
268 template <
typename _Rep,
typename _Period>
271 auto microsecs = std::chrono::duration_cast<std::chrono::microseconds>(timeout);
272 return callMethod(message, microsecs.count());
275 template <
typename _Rep,
typename _Period>
278 auto microsecs = std::chrono::duration_cast<std::chrono::microseconds>(timeout);
279 callMethod(message, std::move(asyncReplyCallback), microsecs.count());
327 , std::string destination
328 , std::string objectPath );
349 [[nodiscard]] std::unique_ptr<sdbus::IProxy>
createProxy( std::unique_ptr<sdbus::IConnection>&& connection
350 , std::string destination
351 , std::string objectPath );
370 [[nodiscard]] std::unique_ptr<sdbus::IProxy>
createProxy( std::string destination
371 , std::string objectPath );
Definition: Message.h:192
virtual MethodCall createMethodCall(const std::string &interfaceName, const std::string &methodName)=0
Creates a method call message.
Definition: ConvenienceApiClasses.h:187
virtual void registerSignalHandler(const std::string &interfaceName, const std::string &signalName, signal_handler signalHandler)=0
Registers a handler for the desired signal emitted by the proxied D-Bus object.
SignalSubscriber uponSignal(const std::string &signalName)
Registers signal handler for a given signal of the proxied D-Bus object.
Definition: IProxy.h:292
AsyncMethodInvoker callMethodAsync(const std::string &methodName)
Calls method on the proxied D-Bus object asynchronously.
Definition: IProxy.h:287
Definition: ConvenienceApiClasses.h:162
virtual void finishRegistration()=0
Finishes the registration of signal handlers.
std::unique_ptr< sdbus::IProxy > createProxy(sdbus::IConnection &connection, std::string destination, std::string objectPath)
Creates a proxy object for a specific remote D-Bus object.
Definition: ConvenienceApiClasses.h:218
virtual void unregister()=0
Unregisters proxy's signal handlers and stops receving replies to pending async calls.
Definition: ConvenienceApiClasses.h:229
PropertySetter setProperty(const std::string &propertyName)
Sets value of a property of the proxied D-Bus object.
Definition: IProxy.h:302
PropertyGetter getProperty(const std::string &propertyName)
Gets value of a property of the proxied D-Bus object.
Definition: IProxy.h:297
virtual MethodReply callMethod(const MethodCall &message, uint64_t timeout=0)=0
Calls method on the proxied D-Bus object.
Definition: IConnection.h:47
Definition: ConvenienceApiClasses.h:205
Definition: Message.h:167