equal
deleted
inserted
replaced
27 int sprite_height; ///< Real height of the sprite |
27 int sprite_height; ///< Real height of the sprite |
28 int left, top; ///< The offset in the 'dst' in pixels to start drawing |
28 int left, top; ///< The offset in the 'dst' in pixels to start drawing |
29 |
29 |
30 void *dst; ///< Destination buffer |
30 void *dst; ///< Destination buffer |
31 int pitch; ///< The pitch of the destination buffer |
31 int pitch; ///< The pitch of the destination buffer |
|
32 }; |
|
33 |
|
34 enum PaletteAnimation { |
|
35 PALETTE_ANIMATION_NONE, ///< No palette animation |
|
36 PALETTE_ANIMATION_VIDEO_BACKEND, ///< Palette animation should be done by video backend (8bpp only!) |
|
37 PALETTE_ANIMATION_BLITTER, ///< The blitter takes care of the palette animation |
32 }; |
38 }; |
33 |
39 |
34 typedef void *AllocatorProc(size_t size); |
40 typedef void *AllocatorProc(size_t size); |
35 |
41 |
36 /** |
42 /** |
156 * @param height The height of the buffer-to-be. |
162 * @param height The height of the buffer-to-be. |
157 * @return The size needed for the buffer. |
163 * @return The size needed for the buffer. |
158 */ |
164 */ |
159 virtual int BufferSize(int width, int height) = 0; |
165 virtual int BufferSize(int width, int height) = 0; |
160 |
166 |
|
167 /** |
|
168 * Called when the 8bpp palette is changed; you should redraw all pixels on the screen that |
|
169 * are equal to the 8bpp palette indexes 'start' to 'start + count'. |
|
170 * @param start The start index in the 8bpp palette. |
|
171 * @param count The amount of indexes that are (possible) changed. |
|
172 */ |
|
173 virtual void PaletteAnimate(uint start, uint count) = 0; |
|
174 |
|
175 /** |
|
176 * Check if the blitter uses palette animation at all. |
|
177 * @return True if it uses palette animation. |
|
178 */ |
|
179 virtual Blitter::PaletteAnimation UsePaletteAnimation() = 0; |
|
180 |
161 virtual ~Blitter() { } |
181 virtual ~Blitter() { } |
162 }; |
182 }; |
163 |
183 |
164 #endif /* BLITTER_BASE_HPP */ |
184 #endif /* BLITTER_BASE_HPP */ |