uiservicetab/vimpstengine/inc/cvimpstenginerequest.h
changeset 0 5e5d6b214f4f
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/uiservicetab/vimpstengine/inc/cvimpstenginerequest.h	Tue Feb 02 10:12:18 2010 +0200
@@ -0,0 +1,121 @@
+/*
+* Copyright (c) 2008 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: implements the request handler for ximp fw.
+*
+*/
+
+
+
+#ifndef _CVIMPSTENGINEREQUEST_H__
+#define _CVIMPSTENGINEREQUEST_H__
+
+// include files
+#include <e32base.h>
+#include <ximpbase.h>
+#include "tvimpstenums.h"
+
+/**
+ *  This class implements the request handler for ximp fw.
+ *
+ *  @lib vimpstengine.lib
+ *  @since S60 5.0
+ */
+NONSHARABLE_CLASS(CVIMPSTEngineRequest) :public CBase
+	{
+
+	public:  // Two-phased constructors and destructor
+
+       /**
+		* Two-phased constructor.
+		* @param aRequestId request id
+		* @param aRequestType - Enum defined in tvimpstenums.h
+		*/
+		static CVIMPSTEngineRequest* NewL(TXIMPRequestId& aRequestId,
+		        TXimpOperation aRequestType );
+
+
+       /**
+		* Two-phased constructor.
+		* @param aRequestId request id
+		*/
+		static CVIMPSTEngineRequest* NewLC(TXIMPRequestId& aRequestId,
+		        TXimpOperation aRequestType);
+
+		/**
+		* ~CVIMPSTEngineRequest 
+		*/
+		virtual ~CVIMPSTEngineRequest();
+
+		/**
+		* StartWait
+		*/
+		void StartWait();
+
+		/**
+		* StopWait method 
+		*/
+		void StopWait();
+
+		/**
+		* GetRequestId  
+		* @return TXIMPRequestId the request id 
+		*/
+		const TXIMPRequestId& GetRequestId() const;
+
+		/**
+		* IsWaitStarted method from context obsrver  
+		* check weather wait is started or not
+		* @return TBool ETrue if wait is started, else EFalse.
+		*/
+		TBool IsWaitStarted() ;		
+		
+		/**
+         * Set the Type of Request
+         * @param aType, a request type - Enum defined in tvimpstenums.h
+         */
+        void SetRequestType(TXimpOperation aType) ;
+        
+        
+        /**
+         * Get the Type of Request
+         * @return request type - Enum defined in tvimpstenums.h
+         */
+        TXimpOperation RequestType() const;
+	
+	private:
+
+
+		/**
+		* CVIMPSTEngineRequest 
+		* @ param aRequestId ,request id 
+		* @ param aType, request type.
+		*/
+		CVIMPSTEngineRequest(TXIMPRequestId& aRequestId,
+		        TXimpOperation aRequestType);
+
+	private:
+		// own request id
+		TXIMPRequestId  iRequestId;
+
+		// own active sheduler 
+		CActiveSchedulerWait    iWait;
+		
+		//request type
+		TXimpOperation iReqType ;
+		
+};
+
+#endif  //_CVIMPSTENGINEREQUEST_H__
+
+// end of file