Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2025-03-13 09:29:38

0001 /*
0002  * $XFree86: xc/include/extensions/render.h,v 1.10 2002/11/06 22:47:49 keithp Exp $
0003  *
0004  * Copyright © 2000 SuSE, Inc.
0005  *
0006  * Permission to use, copy, modify, distribute, and sell this software and its
0007  * documentation for any purpose is hereby granted without fee, provided that
0008  * the above copyright notice appear in all copies and that both that
0009  * copyright notice and this permission notice appear in supporting
0010  * documentation, and that the name of SuSE not be used in advertising or
0011  * publicity pertaining to distribution of the software without specific,
0012  * written prior permission.  SuSE makes no representations about the
0013  * suitability of this software for any purpose.  It is provided "as is"
0014  * without express or implied warranty.
0015  *
0016  * SuSE DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ALL
0017  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL SuSE
0018  * BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
0019  * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION
0020  * OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN
0021  * CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
0022  *
0023  * Author:  Keith Packard, SuSE, Inc.
0024  */
0025 
0026 #ifndef _RENDER_H_
0027 #define _RENDER_H_
0028 
0029 #include <X11/Xdefs.h>
0030 
0031 typedef XID     Glyph;
0032 typedef XID     GlyphSet;
0033 typedef XID     Picture;
0034 typedef XID     PictFormat;
0035 
0036 #define RENDER_NAME "RENDER"
0037 #define RENDER_MAJOR    0
0038 #define RENDER_MINOR    11
0039 
0040 #define X_RenderQueryVersion            0
0041 #define X_RenderQueryPictFormats        1
0042 #define X_RenderQueryPictIndexValues        2   /* 0.7 */
0043 #define X_RenderQueryDithers            3
0044 #define X_RenderCreatePicture           4
0045 #define X_RenderChangePicture           5
0046 #define X_RenderSetPictureClipRectangles    6
0047 #define X_RenderFreePicture         7
0048 #define X_RenderComposite           8
0049 #define X_RenderScale               9
0050 #define X_RenderTrapezoids          10
0051 #define X_RenderTriangles           11
0052 #define X_RenderTriStrip            12
0053 #define X_RenderTriFan              13
0054 #define X_RenderColorTrapezoids         14
0055 #define X_RenderColorTriangles          15
0056 /* #define X_RenderTransform            16 */
0057 #define X_RenderCreateGlyphSet          17
0058 #define X_RenderReferenceGlyphSet       18
0059 #define X_RenderFreeGlyphSet            19
0060 #define X_RenderAddGlyphs           20
0061 #define X_RenderAddGlyphsFromPicture        21
0062 #define X_RenderFreeGlyphs          22
0063 #define X_RenderCompositeGlyphs8        23
0064 #define X_RenderCompositeGlyphs16       24
0065 #define X_RenderCompositeGlyphs32       25
0066 #define X_RenderFillRectangles          26
0067 /* 0.5 */
0068 #define X_RenderCreateCursor            27
0069 /* 0.6 */
0070 #define X_RenderSetPictureTransform     28
0071 #define X_RenderQueryFilters            29
0072 #define X_RenderSetPictureFilter        30
0073 /* 0.8 */
0074 #define X_RenderCreateAnimCursor        31
0075 /* 0.9 */
0076 #define X_RenderAddTraps            32
0077 /* 0.10 */
0078 #define X_RenderCreateSolidFill             33
0079 #define X_RenderCreateLinearGradient        34
0080 #define X_RenderCreateRadialGradient        35
0081 #define X_RenderCreateConicalGradient       36
0082 #define RenderNumberRequests            (X_RenderCreateConicalGradient+1)
0083 
0084 #define BadPictFormat               0
0085 #define BadPicture              1
0086 #define BadPictOp               2
0087 #define BadGlyphSet             3
0088 #define BadGlyph                4
0089 #define RenderNumberErrors          (BadGlyph+1)
0090 
0091 #define PictTypeIndexed             0
0092 #define PictTypeDirect              1
0093 
0094 #define PictOpMinimum               0
0095 #define PictOpClear             0
0096 #define PictOpSrc               1
0097 #define PictOpDst               2
0098 #define PictOpOver              3
0099 #define PictOpOverReverse           4
0100 #define PictOpIn                5
0101 #define PictOpInReverse             6
0102 #define PictOpOut               7
0103 #define PictOpOutReverse            8
0104 #define PictOpAtop              9
0105 #define PictOpAtopReverse           10
0106 #define PictOpXor               11
0107 #define PictOpAdd               12
0108 #define PictOpSaturate              13
0109 #define PictOpMaximum               13
0110 
0111 /*
0112  * Operators only available in version 0.2
0113  */
0114 #define PictOpDisjointMinimum               0x10
0115 #define PictOpDisjointClear             0x10
0116 #define PictOpDisjointSrc               0x11
0117 #define PictOpDisjointDst               0x12
0118 #define PictOpDisjointOver              0x13
0119 #define PictOpDisjointOverReverse           0x14
0120 #define PictOpDisjointIn                0x15
0121 #define PictOpDisjointInReverse             0x16
0122 #define PictOpDisjointOut               0x17
0123 #define PictOpDisjointOutReverse            0x18
0124 #define PictOpDisjointAtop              0x19
0125 #define PictOpDisjointAtopReverse           0x1a
0126 #define PictOpDisjointXor               0x1b
0127 #define PictOpDisjointMaximum               0x1b
0128 
0129 #define PictOpConjointMinimum               0x20
0130 #define PictOpConjointClear             0x20
0131 #define PictOpConjointSrc               0x21
0132 #define PictOpConjointDst               0x22
0133 #define PictOpConjointOver              0x23
0134 #define PictOpConjointOverReverse           0x24
0135 #define PictOpConjointIn                0x25
0136 #define PictOpConjointInReverse             0x26
0137 #define PictOpConjointOut               0x27
0138 #define PictOpConjointOutReverse            0x28
0139 #define PictOpConjointAtop              0x29
0140 #define PictOpConjointAtopReverse           0x2a
0141 #define PictOpConjointXor               0x2b
0142 #define PictOpConjointMaximum               0x2b
0143 
0144 /*
0145  * Operators only available in version 0.11
0146  */
0147 #define PictOpBlendMinimum              0x30
0148 #define PictOpMultiply                  0x30
0149 #define PictOpScreen                    0x31
0150 #define PictOpOverlay                   0x32
0151 #define PictOpDarken                    0x33
0152 #define PictOpLighten                   0x34
0153 #define PictOpColorDodge                0x35
0154 #define PictOpColorBurn                 0x36
0155 #define PictOpHardLight                 0x37
0156 #define PictOpSoftLight                 0x38
0157 #define PictOpDifference                0x39
0158 #define PictOpExclusion                 0x3a
0159 #define PictOpHSLHue                    0x3b
0160 #define PictOpHSLSaturation             0x3c
0161 #define PictOpHSLColor                  0x3d
0162 #define PictOpHSLLuminosity             0x3e
0163 #define PictOpBlendMaximum              0x3e
0164 
0165 #define PolyEdgeSharp               0
0166 #define PolyEdgeSmooth              1
0167 
0168 #define PolyModePrecise             0
0169 #define PolyModeImprecise           1
0170 
0171 #define CPRepeat                (1 << 0)
0172 #define CPAlphaMap              (1 << 1)
0173 #define CPAlphaXOrigin              (1 << 2)
0174 #define CPAlphaYOrigin              (1 << 3)
0175 #define CPClipXOrigin               (1 << 4)
0176 #define CPClipYOrigin               (1 << 5)
0177 #define CPClipMask              (1 << 6)
0178 #define CPGraphicsExposure          (1 << 7)
0179 #define CPSubwindowMode             (1 << 8)
0180 #define CPPolyEdge              (1 << 9)
0181 #define CPPolyMode              (1 << 10)
0182 #define CPDither                (1 << 11)
0183 #define CPComponentAlpha            (1 << 12)
0184 #define CPLastBit               12
0185 
0186 /* Filters included in 0.6 */
0187 #define FilterNearest               "nearest"
0188 #define FilterBilinear              "bilinear"
0189 /* Filters included in 0.10 */
0190 #define FilterConvolution           "convolution"
0191 
0192 #define FilterFast              "fast"
0193 #define FilterGood              "good"
0194 #define FilterBest              "best"
0195 
0196 #define FilterAliasNone             -1
0197 
0198 /* Subpixel orders included in 0.6 */
0199 #define SubPixelUnknown             0
0200 #define SubPixelHorizontalRGB           1
0201 #define SubPixelHorizontalBGR           2
0202 #define SubPixelVerticalRGB         3
0203 #define SubPixelVerticalBGR         4
0204 #define SubPixelNone                5
0205 
0206 /* Extended repeat attributes included in 0.10 */
0207 #define RepeatNone                          0
0208 #define RepeatNormal                        1
0209 #define RepeatPad                           2
0210 #define RepeatReflect                       3
0211 
0212 #endif  /* _RENDER_H_ */