github.com/rajveermalviya/gamen@v0.1.2-0.20220930195403-9be15877c1aa/internal/xkbcommon/include/X11/extensions/render.h (about) 1 /* 2 * Copyright © 2000 SuSE, Inc. 3 * 4 * Permission to use, copy, modify, distribute, and sell this software and its 5 * documentation for any purpose is hereby granted without fee, provided that 6 * the above copyright notice appear in all copies and that both that 7 * copyright notice and this permission notice appear in supporting 8 * documentation, and that the name of SuSE not be used in advertising or 9 * publicity pertaining to distribution of the software without specific, 10 * written prior permission. SuSE makes no representations about the 11 * suitability of this software for any purpose. It is provided "as is" 12 * without express or implied warranty. 13 * 14 * SuSE DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ALL 15 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL SuSE 16 * BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES 17 * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION 18 * OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN 19 * CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. 20 * 21 * Author: Keith Packard, SuSE, Inc. 22 */ 23 24 #ifndef _RENDER_H_ 25 #define _RENDER_H_ 26 27 #include <X11/Xdefs.h> 28 29 typedef XID Glyph; 30 typedef XID GlyphSet; 31 typedef XID Picture; 32 typedef XID PictFormat; 33 34 #define RENDER_NAME "RENDER" 35 #define RENDER_MAJOR 0 36 #define RENDER_MINOR 11 37 38 #define X_RenderQueryVersion 0 39 #define X_RenderQueryPictFormats 1 40 #define X_RenderQueryPictIndexValues 2 /* 0.7 */ 41 #define X_RenderQueryDithers 3 42 #define X_RenderCreatePicture 4 43 #define X_RenderChangePicture 5 44 #define X_RenderSetPictureClipRectangles 6 45 #define X_RenderFreePicture 7 46 #define X_RenderComposite 8 47 #define X_RenderScale 9 48 #define X_RenderTrapezoids 10 49 #define X_RenderTriangles 11 50 #define X_RenderTriStrip 12 51 #define X_RenderTriFan 13 52 #define X_RenderColorTrapezoids 14 53 #define X_RenderColorTriangles 15 54 /* #define X_RenderTransform 16 */ 55 #define X_RenderCreateGlyphSet 17 56 #define X_RenderReferenceGlyphSet 18 57 #define X_RenderFreeGlyphSet 19 58 #define X_RenderAddGlyphs 20 59 #define X_RenderAddGlyphsFromPicture 21 60 #define X_RenderFreeGlyphs 22 61 #define X_RenderCompositeGlyphs8 23 62 #define X_RenderCompositeGlyphs16 24 63 #define X_RenderCompositeGlyphs32 25 64 #define X_RenderFillRectangles 26 65 /* 0.5 */ 66 #define X_RenderCreateCursor 27 67 /* 0.6 */ 68 #define X_RenderSetPictureTransform 28 69 #define X_RenderQueryFilters 29 70 #define X_RenderSetPictureFilter 30 71 /* 0.8 */ 72 #define X_RenderCreateAnimCursor 31 73 /* 0.9 */ 74 #define X_RenderAddTraps 32 75 /* 0.10 */ 76 #define X_RenderCreateSolidFill 33 77 #define X_RenderCreateLinearGradient 34 78 #define X_RenderCreateRadialGradient 35 79 #define X_RenderCreateConicalGradient 36 80 #define RenderNumberRequests (X_RenderCreateConicalGradient+1) 81 82 #define BadPictFormat 0 83 #define BadPicture 1 84 #define BadPictOp 2 85 #define BadGlyphSet 3 86 #define BadGlyph 4 87 #define RenderNumberErrors (BadGlyph+1) 88 89 #define PictTypeIndexed 0 90 #define PictTypeDirect 1 91 92 #define PictOpMinimum 0 93 #define PictOpClear 0 94 #define PictOpSrc 1 95 #define PictOpDst 2 96 #define PictOpOver 3 97 #define PictOpOverReverse 4 98 #define PictOpIn 5 99 #define PictOpInReverse 6 100 #define PictOpOut 7 101 #define PictOpOutReverse 8 102 #define PictOpAtop 9 103 #define PictOpAtopReverse 10 104 #define PictOpXor 11 105 #define PictOpAdd 12 106 #define PictOpSaturate 13 107 #define PictOpMaximum 13 108 109 /* 110 * Operators only available in version 0.2 111 */ 112 #define PictOpDisjointMinimum 0x10 113 #define PictOpDisjointClear 0x10 114 #define PictOpDisjointSrc 0x11 115 #define PictOpDisjointDst 0x12 116 #define PictOpDisjointOver 0x13 117 #define PictOpDisjointOverReverse 0x14 118 #define PictOpDisjointIn 0x15 119 #define PictOpDisjointInReverse 0x16 120 #define PictOpDisjointOut 0x17 121 #define PictOpDisjointOutReverse 0x18 122 #define PictOpDisjointAtop 0x19 123 #define PictOpDisjointAtopReverse 0x1a 124 #define PictOpDisjointXor 0x1b 125 #define PictOpDisjointMaximum 0x1b 126 127 #define PictOpConjointMinimum 0x20 128 #define PictOpConjointClear 0x20 129 #define PictOpConjointSrc 0x21 130 #define PictOpConjointDst 0x22 131 #define PictOpConjointOver 0x23 132 #define PictOpConjointOverReverse 0x24 133 #define PictOpConjointIn 0x25 134 #define PictOpConjointInReverse 0x26 135 #define PictOpConjointOut 0x27 136 #define PictOpConjointOutReverse 0x28 137 #define PictOpConjointAtop 0x29 138 #define PictOpConjointAtopReverse 0x2a 139 #define PictOpConjointXor 0x2b 140 #define PictOpConjointMaximum 0x2b 141 142 /* 143 * Operators only available in version 0.11 144 */ 145 #define PictOpBlendMinimum 0x30 146 #define PictOpMultiply 0x30 147 #define PictOpScreen 0x31 148 #define PictOpOverlay 0x32 149 #define PictOpDarken 0x33 150 #define PictOpLighten 0x34 151 #define PictOpColorDodge 0x35 152 #define PictOpColorBurn 0x36 153 #define PictOpHardLight 0x37 154 #define PictOpSoftLight 0x38 155 #define PictOpDifference 0x39 156 #define PictOpExclusion 0x3a 157 #define PictOpHSLHue 0x3b 158 #define PictOpHSLSaturation 0x3c 159 #define PictOpHSLColor 0x3d 160 #define PictOpHSLLuminosity 0x3e 161 #define PictOpBlendMaximum 0x3e 162 163 #define PolyEdgeSharp 0 164 #define PolyEdgeSmooth 1 165 166 #define PolyModePrecise 0 167 #define PolyModeImprecise 1 168 169 #define CPRepeat (1 << 0) 170 #define CPAlphaMap (1 << 1) 171 #define CPAlphaXOrigin (1 << 2) 172 #define CPAlphaYOrigin (1 << 3) 173 #define CPClipXOrigin (1 << 4) 174 #define CPClipYOrigin (1 << 5) 175 #define CPClipMask (1 << 6) 176 #define CPGraphicsExposure (1 << 7) 177 #define CPSubwindowMode (1 << 8) 178 #define CPPolyEdge (1 << 9) 179 #define CPPolyMode (1 << 10) 180 #define CPDither (1 << 11) 181 #define CPComponentAlpha (1 << 12) 182 #define CPLastBit 12 183 184 /* Filters included in 0.6 */ 185 #define FilterNearest "nearest" 186 #define FilterBilinear "bilinear" 187 /* Filters included in 0.10 */ 188 #define FilterConvolution "convolution" 189 190 #define FilterFast "fast" 191 #define FilterGood "good" 192 #define FilterBest "best" 193 194 #define FilterAliasNone -1 195 196 /* Subpixel orders included in 0.6 */ 197 #define SubPixelUnknown 0 198 #define SubPixelHorizontalRGB 1 199 #define SubPixelHorizontalBGR 2 200 #define SubPixelVerticalRGB 3 201 #define SubPixelVerticalBGR 4 202 #define SubPixelNone 5 203 204 /* Extended repeat attributes included in 0.10 */ 205 #define RepeatNone 0 206 #define RepeatNormal 1 207 #define RepeatPad 2 208 #define RepeatReflect 3 209 210 #endif /* _RENDER_H_ */