DtkBluetooth
BlueZ DBus interface binding for Qt
dbluetoothobexagent.h
浏览该文件的文档.
1// SPDX-FileCopyrightText: 2023 UnionTech Software Technology Co., Ltd.
2//
3// SPDX-License-Identifier: LGPL-3.0-or-later
4
5#ifndef DBLUETOOTHOBEXAGENT_H
6#define DBLUETOOTHOBEXAGENT_H
7
8#include <QDBusObjectPath>
9#include "dtkbluetooth_global.h"
10#include "dbluetoothrequest.h"
11
12DBLUETOOTH_BEGIN_NAMESPACE
13
14class DObexTransfer;
15class DObexSession;
16
17class DObexAgent : public QObject
18{
19 Q_OBJECT
20public:
21 explicit DObexAgent(QObject *parent = nullptr);
22
23 virtual QDBusObjectPath agentPath() const = 0;
24 ~DObexAgent() override = default;
25
26 virtual void
27 authorizePush(QSharedPointer<DObexTransfer> transfer, QSharedPointer<DObexSession> session, const DRequest<QString> &request);
28 virtual void cancel();
29 virtual void release();
30};
31
32DBLUETOOTH_END_NAMESPACE
33
34#endif
对于自定义蓝牙obex代理的封装
Definition: dbluetoothobexagent.h:18
virtual void cancel()
在返回应答前调用此接口来指示代理请求失败
virtual QDBusObjectPath agentPath() const =0
获取自定义obex蓝牙代理的DBus对象路径
virtual void release()
注销自定义代理时使用, 用来释放资源
virtual void authorizePush(QSharedPointer< DObexTransfer > transfer, QSharedPointer< DObexSession > session, const DRequest< QString > &request)
当后台服务需要接受或拒绝一个蓝牙对象推送请求时被调用
对于D-Bus请求的简单封装, 方便在自定义代理是处理来自蓝牙服务的请求
Definition: dbluetoothrequest.h:18