os/graphics/graphicsaccelaration/vgi/inc/vg_vgibridge.h
author sl@SLION-WIN7.fritz.box
Fri, 15 Jun 2012 03:10:57 +0200
changeset 0 bde4ae8d615e
permissions -rw-r--r--
First public contribution.
     1 /*
     2 * Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). 
     3 * All rights reserved.
     4 * This component and the accompanying materials are made available
     5 * under the terms of "Eclipse Public License v1.0"
     6 * which accompanies this distribution, and is available
     7 * at the URL "http://www.eclipse.org/legal/epl-v10.html".
     8 *
     9 * Initial Contributors:
    10 * Nokia Corporation - initial contribution.
    11 *
    12 * Contributors:
    13 *
    14 * Description:
    15 *
    16 */
    17 #ifndef VG_VGIBRIDGE_H
    18 #define VG_VGIBRIDGE_H
    19 
    20 #include <vg/vgcontext.h>
    21 
    22 #ifdef __SYMBIAN32__
    23 #include <vg/vgcontext_symbian.h>
    24 #endif
    25 
    26 typedef int (*VGIInitializeFunc)( int width, int height, VGIColorSpace colorSpace );
    27 typedef int (*VGIInitializeExFunc)( int width, int height, VGIColorSpace colorSpace, int premultiplied, int conformant );
    28 typedef int (*VGICopyToTargetFunc)( VGIColorBufferFormat format, int bufferStride, void *buffer, int maskStride, void *mask, VGICopyToTargetHint hint );
    29 typedef void (*VGITerminateFunc)( void );
    30 typedef int (*VGIResizeFunc)( int width, int height );
    31 typedef int (*VGIBindToImageFunc)( VGImage image );
    32 typedef int (*VGIUnBindImageFunc)( void );
    33 
    34 #ifdef __SYMBIAN32__
    35 typedef TInt (*VGISymbianInitializeFunc)( TSize aSize, VGIColorSpace aColorSpace );
    36 typedef TInt (*VGISymbianInitializeExFunc)( TSize aSize, VGIColorSpace aColorSpace, TBool aPremultiplied, TBool aConformant );
    37 typedef TInt (*VGISymbianCopyToBitmapFunc)( CFbsBitmap *aBitmap, CFbsBitmap *aMaskBitmap = NULL, VGICopyToTargetHint aHint = VGI_COPY_TRANSPARENT_PIXELS );
    38 typedef void (*VGISymbianTerminateFunc)();
    39 typedef TInt (*VGISymbianResizeFunc)( TSize aSize );
    40 typedef TInt (*VGISymbianBindToImageFunc)( VGImage aImage );
    41 typedef TInt (*VGISymbianUnBindImageFunc)();
    42 #endif
    43 
    44 typedef struct
    45 {
    46     VGIInitializeFunc VGIInitialize;
    47     VGIInitializeExFunc VGIInitializeEx;
    48     VGICopyToTargetFunc VGICopyToTarget;
    49     VGITerminateFunc VGITerminate;
    50     VGIResizeFunc VGIResize;
    51     VGIBindToImageFunc VGIBindToImage;
    52     VGIUnBindImageFunc VGIUnBindImage;
    53 
    54 #ifdef __SYMBIAN32__
    55     VGISymbianInitializeFunc VGISymbianInitialize;
    56     VGISymbianInitializeExFunc VGISymbianInitializeEx;
    57     VGISymbianCopyToBitmapFunc VGISymbianCopyToBitmap;
    58     VGISymbianTerminateFunc VGISymbianTerminate;
    59     VGISymbianResizeFunc VGISymbianResize;
    60     VGISymbianBindToImageFunc VGISymbianBindToImage;
    61     VGISymbianUnBindImageFunc VGISymbianUnBindImage;
    62     RLibrary libHandle;
    63 #endif
    64 
    65 } VGIBridge;
    66 
    67 typedef void (*VGIBridgeFunc)( VGIBridge* functions );
    68 
    69 #endif /* VG_VGIBRIDGE_H */