void QBtServiceDiscovererPrivate::ProcessFoundServices(BTSVCHDL* foundServices, int numOfServices) { BTUINT32 result = BTSDK_FALSE; BtSdkRemoteServiceAttrStru serviceInfo; serviceInfo.mask = BTSDK_RSAM_SERVICENAME; for(int i=0; i<numOfServices; i++) { result = Btsdk_GetRemoteServiceAttributes(foundServices[i], &serviceInfo); if(result != BTSDK_OK) return; QBtService newService; newService.setHandle(foundServices[i]); newService.setName(QString::fromUtf8((const char*)serviceInfo.svc_name)); newService.setClass((QBtConstants::ServiceClass)serviceInfo.service_class); if(serviceInfo.service_class == BTSDK_CLS_SERIAL_PORT) RetrieveSPPAttributes(&newService, foundServices[i]); p_ptr->_remoteDevice.addNewService(newService); emit p_ptr->newServiceFound(p_ptr->_remoteDevice, newService); } }