os/graphics/egl/egltest/endpointtestsuite/automated/tinc/egltest_endpoint_images.h
First public contribution.
1 // Copyright (c) 2007-2009 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".
8 // Initial Contributors:
9 // Nokia Corporation - initial contribution.
19 @internalComponent - Internal Symbian test code
22 #ifndef __EGLTEST_ENDPOINT_IMAGE_H__
23 #define __EGLTEST_ENDPOINT_IMAGE_H__
28 #include <EGL/eglext.h>
29 #include <VG/openvg.h>
31 // Class Hierarchy to manage a set of images, based on an index.
33 class CTestImage: public CBase
36 virtual ~CTestImage();
37 virtual TRgb Pixel(TInt aX, TInt aY) const = 0;
38 virtual TSize Size() const = 0;
39 TBool CompareImageL(const CTestImage *aImage, TBool aExecptError) const;
40 TBool IsSolidColourL() const;
42 static TBool ComparePixel(TRgb aPixel1, TRgb aPixel2, TBool aExecptError);
46 static const TInt KImageCount;
49 class CTestCFbsImage: public CTestImage
52 static CTestCFbsImage *NewL(TInt aIndex);
54 virtual ~CTestCFbsImage();
55 virtual TRgb Pixel(TInt aX, TInt aY) const;
56 virtual TSize Size() const;
58 void ConstructL(TInt aIndex);
66 class CTestVgImage: public CTestImage
70 VGImageFormat iDataFormat;
73 static CTestVgImage *NewL(TInt aIndex);
75 virtual ~CTestVgImage();
76 virtual TRgb Pixel(TInt aX, TInt aY) const;
77 virtual TSize Size() const;
79 void ConstructL(TInt aIndex);
85 class CTestVgEglImage: public CTestVgImage
88 static CTestVgEglImage *New(EGLImageKHR aEglImage);
89 static CTestVgEglImage *NewL(EGLImageKHR aEglImage);
91 void ConstructL(EGLImageKHR aEglImage);
97 #endif // __EGLTEST_ENDPOINT_IMAGE_H__