⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 bluetoothdevicediscoverer.cpp

📁 基于symbian UIQ 的一款古老的飞机游戏。对入门学习很有帮助。
💻 CPP
字号:
/*============================================================================ Name			: BlueToothDeviceDiscoverer.cpp Author	  		:  Copyright   	: Description 	: Implementation============================================================================*/// INCLUDE FILES#include "BluetoothDeviceDiscoverer.h"#include "common.hrh"const TUint8 arrayGran = 8;/*============================================================================CBluetoothDeviceDiscoverer's constructor ============================================================================*/CBluetoothDeviceDiscoverer::CBluetoothDeviceDiscoverer(MBluetoothDeviceDiscovererObserver& aObs) :	CActive(CActive::EPriorityStandard), iObserver(aObs)	{	CActiveScheduler::Add(this);	}/*============================================================================CBluetoothDeviceDiscoverer's destructor============================================================================*/CBluetoothDeviceDiscoverer::~CBluetoothDeviceDiscoverer()	{	Cancel();	}	/*============================================================================DoCancel is called as part of the active object's Cancel().Cancel the notifier.============================================================================*/void CBluetoothDeviceDiscoverer::DoCancel()	{	}/*============================================================================Display the BT device in range for the player to choose from============================================================================*/void CBluetoothDeviceDiscoverer::DiscoverAndSelectDeviceL(const TBTDeviceSelectionParamsPckg& /*aSelectionFilter*/)	{	if(IsActive())		{			User::Leave(KErrInUse);		}	else		{				//We ask CQBTUISelectDialog to start the search for other BT device in range.		CBTDeviceArray* btDeviceArray = new (ELeave)CBTDeviceArray(arrayGran);		BTDeviceArrayCleanupStack::PushL(btDeviceArray);		CQBTUISelectDialog* dialog = CQBTUISelectDialog::NewL(btDeviceArray);		TInt err = KErrCancel;		if(dialog->RunDlgLD(KQBTUISelectDlgFlagNone))			{			CBTDevice* btDevice = btDeviceArray->At(0);			if (btDevice)				{				iResponse().SetDeviceAddress(btDevice->BDAddr()); 				err = KErrNone; 				}			}		CleanupStack::PopAndDestroy();// btDeviceArray				TRequestStatus* status = &iStatus;		User::RequestComplete(status, err);		SetActive();					}	}/*============================================================================Handles CBluetoothConnector's completion events============================================================================*/void CBluetoothDeviceDiscoverer::RunL()	{	//We pass on to the engine the BT device address the user selected otherwise we pass on the error	if(iStatus.Int() == KErrNone)		{		iObserver.OnDeviceDiscoveryComplete(iResponse);		}	else		{			iObserver.OnDeviceDiscoveryErr(iStatus.Int());			}	}/*============================================================================Handles a leave occurring in the request completion event handler RunL().Reports the error to the observer============================================================================*/TInt CBluetoothDeviceDiscoverer::RunError(TInt aError)	{	iObserver.OnDeviceDiscoveryErr(aError);	return KErrNone;	}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -