--- a/bluetoothengine/btnotif/inc/btnotifier.h Thu Aug 19 10:05:41 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,307 +0,0 @@
-/*
-* Copyright (c) 2002 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: Declares Bluetooth notifiers base class.
-*
-*/
-
-
-#ifndef BTNOTIFIERBASE_H
-#define BTNOTIFIERBASE_H
-
-// INCLUDES
-
-#include "btnotif.h"
-#include "btnotifuiutil.h"
-#include <eikenv.h>
-#include <btdevice.h>
-#include <btengdevman.h>
-
-// CONSTANTS
-
-// Literals for resource and bitmap files ( drive, directory, filename(s) )
-
-const TUid KBTInquiryChannel = {0x00000601}; // Channel for inquiry notifier
-const TUid KBTAuthorisationChannel = {0x00000602}; // Channel for PIN query notifier
-const TUid KBTAuthenticationChannel = {0x00000603}; // Channel for authorisation notifier
-const TUid KBTBBEventChannel = {0x00000604}; // Channel for baseband event notifier
-const TUid KBTObexPINChannel = {0x00000605}; // Channel for OBEX PIN notifier
-const TUid KBTPowerModeChannel = {0x00000606}; // Channel for power mode notifier
-const TUid KBTAudioAccessoryChannel = {0x00000607}; // Channel for audio accessory notifier
-const TUid KBTLowMemoryChannel = {0x00000608}; // Channel for low memory notifier
-const TUid KBTPairedDeviceSettingChannel = {0x00000610};
-
-// FORWARD DECLARATIONS
-class CBTEngSettings;
-
-enum TBTRegistryQueryState
-{
- ENoQuery=0,
- EQueryPaired=1,
- EQueryUsed=2,
- ESetDeviceAuthorizeState,
- ESetDeviceBlocked,
- ESetDeviceUnblocked,
-};
-
-// CLASS DECLARATION
-/**
-* This class is the base class for all notifiers.
-*/
-NONSHARABLE_CLASS(CBTNotifierBase): public CBase, public MEikSrvNotifierBase2, MBTEngDevManObserver
- {
- public: // Constructors and destructor
-
- /**
- * Destructor.
- */
- virtual ~CBTNotifierBase();
-
- /**
- * A utility function for checking whether autolock is on.
- * @param None.
- * @return A boolean according to autolock state.
- */
- TBool AutoLockOnL();
-
- protected: // Constructors and destructor
-
- /**
- * C++ default constructor.
- */
- CBTNotifierBase();
-
- protected: // New functions
-
- /**
- * Symbian 2nd phase constructor.
- */
- virtual void ConstructL();
-
- /**
- * Used in asynchronous notifier launch to store received parameters
- * into members variables and make needed initializations.
- * @param aBuffer A buffer containing received parameters
- * @param aReturnVal The return value to be passed back.
- * @param aMessage Should be completed when the notifier is deactivated.
- * @return None.
- */
- virtual void GetParamsL(const TDesC8& aBuffer,
- TInt aReplySlot,
- const RMessagePtr2& aMessage)=0;
-
- /**
- * A utility function for setting the power status of Bluetooth.
- * If the power is not on the user will be presented a query.
- * @return ETrue if BT is turned on successfully; EFalse otherwise
- */
- TBool CheckAndSetPowerOnL();
-
- /**
- * A function for setting BT name
- * @return ETrue if BT name is set successfully; EFalse otherwise
- */
- TBool AskLocalBTNameQueryL();
-
- /**
- * Check if there is any existing connection to audio profiles from
- * the same device
- * @return ETrue if the device is connected.
- */
- TBool IsExistingConnectionToAudioL(const TBTDevAddr& aDevAddr);
-
- /**
- * Complete Client/Server message and Nulled the reply slot.
- * @param aErr Error code for client notification.
- * @return None
- */
- void CompleteMessage(TInt aErr);
-
- /**
- * Complete Client/Server message and Nulled the reply slot.
- * @param aErr Error code for client notification.
- * @return None
- */
- void CompleteMessage(TInt aValueToReplySlot, TInt aErr);
-
- /**
- * Complete Client/Server message and Nulled the reply slot.
- * @param aErr Error code for client notification.
- * @return None
- */
- void CompleteMessage(const TDesC8& aDesToReplySlot, TInt aErr);
-
- /**
- * Checks from central repository whether the Bluetooth friendly name
- * has been modified .
- * @return ETure if the name has been modified.
- */
- TBool IsLocalNameModifiedL();
-
- /**
- * Get the device information from BT Registry by the given address.
- */
- void GetDeviceFromRegL(const TBTDevAddr& aAddr);
-
- /**
- * virtual function to be ovewritten by sub-classes.
- * Will be called when Getting Device by BTEng DevMan is completed.
- * @param aDev the device from registry if it is not null. indicates either a failure
- * or the device is not available in registry.
- */
- virtual void HandleGetDeviceCompletedL(const CBTDevice* aDev);
-
- /**
- * Asks the user if s/he want's to block the device in question
- * Does not block the device. That is left to the caller.
- * NOTE: Cannot be called while iAuthQueryDlg is active.
- */
- void QueryBlockDeviceL();
-
- /**
- * Set BTDevice's security setting to blocked and modify device
- * @param None
- * @return None
- */
- void DoBlockDevice();
-
- /**
- * Set BTDevice's security setting to un/authorized and modify device
- * @param aTrust Set authorized if ETrue; otherwise, unauthorized.
- * @return None
- */
- void ChangeAuthorizeState( TBool aTrust);
-
- /**
- * Checks if the user is queried too often, and handle the result.
- * @return None
- */
- void CheckAndHandleQueryIntervalL();
-
- private:
-
- void DoHandleGetDevicesCompleteL(TInt aErr, CBTDeviceArray* aDeviceArray );
-
- protected: // Functions from base classes
-
- /**
- * From MEikSrvNotifierBase2 Called when a notifier is first loaded
- * to allow any initial construction that is required.
- * @param None.
- * @return A structure containing priority and channel info.
- */
- virtual TNotifierInfo RegisterL()=0;
-
- /**
- * From MEikSrvNotifierBase2 The notifier has been deactivated
- * so resources can be freed and outstanding messages completed.
- * @param None.
- * @return None.
- */
- virtual void Cancel();
-
-#ifdef __SERIES60_HELP
- /** This is used to create TCallBack to help.
- * @param TCoeHelpContext. Must be instance TCoeHelpContext, or NULL.
- * If null this will open help about blocked devices.,
- * @return KErrNone
- */
- static TInt LaunchHelp(TAny *TCoeHelpContext=NULL);
-#endif
-
- private: // Functions from base classes
-
- /**
- * From MEikSrvNotifierBase2 Called when all resources allocated
- * by notifiers should be freed.
- * @param None.
- * @return None.
- */
- virtual void Release();
-
- /**
- * From MEikSrvNotifierBase2 Return the priority a notifier takes
- * and the channels it acts on.
- * @param None.
- * @return A structure containing priority and channel info.
- */
- virtual TNotifierInfo Info() const;
-
- /**
- * From MEikSrvNotifierBase2 Synchronic notifier launch.
- * @param aBuffer Received parameter data.
- * @return A pointer to return value.
- */
- virtual TPtrC8 StartL(const TDesC8& aBuffer);
-
- /**
- * From MEikSrvNotifierBase2 Asynchronic notifier launch.
- * @param aBuffer A buffer containing received parameters
- * @param aReturnVal The return value to be passed back.
- * @param aMessage Should be completed when the notifier is deactivated.
- * @return A pointer to return value.
- */
- virtual void StartL(const TDesC8& aBuffer, TInt aReplySlot, const RMessagePtr2& aMessage);
-
- /**
- * From MEikSrvNotifierBase2 Updates a currently active notifier.
- * @param aBuffer The updated data.
- * @return A pointer to return value.
- */
- virtual TPtrC8 UpdateL(const TDesC8& aBuffer);
-
- /**
- * From MBTEngDevManObserver
- * Indicates to the caller that adding, deleting or modifying a device
- * has completed.
- */
- virtual void HandleDevManComplete(TInt aErr);
-
- /**
- * From MBTEngDevManObserver
- * Call back function when GetDevices() request is completed.
- * @param aErr Status information, if there is an error.
- * @param aDeviceArray Array of devices that match the given criteria
- * (the array provided by the calller).
- */
- void HandleGetDevicesComplete( TInt aErr, CBTDeviceArray* aDeviceArray );
-
- /**
- * Checks the timestamp since last query.
- * @return true if too often
- */
- TBool CheckQueryInterval();
-
- protected: // Data
-
- RMessagePtr2 iMessage; // Received message
- TInt iReplySlot; // Reply slot
- TNotifierInfo iInfo; // Notifier parameters structure
- TBTRegistryQueryState iBTRegistryQueryState;
- CBTDeviceArray* iDeviceArray; // for getting device from registry
- CBTDevice* iDevice; // Current Bluetooth device
- TBTDevAddr iBTAddr; // Gotten from PckBuffer, constant no matter how iDevice changes.
- CBTNotifUIUtil* iNotifUiUtil; // Utility to show UI notes & queries
- CBTEngSettings* iBTEngSettings;
- TBool iIsCoverUI;
-
- private:
- CBTEngDevMan* iDevMan; // for BT registry manipulation
-
-
-
- };
-
-#endif
-
-// End of File