2
* GRUB -- GRand Unified Bootloader
3
* Copyright (C) 2006,2007,2008 Free Software Foundation, Inc.
5
* GRUB is free software: you can redistribute it and/or modify
6
* it under the terms of the GNU General Public License as published by
7
* the Free Software Foundation, either version 3 of the License, or
8
* (at your option) any later version.
10
* GRUB is distributed in the hope that it will be useful,
11
* but WITHOUT ANY WARRANTY; without even the implied warranty of
12
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13
* GNU General Public License for more details.
15
* You should have received a copy of the GNU General Public License
16
* along with GRUB. If not, see <http://www.gnu.org/licenses/>.
19
#ifndef GRUB_FBBLIT_HEADER
20
#define GRUB_FBBLIT_HEADER 1
22
/* NOTE: This header is private header for fb driver and should not be used
23
in other parts of the code. */
25
struct grub_video_fbblit_info;
28
grub_video_fbblit_replace (struct grub_video_fbblit_info *dst,
29
struct grub_video_fbblit_info *src,
30
int x, int y, int width, int height,
31
int offset_x, int offset_y);
34
grub_video_fbblit_replace_directN (struct grub_video_fbblit_info *dst,
35
struct grub_video_fbblit_info *src,
36
int x, int y, int width, int height,
37
int offset_x, int offset_y);
40
grub_video_fbblit_replace_BGRX8888_RGBX8888 (struct grub_video_fbblit_info *dst,
41
struct grub_video_fbblit_info *src,
42
int x, int y, int width, int height,
43
int offset_x, int offset_y);
46
grub_video_fbblit_replace_BGRX8888_RGB888 (struct grub_video_fbblit_info *dst,
47
struct grub_video_fbblit_info *src,
49
int width, int height,
50
int offset_x, int offset_y);
53
grub_video_fbblit_replace_BGR888_RGBX8888 (struct grub_video_fbblit_info *dst,
54
struct grub_video_fbblit_info *src,
56
int width, int height,
57
int offset_x, int offset_y);
60
grub_video_fbblit_replace_BGR888_RGB888 (struct grub_video_fbblit_info *dst,
61
struct grub_video_fbblit_info *src,
63
int width, int height,
64
int offset_x, int offset_y);
67
grub_video_fbblit_replace_RGBX8888_RGB888 (struct grub_video_fbblit_info *dst,
68
struct grub_video_fbblit_info *src,
70
int width, int height,
71
int offset_x, int offset_y);
74
grub_video_fbblit_replace_RGB888_RGBX8888 (struct grub_video_fbblit_info *dst,
75
struct grub_video_fbblit_info *src,
77
int width, int height,
78
int offset_x, int offset_y);
81
grub_video_fbblit_replace_index_RGBX8888 (struct grub_video_fbblit_info *dst,
82
struct grub_video_fbblit_info *src,
84
int width, int height,
85
int offset_x, int offset_y);
88
grub_video_fbblit_replace_index_RGB888 (struct grub_video_fbblit_info *dst,
89
struct grub_video_fbblit_info *src,
90
int x, int y, int width, int height,
91
int offset_x, int offset_y);
94
grub_video_fbblit_blend (struct grub_video_fbblit_info *dst,
95
struct grub_video_fbblit_info *src,
96
int x, int y, int width, int height,
97
int offset_x, int offset_y);
100
grub_video_fbblit_blend_BGRA8888_RGBA8888 (struct grub_video_fbblit_info *dst,
101
struct grub_video_fbblit_info *src,
103
int width, int height,
104
int offset_x, int offset_y);
107
grub_video_fbblit_blend_BGR888_RGBA8888 (struct grub_video_fbblit_info *dst,
108
struct grub_video_fbblit_info *src,
110
int width, int height,
111
int offset_x, int offset_y);
114
grub_video_fbblit_blend_RGBA8888_RGBA8888 (struct grub_video_fbblit_info *dst,
115
struct grub_video_fbblit_info *src,
117
int width, int height,
118
int offset_x, int offset_y);
121
grub_video_fbblit_blend_RGB888_RGBA8888 (struct grub_video_fbblit_info *dst,
122
struct grub_video_fbblit_info *src,
124
int width, int height,
125
int offset_x, int offset_y);
128
grub_video_fbblit_blend_index_RGBA8888 (struct grub_video_fbblit_info *dst,
129
struct grub_video_fbblit_info *src,
131
int width, int height,
132
int offset_x, int offset_y);
135
grub_video_fbblit_replace_32bit_1bit (struct grub_video_fbblit_info *dst,
136
struct grub_video_fbblit_info *src,
138
int width, int height,
139
int offset_x, int offset_y);
142
grub_video_fbblit_replace_24bit_1bit (struct grub_video_fbblit_info *dst,
143
struct grub_video_fbblit_info *src,
145
int width, int height,
146
int offset_x, int offset_y);
149
grub_video_fbblit_replace_16bit_1bit (struct grub_video_fbblit_info *dst,
150
struct grub_video_fbblit_info *src,
152
int width, int height,
153
int offset_x, int offset_y);
156
grub_video_fbblit_replace_8bit_1bit (struct grub_video_fbblit_info *dst,
157
struct grub_video_fbblit_info *src,
159
int width, int height,
160
int offset_x, int offset_y);
163
grub_video_fbblit_blend_XXXA8888_1bit (struct grub_video_fbblit_info *dst,
164
struct grub_video_fbblit_info *src,
166
int width, int height,
167
int offset_x, int offset_y);
170
grub_video_fbblit_blend_XXX888_1bit (struct grub_video_fbblit_info *dst,
171
struct grub_video_fbblit_info *src,
173
int width, int height,
174
int offset_x, int offset_y);
177
grub_video_fbblit_blend_XXX565_1bit (struct grub_video_fbblit_info *dst,
178
struct grub_video_fbblit_info *src,
180
int width, int height,
181
int offset_x, int offset_y);
182
#endif /* ! GRUB_FBBLIT_HEADER */