DtkBluetooth
BlueZ DBus interface binding for Qt
dbluetoothobextransfer.h
浏览该文件的文档.
1// SPDX-FileCopyrightText: 2023 UnionTech Software Technology Co., Ltd.
2//
3// SPDX-License-Identifier: LGPL-3.0-or-later
4
5#ifndef DBLUETOOTHOBEXTRANSFER_H
6#define DBLUETOOTHOBEXTRANSFER_H
7
8#include "dbluetoothtypes.h"
9#include <DExpected>
10#include <QFileInfo>
11#include <DObject>
12
13DBLUETOOTH_BEGIN_NAMESPACE
14
15using DTK_CORE_NAMESPACE::DExpected;
16using DTK_CORE_NAMESPACE::DObject;
17
18class DObexTransferPrivate;
19
20class DObexTransfer : public QObject, public DObject
21{
22 Q_OBJECT
23 explicit DObexTransfer(const ObexSessionInfo &info, quint64 transferId, QObject *parent = nullptr);
24 friend class DObexSession;
25
26public:
27 ~DObexTransfer() override;
28
29 enum TransferStatus { Unknown, Queued, Active, Suspended, Complete, Error };
30 Q_ENUM(TransferStatus)
31
32 Q_PROPERTY(TransferStatus status READ status NOTIFY statusChanged)
33 Q_PROPERTY(ObexSessionInfo session READ session CONSTANT)
34 Q_PROPERTY(QString name READ name CONSTANT)
35 Q_PROPERTY(quint64 size READ size CONSTANT)
36 Q_PROPERTY(QString type READ type CONSTANT)
37 Q_PROPERTY(quint64 transferred READ transferred NOTIFY transferredChanged)
38 Q_PROPERTY(QFileInfo filename READ filename CONSTANT)
39
40 TransferStatus status() const;
41 ObexSessionInfo session() const;
42 QString name() const;
43 QString type() const;
44 quint64 size() const;
45 quint64 transferred() const;
46 QFileInfo filename() const;
47
48public Q_SLOTS:
49 DExpected<void> cancel() const;
50
51Q_SIGNALS:
52 void statusChanged(TransferStatus status);
53 void transferredChanged(quint64 transferred);
54
55 void removed();
56
57private:
58 D_DECLARE_PRIVATE(DObexTransfer);
59};
60
61DBLUETOOTH_END_NAMESPACE
62#endif
蓝牙obex会话类
Definition: dbluetoothobexsession.h:24
蓝牙obex管理类
Definition: dbluetoothobextransfer.h:21
TransferStatus
蓝牙传输对象当前的状态
Definition: dbluetoothobextransfer.h:29
@ Active
Definition: dbluetoothobextransfer.h:29
一些自定义类型和枚举
传输会话的信息
Definition: dbluetoothtypes.h:23