diff -r 000000000000 -r 5d03bc08d59c egl/egltest/src/egltestcommonconversion.cpp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/egl/egltest/src/egltestcommonconversion.cpp Tue Feb 02 01:47:50 2010 +0200 @@ -0,0 +1,147 @@ +// Copyright (c) 2007-2009 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: +// + +/** + @file + @test +*/ + +#include "egltestcommonconversion.h" + +EXPORT_C TEglTestConfig EglTestConversion::VgFormatToWindowSurfaceFormat(VGImageFormat aVgFormat) + { + switch(aVgFormat) + { + case VG_sRGB_565: + return EWindowAttribsColor64K; + case VG_sARGB_8888: + return EWindowAttribsColor16MA; + case VG_sARGB_8888_PRE: + return EWindowAttribsColor16MAP; + default: + return EEglTestConfigMax; + } + } + +EXPORT_C TEglTestConfig EglTestConversion::VgFormatToPBufferSurfaceFormat(VGImageFormat aVgFormat) + { + switch(aVgFormat) + { + case VG_sRGB_565: + return EPBufferAttribsColor64K; + case VG_sXRGB_8888: + return EPBufferAttribsColor16MU; + case VG_sARGB_8888: + return EPBufferAttribsColor16MA; + case VG_sARGB_8888_PRE: + return EPBufferAttribsColor16MAP; + default: + return EEglTestConfigMax; + } + } + +EXPORT_C TEglTestConfig EglTestConversion::VgFormatToPixmapSgSurfaceFormat(VGImageFormat aVgFormat) + { + switch(aVgFormat) + { + case VG_sRGB_565: + return EPixmapAttribsColor64K; + case VG_sXRGB_8888: + return EPixmapAttribsColor16MU; + case VG_sARGB_8888_PRE: + return EPixmapAttribsColor16MAP; + default: + return EEglTestConfigMax; + } + } + +EXPORT_C TUidPixelFormat EglTestConversion::VgFormatToSgPixelFormat(VGImageFormat aVgFormat) + { + switch(aVgFormat) + { + case VG_sRGB_565: + return EUidPixelFormatRGB_565; + case VG_sXRGB_8888: + return EUidPixelFormatXRGB_8888; + case VG_sARGB_8888: + return EUidPixelFormatARGB_8888; + case VG_sARGB_8888_PRE: + return EUidPixelFormatARGB_8888_PRE; + case VG_A_8: + return EUidPixelFormatA_8; + default: + return EUidPixelFormatUnknown; + } + } + +EXPORT_C VGImageFormat EglTestConversion::PixelFormatToVgFormat(TUidPixelFormat aPixelFormat) + { + switch(aPixelFormat) + { + case EUidPixelFormatRGB_565: + return VG_sRGB_565; + case EUidPixelFormatXRGB_8888: + return VG_sXRGB_8888; + case EUidPixelFormatARGB_8888: + return VG_sARGB_8888; + case EUidPixelFormatARGB_8888_PRE: + return VG_sARGB_8888_PRE; + case EUidPixelFormatA_8: + return VG_A_8; + default: + return VG_IMAGE_FORMAT_INVALID; + } + } + +EXPORT_C TDisplayMode EglTestConversion::PixelFormatToDisplayMode(TUidPixelFormat aPixelFormat) + { + switch(aPixelFormat) + { + case EUidPixelFormatRGB_565: + return EColor64K; + case EUidPixelFormatXRGB_8888: + return EColor16MU; + case EUidPixelFormatARGB_8888: + return EColor16MA; + case EUidPixelFormatARGB_8888_PRE: + return EColor16MAP; + case EUidPixelFormatA_8: + return EGray256; + default: + return ENone; + } + } + +EXPORT_C TDisplayMode EglTestConversion::VgFormatToDisplayMode(VGImageFormat aVgFormat) + { + return PixelFormatToDisplayMode( VgFormatToSgPixelFormat(aVgFormat) ); + } + +EXPORT_C TInt EglTestConversion::BytePerPixel(TUidPixelFormat aPixelFormat) + { + switch(aPixelFormat) + { + case EUidPixelFormatRGB_565: + return 2; + case EUidPixelFormatXRGB_8888: + case EUidPixelFormatARGB_8888: + case EUidPixelFormatARGB_8888_PRE: + return 4; + case EUidPixelFormatA_8: + return 1; + default: + return 0; + } + }