MdBluetoothCom::MdBluetoothCom(QObject *parent, QString mdServiceName) : MdAbstractCom(parent), sDiscoveryAgent (0), socket (0), sdNeeded(Yes), mdServiceName(mdServiceName) { QBluetoothLocalDevice localDevice; // Check if Bluetooth is available on this device if (localDevice.isValid()) { // Turn Bluetooth on localDevice.powerOn(); // Read local device name localDeviceName = localDevice.name(); qDebug() << "local bluetooth device name: " << localDeviceName; // Make it visible to others //localDevice.setHostMode(QBluetoothLocalDevice::HostDiscoverable); // Get connected devices remotes = localDevice.connectedDevices(); startServiceDiscovery(); } else { qDebug() << "bluetooth not available!"; emit showStatusMessage( "Bluetooth: not available!" ); } }
void QBluetoothServiceDiscoveryAgentPrivate::_q_serviceDiscoveryFinished() { if(!discoveredDevices.isEmpty()) { discoveredDevices.removeFirst(); } startServiceDiscovery(); }
/*! Called when device discovery finishes. */ void QBluetoothServiceDiscoveryAgentPrivate::_q_deviceDiscoveryFinished() { if (deviceDiscoveryAgent->error() != QBluetoothDeviceDiscoveryAgent::NoError) { //Forward the device discovery error error = static_cast<QBluetoothServiceDiscoveryAgent::Error>(deviceDiscoveryAgent->error()); errorString = deviceDiscoveryAgent->errorString(); setDiscoveryState(Inactive); Q_Q(QBluetoothServiceDiscoveryAgent); emit q->error(error); emit q->finished(); return; } delete deviceDiscoveryAgent; deviceDiscoveryAgent = 0; startServiceDiscovery(); }