comparison src/video/SDL_blit.h @ 2257:340942cfda48

Moved the colorkey and per-surface alpha into the blit info, in preparation for support for general color channel modulation. Removed and consolidated some data in the blit info.
author Sam Lantinga <slouken@libsdl.org>
date Fri, 17 Aug 2007 00:54:53 +0000
parents 292bee385630
children 202ddfd1cfb1
comparison
equal deleted inserted replaced
2256:e893d24ad8db 2257:340942cfda48
43 int s_skip; 43 int s_skip;
44 Uint8 *d_pixels; 44 Uint8 *d_pixels;
45 int d_width; 45 int d_width;
46 int d_height; 46 int d_height;
47 int d_skip; 47 int d_skip;
48 void *aux_data;
49 SDL_PixelFormat *src; 48 SDL_PixelFormat *src;
50 Uint8 *table; 49 Uint8 *table;
51 SDL_PixelFormat *dst; 50 SDL_PixelFormat *dst;
51 Uint32 ckey, cmod;
52 } SDL_BlitInfo; 52 } SDL_BlitInfo;
53 53
54 /* The type definition for the low level blit functions */ 54 /* The type definition for the low level blit functions */
55 typedef void (*SDL_loblit) (SDL_BlitInfo * info); 55 typedef void (*SDL_loblit) (SDL_BlitInfo * info);
56
57 /* This is the private info structure for software accelerated blits */
58 struct private_swaccel
59 {
60 SDL_loblit blit;
61 void *aux_data;
62 };
63 56
64 /* Blit mapping definition */ 57 /* Blit mapping definition */
65 typedef struct SDL_BlitMap 58 typedef struct SDL_BlitMap
66 { 59 {
67 SDL_Surface *dst; 60 SDL_Surface *dst;
68 int identity; 61 int identity;
69 Uint8 *table; 62 Uint8 *table;
70 SDL_blit sw_blit; 63 SDL_blit blit;
71 struct private_swaccel *sw_data; 64 void *data;
65 Uint32 ckey; /* colorkey */
66 Uint32 cmod; /* ARGB modulation */
72 67
73 /* the version count matches the destination; mismatch indicates 68 /* the version count matches the destination; mismatch indicates
74 an invalid mapping */ 69 an invalid mapping */
75 unsigned int format_version; 70 unsigned int format_version;
76 } SDL_BlitMap; 71 } SDL_BlitMap;