diff -r b13cd05eeb2f -r 57b735022c18 speechsrv_plat/nss_srs_custom_commands_api/inc/nsssispeechrecognitioncustomcommandparser.h --- a/speechsrv_plat/nss_srs_custom_commands_api/inc/nsssispeechrecognitioncustomcommandparser.h Mon Jan 18 20:20:30 2010 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,695 +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: This is the definition of the server side for the -* speaker independent controller. -* -*/ - - -#ifndef NSSSISPEECHRECOGNITIONCUSTOMCOMMANDPARSER_H -#define NSSSISPEECHRECOGNITIONCUSTOMCOMMANDPARSER_H - -// INCLUDE FILES -#include -#include - -// FORWARD DECLARATIONS -class CSDClientResultSet; - -// CLASS DECLARATION - -/** -* This is the main class of Speaker Independent Custom Commands Parser -* -* @lib nsssispeechrecognitioncustomcommands.lib -* @since 2.8 -*/ -class CSISpeechRecognitionCustomCommandParser : public CMMFCustomCommandParserBase -{ - -public: - /** - * - * Factory function for creating this class. - * @since 2.0 - * @param aImplementor reference to custom commands - * implementor - * @return pointer to CSISpeechRecognitionCustomCommandParser object - */ - IMPORT_C static CSISpeechRecognitionCustomCommandParser* NewL( - MSISpeechRecognitionCustomCommandImplementor& - aImplementor); - - /** - * - * Destructor - * @since 2.0 - */ - IMPORT_C ~CSISpeechRecognitionCustomCommandParser(); - - /** - * - * Handles the request from the client - * @since 2.0 - * @param aMessage message containing the information of the - * request. - */ - void HandleRequest(TMMFMessage& aMessage); - -private: - /** - * - * C++ constructor for CSISpeechRecognitionCustomCommandParser class. - * @since 2.0 - * @param aImplementor reference to custom commands - * implementor - */ - CSISpeechRecognitionCustomCommandParser( - MSISpeechRecognitionCustomCommandImplementor& aImplementor); - - /** - * - * Private method to handle the request from the client - * @since 2.0 - * @param aMessage message containing the information - * of the request. - */ - void DoHandleRequestL(TMMFMessage& aMessage); - - /** - * - * Adds a new pronunciation for the given model into the specified - * lexicon. - * @since 2.0 - * @param aMessage message containing the information of - * the request. - */ - void DoAddPronunciationL(TMMFMessage& aMessage); - - /** - * Adds a new rule for the given pronunciation into the - * specified grammar. - * @since 2.0 - * @param aMessage message containing the information - * of the request. - */ - void DoAddRuleL(TMMFMessage& aMessage); - - /** - * - * Cancels the current operation - * @since 2.0 - * @param - - */ - void DoCancel(); - - /** - * Saves the current changes into a permanent storage. - * @since 2.0 - * @param - - */ - void DoCommitChangesL(); - - /** - * - * Creates a new grammar. - * @since 2.0 - * @param aMessage message containing the information - * of the request. - */ - void DoCreateGrammarL(TMMFMessage& aMessage); - - /** - * - * Creates a new lexicon. - * @since 2.0 - * @param aMessage message containing the information - * of the request. - */ - void DoCreateLexiconL(TMMFMessage& aMessage); - - /** - * Creates a new model bank. - * @since 2.0 - * @param aMessage message containing the information - * of the request. - */ - void DoCreateModelBankL(TMMFMessage& aMessage); - - /** - * Ends the current recognition session. Resources allocated for - * recognition are freed. - * @since 2.0 - * @param aMessage message containing the information - * of the request. - */ - void DoEndRecSessionL(); - - /** - * Returns all grammar Ids that belong to the current client, - * whose UID was set with SetClientUid(). - * @since 2.0 - * @param aMessage message containing the information - * of the request. - */ - void DoGetAllClientGrammarIDsL(); - - /** - * Returns all lexicon Ids that belong to the current client, - * whose UID was set with SetClientUid(). - * @since 2.0 - * @param aMessage message containing the information - * of the request. - */ - void DoGetAllClientLexiconIDsL(); - - /** - * Returns all model bank Ids that belong to the current client, - * whose UID was set with SetClientUid(). - * @since 2.0 - * @param aMessage message containing the information - * of the request. - */ - void DoGetAllClientModelBankIDsL(); - - /** - * Returns all grammar Ids that exist (for all clients). - * @since 2.0 - */ - void DoGetAllGrammarIDsL(); - - /** - * Returns all lexicon Ids that exist (for all clients). - * @since 2.0 - * @param aMessage message containing the information - * of the request. - */ - void DoGetAllLexiconIDsL(); - - /** - * Returns all model bank Ids that exist (for all clients). - * @since 2.0 - * @param aMessage message containing the information - * of the request. - */ - void DoGetAllModelBankIDsL(); - - /** - * Returns all model Ids that exist in the specified model bank. - * @since 2.0 - * @param aMessage message containing the information - * of the request. - */ - void DoGetAllModelIDsL(TMMFMessage& aMessage); - - /** - * Returns all pronunciation Ids that exist in the specified lexicon. - * @since 2.0 - * @param aMessage message containing the information - * of the request. - */ - void DoGetAllPronunciationIDsL(TMMFMessage& aMessage); - - /** - * Returns all rule Ids that exist in the specified grammar. - * @since 2.0 - * @param aMessage message containing the information - * of the request. - */ - void DoGetAllRuleIDsL(TMMFMessage& aMessage); - - /** - * Returns the number of models available for training system wide, - * based on available disk space. - * @since 2.0 - * @param aMessage message containing the information of - * the request. - */ - void DoGetAvailableStorageL(TMMFMessage& aMessage); - - /** - * - * Returns the engine properties. - * @since 2.0 - * @param aMessage message containing the information of - * the request. - */ - void DoGetEnginePropertiesL(TMMFMessage& aMessage); - - /** - * Returns the number of models in the specified model bank. - * @since 2.0 - * @param aMessage message containing the information - * of the request. - */ - void DoGetModelCountL(TMMFMessage& aMessage); - - /** - * Checks if the rule is valid or not. - * @since 2.0 - * @param aMessage message containing the information - * of the request. - */ - void DoGetRuleValidityL(TMMFMessage& aMessage); - - /** - * - * Returns the duration of the utterance for the specified model. - * @since 2.0 - * @param aMessage message containing the information - * of the request. - */ - void DoGetUtteranceDurationL(TMMFMessage& aMessage); - - /** - * Loads a gramamr. Grammars must be loaded prior to recognition. - * - * @since 2.0 - * @param aMessage message containing the information - * of the request. - */ - void DoLoadGrammarL(TMMFMessage& aMessage); - - /** - * Activates a previously deactivated gramamr. - * - * @since 2.0 - * @param aMessage message containing the information - * of the request. - */ - void DoActivateGrammarL(TMMFMessage& aMessage); - - /** - * Deactivates a loaded gramamr, so that it is not recognized. - * - * @since 2.0 - * @param aMessage message containing the information - * of the request. - */ - void DoDeactivateGrammarL(TMMFMessage& aMessage); - - /** - * - * Loads the specified lexicon into the recognizer; done prior to - * recognition. - * @since 2.0 - * @param aMessage message containing the information - * of the request. - */ - void DoLoadLexiconL(TMMFMessage& aMessage); - - /** - * - * Loads the specified model bank into the recognizer; done prior - * to recognition.. - * @since 2.0 - * @param aMessage message containing the information - * of the request. - */ - void DoLoadModelsL(TMMFMessage& aMessage); - - /** - * Plays the previously trained utterance. - * @since 2.0 - * @param aMessage message containing the information - * of the request. - */ - void DoPlayUtteranceL(TMMFMessage& aMessage); - - /** - * Initiates recognition; performed following loading of model bank, - * lexicon, and grammar. - * @since 2.0 - * @param aMessage message containing the information - * of the request. - */ - void DoRecognizeL(TMMFMessage& aMessage); - - /** - * Records uder utterance for training and recognition. - * @since 2.0 - * @param aMessage message containing the information - * of the request. - */ - void DoRecordL(TMMFMessage& aMessage); - - /** - * Removes the specified grammar from the permanent storage. - * Removing a grammar will remove all rules within the grammar. - * @since 2.0 - * @param aMessage message containing the information - * of the request. - */ - void DoRemoveGrammarL(TMMFMessage& aMessage); - - /** - * Removes the specified lexicon from the permanent storage. - * Removing a lexicon will remove all pronunciations within - * the lexicon. - * @since 2.0 - * @param aMessage message containing the information - * of the request. - */ - void DoRemoveLexiconL(TMMFMessage& aMessage); - - /** - * Removes the specified model bank from the permanent storage. - * Removing a model bank will remove all models within the model - * bank. - * @since 2.0 - * @param aMessage message containing the information - * of the request. - */ - void DoRemoveModelBankL(TMMFMessage& aMessage); - - /** - * Removes the specified model from the specified model bank - * permanently. - * @since 2.0 - * @param aMessage message containing the information - * of the request. - */ - void DoRemoveModelL(TMMFMessage& aMessage); - - /** - * Removes the specified pronunciation from the specified - * lexicon permanently. - * @since 2.0 - * @param aMessage message containing the information - * of the request. - */ - void DoRemovePronunciationL(TMMFMessage& aMessage); - - /** - * Removes the specified rule from the specified grammar permanently. - * @since 2.0 - * @param aMessage message containing the information - * of the request. - */ - void DoRemoveRuleL(TMMFMessage& aMessage); - - /** - * Removes the specified rules from the specified grammar permanently - * @param aMessage message containing the information - * of the request. - */ - void DoRemoveRulesL( TMMFMessage& aMessage ); - - - /** - * Sets the client's UID for data ownership identification. - * @since 2.0 - * @param aMessage message containing the information - * of the request. - */ - void DoSetClientUidL(TMMFMessage& aMessage); - - /** - * Starts a new recognition session. - * @since 2.0 - * @param aMessage message containing the information - * of the request. - */ - void DoStartRecSessionL(TMMFMessage& aMessage); - - /** - * Trains a new model into the specified model bank. - * @since 2.0 - * @param aMessage message containing the information - * of the request. - */ - void DoTrainL(TMMFMessage& aMessage); - - /** - * Unloads the specified rule from the specified grammar in temporary - * memory, previously loaded with LoadGrammarL. The rule in the permanent - * storage remains intact. - * @since 2.0 - * @param aMessage message containing the information - * of the request. - */ - void DoUnloadRuleL(TMMFMessage& aMessage); - - /** - * Loads the specified parameters into the engine. - * @since 2.0 - * @param aMessage message containing the information - * of the request. - */ - void DoLoadEngineParametersL(TMMFMessage& aMessage); - -// ================================ SI Extensions ============================ // - - /** - * Adapts acoustic models to a user's voice. - * @since 2.8 - * @param aMessage message containing the information - * of the request. - */ - void DoAdaptL(TMMFMessage& aMessage); - - /** - * Adds a speaker independent pronunciation. - * @since 2.8 - * @param aMessage message containing the information - * of the request. - */ - void DoAddPronunciationSIL(TMMFMessage& aMessage); - - /** - * Adds a rule variant. - * @since 2.8 - * @param aMessage message containing the information - * of the request. - */ - void DoAddRuleVariantL(TMMFMessage& aMessage); - - /** - * Adds a voice tag. - * @since 2.8 - * @param aMessage message containing the information - * of the request. - */ - void DoAddVoiceTagL(TMMFMessage& aMessage); - - /** - * Adds several voice tags. - * @since 2.8 - * @param aMessage message containing the information - * of the request. - */ - void DoAddVoiceTagsL(TMMFMessage& aMessage); - - /** - * Creates an empty rule. - * @since 2.8 - * @param aMessage message containing the information - * of the request. - */ - void DoCreateRuleL(TMMFMessage& aMessage); - - /** - * Stops recording (recognizing). - * @since 2.8 - * @param aMessage message containing the information - * of the request. - */ - void DoEndRecordL(TMMFMessage& aMessage); - - /** - * Starts speaker independent recognition. - * @since 2.8 - * @param aMessage message containing the information - * of the request. - */ - void DoRecognizeSIL(TMMFMessage& aMessage); - - /** - * Deactivates a grammar from the recognition vocabulary. - * @since 2.8 - * @param aMessage message containing the information - * of the request. - */ - void DoUnloadGrammarL(TMMFMessage& aMessage); - - /** - * Adds one SINDE voice tag. - * - * @since 3.1 - * @param aMessage Message containing the information of the request. - */ - void CSISpeechRecognitionCustomCommandParser::DoAddSindeVoiceTagL( TMMFMessage& aMessage ); - - /** - * Adds an array of voice tags. - * - * @since 3.1 - * @param aMessage Message containing the information of the request. - */ - void CSISpeechRecognitionCustomCommandParser::DoAddSindeVoiceTagsL( TMMFMessage& aMessage ); - - /** - * Pre-starts sampling - * - * @since 3.2 - * @param aMessage Message containing the information of the request. - */ - void DoPreStartSamplingL( TMMFMessage& aMessage ); - -private: - - /** - * Copy the pronunciation ID array to the client. - * @since 2.0 - * @param aMessage message containing the information - * of the request. - */ - void DoCopyPronunciationIDArrayL(TMMFMessage& aMessage); - - /** - * Copy the model ID array to the client. - * @since 2.0 - * @param aMessage message containing the information - * of the request. - */ - void DoCopyModelIDArrayL(TMMFMessage& aMessage); - - /** - * Copy the rule ID array to the client. - * @since 2.0 - * @param aMessage message containing the information - * of the request. - */ - void DoCopyRuleIDArrayL(TMMFMessage& aMessage); - - /** - * Copy the grammar ID array to the client. - * @since 2.0 - * @param aMessage message containing the information - * of the request. - */ - void DoCopyGrammarIDArrayL(TMMFMessage& aMessage); - - /** - * Copy the lexicon ID array to the client. - * @since 2.0 - * @param aMessage message containing the information - * of the request. - */ - void DoCopyLexiconIDArrayL(TMMFMessage& aMessage); - - /** - * Copy the model bank ID array to the client. - * @since 2.0 - * @param aMessage message containing the information - * of the request. - */ - void DoCopyModelBankIDArrayL(TMMFMessage& aMessage); - - /** - * Externalize the recognition result set. - * @since 2.0 - */ - void DoExternalizeResultSetL(); - - /** - * Externalize the speaker independent recognition result set. - * @since 2.0 - */ - void DoExternalizeSIResultSetL(); - - /** - * Copy the recognition result set to the client. - * @since 2.0 - * @param aMessage message containing the information - * of the request. - */ - void DoCopyResultSetL(TMMFMessage& aMessage); - - - /** - * Extract an integer array from client data 1. - * @since 2.0 - * @param aMessage message containing the information - * of the request. - * @param aArray RArray to contain the data on exit. - */ - void DoExtractIntArrayFromData1L(TMMFMessage& aMessage, RArray& aArray); - - - /** - * Extract an integer array from client data 2. - * @since 2.0 - * @param aMessage message containing the information - * of the request. - * @param aArray RArray to contain the data on exit. - */ - void DoExtractIntArrayFromData2L(TMMFMessage& aMessage, RArray& aArray); - - /** - * Extract an integer array from a descriptor into an RArray. - * @since 2.0 - * @param aMessage message containing the information - * of the request. - * @param aArray RArray to contain the data on exit. - */ - void DoExtractIntArrayL(TDes8& aDescriptor, RArray& aArray); - - /** - * Copy data from an RArray to the client. - * @since 2.0 - * @param aMessage message containing the information - * of the request. - * @param aArray RArray copied to the client. - */ - void DoCopyIntArrayL(TMMFMessage& aMessage, const RArray& aArray); - - // reference to the Custom Command Implementor class - MSISpeechRecognitionCustomCommandImplementor& iImplementor; - - // Contains the array of pronunciation IDs - RArray iPronunciationIDs; - // Contains the array of model IDs - RArray iModelIDs; - // Contains the array of rule IDs - RArray iRuleIDs; - // Contains the array of grammar IDs - RArray iGrammarIDs; - // Contains the array of lexicon IDs - RArray iLexiconIDs; - // Contains the array of model bank IDs - RArray iModelBankIDs; - // Contains the language array - RArray iLanguageArray; - // Contains the array of language arrays - RArray iLanguageArrayArray; - // Contains the client result set !!!! Obsolete - CSDClientResultSet* iResultSet; - // Contains the client result set for SI recognition - CSIClientResultSet* iSIResultSet; - // temporary copy buffer - CBufFlat* iResultCopyBuffer; - // Contains the word array of AddVoiceTag - MDesCArray* iWordArray; - // Contains the result set, which is used in adaptation. - CSIClientResultSet* iAdaptationSet; - - TAny* iReservedPtr_1; // reserved for future expansion - TAny* iReservedPtr_2; // reserved for future expansion - -}; - -#endif // NSSSISPEECHRECOGNITIONCUSTOMCOMMANDPARSER_H - -// End of file