![]() |
Qt 6.x
The Qt SDK
|
#include <qlowenergycontroller_bluez_p.h>
Classes | |
struct | Attribute |
Public Member Functions | |
QLowEnergyControllerPrivateBluez () | |
~QLowEnergyControllerPrivateBluez () override | |
void | init () override |
void | connectToDevice () override |
void | disconnectFromDevice () override |
void | discoverServices () override |
void | discoverServiceDetails (const QBluetoothUuid &service, QLowEnergyService::DiscoveryMode mode) override |
void | startAdvertising (const QLowEnergyAdvertisingParameters ¶ms, const QLowEnergyAdvertisingData &advertisingData, const QLowEnergyAdvertisingData &scanResponseData) override |
void | stopAdvertising () override |
void | requestConnectionUpdate (const QLowEnergyConnectionParameters ¶ms) override |
void | readCharacteristic (const QSharedPointer< QLowEnergyServicePrivate > service, const QLowEnergyHandle charHandle) override |
void | readDescriptor (const QSharedPointer< QLowEnergyServicePrivate > service, const QLowEnergyHandle charHandle, const QLowEnergyHandle descriptorHandle) override |
void | writeCharacteristic (const QSharedPointer< QLowEnergyServicePrivate > service, const QLowEnergyHandle charHandle, const QByteArray &newValue, QLowEnergyService::WriteMode mode) override |
Writes long (prepare write request), short (write request) and writeWithoutResponse characteristic values. | |
void | writeDescriptor (const QSharedPointer< QLowEnergyServicePrivate > service, const QLowEnergyHandle charHandle, const QLowEnergyHandle descriptorHandle, const QByteArray &newValue) override |
void | addToGenericAttributeList (const QLowEnergyServiceData &service, QLowEnergyHandle startHandle) override |
int | mtu () const override |
![]() | |
QLowEnergyControllerPrivate () | |
virtual | ~QLowEnergyControllerPrivate () |
virtual void | init ()=0 |
virtual void | connectToDevice ()=0 |
virtual void | disconnectFromDevice ()=0 |
virtual void | discoverServices ()=0 |
virtual void | discoverServiceDetails (const QBluetoothUuid &service, QLowEnergyService::DiscoveryMode mode)=0 |
virtual void | readCharacteristic (const QSharedPointer< QLowEnergyServicePrivate > service, const QLowEnergyHandle charHandle)=0 |
virtual void | readDescriptor (const QSharedPointer< QLowEnergyServicePrivate > service, const QLowEnergyHandle charHandle, const QLowEnergyHandle descriptorHandle)=0 |
virtual void | writeCharacteristic (const QSharedPointer< QLowEnergyServicePrivate > service, const QLowEnergyHandle charHandle, const QByteArray &newValue, QLowEnergyService::WriteMode writeMode)=0 |
virtual void | writeDescriptor (const QSharedPointer< QLowEnergyServicePrivate > service, const QLowEnergyHandle charHandle, const QLowEnergyHandle descriptorHandle, const QByteArray &newValue)=0 |
virtual void | startAdvertising (const QLowEnergyAdvertisingParameters ¶ms, const QLowEnergyAdvertisingData &advertisingData, const QLowEnergyAdvertisingData &scanResponseData)=0 |
virtual void | stopAdvertising ()=0 |
virtual void | requestConnectionUpdate (const QLowEnergyConnectionParameters ¶ms)=0 |
virtual void | addToGenericAttributeList (const QLowEnergyServiceData &service, QLowEnergyHandle startHandle)=0 |
virtual int | mtu () const =0 |
virtual void | readRssi () |
virtual QLowEnergyService * | addServiceHelper (const QLowEnergyServiceData &service) |
bool | isValidLocalAdapter () |
void | setError (QLowEnergyController::Error newError) |
void | setState (QLowEnergyController::ControllerState newState) |
QSharedPointer< QLowEnergyServicePrivate > | serviceForHandle (QLowEnergyHandle handle) |
QLowEnergyCharacteristic | characteristicForHandle (QLowEnergyHandle handle) |
Returns a valid characteristic if the given handle is the handle of the characteristic itself or one of its descriptors. | |
QLowEnergyDescriptor | descriptorForHandle (QLowEnergyHandle handle) |
Returns a valid descriptor if handle belongs to a descriptor; otherwise an invalid one. | |
quint16 | updateValueOfCharacteristic (QLowEnergyHandle charHandle, const QByteArray &value, bool appendValue) |
Returns the length of the updated characteristic value. | |
quint16 | updateValueOfDescriptor (QLowEnergyHandle charHandle, QLowEnergyHandle descriptorHandle, const QByteArray &value, bool appendValue) |
Returns the length of the updated descriptor value. | |
void | invalidateServices () |
![]() | |
Q_INVOKABLE | QObject (QObject *parent=nullptr) |
Constructs an object with parent object parent. | |
virtual | ~QObject () |
Destroys the object, deleting all its child objects. | |
virtual bool | event (QEvent *event) |
This virtual function receives events to an object and should return true if the event e was recognized and processed. | |
virtual bool | eventFilter (QObject *watched, QEvent *event) |
Filters events if this object has been installed as an event filter for the watched object. | |
QString | objectName () const |
Q_WEAK_OVERLOAD void | setObjectName (const QString &name) |
Sets the object's name to name. | |
void | setObjectName (QAnyStringView name) |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. | |
QBindable< QString > | bindableObjectName () |
bool | isWidgetType () const |
Returns true if the object is a widget; otherwise returns false . | |
bool | isWindowType () const |
Returns true if the object is a window; otherwise returns false . | |
bool | isQuickItemType () const |
Returns true if the object is a QQuickItem; otherwise returns false . | |
bool | signalsBlocked () const noexcept |
Returns true if signals are blocked; otherwise returns false . | |
bool | blockSignals (bool b) noexcept |
If block is true, signals emitted by this object are blocked (i.e., emitting a signal will not invoke anything connected to it). | |
QThread * | thread () const |
Returns the thread in which the object lives. | |
void | moveToThread (QThread *thread) |
Changes the thread affinity for this object and its children. | |
int | startTimer (int interval, Qt::TimerType timerType=Qt::CoarseTimer) |
This is an overloaded function that will start a timer of type timerType and a timeout of interval milliseconds. | |
int | startTimer (std::chrono::milliseconds time, Qt::TimerType timerType=Qt::CoarseTimer) |
void | killTimer (int id) |
Kills the timer with timer identifier, id. | |
template<typename T > | |
T | findChild (const QString &aName=QString(), Qt::FindChildOptions options=Qt::FindChildrenRecursively) const |
Returns the child of this object that can be cast into type T and that is called name, or \nullptr if there is no such object. | |
template<typename T > | |
QList< T > | findChildren (const QString &aName, Qt::FindChildOptions options=Qt::FindChildrenRecursively) const |
Returns all children of this object with the given name that can be cast to type T, or an empty list if there are no such objects. | |
template<typename T > | |
QList< T > | findChildren (Qt::FindChildOptions options=Qt::FindChildrenRecursively) const |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. | |
const QObjectList & | children () const |
Returns a list of child objects. | |
void | setParent (QObject *parent) |
Makes the object a child of parent. | |
void | installEventFilter (QObject *filterObj) |
Installs an event filter filterObj on this object. | |
void | removeEventFilter (QObject *obj) |
Removes an event filter object obj from this object. | |
QMetaObject::Connection | connect (const QObject *sender, const char *signal, const char *member, Qt::ConnectionType type=Qt::AutoConnection) const |
bool | disconnect (const char *signal=nullptr, const QObject *receiver=nullptr, const char *member=nullptr) const |
bool | disconnect (const QObject *receiver, const char *member=nullptr) const |
void | dumpObjectTree () const |
Dumps a tree of children to the debug output. | |
void | dumpObjectInfo () const |
Dumps information about signal connections, etc. | |
bool | setProperty (const char *name, const QVariant &value) |
Sets the value of the object's name property to value. | |
bool | setProperty (const char *name, QVariant &&value) |
QVariant | property (const char *name) const |
Returns the value of the object's name property. | |
QList< QByteArray > | dynamicPropertyNames () const |
QBindingStorage * | bindingStorage () |
const QBindingStorage * | bindingStorage () const |
QObject * | parent () const |
Returns a pointer to the parent object. | |
bool | inherits (const char *classname) const |
Returns true if this object is an instance of a class that inherits className or a QObject subclass that inherits className; otherwise returns false . | |
Public Attributes | |
QList< Attribute > | localAttributes |
![]() | |
QLowEnergyController::Role | role |
QLowEnergyController::RemoteAddressType | addressType |
ServiceDataMap | serviceList |
ServiceDataMap | localServices |
Additional Inherited Members | |
![]() | |
void | deleteLater () |
\threadsafe | |
![]() | |
void | destroyed (QObject *=nullptr) |
This signal is emitted immediately before the object obj is destroyed, after any instances of QPointer have been notified, and cannot be blocked. | |
void | objectNameChanged (const QString &objectName, QPrivateSignal) |
This signal is emitted after the object's name has been changed. | |
![]() | |
static QMetaObject::Connection | connect (const QObject *sender, const char *signal, const QObject *receiver, const char *member, Qt::ConnectionType=Qt::AutoConnection) |
\threadsafe | |
static QMetaObject::Connection | connect (const QObject *sender, const QMetaMethod &signal, const QObject *receiver, const QMetaMethod &method, Qt::ConnectionType type=Qt::AutoConnection) |
template<typename Func1 , typename Func2 > | |
static QMetaObject::Connection | connect (const typename QtPrivate::FunctionPointer< Func1 >::Object *sender, Func1 signal, const typename QtPrivate::ContextTypeForFunctor< Func2 >::ContextType *context, Func2 &&slot, Qt::ConnectionType type=Qt::AutoConnection) |
template<typename Func1 , typename Func2 > | |
static QMetaObject::Connection | connect (const typename QtPrivate::FunctionPointer< Func1 >::Object *sender, Func1 signal, Func2 &&slot) |
static bool | disconnect (const QObject *sender, const char *signal, const QObject *receiver, const char *member) |
\threadsafe | |
static bool | disconnect (const QObject *sender, const QMetaMethod &signal, const QObject *receiver, const QMetaMethod &member) |
static bool | disconnect (const QMetaObject::Connection &) |
Disconnect a connection. | |
template<typename Func1 , typename Func2 > | |
static bool | disconnect (const typename QtPrivate::FunctionPointer< Func1 >::Object *sender, Func1 signal, const typename QtPrivate::FunctionPointer< Func2 >::Object *receiver, Func2 slot) |
template<typename Func1 > | |
static bool | disconnect (const typename QtPrivate::FunctionPointer< Func1 >::Object *sender, Func1 signal, const QObject *receiver, void **zero) |
![]() | |
QObject * | sender () const |
Returns a pointer to the object that sent the signal, if called in a slot activated by a signal; otherwise it returns \nullptr. | |
int | senderSignalIndex () const |
int | receivers (const char *signal) const |
Returns the number of receivers connected to the signal. | |
bool | isSignalConnected (const QMetaMethod &signal) const |
virtual void | timerEvent (QTimerEvent *event) |
This event handler can be reimplemented in a subclass to receive timer events for the object. | |
virtual void | childEvent (QChildEvent *event) |
This event handler can be reimplemented in a subclass to receive child events. | |
virtual void | customEvent (QEvent *event) |
This event handler can be reimplemented in a subclass to receive custom events. | |
virtual void | connectNotify (const QMetaMethod &signal) |
virtual void | disconnectNotify (const QMetaMethod &signal) |
QObject (QObjectPrivate &dd, QObject *parent=nullptr) | |
![]() | |
QLowEnergyController::ControllerState | state = QLowEnergyController::UnconnectedState |
QLowEnergyController::Error | error = QLowEnergyController::NoError |
QString | errorString |
QBluetoothAddress | remoteDevice |
QBluetoothAddress | localAdapter |
QLowEnergyHandle | lastLocalHandle {} |
QString | remoteName |
QBluetoothUuid | deviceUuid |
QLowEnergyController * | q_ptr |
![]() | |
QScopedPointer< QObjectData > | d_ptr |
![]() | |
QString | objectName |
the name of this object | |
![]() | |
template< class T > T | qobject_cast (const QObject *object) |
Returns the given object cast to type T if the object is of type T (or of a subclass); otherwise returns \nullptr. | |
template< typename T > T | qFindChildqFindChildren (const QObject *obj, const QString &name)() |
template< typename T > QList< T > | qFindChildrenqFindChildren (const QObject *obj, const QString &name)() |
QObjectList | |
\macro Q_CLASSINFO(Name, Value) | |
Definition at line 44 of file qlowenergycontroller_bluez_p.h.
QLowEnergyControllerPrivateBluez::QLowEnergyControllerPrivateBluez | ( | ) |
Definition at line 161 of file qlowenergycontroller_bluez.cpp.
References registerQLowEnergyControllerMetaType().
|
override |
Definition at line 316 of file qlowenergycontroller_bluez.cpp.
|
overridevirtual |
Implements QLowEnergyControllerPrivate.
Definition at line 3217 of file qlowenergycontroller_bluez.cpp.
References QBluetoothUuid::CharacteristicAggregateFormat, QBluetoothUuid::CharacteristicExtendedProperties, QBluetoothUuid::CharacteristicPresentationFormat, QBluetoothUuid::ClientCharacteristicConfiguration, GATT_CHARACTERISTIC, GATT_INCLUDED_SERVICE, QLowEnergyControllerPrivateBluez::Attribute::groupEndHandle, QLowEnergyControllerPrivateBluez::Attribute::handle, QLowEnergyControllerPrivate::lastLocalHandle, localAttributes, QLowEnergyControllerPrivateBluez::Attribute::properties, putDataAndIncrement(), qCWarning, QLowEnergyCharacteristic::Read, QBluetoothUuid::ServerCharacteristicConfiguration, QLowEnergyControllerPrivateBluez::Attribute::type, uuidToByteArray(), QLowEnergyControllerPrivateBluez::Attribute::value, QLowEnergyCharacteristic::Write, QLowEnergyCharacteristic::WriteNoResponse, and QLowEnergyCharacteristic::WriteSigned.
|
overridevirtual |
Implements QLowEnergyControllerPrivate.
Definition at line 424 of file qlowenergycontroller_bluez.cpp.
References QObject::connect(), QLowEnergyController::ConnectingState, RemoteDeviceManager::finished(), QList< T >::isEmpty(), RemoteDeviceManager::JobDisconnectDevice, QLowEnergyControllerPrivate::localAdapter, QList< T >::push_back(), qCWarning, QLowEnergyControllerPrivate::remoteDevice, RemoteDeviceManager::scheduleJob(), QLowEnergyControllerPrivate::setError(), QLowEnergyControllerPrivate::setState(), and QLowEnergyController::UnknownRemoteDeviceError.
|
overridevirtual |
Implements QLowEnergyControllerPrivate.
Definition at line 625 of file qlowenergycontroller_bluez.cpp.
References QBluetoothSocket::close(), QLowEnergyController::ClosingState, qWarning, and QLowEnergyControllerPrivate::setState().
|
overridevirtual |
Implements QLowEnergyControllerPrivate.
Definition at line 1507 of file qlowenergycontroller_bluez.cpp.
References QSharedPointer< T >::clear(), GATT_INCLUDED_SERVICE, qCWarning, and QLowEnergyControllerPrivate::serviceList.
|
overridevirtual |
Implements QLowEnergyControllerPrivate.
Definition at line 1477 of file qlowenergycontroller_bluez.cpp.
References GATT_PRIMARY_SERVICE.
|
overridevirtual |
Implements QLowEnergyControllerPrivate.
Definition at line 172 of file qlowenergycontroller_bluez.cpp.
References QObject::connect(), HciManager::connectionComplete(), HciManager::connectionUpdate(), QUuid::Id128Bytes::data, HciManager::EVT_ENCRYPT_CHANGE, HciManager::EVT_LE_META_EVENT, QHash< Key, T >::insert(), QLowEnergyController::InvalidBluetoothAdapterError, QLowEnergyControllerPrivate::localAdapter, qCDebug, QLowEnergyControllerPrivate::remoteDevice, QLowEnergyControllerPrivate::setError(), SIGNAL, HciManager::signatureResolvingKeyReceived(), SLOT, and QByteArray::toHex().
|
overridevirtual |
Implements QLowEnergyControllerPrivate.
Definition at line 3330 of file qlowenergycontroller_bluez.cpp.
|
overridevirtual |
Reads the value of one specific characteristic.
Implements QLowEnergyControllerPrivate.
Definition at line 2012 of file qlowenergycontroller_bluez.cpp.
References QBluezConst::ATT_OP_READ_REQUEST, QQueue< T >::enqueue(), Qt::hex(), QLowEnergyServicePrivate::CharData::properties, putBtData(), Q_ASSERT, qCDebug, qCWarning, QLowEnergyCharacteristic::Read, READ_REQUEST_HEADER_SIZE, request, Qt::Uninitialized, and QLowEnergyServicePrivate::CharData::valueHandle.
|
overridevirtual |
Implements QLowEnergyControllerPrivate.
Definition at line 2050 of file qlowenergycontroller_bluez.cpp.
References QBluezConst::ATT_OP_READ_REQUEST, QLowEnergyServicePrivate::CharData::descriptorList, QQueue< T >::enqueue(), Qt::hex(), putBtData(), Q_ASSERT, qCDebug, READ_REQUEST_HEADER_SIZE, request, and Qt::Uninitialized.
|
overridevirtual |
Implements QLowEnergyControllerPrivate.
Definition at line 412 of file qlowenergycontroller_bluez.cpp.
References QLowEnergyController::CentralRole, and QLowEnergyControllerPrivate::role.
|
overridevirtual |
Implements QLowEnergyControllerPrivate.
Definition at line 373 of file qlowenergycontroller_bluez.cpp.
References QSocketNotifier::activated(), QLowEnergyController::AdvertisingError, QLowEnergyController::AdvertisingState, QLowEnergyAdvertisingParameters::AdvNonConnInd, QLowEnergyAdvertisingParameters::AdvScanInd, QObject::connect(), QLeAdvertiser::errorOccurred(), QLowEnergyControllerPrivate::localAdapter, qCDebug, QSocketNotifier::Read, serverSocket, QLowEnergyControllerPrivate::setError(), QLowEnergyControllerPrivate::setState(), QLeAdvertiser::startAdvertising(), and QLowEnergyController::UnconnectedState.
|
overridevirtual |
Implements QLowEnergyControllerPrivate.
Definition at line 406 of file qlowenergycontroller_bluez.cpp.
References QLowEnergyControllerPrivate::setState(), QLeAdvertiser::stopAdvertising(), and QLowEnergyController::UnconnectedState.
|
overridevirtual |
Writes long (prepare write request), short (write request) and writeWithoutResponse characteristic values.
TODO Reliable/prepare write across multiple characteristics is not supported
Implements QLowEnergyControllerPrivate.
Definition at line 1975 of file qlowenergycontroller_bluez.cpp.
References QLowEnergyController::PeripheralRole, Q_ASSERT, QLowEnergyControllerPrivate::role, and QLowEnergyServicePrivate::CharData::valueHandle.
|
overridevirtual |
Implements QLowEnergyControllerPrivate.
Definition at line 1993 of file qlowenergycontroller_bluez.cpp.
References QLowEnergyController::PeripheralRole, Q_ASSERT, and QLowEnergyControllerPrivate::role.
Definition at line 101 of file qlowenergycontroller_bluez_p.h.
Referenced by addToGenericAttributeList().