1*b1cdbd2cSJim Jagielski /* 2*b1cdbd2cSJim Jagielski * 3*b1cdbd2cSJim Jagielski * Copyright © 2000 SuSE, Inc. 4*b1cdbd2cSJim Jagielski * 5*b1cdbd2cSJim Jagielski * Permission to use, copy, modify, distribute, and sell this software and its 6*b1cdbd2cSJim Jagielski * documentation for any purpose is hereby granted without fee, provided that 7*b1cdbd2cSJim Jagielski * the above copyright notice appear in all copies and that both that 8*b1cdbd2cSJim Jagielski * copyright notice and this permission notice appear in supporting 9*b1cdbd2cSJim Jagielski * documentation, and that the name of SuSE not be used in advertising or 10*b1cdbd2cSJim Jagielski * publicity pertaining to distribution of the software without specific, 11*b1cdbd2cSJim Jagielski * written prior permission. SuSE makes no representations about the 12*b1cdbd2cSJim Jagielski * suitability of this software for any purpose. It is provided "as is" 13*b1cdbd2cSJim Jagielski * without express or implied warranty. 14*b1cdbd2cSJim Jagielski * 15*b1cdbd2cSJim Jagielski * SuSE DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ALL 16*b1cdbd2cSJim Jagielski * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL SuSE 17*b1cdbd2cSJim Jagielski * BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES 18*b1cdbd2cSJim Jagielski * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION 19*b1cdbd2cSJim Jagielski * OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN 20*b1cdbd2cSJim Jagielski * CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. 21*b1cdbd2cSJim Jagielski * 22*b1cdbd2cSJim Jagielski * Author: Keith Packard, SuSE, Inc. 23*b1cdbd2cSJim Jagielski */ 24*b1cdbd2cSJim Jagielski 25*b1cdbd2cSJim Jagielski #ifndef _XRENDER_H_ 26*b1cdbd2cSJim Jagielski #define _XRENDER_H_ 27*b1cdbd2cSJim Jagielski 28*b1cdbd2cSJim Jagielski #include <X11/Xlib.h> 29*b1cdbd2cSJim Jagielski #include <X11/Xfuncproto.h> 30*b1cdbd2cSJim Jagielski #include <X11/Xosdefs.h> 31*b1cdbd2cSJim Jagielski #include <X11/Xutil.h> 32*b1cdbd2cSJim Jagielski 33*b1cdbd2cSJim Jagielski #include <X11/extensions/render.h> 34*b1cdbd2cSJim Jagielski 35*b1cdbd2cSJim Jagielski typedef struct { 36*b1cdbd2cSJim Jagielski short red; 37*b1cdbd2cSJim Jagielski short redMask; 38*b1cdbd2cSJim Jagielski short green; 39*b1cdbd2cSJim Jagielski short greenMask; 40*b1cdbd2cSJim Jagielski short blue; 41*b1cdbd2cSJim Jagielski short blueMask; 42*b1cdbd2cSJim Jagielski short alpha; 43*b1cdbd2cSJim Jagielski short alphaMask; 44*b1cdbd2cSJim Jagielski } XRenderDirectFormat; 45*b1cdbd2cSJim Jagielski 46*b1cdbd2cSJim Jagielski typedef struct { 47*b1cdbd2cSJim Jagielski PictFormat id; 48*b1cdbd2cSJim Jagielski int type; 49*b1cdbd2cSJim Jagielski int depth; 50*b1cdbd2cSJim Jagielski XRenderDirectFormat direct; 51*b1cdbd2cSJim Jagielski Colormap colormap; 52*b1cdbd2cSJim Jagielski } XRenderPictFormat; 53*b1cdbd2cSJim Jagielski 54*b1cdbd2cSJim Jagielski #define PictFormatID (1 << 0) 55*b1cdbd2cSJim Jagielski #define PictFormatType (1 << 1) 56*b1cdbd2cSJim Jagielski #define PictFormatDepth (1 << 2) 57*b1cdbd2cSJim Jagielski #define PictFormatRed (1 << 3) 58*b1cdbd2cSJim Jagielski #define PictFormatRedMask (1 << 4) 59*b1cdbd2cSJim Jagielski #define PictFormatGreen (1 << 5) 60*b1cdbd2cSJim Jagielski #define PictFormatGreenMask (1 << 6) 61*b1cdbd2cSJim Jagielski #define PictFormatBlue (1 << 7) 62*b1cdbd2cSJim Jagielski #define PictFormatBlueMask (1 << 8) 63*b1cdbd2cSJim Jagielski #define PictFormatAlpha (1 << 9) 64*b1cdbd2cSJim Jagielski #define PictFormatAlphaMask (1 << 10) 65*b1cdbd2cSJim Jagielski #define PictFormatColormap (1 << 11) 66*b1cdbd2cSJim Jagielski 67*b1cdbd2cSJim Jagielski typedef struct _XRenderPictureAttributes { 68*b1cdbd2cSJim Jagielski int repeat; 69*b1cdbd2cSJim Jagielski Picture alpha_map; 70*b1cdbd2cSJim Jagielski int alpha_x_origin; 71*b1cdbd2cSJim Jagielski int alpha_y_origin; 72*b1cdbd2cSJim Jagielski int clip_x_origin; 73*b1cdbd2cSJim Jagielski int clip_y_origin; 74*b1cdbd2cSJim Jagielski Pixmap clip_mask; 75*b1cdbd2cSJim Jagielski Bool graphics_exposures; 76*b1cdbd2cSJim Jagielski int subwindow_mode; 77*b1cdbd2cSJim Jagielski int poly_edge; 78*b1cdbd2cSJim Jagielski int poly_mode; 79*b1cdbd2cSJim Jagielski Atom dither; 80*b1cdbd2cSJim Jagielski Bool component_alpha; 81*b1cdbd2cSJim Jagielski } XRenderPictureAttributes; 82*b1cdbd2cSJim Jagielski 83*b1cdbd2cSJim Jagielski typedef struct { 84*b1cdbd2cSJim Jagielski unsigned short red; 85*b1cdbd2cSJim Jagielski unsigned short green; 86*b1cdbd2cSJim Jagielski unsigned short blue; 87*b1cdbd2cSJim Jagielski unsigned short alpha; 88*b1cdbd2cSJim Jagielski } XRenderColor; 89*b1cdbd2cSJim Jagielski 90*b1cdbd2cSJim Jagielski typedef struct _XGlyphInfo { 91*b1cdbd2cSJim Jagielski unsigned short width; 92*b1cdbd2cSJim Jagielski unsigned short height; 93*b1cdbd2cSJim Jagielski short x; 94*b1cdbd2cSJim Jagielski short y; 95*b1cdbd2cSJim Jagielski short xOff; 96*b1cdbd2cSJim Jagielski short yOff; 97*b1cdbd2cSJim Jagielski } XGlyphInfo; 98*b1cdbd2cSJim Jagielski 99*b1cdbd2cSJim Jagielski typedef struct _XGlyphElt8 { 100*b1cdbd2cSJim Jagielski GlyphSet glyphset; 101*b1cdbd2cSJim Jagielski _Xconst char *chars; 102*b1cdbd2cSJim Jagielski int nchars; 103*b1cdbd2cSJim Jagielski int xOff; 104*b1cdbd2cSJim Jagielski int yOff; 105*b1cdbd2cSJim Jagielski } XGlyphElt8; 106*b1cdbd2cSJim Jagielski 107*b1cdbd2cSJim Jagielski typedef struct _XGlyphElt16 { 108*b1cdbd2cSJim Jagielski GlyphSet glyphset; 109*b1cdbd2cSJim Jagielski _Xconst unsigned short *chars; 110*b1cdbd2cSJim Jagielski int nchars; 111*b1cdbd2cSJim Jagielski int xOff; 112*b1cdbd2cSJim Jagielski int yOff; 113*b1cdbd2cSJim Jagielski } XGlyphElt16; 114*b1cdbd2cSJim Jagielski 115*b1cdbd2cSJim Jagielski typedef struct _XGlyphElt32 { 116*b1cdbd2cSJim Jagielski GlyphSet glyphset; 117*b1cdbd2cSJim Jagielski _Xconst unsigned int *chars; 118*b1cdbd2cSJim Jagielski int nchars; 119*b1cdbd2cSJim Jagielski int xOff; 120*b1cdbd2cSJim Jagielski int yOff; 121*b1cdbd2cSJim Jagielski } XGlyphElt32; 122*b1cdbd2cSJim Jagielski 123*b1cdbd2cSJim Jagielski typedef double XDouble; 124*b1cdbd2cSJim Jagielski 125*b1cdbd2cSJim Jagielski typedef struct _XPointDouble { 126*b1cdbd2cSJim Jagielski XDouble x, y; 127*b1cdbd2cSJim Jagielski } XPointDouble; 128*b1cdbd2cSJim Jagielski 129*b1cdbd2cSJim Jagielski #define XDoubleToFixed(f) ((XFixed) ((f) * 65536)) 130*b1cdbd2cSJim Jagielski #define XFixedToDouble(f) (((XDouble) (f)) / 65536) 131*b1cdbd2cSJim Jagielski 132*b1cdbd2cSJim Jagielski typedef int XFixed; 133*b1cdbd2cSJim Jagielski 134*b1cdbd2cSJim Jagielski typedef struct _XPointFixed { 135*b1cdbd2cSJim Jagielski XFixed x, y; 136*b1cdbd2cSJim Jagielski } XPointFixed; 137*b1cdbd2cSJim Jagielski 138*b1cdbd2cSJim Jagielski typedef struct _XLineFixed { 139*b1cdbd2cSJim Jagielski XPointFixed p1, p2; 140*b1cdbd2cSJim Jagielski } XLineFixed; 141*b1cdbd2cSJim Jagielski 142*b1cdbd2cSJim Jagielski typedef struct _XTriangle { 143*b1cdbd2cSJim Jagielski XPointFixed p1, p2, p3; 144*b1cdbd2cSJim Jagielski } XTriangle; 145*b1cdbd2cSJim Jagielski 146*b1cdbd2cSJim Jagielski typedef struct _XCircle { 147*b1cdbd2cSJim Jagielski XFixed x; 148*b1cdbd2cSJim Jagielski XFixed y; 149*b1cdbd2cSJim Jagielski XFixed radius; 150*b1cdbd2cSJim Jagielski } XCircle; 151*b1cdbd2cSJim Jagielski 152*b1cdbd2cSJim Jagielski typedef struct _XTrapezoid { 153*b1cdbd2cSJim Jagielski XFixed top, bottom; 154*b1cdbd2cSJim Jagielski XLineFixed left, right; 155*b1cdbd2cSJim Jagielski } XTrapezoid; 156*b1cdbd2cSJim Jagielski 157*b1cdbd2cSJim Jagielski typedef struct _XTransform { 158*b1cdbd2cSJim Jagielski XFixed matrix[3][3]; 159*b1cdbd2cSJim Jagielski } XTransform; 160*b1cdbd2cSJim Jagielski 161*b1cdbd2cSJim Jagielski typedef struct _XFilters { 162*b1cdbd2cSJim Jagielski int nfilter; 163*b1cdbd2cSJim Jagielski char **filter; 164*b1cdbd2cSJim Jagielski int nalias; 165*b1cdbd2cSJim Jagielski short *alias; 166*b1cdbd2cSJim Jagielski } XFilters; 167*b1cdbd2cSJim Jagielski 168*b1cdbd2cSJim Jagielski typedef struct _XIndexValue { 169*b1cdbd2cSJim Jagielski unsigned long pixel; 170*b1cdbd2cSJim Jagielski unsigned short red, green, blue, alpha; 171*b1cdbd2cSJim Jagielski } XIndexValue; 172*b1cdbd2cSJim Jagielski 173*b1cdbd2cSJim Jagielski typedef struct _XAnimCursor { 174*b1cdbd2cSJim Jagielski Cursor cursor; 175*b1cdbd2cSJim Jagielski unsigned long delay; 176*b1cdbd2cSJim Jagielski } XAnimCursor; 177*b1cdbd2cSJim Jagielski 178*b1cdbd2cSJim Jagielski typedef struct _XSpanFix { 179*b1cdbd2cSJim Jagielski XFixed left, right, y; 180*b1cdbd2cSJim Jagielski } XSpanFix; 181*b1cdbd2cSJim Jagielski 182*b1cdbd2cSJim Jagielski typedef struct _XTrap { 183*b1cdbd2cSJim Jagielski XSpanFix top, bottom; 184*b1cdbd2cSJim Jagielski } XTrap; 185*b1cdbd2cSJim Jagielski 186*b1cdbd2cSJim Jagielski typedef struct _XLinearGradient { 187*b1cdbd2cSJim Jagielski XPointFixed p1; 188*b1cdbd2cSJim Jagielski XPointFixed p2; 189*b1cdbd2cSJim Jagielski } XLinearGradient; 190*b1cdbd2cSJim Jagielski 191*b1cdbd2cSJim Jagielski typedef struct _XRadialGradient { 192*b1cdbd2cSJim Jagielski XCircle inner; 193*b1cdbd2cSJim Jagielski XCircle outer; 194*b1cdbd2cSJim Jagielski } XRadialGradient; 195*b1cdbd2cSJim Jagielski 196*b1cdbd2cSJim Jagielski typedef struct _XConicalGradient { 197*b1cdbd2cSJim Jagielski XPointFixed center; 198*b1cdbd2cSJim Jagielski XFixed angle; /* in degrees */ 199*b1cdbd2cSJim Jagielski } XConicalGradient; 200*b1cdbd2cSJim Jagielski 201*b1cdbd2cSJim Jagielski _XFUNCPROTOBEGIN 202*b1cdbd2cSJim Jagielski 203*b1cdbd2cSJim Jagielski Bool XRenderQueryExtension (Display *dpy, int *event_basep, int *error_basep); 204*b1cdbd2cSJim Jagielski 205*b1cdbd2cSJim Jagielski Status XRenderQueryVersion (Display *dpy, 206*b1cdbd2cSJim Jagielski int *major_versionp, 207*b1cdbd2cSJim Jagielski int *minor_versionp); 208*b1cdbd2cSJim Jagielski 209*b1cdbd2cSJim Jagielski Status XRenderQueryFormats (Display *dpy); 210*b1cdbd2cSJim Jagielski 211*b1cdbd2cSJim Jagielski int XRenderQuerySubpixelOrder (Display *dpy, int screen); 212*b1cdbd2cSJim Jagielski 213*b1cdbd2cSJim Jagielski Bool XRenderSetSubpixelOrder (Display *dpy, int screen, int subpixel); 214*b1cdbd2cSJim Jagielski 215*b1cdbd2cSJim Jagielski XRenderPictFormat * 216*b1cdbd2cSJim Jagielski XRenderFindVisualFormat (Display *dpy, _Xconst Visual *visual); 217*b1cdbd2cSJim Jagielski 218*b1cdbd2cSJim Jagielski XRenderPictFormat * 219*b1cdbd2cSJim Jagielski XRenderFindFormat (Display *dpy, 220*b1cdbd2cSJim Jagielski unsigned long mask, 221*b1cdbd2cSJim Jagielski _Xconst XRenderPictFormat *templ, 222*b1cdbd2cSJim Jagielski int count); 223*b1cdbd2cSJim Jagielski 224*b1cdbd2cSJim Jagielski #define PictStandardARGB32 0 225*b1cdbd2cSJim Jagielski #define PictStandardRGB24 1 226*b1cdbd2cSJim Jagielski #define PictStandardA8 2 227*b1cdbd2cSJim Jagielski #define PictStandardA4 3 228*b1cdbd2cSJim Jagielski #define PictStandardA1 4 229*b1cdbd2cSJim Jagielski #define PictStandardNUM 5 230*b1cdbd2cSJim Jagielski 231*b1cdbd2cSJim Jagielski XRenderPictFormat * 232*b1cdbd2cSJim Jagielski XRenderFindStandardFormat (Display *dpy, 233*b1cdbd2cSJim Jagielski int format); 234*b1cdbd2cSJim Jagielski 235*b1cdbd2cSJim Jagielski XIndexValue * 236*b1cdbd2cSJim Jagielski XRenderQueryPictIndexValues(Display *dpy, 237*b1cdbd2cSJim Jagielski _Xconst XRenderPictFormat *format, 238*b1cdbd2cSJim Jagielski int *num); 239*b1cdbd2cSJim Jagielski 240*b1cdbd2cSJim Jagielski Picture 241*b1cdbd2cSJim Jagielski XRenderCreatePicture (Display *dpy, 242*b1cdbd2cSJim Jagielski Drawable drawable, 243*b1cdbd2cSJim Jagielski _Xconst XRenderPictFormat *format, 244*b1cdbd2cSJim Jagielski unsigned long valuemask, 245*b1cdbd2cSJim Jagielski _Xconst XRenderPictureAttributes *attributes); 246*b1cdbd2cSJim Jagielski 247*b1cdbd2cSJim Jagielski void 248*b1cdbd2cSJim Jagielski XRenderChangePicture (Display *dpy, 249*b1cdbd2cSJim Jagielski Picture picture, 250*b1cdbd2cSJim Jagielski unsigned long valuemask, 251*b1cdbd2cSJim Jagielski _Xconst XRenderPictureAttributes *attributes); 252*b1cdbd2cSJim Jagielski 253*b1cdbd2cSJim Jagielski void 254*b1cdbd2cSJim Jagielski XRenderSetPictureClipRectangles (Display *dpy, 255*b1cdbd2cSJim Jagielski Picture picture, 256*b1cdbd2cSJim Jagielski int xOrigin, 257*b1cdbd2cSJim Jagielski int yOrigin, 258*b1cdbd2cSJim Jagielski _Xconst XRectangle *rects, 259*b1cdbd2cSJim Jagielski int n); 260*b1cdbd2cSJim Jagielski 261*b1cdbd2cSJim Jagielski void 262*b1cdbd2cSJim Jagielski XRenderSetPictureClipRegion (Display *dpy, 263*b1cdbd2cSJim Jagielski Picture picture, 264*b1cdbd2cSJim Jagielski Region r); 265*b1cdbd2cSJim Jagielski 266*b1cdbd2cSJim Jagielski void 267*b1cdbd2cSJim Jagielski XRenderSetPictureTransform (Display *dpy, 268*b1cdbd2cSJim Jagielski Picture picture, 269*b1cdbd2cSJim Jagielski XTransform *transform); 270*b1cdbd2cSJim Jagielski 271*b1cdbd2cSJim Jagielski void 272*b1cdbd2cSJim Jagielski XRenderFreePicture (Display *dpy, 273*b1cdbd2cSJim Jagielski Picture picture); 274*b1cdbd2cSJim Jagielski 275*b1cdbd2cSJim Jagielski void 276*b1cdbd2cSJim Jagielski XRenderComposite (Display *dpy, 277*b1cdbd2cSJim Jagielski int op, 278*b1cdbd2cSJim Jagielski Picture src, 279*b1cdbd2cSJim Jagielski Picture mask, 280*b1cdbd2cSJim Jagielski Picture dst, 281*b1cdbd2cSJim Jagielski int src_x, 282*b1cdbd2cSJim Jagielski int src_y, 283*b1cdbd2cSJim Jagielski int mask_x, 284*b1cdbd2cSJim Jagielski int mask_y, 285*b1cdbd2cSJim Jagielski int dst_x, 286*b1cdbd2cSJim Jagielski int dst_y, 287*b1cdbd2cSJim Jagielski unsigned int width, 288*b1cdbd2cSJim Jagielski unsigned int height); 289*b1cdbd2cSJim Jagielski 290*b1cdbd2cSJim Jagielski GlyphSet 291*b1cdbd2cSJim Jagielski XRenderCreateGlyphSet (Display *dpy, _Xconst XRenderPictFormat *format); 292*b1cdbd2cSJim Jagielski 293*b1cdbd2cSJim Jagielski GlyphSet 294*b1cdbd2cSJim Jagielski XRenderReferenceGlyphSet (Display *dpy, GlyphSet existing); 295*b1cdbd2cSJim Jagielski 296*b1cdbd2cSJim Jagielski void 297*b1cdbd2cSJim Jagielski XRenderFreeGlyphSet (Display *dpy, GlyphSet glyphset); 298*b1cdbd2cSJim Jagielski 299*b1cdbd2cSJim Jagielski void 300*b1cdbd2cSJim Jagielski XRenderAddGlyphs (Display *dpy, 301*b1cdbd2cSJim Jagielski GlyphSet glyphset, 302*b1cdbd2cSJim Jagielski _Xconst Glyph *gids, 303*b1cdbd2cSJim Jagielski _Xconst XGlyphInfo *glyphs, 304*b1cdbd2cSJim Jagielski int nglyphs, 305*b1cdbd2cSJim Jagielski _Xconst char *images, 306*b1cdbd2cSJim Jagielski int nbyte_images); 307*b1cdbd2cSJim Jagielski 308*b1cdbd2cSJim Jagielski void 309*b1cdbd2cSJim Jagielski XRenderFreeGlyphs (Display *dpy, 310*b1cdbd2cSJim Jagielski GlyphSet glyphset, 311*b1cdbd2cSJim Jagielski _Xconst Glyph *gids, 312*b1cdbd2cSJim Jagielski int nglyphs); 313*b1cdbd2cSJim Jagielski 314*b1cdbd2cSJim Jagielski void 315*b1cdbd2cSJim Jagielski XRenderCompositeString8 (Display *dpy, 316*b1cdbd2cSJim Jagielski int op, 317*b1cdbd2cSJim Jagielski Picture src, 318*b1cdbd2cSJim Jagielski Picture dst, 319*b1cdbd2cSJim Jagielski _Xconst XRenderPictFormat *maskFormat, 320*b1cdbd2cSJim Jagielski GlyphSet glyphset, 321*b1cdbd2cSJim Jagielski int xSrc, 322*b1cdbd2cSJim Jagielski int ySrc, 323*b1cdbd2cSJim Jagielski int xDst, 324*b1cdbd2cSJim Jagielski int yDst, 325*b1cdbd2cSJim Jagielski _Xconst char *string, 326*b1cdbd2cSJim Jagielski int nchar); 327*b1cdbd2cSJim Jagielski 328*b1cdbd2cSJim Jagielski void 329*b1cdbd2cSJim Jagielski XRenderCompositeString16 (Display *dpy, 330*b1cdbd2cSJim Jagielski int op, 331*b1cdbd2cSJim Jagielski Picture src, 332*b1cdbd2cSJim Jagielski Picture dst, 333*b1cdbd2cSJim Jagielski _Xconst XRenderPictFormat *maskFormat, 334*b1cdbd2cSJim Jagielski GlyphSet glyphset, 335*b1cdbd2cSJim Jagielski int xSrc, 336*b1cdbd2cSJim Jagielski int ySrc, 337*b1cdbd2cSJim Jagielski int xDst, 338*b1cdbd2cSJim Jagielski int yDst, 339*b1cdbd2cSJim Jagielski _Xconst unsigned short *string, 340*b1cdbd2cSJim Jagielski int nchar); 341*b1cdbd2cSJim Jagielski 342*b1cdbd2cSJim Jagielski void 343*b1cdbd2cSJim Jagielski XRenderCompositeString32 (Display *dpy, 344*b1cdbd2cSJim Jagielski int op, 345*b1cdbd2cSJim Jagielski Picture src, 346*b1cdbd2cSJim Jagielski Picture dst, 347*b1cdbd2cSJim Jagielski _Xconst XRenderPictFormat *maskFormat, 348*b1cdbd2cSJim Jagielski GlyphSet glyphset, 349*b1cdbd2cSJim Jagielski int xSrc, 350*b1cdbd2cSJim Jagielski int ySrc, 351*b1cdbd2cSJim Jagielski int xDst, 352*b1cdbd2cSJim Jagielski int yDst, 353*b1cdbd2cSJim Jagielski _Xconst unsigned int *string, 354*b1cdbd2cSJim Jagielski int nchar); 355*b1cdbd2cSJim Jagielski 356*b1cdbd2cSJim Jagielski void 357*b1cdbd2cSJim Jagielski XRenderCompositeText8 (Display *dpy, 358*b1cdbd2cSJim Jagielski int op, 359*b1cdbd2cSJim Jagielski Picture src, 360*b1cdbd2cSJim Jagielski Picture dst, 361*b1cdbd2cSJim Jagielski _Xconst XRenderPictFormat *maskFormat, 362*b1cdbd2cSJim Jagielski int xSrc, 363*b1cdbd2cSJim Jagielski int ySrc, 364*b1cdbd2cSJim Jagielski int xDst, 365*b1cdbd2cSJim Jagielski int yDst, 366*b1cdbd2cSJim Jagielski _Xconst XGlyphElt8 *elts, 367*b1cdbd2cSJim Jagielski int nelt); 368*b1cdbd2cSJim Jagielski 369*b1cdbd2cSJim Jagielski void 370*b1cdbd2cSJim Jagielski XRenderCompositeText16 (Display *dpy, 371*b1cdbd2cSJim Jagielski int op, 372*b1cdbd2cSJim Jagielski Picture src, 373*b1cdbd2cSJim Jagielski Picture dst, 374*b1cdbd2cSJim Jagielski _Xconst XRenderPictFormat *maskFormat, 375*b1cdbd2cSJim Jagielski int xSrc, 376*b1cdbd2cSJim Jagielski int ySrc, 377*b1cdbd2cSJim Jagielski int xDst, 378*b1cdbd2cSJim Jagielski int yDst, 379*b1cdbd2cSJim Jagielski _Xconst XGlyphElt16 *elts, 380*b1cdbd2cSJim Jagielski int nelt); 381*b1cdbd2cSJim Jagielski 382*b1cdbd2cSJim Jagielski void 383*b1cdbd2cSJim Jagielski XRenderCompositeText32 (Display *dpy, 384*b1cdbd2cSJim Jagielski int op, 385*b1cdbd2cSJim Jagielski Picture src, 386*b1cdbd2cSJim Jagielski Picture dst, 387*b1cdbd2cSJim Jagielski _Xconst XRenderPictFormat *maskFormat, 388*b1cdbd2cSJim Jagielski int xSrc, 389*b1cdbd2cSJim Jagielski int ySrc, 390*b1cdbd2cSJim Jagielski int xDst, 391*b1cdbd2cSJim Jagielski int yDst, 392*b1cdbd2cSJim Jagielski _Xconst XGlyphElt32 *elts, 393*b1cdbd2cSJim Jagielski int nelt); 394*b1cdbd2cSJim Jagielski 395*b1cdbd2cSJim Jagielski void 396*b1cdbd2cSJim Jagielski XRenderFillRectangle (Display *dpy, 397*b1cdbd2cSJim Jagielski int op, 398*b1cdbd2cSJim Jagielski Picture dst, 399*b1cdbd2cSJim Jagielski _Xconst XRenderColor *color, 400*b1cdbd2cSJim Jagielski int x, 401*b1cdbd2cSJim Jagielski int y, 402*b1cdbd2cSJim Jagielski unsigned int width, 403*b1cdbd2cSJim Jagielski unsigned int height); 404*b1cdbd2cSJim Jagielski 405*b1cdbd2cSJim Jagielski void 406*b1cdbd2cSJim Jagielski XRenderFillRectangles (Display *dpy, 407*b1cdbd2cSJim Jagielski int op, 408*b1cdbd2cSJim Jagielski Picture dst, 409*b1cdbd2cSJim Jagielski _Xconst XRenderColor *color, 410*b1cdbd2cSJim Jagielski _Xconst XRectangle *rectangles, 411*b1cdbd2cSJim Jagielski int n_rects); 412*b1cdbd2cSJim Jagielski 413*b1cdbd2cSJim Jagielski void 414*b1cdbd2cSJim Jagielski XRenderCompositeTrapezoids (Display *dpy, 415*b1cdbd2cSJim Jagielski int op, 416*b1cdbd2cSJim Jagielski Picture src, 417*b1cdbd2cSJim Jagielski Picture dst, 418*b1cdbd2cSJim Jagielski _Xconst XRenderPictFormat *maskFormat, 419*b1cdbd2cSJim Jagielski int xSrc, 420*b1cdbd2cSJim Jagielski int ySrc, 421*b1cdbd2cSJim Jagielski _Xconst XTrapezoid *traps, 422*b1cdbd2cSJim Jagielski int ntrap); 423*b1cdbd2cSJim Jagielski 424*b1cdbd2cSJim Jagielski void 425*b1cdbd2cSJim Jagielski XRenderCompositeTriangles (Display *dpy, 426*b1cdbd2cSJim Jagielski int op, 427*b1cdbd2cSJim Jagielski Picture src, 428*b1cdbd2cSJim Jagielski Picture dst, 429*b1cdbd2cSJim Jagielski _Xconst XRenderPictFormat *maskFormat, 430*b1cdbd2cSJim Jagielski int xSrc, 431*b1cdbd2cSJim Jagielski int ySrc, 432*b1cdbd2cSJim Jagielski _Xconst XTriangle *triangles, 433*b1cdbd2cSJim Jagielski int ntriangle); 434*b1cdbd2cSJim Jagielski 435*b1cdbd2cSJim Jagielski void 436*b1cdbd2cSJim Jagielski XRenderCompositeTriStrip (Display *dpy, 437*b1cdbd2cSJim Jagielski int op, 438*b1cdbd2cSJim Jagielski Picture src, 439*b1cdbd2cSJim Jagielski Picture dst, 440*b1cdbd2cSJim Jagielski _Xconst XRenderPictFormat *maskFormat, 441*b1cdbd2cSJim Jagielski int xSrc, 442*b1cdbd2cSJim Jagielski int ySrc, 443*b1cdbd2cSJim Jagielski _Xconst XPointFixed *points, 444*b1cdbd2cSJim Jagielski int npoint); 445*b1cdbd2cSJim Jagielski 446*b1cdbd2cSJim Jagielski void 447*b1cdbd2cSJim Jagielski XRenderCompositeTriFan (Display *dpy, 448*b1cdbd2cSJim Jagielski int op, 449*b1cdbd2cSJim Jagielski Picture src, 450*b1cdbd2cSJim Jagielski Picture dst, 451*b1cdbd2cSJim Jagielski _Xconst XRenderPictFormat *maskFormat, 452*b1cdbd2cSJim Jagielski int xSrc, 453*b1cdbd2cSJim Jagielski int ySrc, 454*b1cdbd2cSJim Jagielski _Xconst XPointFixed *points, 455*b1cdbd2cSJim Jagielski int npoint); 456*b1cdbd2cSJim Jagielski 457*b1cdbd2cSJim Jagielski void 458*b1cdbd2cSJim Jagielski XRenderCompositeDoublePoly (Display *dpy, 459*b1cdbd2cSJim Jagielski int op, 460*b1cdbd2cSJim Jagielski Picture src, 461*b1cdbd2cSJim Jagielski Picture dst, 462*b1cdbd2cSJim Jagielski _Xconst XRenderPictFormat *maskFormat, 463*b1cdbd2cSJim Jagielski int xSrc, 464*b1cdbd2cSJim Jagielski int ySrc, 465*b1cdbd2cSJim Jagielski int xDst, 466*b1cdbd2cSJim Jagielski int yDst, 467*b1cdbd2cSJim Jagielski _Xconst XPointDouble *fpoints, 468*b1cdbd2cSJim Jagielski int npoints, 469*b1cdbd2cSJim Jagielski int winding); 470*b1cdbd2cSJim Jagielski Status 471*b1cdbd2cSJim Jagielski XRenderParseColor(Display *dpy, 472*b1cdbd2cSJim Jagielski char *spec, 473*b1cdbd2cSJim Jagielski XRenderColor *def); 474*b1cdbd2cSJim Jagielski 475*b1cdbd2cSJim Jagielski Cursor 476*b1cdbd2cSJim Jagielski XRenderCreateCursor (Display *dpy, 477*b1cdbd2cSJim Jagielski Picture source, 478*b1cdbd2cSJim Jagielski unsigned int x, 479*b1cdbd2cSJim Jagielski unsigned int y); 480*b1cdbd2cSJim Jagielski 481*b1cdbd2cSJim Jagielski XFilters * 482*b1cdbd2cSJim Jagielski XRenderQueryFilters (Display *dpy, Drawable drawable); 483*b1cdbd2cSJim Jagielski 484*b1cdbd2cSJim Jagielski void 485*b1cdbd2cSJim Jagielski XRenderSetPictureFilter (Display *dpy, 486*b1cdbd2cSJim Jagielski Picture picture, 487*b1cdbd2cSJim Jagielski const char *filter, 488*b1cdbd2cSJim Jagielski XFixed *params, 489*b1cdbd2cSJim Jagielski int nparams); 490*b1cdbd2cSJim Jagielski 491*b1cdbd2cSJim Jagielski Cursor 492*b1cdbd2cSJim Jagielski XRenderCreateAnimCursor (Display *dpy, 493*b1cdbd2cSJim Jagielski int ncursor, 494*b1cdbd2cSJim Jagielski XAnimCursor *cursors); 495*b1cdbd2cSJim Jagielski 496*b1cdbd2cSJim Jagielski 497*b1cdbd2cSJim Jagielski void 498*b1cdbd2cSJim Jagielski XRenderAddTraps (Display *dpy, 499*b1cdbd2cSJim Jagielski Picture picture, 500*b1cdbd2cSJim Jagielski int xOff, 501*b1cdbd2cSJim Jagielski int yOff, 502*b1cdbd2cSJim Jagielski _Xconst XTrap *traps, 503*b1cdbd2cSJim Jagielski int ntrap); 504*b1cdbd2cSJim Jagielski 505*b1cdbd2cSJim Jagielski Picture XRenderCreateSolidFill (Display *dpy, 506*b1cdbd2cSJim Jagielski const XRenderColor *color); 507*b1cdbd2cSJim Jagielski 508*b1cdbd2cSJim Jagielski Picture XRenderCreateLinearGradient (Display *dpy, 509*b1cdbd2cSJim Jagielski const XLinearGradient *gradient, 510*b1cdbd2cSJim Jagielski const XFixed *stops, 511*b1cdbd2cSJim Jagielski const XRenderColor *colors, 512*b1cdbd2cSJim Jagielski int nstops); 513*b1cdbd2cSJim Jagielski 514*b1cdbd2cSJim Jagielski Picture XRenderCreateRadialGradient (Display *dpy, 515*b1cdbd2cSJim Jagielski const XRadialGradient *gradient, 516*b1cdbd2cSJim Jagielski const XFixed *stops, 517*b1cdbd2cSJim Jagielski const XRenderColor *colors, 518*b1cdbd2cSJim Jagielski int nstops); 519*b1cdbd2cSJim Jagielski 520*b1cdbd2cSJim Jagielski Picture XRenderCreateConicalGradient (Display *dpy, 521*b1cdbd2cSJim Jagielski const XConicalGradient *gradient, 522*b1cdbd2cSJim Jagielski const XFixed *stops, 523*b1cdbd2cSJim Jagielski const XRenderColor *colors, 524*b1cdbd2cSJim Jagielski int nstops); 525*b1cdbd2cSJim Jagielski 526*b1cdbd2cSJim Jagielski _XFUNCPROTOEND 527*b1cdbd2cSJim Jagielski 528*b1cdbd2cSJim Jagielski #endif /* _XRENDER_H_ */ 529