sl@0: // Copyright (c) 2008-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 the License "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: // pixel format UIDs
sl@0: // More details, e.g. the lay-out of each pixel formats, are found in the document "Pixel Formats"
sl@0: // //EPOC/master/cedar/generic/base/documentation/Base_Pixel_Formats.doc
sl@0: // 
sl@0: //
sl@0: 
sl@0: /**
sl@0:  @file
sl@0:  @publishedPartner
sl@0:  @prototype
sl@0: */
sl@0: 
sl@0: #ifndef __PIXELFORMATS_H__
sl@0: #define __PIXELFORMATS_H__
sl@0: 
sl@0: typedef enum
sl@0: 	{
sl@0: 	/**
sl@0: 	 Unknown pixel format
sl@0: 	 */
sl@0: 	EUidPixelFormatUnknown = 0,
sl@0: 	/**
sl@0: 	 32-bit RGB pixel format without alpha, with 8 bits are reserved for each color
sl@0: 	 */
sl@0: 	EUidPixelFormatXRGB_8888 = 0x10275496,
sl@0: 	/**
sl@0: 	 32-bit BGR pixel format without alpha, where 8 bits are reserved for each color
sl@0: 	 */
sl@0: 	EUidPixelFormatBGRX_8888 = 0x102754A8,
sl@0: 	/**
sl@0: 	 32-bit BGR pixel format without alpha, where 8 bits are reserved for each color
sl@0: 	 */
sl@0: 	EUidPixelFormatXBGR_8888 = 0x10273766,
sl@0: 	/**
sl@0: 	 32-bit BGRA pixel format with alpha, using 8 bits per channel
sl@0: 	 */
sl@0: 	EUidPixelFormatBGRA_8888 = 0x102754A9,
sl@0: 	/**
sl@0: 	 32-bit ARGB pixel format with alpha, using 8 bits per channel
sl@0: 	 */
sl@0: 	EUidPixelFormatARGB_8888 = 0x10275498,
sl@0: 	/**
sl@0: 	 32-bit ABGR pixel format with alpha, using 8 bits per channel
sl@0: 	 */
sl@0: 	EUidPixelFormatABGR_8888 = 0x10275499,
sl@0: 	/**
sl@0: 	 32-bit ARGB pixel format with alpha (pre-multiplied), using 8 bits per channel
sl@0: 	 */
sl@0: 	EUidPixelFormatARGB_8888_PRE = 0x1027549A,
sl@0: 	/**
sl@0: 	 32-bit ABGR pixel format with alpha (pre-multiplied), using 8 bits per channel
sl@0: 	 */
sl@0: 	EUidPixelFormatABGR_8888_PRE = 0x1027549B,
sl@0: 	/**
sl@0: 	 32-bit BGRA pixel format with alpha (pre-multiplied), using 8 bits per channel
sl@0: 	 */
sl@0: 	EUidPixelFormatBGRA_8888_PRE = 0x10275497,
sl@0: 	/**
sl@0: 	 32-bit pixel format using 10 bits each for red, green, and blue, and 2 bits for
sl@0: 	 alpha
sl@0: 	 */
sl@0: 	EUidPixelFormatARGB_2101010 = 0x1027549D,
sl@0: 	/**
sl@0: 	 32-bit pixel format using 10 bits each for blue, green, and red color and 2
sl@0: 	 bits for alpha
sl@0: 	 */
sl@0: 	EUidPixelFormatABGR_2101010 = 0x1027549C,
sl@0: 	/**
sl@0: 	 24-bit BGR pixel format with 8 bits per channel
sl@0: 	 */
sl@0: 	EUidPixelFormatBGR_888 = 0x102754A7,
sl@0: 	/**
sl@0: 	 24-bit RGB pixel format with 8 bits per channel
sl@0: 	 */
sl@0: 	EUidPixelFormatRGB_888 = 0x10275495,
sl@0: 	/**
sl@0: 	 16-bit RGB pixel format with 5 bits for red, 6 bits for green, and 5 bits for
sl@0: 	 blue
sl@0: 	 */
sl@0: 	EUidPixelFormatRGB_565 = 0x1027549E,
sl@0: 	/**
sl@0: 	 16-bit BGR pixel format with 5 bits for blue, 6 bits for green, and 5 bits for
sl@0: 	 red
sl@0: 	 */
sl@0: 	EUidPixelFormatBGR_565 = 0x10273765,
sl@0: 	/**
sl@0: 	 16-bit pixel format where 5 bits are reserved for each color and 1 bit is
sl@0: 	 reserved for alpha
sl@0: 	 */
sl@0: 	EUidPixelFormatARGB_1555 = 0x1027549F,
sl@0: 	/**
sl@0: 	 16-bit pixel format where 5 bits are reserved for each color
sl@0: 	 */
sl@0: 	EUidPixelFormatXRGB_1555 = 0x102754A0,
sl@0: 	/**
sl@0: 	 16-bit ARGB pixel format with 4 bits for each channel
sl@0: 	 */
sl@0: 	EUidPixelFormatARGB_4444 = 0x102754A1,
sl@0: 	/**
sl@0: 	 16-bit ARGB texture format using 8 bits for alpha, 3 bits each for red and
sl@0: 	 green, and 2 bits for blue
sl@0: 	 */
sl@0: 	EUidPixelFormatARGB_8332 = 0x102754A4,
sl@0: 	/**
sl@0: 	 16-bit pixel format where 5 bits are reserved for each color
sl@0: 	 */
sl@0: 	EUidPixelFormatBGRX_5551 = 0x102754A5,
sl@0: 	/**
sl@0: 	 16-bit pixel format where 5 bits are reserved for each color and 1 bit is reserved for alpha
sl@0: 	 */
sl@0: 	EUidPixelFormatBGRA_5551 = 0x102754AA,
sl@0: 	/**
sl@0: 	 16-bit BGRA pixel format with 4 bits for each channel
sl@0: 	 */
sl@0: 	EUidPixelFormatBGRA_4444 = 0x102754AC,
sl@0: 	/**
sl@0: 	 16-bit RGB pixel format using 4 bits for each color, without alpha channel
sl@0: 	 */
sl@0: 	EUidPixelFormatBGRX_4444 = 0x102754A6,
sl@0: 	/**
sl@0: 	 16-bit color indexed with 8 bits of alpha
sl@0: 	 */
sl@0: 	EUidPixelFormatAP_88 = 0x102754AB,
sl@0: 	/**
sl@0: 	 16-bit RGB pixel format using 4 bits for each color, without alpha channel
sl@0: 	 */
sl@0: 	EUidPixelFormatXRGB_4444 = 0x10273764,
sl@0: 	/**
sl@0: 	 16-bit BGR pixel format using 4 bits for each color, without alpha channel
sl@0: 	 */
sl@0: 	EUidPixelFormatXBGR_4444 = 0x102754B0,
sl@0: 	/**
sl@0: 	 8-bit RGB texture format using 3 bits for red, 3 bits for green, and 2 bits for blue
sl@0: 	 */
sl@0: 	EUidPixelFormatRGB_332 = 0x102754A2,
sl@0: 	/**
sl@0: 	 8-bit alpha only
sl@0: 	 */
sl@0: 	EUidPixelFormatA_8 = 0x102754A3,
sl@0: 	/**
sl@0: 	 8-bit BGR texture format using 3 bits for blue, 3 bits for green, and 2 bits for red
sl@0: 	 */
sl@0: 	EUidPixelFormatBGR_332 = 0x102754B1,
sl@0: 	/**
sl@0: 	 8-bit indexed (i.e. has a palette)
sl@0: 	 */
sl@0: 	EUidPixelFormatP_8 = 0x10273763,
sl@0: 	/**
sl@0: 	 4-bit indexed (i.e. has a palette)
sl@0: 	 */
sl@0: 	EUidPixelFormatP_4 = 0x102754AD,
sl@0: 	/**
sl@0: 	 2-bit indexed (i.e. has a palette)
sl@0: 	 */
sl@0: 	EUidPixelFormatP_2 = 0x102754AE,
sl@0: 	/**
sl@0: 	 1-bit indexed (i.e. has a palette)
sl@0: 	 */
sl@0: 	EUidPixelFormatP_1 = 0x102754AF,
sl@0: 	/**
sl@0: 	 YUV - 4:2:0 format, 8 bits per sample, Y00Y01Y10Y11UV.
sl@0: 	 */
sl@0: 	EUidPixelFormatYUV_420Interleaved = 0x10273767,
sl@0: 	/**
sl@0: 	 YUV - Three arrays Y, U, V. 4:2:0 format, 8 bits per sample, Y00Y01Y02Y03...U0...V0...
sl@0: 	 */
sl@0: 	EUidPixelFormatYUV_420Planar = 0x10273768,
sl@0: 	/**
sl@0: 	 YUV 4:2:0 image format. Planar, 12 bits per pixel, Pixel order: Y00Y01Y02Y03...V0...U0...
sl@0: 	 */
sl@0: 	EUidPixelFormatYUV_420PlanarReversed = 0x1027376D,
sl@0: 	/**
sl@0: 	 YUV - Two arrays, one is all Y, the other is U and V. 4:2:0 format, 8 bits per sample, Y00Y01Y02Y03...U0V0...
sl@0: 	 */
sl@0: 	EUidPixelFormatYUV_420SemiPlanar = 0x1027376C,
sl@0: 	/**
sl@0: 	 YUV - Organized as UYVY. 4:2:2 format, 8 bits per sample, UY0VY1
sl@0: 	 */
sl@0: 	EUidPixelFormatYUV_422Interleaved = 0x10273769,
sl@0: 	/**
sl@0: 	 YUV - Three arrays Y, U, V
sl@0: 	 */
sl@0: 	EUidPixelFormatYUV_422Planar = 0x102737DA,
sl@0: 	/**
sl@0: 	 YUV - Organized as YUYV. 4:2:2 format, 8 bits per sample, Y0UY1V
sl@0: 	 */
sl@0: 	EUidPixelFormatYUV_422Reversed = 0x102754B2,
sl@0: 	/**
sl@0: 	 YUV - Two arrays, one is all Y, the other is U and V
sl@0: 	 */
sl@0: 	EUidPixelFormatYUV_422SemiPlanar = 0x102754B3,
sl@0: 	/**
sl@0: 	 YUV 4:2:2 image format. 16 bits per pixel, 8 bits per sample, Pixel order: Y1VY0U.
sl@0: 	 */
sl@0: 	EUidPixelFormatYUV_422InterleavedReversed = 0x1027376A,
sl@0: 	/**
sl@0: 	 YUV 4:2:2 image format. Interleaved, 16 bits per pixel, 8 bits per sample, Pixel order: Y0Y1UV.
sl@0: 	 */
sl@0: 	EUidPixelFormatYUV_422Interleaved16bit = 0x102737D9,
sl@0: 	/**
sl@0: 	 YUV - 4:4:4 format, each pixel contains equal parts YUV
sl@0: 	 */
sl@0: 	EUidPixelFormatYUV_444Interleaved = 0x1027376B,
sl@0: 	/**
sl@0: 	 YUV - 4:4:4 format, three arrays Y, U, V
sl@0: 	 */
sl@0: 	EUidPixelFormatYUV_444Planar = 0x102737DB,
sl@0: 	/**
sl@0: 	 8-bit grayscale.
sl@0: 	 */
sl@0: 	EUidPixelFormatL_8 = 0x102858EC,
sl@0: 	/**
sl@0: 	 4-bit grayscale.
sl@0: 	 */
sl@0: 	EUidPixelFormatL_4 = 0x102858ED,
sl@0: 	/**
sl@0: 	 2-bit grayscale.
sl@0: 	 */
sl@0: 	EUidPixelFormatL_2 = 0x102858EE,
sl@0: 	/**
sl@0: 	 1-bit grayscale (monochrome).
sl@0: 	 */
sl@0: 	EUidPixelFormatL_1 = 0x102858EF,
sl@0: 	/**
sl@0: 	 Speed Tagged JPEG
sl@0: 	 */
sl@0: 	EUidPixelFormatSpeedTaggedJPEG = 0x102869FB,
sl@0: 	/**
sl@0: 	 JPEG
sl@0: 	*/
sl@0: 	EUidPixelFormatJPEG = 0x102869FC
sl@0: 
sl@0: 	} TUidPixelFormat;
sl@0: 
sl@0: #endif