srsf/ttscustomcommands/src/nssttscustomcommandparser.cpp
changeset 13 57b735022c18
parent 1 b13cd05eeb2f
--- a/srsf/ttscustomcommands/src/nssttscustomcommandparser.cpp	Mon Jan 18 20:20:30 2010 +0200
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,492 +0,0 @@
-/*
-* Copyright (c) 2004-2007 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:  
-*
-*/
-
-
-// INCLUDE FILES
-#include <e32std.h>
-#include "nssttscustomcommandparser.h"
-#include "nssttscustomcommandcommon.h"
-#include "rubydebug.h"
-
-// ============================ MEMBER FUNCTIONS ===============================
-
-// -----------------------------------------------------------------------------
-// CTtsCustomCommandParser::CTtsCustomCommandParser
-// C++ constructor.
-// -----------------------------------------------------------------------------
-//
-CTtsCustomCommandParser::CTtsCustomCommandParser( MTtsCustomCommandImplementor& aImplementor ) :
-        CMMFCustomCommandParserBase( KUidInterfaceTts ),
-        iImplementor( aImplementor )
-    {
-    // Nothing
-    }
-
-// -----------------------------------------------------------------------------
-// CTtsCustomCommandParser::NewL
-// Two-phased constructor.
-// -----------------------------------------------------------------------------
-//
-EXPORT_C CTtsCustomCommandParser* CTtsCustomCommandParser::NewL( 
-        MTtsCustomCommandImplementor& aImplementor )
-    {
-    return new ( ELeave ) CTtsCustomCommandParser(aImplementor);
-    }
-
-// -----------------------------------------------------------------------------
-// CTtsCustomCommandParser::~CTtsCustomCommandParser
-// Destructor for CTtsCustomCommandParser class
-// -----------------------------------------------------------------------------
-//
-EXPORT_C CTtsCustomCommandParser::~CTtsCustomCommandParser()
-    {
-    // Nothing
-    }
-
-// -----------------------------------------------------------------------------
-// CTtsCustomCommandParser::HandleRequest
-// Handles the client side request.
-// -----------------------------------------------------------------------------
-//
-void CTtsCustomCommandParser::HandleRequest( TMMFMessage& aMessage )
-    {
-    ASSERT( aMessage.Destination().InterfaceId() == KUidInterfaceTts );
-    TRAPD( error, DoHandleRequestL( aMessage ) );
-    if ( error )
-        {
-        aMessage.Complete( error );
-        }
-    }
-
-// -----------------------------------------------------------------------------
-// CTtsCustomCommandParser::DoHandleRequestL
-// Decodes aMessage and calls the correct function. This function is trapped by
-// HandleRequest() and the leave code, if any, sent to the client.
-// -----------------------------------------------------------------------------
-//
-void CTtsCustomCommandParser::DoHandleRequestL( TMMFMessage& aMessage )
-    {
-    
-    // Call required function to do the requested operation
-    switch( aMessage.Function() )
-        {
-        case ETtsAddStyle:
-            DoAddStyleL( aMessage );
-            break;
-
-        case ETtsDeleteStyle:
-            DoDeleteStyleL( aMessage );
-            break;
-
-        case ETtsGetPosition:
-            DoGetPositionL( aMessage );
-            break;
-
-        case ETtsNumberOfStyles:
-            DoNumberOfStylesL( aMessage );
-            break;
-
-        case ETtsOpenParsedText:
-            DoOpenParsedTextL( aMessage );
-            break;
-
-        case ETtsSetPosition:
-            DoSetPositionL( aMessage );
-            break;
-
-        case ETtsStyleID:
-            DoStyleIDL( aMessage );
-            break;
-
-        case ETtsStyleIndex:
-            DoStyleIndexL( aMessage );
-            break;
-
-        case ETtsSetDefaultStyle:
-            DoSetDefaultStyleL( aMessage );
-            break;
-
-        case ETtsGetDefaultStyle:
-            DoGetDefaultStyleL( aMessage );
-            break;
-
-        case ETtsSetSpeakingRate:
-            DoSetSpeakingRateL( aMessage );
-            break;
-
-        case ETtsGetSpeakingRate:
-            DoGetSpeakingRateL( aMessage );
-            break;
-
-        case ETtsSupportedLanguages:
-            DoGetSupportedLanguagesL( aMessage );
-            break;
-
-        case ETtsSupportedLanguagesCount:
-            DoGetSupportedLanguagesCountL( aMessage );
-            break;
-
-        case ETtsSupportedVoices:
-            DoGetSupportedVoicesL( aMessage );
-            break;
-
-        case ETtsSupportedVoicesCount:
-            DoGetSupportedVoicesCountL( aMessage );
-            break;
-
-        default:
-            User::Leave( KErrNotSupported );
-            
-        } // End of switch
-    
-    aMessage.Complete( KErrNone );
-    
-    }
-
-// -----------------------------------------------------------------------------
-// CTtsCustomCommandParser::DoAddStyleL
-// Calls the controller plugin to add a style.
-// -----------------------------------------------------------------------------
-//
-void CTtsCustomCommandParser::DoAddStyleL( TMMFMessage& aMessage )
-    {
-    TTtsStylePtrPckg stylePtrPckg;
-    TTtsStyleIDPtrPckg styleIDPtrPckg;
-
-	aMessage.ReadData1FromClientL( stylePtrPckg );
-	aMessage.ReadData2FromClientL( styleIDPtrPckg );
-
-    TTtsStyle* style = stylePtrPckg();
-    TTtsStyleID* ID = styleIDPtrPckg();
-
-    *ID = iImplementor.MttscAddStyleL( *style );
-
-    RUBY_DEBUG2( "CTtsCustomCommandParser::DoAddStyleL: %d, %x", *ID, style );
-    }
-
-// -----------------------------------------------------------------------------
-// CTtsCustomCommandParser::DoDeleteStyleL
-// Calls the controller plugin to delete a style.
-// -----------------------------------------------------------------------------
-//
-void CTtsCustomCommandParser::DoDeleteStyleL( TMMFMessage& aMessage )
-    {
-    TTtsStyleIDPckg styleIDPckg;
-
-	aMessage.ReadData1FromClientL( styleIDPckg );
-
-    TTtsStyleID ID = styleIDPckg();
-
-    User::LeaveIfError( iImplementor.MttscDeleteStyle( ID ) );
-
-    RUBY_DEBUG1( "CTtsCustomCommandParser::DoDeleteStyleL: %d", ID );
-    }
-
-// -----------------------------------------------------------------------------
-// CTtsCustomCommandParser::DoGetPositionL
-// Calls the controller plugin to get the synthesis position.
-// -----------------------------------------------------------------------------
-//
-void CTtsCustomCommandParser::DoGetPositionL( TMMFMessage& aMessage )
-    {
-    TTtsIntPtrPckg intPtrPckg;
-
-    aMessage.ReadData1FromClientL( intPtrPckg );
-
-    TInt* wordIndex = intPtrPckg();
-
-    iImplementor.MttscGetPositionL( *wordIndex );
-
-    RUBY_DEBUG1( "CTtsCustomCommandParser::DoGetPositionL: %d", *wordIndex );
-    }
-
-// -----------------------------------------------------------------------------
-// CTtsCustomCommandParser::DoNumberOfStylesL
-// Calls the controller plugin to get the number of styles.
-// -----------------------------------------------------------------------------
-//
-void CTtsCustomCommandParser::DoNumberOfStylesL( TMMFMessage& aMessage )
-    {
-    TTtsUintPtrPckg uintPtrPckg;
-
-    aMessage.ReadData1FromClientL( uintPtrPckg );
-
-    TUint16* count = uintPtrPckg();
-
-    *count = iImplementor.MttscNumberOfStyles();
-
-    RUBY_DEBUG1( "CTtsCustomCommandParser::DoNumberOfStylesL: %d", *count );
-    }
-
-// -----------------------------------------------------------------------------
-// CTtsCustomCommandParser::DoOpenParsedTextL
-// Calls the controller plugin to open a parsed text source.
-// -----------------------------------------------------------------------------
-//
-void CTtsCustomCommandParser::DoOpenParsedTextL( TMMFMessage& aMessage )
-    {
-    TTtsParsedTextPckg parsedTextPckg;
-
-    aMessage.ReadData1FromClientL( parsedTextPckg );
-
-    CTtsParsedText* parsedText = parsedTextPckg().iParsedText;
-
-    iImplementor.MttscOpenParsedTextL( *parsedText );
-
-    RUBY_DEBUG1( "CTtsCustomCommandParser::DoOpenParsedTextL: %x", parsedText );
-    }
-
-// -----------------------------------------------------------------------------
-// CTtsCustomCommandParser::DoSetPositionL
-// Calls the controller plugin to set the synthesis position.
-// -----------------------------------------------------------------------------
-//
-void CTtsCustomCommandParser::DoSetPositionL( TMMFMessage& aMessage )
-    {
-    TTtsIntPckg intPckg;
-
-    aMessage.ReadData1FromClientL( intPckg );
-
-    TInt index = intPckg();
-
-    iImplementor.MttscSetPositionL( index );
-
-    RUBY_DEBUG1( "CTtsCustomCommandParser::DoSetPositionL: %d", index );
-    }
-
-// -----------------------------------------------------------------------------
-// CTtsCustomCommandParser::DoStyleIDL
-// Calls the controller plugin to get the style based on ID.
-// -----------------------------------------------------------------------------
-//
-void CTtsCustomCommandParser::DoStyleIDL( TMMFMessage& aMessage )
-    {
-    TTtsStyleIDPckg styleIDPckg;
-    TTtsStylePtrPckg stylePckg;
-
-	aMessage.ReadData1FromClientL( styleIDPckg );
-	aMessage.ReadData2FromClientL( stylePckg );
-
-    TTtsStyleID ID = styleIDPckg();
-    TTtsStyle* style = stylePckg();
-
-    style = &( iImplementor.MttscStyleL( ID ) );
-
-    RUBY_DEBUG2( "CTtsCustomCommandParser::DoStyleIDL: %d, %x", ID, style );
-    }
-
-// -----------------------------------------------------------------------------
-// CTtsCustomCommandParser::DoStyleIndexL
-// Calls the controller plugin to get the style based on ID.
-// -----------------------------------------------------------------------------
-//
-void CTtsCustomCommandParser::DoStyleIndexL( TMMFMessage& aMessage )
-    {
-    TTtsUintPckg uintPckg;
-    TTtsStylePtrPckg stylePckg;
-
-	aMessage.ReadData1FromClientL( uintPckg );
-	aMessage.ReadData2FromClientL( stylePckg );
-
-    TUint16 index = uintPckg();
-    TTtsStyle* style = stylePckg();
-    
-    style = &( iImplementor.MttscStyleL( index ) );
-
-    RUBY_DEBUG2( "CTtsCustomCommandParser::DoStyleIndexL: %d, %x", index, style );
-    }
-
-// -----------------------------------------------------------------------------
-// CTtsCustomCommandParser::DoSetDefaultStyleL
-// Calls the controller plugin to set the default style
-// -----------------------------------------------------------------------------
-//
-void CTtsCustomCommandParser::DoSetDefaultStyleL( TMMFMessage& aMessage )
-    {
-    TTtsStylePtrPckg stylePtrPckg;
-
-	aMessage.ReadData1FromClientL( stylePtrPckg );
-
-    TTtsStyle* style = stylePtrPckg();
-
-    iImplementor.MttscSetDefaultStyleL( *style );
-
-    RUBY_DEBUG0( "CTtsCustomCommandParser::DoSetDefaultStyleL" );
-    }
-
-// -----------------------------------------------------------------------------
-// CTtsCustomCommandParser::DoGetDefaultStyleL
-// Calls the controller plugin to get the default style
-// -----------------------------------------------------------------------------
-//
-void CTtsCustomCommandParser::DoGetDefaultStyleL( TMMFMessage& aMessage )
-    {
-    TTtsStylePtrPckg stylePtrPckg;
-    
-    aMessage.ReadData1FromClientL( stylePtrPckg );
-    
-    TTtsStyle* style = stylePtrPckg();
-    
-    *style = iImplementor.MttscDefaultStyleL();
-    
-    RUBY_DEBUG1( "CTtsCustomCommandParser::DoGetDefaultStyleL: %x", style );
-    }
-    
-// -----------------------------------------------------------------------------
-// CTtsCustomCommandParser::DoSetSpeakingRateL
-// Calls the controller plugin to set the speaking rate
-// -----------------------------------------------------------------------------
-//
-void CTtsCustomCommandParser::DoSetSpeakingRateL( TMMFMessage& aMessage )
-    {
-    TTtsIntPckg intPckg;
-
-    aMessage.ReadData1FromClientL( intPckg );
-
-    TInt rate = intPckg();
-
-    iImplementor.MttscSetSpeakingRateL( rate );
-
-    RUBY_DEBUG1( "CTtsCustomCommandParser::DoSetSpeakingRateL: %d", rate );
-    }
-    
-// -----------------------------------------------------------------------------
-// CTtsCustomCommandParser::DoGetSpeakingRateL
-// Calls the controller plugin to get the current speaking rate setting
-// -----------------------------------------------------------------------------
-//
-void CTtsCustomCommandParser::DoGetSpeakingRateL( TMMFMessage& aMessage )
-    {
-    TTtsIntPtrPckg intPtrPckg;
-
-    aMessage.ReadData1FromClientL( intPtrPckg );
-
-    TInt* rate = intPtrPckg();
-
-    *rate = iImplementor.MttscSpeakingRateL();
-
-    RUBY_DEBUG1( "CTtsCustomCommandParser::DoGetSpeakingRateL: %d", *rate );
-    }
-    
-// -----------------------------------------------------------------------------
-// CTtsCustomCommandParser::DoGetSupportedLanguagesL
-// Calls the controller plugin to get the supported languages
-// -----------------------------------------------------------------------------
-//
-void CTtsCustomCommandParser::DoGetSupportedLanguagesL( TMMFMessage& aMessage )
-    {
-    TTtsRArrayLanguagePtrPckg rArrayLanguagePtrPckg;
-    
-    aMessage.ReadData1FromClientL( rArrayLanguagePtrPckg );
-    
-    RArray<TLanguage> languages = *rArrayLanguagePtrPckg();
-    
-    RArray<TLanguage> tmp;
-    CleanupClosePushL( tmp );
-    
-    iImplementor.MttscGetSupportedLanguagesL( tmp );
-    
-    if ( languages.Count() == tmp.Count() )
-        {
-        for ( TInt i( 0 ); i < languages.Count(); i++ )
-            {
-            languages[i] = tmp[i];
-            }
-        }
-    CleanupStack::PopAndDestroy( &tmp );
-    
-    RUBY_DEBUG1( "CTtsCustomCommandParser::DoGetSupportedLanguagesL: Number of languages %d", 
-                 languages.Count() );
-    }
-
-// -----------------------------------------------------------------------------
-// CTtsCustomCommandParser::DoGetSupportedLanguagesCountL
-// Calls the controller plugin to get the number of supported languages
-// -----------------------------------------------------------------------------
-//
-void CTtsCustomCommandParser::DoGetSupportedLanguagesCountL( TMMFMessage& aMessage )
-    {
-    TTtsIntPtrPckg intPtrPckg;
-
-    aMessage.ReadData1FromClientL( intPtrPckg );
-
-    TInt* languageCount = intPtrPckg();
-    
-    RArray<TLanguage> languages;
-    iImplementor.MttscGetSupportedLanguagesL( languages );
-    *languageCount = languages.Count();
-
-    languages.Close();
-    }
-    
-// -----------------------------------------------------------------------------
-// CTtsCustomCommandParser::DoGetSupportedVoicesL
-// Calls the controller plugin to get the voices of specified language
-// -----------------------------------------------------------------------------
-//
-void CTtsCustomCommandParser::DoGetSupportedVoicesL( TMMFMessage& aMessage )
-    {
-    TTtsLanguagePckg languagePckg;
-    TTtsRArrayTtsStylePtrPckg rArrayTtsStylePtrPckg;
-    
-    aMessage.ReadData1FromClientL( languagePckg );
-    aMessage.ReadData2FromClientL( rArrayTtsStylePtrPckg );
-    
-    TLanguage language = languagePckg();
-    RArray<TTtsStyle> voices = *rArrayTtsStylePtrPckg();
-    
-    RArray<TTtsStyle> tmp;
-    CleanupClosePushL( tmp );
-    
-    iImplementor.MttscGetSupportedVoicesL( language, tmp );
-    
-    if ( voices.Count() == tmp.Count() )
-        {
-        for ( TInt i( 0 ); i < voices.Count(); i++ )
-            {
-            voices[i] = tmp[i];
-            }
-        }
-    CleanupStack::PopAndDestroy( &tmp );
-    
-    RUBY_DEBUG2( "CTtsCustomCommandParser::DoGetSupportedVoicesL: %d voices for language %d", 
-                 voices.Count(), (TInt)language );
-    }
-
-// -----------------------------------------------------------------------------
-// CTtsCustomCommandParser::DoGetSupportedVoicesCountL
-// Calls the controller plugin to get the number of voices of specified language
-// -----------------------------------------------------------------------------
-//
-void CTtsCustomCommandParser::DoGetSupportedVoicesCountL( TMMFMessage& aMessage )
-    {
-    TTtsLanguagePckg languagePckg;
-    TTtsIntPtrPckg intPtrPckg;
-
-    aMessage.ReadData1FromClientL( languagePckg );
-    aMessage.ReadData2FromClientL( intPtrPckg );
-
-    TLanguage language = languagePckg();
-    TInt* voiceCount = intPtrPckg();
-    
-    RArray<TTtsStyle> voices;
-    iImplementor.MttscGetSupportedVoicesL( language, voices );
-    *voiceCount = voices.Count();
-
-    voices.Close();    
-    }
-// End of File