srsf/sisrscontrollerplugin/src/sindetraining.h
branchRCL_3
changeset 18 cad71a31b7fc
parent 17 8ce15fced3a6
child 19 e36f3802f733
--- a/srsf/sisrscontrollerplugin/src/sindetraining.h	Thu Aug 19 09:56:14 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,240 +0,0 @@
-/*
-* Copyright (c) 2006 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:  Class which takes care of SINDE voice tag training.
-*
-*/
-
-
-#ifndef SINDETRAINING_H
-#define SINDETRAINING_H
-
-// ============================================================================
-// Uncomment the following directive for Bit Exact Testing.
-// ============================================================================
-//
- 
-// INCLUDES
-#include "srsfbldvariant.hrh"
-#include "sicontrollerplugininterface.h"
-#include "sicontrollerplugin.h"
-#include <e32base.h>
-#include <bamdesca.h>
-#include <nsssispeechrecognitiondatacommon.h>
-#include <nssdevasr.h>
-
-// FORWARD DECLARATIONS
-
-
-// CLASS DECLARATION
-
-/**
-* Class which takes care of SIND with Extensions training.
-* Training is done in several batches to get optimal
-* number of pronunciations for each type of word.
-*
-* @lib nsssicontrollerplugin.lib
-* @since 3.1
-*/
-class CSindeTrainer : public CActive
-    {
-    public: // Constructors and destructor
-    
-	    /**
-        * Two-phased constructor.
-        * 
-        * @param aDevAsr DevASR reference
-        * @param aControllerIf Controller Interface to send callbacks to client
-        * @param aPlugin Plugin reference
-        * @param aDatabase SI Database
-        * @param aGrammarDatabase Grammar Database
-        * @param aLexiconDatabase Lexicon Database
-	    */
-	    static CSindeTrainer* NewL( CDevASR& aDevAsr, 
-	                                CSIControllerPluginInterface& aControllerIf,
-	                                CSIControllerPlugin& aPlugin,
-	                                CSIDatabase& aDatabase,
-                                    CSIGrammarDB& aGrammarDatabase,
-                                    CSILexiconDB& aLexiconDatabase );
-	
-	    /**
-	    * Destructor.
-	    */
-	    virtual ~CSindeTrainer();
-	    
-	public: // New functions
-	
-	    /**
-	    * Starts the process of SINDE voice tag addition.
-	    * Client thread is called is signalled directly when training completes.
-	    *
-	    * @param aTrainArrays Training texts
-	    * @param aLanguageArray Languages which are used when training
-	    * @param aLexiconId Lexicon ID where to add new pronunciations
-	    * @param aGrammarId Grammar ID where to add new rules
-	    * @param aModelBankId Model bank ID which is used in training process
-	    * @param aClientUid UID of the client which is doing the update (to verify ownership)
-	    * @param aRuleIds Output parameter, will contain the list IDs of the added rules
-	    */
-	    void AddSindeVoiceTagsL( RPointerArray<MDesCArray>* aTrainArrays,
-	                             RArray<RLanguageArray>& aLanguageArray, 
-                                 TSILexiconID aLexiconId,
-                                 TSIGrammarID aGrammarId,
-                                 TSIModelBankID aModelBankId,
-                                 TUid aClientUid,
-                                 RArray<TSIRuleID>& aRuleIds );
-                                 
-                                 
-        /**
-        * Handles an event originating from DevASR.
-        *
-        * @param aEvent Event code
-        * @param aError Error code
-        */
-        void HandleEvent( TDevASREvent aEvent, TDevASRError aError );
-	
-	protected: // From CActive
-	
-        /**
-        * RunL from CActive class.
-        */
-		void RunL();
-		
-        /**
-        * Cancel handle from CActive class.
-        */
-		void DoCancel();
-
-	private:
-
-        /**
-        * C++ default constructor.
-        *
-        * @param aDevAsr DevASR reference
-        * @param aControllerIf Controller Interface to send callbacks to client
-        * @param aPlugin Plugin reference
-        * @param aDatabase SI Database
-        * @param aGrammarDatabase Grammar Database
-        * @param aLexiconDatabase Lexicon Database
-        */
-        CSindeTrainer( CDevASR& aDevAsr,
-                       CSIControllerPluginInterface& aControllerIf,
-                       CSIControllerPlugin& aPlugin,
-                       CSIDatabase& aDatabase,
-                       CSIGrammarDB& aGrammarDatabase,
-                       CSILexiconDB& aLexiconDatabase );
-		
-        /**
-        * By default Symbian 2nd phase constructor is private.
-        */
-		void ConstructL();
-		
-		/**
-		* Sets the active object as active and ready to run.
-		*/
-		void SetReady();
-		
-		/**
-		* Does one step of training.
-		*/
-		void DoOneTrainingStepL();
-		
-		/**
-		* Does the updates to lexicon and grammar database.
-		*/
-		void DoDatabaseUpdateL();
-
-        /**
-        * Does the grammar compilation using DevASR.
-        */		
-		void DoGrammarCompilationL();
-		
-		/**
-		* Saves compiled grammar into database.
-		*/
-		void StoreCompiledGrammar();
-
-		/**
-		* Utility function to add pronunciations from other batches than first one
-		* to lexicon and grammar.
-		*
-		* @param aIndex Index within TTP word lists
-		* @param aLexicon Lexicon where additions are done
-		* @param aPronunIds Pronunciation id array where new ids are appended
-		*/
-		void AppendPronunciationsL( TInt aIndex, 
-		                            CSILexicon& aLexicon, 
-		                            RArray<TSIPronunciationID>& aPronunIds );
-
-    private: // Data
-    
-        // States for this object
-        enum TSindeTrainerState
-            {
-            ESindeTrainerIdle,
-            ESindeTrainerTraining,
-            ESindeTrainerDbUpdate,
-            ESindeGrammarCompilation,
-            ESindeTrainerFinished
-            };
-            
-        // Current object state
-        TSindeTrainerState iState;
-        
-        // Input for TTP via DevASR
-        CSITtpWordList* iTtpWordList;
-        
-        // Position of language array processing
-        TInt iLanguageIndex;
-        
-        // Position of text array processing
-        TInt iTextIndex; 
-	
-	    // Stored parameters
-    	RPointerArray<MDesCArray>* iTrainArrays;
-    	RArray<RLanguageArray>* iLanguageArray;
-    	RArray<TSIRuleID>* iRuleIds;
-    	TSIGrammarID iGrammarId;
-    	TSILexiconID iLexiconId;
-    	TSIModelBankID iModelBankId;
-        CSICompiledGrammar* iCompiledGrammar;
-    	    	
-    	// Reference to DevASR module
-    	CDevASR& iDevAsr;
-	
-    	RArray<TUint32> iMaxPronunsForWord;
-    	
-    	// Array which contains collected set of TTP data structures
-    	RPointerArray<CSITtpWordList> iTtpDataArray;
-	    
-	    // Asynchronous processing result, will be sent within callback
-	    TInt iError;
-	    
-	    // To do callbacks to client side
-	    CSIControllerPluginInterface& iControllerIf;
-	    
-	    // Controller plugin
-	    CSIControllerPlugin& iPlugin;
-	    
-	    // Plugin database classes
-		CSIDatabase& iDatabase;
-        CSIGrammarDB& iGrammarDatabase;
-        CSILexiconDB& iLexiconDatabase;
-        
-        // UID of the client
-        TUid iClientUid;        
-    };
-	
-#endif // SINDETRAINING_H
-	
-// End of File