diff -r 65a3ef1d5bd0 -r f742655b05bf callcontinuity/vcc/inc/cvccdtmfprovider.h --- a/callcontinuity/vcc/inc/cvccdtmfprovider.h Thu Aug 19 09:45:22 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,176 +0,0 @@ -/* -* Copyright (c) 2008 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: Sends and receives DTMF tones -* -*/ - - - -#ifndef CVCCDTMFPROVIDER_H -#define CVCCDTMFPROVIDER_H - - -#include -#include - -class CConvergedCallProvider; -class CVccDirector; - -/** - * DTMF provider. - * Contains DTMF providers from call providers and forward all requests between - * them and CCE - * - * @lib vccperformer.lib - * @since S60 v3.2 - */ -NONSHARABLE_CLASS( CVccDtmfProvider ) : public MCCPDTMFProvider, - public MCCPDTMFObserver - { - -public: - - /** - * Two-phased constructor. - * @param aProviders Service providers - * @param aObserver - * @param aDirector Reference to Director object - */ - static CVccDtmfProvider* NewL( - RPointerArray& aProviders, - const MCCPDTMFObserver& aObserver, - CVccDirector& aDirector ); - - /** - * Destructor. - */ - virtual ~CVccDtmfProvider(); - - // From MCCPDTMFObserver - - /** - * HandleDTMFEvents. - * @since S60 3.2 - * @param aEvent Event type - * @param aError Error code - * @param aTone Character - */ - void HandleDTMFEvent( const MCCPDTMFObserver::TCCPDtmfEvent aEvent, - const TInt aError, - const TChar aTone ) const; - - // From MCCPDTMFProvider - - /** - * Cancels asynchronous DTMF string sending. - * @return KErrNone request was started successfully - * @return KErrNotFound nothing found to cancel. - * @since Series 60 3.2 - */ - TInt CancelDtmfStringSending(); - - /** - * Starts the transmission of a single DTMF tone across a connected and active call. - * @since S60 3.2 - * @param aTone tone to be played. - * @return KErrNone request was started successfully - * @return KErrArgument if the specified tone contains illegal dtmf character - * @return in case of an error system wide error code - */ - TInt StartDtmfTone( const TChar aTone ); - - /** - * Stops playing current DTMF tone. - * @since S60 3.2 - * @return KErrNone request was started successfully - * @return KErrNotReady not ready to perform the requested action. - */ - TInt StopDtmfTone(); - - /** - * Plays DTMF string. - * @since S60 3.2 - * @param aString String to be played. - * @return KErrNone request was started successfully - * @return KErrArgument if the specified string contains illegal dtmf characters - */ - TInt SendDtmfToneString( const TDesC& aString ); - - /** - * Continue or cancel sending DTMF string which was stopped with 'w'-character - * in string. - * @since S60 3.2 - * @param aContinue ETrue if sending of the DTMF string should continue, - * EFalse if the rest of the DTMF string is to be discarded. - * @return KErrNone request was started successfully - * @return KErrNotFound no send existed which to continue - */ - TInt ContinueDtmfStringSending( const TBool aContinue ); - - /** - * Add an observer for DTMF related events. - * Currently CCE will set only one observer. - * @since S60 v3.2 - * @param aObserver Observer to add. - * @leave system error if observer adding fails - */ - void AddObserverL( const MCCPDTMFObserver& aObserver ); - - /** - * Remove an observer. - * @since S60 v3.2 - * @param aObserver Observer to remove. - * @return KErrNone if removed succesfully. - * @return KErrNotFound if observer was not found. - */ - TInt RemoveObserver( const MCCPDTMFObserver& aObserver ); - -private: - - /** - * C++ constructor - * @param aObserver Reference to DTMF observer - * @param aDirector Reference to Director - */ - CVccDtmfProvider( const MCCPDTMFObserver& aObserver, CVccDirector& aDirector ); - - /** - * Symbian second-phase constructor - */ - void ConstructL(); - -private: // data - - /** - * DTMF event observers. - * Own. - */ - RPointerArray iObservers; - - /** - * DTMF providers. - * Own - */ - RPointerArray iProviders; - - /** - * VCC director - * Not own. - */ - CVccDirector* iDirector; - - friend class T_CVccDTMFProvider; - }; - -#endif // CVCCDTMFPROVIDER_H