Mercurial > sdl-ios-xcode
diff src/video/qnxgf/SDL_gf_pixelfmt.c @ 3087:0b6f51c29267
Date: Wed, 4 Mar 2009 15:38:22 +0200
From: "Mike Gorchak"
Subject: Re: About QNX support in SDL 1.3
Here is another batch of patches.
1) Makefile.in - added SDL_opengles.h header as header to install.
2) configure.in - Added special define to detect Common Lite OpenGL ES
library in case if Common library is not installed. Added check for
clock_gettime in libc (in QNX it is in libc).
3) SDL_config.h.in - Added SDL_VIDEO_RENDER_OPENGL_ES and
SDL_VIDEO_OPENGL_ES declarations for configure script autodetection.
4) SDL_opengles.h - Added GL_API definition if it is not defined. Added
extension GL_OES_draw_texture because OpenGL ES Renderer uses it without
declaration. Added GL_OES_vertex_buffer_object extension, which is supported
under QNX OpenGL ES. Added GL_OES_single_precision extension.
5) To the test directory I've added building OpenGL ES test applications
through the autotools suite. Was support for iPhone IDE building only.
author | Sam Lantinga <slouken@libsdl.org> |
---|---|
date | Wed, 04 Mar 2009 15:10:47 +0000 |
parents | |
children | cad1aefa2ed9 |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/video/qnxgf/SDL_gf_pixelfmt.c Wed Mar 04 15:10:47 2009 +0000 @@ -0,0 +1,168 @@ +/* + SDL - Simple DirectMedia Layer + Copyright (C) 1997-2009 Sam Lantinga + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + + Sam Lantinga + slouken@libsdl.org +*/ + +#include "SDL_config.h" +#include "SDL_gf_pixelfmt.h" + +gf_format_t qnxgf_sdl_to_gf_pixelformat(uint32_t pixelfmt) +{ + switch(pixelfmt) + { + case SDL_PIXELFORMAT_INDEX8: + { + return GF_FORMAT_PAL8; + } + break; + case SDL_PIXELFORMAT_ARGB1555: + { + return GF_FORMAT_PACK_ARGB1555; + } + break; + case SDL_PIXELFORMAT_ABGR1555: + { + return GF_FORMAT_PACK_ARGB1555; + } + break; + case SDL_PIXELFORMAT_RGB565: + { + return GF_FORMAT_PACK_RGB565; + } + break; + case SDL_PIXELFORMAT_RGB888: + { + return GF_FORMAT_BGR888; + } + break; + case SDL_PIXELFORMAT_BGRA8888: + { + return GF_FORMAT_BGRA8888; + } + break; + case SDL_PIXELFORMAT_ARGB8888: + { + return GF_FORMAT_ARGB8888; + } + break; + case SDL_PIXELFORMAT_YV12: + { + return GF_FORMAT_PLANAR_YUV_YV12; + } + break; + case SDL_PIXELFORMAT_YUY2: + { + return GF_FORMAT_PACK_YUV_YUY2; + } + break; + case SDL_PIXELFORMAT_UYVY: + { + return GF_FORMAT_PACK_YUV_UYVY; + } + break; + case SDL_PIXELFORMAT_YVYU: + { + return GF_FORMAT_PACK_YUV_YVYU; + } + break; + } + + return GF_FORMAT_INVALID; +} + +uint32_t qnxgf_gf_to_sdl_pixelformat(gf_format_t pixelfmt) +{ + switch(pixelfmt) + { + case GF_FORMAT_PAL8: + { + return SDL_PIXELFORMAT_INDEX8; + } + break; + case GF_FORMAT_PKLE_ARGB1555: + { + return SDL_PIXELFORMAT_ARGB1555; + } + break; + case GF_FORMAT_PACK_ARGB1555: + { + return SDL_PIXELFORMAT_ARGB1555; + } + break; + case GF_FORMAT_PKBE_ARGB1555: + { + return SDL_PIXELFORMAT_ABGR1555; + } + break; + case GF_FORMAT_PKBE_RGB565: + { + return SDL_PIXELFORMAT_RGB565; + } + break; + case GF_FORMAT_PKLE_RGB565: + { + return SDL_PIXELFORMAT_RGB565; + } + break; + case GF_FORMAT_PACK_RGB565: + { + return SDL_PIXELFORMAT_RGB565; + } + break; + case GF_FORMAT_BGR888: + { + return SDL_PIXELFORMAT_RGB888; + } + break; + case GF_FORMAT_BGRA8888: + { + return SDL_PIXELFORMAT_BGRA8888; + } + break; + case GF_FORMAT_ARGB8888: + { + return SDL_PIXELFORMAT_ARGB8888; + } + break; + + case GF_FORMAT_PLANAR_YUV_YV12: + { + return SDL_PIXELFORMAT_YV12; + } + break; + case GF_FORMAT_PACK_YUV_YUY2: + { + return SDL_PIXELFORMAT_YUY2; + } + break; + case GF_FORMAT_PACK_YUV_UYVY: + { + return SDL_PIXELFORMAT_UYVY; + } + break; + case GF_FORMAT_PACK_YUV_YVYU: + { + return SDL_PIXELFORMAT_YVYU; + } + break; + } + + return SDL_PIXELFORMAT_UNKNOWN; +}