• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /****************************************************************************
2  ****************************************************************************
3  ***
4  ***   This header was automatically generated from a Linux kernel header
5  ***   of the same name, to make information necessary for userspace to
6  ***   call into the kernel available to libc.  It contains only constants,
7  ***   structures, and macros generated from the original header, and thus,
8  ***   contains no copyrightable information.
9  ***
10  ***   To edit the content of this header, modify the corresponding
11  ***   source file (e.g. under external/kernel-headers/original/) then
12  ***   run bionic/libc/kernel/tools/update_all.py
13  ***
14  ***   Any manual change here will be lost the next time this script will
15  ***   be run. You've been warned!
16  ***
17  ****************************************************************************
18  ****************************************************************************/
19 #ifndef BVBLEND_H
20 #define BVBLEND_H
21 #define BVBLENDDEF_FORMAT_SHIFT 28
22 #define BVBLENDDEF_FORMAT_MASK (0xF << BVBLENDDEF_FORMAT_SHIFT)
23 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
24 #define BVBLENDDEF_FORMAT_CLASSIC (0x0 << BVBLENDDEF_FORMAT_SHIFT)
25 #define BVBLENDDEF_FORMAT_ESSENTIAL (0x1 << BVBLENDDEF_FORMAT_SHIFT)
26 #define BVBLENDDEF_MODE_SHIFT 4
27 #define BVBLENDDEF_INV_SHIFT 2
28 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
29 #define BVBLENDDEF_NORM_SHIFT 0
30 #define BVBLENDDEF_ONLY_A (0 << BVBLENDDEF_MODE_SHIFT)
31 #define BVBLENDDEF_MIN (1 << BVBLENDDEF_MODE_SHIFT)
32 #define BVBLENDDEF_MAX (2 << BVBLENDDEF_MODE_SHIFT)
33 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
34 #define BVBLENDDEF_ONLY_C (3 << BVBLENDDEF_MODE_SHIFT)
35 #define BVBLENDDEF_MODE_MASK (3 << BVBLENDDEF_MODE_SHIFT)
36 #define BVBLENDDEF_NORM_C1 (0 << BVBLENDDEF_NORM_SHIFT)
37 #define BVBLENDDEF_NORM_A1 (1 << BVBLENDDEF_NORM_SHIFT)
38 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
39 #define BVBLENDDEF_NORM_C2 (2 << BVBLENDDEF_NORM_SHIFT)
40 #define BVBLENDDEF_NORM_A2 (3 << BVBLENDDEF_NORM_SHIFT)
41 #define BVBLENDDEF_NORM_MASK (3 << BVBLENDDEF_NORM_SHIFT)
42 #define BVBLENDDEF_INV_C1 (0 << BVBLENDDEF_INV_SHIFT)
43 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
44 #define BVBLENDDEF_INV_A1 (1 << BVBLENDDEF_INV_SHIFT)
45 #define BVBLENDDEF_INV_C2 (2 << BVBLENDDEF_INV_SHIFT)
46 #define BVBLENDDEF_INV_A2 (3 << BVBLENDDEF_INV_SHIFT)
47 #define BVBLENDDEF_INV_MASK (3 << BVBLENDDEF_INV_SHIFT)
48 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
49 #define BVBLENDDEF_ONLY_A_NORM_xx BVBLENDDEF_NORM_C1
50 #define BVBLENDDEF_ONLY_A_INV_xx BVBLENDDEF_INV_C1
51 #define BVBLENDDEF_ONLY_C_NORM_xx BVBLENDDEF_NORM_A2
52 #define BVBLENDDEF_ONLY_C_INV_xx BVBLENDDEF_INV_A2
53 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
54 #define BVBLENDDEF_ZERO   (BVBLENDDEF_ONLY_A |   BVBLENDDEF_ONLY_A_NORM_xx |   BVBLENDDEF_ONLY_A_INV_xx)
55 #define BVBLENDDEF_C1   (BVBLENDDEF_ONLY_C |   BVBLENDDEF_NORM_C1 |   BVBLENDDEF_ONLY_C_INV_xx)
56 #define BVBLENDDEF_A1   (BVBLENDDEF_ONLY_A |   BVBLENDDEF_NORM_A1 |   BVBLENDDEF_ONLY_A_INV_xx)
57 #define BVBLENDDEF_C2   (BVBLENDDEF_ONLY_C |   BVBLENDDEF_NORM_C2 |   BVBLENDDEF_ONLY_C_INV_xx)
58 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
59 #define BVBLENDDEF_A2   (BVBLENDDEF_ONLY_A |   BVBLENDDEF_NORM_A2 |   BVBLENDDEF_ONLY_A_INV_xx)
60 #define BVBLENDDEF_ONE_MINUS_C1   (BVBLENDDEF_ONLY_C |   BVBLENDDEF_ONLY_C_NORM_xx |   BVBLENDDEF_INV_C1)
61 #define BVBLENDDEF_ONE_MINUS_A1   (BVBLENDDEF_ONLY_A |   BVBLENDDEF_ONLY_A_NORM_xx |   BVBLENDDEF_INV_A1)
62 #define BVBLENDDEF_ONE_MINUS_C2   (BVBLENDDEF_ONLY_C |   BVBLENDDEF_ONLY_C_NORM_xx |   BVBLENDDEF_INV_C2)
63 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
64 #define BVBLENDDEF_ONE_MINUS_A2   (BVBLENDDEF_ONLY_A |   BVBLENDDEF_ONLY_A_NORM_xx |   BVBLENDDEF_INV_A2)
65 #define BVBLENDDEF_ONE   (BVBLENDDEF_ONLY_C |   BVBLENDDEF_ONLY_C_NORM_xx |   BVBLENDDEF_ONLY_C_INV_xx)
66 #define BVBLENDDEF_K_MASK   (BVBLENDDEF_MODE_MASK |   BVBLENDDEF_INV_MASK |   BVBLENDDEF_NORM_MASK)
67 #define BVBLENDDEF_K1_SHIFT 18
68 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
69 #define BVBLENDDEF_K2_SHIFT 12
70 #define BVBLENDDEF_K3_SHIFT 6
71 #define BVBLENDDEF_K4_SHIFT 0
72 #define BVBLENDDEF_K1_MASK   (BVBLENDDEF_K_MASK << BVBLENDDEF_K1_SHIFT)
73 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
74 #define BVBLENDDEF_K2_MASK   (BVBLENDDEF_K_MASK << BVBLENDDEF_K2_SHIFT)
75 #define BVBLENDDEF_K3_MASK   (BVBLENDDEF_K_MASK << BVBLENDDEF_K3_SHIFT)
76 #define BVBLENDDEF_K4_MASK   (BVBLENDDEF_K_MASK << BVBLENDDEF_K4_SHIFT)
77 #define BVBLENDDEF_CLASSIC_EQUATION_MASK 0x00FFFFFF
78 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
79 #define BVBLENDDEF_REMOTE 0x08000000
80 #define BVBLENDDEF_GLOBAL_SHIFT 24
81 #define BVBLENDDEF_GLOBAL_MASK (3 << BVBLENDDEF_GLOBAL_SHIFT)
82 #define BVBLENDDEF_GLOBAL_NONE (0 << BVBLENDDEF_GLOBAL_SHIFT)
83 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
84 #define BVBLENDDEF_GLOBAL_UCHAR (1 << BVBLENDDEF_GLOBAL_SHIFT)
85 #define BVBLENDDEF_GLOBAL_FLOAT (3 << BVBLENDDEF_GLOBAL_SHIFT)
86 union bvalpha {
87  unsigned char size8;
88 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
89  float fp;
90 };
91 enum bvblend {
92  BVBLEND_CLEAR = BVBLENDDEF_FORMAT_CLASSIC |
93 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
94  (BVBLENDDEF_ZERO << BVBLENDDEF_K1_SHIFT) |
95  (BVBLENDDEF_ZERO << BVBLENDDEF_K2_SHIFT) |
96  (BVBLENDDEF_ZERO << BVBLENDDEF_K3_SHIFT) |
97  (BVBLENDDEF_ZERO << BVBLENDDEF_K4_SHIFT),
98 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
99  BVBLEND_SRC1 = BVBLENDDEF_FORMAT_CLASSIC |
100  (BVBLENDDEF_ONE << BVBLENDDEF_K1_SHIFT) |
101  (BVBLENDDEF_ZERO << BVBLENDDEF_K2_SHIFT) |
102  (BVBLENDDEF_ONE << BVBLENDDEF_K3_SHIFT) |
103 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
104  (BVBLENDDEF_ZERO << BVBLENDDEF_K4_SHIFT),
105  BVBLEND_SRC2 = BVBLENDDEF_FORMAT_CLASSIC |
106  (BVBLENDDEF_ZERO << BVBLENDDEF_K1_SHIFT) |
107  (BVBLENDDEF_ONE << BVBLENDDEF_K2_SHIFT) |
108 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
109  (BVBLENDDEF_ZERO << BVBLENDDEF_K3_SHIFT) |
110  (BVBLENDDEF_ONE << BVBLENDDEF_K4_SHIFT),
111  BVBLEND_SRC1OVER = BVBLENDDEF_FORMAT_CLASSIC |
112  (BVBLENDDEF_ONE << BVBLENDDEF_K1_SHIFT) |
113 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
114  (BVBLENDDEF_ONE_MINUS_A1 << BVBLENDDEF_K2_SHIFT) |
115  (BVBLENDDEF_ONE << BVBLENDDEF_K3_SHIFT) |
116  (BVBLENDDEF_ONE_MINUS_A1 << BVBLENDDEF_K4_SHIFT),
117  BVBLEND_SRC2OVER = BVBLENDDEF_FORMAT_CLASSIC |
118 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
119  (BVBLENDDEF_ONE_MINUS_A2 << BVBLENDDEF_K1_SHIFT) |
120  (BVBLENDDEF_ONE << BVBLENDDEF_K2_SHIFT) |
121  (BVBLENDDEF_ONE_MINUS_A2 << BVBLENDDEF_K3_SHIFT) |
122  (BVBLENDDEF_ONE << BVBLENDDEF_K4_SHIFT),
123 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
124  BVBLEND_SRC1IN = BVBLENDDEF_FORMAT_CLASSIC |
125  (BVBLENDDEF_A2 << BVBLENDDEF_K1_SHIFT) |
126  (BVBLENDDEF_ZERO << BVBLENDDEF_K2_SHIFT) |
127  (BVBLENDDEF_A2 << BVBLENDDEF_K3_SHIFT) |
128 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
129  (BVBLENDDEF_ZERO << BVBLENDDEF_K4_SHIFT),
130  BVBLEND_SRC2IN = BVBLENDDEF_FORMAT_CLASSIC |
131  (BVBLENDDEF_ZERO << BVBLENDDEF_K1_SHIFT) |
132  (BVBLENDDEF_A1 << BVBLENDDEF_K2_SHIFT) |
133 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
134  (BVBLENDDEF_ZERO << BVBLENDDEF_K3_SHIFT) |
135  (BVBLENDDEF_A1 << BVBLENDDEF_K4_SHIFT),
136  BVBLEND_SRC1OUT = BVBLENDDEF_FORMAT_CLASSIC |
137  (BVBLENDDEF_ONE_MINUS_A2 << BVBLENDDEF_K1_SHIFT) |
138 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
139  (BVBLENDDEF_ZERO << BVBLENDDEF_K2_SHIFT) |
140  (BVBLENDDEF_ONE_MINUS_A2 << BVBLENDDEF_K3_SHIFT) |
141  (BVBLENDDEF_ZERO << BVBLENDDEF_K4_SHIFT),
142  BVBLEND_SRC2OUT = BVBLENDDEF_FORMAT_CLASSIC |
143 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
144  (BVBLENDDEF_ZERO << BVBLENDDEF_K1_SHIFT) |
145  (BVBLENDDEF_ONE_MINUS_A1 << BVBLENDDEF_K2_SHIFT) |
146  (BVBLENDDEF_ZERO << BVBLENDDEF_K3_SHIFT) |
147  (BVBLENDDEF_ONE_MINUS_A1 << BVBLENDDEF_K4_SHIFT),
148 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
149  BVBLEND_SRC1ATOP = BVBLENDDEF_FORMAT_CLASSIC |
150  (BVBLENDDEF_A2 << BVBLENDDEF_K1_SHIFT) |
151  (BVBLENDDEF_ONE_MINUS_A1 << BVBLENDDEF_K2_SHIFT) |
152  (BVBLENDDEF_A2 << BVBLENDDEF_K3_SHIFT) |
153 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
154  (BVBLENDDEF_ONE_MINUS_A1 << BVBLENDDEF_K4_SHIFT),
155  BVBLEND_SRC2ATOP = BVBLENDDEF_FORMAT_CLASSIC |
156  (BVBLENDDEF_ONE_MINUS_A2 << BVBLENDDEF_K1_SHIFT) |
157  (BVBLENDDEF_A1 << BVBLENDDEF_K2_SHIFT) |
158 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
159  (BVBLENDDEF_ONE_MINUS_A2 << BVBLENDDEF_K3_SHIFT) |
160  (BVBLENDDEF_A1 << BVBLENDDEF_K4_SHIFT),
161  BVBLEND_XOR = BVBLENDDEF_FORMAT_CLASSIC |
162  (BVBLENDDEF_ONE_MINUS_A2 << BVBLENDDEF_K1_SHIFT) |
163 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
164  (BVBLENDDEF_ONE_MINUS_A1 << BVBLENDDEF_K2_SHIFT) |
165  (BVBLENDDEF_ONE_MINUS_A2 << BVBLENDDEF_K3_SHIFT) |
166  (BVBLENDDEF_ONE_MINUS_A1 << BVBLENDDEF_K4_SHIFT),
167  BVBLEND_PLUS = BVBLENDDEF_FORMAT_CLASSIC |
168 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
169  (BVBLENDDEF_ONE << BVBLENDDEF_K1_SHIFT) |
170  (BVBLENDDEF_ONE << BVBLENDDEF_K2_SHIFT) |
171  (BVBLENDDEF_ONE << BVBLENDDEF_K3_SHIFT) |
172  (BVBLENDDEF_ONE << BVBLENDDEF_K4_SHIFT),
173 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
174  BVBLEND_NORMAL = BVBLENDDEF_FORMAT_ESSENTIAL + 0,
175  BVBLEND_LIGHTEN = BVBLENDDEF_FORMAT_ESSENTIAL + 1,
176  BVBLEND_DARKEN = BVBLENDDEF_FORMAT_ESSENTIAL + 2,
177  BVBLEND_MULTIPLY = BVBLENDDEF_FORMAT_ESSENTIAL + 3,
178 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
179  BVBLEND_AVERAGE = BVBLENDDEF_FORMAT_ESSENTIAL + 4,
180  BVBLEND_ADD = BVBLENDDEF_FORMAT_ESSENTIAL + 5,
181  BVBLEND_LINEAR_DODGE = BVBLEND_ADD,
182  BVBLEND_SUBTRACT = BVBLENDDEF_FORMAT_ESSENTIAL + 6,
183 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
184  BVBLEND_LINEAR_BURN = BVBLEND_SUBTRACT,
185  BVBLEND_DIFFERENCE = BVBLENDDEF_FORMAT_ESSENTIAL + 7,
186  BVBLEND_NEGATE = BVBLENDDEF_FORMAT_ESSENTIAL + 8,
187  BVBLEND_SCREEN = BVBLENDDEF_FORMAT_ESSENTIAL + 9,
188 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
189  BVBLEND_EXCLUSION = BVBLENDDEF_FORMAT_ESSENTIAL + 10,
190  BVBLEND_OVERLAY = BVBLENDDEF_FORMAT_ESSENTIAL + 11,
191  BVBLEND_SOFT_LIGHT = BVBLENDDEF_FORMAT_ESSENTIAL + 12,
192  BVBLEND_HARD_LIGHT = BVBLENDDEF_FORMAT_ESSENTIAL + 13,
193 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
194  BVBLEND_COLOR_DODGE = BVBLENDDEF_FORMAT_ESSENTIAL + 14,
195  BVBLEND_COLOR_BURN = BVBLENDDEF_FORMAT_ESSENTIAL + 15,
196  BVBLEND_LINEAR_LIGHT = BVBLENDDEF_FORMAT_ESSENTIAL + 16,
197  BVBLEND_VIVID_LIGHT = BVBLENDDEF_FORMAT_ESSENTIAL + 17,
198 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
199  BVBLEND_PIN_LIGHT = BVBLENDDEF_FORMAT_ESSENTIAL + 18,
200  BVBLEND_HARD_MIX = BVBLENDDEF_FORMAT_ESSENTIAL + 19,
201  BVBLEND_REFLECT = BVBLENDDEF_FORMAT_ESSENTIAL + 20,
202  BVBLEND_GLOW = BVBLENDDEF_FORMAT_ESSENTIAL + 21,
203 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
204  BVBLEND_PHOENIX = BVBLENDDEF_FORMAT_ESSENTIAL + 22,
205 #ifdef BVBLEND_EXTERNAL_INCLUDE
206 #define BVBLEND_EXTERNAL_INCLUDE
207 #endif
208 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
209 };
210 #endif
211