vghwinterface/vghwapiwrapper/inc/openvgapiwrapper.h
branchbug235_bringup_0
changeset 53 c2ef9095503a
parent 24 a3f46bb01be2
equal deleted inserted replaced
52:39e5f73667ba 53:c2ef9095503a
       
     1 // Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies).
       
     2 // All rights reserved.
       
     3 // This component and the accompanying materials are made available
       
     4 // under the terms of "Eclipse Public License v1.0"
       
     5 // which accompanies this distribution, and is available
       
     6 // at the URL "http://www.eclipse.org/legal/epl-v10.html".
       
     7 //
       
     8 // Initial Contributors:
       
     9 // Nokia Corporation - initial contribution.
       
    10 //
       
    11 // Contributors:
       
    12 //
       
    13 // Description:
       
    14 // 
       
    15 
       
    16 #ifndef OPENVGAPIWRAPPER_H
       
    17 #define OPENVGAPIWRAPPER_H
       
    18 
       
    19 #ifndef PSU_PLATFORMTYPES_H
       
    20 #include "platformtypes.h"
       
    21 #endif
       
    22 
       
    23 #include "requestbuffer.h"
       
    24 #include "apiwrapper.h"
       
    25 
       
    26 class MGraphicsVHWCallback;
       
    27 class APIWrapperStack;
       
    28 
       
    29 class OpenVGAPIWrapper: public APIWrapper
       
    30 {
       
    31 public:
       
    32     OpenVGAPIWrapper( RemoteFunctionCallData& currentFunctionCallData, APIWrapperStack* stack,
       
    33 	        void* result,
       
    34 			MGraphicsVHWCallback* serviceIf, KhronosAPIWrapper* aAPIWrapper );
       
    35 
       
    36 	int WriteReply();
       
    37 	
       
    38 	void SetProcessInformation( TUint32 aProcess, TUint32 aThread )
       
    39 	{
       
    40 	}
       
    41 
       
    42 	void Cleanup( TUint32 aProcess, TUint32 aThread )
       
    43 	{
       
    44 	}
       
    45 
       
    46     int DispatchRequest( unsigned long aCode );
       
    47     int vgCreatePaint();
       
    48     int vgDestroyPaint();
       
    49     int vgSetPaint();
       
    50     int vgSetParameteri();
       
    51     int vgSetParameterf();
       
    52     int vgSetParameterfv();
       
    53     int vgCreatePath();
       
    54     int vgDrawPath();
       
    55     int vgDestroyPath();
       
    56     int vgAppendPathData();
       
    57     int vgGetError();
       
    58     int vgSeti();
       
    59     int vgSetf();
       
    60     int vgSetfv();
       
    61     int vgClear();
       
    62     int vgLoadIdentity();
       
    63     int vgRotate();
       
    64     int vgScale();
       
    65     int vgTranslate();
       
    66     int vgReadPixels();
       
    67     int vgFlush();
       
    68     int vgFinish();
       
    69     int vgSetiv();
       
    70 
       
    71     int vgGetf();
       
    72     int vgGeti();
       
    73     int vgGetVectorSize();
       
    74     int vgGetParameterf();
       
    75     int vgGetParameteri();
       
    76     int vgGetParameterVectorSize();
       
    77     int vgShear();
       
    78     int vgMask();
       
    79     int vgRenderToMask();
       
    80     int vgCreateMaskLayer();
       
    81     int vgDestroyMaskLayer();
       
    82     int vgFillMaskLayer();
       
    83     int vgCopyMask();
       
    84     int vgClearPath();
       
    85     int vgRemovePathCapabilities();
       
    86     int vgGetPathCapabilities();
       
    87     int vgAppendPath();
       
    88     int vgTransformPath();
       
    89     int vgInterpolatePath();
       
    90     int vgPathLength();
       
    91     int vgGetPaint();
       
    92     int vgSetColor();
       
    93     int vgGetColor();
       
    94     int vgPaintPattern();
       
    95     int vgCreateImage();
       
    96     int vgDestroyImage();
       
    97     int vgClearImage();
       
    98     int vgChildImage();
       
    99     int vgGetParent();
       
   100     int vgCopyImage();
       
   101     int vgDrawImage();
       
   102     int vgSetPixels();
       
   103     int vgGetPixels();
       
   104     int vgCopyPixels();
       
   105     int vgCreateFont();
       
   106     int vgDestroyFont();
       
   107     int vgClearGlyph();
       
   108     int vgDrawGlyph();
       
   109     int vgGaussianBlur();
       
   110     int vgHardwareQuery();
       
   111     int vgConvolve();
       
   112     int vgColorMatrix();
       
   113     int vgWritePixels();
       
   114     int vgImageSubData();
       
   115     int vgSetParameteriv();
       
   116     int vgLoadMatrix();
       
   117     int vgMultMatrix();
       
   118     int vgModifyPathCoords();
       
   119     int vgSetGlyphToPath();
       
   120     int vgSetGlyphToImage();
       
   121     int vgDrawGlyphs();
       
   122     int vgSeparableConvolve();
       
   123     int vgLookup();
       
   124     int vgLookupSingle();
       
   125     int vgGetMatrix();
       
   126     int vgGetfv();
       
   127     int vgGetiv();
       
   128     int vgGetParameterfv();
       
   129     int vgGetParameteriv();
       
   130     int vgGetImageSubData();
       
   131     int vgPointAlongPath();
       
   132     int vgPathBounds();
       
   133     int vgPathTransformedBounds();
       
   134     int vgePathCoordsSizeInBytes();
       
   135 
       
   136     int vguLine();
       
   137     int vguPolygon();
       
   138     int vguRect();
       
   139     int vguRoundRect();
       
   140     int vguEllipse();
       
   141     int vguArc();
       
   142     int vguComputeWarpQuadToSquare();
       
   143     int vguComputeWarpSquareToQuad();
       
   144     int vguComputeWarpQuadToQuad();
       
   145 private:
       
   146 	void doSync( int aParamIndex, VGImage aDst, VGImage aSrc = 0 );
       
   147 private:
       
   148 	int m_lastVgError;
       
   149 	OpenVgRFC m_currentFunctionCall;
       
   150 	typedef VGint (*vgePathCoordsSizeInBytesPtrType)(VGPath, VGint, VGint);
       
   151 	//VGint (*vgePathCoordsSizeInBytesPtr)(VGPath, VGint, VGint);
       
   152 	vgePathCoordsSizeInBytesPtrType vgePathCoordsSizeInBytesPtr;
       
   153 	KhronosAPIWrapper* m_APIWrapper;
       
   154 };
       
   155 #endif