sl@0: /* sl@0: * Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). sl@0: * All rights reserved. sl@0: * This component and the accompanying materials are made available sl@0: * under the terms of "Eclipse Public License v1.0" sl@0: * which accompanies this distribution, and is available sl@0: * at the URL "http://www.eclipse.org/legal/epl-v10.html". sl@0: * sl@0: * Initial Contributors: sl@0: * Nokia Corporation - initial contribution. sl@0: * sl@0: * Contributors: sl@0: * sl@0: * Description: sl@0: * sl@0: */ sl@0: #ifndef VG_VGIBRIDGE_H sl@0: #define VG_VGIBRIDGE_H sl@0: sl@0: #include sl@0: sl@0: #ifdef __SYMBIAN32__ sl@0: #include sl@0: #endif sl@0: sl@0: typedef int (*VGIInitializeFunc)( int width, int height, VGIColorSpace colorSpace ); sl@0: typedef int (*VGIInitializeExFunc)( int width, int height, VGIColorSpace colorSpace, int premultiplied, int conformant ); sl@0: typedef int (*VGICopyToTargetFunc)( VGIColorBufferFormat format, int bufferStride, void *buffer, int maskStride, void *mask, VGICopyToTargetHint hint ); sl@0: typedef void (*VGITerminateFunc)( void ); sl@0: typedef int (*VGIResizeFunc)( int width, int height ); sl@0: typedef int (*VGIBindToImageFunc)( VGImage image ); sl@0: typedef int (*VGIUnBindImageFunc)( void ); sl@0: sl@0: #ifdef __SYMBIAN32__ sl@0: typedef TInt (*VGISymbianInitializeFunc)( TSize aSize, VGIColorSpace aColorSpace ); sl@0: typedef TInt (*VGISymbianInitializeExFunc)( TSize aSize, VGIColorSpace aColorSpace, TBool aPremultiplied, TBool aConformant ); sl@0: typedef TInt (*VGISymbianCopyToBitmapFunc)( CFbsBitmap *aBitmap, CFbsBitmap *aMaskBitmap = NULL, VGICopyToTargetHint aHint = VGI_COPY_TRANSPARENT_PIXELS ); sl@0: typedef void (*VGISymbianTerminateFunc)(); sl@0: typedef TInt (*VGISymbianResizeFunc)( TSize aSize ); sl@0: typedef TInt (*VGISymbianBindToImageFunc)( VGImage aImage ); sl@0: typedef TInt (*VGISymbianUnBindImageFunc)(); sl@0: #endif sl@0: sl@0: typedef struct sl@0: { sl@0: VGIInitializeFunc VGIInitialize; sl@0: VGIInitializeExFunc VGIInitializeEx; sl@0: VGICopyToTargetFunc VGICopyToTarget; sl@0: VGITerminateFunc VGITerminate; sl@0: VGIResizeFunc VGIResize; sl@0: VGIBindToImageFunc VGIBindToImage; sl@0: VGIUnBindImageFunc VGIUnBindImage; sl@0: sl@0: #ifdef __SYMBIAN32__ sl@0: VGISymbianInitializeFunc VGISymbianInitialize; sl@0: VGISymbianInitializeExFunc VGISymbianInitializeEx; sl@0: VGISymbianCopyToBitmapFunc VGISymbianCopyToBitmap; sl@0: VGISymbianTerminateFunc VGISymbianTerminate; sl@0: VGISymbianResizeFunc VGISymbianResize; sl@0: VGISymbianBindToImageFunc VGISymbianBindToImage; sl@0: VGISymbianUnBindImageFunc VGISymbianUnBindImage; sl@0: RLibrary libHandle; sl@0: #endif sl@0: sl@0: } VGIBridge; sl@0: sl@0: typedef void (*VGIBridgeFunc)( VGIBridge* functions ); sl@0: sl@0: #endif /* VG_VGIBRIDGE_H */