18#include <QtCore/QObject>
19#include <QtCore/QList>
21#include <QtCore/QSocketNotifier>
22#include <QtBluetooth/QBluetoothAddress>
23#include "bluez/bluez_data_p.h"
27class QLowEnergyConnectionParameters;
159 explicit HciManager(
const QBluetoothAddress &deviceAdapter);
175 const QLowEnergyConnectionParameters ¶ms);
188 int hciForAddress(
const QBluetoothAddress &deviceAdapter);
189 void handleHciEventPacket(
const quint8 *data,
int size);
190 void handleHciAclPacket(
const quint8 *data,
int size);
191 void handleLeMetaEvent(
const quint8 *data,
int size);
195 quint8 sigPacketIdentifier = 0;
196 QSocketNotifier *notifier =
nullptr;
197 QSet<HciManager::HciEvent> runningEvents;
static void hci_filter_all_events(struct hci_filter *f)
#define SIGNALING_CHANNEL_ID
static void hci_filter_set_ptype(int t, struct hci_filter *f)
QUuid::Id128Bytes BluezUint128
#define HCI_EVENT_HDR_SIZE
static void hci_filter_clear(struct hci_filter *f)
#define SECURITY_CHANNEL_ID
#define opCodePack(ogf, ocf)
#define HCI_MAX_EVENT_SIZE
bool sendConnectionUpdateCommand(quint16 handle, const QLowEnergyConnectionParameters ¶ms)
@ HCI_PAIRING_NOT_ALLOWED
@ HCI_INSUFFICIENT_SECURITY
@ HCI_LMP_ERROR_TRANSACTION_COLLISION
@ HCI_UNSUPPORTED_REMOTE_FEATURE
@ HCI_REJECTED_LIMITED_RESOURCES
@ HCI_ENCRYPTION_MODE_NOT_ACCEPTED
@ HCI_SIMPLE_PAIRING_NOT_SUPPORTED
@ HCI_LMP_PDU_NOT_ALLOWED
@ HCI_INVALID_LMP_PARAMETERS
@ HCI_UNSUPPORTED_LMP_PARAMETER_VALUE
@ HCI_SCO_INTERVAL_REJECTED
@ HCI_AUTHENTICATION_FAILURE
@ HCI_PAIRING_NOT_SUPPORTED
@ HCI_ROLE_SWITCH_PENDING
@ HCI_QOS_UNACCEPTABLE_PARAMETER
@ HCI_UNSUPPORTED_FEATURE
@ HCI_CLASSIFICATION_NOT_SUPPORTED
@ HCI_ACL_CONNECTION_EXISTS
@ HCI_CONNECTION_TERMINATED
@ HCI_OE_USER_ENDED_CONNECTION
@ HCI_MAX_NUMBER_OF_SCO_CONNECTIONS
@ HCI_SCO_OFFSET_REJECTED
@ HCI_LMP_RESPONSE_TIMEOUT
@ HCI_MAX_NUMBER_OF_CONNECTIONS
@ HCI_PARAMETER_OUT_OF_RANGE
@ HCI_TRANSACTION_COLLISION
@ HCI_ROLE_CHANGE_NOT_ALLOWED
bool sendCommand(QBluezConst::OpCodeGroupField ogf, QBluezConst::OpCodeCommandField ocf, const QByteArray ¶meters)
QList< quint16 > activeLowEnergyConnections() const
HciManager(const QBluetoothAddress &deviceAdapter)
bool sendConnectionParameterUpdateRequest(quint16 handle, const QLowEnergyConnectionParameters ¶ms)
bool monitorEvent(HciManager::HciEvent event)
void commandCompleted(quint16 opCode, quint8 status, const QByteArray &data)
QBluetoothAddress addressForConnectionHandle(quint16 handle) const
void connectionUpdate(quint16 handle, const QLowEnergyConnectionParameters ¶meters)
void connectionComplete(quint16 handle)
void signatureResolvingKeyReceived(quint16 connHandle, bool remoteKey, BluezUint128 csrk)
quint16 forceIntervalIntoRange(double connectionInterval)
ConnectionUpdateData connectionUpdateData(const QLowEnergyConnectionParameters ¶ms)
Combined button and popup list for selecting options.
QT_BEGIN_NAMESPACE Q_DECLARE_LOGGING_CATEGORY(lcEventDispatcher)