Класс QLowEnergyCharacteristic
Класс QLowEnergyCharacteristic хранит информацию о характеристике сервиса Bluetooth Low Energy. Подробнее...
| Заголовок: | #include <QLowEnergyCharacteristic> |
| qmake: | QT += bluetooth |
| С тех пор: | Qt 5.4 |
Типы публичного доступа
| перечисление | PropertyType { Неизвестно, Вещание, Чтение, ЗаписьБезОтвета, ..., РасширенноеСвойство } |
| флаги | PropertyTypes |
Функции публичного доступа
| QLowEnergyCharacteristic() | |
| QLowEnergyCharacteristic(const QLowEnergyCharacteristic &other) | |
| ~QLowEnergyCharacteristic() | |
| QLowEnergyDescriptor | descriptor(const QBluetoothUuid &uuid) const |
| QList<QLowEnergyDescriptor> | descriptors() const |
| QLowEnergyHandle | handle() const |
| bool | isValid() const |
| QString | name() const |
| QLowEnergyCharacteristic::PropertyTypes | properties() const |
| QBluetoothUuid | uuid() const |
| QByteArray | value() const |
| bool | operator!=(const QLowEnergyCharacteristic &other) const |
| QLowEnergyCharacteristic & | operator=(const QLowEnergyCharacteristic &other) |
| bool | operator==(const QLowEnergyCharacteristic &other) const |
Подробное описание
Класс QLowEnergyCharacteristic хранит информацию о характеристике сервиса Bluetooth Low Energy.
QLowEnergyCharacteristic предоставляет информацию об имени (name()), UUID (uuid()), значении (value()), свойствах (properties()), дескрипторе (handle()) и дескрипторах (descriptors()) характеристики Bluetooth Low Energy. Для получения спецификации и информации о характеристике необходимо подключиться к устройству с помощью классов QLowEnergyService и QLowEnergyController.
Значение характеристики может быть записано через экземпляр QLowEnergyService, который управляет сервисом, к которому принадлежит эта характеристика. Функция QLowEnergyService::writeCharacteristic() записывает новое значение. При успехе генерируется сигнал QLowEnergyService::characteristicWritten(). Значение value() этого объекта автоматически обновляется соответственно.
Характеристики могут содержать ноль, один или несколько дескрипторов. Их можно получить индивидуально с помощью функции descriptor(). Функция descriptors() возвращает список всех дескрипторов. Основное назначение дескриптора — добавление контекстной информации к характеристике. Например, дескриптор может предоставить информацию о формате или диапазоне, определяющую, как интерпретировать значение характеристики.
См. также QLowEnergyService и QLowEnergyDescriptor.
Документация по типам членов
перечисление QLowEnergyCharacteristic::PropertyTypeфлаги QLowEnergyCharacteristic::PropertyTypes
Это перечисление описывает свойства характеристики.
| Константа | Значение | Описание |
|---|---|---|
QLowEnergyCharacteristic::Unknown |
0x00 |
Тип неизвестен. |
QLowEnergyCharacteristic::Broadcasting |
0x01 |
Разрешает вещание значений характеристики Общих атрибутов (GATT). |
QLowEnergyCharacteristic::Read |
0x02 |
Разрешает чтение значений характеристик. |
QLowEnergyCharacteristic::WriteNoResponse |
0x04 |
Разрешает запись значений характеристик без ответа. |
QLowEnergyCharacteristic::Write |
0x08 |
Разрешает запись значений характеристик. |
QLowEnergyCharacteristic::Notify |
0x10 |
Разрешает уведомление о значении характеристики. |
QLowEnergyCharacteristic::Indicate |
0x20 |
Разрешает указания значений характеристики. |
QLowEnergyCharacteristic::WriteSigned |
0x40 |
Разрешает подписанные записи значений характеристики GATT. |
QLowEnergyCharacteristic::ExtendedProperty |
0x80 |
Дополнительные свойства характеристики определены в дескрипторе расширенных свойств характеристики. |
Тип PropertyTypes является типом-синонимом для QFlags<PropertyType>. Он хранит логическое ИЛИ комбинацию значений PropertyType.
См. также properties().
Документация по функциям членов
QLowEnergyCharacteristic::QLowEnergyCharacteristic()
Создает новую характеристику QLowEnergyCharacteristic. Экземпляр, созданный по умолчанию, всегда недействителен.
См. также isValid().
QLowEnergyCharacteristic::QLowEnergyCharacteristic(const QLowEnergyCharacteristic &other)
Создает новую характеристику QLowEnergyCharacteristic, которая является копией other.
Обе копии продолжают совместно использовать одни и те же данные, которые не отсоединяются при записи.
QLowEnergyCharacteristic::~QLowEnergyCharacteristic()
Уничтожает объект QLowEnergyCharacteristic.
QLowEnergyDescriptor QLowEnergyCharacteristic::descriptor(const QBluetoothUuid &uuid) const
Возвращает дескриптор для uuid или недопустимый QLowEnergyDescriptor экземпляр.
См. также descriptors().
QList<QLowEnergyDescriptor> QLowEnergyCharacteristic::descriptors() const
Возвращает список дескрипторов, принадлежащих этой характеристике; в противном случае — пустой список.
См. также descriptor().
QLowEnergyHandle QLowEnergyCharacteristic::handle() const
Возвращает дескриптор атрибута значения характеристики; или 0 если дескриптор недоступен на платформе или характеристика недопустима.
Примечание: На macOS и iOS дескрипторы могут отличаться от 0, но эти значения не имеют специального значения за пределами внутренних/частных API.
bool QLowEnergyCharacteristic::isValid() const
Возвращает true если объект QLowEnergyCharacteristic допустим, в противном случае возвращает false.
Недействительный объект характеристики не связан ни с каким сервисом (по умолчанию) или связанный сервис больше недействителен из-за разрыва соединения с базовым устройством Bluetooth Low Energy, например. После того, как объект станет недействительным, он больше не может стать действительным.
Примечание: Если экземпляр QLowEnergyCharacteristic становится недействительным из-за разрыва соединения с базовым устройством, информация, содержащаяся в текущем экземпляре, остаётся такой, какой она была в момент разрыва соединения. Поэтому она может быть получена после события разрыва соединения.
QString QLowEnergyCharacteristic::name() const
Возвращает удобочитаемое имя характеристики.
Имя основано на uuid() характеристики, которая должна быть стандартизирована. Полный список типов характеристик можно найти на сайте Bluetooth.org Characteristics.
Возвращаемая строка пустая, если uuid() неизвестно.
См. также QBluetoothUuid::characteristicToString().
QLowEnergyCharacteristic::PropertyTypes QLowEnergyCharacteristic::properties() const
Возвращает свойства характеристики.
Свойства определяют разрешения доступа к характеристике.
QBluetoothUuid QLowEnergyCharacteristic::uuid() const
Возвращает UUID характеристики, если isValid() возвращает true; в противном случае — нулевой UUID.
QByteArray QLowEnergyCharacteristic::value() const
Возвращает кэшированное значение характеристики.
Если свойства характеристики properties() разрешают запись новых значений, значение может быть обновлено с помощью QLowEnergyService::writeCharacteristic().
Кэш обновляется во время открытия деталей связанного сервиса, успешной операции чтения/записи read/write или при получении уведомления об обновлении.
Возвращаемый QByteArray всегда остается пустым, если у характеристики нет разрешения на чтение. В таких случаях только QLowEnergyService::characteristicChanged() или QLowEnergyService::characteristicWritten() могут предоставить информацию о значении этой характеристики.
bool QLowEnergyCharacteristic::operator!=(const QLowEnergyCharacteristic &other) const
Возвращает true , если other не равно этому QLowEnergyCharacteristic; в противном случае false.
Два экземпляра QLowEnergyCharcteristic считаются равными, если они ссылаются на одну и ту же характеристику на одном и том же удаленном устройстве Bluetooth Low Energy или оба экземпляра были созданы по умолчанию.
QLowEnergyCharacteristic &QLowEnergyCharacteristic::operator=(const QLowEnergyCharacteristic &other)
Создает копию other и присваивает ее этому объекту QLowEnergyCharacteristic. Обе копии продолжают совместно использовать те же детали сервиса и контроллера.
bool QLowEnergyCharacteristic::operator==(const QLowEnergyCharacteristic &other) const
Возвращает true , если other равно этому QLowEnergyCharacteristic; в противном случае false.
Два экземпляра QLowEnergyCharacteristic считаются равными, если они ссылаются на одну и ту же характеристику на одном и том же удаленном устройстве Bluetooth Low Energy или оба экземпляра были созданы по умолчанию.
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-5.9/qlowenergycharacteristic.html