- Qt 6.12
- Qt Bluetooth
- QBluetooth Namespace
- Qt 6.12.0 Reference Documentation

# QBluetooth Namespace

The QBluetooth namespace provides classes and functions related to Bluetooth. More...

Header: | `#include <qbluetooth.h>`
CMake: | `find_package(Qt6 REQUIRED COMPONENTS Bluetooth)` `target_link_libraries(mytarget PRIVATE Qt6::Bluetooth)`
qmake: | `QT += bluetooth`

## Types

enum class | AttAccessConstraint { AttAuthorizationRequired, AttAuthenticationRequired, AttEncryptionRequired }
flags | AttAccessConstraints
| QLowEnergyHandle
enum class | Security { NoSecurity, Authorization, Authentication, Encryption, Secure }
flags | SecurityFlags

## Detailed Description

## Type Documentation

### enum class QBluetooth::AttAccessConstraint
flags QBluetooth::AttAccessConstraints

This enum describes the possible requirements for reading or writing an ATT attribute.

Constant | Value | Description
--- | --- | ---
`QBluetooth::AttAccessConstraint::AttAuthorizationRequired` | `0x1` | The client needs authorization from the ATT server to access the attribute.
`QBluetooth::AttAccessConstraint::AttAuthenticationRequired` | `0x2` | The client needs to be authenticated to access the attribute.
`QBluetooth::AttAccessConstraint::AttEncryptionRequired` | `0x4` | The attribute can only be accessed if the connection is encrypted.

The AttAccessConstraints type is a typedef for QFlags<AttAccessConstraint>. It stores an OR combination of AttAccessConstraint values.

### QLowEnergyHandle

Typedef for Bluetooth Low Energy ATT attribute handles.

### enum class QBluetooth::Security
flags QBluetooth::SecurityFlags

This enum describe the security requirements of a Bluetooth service.

Constant | Value | Description
--- | --- | ---
`QBluetooth::Security::NoSecurity` | `0x00` | The service does not require any security.
`QBluetooth::Security::Authorization` | `0x01` | The service requires authorization by the user, unless the device is Authorized-Paired.
`QBluetooth::Security::Authentication` | `0x02` | The service requires authentication. Device must be paired, and the user is prompted on connection unless the device is Authorized-Paired.
`QBluetooth::Security::Encryption` | `0x04` | The service requires the communication link to be encrypted. This requires the device to be paired.
`QBluetooth::Security::Secure` | `0x08` | The service requires the communication link to be secure. Simple Pairing from Bluetooth 2.1 or greater is required. Legacy pairing is not permitted.

The SecurityFlags type is a typedef for QFlags<Security>. It stores an OR combination of Security values.