| /**************************************************************************** |
| **************************************************************************** |
| *** |
| *** This header was automatically generated from a Linux kernel header |
| *** of the same name, to make information necessary for userspace to |
| *** call into the kernel available to libc. It contains only constants, |
| *** structures, and macros generated from the original header, and thus, |
| *** contains no copyrightable information. |
| *** |
| *** To edit the content of this header, modify the corresponding |
| *** source file (e.g. under external/kernel-headers/original/) then |
| *** run bionic/libc/kernel/tools/update_all.py |
| *** |
| *** Any manual change here will be lost the next time this script will |
| *** be run. You've been warned! |
| *** |
| **************************************************************************** |
| ****************************************************************************/ |
| #ifndef BVBLEND_H |
| #define BVBLEND_H |
| #define BVBLENDDEF_FORMAT_SHIFT 28 |
| #define BVBLENDDEF_FORMAT_MASK (0xF << BVBLENDDEF_FORMAT_SHIFT) |
| /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ |
| #define BVBLENDDEF_FORMAT_CLASSIC (0x0 << BVBLENDDEF_FORMAT_SHIFT) |
| #define BVBLENDDEF_FORMAT_ESSENTIAL (0x1 << BVBLENDDEF_FORMAT_SHIFT) |
| #define BVBLENDDEF_MODE_SHIFT 4 |
| #define BVBLENDDEF_INV_SHIFT 2 |
| /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ |
| #define BVBLENDDEF_NORM_SHIFT 0 |
| #define BVBLENDDEF_ONLY_A (0 << BVBLENDDEF_MODE_SHIFT) |
| #define BVBLENDDEF_MIN (1 << BVBLENDDEF_MODE_SHIFT) |
| #define BVBLENDDEF_MAX (2 << BVBLENDDEF_MODE_SHIFT) |
| /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ |
| #define BVBLENDDEF_ONLY_C (3 << BVBLENDDEF_MODE_SHIFT) |
| #define BVBLENDDEF_MODE_MASK (3 << BVBLENDDEF_MODE_SHIFT) |
| #define BVBLENDDEF_NORM_C1 (0 << BVBLENDDEF_NORM_SHIFT) |
| #define BVBLENDDEF_NORM_A1 (1 << BVBLENDDEF_NORM_SHIFT) |
| /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ |
| #define BVBLENDDEF_NORM_C2 (2 << BVBLENDDEF_NORM_SHIFT) |
| #define BVBLENDDEF_NORM_A2 (3 << BVBLENDDEF_NORM_SHIFT) |
| #define BVBLENDDEF_NORM_MASK (3 << BVBLENDDEF_NORM_SHIFT) |
| #define BVBLENDDEF_INV_C1 (0 << BVBLENDDEF_INV_SHIFT) |
| /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ |
| #define BVBLENDDEF_INV_A1 (1 << BVBLENDDEF_INV_SHIFT) |
| #define BVBLENDDEF_INV_C2 (2 << BVBLENDDEF_INV_SHIFT) |
| #define BVBLENDDEF_INV_A2 (3 << BVBLENDDEF_INV_SHIFT) |
| #define BVBLENDDEF_INV_MASK (3 << BVBLENDDEF_INV_SHIFT) |
| /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ |
| #define BVBLENDDEF_ONLY_A_NORM_xx BVBLENDDEF_NORM_C1 |
| #define BVBLENDDEF_ONLY_A_INV_xx BVBLENDDEF_INV_C1 |
| #define BVBLENDDEF_ONLY_C_NORM_xx BVBLENDDEF_NORM_A2 |
| #define BVBLENDDEF_ONLY_C_INV_xx BVBLENDDEF_INV_A2 |
| /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ |
| #define BVBLENDDEF_ZERO (BVBLENDDEF_ONLY_A | BVBLENDDEF_ONLY_A_NORM_xx | BVBLENDDEF_ONLY_A_INV_xx) |
| #define BVBLENDDEF_C1 (BVBLENDDEF_ONLY_C | BVBLENDDEF_NORM_C1 | BVBLENDDEF_ONLY_C_INV_xx) |
| #define BVBLENDDEF_A1 (BVBLENDDEF_ONLY_A | BVBLENDDEF_NORM_A1 | BVBLENDDEF_ONLY_A_INV_xx) |
| #define BVBLENDDEF_C2 (BVBLENDDEF_ONLY_C | BVBLENDDEF_NORM_C2 | BVBLENDDEF_ONLY_C_INV_xx) |
| /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ |
| #define BVBLENDDEF_A2 (BVBLENDDEF_ONLY_A | BVBLENDDEF_NORM_A2 | BVBLENDDEF_ONLY_A_INV_xx) |
| #define BVBLENDDEF_ONE_MINUS_C1 (BVBLENDDEF_ONLY_C | BVBLENDDEF_ONLY_C_NORM_xx | BVBLENDDEF_INV_C1) |
| #define BVBLENDDEF_ONE_MINUS_A1 (BVBLENDDEF_ONLY_A | BVBLENDDEF_ONLY_A_NORM_xx | BVBLENDDEF_INV_A1) |
| #define BVBLENDDEF_ONE_MINUS_C2 (BVBLENDDEF_ONLY_C | BVBLENDDEF_ONLY_C_NORM_xx | BVBLENDDEF_INV_C2) |
| /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ |
| #define BVBLENDDEF_ONE_MINUS_A2 (BVBLENDDEF_ONLY_A | BVBLENDDEF_ONLY_A_NORM_xx | BVBLENDDEF_INV_A2) |
| #define BVBLENDDEF_ONE (BVBLENDDEF_ONLY_C | BVBLENDDEF_ONLY_C_NORM_xx | BVBLENDDEF_ONLY_C_INV_xx) |
| #define BVBLENDDEF_K_MASK (BVBLENDDEF_MODE_MASK | BVBLENDDEF_INV_MASK | BVBLENDDEF_NORM_MASK) |
| #define BVBLENDDEF_K1_SHIFT 18 |
| /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ |
| #define BVBLENDDEF_K2_SHIFT 12 |
| #define BVBLENDDEF_K3_SHIFT 6 |
| #define BVBLENDDEF_K4_SHIFT 0 |
| #define BVBLENDDEF_K1_MASK (BVBLENDDEF_K_MASK << BVBLENDDEF_K1_SHIFT) |
| /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ |
| #define BVBLENDDEF_K2_MASK (BVBLENDDEF_K_MASK << BVBLENDDEF_K2_SHIFT) |
| #define BVBLENDDEF_K3_MASK (BVBLENDDEF_K_MASK << BVBLENDDEF_K3_SHIFT) |
| #define BVBLENDDEF_K4_MASK (BVBLENDDEF_K_MASK << BVBLENDDEF_K4_SHIFT) |
| #define BVBLENDDEF_CLASSIC_EQUATION_MASK 0x00FFFFFF |
| /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ |
| #define BVBLENDDEF_REMOTE 0x08000000 |
| #define BVBLENDDEF_GLOBAL_SHIFT 24 |
| #define BVBLENDDEF_GLOBAL_MASK (3 << BVBLENDDEF_GLOBAL_SHIFT) |
| #define BVBLENDDEF_GLOBAL_NONE (0 << BVBLENDDEF_GLOBAL_SHIFT) |
| /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ |
| #define BVBLENDDEF_GLOBAL_UCHAR (1 << BVBLENDDEF_GLOBAL_SHIFT) |
| #define BVBLENDDEF_GLOBAL_FLOAT (3 << BVBLENDDEF_GLOBAL_SHIFT) |
| union bvalpha { |
| unsigned char size8; |
| /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ |
| float fp; |
| }; |
| enum bvblend { |
| BVBLEND_CLEAR = BVBLENDDEF_FORMAT_CLASSIC | |
| /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ |
| (BVBLENDDEF_ZERO << BVBLENDDEF_K1_SHIFT) | |
| (BVBLENDDEF_ZERO << BVBLENDDEF_K2_SHIFT) | |
| (BVBLENDDEF_ZERO << BVBLENDDEF_K3_SHIFT) | |
| (BVBLENDDEF_ZERO << BVBLENDDEF_K4_SHIFT), |
| /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ |
| BVBLEND_SRC1 = BVBLENDDEF_FORMAT_CLASSIC | |
| (BVBLENDDEF_ONE << BVBLENDDEF_K1_SHIFT) | |
| (BVBLENDDEF_ZERO << BVBLENDDEF_K2_SHIFT) | |
| (BVBLENDDEF_ONE << BVBLENDDEF_K3_SHIFT) | |
| /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ |
| (BVBLENDDEF_ZERO << BVBLENDDEF_K4_SHIFT), |
| BVBLEND_SRC2 = BVBLENDDEF_FORMAT_CLASSIC | |
| (BVBLENDDEF_ZERO << BVBLENDDEF_K1_SHIFT) | |
| (BVBLENDDEF_ONE << BVBLENDDEF_K2_SHIFT) | |
| /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ |
| (BVBLENDDEF_ZERO << BVBLENDDEF_K3_SHIFT) | |
| (BVBLENDDEF_ONE << BVBLENDDEF_K4_SHIFT), |
| BVBLEND_SRC1OVER = BVBLENDDEF_FORMAT_CLASSIC | |
| (BVBLENDDEF_ONE << BVBLENDDEF_K1_SHIFT) | |
| /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ |
| (BVBLENDDEF_ONE_MINUS_A1 << BVBLENDDEF_K2_SHIFT) | |
| (BVBLENDDEF_ONE << BVBLENDDEF_K3_SHIFT) | |
| (BVBLENDDEF_ONE_MINUS_A1 << BVBLENDDEF_K4_SHIFT), |
| BVBLEND_SRC2OVER = BVBLENDDEF_FORMAT_CLASSIC | |
| /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ |
| (BVBLENDDEF_ONE_MINUS_A2 << BVBLENDDEF_K1_SHIFT) | |
| (BVBLENDDEF_ONE << BVBLENDDEF_K2_SHIFT) | |
| (BVBLENDDEF_ONE_MINUS_A2 << BVBLENDDEF_K3_SHIFT) | |
| (BVBLENDDEF_ONE << BVBLENDDEF_K4_SHIFT), |
| /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ |
| BVBLEND_SRC1IN = BVBLENDDEF_FORMAT_CLASSIC | |
| (BVBLENDDEF_A2 << BVBLENDDEF_K1_SHIFT) | |
| (BVBLENDDEF_ZERO << BVBLENDDEF_K2_SHIFT) | |
| (BVBLENDDEF_A2 << BVBLENDDEF_K3_SHIFT) | |
| /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ |
| (BVBLENDDEF_ZERO << BVBLENDDEF_K4_SHIFT), |
| BVBLEND_SRC2IN = BVBLENDDEF_FORMAT_CLASSIC | |
| (BVBLENDDEF_ZERO << BVBLENDDEF_K1_SHIFT) | |
| (BVBLENDDEF_A1 << BVBLENDDEF_K2_SHIFT) | |
| /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ |
| (BVBLENDDEF_ZERO << BVBLENDDEF_K3_SHIFT) | |
| (BVBLENDDEF_A1 << BVBLENDDEF_K4_SHIFT), |
| BVBLEND_SRC1OUT = BVBLENDDEF_FORMAT_CLASSIC | |
| (BVBLENDDEF_ONE_MINUS_A2 << BVBLENDDEF_K1_SHIFT) | |
| /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ |
| (BVBLENDDEF_ZERO << BVBLENDDEF_K2_SHIFT) | |
| (BVBLENDDEF_ONE_MINUS_A2 << BVBLENDDEF_K3_SHIFT) | |
| (BVBLENDDEF_ZERO << BVBLENDDEF_K4_SHIFT), |
| BVBLEND_SRC2OUT = BVBLENDDEF_FORMAT_CLASSIC | |
| /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ |
| (BVBLENDDEF_ZERO << BVBLENDDEF_K1_SHIFT) | |
| (BVBLENDDEF_ONE_MINUS_A1 << BVBLENDDEF_K2_SHIFT) | |
| (BVBLENDDEF_ZERO << BVBLENDDEF_K3_SHIFT) | |
| (BVBLENDDEF_ONE_MINUS_A1 << BVBLENDDEF_K4_SHIFT), |
| /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ |
| BVBLEND_SRC1ATOP = BVBLENDDEF_FORMAT_CLASSIC | |
| (BVBLENDDEF_A2 << BVBLENDDEF_K1_SHIFT) | |
| (BVBLENDDEF_ONE_MINUS_A1 << BVBLENDDEF_K2_SHIFT) | |
| (BVBLENDDEF_A2 << BVBLENDDEF_K3_SHIFT) | |
| /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ |
| (BVBLENDDEF_ONE_MINUS_A1 << BVBLENDDEF_K4_SHIFT), |
| BVBLEND_SRC2ATOP = BVBLENDDEF_FORMAT_CLASSIC | |
| (BVBLENDDEF_ONE_MINUS_A2 << BVBLENDDEF_K1_SHIFT) | |
| (BVBLENDDEF_A1 << BVBLENDDEF_K2_SHIFT) | |
| /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ |
| (BVBLENDDEF_ONE_MINUS_A2 << BVBLENDDEF_K3_SHIFT) | |
| (BVBLENDDEF_A1 << BVBLENDDEF_K4_SHIFT), |
| BVBLEND_XOR = BVBLENDDEF_FORMAT_CLASSIC | |
| (BVBLENDDEF_ONE_MINUS_A2 << BVBLENDDEF_K1_SHIFT) | |
| /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ |
| (BVBLENDDEF_ONE_MINUS_A1 << BVBLENDDEF_K2_SHIFT) | |
| (BVBLENDDEF_ONE_MINUS_A2 << BVBLENDDEF_K3_SHIFT) | |
| (BVBLENDDEF_ONE_MINUS_A1 << BVBLENDDEF_K4_SHIFT), |
| BVBLEND_PLUS = BVBLENDDEF_FORMAT_CLASSIC | |
| /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ |
| (BVBLENDDEF_ONE << BVBLENDDEF_K1_SHIFT) | |
| (BVBLENDDEF_ONE << BVBLENDDEF_K2_SHIFT) | |
| (BVBLENDDEF_ONE << BVBLENDDEF_K3_SHIFT) | |
| (BVBLENDDEF_ONE << BVBLENDDEF_K4_SHIFT), |
| /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ |
| BVBLEND_NORMAL = BVBLENDDEF_FORMAT_ESSENTIAL + 0, |
| BVBLEND_LIGHTEN = BVBLENDDEF_FORMAT_ESSENTIAL + 1, |
| BVBLEND_DARKEN = BVBLENDDEF_FORMAT_ESSENTIAL + 2, |
| BVBLEND_MULTIPLY = BVBLENDDEF_FORMAT_ESSENTIAL + 3, |
| /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ |
| BVBLEND_AVERAGE = BVBLENDDEF_FORMAT_ESSENTIAL + 4, |
| BVBLEND_ADD = BVBLENDDEF_FORMAT_ESSENTIAL + 5, |
| BVBLEND_LINEAR_DODGE = BVBLEND_ADD, |
| BVBLEND_SUBTRACT = BVBLENDDEF_FORMAT_ESSENTIAL + 6, |
| /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ |
| BVBLEND_LINEAR_BURN = BVBLEND_SUBTRACT, |
| BVBLEND_DIFFERENCE = BVBLENDDEF_FORMAT_ESSENTIAL + 7, |
| BVBLEND_NEGATE = BVBLENDDEF_FORMAT_ESSENTIAL + 8, |
| BVBLEND_SCREEN = BVBLENDDEF_FORMAT_ESSENTIAL + 9, |
| /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ |
| BVBLEND_EXCLUSION = BVBLENDDEF_FORMAT_ESSENTIAL + 10, |
| BVBLEND_OVERLAY = BVBLENDDEF_FORMAT_ESSENTIAL + 11, |
| BVBLEND_SOFT_LIGHT = BVBLENDDEF_FORMAT_ESSENTIAL + 12, |
| BVBLEND_HARD_LIGHT = BVBLENDDEF_FORMAT_ESSENTIAL + 13, |
| /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ |
| BVBLEND_COLOR_DODGE = BVBLENDDEF_FORMAT_ESSENTIAL + 14, |
| BVBLEND_COLOR_BURN = BVBLENDDEF_FORMAT_ESSENTIAL + 15, |
| BVBLEND_LINEAR_LIGHT = BVBLENDDEF_FORMAT_ESSENTIAL + 16, |
| BVBLEND_VIVID_LIGHT = BVBLENDDEF_FORMAT_ESSENTIAL + 17, |
| /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ |
| BVBLEND_PIN_LIGHT = BVBLENDDEF_FORMAT_ESSENTIAL + 18, |
| BVBLEND_HARD_MIX = BVBLENDDEF_FORMAT_ESSENTIAL + 19, |
| BVBLEND_REFLECT = BVBLENDDEF_FORMAT_ESSENTIAL + 20, |
| BVBLEND_GLOW = BVBLENDDEF_FORMAT_ESSENTIAL + 21, |
| /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ |
| BVBLEND_PHOENIX = BVBLENDDEF_FORMAT_ESSENTIAL + 22, |
| #ifdef BVBLEND_EXTERNAL_INCLUDE |
| #define BVBLEND_EXTERNAL_INCLUDE |
| #endif |
| /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ |
| }; |
| #endif |