MeeGo 1.2 Harmattan Developer Documentation Develop for the Nokia N9

QBluetoothDeviceInfo Class Reference

The QBluetoothDeviceInfo class provides information about Bluetooth devices. More...

 #include <QBluetoothDeviceInfo>

This class was introduced in Qt Mobility 1.2.

Public Types

enum DataCompleteness { DataComplete, DataIncomplete, DataUnavailable }
enum MajorDeviceClass { MiscellaneousDevice, ComputerDevice, PhoneDevice, LANAccessDevice, ..., UncategorizedDevice }
enum MinorAudioVideoClass { UncategorizedAudioVideoDevice, WearableHeadsetDevice, HandsFreeDevice, Microphone, ..., GamingDevice }
enum MinorComputerClass { UncategorizedComputer, DesktopComputer, ServerComputer, LaptopComputer, ..., WearableComputer }
enum MinorHealthClass { UncategorizedHealthDevice, HealthBloodPressureMonitor, HealthThermometer, HealthWeightScale, ..., HealthStepCounter }
enum MinorImagingClass { UncategorizedImagingDevice, ImageDisplay, ImageCamera, ImageScanner, ImagePrinter }
enum MinorMiscellaneousClass { UncategorizedMiscellaneous }
enum MinorNetworkClass { NetworkFullService, NetworkLoadFactorOne, NetworkLoadFactorTwo, NetworkLoadFactorThree, ..., NetworkNoService }
enum MinorPeripheralClass { UncategorizedPeripheral, KeyboardPeripheral, PointingDevicePeripheral, KeyboardWithPointingDevicePeripheral, ..., CardReaderPeripheral }
enum MinorPhoneClass { UncategorizedPhone, CellularPhone, CordlessPhone, SmartPhone, WiredModemOrVoiceGatewayPhone, CommonIsdnAccessPhone }
enum MinorToyClass { UncategorizedToy, ToyRobot, ToyVehicle, ToyDoll, ToyController, ToyGame }
enum MinorWearableClass { UncategorizedWearableDevice, WearableWristWatch, WearablePager, WearableJacket, WearableHelmet, WearableGlasses }
enum ServiceClass { NoService, PositioningService, NetworkingService, RenderingService, ..., AllServices }
flags ServiceClasses

Public Functions

QBluetoothDeviceInfo ()
QBluetoothDeviceInfo ( const QBluetoothAddress & address, const QString & name, quint32 classOfDevice )
QBluetoothDeviceInfo ( const QBluetoothDeviceInfo & other )
~QBluetoothDeviceInfo ()
QBluetoothAddress address () const
bool isCached () const
bool isValid () const
MajorDeviceClass majorDeviceClass () const
QByteArray manufacturerSpecificData ( bool * available = 0 ) const
quint8 minorDeviceClass () const
QString name () const
qint16 rssi () const
ServiceClasses serviceClasses () const
QList<QBluetoothUuid> serviceUuids ( DataCompleteness * completeness = 0 ) const
DataCompleteness serviceUuidsCompleteness () const
void setCached ( bool cached )
void setManufacturerSpecificData ( const QByteArray & data )
void setRssi ( qint16 signal )
void setServiceUuids ( const QList<QBluetoothUuid> & uuids, DataCompleteness completeness )
QBluetoothDeviceInfo & operator= ( const QBluetoothDeviceInfo & other )
bool operator== ( const QBluetoothDeviceInfo & other ) const

Detailed Description

The QBluetoothDeviceInfo class provides information about Bluetooth devices.

QBluetoothDeviceInfo provides information about a Bluetooth device's name, address and class of device.

Member Type Documentation

enum QBluetoothDeviceInfo::DataCompleteness

This enum describes the completeness of the received data.

Constant Value Description
QBluetoothDeviceInfo::DataComplete 0 The data is complete.
QBluetoothDeviceInfo::DataIncomplete 1 The data is incomplete. Addition datum is available via other interfaces.
QBluetoothDeviceInfo::DataUnavailable 2 No data is available.

enum QBluetoothDeviceInfo::MajorDeviceClass

This enum describes a Bluetooth device's major device class.

Constant Value Description
QBluetoothDeviceInfo::MiscellaneousDevice 0 A miscellaneous device.
QBluetoothDeviceInfo::ComputerDevice 1 A computer device or PDA.
QBluetoothDeviceInfo::PhoneDevice 2 A telephone device.
QBluetoothDeviceInfo::LANAccessDevice 3 A device that provides access to a local area network.
QBluetoothDeviceInfo::AudioVideoDevice 4 A device capable of playback or capture of audio and/or video.
QBluetoothDeviceInfo::PeripheralDevice 5 A peripheral device such as a keyboard, mouse, etc.
QBluetoothDeviceInfo::ImagingDevice 6 An imaging device such as a display, printer, scanner or camera.
QBluetoothDeviceInfo::WearableDevice 7 A wearable device such as a watch or pager.
QBluetoothDeviceInfo::ToyDevice 8 A toy.
QBluetoothDeviceInfo::HealthDevice 9 A health reated device such as heart rate, or temperature.
QBluetoothDeviceInfo::UncategorizedDevice 31 A device that does not fit into any of the other device classes.

enum QBluetoothDeviceInfo::MinorAudioVideoClass

This enum describes the minor device classes for audio/video devices.

Constant Value Description
QBluetoothDeviceInfo::UncategorizedAudioVideoDevice 0 An uncategorized audio/video device.
QBluetoothDeviceInfo::WearableHeadsetDevice 1 A wearable headset device.
QBluetoothDeviceInfo::HandsFreeDevice 2 A hands free device.
QBluetoothDeviceInfo::Microphone 4 A microphone.
QBluetoothDeviceInfo::Loudspeaker 5 A loudspeaker.
QBluetoothDeviceInfo::Headphones 6 Headphones.
QBluetoothDeviceInfo::PortableAudioDevice 7 A portable audio device.
QBluetoothDeviceInfo::CarAudio 8 A car audio device.
QBluetoothDeviceInfo::SetTopBox 9 A set top box.
QBluetoothDeviceInfo::HiFiAudioDevice 10 A HiFi audio device.
QBluetoothDeviceInfo::Vcr 11 A video cassette recorder.
QBluetoothDeviceInfo::VideoCamera 12 A video camera.
QBluetoothDeviceInfo::Camcorder 13 A video camera.
QBluetoothDeviceInfo::VideoMonitor 14 A video monitor.
QBluetoothDeviceInfo::VideoDisplayAndLoudspeaker 15 A video display with built-in loudspeaker.
QBluetoothDeviceInfo::VideoConferencing 16 A video conferencing device.
QBluetoothDeviceInfo::GamingDevice 18 A gaming device.

enum QBluetoothDeviceInfo::MinorComputerClass

This enum describes the minor device classes for computer devices.

Constant Value Description
QBluetoothDeviceInfo::UncategorizedComputer 0 An uncategorized computer device.
QBluetoothDeviceInfo::DesktopComputer 1 A desktop computer.
QBluetoothDeviceInfo::ServerComputer 2 A server computer.
QBluetoothDeviceInfo::LaptopComputer 3 A laptop computer.
QBluetoothDeviceInfo::HandheldClamShellComputer 4 A clamshell handheld computer or PDA.
QBluetoothDeviceInfo::HandheldComputer 5 A handheld computer or PDA.
QBluetoothDeviceInfo::WearableComputer 6 A wearable computer.

enum QBluetoothDeviceInfo::MinorHealthClass

This enum describes the minor device classes for health devices.

Constant Value Description
QBluetoothDeviceInfo::UncategorizedHealthDevice 0 An uncategorized health device.
QBluetoothDeviceInfo::HealthBloodPressureMonitor 0x1 A blood pressure monitor.
QBluetoothDeviceInfo::HealthThermometer 0x2 A Thermometer.
QBluetoothDeviceInfo::HealthWeightScale 0x3 A scale.
QBluetoothDeviceInfo::HealthGlucoseMeter 0x4 A glucose meter.
QBluetoothDeviceInfo::HealthPulseOximeter 0x5 A blood oxygen saturation meter.
QBluetoothDeviceInfo::HealthDataDisplay 0x7 A data display.
QBluetoothDeviceInfo::HealthStepCounter 0x8 A pedometer.

enum QBluetoothDeviceInfo::MinorImagingClass

This enum describes the minor device classes for imaging devices.

Constant Value Description
QBluetoothDeviceInfo::UncategorizedImagingDevice 0 An uncategorized imaging device.
QBluetoothDeviceInfo::ImageDisplay 0x04 A device capable of displaying images.
QBluetoothDeviceInfo::ImageCamera 0x08 A camera.
QBluetoothDeviceInfo::ImageScanner 0x10 An image scanner.
QBluetoothDeviceInfo::ImagePrinter 0x20 A printer.

enum QBluetoothDeviceInfo::MinorMiscellaneousClass

This enum describes the minor device classes for miscellaneous Bluetooth devices.

Constant Value Description
QBluetoothDeviceInfo::UncategorizedMiscellaneous 0 An uncategorized miscellaneous device.

enum QBluetoothDeviceInfo::MinorNetworkClass

This enum describes the minor device classes for local area network access devices. Local area network access devices use the minor device class to specify the current network utilization.

Constant Value Description
QBluetoothDeviceInfo::NetworkFullService 0x00 100% of the total bandwidth is available.
QBluetoothDeviceInfo::NetworkLoadFactorOne 0x08 0 - 17% of the total bandwidth is currently being used.
QBluetoothDeviceInfo::NetworkLoadFactorTwo 0x10 17 - 33% of the total bandwidth is currently being used.
QBluetoothDeviceInfo::NetworkLoadFactorThree 0x18 33 - 50% of the total bandwidth is currently being used.
QBluetoothDeviceInfo::NetworkLoadFactorFour 0x20 50 - 67% of the total bandwidth is currently being used.
QBluetoothDeviceInfo::NetworkLoadFactorFive 0x28 67 - 83% of the total bandwidth is currently being used.
QBluetoothDeviceInfo::NetworkLoadFactorSix 0x30 83 - 99% of the total bandwidth is currently being used.
QBluetoothDeviceInfo::NetworkNoService 0x38 No network service available.

enum QBluetoothDeviceInfo::MinorPeripheralClass

This enum describes the minor device classes for peripheral devices.

Constant Value Description
QBluetoothDeviceInfo::UncategorizedPeripheral 0 An uncategorized peripheral device.
QBluetoothDeviceInfo::KeyboardPeripheral 0x10 A keyboard.
QBluetoothDeviceInfo::PointingDevicePeripheral 0x20 A pointing device, for example a mouse.
QBluetoothDeviceInfo::KeyboardWithPointingDevicePeripheral 0x30 A keyboard with built-in pointing device.
QBluetoothDeviceInfo::JoystickPeripheral 0x01 A joystick.
QBluetoothDeviceInfo::GamepadPeripheral 0x02 A game pad.
QBluetoothDeviceInfo::RemoteControlPeripheral 0x03 A remote control.
QBluetoothDeviceInfo::SensingDevicePeripheral 0x04 A sensing device.
QBluetoothDeviceInfo::DigitizerTabletPeripheral 0x05 A digitizer tablet peripheral.
QBluetoothDeviceInfo::CardReaderPeripheral 0x06 A card reader peripheral.

enum QBluetoothDeviceInfo::MinorPhoneClass

This enum describes the minor device classes for phone devices.

Constant Value Description
QBluetoothDeviceInfo::UncategorizedPhone 0 An uncategorized phone device.
QBluetoothDeviceInfo::CellularPhone 1 A cellular phone.
QBluetoothDeviceInfo::CordlessPhone 2 A cordless phone.
QBluetoothDeviceInfo::SmartPhone 3 A smart phone.
QBluetoothDeviceInfo::WiredModemOrVoiceGatewayPhone 4 A wired modem or voice gateway.
QBluetoothDeviceInfo::CommonIsdnAccessPhone 5 A device that provides ISDN access.

enum QBluetoothDeviceInfo::MinorToyClass

This enum describes the minor device classes for toy devices.

Constant Value Description
QBluetoothDeviceInfo::UncategorizedToy 0 An uncategorized toy.
QBluetoothDeviceInfo::ToyRobot 1 A toy robot.
QBluetoothDeviceInfo::ToyVehicle 2 A toy vehicle.
QBluetoothDeviceInfo::ToyDoll 3 A toy doll or action figure.
QBluetoothDeviceInfo::ToyController 4 A controller.
QBluetoothDeviceInfo::ToyGame 5 A game.

enum QBluetoothDeviceInfo::MinorWearableClass

This enum describes the minor device classes for wearable devices.

Constant Value Description
QBluetoothDeviceInfo::UncategorizedWearableDevice 0 An uncategorized wearable device.
QBluetoothDeviceInfo::WearableWristWatch 1 A wristwatch.
QBluetoothDeviceInfo::WearablePager 2 A pager.
QBluetoothDeviceInfo::WearableJacket 3 A jacket.
QBluetoothDeviceInfo::WearableHelmet 4 A helmet.
QBluetoothDeviceInfo::WearableGlasses 5 A pair of glasses.

enum QBluetoothDeviceInfo::ServiceClass
flags QBluetoothDeviceInfo::ServiceClasses

This enum describes the service class of the Bluetooth device. The service class is used as a rudimentary form of service discovery. It is meant to provide a rudimentary list of the types of services that the device might provide.

Constant Value Description
QBluetoothDeviceInfo::NoService 0x0000 The device does not provide any services.
QBluetoothDeviceInfo::PositioningService 0x0001 The device provides positioning services.
QBluetoothDeviceInfo::NetworkingService 0x0002 The device provides networking services.
QBluetoothDeviceInfo::RenderingService 0x0004 The device provides rendering services.
QBluetoothDeviceInfo::CapturingService 0x0008 The device provides capturing services.
QBluetoothDeviceInfo::ObjectTransferService 0x0010 The device provides object transfer services.
QBluetoothDeviceInfo::AudioService 0x0020 The device provides audio services.
QBluetoothDeviceInfo::TelephonyService 0x0040 The device provides telephony services.
QBluetoothDeviceInfo::InformationService 0x0080 The device provides information services.
QBluetoothDeviceInfo::AllServices 0x07ff The device provides services of all types.

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

Member Function Documentation

QBluetoothDeviceInfo::QBluetoothDeviceInfo ()

Constructs an invalid QBluetoothDeviceInfo object.

QBluetoothDeviceInfo::QBluetoothDeviceInfo ( const QBluetoothAddress & address, const QString & name, quint32 classOfDevice )

Constructs a QBluetoothDeviceInfo object with Bluetooth address address, device name name and the encoded class of device classOfDevice.

The classOfDevice parameter is encoded in the following format

Bits Size Description
0 - 1 2 Unused, set to 0.
2 - 7 6 Minor device class.
8 - 12 5 Major device class.
13 - 23 11 Service class.

QBluetoothDeviceInfo::QBluetoothDeviceInfo ( const QBluetoothDeviceInfo & other )

Constructs a QBluetoothDeviceInfo that is a copy of other.

QBluetoothDeviceInfo::~QBluetoothDeviceInfo ()

Destroys the QBluetoothDeviceInfo.

QBluetoothAddress QBluetoothDeviceInfo::address () const

Returns the address of the device.

bool QBluetoothDeviceInfo::isCached () const

Returns true if the QBluetoothDeviceInfo object is created from cached data

bool QBluetoothDeviceInfo::isValid () const

Returns true if the QBluetoothDeviceInfo object is valid, otherwise returns false.

MajorDeviceClass QBluetoothDeviceInfo::majorDeviceClass () const

Returns the major device class of the device.

QByteArray QBluetoothDeviceInfo::manufacturerSpecificData ( bool * available = 0 ) const

Returns the manufacturer specific data. If available is not 0 it is set to true if manufacturer specific data is available; otherwise it is set to false.

Unsupported on all platforms at this time. Always return QByteArry();

See also setManufacturerSpecificData().

quint8 QBluetoothDeviceInfo::minorDeviceClass () const

Returns the minor device class of the device.

QString QBluetoothDeviceInfo::name () const

Returns the name assigned to the device.

qint16 QBluetoothDeviceInfo::rssi () const

Returns the signal strength when the device was last scanned

See also setRssi().

ServiceClasses QBluetoothDeviceInfo::serviceClasses () const

Returns the service class of the device.

QList<QBluetoothUuid> QBluetoothDeviceInfo::serviceUuids ( DataCompleteness * completeness = 0 ) const

Returns the list of service UUIDS supported by the device. If completeness is not 0 it will be set to DataComplete if the returned list is the complete list of UUIDs supported by the device. DataIncomplete if additional service UUIDs are supported by the device and DataUnavailable if no service UUID information is available.

This function requires both Bluetooth devices to support the 2.1 specification.

See also setServiceUuids().

DataCompleteness QBluetoothDeviceInfo::serviceUuidsCompleteness () const

Returns the completeness of the service UUID list. If DataComplete is returned then serviceUuids() will return a complete list of service UUIDs supported by the device. Otherwise serviceUuids() will only return a partial or empty list of service UUIDs. To get a full list of services supported by the device a full service discovery needs to be performed.

void QBluetoothDeviceInfo::setCached ( bool cached )

Used by the system to set the cached flag if the QBluetoothDeviceInfo is created from cached data. Cached information may not be as accurate as data read from a live device.

See also isCached().

void QBluetoothDeviceInfo::setManufacturerSpecificData ( const QByteArray & data )

Sets the manufacturer specific data returned by Extended Inquiry Responses to data.

Unsupported on all platforms at this time.

See also manufacturerSpecificData().

void QBluetoothDeviceInfo::setRssi ( qint16 signal )

Set the signal strength value, used internally.

See also rssi().

void QBluetoothDeviceInfo::setServiceUuids ( const QList<QBluetoothUuid> & uuids, DataCompleteness completeness )

Sets the list of service UUIDs to uuids and the completeness of the data to completeness.

See also serviceUuids().

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

Makes a copy of the other and assigns it to this QBluetoothDeviceInfo object.

bool QBluetoothDeviceInfo::operator== ( const QBluetoothDeviceInfo & other ) const

Returns true if the other QBluetoothDeviceInfo object and this are identical