Spec-Zone.ru › Qt

Класс QBluetoothServiceInfo

Класс QBluetoothServiceInfo обеспечивает доступ к атрибутам службы Bluetooth. Подробнее...

Заголовок: #include <QBluetoothServiceInfo>
qmake: QT += bluetooth
С версии: Qt 5.2
  • Список всех членов, включая унаследованные

Открытые типы

class Alternative
class Sequence
enum AttributeId { ServiceRecordHandle, ServiceClassIds, ServiceRecordState, ServiceId, ProtocolDescriptorList, …, ServiceProvider }
enum Protocol { UnknownProtocol, L2capProtocol, RfcommProtocol }

Открытые функции

QBluetoothServiceInfo(const QBluetoothServiceInfo &other)
QBluetoothServiceInfo()
QBluetoothServiceInfo & operator=(const QBluetoothServiceInfo &other)
~QBluetoothServiceInfo()
QVariant attribute(quint16 attributeId) const
QList<quint16> attributes() const
bool contains(quint16 attributeId) const
QBluetoothDeviceInfo device() const
bool isComplete() const
bool isRegistered() const
bool isValid() const
QBluetoothServiceInfo::Sequence protocolDescriptor(QBluetoothUuid::ProtocolUuid protocol) const
int protocolServiceMultiplexer() const
bool registerService(const QBluetoothAddress &localAdapter = QBluetoothAddress())
void removeAttribute(quint16 attributeId)
int serverChannel() const
quint8 serviceAvailability() const
QList<QBluetoothUuid> serviceClassUuids() const
QString serviceDescription() const
QString serviceName() const
QString serviceProvider() const
QBluetoothUuid serviceUuid() const
void setAttribute(quint16 attributeId, const QVariant &value)
void setAttribute(quint16 attributeId, const QBluetoothUuid &value)
void setAttribute(quint16 attributeId, const QBluetoothServiceInfo::Sequence &value)
void setAttribute(quint16 attributeId, const QBluetoothServiceInfo::Alternative &value)
void setDevice(const QBluetoothDeviceInfo &device)
void setServiceAvailability(quint8 availability)
void setServiceDescription(const QString &description)
void setServiceName(const QString &name)
void setServiceProvider(const QString &provider)
void setServiceUuid(const QBluetoothUuid &uuid)
QBluetoothServiceInfo::Protocol socketProtocol() const
bool unregisterService()

Подробное описание

QBluetoothServiceInfo предоставляет информацию о службе, предлагаемой устройством Bluetooth. Кроме того, его можно использовать для регистрации новых служб на локальном устройстве. Обратите внимание, что такая регистрация влияет только на записи Bluetooth SDP. Любой сервер, прослушивающий входящие соединения (например, сервер RFCOMM), должен быть запущен до вызова registerService(). Отмена регистрации должна происходить в обратном порядке.

QBluetoothServiceInfo не является типом значения в традиционном смысле. Все копии одного и того же объекта информации о службе используют одни и те же данные, поскольку они не отсоединяются при их изменении. Это гарантирует, что две копии могут (де)регистрировать одну и ту же службу Bluetooth.

На iOS этот класс использовать нельзя, поскольку платформа не предоставляет API, который может разрешить доступ к функциям, связанным с QBluetoothServiceInfo.

Документация по типам членов

enum QBluetoothServiceInfo::AttributeId

Атрибуты службы Bluetooth. Пожалуйста, проверьте спецификацию Bluetooth Core для более подробного описания этих атрибутов.

Константа Значение Описание
QBluetoothServiceInfo::ServiceRecordHandle 0x0000 Указывает на запись службы, из которой можно получить атрибуты.
QBluetoothServiceInfo::ServiceClassIds 0x0001 UUID служб, которым соответствует служба. Наиболее распространённые классы служб определены в (QBluetoothUuid::ServiceClassUuid).
QBluetoothServiceInfo::ServiceRecordState 0x0002 Атрибуты изменяются при добавлении, удалении или изменении любого другого атрибута службы.
QBluetoothServiceInfo::ServiceId 0x0003 UUID, уникально идентифицирующий службу.
QBluetoothServiceInfo::ProtocolDescriptorList 0x0004 Список протоколов, используемых службой. Наиболее распространённые UUID протоколов определены в QBluetoothUuid::ProtocolUuid
QBluetoothServiceInfo::BrowseGroupList 0x0005 Список групп просмотра, в которых находится служба.
QBluetoothServiceInfo::LanguageBaseAttributeIdList 0x0006 Список идентификаторов базовых атрибутов языка для поддержки атрибутов, понятных человеку.
QBluetoothServiceInfo::ServiceInfoTimeToLive 0x0007 Количество секунд, в течение которого запись службы должна оставаться действительной и неизменной.
QBluetoothServiceInfo::ServiceAvailability 0x0008 Значение, указывающее на доступность службы.
QBluetoothServiceInfo::BluetoothProfileDescriptorList 0x0009 Список профилей, которым соответствует служба.
QBluetoothServiceInfo::DocumentationUrl 0x000A URL, указывающий на документацию по службе.
QBluetoothServiceInfo::ClientExecutableUrl 0x000B URL, указывающий на местоположение приложения, которое может быть использовано для работы со службой.
QBluetoothServiceInfo::IconUrl 0x000C URL местоположения значка, представляющего службу.
QBluetoothServiceInfo::AdditionalProtocolDescriptorList 0x000D Дополнительные протоколы, используемые службой. Этот атрибут расширяет ProtocolDescriptorList.
QBluetoothServiceInfo::PrimaryLanguageBase 0x0100 Базовый индекс для описателей текстов основного языка.
QBluetoothServiceInfo::ServiceName PrimaryLanguageBase + 0x0000 Имя Bluetooth-службы на основном языке.
QBluetoothServiceInfo::ServiceDescription PrimaryLanguageBase + 0x0001 Описание Bluetooth-службы на основном языке.
QBluetoothServiceInfo::ServiceProvider PrimaryLanguageBase + 0x0002 Имя компании/сущности, предоставляющей Bluetooth-службу, на основном языке.

Примечание: В Windows ServiceClassIds и ProtocolDescriptorList автоматически устанавливаются значения по умолчанию при создании службы. Ручное задание значений для этих атрибутов не сработает и может привести к неожиданным результатам на этой платформе.

Перечисление QBluetoothServiceInfo::Protocol

Это перечисление описывает протокол сокета, используемый службой.

Константа Значение Описание
QBluetoothServiceInfo::UnknownProtocol 0 Служба использует неизвестный протокол сокета.
QBluetoothServiceInfo::L2capProtocol 1 Служба использует протокол сокета L2CAP. Этот протокол не поддерживается для прямых соединений сокета на Android.
QBluetoothServiceInfo::RfcommProtocol 2 Служба использует протокол сокета RFCOMM.

Документация по функциям-членам

QBluetoothServiceInfo::QBluetoothServiceInfo(const QBluetoothServiceInfo &other)

Создаёт новый QBluetoothServiceInfo, являющийся копией other.

Обе копии продолжают использовать общие данные, при этом развязка не происходит при записи.

QBluetoothServiceInfo::QBluetoothServiceInfo()

Создаёт новый невалидный QBluetoothServiceInfo;

QBluetoothServiceInfo &QBluetoothServiceInfo::operator=(const QBluetoothServiceInfo &other)

Создаёт копию other и присваивает её объекту QBluetoothServiceInfo. Обе копии продолжают совместно использовать данные о службе и регистрации.

QBluetoothServiceInfo::~QBluetoothServiceInfo()

Удаляет объект QBluetoothServiceInfo.

QVariant QBluetoothServiceInfo::attribute(quint16 attributeId) const

Возвращает значение атрибута attributeId.

См. также setAttribute().

QList<quint16> QBluetoothServiceInfo::attributes() const

Возвращает список всех идентификаторов атрибутов, имеющихся у объекта QBluetoothServiceInfo.

bool QBluetoothServiceInfo::contains(quint16 attributeId) const

Возвращает true, если объект QBluetoothServiceInfo содержит атрибут attributeId, иначе возвращает false.

QBluetoothDeviceInfo QBluetoothServiceInfo::device() const

Возвращает адрес устройства Bluetooth, предоставляющего эту службу.

См. также setDevice().

bool QBluetoothServiceInfo::isComplete() const

Возвращает true, если объект QBluetoothServiceInfo считается полным, иначе возвращает false.

Полный объект QBluetoothServiceInfo содержит атрибут ProtocolDescriptorList.

bool QBluetoothServiceInfo::isRegistered() const

Возвращает true, если информация о службе зарегистрирована в реализации протокола обнаружения служб (SDP) платформы, иначе возвращает false.

bool QBluetoothServiceInfo::isValid() const

Возвращает true, если объект QBluetoothServiceInfo действителен, иначе возвращает false.

Недействительный объект QBluetoothServiceInfo не будет содержать атрибутов.

QBluetoothServiceInfo::Sequence QBluetoothServiceInfo::protocolDescriptor(QBluetoothUuid::ProtocolUuid protocol) const

Возвращает параметры протокола как QBluetoothServiceInfo::Sequence для протокола protocol.

Пустой QBluetoothServiceInfo::Sequence возвращается, если protocol не поддерживается.

int QBluetoothServiceInfo::protocolServiceMultiplexer() const

Это вспомогательная функция. Возвращает мультиплексор протокола/службы для служб, которые поддерживают протокол L2CAP, иначе возвращает -1.

Эта функция эквивалентна извлечению информации из QBluetoothServiceInfo::Sequence, возвращённой QBluetoothServiceInfo::attribute(QBluetoothServiceInfo::ProtocolDescriptorList).

bool QBluetoothServiceInfo::registerService(const QBluetoothAddress &localAdapter = QBluetoothAddress())

Регистрирует эту службу в реализации протокола обнаружения служб (SDP) платформы, что делает её доступной для других устройств при выполнении ими поиска служб. Возвращает true, если служба успешно зарегистрирована, иначе возвращает false. После регистрации изменения записи сделать нельзя. Службу необходимо дерегистрировать и зарегистрировать заново с внесёнными изменениями.

Параметр localAdapter определяет локальный адаптер Bluetooth, под которым должна быть зарегистрирована служба. Если localAdapter — null используется адаптер Bluetooth по умолчанию. Если эта информация о службе уже зарегистрирована через локальный адаптер, и эта функция вызывается с использованием другого локального адаптера, предыдущая регистрация удаляется, и служба регистрируется заново с использованием нового адаптера.

void QBluetoothServiceInfo::removeAttribute(quint16 attributeId)

Удаляет атрибут attributeId из объекта QBluetoothServiceInfo.

Если информация о службе уже зарегистрирована в базе данных SDP платформы, запись в базе данных не будет обновлена до тех пор, пока не будет вызван метод registerService() повторно.

int QBluetoothServiceInfo::serverChannel() const

Это вспомогательная функция. Возвращает номер канала сервера для служб, которые поддерживают протокол RFCOMM, в противном случае возвращает -1.

Эта функция эквивалентна извлечению информации из QBluetoothServiceInfo::Sequence, возвращаемой методом QBluetoothServiceInfo::attribute(QBluetootherServiceInfo::ProtocolDescriptorList).

quint8 QBluetoothServiceInfo::serviceAvailability() const

Это вспомогательная функция. Она эквивалентна вызову attribute(QBluetoothServiceInfo::ServiceAvailability).toUInt().

Возвращает доступность службы.

См. также setServiceAvailability() и attribute().

QList<QBluetoothUuid> QBluetoothServiceInfo::serviceClassUuids() const

Возвращает список UUID, описывающих классы служб, которым соответствует эта служба.

Это вспомогательная функция. Она эквивалентна вызову attribute(QBluetoothServiceInfo::ServiceClassIds).value<QBluetoothServiceInfo::Sequence>() и последующему перебору элементов QBluetoothUuid.

См. также attribute().

QString QBluetoothServiceInfo::serviceDescription() const

Это вспомогательная функция. Она эквивалентна вызову attribute(QBluetoothServiceInfo::ServiceDescription).toString().

Возвращает описание службы на языке по умолчанию.

См. также setServiceDescription() и attribute().

QString QBluetoothServiceInfo::serviceName() const

Это вспомогательная функция. Она эквивалентна вызову attribute(QBluetoothServiceInfo::ServiceName).toString().

Возвращает имя службы на языке по умолчанию.

См. также setServiceName() и attribute().

QString QBluetoothServiceInfo::serviceProvider() const

Это вспомогательная функция. Она эквивалентна вызову attribute(QBluetoothServiceInfo::ServiceProvider).toString().

Возвращает информацию о поставщике службы на языке по умолчанию.

См. также setServiceProvider() и attribute().

QBluetoothUuid QBluetoothServiceInfo::serviceUuid() const

Это вспомогательная функция. Она эквивалентна вызову attribute(QBluetoothServiceInfo::ServiceId).value<QBluetoothUuid>().

Возвращает пользовательский UUID службы. Этот UUID может быть пустым. UUID, основанные на стандартах Bluetooth SIG, следует получать с помощью serviceClassUuids().

См. также setServiceUuid() и attribute().

void QBluetoothServiceInfo::setAttribute(quint16 attributeId, const QVariant &value)

Устанавливает атрибут, идентифицируемый по attributeId, в значение value.

Если информация о службе уже зарегистрирована в базе данных SDP платформы, запись в базе данных не будет обновлена до тех пор, пока не будет вызван метод registerService() повторно.

Примечание: Если атрибут ожидает кодированное байтовое значение (например, службы Bluetooth HID), оно должно быть установлено как QByteArray.

См. также attribute(), isRegistered() и registerService().

void QBluetoothServiceInfo::setAttribute(quint16 attributeId, const QBluetoothUuid &value)

Это вспомогательная функция.

Устанавливает атрибут, идентифицируемый по attributeId, в значение value.

Если информация о службе уже зарегистрирована в базе данных SDP платформы, запись в базе данных не будет обновлена до тех пор, пока не будет вызван метод registerService() повторно.

void QBluetoothServiceInfo::setAttribute(quint16 attributeId, const QBluetoothServiceInfo::Sequence &value)

Это вспомогательная функция.

Устанавливает атрибут, идентифицируемый по attributeId, в значение value.

Если информация о службе уже зарегистрирована в базе данных SDP платформы, запись в базе данных не будет обновлена до тех пор, пока не будет вызван метод registerService() повторно.

void QBluetoothServiceInfo::setAttribute(quint16 attributeId, const QBluetoothServiceInfo::Alternative &value)

Это вспомогательная функция.

Устанавливает атрибут, идентифицируемый по attributeId, в значение value.

Если информация о службе уже зарегистрирована в базе данных SDP платформы, запись в базе данных не будет обновлена до тех пор, пока не будет вызван метод registerService() повторно.

void QBluetoothServiceInfo::setDevice(const QBluetoothDeviceInfo &device)

Устанавливает устройство Bluetooth, предоставляющее эту службу, в device.

См. также device().

void QBluetoothServiceInfo::setServiceAvailability(quint8 availability)

Это вспомогательная функция. Она эквивалентна вызову setAttribute(QBluetoothServiceInfo::ServiceAvailability, availability).

Устанавливает доступность службы в значение availability.

См. также serviceAvailability() и setAttribute().

void QBluetoothServiceInfo::setServiceDescription(const QString &description)

Это вспомогательная функция. Она эквивалентна вызову setAttribute(QBluetoothServiceInfo::ServiceDescription, description).

Устанавливает описание службы на языке по умолчанию в значение description.

См. также serviceDescription() и setAttribute().

void QBluetoothServiceInfo::setServiceName(const QString &name)

Это вспомогательная функция. Она эквивалентна вызову setAttribute(QBluetoothServiceInfo::ServiceName, name).

Устанавливает имя службы на языке по умолчанию в значение name.

См. также serviceName() и setAttribute().

void QBluetoothServiceInfo::setServiceProvider(const QString &provider)

Это вспомогательная функция. Она эквивалентна вызову setAttribute(QBluetoothServiceInfo::ServiceProvider, provider).

Устанавливает информацию о поставщике службы на языке по умолчанию в значение provider.

См. также serviceProvider() и setAttribute().

void QBluetoothServiceInfo::setServiceUuid(const QBluetoothUuid &uuid)

Это вспомогательная функция. Она эквивалентна вызову setAttribute(QBluetoothServiceInfo::ServiceId, uuid).

Устанавливает пользовательский UUID службы в значение uuid. Эта функция не должна использоваться для установки стандартизованного UUID службы.

См. также serviceUuid() и setAttribute().

QBluetoothServiceInfo::Protocol QBluetoothServiceInfo::socketProtocol() const

Возвращает протокол, используемый объектом QBluetoothServiceInfo.

bool QBluetoothServiceInfo::unregisterService()

Отменяет регистрацию этой службы в реализации протокола обнаружения служб (SDP) платформы. После этого служба больше не будет обнаруживаема другими устройствами через обнаружение служб.

Возвращает true, если служба успешно отменена, в противном случае возвращает false.

© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-6.2/qbluetoothserviceinfo.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API