srsf/nssvasapi/nssvasrecognition/inc/nssvascadaptationitem.h
branchRCL_3
changeset 19 e36f3802f733
parent 0 bf1d17376201
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/srsf/nssvasapi/nssvasrecognition/inc/nssvascadaptationitem.h	Wed Sep 01 12:29:17 2010 +0100
@@ -0,0 +1,132 @@
+/*
+* Copyright (c) 2004-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:  The MNssAdaptationItem interface class handles speaker adaptation,
+*               when the client wants to decide herself, when to adapt.
+*
+*/
+
+
+#ifndef NSSVASCADAPTATIONITEM_H
+#define NSSVASCADAPTATIONITEM_H
+
+//  INCLUDES
+#include <e32std.h>
+#include <e32base.h>
+#include <nssvasmadaptationitem.h>
+#include <nssvasmadaptationeventhandler.h>
+#include "nssvascrecognitionhandler.h"
+
+// CLASS DECLARATION
+
+/**
+*  CNssAdaptationItem class
+*  Contains adaptation data.
+*
+*  @lib NssVASApi.lib
+*  @since 2.8
+*/
+class CNssAdaptationItem : public CBase, public MNssAdaptationItem
+    {
+
+    public:  //enum
+
+	  enum TNssRejectTagError
+        {
+        EVasErrorNone,
+        EVasRejectTagFailed,
+        EVasNoTagInContexts,
+        EVasRecognizeUndefinedError10,   // for place holder
+        EVasRecognizeUndefinedError9,
+        EVasRecognizeUndefinedError8,
+        EVasRecognizeUndefinedError7,
+        EVasRecognizeUndefinedError6,
+        EVasRecognizeUndefinedError5,
+        EVasRecognizeUndefinedError4,
+        EVasRecognizeUndefinedError3,
+        EVasRecognizeUndefinedError2,
+        EVasRecognizeUndefinedError1
+        };
+
+    public: // Constructors and destructors
+
+    /**
+    * NewL - 2-phase constructor
+    * @param aRecHandlerHost The recognition handler, which created this item.
+    * @param aRecResult Recognition result contains the data required for adaptation.
+    * @since 2.8
+    */
+    IMPORT_C static CNssAdaptationItem* NewL(
+        CNssRecognitionHandler* aRecHandlerHost,
+        CSIClientResultSet* aRecResult );
+
+    /**
+	* ~MNssAdaptationItem - Destructor  
+    * @since 2.8
+    */
+    IMPORT_C ~CNssAdaptationItem();
+
+public: // Functions from base classes
+
+    /**
+	* AdaptL - Adapts the models using utterance and result
+    * @from MNssAdaptationItem
+    * @since 2.8
+    * @param aHandler Adaptation handler is called when adaptation has finished.
+    * @param aCorrect Which result from the N-best list is the correct one.
+    */
+    IMPORT_C void AdaptL( MNssAdaptationEventHandler *aHandler, TInt aCorrect );
+
+    /**
+    * Adapts the models using the tag information
+    * 
+    * @since 3.2
+    * @param aHandler Event handler for this adaptation
+    * @param aTag Selected tag
+    */ 
+    IMPORT_C void AdaptL( MNssAdaptationEventHandler* aHandler,
+                          MNssTag& aTag );
+
+public: // New functions
+
+    /**
+    * Disable - CNssRecognitionHandler calls this function, when the handler
+    * is destroyed. It deactivates the adaptation item, since adaptation
+    * can't happen without the recognition handler host.
+    * @since 2.8
+    */
+    IMPORT_C void Disable();
+
+    private: // New functions
+
+    /**
+    * 1st phase constructor
+    */
+    CNssAdaptationItem( CNssRecognitionHandler* aRecHandlerHost, CSIClientResultSet* aRecResult );
+
+private: // Data
+
+    // Pointer to the recognition handler host
+    CNssRecognitionHandler* iRecHandler;
+
+    // If the recognition handler host is destroyed, the associated 
+    // adaptation items are deactivated.
+    TBool iIsActive;
+
+    // Recognition result set contains the data required for adaptation.
+    CSIClientResultSet* iAdaptationData;
+    };
+
+#endif // NSSVASCADAPTATIONITEM_H   
+            
+// End of File