uiacceltk/hitchcock/ServerCore/Inc/alfmappingfunctionhandlers.h
changeset 0 15bf7259bb7c
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/uiacceltk/hitchcock/ServerCore/Inc/alfmappingfunctionhandlers.h	Tue Feb 02 07:56:43 2010 +0200
@@ -0,0 +1,211 @@
+/*
+* 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:   Mapping function handlers
+*
+*/
+
+
+
+#ifndef T_ALFMAPPINGFUNCTIONHANDLERS_H
+#define T_ALFMAPPINGFUNCTIONHANDLERS_H
+
+#include "alf/alfextensionfactory.h"
+#include <alf/alfconstants.h>
+#include <uiacceltk/HuiMappingFunctions.h>
+
+class CHuiCurvePath;
+
+/**
+ *  Average mapping function
+ *
+ *  @since S60 v3.2
+ */
+NONSHARABLE_CLASS(TAlfAverageMappingFunctionHandler): public MAlfExtension
+    {
+public:  
+
+    TAlfAverageMappingFunctionHandler(
+        MAlfInterfaceProvider& aResolver, 
+        MHuiMappingFunction* aFunc1 = 0, 
+        MHuiMappingFunction* aFunc2 = 0 );
+
+    void Release();
+    TAny* GetInterface(const THuiInterfaceSupport& aInterface);
+    void HandleCmdL(TInt aCommandId, const TDesC8& aInputBuffer, TDes8& aResponse);
+
+private:
+    THuiAverageMappingFunction iAverageMappingFunction;
+    MAlfInterfaceProvider& iResolver;
+    };
+    
+/**
+ *  Constant mapping function
+ *
+ *  @since S60 v3.2
+ */
+NONSHARABLE_CLASS(TAlfConstantMappingFunctionHandler): public MAlfExtension
+    {
+public:  
+
+    TAlfConstantMappingFunctionHandler(
+        MAlfInterfaceProvider& aResolver, 
+        TReal32 aValue );
+
+    void Release();
+    TAny* GetInterface(const THuiInterfaceSupport& aInterface);
+    void HandleCmdL(TInt aCommandId, const TDesC8& aInputBuffer, TDes8& aResponse);
+
+private:
+    THuiConstantMappingFunction iConstantMappingFunction;
+    MAlfInterfaceProvider& iResolver;
+    };
+    
+/**
+ *  Linear mapping function
+ *
+ *  @since S60 v3.2
+ */
+NONSHARABLE_CLASS(TAlfLinearMappingFunctionHandler): public MAlfExtension
+    {
+public:  
+
+    TAlfLinearMappingFunctionHandler(
+        MAlfInterfaceProvider& aResolver, 
+        TReal32 aFactor = 1.0,
+        TReal32 aOffset = 0.0  );
+
+    void Release();
+    TAny* GetInterface(const THuiInterfaceSupport& aInterface);
+    void HandleCmdL(TInt aCommandId, const TDesC8& aInputBuffer, TDes8& aResponse);
+
+private:
+    THuiLinearMappingFunction iLinearMappingFunction;
+    MAlfInterfaceProvider& iResolver;
+    };
+    
+/**
+ *  Sine mapping function
+ *
+ *  @since S60 v3.2
+ */
+NONSHARABLE_CLASS(TAlfSineMappingFunctionHandler): public MAlfExtension
+    {
+public:  
+
+    TAlfSineMappingFunctionHandler(
+        MAlfInterfaceProvider& aResolver, 
+        TReal32 aFactor = 1.0,
+        TReal32 aOffset = 0.0 );
+
+    void Release();
+    TAny* GetInterface(const THuiInterfaceSupport& aInterface);
+    void HandleCmdL(TInt aCommandId, const TDesC8& aInputBuffer, TDes8& aResponse);
+
+private:
+    THuiSineMappingFunction iSineMappingFunction;
+    MAlfInterfaceProvider& iResolver;
+    };
+    
+/**
+ *  Cosine mapping function
+ *
+ *  @since S60 v3.2
+ */
+NONSHARABLE_CLASS(TAlfCosineMappingFunctionHandler): public MAlfExtension
+    {
+public:  
+
+    TAlfCosineMappingFunctionHandler(
+        MAlfInterfaceProvider& aResolver, 
+        TReal32 aFactor = 1.0,
+        TReal32 aOffset = 0.0 );
+
+    void Release();
+    TAny* GetInterface(const THuiInterfaceSupport& aInterface);
+    void HandleCmdL(TInt aCommandId, const TDesC8& aInputBuffer, TDes8& aResponse);
+
+private:
+    THuiCosineMappingFunction iCosineMappingFunction;
+    MAlfInterfaceProvider& iResolver;
+    };
+  
+/**
+ *  Curve path
+ *
+ *  @since S60 v3.2
+ */  
+NONSHARABLE_CLASS(CAlfCurvePathHandler): public CBase, public MAlfExtension
+    {
+public:  
+    
+    static CAlfCurvePathHandler* NewL(  
+        MAlfInterfaceProvider& aResolver,
+        CHuiCurvePath* aCurvePath = 0 );
+    ~CAlfCurvePathHandler();
+
+    void Release();
+    TAny* GetInterface(const THuiInterfaceSupport& aInterface);
+    void HandleCmdL(TInt aCommandId, const TDesC8& aInputBuffer, TDes8& aResponse);
+
+private:
+    CAlfCurvePathHandler( MAlfInterfaceProvider& aResolver );
+    void ConstructL(CHuiCurvePath* aCurvePath);
+
+private:
+    MAlfInterfaceProvider& iResolver;
+    CHuiCurvePath* iCurvePath;
+    TBool iOwnCurvePath;
+    };
+
+/**
+ *  Table mapping function
+ *
+ *  @since S60 v3.2
+ */
+NONSHARABLE_CLASS(TAlfTableMappingFunction): public MHuiMappingFunction
+    {
+public:
+    
+    /**
+     * Constructor.
+     */
+    TAlfTableMappingFunction();
+
+    /* implements MHuiMappingFunction */
+    TReal32 MapValue(TReal32 aValue, TInt aComponent) const __SOFTFP;
+
+public:
+
+    TAlfTableMappingFunctionParams iParams;
+    };
+
+
+NONSHARABLE_CLASS(TAlfTableMappingFunctionHandler): public MAlfExtension
+    {
+public:  
+
+    TAlfTableMappingFunctionHandler(MAlfInterfaceProvider& aResolver);
+
+    void Release();
+    TAny* GetInterface(const THuiInterfaceSupport& aInterface);
+    void HandleCmdL(TInt aCommandId, const TDesC8& aInputBuffer, TDes8& aResponse);
+
+private:
+    TAlfTableMappingFunction iMappingFunction;
+    MAlfInterfaceProvider& iResolver;
+    };
+
+
+
+#endif // T_ALFMAPPINGFUNCTIONHANDLERS_H