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_ */