1// qbluetoothdeviceinfo.sip generated by MetaSIP
2//
3// This file is part of the QtBluetooth Python extension module.
4//
5// Copyright (c) 2021 Riverbank Computing Limited <info@riverbankcomputing.com>
6//
7// This file is part of PyQt5.
8//
9// This file may be used under the terms of the GNU General Public License
10// version 3.0 as published by the Free Software Foundation and appearing in
11// the file LICENSE included in the packaging of this file.  Please review the
12// following information to ensure the GNU General Public License version 3.0
13// requirements will be met: http://www.gnu.org/copyleft/gpl.html.
14//
15// If you do not wish to use this file under the terms of the GPL version 3.0
16// then you may purchase a commercial license.  For more information contact
17// info@riverbankcomputing.com.
18//
19// This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
20// WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
21
22
23%If (Qt_5_2_0 -)
24
25class QBluetoothDeviceInfo
26{
27%TypeHeaderCode
28#include <qbluetoothdeviceinfo.h>
29%End
30
31public:
32    enum MajorDeviceClass
33    {
34        MiscellaneousDevice,
35        ComputerDevice,
36        PhoneDevice,
37        LANAccessDevice,
38%If (Qt_5_13_0 -)
39        NetworkDevice,
40%End
41        AudioVideoDevice,
42        PeripheralDevice,
43        ImagingDevice,
44        WearableDevice,
45        ToyDevice,
46        HealthDevice,
47        UncategorizedDevice,
48    };
49
50    enum MinorMiscellaneousClass
51    {
52        UncategorizedMiscellaneous,
53    };
54
55    enum MinorComputerClass
56    {
57        UncategorizedComputer,
58        DesktopComputer,
59        ServerComputer,
60        LaptopComputer,
61        HandheldClamShellComputer,
62        HandheldComputer,
63        WearableComputer,
64    };
65
66    enum MinorPhoneClass
67    {
68        UncategorizedPhone,
69        CellularPhone,
70        CordlessPhone,
71        SmartPhone,
72        WiredModemOrVoiceGatewayPhone,
73        CommonIsdnAccessPhone,
74    };
75
76    enum MinorNetworkClass
77    {
78        NetworkFullService,
79        NetworkLoadFactorOne,
80        NetworkLoadFactorTwo,
81        NetworkLoadFactorThree,
82        NetworkLoadFactorFour,
83        NetworkLoadFactorFive,
84        NetworkLoadFactorSix,
85        NetworkNoService,
86    };
87
88    enum MinorAudioVideoClass
89    {
90        UncategorizedAudioVideoDevice,
91        WearableHeadsetDevice,
92        HandsFreeDevice,
93        Microphone,
94        Loudspeaker,
95        Headphones,
96        PortableAudioDevice,
97        CarAudio,
98        SetTopBox,
99        HiFiAudioDevice,
100        Vcr,
101        VideoCamera,
102        Camcorder,
103        VideoMonitor,
104        VideoDisplayAndLoudspeaker,
105        VideoConferencing,
106        GamingDevice,
107    };
108
109    enum MinorPeripheralClass
110    {
111        UncategorizedPeripheral,
112        KeyboardPeripheral,
113        PointingDevicePeripheral,
114        KeyboardWithPointingDevicePeripheral,
115        JoystickPeripheral,
116        GamepadPeripheral,
117        RemoteControlPeripheral,
118        SensingDevicePeripheral,
119        DigitizerTabletPeripheral,
120        CardReaderPeripheral,
121    };
122
123    enum MinorImagingClass
124    {
125        UncategorizedImagingDevice,
126        ImageDisplay,
127        ImageCamera,
128        ImageScanner,
129        ImagePrinter,
130    };
131
132    enum MinorWearableClass
133    {
134        UncategorizedWearableDevice,
135        WearableWristWatch,
136        WearablePager,
137        WearableJacket,
138        WearableHelmet,
139        WearableGlasses,
140    };
141
142    enum MinorToyClass
143    {
144        UncategorizedToy,
145        ToyRobot,
146        ToyVehicle,
147        ToyDoll,
148        ToyController,
149        ToyGame,
150    };
151
152    enum MinorHealthClass
153    {
154        UncategorizedHealthDevice,
155        HealthBloodPressureMonitor,
156        HealthThermometer,
157        HealthWeightScale,
158        HealthGlucoseMeter,
159        HealthPulseOximeter,
160        HealthDataDisplay,
161        HealthStepCounter,
162    };
163
164    enum ServiceClass
165    {
166        NoService,
167        PositioningService,
168        NetworkingService,
169        RenderingService,
170        CapturingService,
171        ObjectTransferService,
172        AudioService,
173        TelephonyService,
174        InformationService,
175        AllServices,
176    };
177
178    typedef QFlags<QBluetoothDeviceInfo::ServiceClass> ServiceClasses;
179
180    enum DataCompleteness
181    {
182        DataComplete,
183        DataIncomplete,
184        DataUnavailable,
185    };
186
187    QBluetoothDeviceInfo();
188    QBluetoothDeviceInfo(const QBluetoothAddress &address, const QString &name, quint32 classOfDevice);
189%If (Qt_5_5_0 -)
190    QBluetoothDeviceInfo(const QBluetoothUuid &uuid, const QString &name, quint32 classOfDevice);
191%End
192    QBluetoothDeviceInfo(const QBluetoothDeviceInfo &other);
193    ~QBluetoothDeviceInfo();
194    bool isValid() const;
195    bool isCached() const;
196    void setCached(bool cached);
197    bool operator==(const QBluetoothDeviceInfo &other) const;
198    bool operator!=(const QBluetoothDeviceInfo &other) const;
199    QBluetoothAddress address() const;
200    QString name() const;
201    QBluetoothDeviceInfo::ServiceClasses serviceClasses() const;
202    QBluetoothDeviceInfo::MajorDeviceClass majorDeviceClass() const;
203    quint8 minorDeviceClass() const;
204    qint16 rssi() const;
205    void setRssi(qint16 signal);
206    void setServiceUuids(const QList<QBluetoothUuid> &uuids, QBluetoothDeviceInfo::DataCompleteness completeness);
207%If (Qt_5_13_0 -)
208    void setServiceUuids(const QVector<QBluetoothUuid> &uuids);
209%End
210    QList<QBluetoothUuid> serviceUuids(QBluetoothDeviceInfo::DataCompleteness *completeness /Out/ = 0) const;
211    QBluetoothDeviceInfo::DataCompleteness serviceUuidsCompleteness() const;
212%If (Qt_5_4_0 -)
213
214    enum CoreConfiguration
215    {
216        UnknownCoreConfiguration,
217        LowEnergyCoreConfiguration,
218        BaseRateCoreConfiguration,
219        BaseRateAndLowEnergyCoreConfiguration,
220    };
221
222%End
223%If (Qt_5_4_0 -)
224    typedef QFlags<QBluetoothDeviceInfo::CoreConfiguration> CoreConfigurations;
225%End
226%If (Qt_5_4_0 -)
227    void setCoreConfigurations(QBluetoothDeviceInfo::CoreConfigurations coreConfigs);
228%End
229%If (Qt_5_4_0 -)
230    QBluetoothDeviceInfo::CoreConfigurations coreConfigurations() const;
231%End
232%If (Qt_5_5_0 -)
233    void setDeviceUuid(const QBluetoothUuid &uuid);
234%End
235%If (Qt_5_5_0 -)
236    QBluetoothUuid deviceUuid() const;
237%End
238%If (Qt_5_12_0 -)
239
240    enum class Field
241    {
242        None /PyName=None_/,
243        RSSI,
244        ManufacturerData,
245        All,
246    };
247
248%End
249%If (Qt_5_12_0 -)
250    typedef QFlags<QBluetoothDeviceInfo::Field> Fields;
251%End
252%If (Qt_5_12_0 -)
253    QVector<quint16> manufacturerIds() const;
254%End
255%If (Qt_5_12_0 -)
256    QByteArray manufacturerData(quint16 manufacturerId) const;
257%End
258%If (Qt_5_12_0 -)
259    bool setManufacturerData(quint16 manufacturerId, const QByteArray &data);
260%End
261%If (Qt_5_12_0 -)
262    QHash<quint16, QByteArray> manufacturerData() const;
263%End
264};
265
266%End
267%If (Qt_5_5_0 -)
268QFlags<QBluetoothDeviceInfo::CoreConfiguration> operator|(QBluetoothDeviceInfo::CoreConfiguration f1, QFlags<QBluetoothDeviceInfo::CoreConfiguration> f2);
269%End
270%If (Qt_5_5_0 -)
271QFlags<QBluetoothDeviceInfo::ServiceClass> operator|(QBluetoothDeviceInfo::ServiceClass f1, QFlags<QBluetoothDeviceInfo::ServiceClass> f2);
272%End
273