/Users/hercules/trunk/SDL/include/SDL_surface.h File Reference

#include "SDL_stdinc.h"
#include "SDL_pixels.h"
#include "SDL_rect.h"
#include "SDL_rwops.h"
#include "begin_code.h"
#include "close_code.h"

Go to the source code of this file.

Data Structures

struct  SDL_Surface
 A collection of pixels used in software blitting. More...

Defines

#define SDL_PREALLOC   0x00000001
#define SDL_RLEACCEL   0x00000002
#define SDL_MUSTLOCK(S)   (((S)->flags & SDL_RLEACCEL) != 0)
#define SDL_LoadBMP(file)   SDL_LoadBMP_RW(SDL_RWFromFile(file, "rb"), 1)
#define SDL_SaveBMP(surface, file)   SDL_SaveBMP_RW(surface, SDL_RWFromFile(file, "wb"), 1)
#define SDL_BlitSurface   SDL_UpperBlit

Typedefs

typedef int(* SDL_blit )(struct SDL_Surface *src, SDL_Rect *srcrect, struct SDL_Surface *dst, SDL_Rect *dstrect)
 The type of function used for surface blitting functions.

Functions

DECLSPEC SDL_Surface *SDLCALL SDL_CreateRGBSurface (Uint32 flags, int width, int height, int depth, Uint32 Rmask, Uint32 Gmask, Uint32 Bmask, Uint32 Amask)
DECLSPEC SDL_Surface *SDLCALL SDL_CreateRGBSurfaceFrom (void *pixels, int width, int height, int depth, int pitch, Uint32 Rmask, Uint32 Gmask, Uint32 Bmask, Uint32 Amask)
DECLSPEC void SDLCALL SDL_FreeSurface (SDL_Surface *surface)
DECLSPEC int SDLCALL SDL_SetSurfacePalette (SDL_Surface *surface, SDL_Palette *palette)
 Set the palette used by a surface.
DECLSPEC int SDLCALL SDL_LockSurface (SDL_Surface *surface)
DECLSPEC void SDLCALL SDL_UnlockSurface (SDL_Surface *surface)
DECLSPEC SDL_Surface *SDLCALL SDL_LoadBMP_RW (SDL_RWops *src, int freesrc)
DECLSPEC int SDLCALL SDL_SaveBMP_RW (SDL_Surface *surface, SDL_RWops *dst, int freedst)
DECLSPEC int SDLCALL SDL_SetSurfaceRLE (SDL_Surface *surface, int flag)
DECLSPEC int SDLCALL SDL_SetColorKey (SDL_Surface *surface, Uint32 flag, Uint32 key)
DECLSPEC int SDLCALL SDL_GetColorKey (SDL_Surface *surface, Uint32 *key)
DECLSPEC int SDLCALL SDL_SetSurfaceColorMod (SDL_Surface *surface, Uint8 r, Uint8 g, Uint8 b)
 Set an additional color value used in blit operations.
DECLSPEC int SDLCALL SDL_GetSurfaceColorMod (SDL_Surface *surface, Uint8 *r, Uint8 *g, Uint8 *b)
 Get the additional color value used in blit operations.
DECLSPEC int SDLCALL SDL_SetSurfaceAlphaMod (SDL_Surface *surface, Uint8 alpha)
 Set an additional alpha value used in blit operations.
DECLSPEC int SDLCALL SDL_GetSurfaceAlphaMod (SDL_Surface *surface, Uint8 *alpha)
 Get the additional alpha value used in blit operations.
DECLSPEC int SDLCALL SDL_SetSurfaceBlendMode (SDL_Surface *surface, int blendMode)
 Set the blend mode used for blit operations.
DECLSPEC int SDLCALL SDL_GetSurfaceBlendMode (SDL_Surface *surface, int *blendMode)
 Get the blend mode used for blit operations.
DECLSPEC int SDLCALL SDL_SetSurfaceScaleMode (SDL_Surface *surface, int scaleMode)
 Set the scale mode used for blit operations.
DECLSPEC int SDLCALL SDL_GetSurfaceScaleMode (SDL_Surface *surface, int *scaleMode)
 Get the scale mode used for blit operations.
DECLSPEC SDL_bool SDLCALL SDL_SetClipRect (SDL_Surface *surface, const SDL_Rect *rect)
DECLSPEC void SDLCALL SDL_GetClipRect (SDL_Surface *surface, SDL_Rect *rect)
DECLSPEC SDL_Surface *SDLCALL SDL_ConvertSurface (SDL_Surface *src, SDL_PixelFormat *fmt, Uint32 flags)
DECLSPEC int SDLCALL SDL_DrawPoint (SDL_Surface *dst, int x, int y, Uint32 color)
DECLSPEC int SDLCALL SDL_BlendPoint (SDL_Surface *dst, int x, int y, int blendMode, Uint8 r, Uint8 g, Uint8 b, Uint8 a)
DECLSPEC int SDLCALL SDL_DrawLine (SDL_Surface *dst, int x1, int y1, int x2, int y2, Uint32 color)
DECLSPEC int SDLCALL SDL_BlendLine (SDL_Surface *dst, int x1, int y1, int x2, int y2, int blendMode, Uint8 r, Uint8 g, Uint8 b, Uint8 a)
DECLSPEC int SDLCALL SDL_FillRect (SDL_Surface *dst, SDL_Rect *dstrect, Uint32 color)
DECLSPEC int SDLCALL SDL_BlendRect (SDL_Surface *dst, SDL_Rect *dstrect, int blendMode, Uint8 r, Uint8 g, Uint8 b, Uint8 a)
DECLSPEC int SDLCALL SDL_UpperBlit (SDL_Surface *src, SDL_Rect *srcrect, SDL_Surface *dst, SDL_Rect *dstrect)
DECLSPEC int SDLCALL SDL_LowerBlit (SDL_Surface *src, SDL_Rect *srcrect, SDL_Surface *dst, SDL_Rect *dstrect)
DECLSPEC int SDLCALL SDL_SoftStretch (SDL_Surface *src, const SDL_Rect *srcrect, SDL_Surface *dst, const SDL_Rect *dstrect)
 Perform a fast, low quality, stretch blit between two surfaces of the same pixel format.


Detailed Description

Header file for SDL_surface definition and management functions

Function Documentation

int SDL_GetSurfaceAlphaMod ( SDL_Surface surface,
Uint8 alpha 
)

Get the additional alpha value used in blit operations.

Parameters:
surface The surface to query
alpha A pointer filled in with the source alpha value
Returns:
0 on success, or -1 if the surface is not valid
See also:
SDL_SetSurfaceAlphaMod()

int SDL_GetSurfaceBlendMode ( SDL_Surface surface,
int *  blendMode 
)

Get the blend mode used for blit operations.

Parameters:
surface The surface to query
blendMode A pointer filled in with the current blend mode
Returns:
0 on success, or -1 if the surface is not valid
See also:
SDL_SetSurfaceBlendMode()

int SDL_GetSurfaceColorMod ( SDL_Surface surface,
Uint8 r,
Uint8 g,
Uint8 b 
)

Get the additional color value used in blit operations.

Parameters:
surface The surface to query
r A pointer filled in with the source red color value
g A pointer filled in with the source green color value
b A pointer filled in with the source blue color value
Returns:
0 on success, or -1 if the surface is not valid
See also:
SDL_SetSurfaceColorMod()

int SDL_GetSurfaceScaleMode ( SDL_Surface surface,
int *  scaleMode 
)

Get the scale mode used for blit operations.

Parameters:
surface The surface to query
scaleMode A pointer filled in with the current scale mode
Returns:
0 on success, or -1 if the surface is not valid
See also:
SDL_SetSurfaceScaleMode()

int SDL_SetSurfaceAlphaMod ( SDL_Surface surface,
Uint8  alpha 
)

Set an additional alpha value used in blit operations.

Parameters:
surface The surface to update
alpha The source alpha value multiplied into blit operations.
Returns:
0 on success, or -1 if the surface is not valid
See also:
SDL_GetSurfaceAlphaMod()

int SDL_SetSurfaceBlendMode ( SDL_Surface surface,
int  blendMode 
)

Set the blend mode used for blit operations.

Parameters:
surface The surface to update
blendMode SDL_TextureBlendMode to use for blit blending
Returns:
0 on success, or -1 if the parameters are not valid
See also:
SDL_GetSurfaceBlendMode()

int SDL_SetSurfaceColorMod ( SDL_Surface surface,
Uint8  r,
Uint8  g,
Uint8  b 
)

Set an additional color value used in blit operations.

Parameters:
surface The surface to update
r The red source color value multiplied into blit operations
g The green source color value multiplied into blit operations
b The blue source color value multiplied into blit operations
Returns:
0 on success, or -1 if the surface is not valid
See also:
SDL_GetSurfaceColorMod()

int SDL_SetSurfacePalette ( SDL_Surface surface,
SDL_Palette *  palette 
)

Set the palette used by a surface.

Returns:
0, or -1 if the surface format doesn't use a palette.
Note:
A single palette can be shared with many surfaces.

int SDL_SetSurfaceScaleMode ( SDL_Surface surface,
int  scaleMode 
)

Set the scale mode used for blit operations.

Parameters:
surface The surface to update
scaleMode SDL_TextureScaleMode to use for blit scaling
Returns:
0 on success, or -1 if the surface is not valid or the scale mode is not supported
Note:
If the scale mode is not supported, the closest supported mode is chosen. Currently only SDL_TEXTURESCALEMODE_FAST is supported on surfaces.
See also:
SDL_GetSurfaceScaleMode()

int SDL_SoftStretch ( SDL_Surface src,
const SDL_Rect srcrect,
SDL_Surface dst,
const SDL_Rect dstrect 
)

Perform a fast, low quality, stretch blit between two surfaces of the same pixel format.

Note:
This function uses a static buffer, and is not thread-safe.


Generated on Mon Sep 21 21:32:25 2009 for Simple DirectMedia Layer by  doxygen 1.5.8