| /* |
| * $XFree86: xc/include/extensions/render.h,v 1.10 2002/11/06 22:47:49 keithp Exp $ |
| * |
| * Copyright © 2000 SuSE, Inc. |
| * |
| * Permission to use, copy, modify, distribute, and sell this software and its |
| * documentation for any purpose is hereby granted without fee, provided that |
| * the above copyright notice appear in all copies and that both that |
| * copyright notice and this permission notice appear in supporting |
| * documentation, and that the name of SuSE not be used in advertising or |
| * publicity pertaining to distribution of the software without specific, |
| * written prior permission. SuSE makes no representations about the |
| * suitability of this software for any purpose. It is provided "as is" |
| * without express or implied warranty. |
| * |
| * SuSE DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ALL |
| * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL SuSE |
| * BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES |
| * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION |
| * OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN |
| * CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. |
| * |
| * Author: Keith Packard, SuSE, Inc. |
| */ |
| |
| #ifndef _RENDER_H_ |
| #define _RENDER_H_ |
| |
| typedef XID Glyph; |
| typedef XID GlyphSet; |
| typedef XID Picture; |
| typedef XID PictFormat; |
| |
| #define RENDER_NAME "RENDER" |
| #define RENDER_MAJOR 0 |
| #define RENDER_MINOR 10 |
| |
| #define X_RenderQueryVersion 0 |
| #define X_RenderQueryPictFormats 1 |
| #define X_RenderQueryPictIndexValues 2 /* 0.7 */ |
| #define X_RenderQueryDithers 3 |
| #define X_RenderCreatePicture 4 |
| #define X_RenderChangePicture 5 |
| #define X_RenderSetPictureClipRectangles 6 |
| #define X_RenderFreePicture 7 |
| #define X_RenderComposite 8 |
| #define X_RenderScale 9 |
| #define X_RenderTrapezoids 10 |
| #define X_RenderTriangles 11 |
| #define X_RenderTriStrip 12 |
| #define X_RenderTriFan 13 |
| #define X_RenderColorTrapezoids 14 |
| #define X_RenderColorTriangles 15 |
| /* #define X_RenderTransform 16 */ |
| #define X_RenderCreateGlyphSet 17 |
| #define X_RenderReferenceGlyphSet 18 |
| #define X_RenderFreeGlyphSet 19 |
| #define X_RenderAddGlyphs 20 |
| #define X_RenderAddGlyphsFromPicture 21 |
| #define X_RenderFreeGlyphs 22 |
| #define X_RenderCompositeGlyphs8 23 |
| #define X_RenderCompositeGlyphs16 24 |
| #define X_RenderCompositeGlyphs32 25 |
| #define X_RenderFillRectangles 26 |
| /* 0.5 */ |
| #define X_RenderCreateCursor 27 |
| /* 0.6 */ |
| #define X_RenderSetPictureTransform 28 |
| #define X_RenderQueryFilters 29 |
| #define X_RenderSetPictureFilter 30 |
| /* 0.8 */ |
| #define X_RenderCreateAnimCursor 31 |
| /* 0.9 */ |
| #define X_RenderAddTraps 32 |
| /* 0.10 */ |
| #define X_RenderCreateSolidFill 33 |
| #define X_RenderCreateLinearGradient 34 |
| #define X_RenderCreateRadialGradient 35 |
| #define X_RenderCreateConicalGradient 36 |
| #define RenderNumberRequests (X_RenderCreateConicalGradient+1) |
| |
| #define BadPictFormat 0 |
| #define BadPicture 1 |
| #define BadPictOp 2 |
| #define BadGlyphSet 3 |
| #define BadGlyph 4 |
| #define RenderNumberErrors (BadGlyph+1) |
| |
| #define PictTypeIndexed 0 |
| #define PictTypeDirect 1 |
| |
| #define PictOpMinimum 0 |
| #define PictOpClear 0 |
| #define PictOpSrc 1 |
| #define PictOpDst 2 |
| #define PictOpOver 3 |
| #define PictOpOverReverse 4 |
| #define PictOpIn 5 |
| #define PictOpInReverse 6 |
| #define PictOpOut 7 |
| #define PictOpOutReverse 8 |
| #define PictOpAtop 9 |
| #define PictOpAtopReverse 10 |
| #define PictOpXor 11 |
| #define PictOpAdd 12 |
| #define PictOpSaturate 13 |
| #define PictOpMaximum 13 |
| |
| /* |
| * Operators only available in version 0.2 |
| */ |
| #define PictOpDisjointMinimum 0x10 |
| #define PictOpDisjointClear 0x10 |
| #define PictOpDisjointSrc 0x11 |
| #define PictOpDisjointDst 0x12 |
| #define PictOpDisjointOver 0x13 |
| #define PictOpDisjointOverReverse 0x14 |
| #define PictOpDisjointIn 0x15 |
| #define PictOpDisjointInReverse 0x16 |
| #define PictOpDisjointOut 0x17 |
| #define PictOpDisjointOutReverse 0x18 |
| #define PictOpDisjointAtop 0x19 |
| #define PictOpDisjointAtopReverse 0x1a |
| #define PictOpDisjointXor 0x1b |
| #define PictOpDisjointMaximum 0x1b |
| |
| #define PictOpConjointMinimum 0x20 |
| #define PictOpConjointClear 0x20 |
| #define PictOpConjointSrc 0x21 |
| #define PictOpConjointDst 0x22 |
| #define PictOpConjointOver 0x23 |
| #define PictOpConjointOverReverse 0x24 |
| #define PictOpConjointIn 0x25 |
| #define PictOpConjointInReverse 0x26 |
| #define PictOpConjointOut 0x27 |
| #define PictOpConjointOutReverse 0x28 |
| #define PictOpConjointAtop 0x29 |
| #define PictOpConjointAtopReverse 0x2a |
| #define PictOpConjointXor 0x2b |
| #define PictOpConjointMaximum 0x2b |
| |
| #define PolyEdgeSharp 0 |
| #define PolyEdgeSmooth 1 |
| |
| #define PolyModePrecise 0 |
| #define PolyModeImprecise 1 |
| |
| #define CPRepeat (1 << 0) |
| #define CPAlphaMap (1 << 1) |
| #define CPAlphaXOrigin (1 << 2) |
| #define CPAlphaYOrigin (1 << 3) |
| #define CPClipXOrigin (1 << 4) |
| #define CPClipYOrigin (1 << 5) |
| #define CPClipMask (1 << 6) |
| #define CPGraphicsExposure (1 << 7) |
| #define CPSubwindowMode (1 << 8) |
| #define CPPolyEdge (1 << 9) |
| #define CPPolyMode (1 << 10) |
| #define CPDither (1 << 11) |
| #define CPComponentAlpha (1 << 12) |
| #define CPLastBit 12 |
| |
| /* Filters included in 0.6 */ |
| #define FilterNearest "nearest" |
| #define FilterBilinear "bilinear" |
| /* Filters included in 0.10 */ |
| #define FilterConvolution "convolution" |
| |
| #define FilterFast "fast" |
| #define FilterGood "good" |
| #define FilterBest "best" |
| |
| #define FilterAliasNone -1 |
| |
| /* Subpixel orders included in 0.6 */ |
| #define SubPixelUnknown 0 |
| #define SubPixelHorizontalRGB 1 |
| #define SubPixelHorizontalBGR 2 |
| #define SubPixelVerticalRGB 3 |
| #define SubPixelVerticalBGR 4 |
| #define SubPixelNone 5 |
| |
| /* Extended repeat attributes included in 0.10 */ |
| #define RepeatNone 0 |
| #define RepeatNormal 1 |
| #define RepeatPad 2 |
| #define RepeatReflect 3 |
| |
| #endif /* _RENDER_H_ */ |