diff -r 404ad6c9bc20 -r 454d022d514b htiui/HtiCommPlugins/HtiBtCommPlugin/BtEngine/inc/btservicesearcher.h --- a/htiui/HtiCommPlugins/HtiBtCommPlugin/BtEngine/inc/btservicesearcher.h Tue Apr 27 16:38:40 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,264 +0,0 @@ -/* -* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). -* All rights reserved. -* This component and the accompanying materials are made available -* under the terms of "Eclipse Public License v1.0" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: Bluetooth service searcher. -* -*/ - - -#ifndef __BTSERVICESEARCHER_H__ -#define __BTSERVICESEARCHER_H__ - -// INCLUDES -#include -#include -#include - -#include "sdpattributeparser.h" -#include "sdpattributenotifier.h" - -// CONSTANTS -#include "messageprotocolconstants.h" - -// CLASS DECLARATIONS -/** -* CBTServiceSearcher -* Searches for a service on a remote machine -*/ - -class CBTServiceSearcher : public CBase, - public MSdpAgentNotifier, - public MSdpAttributeNotifier - { - public: // Destructor - - /** - * ~CBTServiceSearcher() - * Destroy the object and release all memory objects - */ - virtual ~CBTServiceSearcher(); - - public: // New functions - - /** - * SelectDeviceByDiscoveryL() - * Select a device - * @param aObserverRequestStatus the observer that is to - * be notified when the device selection is complete. - */ - void SelectDeviceByDiscoveryL( TRequestStatus& - aObserverRequestStatus ); - - /** - * SelectDeviceByNameL() - * Select a device by BT device name. - * @param aDeviceName the name of the device to search and select. - * @param aObserverRequestStatus the observer that is to - * be notified when the device selection is complete. - */ - void SelectDeviceByNameL( const TDesC& aDeviceName, - TRequestStatus& aObserverRequestStatus ); - - /** - * FindServiceL() - * Find a service on the specified device - * @param aDeviceAddress the BT address of the device to search for - * the service - * @param aObserverRequestStatus the observer that is to be notified - * when the service search is complete - */ - void FindServiceL( const TBTDevAddr& aDeviceAddress, - TRequestStatus& aObserverRequestStatus ); - - /** - * BTDevAddr() - * @return the bluetooth device address - */ - const TBTDevAddr& BTDevAddr(); - - /** - * ResponseParams() - * @return Information about the device selected by the user - */ - const TBTDeviceResponseParams& ResponseParams(); - - protected: // New functions - - /** - * CBTServiceSearcher() - * Constructs this object - */ - CBTServiceSearcher(); - - /** - * Finished() - * The search has finished. Notify the observer - * that the process is complete. - */ - virtual void Finished( TInt aError = KErrNone ); - - /** - * HasFinishedSearching() - * Is the instance still wanting to search. - * @return EFalse if the instance wants searching to continue. - */ - virtual TBool HasFinishedSearching() const; - - /** - * HasFoundService() - * @return ETrue if a service has been found - */ - TBool HasFoundService() const; - - protected: // abstract methods - - /** - * ProtocolList() - * The list of Protocols required by the service. - */ - virtual const TSdpAttributeParser::TSdpAttributeList& - ProtocolList() const = 0; - - /** - * ServiceClass() - * The service class to search for - * @return the service class UUID - */ - virtual const TUUID& ServiceClass() const = 0; - - /** - * FoundElementL() - * Read the data element - * @param aKey a key that identifies the element - * @param aValue the data element - */ - virtual void FoundElementL( TInt aKey, CSdpAttrValue& aValue ) = 0; - - public: // from MSdpAgentNotifier - - /** - * NextRecordRequestComplete() - * Process the result of the next record request - * @param aError the error code - * @param aHandle the handle of the service record - * @param aTotalRecordsCount the total number of matching - * service records - */ - void NextRecordRequestComplete( TInt aError, - TSdpServRecordHandle aHandle, - TInt aTotalRecordsCount ); - - /** - * AttributeRequestResult() - * Process the next attribute requested - * @param aHandle the handle of the service record - * @param aAttrID the id of the attribute - * @param aAttrValue the value of the attribute - */ - void AttributeRequestResult( TSdpServRecordHandle aHandle, - TSdpAttributeID aAttrID, - CSdpAttrValue* aAttrValue ); - - /** - * AttributeRequestComplete() - * Process the arrtibute request completion - * @param aHandle the handle of the service record - * @param aError the error code - */ - void AttributeRequestComplete( TSdpServRecordHandle aHandle, - TInt aError ); - - private: // Functions from base classes - - /** - * NextRecordRequestCompleteL() - * Process the result of the next record request - * @param aError the error code - * @param aHandle the handle of the service record - * @param aTotalRecordsCount the total number of - * matching service records - */ - void NextRecordRequestCompleteL( TInt aError, - TSdpServRecordHandle aHandle, - TInt aTotalRecordsCount ); - - /** - * AttributeRequestResultL() - * Process the next attribute requested - * @param aHandle the handle of the service record - * @param aAttrID the id of the attribute - * @param aAttrValue the value of the attribute - */ - void AttributeRequestResultL( TSdpServRecordHandle aHandle, - TSdpAttributeID aAttrID, - CSdpAttrValue* aAttrValue ); - - /** - * AttributeRequestCompleteL() - * Process the arrtibute request completion - * @param aHandle the handle of the service record - * @param aError the error code - */ - void AttributeRequestCompleteL( TSdpServRecordHandle, - TInt aError ); - - private: // data - - /** - * iStatusObserver pointer to the request status observer - * Not owned by CBTServiceSearcher - */ - TRequestStatus* iStatusObserver; - - /** - * iIsDeviceSelectorConnected is the device - * selector connected? - */ - TBool iIsDeviceSelectorConnected; - - /** - * iDeviceSelector - * a handle to the bluetooth device selector notifier - */ - RNotifier iDeviceSelector; - - /** - * iResponse - * the response of the device selection. - */ - TBTDeviceResponseParamsPckg iResponse; - - /** - * iSelectionFilter - * Request a device selection - */ - TBTDeviceSelectionParamsPckg iSelectionFilter; - /** - * iAgent a connetction to the SDP client - * Owned by CBTServiceSearcher - */ - CSdpAgent* iAgent; - - /** - * iSdpSearchPattern a search pattern - * Owned by CBTServiceSearcher - */ - CSdpSearchPattern* iSdpSearchPattern; - - /** iHasFoundService has the service been found ? */ - TBool iHasFoundService; - }; - -#endif // __BTSERVICESEARCHER_H__ - -// End of File