speechsrv_plat/vas_api/inc/nssvasmcontext.h
branchRCL_3
changeset 19 e36f3802f733
parent 0 bf1d17376201
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/speechsrv_plat/vas_api/inc/nssvasmcontext.h	Wed Sep 01 12:29:17 2010 +0100
@@ -0,0 +1,107 @@
+/*
+* 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:  MNssContext is a pure interface for context processing. A "context" 
+*               refers to a collection of voice  tags used by an application 
+*               for a classification of operations (for example a collection of 
+*               Name Dial voice tags could be contained in one context and 
+*               Command voice tags could be contained in another context). 
+*
+*/
+
+
+#ifndef NSSVASMCONTEXT_H
+#define NSSVASMCONTEXT_H
+
+//  INCLUDES
+#include<e32base.h>
+
+// CLASS DECLARATION
+
+/**
+*  MNssContext is a pure interface for context processing. 
+*  MNssContext provides methods for setting & getting context name and setting & 
+*  getting context global flag. A context can only be created using the context 
+*  manager. The context manager returns an empty context, and the client had to 
+*  populate its name and global flag using the methods below. A context can be 
+*  destroyed using delete on the context pointer.
+*  @lib NssVASApi.lib
+*  @since 2.0
+*/
+
+class MNssContext
+    {
+public:
+
+    /**
+    * Get the name of the context
+    * @since 2.0
+    * @param 
+    * @return reference to name of context
+    */  
+	virtual TDesC& ContextName() = 0;
+
+
+	/**
+    * Is the context global
+    * @since 2.0
+    * @param 
+    * @return ETrue if context is global, EFalse otherwise
+    */  
+	virtual TBool IsGlobal() = 0;
+
+	/**
+    * Sets the name of the context
+    * @since 2.0
+    * @param aName name of the context as a descriptor
+    * @return 
+    */  
+	virtual void SetNameL( const TDesC& aName ) = 0;
+
+    /**
+    * Sets/Resets the global flag for the context
+    * @since 2.0
+    * @param aGlobal ETrue to set the context as global, EFalse as not global 
+    * @return 
+    */  
+	virtual void SetGlobal( TBool aGlobal ) = 0;
+
+    /**
+    * Sets/Resets the client data. The data must be saved with
+    * MNssContextMgr::SaveClientData after this call.
+    * @since 2.8
+    * @param aData At most 100 bytes of serialized client data.
+    */
+    virtual void SetClientData( const TDesC8& aData ) = 0;
+
+    /**
+    * Gets the client data.
+    * @since 2.8
+    * @return At most 100 bytes of data.
+    */
+    virtual const TDesC8& ClientData() = 0;
+
+    /**
+    * virutal destructor to ensure proper cleanup 
+    * @since 2.0
+    * @param 
+    * @return 
+    */  
+	virtual ~MNssContext(){}
+
+    };
+
+
+#endif // NSSVASMCONTEXT_H  
+            
+// End of File