VirtualBox

source: vbox/trunk/src/VBox/Additions/x11/x11include/xorg-server-1.12.0/xaalocal.h@ 68495

Last change on this file since 68495 was 40349, checked in by vboxsync, 13 years ago

Additions/xorg: support X.Org Server 1.12.

  • Property svn:eol-style set to native
File size: 37.5 KB
Line 
1
2#ifndef _XAALOCAL_H
3#define _XAALOCAL_H
4
5#ifdef HAVE_XORG_CONFIG_H
6#include <xorg-config.h>
7#endif
8
9/* This file is very unorganized ! */
10
11
12#include "gcstruct.h"
13#include "regionstr.h"
14#include "xf86fbman.h"
15#include "xaa.h"
16#include "mi.h"
17#include "picturestr.h"
18
19#define GCWhenForced (GCArcMode << 1)
20
21#define DO_COLOR_8x8 0x00000001
22#define DO_MONO_8x8 0x00000002
23#define DO_CACHE_BLT 0x00000003
24#define DO_COLOR_EXPAND 0x00000004
25#define DO_CACHE_EXPAND 0x00000005
26#define DO_IMAGE_WRITE 0x00000006
27#define DO_PIXMAP_COPY 0x00000007
28#define DO_SOLID 0x00000008
29
30
31typedef CARD32 * (*GlyphScanlineFuncPtr)(
32 CARD32 *base, unsigned int **glyphp, int line, int nglyph, int width
33);
34
35typedef CARD32 *(*StippleScanlineProcPtr)(CARD32*, CARD32*, int, int, int);
36
37typedef void (*RectFuncPtr) (ScrnInfoPtr, int, int, int, int, int, int,
38 XAACacheInfoPtr);
39typedef void (*TrapFuncPtr) (ScrnInfoPtr, int, int, int, int, int, int,
40 int, int, int, int, int, int,
41 XAACacheInfoPtr);
42
43
44
45typedef struct _XAAScreen {
46 CreateGCProcPtr CreateGC;
47 CloseScreenProcPtr CloseScreen;
48 GetImageProcPtr GetImage;
49 GetSpansProcPtr GetSpans;
50 CopyWindowProcPtr CopyWindow;
51 WindowExposuresProcPtr WindowExposures;
52 CreatePixmapProcPtr CreatePixmap;
53 DestroyPixmapProcPtr DestroyPixmap;
54 ChangeWindowAttributesProcPtr ChangeWindowAttributes;
55 XAAInfoRecPtr AccelInfoRec;
56 Bool (*EnterVT)(int, int);
57 void (*LeaveVT)(int, int);
58 int (*SetDGAMode)(int, int, DGADevicePtr);
59 void (*EnableDisableFBAccess)(int, Bool);
60 CompositeProcPtr Composite;
61 GlyphsProcPtr Glyphs;
62} XAAScreenRec, *XAAScreenPtr;
63
64#define OPS_ARE_PIXMAP 0x00000001
65#define OPS_ARE_ACCEL 0x00000002
66
67typedef struct _XAAGC {
68 GCOps *wrapOps;
69 GCFuncs *wrapFuncs;
70 GCOps *XAAOps;
71 int DashLength;
72 unsigned char* DashPattern;
73 unsigned long changes;
74 unsigned long flags;
75} XAAGCRec, *XAAGCPtr;
76
77#define REDUCIBILITY_CHECKED 0x00000001
78#define REDUCIBLE_TO_8x8 0x00000002
79#define REDUCIBLE_TO_2_COLOR 0x00000004
80#define DIRTY 0x00010000
81#define OFFSCREEN 0x00020000
82#define DGA_PIXMAP 0x00040000
83#define SHARED_PIXMAP 0x00080000
84#define LOCKED_PIXMAP 0x00100000
85
86#define REDUCIBILITY_MASK \
87 (REDUCIBILITY_CHECKED | REDUCIBLE_TO_8x8 | REDUCIBLE_TO_2_COLOR)
88
89typedef struct _XAAPixmap {
90 unsigned long flags;
91 CARD32 pattern0;
92 CARD32 pattern1;
93 int fg;
94 int bg;
95 FBAreaPtr offscreenArea;
96 Bool freeData;
97} XAAPixmapRec, *XAAPixmapPtr;
98
99
100extern _X_EXPORT Bool
101XAACreateGC(
102 GCPtr pGC
103);
104
105extern _X_EXPORT Bool
106XAAInitAccel(
107 ScreenPtr pScreen,
108 XAAInfoRecPtr infoRec
109);
110
111extern _X_EXPORT RegionPtr
112XAABitBlt(
113 DrawablePtr pSrcDrawable,
114 DrawablePtr pDstDrawable,
115 GC *pGC,
116 int srcx,
117 int srcy,
118 int width,
119 int height,
120 int dstx,
121 int dsty,
122 void (*doBitBlt)(DrawablePtr, DrawablePtr, GCPtr, RegionPtr, DDXPointPtr),
123 unsigned long bitPlane
124);
125
126extern _X_EXPORT void
127XAAScreenToScreenBitBlt(
128 ScrnInfoPtr pScrn,
129 int nbox,
130 DDXPointPtr pptSrc,
131 BoxPtr pbox,
132 int xdir,
133 int ydir,
134 int alu,
135 unsigned int planemask
136);
137
138extern _X_EXPORT void
139XAADoBitBlt(
140 DrawablePtr pSrc,
141 DrawablePtr pDst,
142 GC *pGC,
143 RegionPtr prgnDst,
144 DDXPointPtr pptSrc
145);
146
147extern _X_EXPORT void
148XAADoImageWrite(
149 DrawablePtr pSrc,
150 DrawablePtr pDst,
151 GC *pGC,
152 RegionPtr prgnDst,
153 DDXPointPtr pptSrc
154);
155
156extern _X_EXPORT void
157XAADoImageRead(
158 DrawablePtr pSrc,
159 DrawablePtr pDst,
160 GC *pGC,
161 RegionPtr prgnDst,
162 DDXPointPtr pptSrc
163);
164
165extern _X_EXPORT void
166XAACopyWindow(
167 WindowPtr pWin,
168 DDXPointRec ptOldOrg,
169 RegionPtr prgnSrc
170);
171
172
173extern _X_EXPORT RegionPtr
174XAACopyArea(
175 DrawablePtr pSrcDrawable,
176 DrawablePtr pDstDrawable,
177 GC *pGC,
178 int srcx,
179 int srcy,
180 int width,
181 int height,
182 int dstx,
183 int dsty
184);
185
186extern _X_EXPORT void
187XAAValidateCopyArea(
188 GCPtr pGC,
189 unsigned long changes,
190 DrawablePtr pDraw
191);
192
193extern _X_EXPORT void
194XAAValidatePutImage(
195 GCPtr pGC,
196 unsigned long changes,
197 DrawablePtr pDraw
198);
199
200extern _X_EXPORT void
201XAAValidateCopyPlane(
202 GCPtr pGC,
203 unsigned long changes,
204 DrawablePtr pDraw
205);
206
207extern _X_EXPORT void
208XAAValidatePushPixels(
209 GCPtr pGC,
210 unsigned long changes,
211 DrawablePtr pDraw
212);
213
214extern _X_EXPORT void
215XAAValidateFillSpans(
216 GCPtr pGC,
217 unsigned long changes,
218 DrawablePtr pDraw
219);
220
221extern _X_EXPORT void
222XAAValidatePolyGlyphBlt(
223 GCPtr pGC,
224 unsigned long changes,
225 DrawablePtr pDraw
226);
227
228extern _X_EXPORT void
229XAAValidateImageGlyphBlt(
230 GCPtr pGC,
231 unsigned long changes,
232 DrawablePtr pDraw
233);
234
235extern _X_EXPORT void
236XAAValidatePolylines(
237 GCPtr pGC,
238 unsigned long changes,
239 DrawablePtr pDraw
240);
241
242
243extern _X_EXPORT RegionPtr
244XAACopyPlaneColorExpansion(
245 DrawablePtr pSrc,
246 DrawablePtr pDst,
247 GCPtr pGC,
248 int srcx,
249 int srcy,
250 int width,
251 int height,
252 int dstx,
253 int dsty,
254 unsigned long bitPlane
255);
256
257
258extern _X_EXPORT void
259XAAPushPixelsSolidColorExpansion(
260 GCPtr pGC,
261 PixmapPtr pBitMap,
262 DrawablePtr pDrawable,
263 int dx,
264 int dy,
265 int xOrg,
266 int yOrg
267);
268
269extern _X_EXPORT void
270XAAWriteBitmapColorExpandMSBFirstFixedBase (
271 ScrnInfoPtr pScrn,
272 int x, int y, int w, int h,
273 unsigned char *src,
274 int srcwidth,
275 int skipleft,
276 int fg, int bg,
277 int rop,
278 unsigned int planemask
279);
280
281extern _X_EXPORT void
282XAAWriteBitmapColorExpand3MSBFirstFixedBase (
283 ScrnInfoPtr pScrn,
284 int x, int y, int w, int h,
285 unsigned char *src,
286 int srcwidth,
287 int skipleft,
288 int fg, int bg,
289 int rop,
290 unsigned int planemask
291);
292
293extern _X_EXPORT void
294XAAWriteBitmapColorExpandMSBFirst (
295 ScrnInfoPtr pScrn,
296 int x, int y, int w, int h,
297 unsigned char *src,
298 int srcwidth,
299 int skipleft,
300 int fg, int bg,
301 int rop,
302 unsigned int planemask
303);
304
305extern _X_EXPORT void
306XAAWriteBitmapColorExpand3MSBFirst (
307 ScrnInfoPtr pScrn,
308 int x, int y, int w, int h,
309 unsigned char *src,
310 int srcwidth,
311 int skipleft,
312 int fg, int bg,
313 int rop,
314 unsigned int planemask
315);
316
317extern _X_EXPORT void
318XAAWriteBitmapColorExpandLSBFirstFixedBase (
319 ScrnInfoPtr pScrn,
320 int x, int y, int w, int h,
321 unsigned char *src,
322 int srcwidth,
323 int skipleft,
324 int fg, int bg,
325 int rop,
326 unsigned int planemask
327);
328
329extern _X_EXPORT void
330XAAWriteBitmapColorExpand3LSBFirstFixedBase (
331 ScrnInfoPtr pScrn,
332 int x, int y, int w, int h,
333 unsigned char *src,
334 int srcwidth,
335 int skipleft,
336 int fg, int bg,
337 int rop,
338 unsigned int planemask
339);
340
341extern _X_EXPORT void
342XAAWriteBitmapColorExpandLSBFirst (
343 ScrnInfoPtr pScrn,
344 int x, int y, int w, int h,
345 unsigned char *src,
346 int srcwidth,
347 int skipleft,
348 int fg, int bg,
349 int rop,
350 unsigned int planemask
351);
352
353extern _X_EXPORT void
354XAAWriteBitmapColorExpand3LSBFirst (
355 ScrnInfoPtr pScrn,
356 int x, int y, int w, int h,
357 unsigned char *src,
358 int srcwidth,
359 int skipleft,
360 int fg, int bg,
361 int rop,
362 unsigned int planemask
363);
364
365
366extern _X_EXPORT void
367XAAWriteBitmapScanlineColorExpandMSBFirst (
368 ScrnInfoPtr pScrn,
369 int x, int y, int w, int h,
370 unsigned char *src,
371 int srcwidth,
372 int skipleft,
373 int fg, int bg,
374 int rop,
375 unsigned int planemask
376);
377
378extern _X_EXPORT void
379XAAWriteBitmapScanlineColorExpand3MSBFirst (
380 ScrnInfoPtr pScrn,
381 int x, int y, int w, int h,
382 unsigned char *src,
383 int srcwidth,
384 int skipleft,
385 int fg, int bg,
386 int rop,
387 unsigned int planemask
388);
389
390extern _X_EXPORT void
391XAAWriteBitmapScanlineColorExpandMSBFirstFixedBase (
392 ScrnInfoPtr pScrn,
393 int x, int y, int w, int h,
394 unsigned char *src,
395 int srcwidth,
396 int skipleft,
397 int fg, int bg,
398 int rop,
399 unsigned int planemask
400);
401
402extern _X_EXPORT void
403XAAWriteBitmapScanlineColorExpand3MSBFirstFixedBase (
404 ScrnInfoPtr pScrn,
405 int x, int y, int w, int h,
406 unsigned char *src,
407 int srcwidth,
408 int skipleft,
409 int fg, int bg,
410 int rop,
411 unsigned int planemask
412);
413
414extern _X_EXPORT void
415XAAWriteBitmapScanlineColorExpandLSBFirst (
416 ScrnInfoPtr pScrn,
417 int x, int y, int w, int h,
418 unsigned char *src,
419 int srcwidth,
420 int skipleft,
421 int fg, int bg,
422 int rop,
423 unsigned int planemask
424);
425
426extern _X_EXPORT void
427XAAWriteBitmapScanlineColorExpand3LSBFirst (
428 ScrnInfoPtr pScrn,
429 int x, int y, int w, int h,
430 unsigned char *src,
431 int srcwidth,
432 int skipleft,
433 int fg, int bg,
434 int rop,
435 unsigned int planemask
436);
437
438extern _X_EXPORT void
439XAAWriteBitmapScanlineColorExpandLSBFirstFixedBase (
440 ScrnInfoPtr pScrn,
441 int x, int y, int w, int h,
442 unsigned char *src,
443 int srcwidth,
444 int skipleft,
445 int fg, int bg,
446 int rop,
447 unsigned int planemask
448);
449
450extern _X_EXPORT void
451XAAWriteBitmapScanlineColorExpand3LSBFirstFixedBase (
452 ScrnInfoPtr pScrn,
453 int x, int y, int w, int h,
454 unsigned char *src,
455 int srcwidth,
456 int skipleft,
457 int fg, int bg,
458 int rop,
459 unsigned int planemask
460);
461
462extern _X_EXPORT void
463XAAWritePixmap (
464 ScrnInfoPtr pScrn,
465 int x, int y, int w, int h,
466 unsigned char *src,
467 int srcwidth,
468 int rop,
469 unsigned int planemask,
470 int transparency_color,
471 int bpp, int depth
472);
473
474extern _X_EXPORT void
475XAAWritePixmapScanline (
476 ScrnInfoPtr pScrn,
477 int x, int y, int w, int h,
478 unsigned char *src,
479 int srcwidth,
480 int rop,
481 unsigned int planemask,
482 int transparency_color,
483 int bpp, int depth
484);
485
486typedef void (*ClipAndRenderRectsFunc)(GCPtr, int, BoxPtr, int, int);
487
488
489extern _X_EXPORT void
490XAAClipAndRenderRects(
491 GCPtr pGC,
492 ClipAndRenderRectsFunc func,
493 int nrectFill,
494 xRectangle *prectInit,
495 int xorg, int yorg
496);
497
498
499typedef void (*ClipAndRenderSpansFunc)(GCPtr, int, DDXPointPtr, int*,
500 int, int, int);
501
502extern _X_EXPORT void
503XAAClipAndRenderSpans(
504 GCPtr pGC,
505 DDXPointPtr ppt,
506 int *pwidth,
507 int nspans,
508 int fSorted,
509 ClipAndRenderSpansFunc func,
510 int xorg,
511 int yorg
512);
513
514
515extern _X_EXPORT void
516XAAFillSolidRects(
517 ScrnInfoPtr pScrn,
518 int fg, int rop,
519 unsigned int planemask,
520 int nBox,
521 BoxPtr pBox
522);
523
524extern _X_EXPORT void
525XAAFillMono8x8PatternRects(
526 ScrnInfoPtr pScrn,
527 int fg, int bg, int rop,
528 unsigned int planemask,
529 int nBox,
530 BoxPtr pBox,
531 int pat0, int pat1,
532 int xorg, int yorg
533);
534
535extern _X_EXPORT void
536XAAFillMono8x8PatternRectsScreenOrigin(
537 ScrnInfoPtr pScrn,
538 int fg, int bg, int rop,
539 unsigned int planemask,
540 int nBox,
541 BoxPtr pBox,
542 int pat0, int pat1,
543 int xorg, int yorg
544);
545
546
547extern _X_EXPORT void
548XAAFillColor8x8PatternRectsScreenOrigin(
549 ScrnInfoPtr pScrn,
550 int rop,
551 unsigned int planemask,
552 int nBox,
553 BoxPtr pBox,
554 int xorigin, int yorigin,
555 XAACacheInfoPtr pCache
556);
557
558extern _X_EXPORT void
559XAAFillColor8x8PatternRects(
560 ScrnInfoPtr pScrn,
561 int rop,
562 unsigned int planemask,
563 int nBox,
564 BoxPtr pBox,
565 int xorigin, int yorigin,
566 XAACacheInfoPtr pCache
567);
568
569extern _X_EXPORT void
570XAAFillCacheBltRects(
571 ScrnInfoPtr pScrn,
572 int rop,
573 unsigned int planemask,
574 int nBox,
575 BoxPtr pBox,
576 int xorg, int yorg,
577 XAACacheInfoPtr pCache
578);
579
580extern _X_EXPORT void
581XAAFillCacheExpandRects(
582 ScrnInfoPtr pScrn,
583 int fg, int bg, int rop,
584 unsigned int planemask,
585 int nBox,
586 BoxPtr pBox,
587 int xorg, int yorg,
588 PixmapPtr pPix
589);
590
591extern _X_EXPORT void
592XAAFillImageWriteRects(
593 ScrnInfoPtr pScrn,
594 int rop,
595 unsigned int planemask,
596 int nBox,
597 BoxPtr pBox,
598 int xorg, int yorg,
599 PixmapPtr pPix
600);
601
602extern _X_EXPORT void
603XAAPolyFillRect(
604 DrawablePtr pDraw,
605 GCPtr pGC,
606 int nrectFill,
607 xRectangle *prectInit
608);
609
610
611extern _X_EXPORT void
612XAATEGlyphRendererMSBFirstFixedBase (
613 ScrnInfoPtr pScrn,
614 int x, int y, int w, int h, int skipleft, int startline,
615 unsigned int **glyphs, int glyphWidth,
616 int fg, int bg, int rop, unsigned planemask
617);
618
619extern _X_EXPORT void
620XAATEGlyphRenderer3MSBFirstFixedBase (
621 ScrnInfoPtr pScrn,
622 int x, int y, int w, int h, int skipleft, int startline,
623 unsigned int **glyphs, int glyphWidth,
624 int fg, int bg, int rop, unsigned planemask
625);
626
627extern _X_EXPORT void
628XAATEGlyphRendererMSBFirst (
629 ScrnInfoPtr pScrn,
630 int x, int y, int w, int h, int skipleft, int startline,
631 unsigned int **glyphs, int glyphWidth,
632 int fg, int bg, int rop, unsigned planemask
633);
634
635extern _X_EXPORT void
636XAATEGlyphRenderer3MSBFirst (
637 ScrnInfoPtr pScrn,
638 int x, int y, int w, int h, int skipleft, int startline,
639 unsigned int **glyphs, int glyphWidth,
640 int fg, int bg, int rop, unsigned planemask
641);
642
643extern _X_EXPORT void
644XAATEGlyphRendererLSBFirstFixedBase (
645 ScrnInfoPtr pScrn,
646 int x, int y, int w, int h, int skipleft, int startline,
647 unsigned int **glyphs, int glyphWidth,
648 int fg, int bg, int rop, unsigned planemask
649);
650
651
652extern _X_EXPORT void
653XAATEGlyphRenderer3LSBFirstFixedBase (
654 ScrnInfoPtr pScrn,
655 int x, int y, int w, int h, int skipleft, int startline,
656 unsigned int **glyphs, int glyphWidth,
657 int fg, int bg, int rop, unsigned planemask
658);
659
660extern _X_EXPORT void
661XAATEGlyphRendererLSBFirst (
662 ScrnInfoPtr pScrn,
663 int x, int y, int w, int h, int skipleft, int startline,
664 unsigned int **glyphs, int glyphWidth,
665 int fg, int bg, int rop, unsigned planemask
666);
667
668extern _X_EXPORT void
669XAATEGlyphRenderer3LSBFirst (
670 ScrnInfoPtr pScrn,
671 int x, int y, int w, int h, int skipleft, int startline,
672 unsigned int **glyphs, int glyphWidth,
673 int fg, int bg, int rop, unsigned planemask
674);
675
676
677extern _X_EXPORT void
678XAATEGlyphRendererScanlineMSBFirst (
679 ScrnInfoPtr pScrn,
680 int x, int y, int w, int h, int skipleft, int startline,
681 unsigned int **glyphs, int glyphWidth,
682 int fg, int bg, int rop, unsigned planemask
683);
684
685extern _X_EXPORT void
686XAATEGlyphRendererScanline3MSBFirst (
687 ScrnInfoPtr pScrn,
688 int x, int y, int w, int h, int skipleft, int startline,
689 unsigned int **glyphs, int glyphWidth,
690 int fg, int bg, int rop, unsigned planemask
691);
692
693extern _X_EXPORT void
694XAATEGlyphRendererScanlineLSBFirst (
695 ScrnInfoPtr pScrn,
696 int x, int y, int w, int h, int skipleft, int startline,
697 unsigned int **glyphs, int glyphWidth,
698 int fg, int bg, int rop, unsigned planemask
699);
700
701extern _X_EXPORT void
702XAATEGlyphRendererScanline3LSBFirst (
703 ScrnInfoPtr pScrn,
704 int x, int y, int w, int h, int skipleft, int startline,
705 unsigned int **glyphs, int glyphWidth,
706 int fg, int bg, int rop, unsigned planemask
707);
708
709
710extern _X_EXPORT CARD32 *(*XAAGlyphScanlineFuncMSBFirstFixedBase[32])(
711 CARD32 *base, unsigned int **glyphp, int line, int nglyph, int width
712);
713
714extern _X_EXPORT CARD32 *(*XAAGlyphScanlineFuncMSBFirst[32])(
715 CARD32 *base, unsigned int **glyphp, int line, int nglyph, int width
716);
717
718extern _X_EXPORT CARD32 *(*XAAGlyphScanlineFuncLSBFirstFixedBase[32])(
719 CARD32 *base, unsigned int **glyphp, int line, int nglyph, int width
720);
721
722extern _X_EXPORT CARD32 *(*XAAGlyphScanlineFuncLSBFirst[32])(
723 CARD32 *base, unsigned int **glyphp, int line, int nglyph, int width
724);
725
726extern _X_EXPORT GlyphScanlineFuncPtr *XAAGetGlyphScanlineFuncMSBFirstFixedBase(void);
727extern _X_EXPORT GlyphScanlineFuncPtr *XAAGetGlyphScanlineFuncMSBFirst(void);
728extern _X_EXPORT GlyphScanlineFuncPtr *XAAGetGlyphScanlineFuncLSBFirstFixedBase(void);
729extern _X_EXPORT GlyphScanlineFuncPtr *XAAGetGlyphScanlineFuncLSBFirst(void);
730
731extern _X_EXPORT void
732XAAFillColorExpandRectsLSBFirst(
733 ScrnInfoPtr pScrn,
734 int fg, int bg, int rop,
735 unsigned int planemask,
736 int nBox,
737 BoxPtr pBox,
738 int xorg, int yorg,
739 PixmapPtr pPix
740);
741
742extern _X_EXPORT void
743XAAFillColorExpandRects3LSBFirst(
744 ScrnInfoPtr pScrn,
745 int fg, int bg, int rop,
746 unsigned int planemask,
747 int nBox,
748 BoxPtr pBox,
749 int xorg, int yorg,
750 PixmapPtr pPix
751);
752
753extern _X_EXPORT void
754XAAFillColorExpandRectsLSBFirstFixedBase(
755 ScrnInfoPtr pScrn,
756 int fg, int bg, int rop,
757 unsigned int planemask,
758 int nBox,
759 BoxPtr pBox,
760 int xorg, int yorg,
761 PixmapPtr pPix
762);
763
764extern _X_EXPORT void
765XAAFillColorExpandRects3LSBFirstFixedBase(
766 ScrnInfoPtr pScrn,
767 int fg, int bg, int rop,
768 unsigned int planemask,
769 int nBox,
770 BoxPtr pBox,
771 int xorg, int yorg,
772 PixmapPtr pPix
773);
774
775extern _X_EXPORT void
776XAAFillColorExpandRectsMSBFirst(
777 ScrnInfoPtr pScrn,
778 int fg, int bg, int rop,
779 unsigned int planemask,
780 int nBox,
781 BoxPtr pBox,
782 int xorg, int yorg,
783 PixmapPtr pPix
784);
785
786extern _X_EXPORT void
787XAAFillColorExpandRects3MSBFirst(
788 ScrnInfoPtr pScrn,
789 int fg, int bg, int rop,
790 unsigned int planemask,
791 int nBox,
792 BoxPtr pBox,
793 int xorg, int yorg,
794 PixmapPtr pPix
795);
796
797extern _X_EXPORT void
798XAAFillColorExpandRectsMSBFirstFixedBase(
799 ScrnInfoPtr pScrn,
800 int fg, int bg, int rop,
801 unsigned int planemask,
802 int nBox,
803 BoxPtr pBox,
804 int xorg, int yorg,
805 PixmapPtr pPix
806);
807
808extern _X_EXPORT void
809XAAFillColorExpandRects3MSBFirstFixedBase(
810 ScrnInfoPtr pScrn,
811 int fg, int bg, int rop,
812 unsigned int planemask,
813 int nBox,
814 BoxPtr pBox,
815 int xorg, int yorg,
816 PixmapPtr pPix
817);
818
819extern _X_EXPORT void
820XAAFillScanlineColorExpandRectsLSBFirst(
821 ScrnInfoPtr pScrn,
822 int fg, int bg, int rop,
823 unsigned int planemask,
824 int nBox,
825 BoxPtr pBox,
826 int xorg, int yorg,
827 PixmapPtr pPix
828);
829
830extern _X_EXPORT void
831XAAFillScanlineColorExpandRects3LSBFirst(
832 ScrnInfoPtr pScrn,
833 int fg, int bg, int rop,
834 unsigned int planemask,
835 int nBox,
836 BoxPtr pBox,
837 int xorg, int yorg,
838 PixmapPtr pPix
839);
840
841extern _X_EXPORT void
842XAAFillScanlineColorExpandRectsMSBFirst(
843 ScrnInfoPtr pScrn,
844 int fg, int bg, int rop,
845 unsigned int planemask,
846 int nBox,
847 BoxPtr pBox,
848 int xorg, int yorg,
849 PixmapPtr pPix
850);
851
852extern _X_EXPORT void
853XAAFillScanlineColorExpandRects3MSBFirst(
854 ScrnInfoPtr pScrn,
855 int fg, int bg, int rop,
856 unsigned int planemask,
857 int nBox,
858 BoxPtr pBox,
859 int xorg, int yorg,
860 PixmapPtr pPix
861);
862
863extern _X_EXPORT void
864XAAFillColorExpandSpansLSBFirst(
865 ScrnInfoPtr pScrn,
866 int fg, int bg, int rop,
867 unsigned int planemask,
868 int n,
869 DDXPointPtr ppt,
870 int *pwidth,
871 int fSorted,
872 int xorg, int yorg,
873 PixmapPtr pPix
874);
875
876extern _X_EXPORT void
877XAAFillColorExpandSpans3LSBFirst(
878 ScrnInfoPtr pScrn,
879 int fg, int bg, int rop,
880 unsigned int planemask,
881 int n,
882 DDXPointPtr ppt,
883 int *pwidth,
884 int fSorted,
885 int xorg, int yorg,
886 PixmapPtr pPix
887);
888
889extern _X_EXPORT void
890XAAFillColorExpandSpansLSBFirstFixedBase(
891 ScrnInfoPtr pScrn,
892 int fg, int bg, int rop,
893 unsigned int planemask,
894 int n,
895 DDXPointPtr ppt,
896 int *pwidth,
897 int fSorted,
898 int xorg, int yorg,
899 PixmapPtr pPix
900);
901
902extern _X_EXPORT void
903XAAFillColorExpandSpans3LSBFirstFixedBase(
904 ScrnInfoPtr pScrn,
905 int fg, int bg, int rop,
906 unsigned int planemask,
907 int n,
908 DDXPointPtr ppt,
909 int *pwidth,
910 int fSorted,
911 int xorg, int yorg,
912 PixmapPtr pPix
913);
914
915extern _X_EXPORT void
916XAAFillColorExpandSpansMSBFirst(
917 ScrnInfoPtr pScrn,
918 int fg, int bg, int rop,
919 unsigned int planemask,
920 int n,
921 DDXPointPtr ppt,
922 int *pwidth,
923 int fSorted,
924 int xorg, int yorg,
925 PixmapPtr pPix
926);
927
928extern _X_EXPORT void
929XAAFillColorExpandSpans3MSBFirst(
930 ScrnInfoPtr pScrn,
931 int fg, int bg, int rop,
932 unsigned int planemask,
933 int n,
934 DDXPointPtr ppt,
935 int *pwidth,
936 int fSorted,
937 int xorg, int yorg,
938 PixmapPtr pPix
939);
940
941extern _X_EXPORT void
942XAAFillColorExpandSpansMSBFirstFixedBase(
943 ScrnInfoPtr pScrn,
944 int fg, int bg, int rop,
945 unsigned int planemask,
946 int n,
947 DDXPointPtr ppt,
948 int *pwidth,
949 int fSorted,
950 int xorg, int yorg,
951 PixmapPtr pPix
952);
953
954extern _X_EXPORT void
955XAAFillColorExpandSpans3MSBFirstFixedBase(
956 ScrnInfoPtr pScrn,
957 int fg, int bg, int rop,
958 unsigned int planemask,
959 int n,
960 DDXPointPtr ppt,
961 int *pwidth,
962 int fSorted,
963 int xorg, int yorg,
964 PixmapPtr pPix
965);
966
967extern _X_EXPORT void
968XAAFillScanlineColorExpandSpansLSBFirst(
969 ScrnInfoPtr pScrn,
970 int fg, int bg, int rop,
971 unsigned int planemask,
972 int n,
973 DDXPointPtr ppt,
974 int *pwidth,
975 int fSorted,
976 int xorg, int yorg,
977 PixmapPtr pPix
978);
979
980extern _X_EXPORT void
981XAAFillScanlineColorExpandSpans3LSBFirst(
982 ScrnInfoPtr pScrn,
983 int fg, int bg, int rop,
984 unsigned int planemask,
985 int n,
986 DDXPointPtr ppt,
987 int *pwidth,
988 int fSorted,
989 int xorg, int yorg,
990 PixmapPtr pPix
991);
992
993extern _X_EXPORT void
994XAAPutImage(
995 DrawablePtr pDraw,
996 GCPtr pGC,
997 int depth,
998 int x,
999 int y,
1000 int w,
1001 int h,
1002 int leftPad,
1003 int format,
1004 char *pImage
1005);
1006
1007extern _X_EXPORT void
1008XAAFillScanlineColorExpandSpansMSBFirst(
1009 ScrnInfoPtr pScrn,
1010 int fg, int bg, int rop,
1011 unsigned int planemask,
1012 int n,
1013 DDXPointPtr ppt,
1014 int *pwidth,
1015 int fSorted,
1016 int xorg, int yorg,
1017 PixmapPtr pPix
1018);
1019
1020extern _X_EXPORT void
1021XAAFillScanlineColorExpandSpans3MSBFirst(
1022 ScrnInfoPtr pScrn,
1023 int fg, int bg, int rop,
1024 unsigned int planemask,
1025 int n,
1026 DDXPointPtr ppt,
1027 int *pwidth,
1028 int fSorted,
1029 int xorg, int yorg,
1030 PixmapPtr pPix
1031);
1032
1033
1034extern _X_EXPORT CARD32 *(*XAAStippleScanlineFuncMSBFirstFixedBase[6])(
1035 CARD32* base, CARD32* src, int offset, int width, int dwords
1036);
1037
1038extern _X_EXPORT CARD32 *(*XAAStippleScanlineFuncMSBFirst[6])(
1039 CARD32* base, CARD32* src, int offset, int width, int dwords
1040);
1041
1042extern _X_EXPORT CARD32 *(*XAAStippleScanlineFuncLSBFirstFixedBase[6])(
1043 CARD32* base, CARD32* src, int offset, int width, int dwords
1044);
1045
1046extern _X_EXPORT CARD32 *(*XAAStippleScanlineFuncLSBFirst[6])(
1047 CARD32* base, CARD32* src, int offset, int width, int dwords
1048);
1049
1050extern _X_EXPORT StippleScanlineProcPtr *XAAGetStippleScanlineFuncMSBFirstFixedBase(void);
1051extern _X_EXPORT StippleScanlineProcPtr *XAAGetStippleScanlineFuncMSBFirst(void);
1052extern _X_EXPORT StippleScanlineProcPtr *XAAGetStippleScanlineFuncLSBFirstFixedBase(void);
1053extern _X_EXPORT StippleScanlineProcPtr *XAAGetStippleScanlineFuncLSBFirst(void);
1054extern _X_EXPORT StippleScanlineProcPtr *XAAGetStippleScanlineFunc3MSBFirstFixedBase(void);
1055extern _X_EXPORT StippleScanlineProcPtr *XAAGetStippleScanlineFunc3MSBFirst(void);
1056extern _X_EXPORT StippleScanlineProcPtr *XAAGetStippleScanlineFunc3LSBFirstFixedBase(void);
1057extern _X_EXPORT StippleScanlineProcPtr *XAAGetStippleScanlineFunc3LSBFirst(void);
1058
1059extern _X_EXPORT int
1060XAAPolyText8TEColorExpansion(
1061 DrawablePtr pDraw,
1062 GCPtr pGC,
1063 int x, int y,
1064 int count,
1065 char *chars
1066);
1067
1068extern _X_EXPORT int
1069XAAPolyText16TEColorExpansion(
1070 DrawablePtr pDraw,
1071 GCPtr pGC,
1072 int x, int y,
1073 int count,
1074 unsigned short *chars
1075);
1076
1077extern _X_EXPORT void
1078XAAImageText8TEColorExpansion(
1079 DrawablePtr pDraw,
1080 GCPtr pGC,
1081 int x, int y,
1082 int count,
1083 char *chars
1084);
1085
1086extern _X_EXPORT void
1087XAAImageText16TEColorExpansion(
1088 DrawablePtr pDraw,
1089 GCPtr pGC,
1090 int x, int y,
1091 int count,
1092 unsigned short *chars
1093);
1094
1095extern _X_EXPORT void
1096XAAImageGlyphBltTEColorExpansion(
1097 DrawablePtr pDrawable,
1098 GCPtr pGC,
1099 int xInit, int yInit,
1100 unsigned int nglyph,
1101 CharInfoPtr *ppci,
1102 pointer pglyphBase
1103);
1104
1105extern _X_EXPORT void
1106XAAPolyGlyphBltTEColorExpansion(
1107 DrawablePtr pDrawable,
1108 GCPtr pGC,
1109 int xInit, int yInit,
1110 unsigned int nglyph,
1111 CharInfoPtr *ppci,
1112 pointer pglyphBase
1113);
1114
1115
1116extern _X_EXPORT int
1117XAAPolyText8NonTEColorExpansion(
1118 DrawablePtr pDraw,
1119 GCPtr pGC,
1120 int x, int y,
1121 int count,
1122 char *chars
1123);
1124
1125extern _X_EXPORT int
1126XAAPolyText16NonTEColorExpansion(
1127 DrawablePtr pDraw,
1128 GCPtr pGC,
1129 int x, int y,
1130 int count,
1131 unsigned short *chars
1132);
1133
1134extern _X_EXPORT void
1135XAAImageText8NonTEColorExpansion(
1136 DrawablePtr pDraw,
1137 GCPtr pGC,
1138 int x, int y,
1139 int count,
1140 char *chars
1141);
1142
1143extern _X_EXPORT void
1144XAAImageText16NonTEColorExpansion(
1145 DrawablePtr pDraw,
1146 GCPtr pGC,
1147 int x, int y,
1148 int count,
1149 unsigned short *chars
1150);
1151
1152extern _X_EXPORT void
1153XAAImageGlyphBltNonTEColorExpansion(
1154 DrawablePtr pDrawable,
1155 GCPtr pGC,
1156 int xInit, int yInit,
1157 unsigned int nglyph,
1158 CharInfoPtr *ppci,
1159 pointer pglyphBase
1160);
1161
1162extern _X_EXPORT void
1163XAAPolyGlyphBltNonTEColorExpansion(
1164 DrawablePtr pDrawable,
1165 GCPtr pGC,
1166 int xInit, int yInit,
1167 unsigned int nglyph,
1168 CharInfoPtr *ppci,
1169 pointer pglyphBase
1170);
1171
1172
1173extern _X_EXPORT void XAANonTEGlyphRenderer(
1174 ScrnInfoPtr pScrn,
1175 int x, int y, int n,
1176 NonTEGlyphPtr glyphs,
1177 BoxPtr pbox,
1178 int fg, int rop,
1179 unsigned int planemask
1180);
1181
1182extern _X_EXPORT void
1183XAAFillSolidSpans(
1184 ScrnInfoPtr pScrn,
1185 int fg, int rop,
1186 unsigned int planemask,
1187 int n,
1188 DDXPointPtr ppt,
1189 int *pwidth, int fSorted
1190);
1191
1192extern _X_EXPORT void
1193XAAFillMono8x8PatternSpans(
1194 ScrnInfoPtr pScrn,
1195 int fg, int bg, int rop,
1196 unsigned int planemask,
1197 int n,
1198 DDXPointPtr ppt,
1199 int *pwidth, int fSorted,
1200 int patx, int paty,
1201 int xorg, int yorg
1202);
1203
1204extern _X_EXPORT void
1205XAAFillMono8x8PatternSpansScreenOrigin(
1206 ScrnInfoPtr pScrn,
1207 int fg, int bg, int rop,
1208 unsigned int planemask,
1209 int n,
1210 DDXPointPtr ppt,
1211 int *pwidth, int fSorted,
1212 int patx, int paty,
1213 int xorg, int yorg
1214);
1215
1216extern _X_EXPORT void
1217XAAFillColor8x8PatternSpansScreenOrigin(
1218 ScrnInfoPtr pScrn,
1219 int rop,
1220 unsigned int planemask,
1221 int n,
1222 DDXPointPtr ppt,
1223 int *pwidth, int fSorted,
1224 XAACacheInfoPtr,
1225 int xorigin, int yorigin
1226);
1227
1228extern _X_EXPORT void
1229XAAFillColor8x8PatternSpans(
1230 ScrnInfoPtr pScrn,
1231 int rop,
1232 unsigned int planemask,
1233 int n,
1234 DDXPointPtr ppt,
1235 int *pwidth, int fSorted,
1236 XAACacheInfoPtr,
1237 int xorigin, int yorigin
1238);
1239
1240extern _X_EXPORT void
1241XAAFillCacheBltSpans(
1242 ScrnInfoPtr pScrn,
1243 int rop,
1244 unsigned int planemask,
1245 int n,
1246 DDXPointPtr points,
1247 int *widths,
1248 int fSorted,
1249 XAACacheInfoPtr pCache,
1250 int xorg, int yorg
1251);
1252
1253extern _X_EXPORT void
1254XAAFillCacheExpandSpans(
1255 ScrnInfoPtr pScrn,
1256 int fg, int bg, int rop,
1257 unsigned int planemask,
1258 int n,
1259 DDXPointPtr ppt,
1260 int *pwidth,
1261 int fSorted,
1262 int xorg, int yorg,
1263 PixmapPtr pPix
1264);
1265
1266extern _X_EXPORT void
1267XAAFillSpans(
1268 DrawablePtr pDrawable,
1269 GC *pGC,
1270 int nInit,
1271 DDXPointPtr pptInit,
1272 int *pwidth,
1273 int fSorted
1274);
1275
1276
1277extern _X_EXPORT void
1278XAAInitPixmapCache(
1279 ScreenPtr pScreen,
1280 RegionPtr areas,
1281 pointer data
1282);
1283
1284extern _X_EXPORT void
1285XAAWriteBitmapToCache(
1286 ScrnInfoPtr pScrn,
1287 int x, int y, int w, int h,
1288 unsigned char *src,
1289 int srcwidth,
1290 int fg, int bg
1291);
1292
1293extern _X_EXPORT void
1294XAAWriteBitmapToCacheLinear(
1295 ScrnInfoPtr pScrn,
1296 int x, int y, int w, int h,
1297 unsigned char *src,
1298 int srcwidth,
1299 int fg, int bg
1300);
1301
1302extern _X_EXPORT void
1303XAAWritePixmapToCache(
1304 ScrnInfoPtr pScrn,
1305 int x, int y, int w, int h,
1306 unsigned char *src,
1307 int srcwidth,
1308 int bpp, int depth
1309);
1310
1311extern _X_EXPORT void
1312XAAWritePixmapToCacheLinear(
1313 ScrnInfoPtr pScrn,
1314 int x, int y, int w, int h,
1315 unsigned char *src,
1316 int srcwidth,
1317 int bpp, int depth
1318);
1319
1320extern _X_EXPORT void
1321XAASolidHorVertLineAsRects(
1322 ScrnInfoPtr pScrn,
1323 int x, int y, int len, int dir
1324);
1325
1326extern _X_EXPORT void
1327XAASolidHorVertLineAsTwoPoint(
1328 ScrnInfoPtr pScrn,
1329 int x, int y, int len, int dir
1330);
1331
1332extern _X_EXPORT void
1333XAASolidHorVertLineAsBresenham(
1334 ScrnInfoPtr pScrn,
1335 int x, int y, int len, int dir
1336);
1337
1338
1339extern _X_EXPORT void
1340XAAPolyRectangleThinSolid(
1341 DrawablePtr pDrawable,
1342 GCPtr pGC,
1343 int nRectsInit,
1344 xRectangle *pRectsInit
1345);
1346
1347
1348extern _X_EXPORT void
1349XAAPolylinesWideSolid (
1350 DrawablePtr pDrawable,
1351 GCPtr pGC,
1352 int mode,
1353 int npt,
1354 DDXPointPtr pPts
1355);
1356
1357extern _X_EXPORT void
1358XAAFillPolygonSolid(
1359 DrawablePtr pDrawable,
1360 GCPtr pGC,
1361 int shape,
1362 int mode,
1363 int count,
1364 DDXPointPtr ptsIn
1365);
1366
1367extern _X_EXPORT void
1368XAAFillPolygonStippled(
1369 DrawablePtr pDrawable,
1370 GCPtr pGC,
1371 int shape,
1372 int mode,
1373 int count,
1374 DDXPointPtr ptsIn
1375);
1376
1377
1378extern _X_EXPORT void
1379XAAFillPolygonTiled(
1380 DrawablePtr pDrawable,
1381 GCPtr pGC,
1382 int shape,
1383 int mode,
1384 int count,
1385 DDXPointPtr ptsIn
1386);
1387
1388
1389extern _X_EXPORT int
1390XAAIsEasyPolygon(
1391 DDXPointPtr ptsIn,
1392 int count,
1393 BoxPtr extents,
1394 int origin,
1395 DDXPointPtr *topPoint,
1396 int *topY, int *bottomY,
1397 int shape
1398);
1399
1400extern _X_EXPORT void
1401XAAFillPolygonHelper(
1402 ScrnInfoPtr pScrn,
1403 DDXPointPtr ptsIn,
1404 int count,
1405 DDXPointPtr topPoint,
1406 int y,
1407 int maxy,
1408 int origin,
1409 RectFuncPtr RectFunc,
1410 TrapFuncPtr TrapFunc,
1411 int xorg,
1412 int yorg,
1413 XAACacheInfoPtr pCache
1414);
1415
1416extern _X_EXPORT void
1417XAAPolySegment(
1418 DrawablePtr pDrawable,
1419 GCPtr pGC,
1420 int nseg,
1421 xSegment *pSeg
1422);
1423
1424extern _X_EXPORT void
1425XAAPolyLines(
1426 DrawablePtr pDrawable,
1427 GCPtr pGC,
1428 int mode,
1429 int npt,
1430 DDXPointPtr pptInit
1431);
1432
1433extern _X_EXPORT void
1434XAAPolySegmentDashed(
1435 DrawablePtr pDrawable,
1436 GCPtr pGC,
1437 int nseg,
1438 xSegment *pSeg
1439);
1440
1441extern _X_EXPORT void
1442XAAPolyLinesDashed(
1443 DrawablePtr pDrawable,
1444 GCPtr pGC,
1445 int mode,
1446 int npt,
1447 DDXPointPtr pptInit
1448);
1449
1450
1451extern _X_EXPORT void
1452XAAWriteMono8x8PatternToCache(ScrnInfoPtr pScrn, XAACacheInfoPtr pCache);
1453
1454extern _X_EXPORT void
1455XAAWriteColor8x8PatternToCache(
1456 ScrnInfoPtr pScrn,
1457 PixmapPtr pPix,
1458 XAACacheInfoPtr pCache
1459);
1460
1461extern _X_EXPORT void
1462XAARotateMonoPattern(
1463 int *pat0, int *pat1,
1464 int xoffset, int yoffset,
1465 Bool msbfirst
1466);
1467
1468extern _X_EXPORT void XAAComputeDash(GCPtr pGC);
1469
1470extern _X_EXPORT void XAAMoveDWORDS_FixedBase(
1471 register CARD32* dest,
1472 register CARD32* src,
1473 register int dwords
1474);
1475
1476extern _X_EXPORT void XAAMoveDWORDS_FixedSrc(
1477 register CARD32* dest,
1478 register CARD32* src,
1479 register int dwords
1480);
1481
1482extern _X_EXPORT void XAAMoveDWORDS(
1483 register CARD32* dest,
1484 register CARD32* src,
1485 register int dwords
1486);
1487
1488extern _X_EXPORT int
1489XAAGetRectClipBoxes(
1490 GCPtr pGC,
1491 BoxPtr pboxClippedBase,
1492 int nrectFill,
1493 xRectangle *prectInit
1494);
1495
1496extern _X_EXPORT void
1497XAASetupOverlay8_32Planar(ScreenPtr);
1498
1499extern _X_EXPORT void
1500XAAPolyFillArcSolid(DrawablePtr pDraw, GCPtr pGC, int narcs, xArc *parcs);
1501
1502extern _X_EXPORT XAACacheInfoPtr
1503XAACacheTile(ScrnInfoPtr Scrn, PixmapPtr pPix);
1504
1505extern _X_EXPORT XAACacheInfoPtr
1506XAACacheMonoStipple(ScrnInfoPtr Scrn, PixmapPtr pPix);
1507
1508extern _X_EXPORT XAACacheInfoPtr
1509XAACachePlanarMonoStipple(ScrnInfoPtr Scrn, PixmapPtr pPix);
1510
1511typedef XAACacheInfoPtr (*XAACachePlanarMonoStippleProc)(ScrnInfoPtr, PixmapPtr);
1512extern _X_EXPORT XAACachePlanarMonoStippleProc XAAGetCachePlanarMonoStipple(void);
1513
1514extern _X_EXPORT XAACacheInfoPtr
1515XAACacheStipple(ScrnInfoPtr Scrn, PixmapPtr pPix, int fg, int bg);
1516
1517extern _X_EXPORT XAACacheInfoPtr
1518XAACacheMono8x8Pattern(ScrnInfoPtr Scrn, int pat0, int pat1);
1519
1520extern _X_EXPORT XAACacheInfoPtr
1521XAACacheColor8x8Pattern(ScrnInfoPtr Scrn, PixmapPtr pPix, int fg, int bg);
1522
1523extern _X_EXPORT void
1524XAATileCache(ScrnInfoPtr pScrn, XAACacheInfoPtr pCache, int w, int h);
1525
1526extern _X_EXPORT void XAAClosePixmapCache(ScreenPtr pScreen);
1527void XAAInvalidatePixmapCache(ScreenPtr pScreen);
1528
1529extern _X_EXPORT Bool XAACheckStippleReducibility(PixmapPtr pPixmap);
1530extern _X_EXPORT Bool XAACheckTileReducibility(PixmapPtr pPixmap, Bool checkMono);
1531
1532extern _X_EXPORT int XAAStippledFillChooser(GCPtr pGC);
1533extern _X_EXPORT int XAAOpaqueStippledFillChooser(GCPtr pGC);
1534extern _X_EXPORT int XAATiledFillChooser(GCPtr pGC);
1535
1536extern _X_EXPORT void XAAMoveInOffscreenPixmaps(ScreenPtr pScreen);
1537extern _X_EXPORT void XAAMoveOutOffscreenPixmaps(ScreenPtr pScreen);
1538extern _X_EXPORT void XAARemoveAreaCallback(FBAreaPtr area);
1539extern _X_EXPORT void XAAMoveOutOffscreenPixmap(PixmapPtr pPix);
1540extern _X_EXPORT Bool XAAInitStateWrap(ScreenPtr pScreen, XAAInfoRecPtr infoRec);
1541
1542extern _X_EXPORT void
1543XAAComposite (CARD8 op,
1544 PicturePtr pSrc,
1545 PicturePtr pMask,
1546 PicturePtr pDst,
1547 INT16 xSrc,
1548 INT16 ySrc,
1549 INT16 xMask,
1550 INT16 yMask,
1551 INT16 xDst,
1552 INT16 yDst,
1553 CARD16 width,
1554 CARD16 height);
1555
1556
1557extern _X_EXPORT Bool
1558XAADoComposite (CARD8 op,
1559 PicturePtr pSrc,
1560 PicturePtr pMask,
1561 PicturePtr pDst,
1562 INT16 xSrc,
1563 INT16 ySrc,
1564 INT16 xMask,
1565 INT16 yMask,
1566 INT16 xDst,
1567 INT16 yDst,
1568 CARD16 width,
1569 CARD16 height);
1570
1571
1572extern _X_EXPORT void
1573XAAGlyphs (CARD8 op,
1574 PicturePtr pSrc,
1575 PicturePtr pDst,
1576 PictFormatPtr maskFormat,
1577 INT16 xSrc,
1578 INT16 ySrc,
1579 int nlist,
1580 GlyphListPtr list,
1581 GlyphPtr *glyphs);
1582
1583extern _X_EXPORT Bool
1584XAADoGlyphs (CARD8 op,
1585 PicturePtr pSrc,
1586 PicturePtr pDst,
1587 PictFormatPtr maskFormat,
1588 INT16 xSrc,
1589 INT16 ySrc,
1590 int nlist,
1591 GlyphListPtr list,
1592 GlyphPtr *glyphs);
1593
1594
1595
1596/* helpers */
1597extern _X_EXPORT void
1598XAA_888_plus_PICT_a8_to_8888 (
1599 CARD32 color,
1600 CARD8 *alphaPtr, /* in bytes */
1601 int alphaPitch,
1602 CARD32 *dstPtr,
1603 int dstPitch, /* in dwords */
1604 int width,
1605 int height
1606);
1607
1608extern _X_EXPORT Bool
1609XAAGetRGBAFromPixel(
1610 CARD32 pixel,
1611 CARD16 *red,
1612 CARD16 *green,
1613 CARD16 *blue,
1614 CARD16 *alpha,
1615 CARD32 format
1616);
1617
1618
1619extern _X_EXPORT Bool
1620XAAGetPixelFromRGBA (
1621 CARD32 *pixel,
1622 CARD16 red,
1623 CARD16 green,
1624 CARD16 blue,
1625 CARD16 alpha,
1626 CARD32 format
1627);
1628
1629/* XXX should be static */
1630extern _X_EXPORT GCOps XAAFallbackOps;
1631extern _X_EXPORT GCOps *XAAGetFallbackOps(void);
1632extern _X_EXPORT GCFuncs XAAGCFuncs;
1633extern _X_EXPORT DevPrivateKey XAAGetScreenKey(void);
1634extern _X_EXPORT DevPrivateKey XAAGetGCKey(void);
1635extern _X_EXPORT DevPrivateKey XAAGetPixmapKey(void);
1636
1637extern _X_EXPORT unsigned int XAAShiftMasks[32];
1638
1639extern _X_EXPORT unsigned int byte_expand3[256], byte_reversed_expand3[256];
1640
1641extern _X_EXPORT CARD32 XAAReverseBitOrder(CARD32 data);
1642
1643#define GET_XAASCREENPTR_FROM_SCREEN(pScreen)\
1644 dixLookupPrivate(&(pScreen)->devPrivates, XAAGetScreenKey())
1645
1646#define GET_XAASCREENPTR_FROM_GC(pGC)\
1647 dixLookupPrivate(&(pGC)->pScreen->devPrivates, XAAGetScreenKey())
1648
1649#define GET_XAASCREENPTR_FROM_DRAWABLE(pDraw)\
1650 dixLookupPrivate(&(pDraw)->pScreen->devPrivates, XAAGetScreenKey())
1651
1652#define GET_XAAINFORECPTR_FROM_SCREEN(pScreen)\
1653((XAAScreenPtr)dixLookupPrivate(&(pScreen)->devPrivates, XAAGetScreenKey()))->AccelInfoRec
1654
1655#define GET_XAAINFORECPTR_FROM_GC(pGC)\
1656((XAAScreenPtr)dixLookupPrivate(&(pGC)->pScreen->devPrivates, XAAGetScreenKey()))->AccelInfoRec
1657
1658#define GET_XAAINFORECPTR_FROM_DRAWABLE(pDraw)\
1659((XAAScreenPtr)dixLookupPrivate(&(pDraw)->pScreen->devPrivates, XAAGetScreenKey()))->AccelInfoRec
1660
1661#define GET_XAAINFORECPTR_FROM_SCRNINFOPTR(pScrn)\
1662((XAAScreenPtr)dixLookupPrivate(&(pScrn)->pScreen->devPrivates, XAAGetScreenKey()))->AccelInfoRec
1663
1664#define XAA_GET_PIXMAP_PRIVATE(pix)\
1665 (XAAPixmapPtr)dixLookupPrivate(&(pix)->devPrivates, XAAGetPixmapKey())
1666
1667#define CHECK_RGB_EQUAL(c) (!((((c) >> 8) ^ (c)) & 0xffff))
1668
1669#define CHECK_FG(pGC, flags) \
1670 (!(flags & RGB_EQUAL) || CHECK_RGB_EQUAL(pGC->fgPixel))
1671
1672#define CHECK_BG(pGC, flags) \
1673 (!(flags & RGB_EQUAL) || CHECK_RGB_EQUAL(pGC->bgPixel))
1674
1675#define CHECK_ROP(pGC, flags) \
1676 (!(flags & GXCOPY_ONLY) || (pGC->alu == GXcopy))
1677
1678#define CHECK_ROPSRC(pGC, flags) \
1679 (!(flags & ROP_NEEDS_SOURCE) || ((pGC->alu != GXclear) && \
1680 (pGC->alu != GXnoop) && (pGC->alu != GXinvert) && \
1681 (pGC->alu != GXset)))
1682
1683#define CHECK_PLANEMASK(pGC, flags) \
1684 (!(flags & NO_PLANEMASK) || \
1685 ((pGC->planemask & infoRec->FullPlanemasks[pGC->depth - 1]) == \
1686 infoRec->FullPlanemasks[pGC->depth - 1]))
1687
1688#define CHECK_COLORS(pGC, flags) \
1689 (!(flags & RGB_EQUAL) || \
1690 (CHECK_RGB_EQUAL(pGC->fgPixel) && CHECK_RGB_EQUAL(pGC->bgPixel)))
1691
1692#define CHECK_NO_GXCOPY(pGC, flags) \
1693 ((pGC->alu != GXcopy) || !(flags & NO_GXCOPY) || \
1694 ((pGC->planemask & infoRec->FullPlanemask) != infoRec->FullPlanemask))
1695
1696#define IS_OFFSCREEN_PIXMAP(pPix)\
1697 ((XAA_GET_PIXMAP_PRIVATE((PixmapPtr)(pPix)))->offscreenArea)
1698
1699#define PIXMAP_IS_SHARED(pPix)\
1700 ((XAA_GET_PIXMAP_PRIVATE((PixmapPtr)(pPix)))->flags & SHARED_PIXMAP)
1701
1702#define OFFSCREEN_PIXMAP_LOCKED(pPix)\
1703 ((XAA_GET_PIXMAP_PRIVATE((PixmapPtr)(pPix)))->flags & LOCKED_PIXMAP)
1704
1705#define XAA_DEPTH_BUG(pGC) \
1706 ((pGC->depth == 32) && (pGC->bgPixel == 0xffffffff))
1707
1708#define DELIST_OFFSCREEN_PIXMAP(pPix) { \
1709 PixmapLinkPtr _pLink, _prev; \
1710 _pLink = infoRec->OffscreenPixmaps; \
1711 _prev = NULL; \
1712 while(_pLink) { \
1713 if(_pLink->pPix == pPix) { \
1714 if(_prev) _prev->next = _pLink->next; \
1715 else infoRec->OffscreenPixmaps = _pLink->next; \
1716 free(_pLink); \
1717 break; \
1718 } \
1719 _prev = _pLink; \
1720 _pLink = _pLink->next; \
1721 }}
1722
1723
1724#define SWAP_BITS_IN_BYTES(v) \
1725 (((0x01010101 & (v)) << 7) | ((0x02020202 & (v)) << 5) | \
1726 ((0x04040404 & (v)) << 3) | ((0x08080808 & (v)) << 1) | \
1727 ((0x10101010 & (v)) >> 1) | ((0x20202020 & (v)) >> 3) | \
1728 ((0x40404040 & (v)) >> 5) | ((0x80808080 & (v)) >> 7))
1729
1730/*
1731 * Moved XAAPixmapCachePrivate here from xaaPCache.c, since driver
1732 * replacements for CacheMonoStipple need access to it
1733 */
1734
1735typedef struct {
1736 int Num512x512;
1737 int Current512;
1738 XAACacheInfoPtr Info512;
1739 int Num256x256;
1740 int Current256;
1741 XAACacheInfoPtr Info256;
1742 int Num128x128;
1743 int Current128;
1744 XAACacheInfoPtr Info128;
1745 int NumMono;
1746 int CurrentMono;
1747 XAACacheInfoPtr InfoMono;
1748 int NumColor;
1749 int CurrentColor;
1750 XAACacheInfoPtr InfoColor;
1751 int NumPartial;
1752 int CurrentPartial;
1753 XAACacheInfoPtr InfoPartial;
1754 DDXPointRec MonoOffsets[64];
1755 DDXPointRec ColorOffsets[64];
1756} XAAPixmapCachePrivate, *XAAPixmapCachePrivatePtr;
1757
1758
1759#endif /* _XAALOCAL_H */
Note: See TracBrowser for help on using the repository browser.

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette