亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? sdl_video.h

?? MPEG-4編解碼的實現(包括MPEG4視音頻編解碼)
?? H
?? 第 1 頁 / 共 3 頁
字號:
/*
    SDL - Simple DirectMedia Layer
    Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002  Sam Lantinga

    This library is free software; you can redistribute it and/or
    modify it under the terms of the GNU Library General Public
    License as published by the Free Software Foundation; either
    version 2 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
    Library General Public License for more details.

    You should have received a copy of the GNU Library General Public
    License along with this library; if not, write to the Free
    Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA

    Sam Lantinga
    slouken@libsdl.org
*/

#ifdef SAVE_RCSID
static char rcsid =
 "@(#) $Id: SDL_video.h,v 1.4 2002/04/22 21:38:01 wmay Exp $";
#endif

/* Header file for access to the SDL raw framebuffer window */

#ifndef _SDL_video_h
#define _SDL_video_h

#include <stdio.h>

#include "SDL_types.h"
#include "SDL_mutex.h"
#include "SDL_rwops.h"

#include "begin_code.h"
/* Set up for C function definitions, even when using C++ */
#ifdef __cplusplus
extern "C" {
#endif

/* Transparency definitions: These define alpha as the opacity of a surface */
#define SDL_ALPHA_OPAQUE 255
#define SDL_ALPHA_TRANSPARENT 0

/* Useful data types */
typedef struct {
	Sint16 x, y;
	Uint16 w, h;
} SDL_Rect;

typedef struct {
	Uint8 r;
	Uint8 g;
	Uint8 b;
	Uint8 unused;
} SDL_Color;

typedef struct {
	int       ncolors;
	SDL_Color *colors;
} SDL_Palette;

/* Everything in the pixel format structure is read-only */
typedef struct SDL_PixelFormat {
	SDL_Palette *palette;
	Uint8  BitsPerPixel;
	Uint8  BytesPerPixel;
	Uint8  Rloss;
	Uint8  Gloss;
	Uint8  Bloss;
	Uint8  Aloss;
	Uint8  Rshift;
	Uint8  Gshift;
	Uint8  Bshift;
	Uint8  Ashift;
	Uint32 Rmask;
	Uint32 Gmask;
	Uint32 Bmask;
	Uint32 Amask;

	/* RGB color key information */
	Uint32 colorkey;
	/* Alpha value information (per-surface alpha) */
	Uint8  alpha;
} SDL_PixelFormat;

/* typedef for private surface blitting functions */
struct SDL_Surface;
typedef int (*SDL_blit)(struct SDL_Surface *src, SDL_Rect *srcrect,
			struct SDL_Surface *dst, SDL_Rect *dstrect);

/* This structure should be treated as read-only, except for 'pixels',
   which, if not NULL, contains the raw pixel data for the surface.
*/
typedef struct SDL_Surface {
	Uint32 flags;				/* Read-only */
	SDL_PixelFormat *format;		/* Read-only */
	int w, h;				/* Read-only */
	Uint16 pitch;				/* Read-only */
	void *pixels;				/* Read-write */
	int offset;				/* Private */

	/* Hardware-specific surface info */
	struct private_hwdata *hwdata;

	/* clipping information */
	SDL_Rect clip_rect;			/* Read-only */
	Uint32 unused1;				/* for binary compatibility */

	/* Allow recursive locks */
	Uint32 locked;				/* Private */

	/* info for fast blit mapping to other surfaces */
	struct SDL_BlitMap *map;		/* Private */

	/* format version, bumped at every change to invalidate blit maps */
	unsigned int format_version;		/* Private */

	/* Reference count -- used when freeing surface */
	int refcount;				/* Read-mostly */
} SDL_Surface;

/* These are the currently supported flags for the SDL_surface */
/* Available for SDL_CreateRGBSurface() or SDL_SetVideoMode() */
#define SDL_SWSURFACE	0x00000000	/* Surface is in system memory */
#define SDL_HWSURFACE	0x00000001	/* Surface is in video memory */
#define SDL_ASYNCBLIT	0x00000004	/* Use asynchronous blits if possible */
/* Available for SDL_SetVideoMode() */
#define SDL_ANYFORMAT	0x10000000	/* Allow any video depth/pixel-format */
#define SDL_HWPALETTE	0x20000000	/* Surface has exclusive palette */
#define SDL_DOUBLEBUF	0x40000000	/* Set up double-buffered video mode */
#define SDL_FULLSCREEN	0x80000000	/* Surface is a full screen display */
#define SDL_OPENGL      0x00000002      /* Create an OpenGL rendering context */
#define SDL_OPENGLBLIT	0x0000000A	/* Create an OpenGL rendering context and use it for blitting */
#define SDL_RESIZABLE	0x00000010	/* This video mode may be resized */
#define SDL_NOFRAME	0x00000020	/* No window caption or edge frame */
/* Used internally (read-only) */
#define SDL_HWACCEL	0x00000100	/* Blit uses hardware acceleration */
#define SDL_SRCCOLORKEY	0x00001000	/* Blit uses a source color key */
#define SDL_RLEACCELOK	0x00002000	/* Private flag */
#define SDL_RLEACCEL	0x00004000	/* Surface is RLE encoded */
#define SDL_SRCALPHA	0x00010000	/* Blit uses source alpha blending */
#define SDL_PREALLOC	0x01000000	/* Surface uses preallocated memory */

/* Evaluates to true if the surface needs to be locked before access */
#define SDL_MUSTLOCK(surface)	\
  (surface->offset ||		\
  ((surface->flags & (SDL_HWSURFACE|SDL_ASYNCBLIT|SDL_RLEACCEL)) != 0))


/* Useful for determining the video hardware capabilities */
typedef struct {
	Uint32 hw_available :1;	/* Flag: Can you create hardware surfaces? */
	Uint32 wm_available :1;	/* Flag: Can you talk to a window manager? */
	Uint32 UnusedBits1  :6;
	Uint32 UnusedBits2  :1;
	Uint32 blit_hw      :1;	/* Flag: Accelerated blits HW --> HW */
	Uint32 blit_hw_CC   :1;	/* Flag: Accelerated blits with Colorkey */
	Uint32 blit_hw_A    :1;	/* Flag: Accelerated blits with Alpha */
	Uint32 blit_sw      :1;	/* Flag: Accelerated blits SW --> HW */
	Uint32 blit_sw_CC   :1;	/* Flag: Accelerated blits with Colorkey */
	Uint32 blit_sw_A    :1;	/* Flag: Accelerated blits with Alpha */
	Uint32 blit_fill    :1;	/* Flag: Accelerated color fill */
	Uint32 UnusedBits3  :16;
	Uint32 video_mem;	/* The total amount of video memory (in K) */
	SDL_PixelFormat *vfmt;	/* Value: The format of the video surface */
} SDL_VideoInfo;


/* The most common video overlay formats.
   For an explanation of these pixel formats, see:
	http://www.webartz.com/fourcc/indexyuv.htm

   For information on the relationship between color spaces, see:
   http://www.neuro.sfc.keio.ac.jp/~aly/polygon/info/color-space-faq.html
 */
#define SDL_YV12_OVERLAY  0x32315659	/* Planar mode: Y + V + U  (3 planes) */
#define SDL_IYUV_OVERLAY  0x56555949	/* Planar mode: Y + U + V  (3 planes) */
#define SDL_YUY2_OVERLAY  0x32595559	/* Packed mode: Y0+U0+Y1+V0 (1 plane) */
#define SDL_UYVY_OVERLAY  0x59565955	/* Packed mode: U0+Y0+V0+Y1 (1 plane) */
#define SDL_YVYU_OVERLAY  0x55595659	/* Packed mode: Y0+V0+Y1+U0 (1 plane) */

/* The YUV hardware video overlay */
typedef struct SDL_Overlay {
	Uint32 format;				/* Read-only */
	int w, h;				/* Read-only */
	int planes;				/* Read-only */
	Uint16 *pitches;			/* Read-only */
	Uint8 **pixels;				/* Read-write */

	/* Hardware-specific surface info */
	struct private_yuvhwfuncs *hwfuncs;
	struct private_yuvhwdata *hwdata;

	/* Special flags */
	Uint32 hw_overlay :1;	/* Flag: This overlay hardware accelerated? */
	Uint32 UnusedBits :31;
} SDL_Overlay;


/* Public enumeration for setting the OpenGL window attributes. */
typedef enum {
    SDL_GL_RED_SIZE,
    SDL_GL_GREEN_SIZE,
    SDL_GL_BLUE_SIZE,
    SDL_GL_ALPHA_SIZE,
    SDL_GL_BUFFER_SIZE,
    SDL_GL_DOUBLEBUFFER,
    SDL_GL_DEPTH_SIZE,
    SDL_GL_STENCIL_SIZE,
    SDL_GL_ACCUM_RED_SIZE,
    SDL_GL_ACCUM_GREEN_SIZE,
    SDL_GL_ACCUM_BLUE_SIZE,
    SDL_GL_ACCUM_ALPHA_SIZE
} SDL_GLattr;

/* flags for SDL_SetPalette() */
#define SDL_LOGPAL 0x01
#define SDL_PHYSPAL 0x02

/* Function prototypes */

/* These functions are used internally, and should not be used unless you
 * have a specific need to specify the video driver you want to use.
 * You should normally use SDL_Init() or SDL_InitSubSystem().
 *
 * SDL_VideoInit() initializes the video subsystem -- sets up a connection
 * to the window manager, etc, and determines the current video mode and
 * pixel format, but does not initialize a window or graphics mode.
 * Note that event handling is activated by this routine.
 *
 * If you use both sound and video in your application, you need to call
 * SDL_Init() before opening the sound device, otherwise under Win32 DirectX,
 * you won't be able to set full-screen display modes.
 */
extern DECLSPEC int SDLCALL SDL_VideoInit(const char *driver_name, Uint32 flags);
extern DECLSPEC void SDLCALL SDL_VideoQuit(void);

/* This function fills the given character buffer with the name of the
 * video driver, and returns a pointer to it if the video driver has
 * been initialized.  It returns NULL if no driver has been initialized.
 */
extern DECLSPEC char * SDLCALL SDL_VideoDriverName(char *namebuf, int maxlen);

/*
 * This function returns a pointer to the current display surface.
 * If SDL is doing format conversion on the display surface, this
 * function returns the publicly visible surface, not the real video
 * surface.
 */
extern DECLSPEC SDL_Surface * SDLCALL SDL_GetVideoSurface(void);

/*
 * This function returns a read-only pointer to information about the
 * video hardware.  If this is called before SDL_SetVideoMode(), the 'vfmt'
 * member of the returned structure will contain the pixel format of the
 * "best" video mode.
 */
extern DECLSPEC const SDL_VideoInfo * SDLCALL SDL_GetVideoInfo(void);

/* 
 * Check to see if a particular video mode is supported.
 * It returns 0 if the requested mode is not supported under any bit depth,
 * or returns the bits-per-pixel of the closest available mode with the
 * given width and height.  If this bits-per-pixel is different from the
 * one used when setting the video mode, SDL_SetVideoMode() will succeed,
 * but will emulate the requested bits-per-pixel with a shadow surface.
 *
 * The arguments to SDL_VideoModeOK() are the same ones you would pass to
 * SDL_SetVideoMode()
 */
extern DECLSPEC int SDLCALL SDL_VideoModeOK(int width, int height, int bpp, Uint32 flags);

/*
 * Return a pointer to an array of available screen dimensions for the
 * given format and video flags, sorted largest to smallest.  Returns 
 * NULL if there are no dimensions available for a particular format, 
 * or (SDL_Rect **)-1 if any dimension is okay for the given format.
 *
 * If 'format' is NULL, the mode list will be for the format given 
 * by SDL_GetVideoInfo()->vfmt
 */
extern DECLSPEC SDL_Rect ** SDLCALL SDL_ListModes(SDL_PixelFormat *format, Uint32 flags);

/*
 * Set up a video mode with the specified width, height and bits-per-pixel.
 *
 * If 'bpp' is 0, it is treated as the current display bits per pixel.
 *
 * If SDL_ANYFORMAT is set in 'flags', the SDL library will try to set the
 * requested bits-per-pixel, but will return whatever video pixel format is
 * available.  The default is to emulate the requested pixel format if it
 * is not natively available.
 *

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
一区二区欧美国产| 美女诱惑一区二区| 日韩欧美一级在线播放| www.久久精品| 老司机免费视频一区二区三区| 亚洲欧洲av在线| 精品久久国产老人久久综合| 在线观看av不卡| 国产91对白在线观看九色| 七七婷婷婷婷精品国产| av一二三不卡影片| 韩国三级中文字幕hd久久精品| 亚洲午夜私人影院| 亚洲欧美成aⅴ人在线观看| 国产日韩欧美不卡在线| 欧美一区二区三区在线| 欧美日韩精品一二三区| 91麻豆6部合集magnet| 国产91在线|亚洲| 国产最新精品免费| 免费欧美在线视频| 偷拍亚洲欧洲综合| 亚洲电影在线播放| 中文字幕字幕中文在线中不卡视频| 久久久91精品国产一区二区精品| 91精品欧美福利在线观看 | 色播五月激情综合网| 国产98色在线|日韩| 狠狠久久亚洲欧美| 蜜臀精品久久久久久蜜臀| 香蕉成人伊视频在线观看| 亚洲欧美激情插| 亚洲青青青在线视频| 国产精品美女久久久久久| 国产日韩欧美激情| 久久久久久久久久美女| 精品国产91乱码一区二区三区 | 亚洲欧美aⅴ...| 一区精品在线播放| 亚洲精品乱码久久久久久日本蜜臀| 国产精品国产三级国产普通话蜜臀 | 麻豆精品蜜桃视频网站| 毛片av一区二区| 久久se这里有精品| 国产一区二区三区| 国产河南妇女毛片精品久久久| 高清日韩电视剧大全免费| 成人黄色免费短视频| 91视视频在线观看入口直接观看www| 白白色亚洲国产精品| av资源网一区| 欧美在线视频日韩| 91麻豆精品国产自产在线观看一区 | 亚洲欧美激情视频在线观看一区二区三区 | 亚洲黄一区二区三区| 亚洲制服丝袜av| 亚洲18女电影在线观看| 五月天久久比比资源色| 强制捆绑调教一区二区| 国产曰批免费观看久久久| 国产高清精品在线| 色综合天天在线| 欧美日产在线观看| 欧美大片免费久久精品三p| 国产亚洲精品超碰| 亚洲嫩草精品久久| 日韩vs国产vs欧美| 国产91在线观看丝袜| 欧美在线一区二区| 精品久久久三级丝袜| 国产精品不卡一区二区三区| 亚洲成人av一区二区三区| 韩日精品视频一区| 97成人超碰视| 日韩一卡二卡三卡| 自拍偷拍亚洲欧美日韩| 日本中文字幕一区二区有限公司| 国产成人综合亚洲91猫咪| 色综合久久久久综合体桃花网| 3d动漫精品啪啪一区二区竹菊 | 久久综合狠狠综合久久激情 | 精品国产欧美一区二区| 国产精品久久久久婷婷二区次| 亚洲一级二级在线| 国产一区二区三区在线观看免费视频 | 亚洲另类中文字| 久久69国产一区二区蜜臀| 91免费小视频| 精品久久国产字幕高潮| 亚洲精品你懂的| 国产一区二区三区在线观看免费| 色老汉av一区二区三区| 久久久久久毛片| 亚洲伊人伊色伊影伊综合网| 国产精品亚洲一区二区三区妖精| 欧美羞羞免费网站| 久久久精品人体av艺术| 亚洲成人激情自拍| 成人爽a毛片一区二区免费| 7777精品伊人久久久大香线蕉的 | 国产.精品.日韩.另类.中文.在线.播放| 91福利视频久久久久| 国产婷婷一区二区| 日韩电影在线一区二区| 一本久久a久久精品亚洲| 国产丝袜美腿一区二区三区| 日本色综合中文字幕| 日本福利一区二区| 18成人在线观看| 丁香婷婷深情五月亚洲| 日韩精品一区二区三区视频| 亚洲在线视频网站| 91老师片黄在线观看| 久久久99久久精品欧美| 喷白浆一区二区| 欧美日本韩国一区二区三区视频| 亚洲免费在线观看视频| 成人毛片在线观看| 久久精品人人爽人人爽| 麻豆91精品91久久久的内涵| 欧美猛男男办公室激情| 亚洲一区二区三区精品在线| 91蜜桃传媒精品久久久一区二区| 国产午夜久久久久| 狠狠久久亚洲欧美| 亚洲精品一线二线三线| 精品综合久久久久久8888| 日韩欧美高清dvd碟片| 日本在线不卡视频| 69堂精品视频| 日韩综合一区二区| 日韩欧美中文字幕一区| 麻豆精品在线视频| 日韩欧美国产综合在线一区二区三区 | 一区精品在线播放| 91在线观看高清| 自拍偷拍亚洲欧美日韩| 91丨porny丨首页| 亚洲精品你懂的| 欧美午夜精品久久久久久超碰| 一区二区三区在线观看动漫| 91国偷自产一区二区开放时间| 最近中文字幕一区二区三区| jizzjizzjizz欧美| 一级精品视频在线观看宜春院 | 国产欧美日韩视频在线观看| 国产精品影视在线观看| 国产精品美女久久久久aⅴ| 波多野结衣在线一区| 亚洲视频在线一区观看| 91精品福利视频| 首页综合国产亚洲丝袜| 日韩精品专区在线影院观看| 国产精品系列在线观看| 亚洲视频一区二区在线| 欧美日韩视频专区在线播放| 免费观看成人av| 国产午夜亚洲精品羞羞网站| 99久久精品情趣| 亚洲国产综合色| 日韩一级免费观看| 成人综合在线观看| 亚洲福利视频一区| xnxx国产精品| 99精品视频一区二区| 日韩精品欧美精品| 国产午夜一区二区三区| 色激情天天射综合网| 免费欧美高清视频| 中文字幕亚洲区| 欧美精品在线观看播放| 国产成人自拍在线| 一级中文字幕一区二区| 欧美精品一区二区蜜臀亚洲| www.av精品| 美女免费视频一区二区| 国产精品美女www爽爽爽| 欧美日韩午夜在线| 国产91丝袜在线18| 视频一区二区三区中文字幕| 久久九九久精品国产免费直播| 国产精品麻豆久久久| 欧美日韩国产一区二区三区地区| 国产一区二区三区| 午夜免费久久看| 国产精品久久久久久久久快鸭| 欧美久久久久久久久中文字幕| 国产91丝袜在线18| 毛片一区二区三区| 亚洲综合色丁香婷婷六月图片| 久久嫩草精品久久久精品一| 欧美日韩另类国产亚洲欧美一级| 国产精选一区二区三区| 香港成人在线视频| 亚洲欧洲成人精品av97| 久久一区二区三区国产精品| 欧美日韩另类一区| 色综合天天综合网国产成人综合天 | 国产精品久久午夜夜伦鲁鲁| 91精品国产欧美一区二区|